Object Oriented Design using Design Patterns Training Course
Objective:
This course is designed to assist technical analysts and designers in navigating the software implementation process of requirements, ensuring a clear link between business specifications and the corresponding code.
Over two days, participants will learn how to translate business analyst descriptions into detailed specifications. These specifications are then transformed into representations of software components, which trace back to the original system requirements.
The final step involves implementing these technical specifications in the form of software code and testing them at a component level. This approach ensures that the resulting software components can adapt effectively to changes by tracing system behaviors layer by layer—from user interfaces through application components to business objects where actor choices are recorded.
This course is available as onsite live training in United Arab Emirates or online live training.Course Outline
Introduction
- What is the System Analysis and Design Process?
- Place of the Analysis and Design activities in the Unified Process (RUP)
- A panorama of UML 2 diagrams used in the system analysis and design
- Frameworks for tracing requirements toward software implementation and tests
How to transform requirements into component based analysis specifications?
- Traceability between requirements and system analysis
- Advanced notions for representing the system structure and dynamics
- Refinement of the requirements on both axis
- Toward the system design using operation contracts
- Case Study : Definition of the analysis component model of the system
How to transform analysis specifications into design level ones?
- Traceability between system analysis and design
- Design Patterns for loose coupling and high cohesion of components
- Definition of the Design level Architectural Backbone of the system (components, ports, interfaces, exchange objects)
- Design level interaction diagrams to implement operation contracts
- Case Study : Updating design level component diagram with architectural choices
Implementing technical specifications and testing on a component basis
- Generating design level specifications into an object oriented programming language
- Deployment of Components on the Physical Nodes
- Integration and Acceptance tests on the basis of the previous specifications
Conclusion
- Steps of the system analysis and design processes
- Patterns for ensuring traceability between requirements and the software code
- Testing requirements on the system architecture
Notice: The above training-mentoring sessions are conducted interactively using Requirement Engineering and Modeling tools in order to ensure good level of traceability between requirements and underlying solutions. Concepts are explained first using basic examples and are then followed by solution drafts to your own issues. After this session, we can accompany you by reviewing and validating your solutions depending on your needs.
Need help picking the right course?
Object Oriented Design using Design Patterns Training Course - 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 HoursThere are numerous reliable and proven patterns that are readily accessible to everyone. Often, it involves adapting names and implementing these patterns within a specific technology. This can save hundreds of hours that would otherwise be spent on design and testing. Training Objectives: This course aims to achieve two objectives—firstly, enabling you to leverage well-known patterns; secondly, allowing you to develop and reuse organization-specific patterns. It assists in assessing how patterns can cut costs, streamline the design process, and establish a code framework based on your patterns. Target Audience: The course is designed for software designers, business analysts, project managers, programmers, developers, operational managers, and software division managers. Course Approach: The course emphasizes use cases and their connection to specific patterns. Most examples are illustrated using UML and straightforward Java examples (the programming language can be adjusted if the course is booked as a private session). It also guides you through the origins of these patterns and how to catalog and document them for reuse within your organization.
Insurtech: A Practical Introduction for Managers
14 HoursInsurtech (also known as Digital Insurance) represents the integration of insurance with new technologies. In this sector, "digital insurers" leverage technological advancements to refine their business and operational models, thereby reducing costs, enhancing customer satisfaction, and increasing operational flexibility.
This instructor-led training will equip participants with knowledge about the technologies, methodologies, and mindset required for digital transformation within their organizations and across the industry. The course is designed for managers who need to grasp a comprehensive overview, dispel myths and technical jargon, and initiate steps towards formulating an Insurtech strategy.
Upon completion of this training, participants will be able to:
- Discuss Insurtech and its various components in a knowledgeable and structured manner
- Identify and clarify the role of each key technology within Insurtech
- Create a general strategy for implementing Insurtech within their organization
Audience
- Insurance professionals
- Tech experts in the insurance sector
- Insurance industry stakeholders
- Consultants and business analysts
Course Format
- A combination of lectures, discussions, exercises, and group activities involving case studies
Design Patterns in C#
14 HoursTarget Audience:
Technical Team Leader, Software Developer
Learning Goal:
The aim of this training is to develop the skills needed to create sophisticated development and project frameworks using C#.
Throughout the course, participants will gain proficiency with MSDN resources and tools that aid in the development process, including Microsoft Visual Studio and ReSharper.
Design Patterns (GoF) for Java
21 HoursThis instructor-led, live training in the UAE (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 the UAE (online or onsite) is aimed at intermediate-level PHP developers who wish to apply design patterns effectively in their projects.
By the end of this training, participants will be able to:
- Understand the purpose and benefits of design patterns.
- Identify and implement appropriate design patterns for common scenarios.
- Structure PHP applications using industry-recognized best practices.
- Integrate patterns into modern frameworks such as Symfony or Zend.
Fintech: A Practical Introduction for Managers
14 HoursIn this instructor-led, live training in the UAE, participants will gain an understanding of the technologies, methods and mindset needed to implement a Fintech strategy.
This training is aimed at managers who need to gain a "big picture" understanding of Fintech, break down the hype and jargon, and take tangible first steps towards the adoption of new technologies applicable to financial business 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 step-by-step fashion.
Insurance in the Digital Era
14 HoursInsurance in the Digital Era is an applied overview of how digital transformation reshapes products, operations, and customer engagement in the insurance industry.
This instructor-led, live training (online or onsite) is aimed at intermediate-level insurance professionals who wish to understand and apply digital technologies, data-driven strategies, and innovation frameworks to modernize 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) is a key discipline within software and systems development, focused on identifying, documenting, and managing the needs and constraints of stakeholders to ensure project success.
This instructor-led, live training (online or onsite) is aimed at intermediate-level professionals who wish to deepen their understanding of practical Requirements Engineering while preparing for the IREB CPRE – Foundation Level certification exam.
Upon completion of this training, participants will be able to:
- Understand and apply the key concepts and terminology defined by 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 training program is tailored for JavaScript developers focused on creating and executing sophisticated web applications. The course covers key topics that emphasize optimal coding techniques in JavaScript and pinpoint frequent errors. A significant aspect of the training involves exploring object-oriented programming methodologies within the context of JavaScript syntax.
Kubernetes Design Patterns
21 HoursThe advancement of microservices and containers over the past few years has profoundly transformed our approach to designing, developing, deploying, and managing software. Contemporary applications need to be tailored for scalability, flexibility, resilience, and adaptability. In response to these evolving needs, modern architectural designs necessitate a distinct set of strategies and methodologies. This training delves into methods for recognizing, comprehending, and adapting to these new demands.
Audience
This course is aimed at individuals who have some knowledge of container technology and Kubernetes principles but may lack practical experience. It draws on real-world scenarios and insights from actual projects with the goal of motivating participants to build and oversee superior cloud-native applications.
- Developers
- Operations Specialists
- DevOps Engineers
- QA Engineers
- IT Project Managers
Course Format
- Interactive lectures and discussions
- Numerous exercises and practical sessions
- Hands-on implementation in a live-lab setting
Customization Options for the Course
- To request tailored training for this course, please contact us to make arrangements.
Kubernetes Design Patterns and Extensions
14 HoursKubernetes is an open-source platform designed to automate the development stages of containerized applications. Design patterns offer reusable solutions to common software design challenges, and Kubernetes extensions are used to configure and support Kubernetes clusters. By leveraging these design patterns and extensions, users can implement CI/CD strategies while ensuring their software applications remain scalable and flexible.
This instructor-led training (online or in-person) is tailored for developers and DevOps engineers who aim to utilize Kubernetes design patterns and extensions to build enterprise applications on Kubernetes clusters.
By the end of this course, participants will be able to:
- Establish a Kubernetes cluster and set up essential DevOps tools.
- Grasp the basics of software design patterns and Kubernetes extensions.
- Employ Kubernetes extensions and design patterns when working with the Kubernetes API.
- Create customized Kubernetes resources and deploy dynamic controllers within a cluster.
- Manage and secure any Kubernetes environment using Kubernetes plugins.
- Integrate DevOps networking models into current and future Kubernetes projects.
Course Format
- Interactive lectures and discussions.
- Numerous exercises and practical activities.
- Hands-on implementation in a live-lab setting.
Customization Options for the Course
- To request a customized training session, please contact us to arrange further details.
Model Based Development for Embedded Systems
21 HoursModel-Based Development (MBD) is a software development approach that accelerates and reduces costs associated with creating dynamic systems such as control systems, signal processing, and communication systems. This method emphasizes graphical modeling over conventional text-based programming.
This instructor-led live training will guide participants on how to leverage MBD techniques to cut down on development expenses and speed up the market release of their embedded software products.
By the conclusion of this training, participants will be able to:
- Select and effectively use appropriate tools for implementing MBD.
- Employ MBD to achieve rapid development during the initial phases of their embedded software projects.
- Accelerate the market release of their embedded software products.
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 HoursThe microservice architecture involves developing a software application as a collection of small, independent services that operate in separate processes and communicate through lightweight mechanisms like an HTTP resource API. These services can be deployed efficiently using continuous automation systems and do not require centralized management. Additionally, they can be developed in various programming languages and integrate with different data storage solutions.
This instructor-led live training is designed for enterprise developers and architects. It provides an introduction to 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.
By the end of this training, participants will be able to:
- Determine when it is appropriate or not to use microservice architecture
- Develop and execute a testing strategy for microservices
- Deploy a sample microservice-based application into a production environment
- Rework a monolithic application into individual services
Audience
- Developers
- Architects
Format of the course
- The course includes lectures, discussions, exercises, and extensive hands-on practice.
Requirements Analysis
21 HoursThis instructor-led, live training in the UAE (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 HoursThis course provides practical experience in understanding the basics and applications of software engineering, requirements engineering, and testing.