Object Oriented Design using Design Patterns Training Course
Objective:
To assist Technical Analysts and Designers in understanding the process of implementing software requirements, ensuring a clear traceability between business specifications and the final code.
This two-day training course is designed to help technical analysts and designers translate the specifications provided by business analysts into detailed technical designs. The transformed specifications are then represented as software components, which map back to the system's requirements, ensuring that each component aligns with the intended functionality.
Ultimately, these technical specifications are implemented in software code and tested at the component level. This approach ensures a high degree of flexibility and responsiveness to changes, as it allows for tracing the system's behavior layer by layer—from user interfaces through application components to business objects—ensuring that each step is clearly documented and aligned with the overall system design.
This course is available as onsite live training in Slovakia 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.
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 HoursThere are numerous proven patterns that are readily accessible to everyone. Often, it involves adapting names and implementing these patterns within specific technologies. This approach can save hundreds of hours that would otherwise be spent on design and testing. Training Objectives: This course aims to achieve two objectives: first, to enable the reuse of well-known patterns; second, to facilitate the creation and reuse of organization-specific patterns. It assists in estimating how patterns can cut costs, standardize the design process, and develop 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 Style: The course emphasizes use cases and their connection to specific patterns. Most examples are illustrated using UML and simple Java examples (the programming language can be adjusted if the course is booked as an in-house session). It also guides you through pattern sources and demonstrates how to catalog and document patterns for reuse within your organization.
Insurtech: A Practical Introduction for Managers
14 HoursInsurtech, also known as Digital Insurance, represents the integration of insurance with modern technologies. In this domain, "digital insurers" leverage technological innovations in their business and operational models to cut costs, enhance customer experience, and increase operational flexibility.
This instructor-led training aims to provide participants with a comprehensive understanding of the technologies, methods, and mindset necessary for driving digital transformation within their organizations and across the industry. The course is designed for managers who need an overarching view, demystify buzzwords, and take initial steps in formulating an Insurtech strategy.
By the end of this training, participants will be able to:
- Discuss Insurtech and its various components with intelligence and a systematic approach
- Identify and clarify the role of each key technology within Insurtech
- Develop a general strategy for implementing Insurtech within their organization
Audience
- Insurers
- Technologists in the insurance sector
- Insurance stakeholders
- Consultants and business analysts
Format of the course
- A combination of lectures, discussions, exercises, and group activities focused on case studies
Design Patterns in C#
14 HoursTarget group:
Technical Team Leader, Software Developer
Learning objective:
The training aims to equip participants with the skills needed to design sophisticated development and project structures in C#.
Throughout the course, students will explore MSDN resources and tools that enhance the development process, including Microsoft Visual Studio and ReSharper.
Design Patterns (GoF) for Java
21 HoursThis instructor-led, live training in Slovakia (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 Slovakia (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 Slovakia, 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 is reshaping products, operations, and customer engagement within the insurance industry.
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 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 contemporary insurance workflows.
- Identify InsurTech trends and their impact on the insurance ecosystem.
- Develop customer-centric strategies using digital tools and data insights.
- Implement data-driven approaches to risk management and decision-making.
- Create an innovation and change management approach tailored for insurers.
- Analyze real-world case studies and apply the lessons to local initiatives.
Format of the Course
- Interactive lectures and discussions.
- 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 crucial discipline within software and systems development, focusing on identifying, documenting, and managing stakeholder needs and constraints to ensure project success.
This instructor-led, live training (online or onsite) is designed for intermediate-level professionals who want to deepen their understanding 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 techniques tailored to the context.
- Model, document, and validate requirements for real-world projects.
- Manage requirement changes, traceability, and prioritization throughout the project lifecycle.
- Utilize 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 lectures and discussions.
- 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 upon request.
JavaScript - Advanced Programming
14 HoursThis training is tailored for JavaScript developers who are focused on designing and implementing advanced web applications. The course covers a range of topics aimed at introducing best practices in JavaScript programming while also addressing common pitfalls. A key aspect of the training is an in-depth discussion on object-oriented programming using JavaScript syntax.
Kubernetes Design Patterns
21 HoursThe development of microservices and containers in recent years has dramatically transformed how we design, develop, deploy, and manage software. Modern applications need to be optimized for scalability, flexibility, resilience, and adaptability. These evolving demands have led to the necessity for new architectural patterns and practices. In this training, we explore methods to recognize, comprehend, and adapt to these emerging requirements.
Audience
This training is designed for individuals who have some familiarity with container technology and Kubernetes concepts but may lack practical experience. It is grounded in real-world use cases and lessons learned from actual projects, aiming to inspire participants to create and manage more effective cloud-native applications.
- Developers
- Operations Teams
- DevOps Engineers
- QA Engineers
- IT Project Managers
Format of the Course
- Interactive lectures and discussions
- Numerous exercises and practical activities
- Hands-on implementation in a live-lab environment
Course Customization Options
- To request a customized training for this course, please contact us to arrange.
Kubernetes Design Patterns and Extensions
14 HoursKubernetes is an open-source platform designed to automate all stages of development for containerized applications. Design patterns offer repeatable solutions to common software design challenges. Kubernetes extensions are used to configure and support Kubernetes clusters. By leveraging Kubernetes design patterns and extensions, users can implement CI/CD practices while ensuring the scalability and flexibility of their software applications.
This instructor-led, live training (available online or on-site) is aimed at developers and DevOps engineers who want to utilize Kubernetes design patterns and extensions to build enterprise applications within Kubernetes clusters.
By the end of this training, participants will be able to:
- Set up a Kubernetes cluster and configure the necessary DevOps tools.
- Understand the basics of software design patterns and Kubernetes extensions.
- Use Kubernetes extensions and design patterns when working with the Kubernetes API.
- Create customized Kubernetes resources and apply dynamic controllers to a cluster.
- Manage and secure any Kubernetes environment using Kubernetes plugins.
- Integrate DevOps networking models into existing and new Kubernetes projects.
Format of the Course
- Interactive lecture and discussion.
- Extensive exercises and practice sessions.
- Hands-on implementation in a live-lab environment.
Course Customization Options
- To request a 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 development of dynamic systems such as control systems, signal processing, and communication systems. It leverages graphical modeling instead of 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 use the appropriate tools for implementing MBD.
- Utilize MBD to achieve rapid development in the early stages of their embedded software projects.
- Speed up the release of their embedded software into the market.
Format of the course
- Part lecture, part discussion, exercises, and extensive hands-on practice
Microservice Patterns: Migrating from a Monolithic to a Microservice Architecture with .Net
14 HoursMicroservice architecture is a method for developing software applications as a collection of small, independent services. Each service operates in its own process and communicates with other services using lightweight mechanisms such as an HTTP resource API. These services can be deployed efficiently using continuous automation systems and do not require centralized management. Microservices can be developed in various programming languages and can integrate 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 transitioning 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 to use microservice architecture and when it is not
- Develop and execute a testing strategy for microservices
- Deploy a sample microservice-based application into a production environment
- Refactor a monolithic application into smaller, independent services
Audience
- Developers
- Architects
Format of the course
- A combination of lectures, discussions, exercises, and extensive hands-on practice
Requirements Analysis
21 HoursThis instructor-led, live training in Slovakia (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 a practical, hands-on approach to understanding the core principles and real-world applications of software engineering, requirements engineering, and testing.