Object Oriented Design using Design Patterns Training Course
Objective:
To equip Technical Analysts and Designers with the knowledge to navigate the software implementation of requirements, ensuring clear traceability between business specifications and the resulting software code.
This two-day training course is designed to assist technical analysts and designers in creating specifications outlined by business analysts. Once transformed into software component representations, the resulting system components link system requirements to software component structures.
Ultimately, these technical specifications are implemented in software code and tested on a per-component basis. The resulting software components offer high adaptability to change, allowing for separate tracing toward the implementation level by mapping system behaviors layer by layer—from user interfaces through application components to the business objects layer, where actor usage choices are stored.
This course is available as onsite live training in Mexico or online live training.Course Outline
Introduction
- Understanding the System Analysis and Design Process
- The role of Analysis and Design activities within the Unified Process (RUP)
- An overview of UML 2 diagrams utilized in system analysis and design
- Frameworks for tracing requirements to software implementation and testing
Transforming Requirements into Component-Based Analysis Specifications
- Establishing traceability between requirements and system analysis
- Advanced concepts for representing system structure and dynamics
- Refining requirements across both axes
- Progressing toward system design using operation contracts
- Case Study: Defining the system's analysis component model
Transitioning Analysis Specifications to Design Level
- Ensuring traceability between system analysis and design
- Utilizing Design Patterns to achieve loose coupling and high cohesion among components
- Defining the system's Design-level Architectural Backbone (components, ports, interfaces, exchange objects)
- Creating design-level interaction diagrams to implement operation contracts
- Case Study: Updating the design-level component diagram with architectural decisions
Implementing Technical Specifications and Component-Based Testing
- Converting design-level specifications into an object-oriented programming language
- Deploying components across physical nodes
- Conducting integration and acceptance tests based on prior specifications
Conclusion
- Key steps in the system analysis and design processes
- Patterns for maintaining traceability between requirements and software code
- Validating requirements against the system architecture
Note: These interactive training and mentoring sessions utilize Requirement Engineering and Modeling tools to ensure robust traceability between requirements and their underlying solutions. Concepts are initially explained using basic examples, followed by tailored solution drafts addressing your specific challenges. Following this session, we can continue to support you by reviewing and validating your solutions according to your needs.
Open Training Courses require 5+ participants.
Object Oriented Design using Design Patterns Training Course - Booking
Object Oriented Design using Design Patterns Training Course - Enquiry
Object Oriented Design using Design Patterns - Consultancy Enquiry
Testimonials (1)
Good exercises
Hui Yi Neo - Titansoft Pte Ltd
Course - Object Oriented Design using Design Patterns
Upcoming Courses
Related Courses
Design Patterns
14 HoursNumerous proven patterns are readily accessible to all. Often, the process simply involves adapting their names and applying them within a specific technology. This approach can save hundreds of hours that would otherwise be dedicated to design and testing. Training Goals This course has two primary objectives: first, to enable the reuse of well-established patterns, and second, to empower you to create and reuse patterns tailored to your organization. It helps you estimate how patterns can reduce costs, streamline the design process, and generate a code framework based on your patterns. Audience Software designers, business analysts, project managers, programmers and developers as well as operational managers and software division managers. Course Style The course focuses on use cases and their relationship with a specific pattern. Most of the examples are explained in UML and in simple Java examples (the language can change if the course is booked as a closed course). It guides you through the sources of the patterns as well as showing you how to catalogue and describe patterns which can be reused across your organization.
Insurtech: A Practical Introduction for Managers
14 HoursInsurtech, also known as Digital Insurance, represents the intersection of insurance services and emerging technologies. Within the Insurtech landscape, digital insurers leverage technological innovations to refine their business and operational models, aiming to cut costs, elevate the customer experience, and increase operational agility.
This instructor-led training helps participants understand the technologies, methods, and mindset required to drive digital transformation within their organizations and across the broader industry. The program is designed for managers who seek a comprehensive overview, wish to cut through the hype and jargon, and want to take initial steps toward establishing an effective Insurtech strategy.
Upon completion of this training, participants will be able to:
- Discuss Insurtech and its various components with intelligence and systematic clarity
- Identify and clarify the role of key technologies within Insurtech
- Draft a general strategy for implementing Insurtech within their organization
Target Audience
- Insurance companies
- Technologists working in the insurance sector
- Insurance stakeholders
- Consultants and business analysts
Course Format
- A blend of lectures, discussions, exercises, and group case study activities
Design Patterns in C#
14 HoursTarget Audience:
Technical Team Leaders, Software Developers
Learning Objectives:
The primary goal of this training is to equip participants with the skills necessary to design advanced development and project structures in C#.
Throughout the course, students will become familiar with MSDN resources and essential tools that support the development process, including Microsoft Visual Studio and ReSharper.
Design Patterns (GoF) for Java
21 HoursThis instructor-led, live training in Mexico (online or onsite) is aimed at intermediate-level Java developers who wish to apply design patterns to improve software structure, maintainability, and scalability.
By the end of this training, participants will be able to:
- Understand the purpose and benefits of design patterns.
- Apply Creational, Structural, and Behavioral patterns effectively in Java.
- Improve code reusability, scalability, and maintainability.
- Refactor existing codebases using design patterns.
Design Patterns in PHP
14 HoursThis instructor-led live training in Mexico (online or onsite) targets intermediate-level PHP developers who wish to effectively apply design patterns in their projects.
By the conclusion of this training, participants will be able to:
- Grasp the purpose and advantages of using design patterns.
- Identify and implement suitable design patterns for various common scenarios.
- Organize PHP applications according to industry-recognized best practices.
- Integrate patterns into modern frameworks like Symfony or Zend.
Fintech: A Practical Introduction for Managers
14 HoursIn this instructor-led, live training in Mexico, participants will develop an understanding of the technologies, methodologies, and mindset required to implement a Fintech strategy.
This training is designed for managers who need to gain a 'big picture' understanding of Fintech, cut through the hype and jargon, and take tangible first steps toward adopting new technologies applicable to financial businesses and services.
By the end of this training, participants will be able to
- Present viable Fintech strategies for their organization.
- Understand and explain the role and functionality of key technologies.
- Draft an action plan for introducing new technologies in a step-by-step manner.
Insurance in the Digital Era
14 HoursInsurance in the Digital Age provides a practical look at how digital transformation is reshaping products, operations, and customer engagement within the insurance sector.
This instructor-led, live training (available online or onsite) is designed for intermediate-level insurance professionals who want to understand and apply digital technologies, data-driven strategies, and innovation frameworks to modernize their insurance offerings and operations.
By the end of this training, participants will be able to:
- Explain the role of AI, Big Data, IoT, and automation in modern insurance workflows.
- Identify InsurTech trends and how they affect the insurance ecosystem.
- Design customer-centric strategies enabled by digital tools and data insights.
- Apply data-driven approaches to risk management and decision making.
- Develop an innovation and change management approach suitable for insurers.
- Assess real-world case studies and translate lessons into local initiatives.
Format of the Course
- Interactive lecture and discussion.
- Case study analysis and group workshops.
- Practical exercises and action planning for participants’ organizations.
Course Customization Options
- To request a customized training for this course, please contact us to arrange.
IREB CPRE – Foundation Level (Extended): Practical Requirements Engineering and Certification Preparation
14 HoursRequirements Engineering (RE) stands as a fundamental discipline in software and systems development, dedicated to identifying, documenting, and managing the needs and constraints of stakeholders to guarantee project success.
This instructor-led, live training (available online or onsite) is designed for intermediate-level professionals eager to deepen their grasp of practical Requirements Engineering while preparing for the IREB CPRE – Foundation Level certification exam.
Upon completing this training, participants will be able to:
- Understand and apply the key concepts and terminology outlined in the IREB CPRE Foundation syllabus.
- Identify and elicit requirements using effective and context-appropriate techniques.
- Model, document, and validate requirements for real-world projects.
- Manage requirements changes, traceability, and prioritization throughout the project lifecycle.
- Use Requirements Engineering tools and best practices to enhance communication and project outcomes.
- Be fully prepared to take and pass the IREB CPRE – Foundation Level certification exam.
Format of the Course
- Interactive lecture and discussion.
- Case-based exercises and collaborative workshops.
- Exam preparation sessions and practice questions.
Course Customization Options
- Additional modules or industry-specific case studies can be added on request.
JavaScript - Advanced Programming
14 HoursThis course is intended for JavaScript developers who wish to design and implement sophisticated web applications. The training focuses on conveying best practices in JavaScript development while highlighting common pitfalls. A key aspect of the curriculum involves exploring object-oriented programming concepts within the context of JavaScript syntax.
Kubernetes Design Patterns
21 HoursThe rapid advancement of microservices and container technologies has profoundly transformed how we architect, develop, deploy, and operate software. Today's applications demand optimization for scalability, elasticity, fault tolerance, and adaptability. To meet these evolving needs, modern architectures necessitate a distinct set of patterns and best practices. This training explores methods to identify, comprehend, and adapt to these contemporary requirements.
Target Audience
This course is designed for professionals who possess a foundational understanding of container technology and Kubernetes concepts but may lack extensive practical experience. Grounded in real-world use cases and lessons learned from actual projects, the aim is to inspire participants to create and manage superior cloud-native applications.
- Developers
- Operations staff
- DevOps professionals
- QA Engineers
- IT Project Managers
Course Format
- Interactive lectures and discussions
- Extensive exercises and practical applications
- Hands-on implementation within a live-lab environment
Course Customization Options
- To arrange customized training for this course, please contact us.
Kubernetes Design Patterns and Extensions
14 HoursKubernetes is an open-source platform designed to automate the entire lifecycle of developing containerized applications. Design patterns represent iterative solutions to common software development challenges, particularly those related to system architecture. Kubernetes extensions serve to configure and support cluster operations. By applying Kubernetes design patterns and extensions, users can implement CI/CD methodologies while preserving the scalability and flexibility of their software applications.
This instructor-led live training (available online or onsite) targets developers and DevOps engineers seeking to leverage Kubernetes design patterns and extensions to build enterprise-grade applications on Kubernetes clusters.
Upon completion of this training, participants will be capable of:
- Establishing a Kubernetes cluster and configuring essential DevOps tools.
- Gaining a solid understanding of software design patterns and Kubernetes extensions.
- Effectively utilizing Kubernetes extensions and design patterns when interacting with the Kubernetes API.
- Developing custom Kubernetes resources and applying dynamic controllers to a cluster.
- Managing and securing Kubernetes environments using Kubernetes plugins.
- Integrating DevOps networking models into both existing and future Kubernetes projects.
Format of the Course
- Interactive lectures and discussions.
- Extensive exercises and practice sessions.
- Hands-on implementation in a live-lab environment.
Course Customization Options
- To request customized training for this course, please contact us to arrange.
Model Based Development for Embedded Systems
21 HoursModel-Based Development (MBD) is a software development methodology that facilitates faster, more cost-effective creation of dynamic systems, including control systems, signal processing, and communication systems. It emphasizes graphical modeling over traditional text-based programming.
In this instructor-led live training, participants will learn how to apply MBD methodologies to reduce development costs and accelerate the time to market for their embedded software products.
By the end of this training, participants will be able to:
- Select and utilize the appropriate tools for implementing MBD.
- Employ MBD to enable rapid development during the early stages of their embedded software projects.
- Shorten the release cycle of their embedded software to the market.
Course Format
- A combination of lectures, discussions, exercises, and extensive hands-on practice.
Microservice Patterns: Migrating from a Monolithic to a Microservice Architecture with .Net
14 HoursMicroservice architecture represents an approach to software development where an application is built as a collection of small, independent services. Each service operates within its own process and communicates via lightweight mechanisms, such as HTTP resource APIs. These services can be efficiently deployed using continuous automation systems, eliminating the need for centralized management. Furthermore, microservices can be developed in various programming languages and integrated with different data storage systems.
This instructor-led live training is designed for enterprise developers and architects. It introduces microservice architecture from a .Net perspective, outlines strategies for migrating from monolithic systems, and guides participants through the creation and deployment of a sample microservice-based application.
Upon completing this training, participants will be able to:
- Determine when to adopt or avoid microservice architecture
- Develop and implement a testing strategy for microservices
- Deploy a sample microservice-based application into a production environment
- Refactor a monolithic application into individual services
Target Audience
- Developers
- Architects
Course Format
- A blend of lectures, discussions, exercises, and extensive hands-on practice
Requirements Analysis
21 HoursThis instructor-led, live training in Mexico (online or onsite) is aimed at persons who wish to understand requirements analysis and conduct requirements analysis efficiently and accurately using analysis techniques for their projects.
By the end of this training, participants will be able to:
- identify different types of requirements.
- understand the overall concepts of, and activities within, requirements analysis.
- be familiar with the requirements analysis methodology.
- use different requirements analysis techniques to their advantage.
- structure requirements in order to communicate efficiently with architects and developers through an iterative requirement gathering process.
Software Engineering, Requirements Engineering and Testing
63 HoursThrough hands-on practice, this course explores the fundamental principles and practical applications of software engineering, requirements engineering, and testing.