Object Oriented Design using Design Patterns Training Course
Objective:
This course is designed to help Technical Analysts and Designers navigate the software implementation of business requirements, ensuring clear traceability between business specifications and the resulting code.
Over the course of two days, participants will learn to translate business analyst specifications into software component designs. This transformation ensures that system components effectively map system requirements to their corresponding software structures.
Finally, these technical specifications are translated into software code and tested at the component level. The resulting software components offer high reactivity to change, allowing traceability to be maintained separately down to the implementation level. This traces system behavior layer by layer—from the user interface, through application components where actor usage choices are stored, down to the business object layer.
This course is available as onsite live training in Slovakia or online live training.Course Outline
Introduction
- Understanding the System Analysis and Design Process
- The Role of Analysis and Design Activities in the Unified Process (RUP)
- An Overview of UML 2 Diagrams Used in System Analysis and Design
- Frameworks for Tracing Requirements Toward 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 Multiple Axes
- Proceeding Toward System Design Using Operation Contracts
- Case Study: Defining the System's Analysis Component Model
Transforming Analysis Specifications into Design-Level Specifications
- Ensuring Traceability Between System Analysis and Design
- Applying Design Patterns for Loose Coupling and High Cohesion of Components
- Defining the 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 Choices
Implementing Technical Specifications and Testing at the Component Level
- Converting Design-Level Specifications into an Object-Oriented Programming Language
- Deploying Components onto Physical Nodes
- Conducting Integration and Acceptance Tests Based on Previous Specifications
Conclusion
- Key Steps in the System Analysis and Design Process
- Patterns for Ensuring Traceability Between Requirements and Software Code
- Validating Requirements Against the System Architecture
Note: These training and mentoring sessions are conducted interactively using Requirement Engineering and Modeling tools to ensure a high level of traceability between requirements and underlying solutions. Concepts are first explained using basic examples and then applied to draft solutions for your specific challenges. Following the session, we can support you by reviewing and validating your solutions based on your individual 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 and tested patterns readily available to everyone. Occasionally, it simply involves renaming them and adapting the pattern to a specific technology. This approach can save hundreds of hours that would otherwise be spent on design and testing. Training Objectives This course has two objectives: first, it enables you to reuse widely recognized patterns; second, it allows you to create and reuse patterns tailored to your organization. It helps you estimate how patterns can reduce costs, systematize the design process, and generate a code framework based on your patterns. Target Audience Software designers, business analysts, project managers, programmers, developers, 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 and emerging technologies. Within the Insurtech landscape, "digital insurers" leverage technological innovations to transform their business and operational models, aiming to lower costs, enhance customer experiences, and increase operational agility.
This instructor-led training helps participants understand the technologies, methodologies, and mindset required to drive digital transformation within their organizations and across the wider industry. The course is designed for managers who need a comprehensive overview, wish to cut through hype and jargon, and are ready to take initial steps toward building an 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 each key technology in the Insurtech ecosystem
- Develop a general strategy for implementing Insurtech within their organization
Audience
- Insurance professionals
- Technologists working within the insurance industry
- Stakeholders in the insurance sector
- Consultants and business analysts
Course Format
- A mix of lectures, discussions, exercises, and group case study activities
Design Patterns in C#
14 HoursTarget audience:
Technical Team Leaders, Software Developers
Learning objectives:
This training aims to equip participants with the skills to design advanced development and project architectures in C#.
Throughout the course, students will explore MSDN resources and tools that streamline 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 designed for intermediate Java developers who want 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, available Slovakia (online or onsite), is targeted at intermediate-level PHP developers who wish to effectively apply design patterns 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 develop a comprehensive understanding of the technologies, methodologies, and mindset required to successfully implement a Fintech strategy.
This course is designed for managers seeking a high-level grasp of the Fintech landscape, helping them cut through industry hype and jargon while taking concrete first steps toward adopting technologies relevant to financial businesses and services.
Upon completion of this training, participants will be able to
- Present viable Fintech strategies tailored to their organization.
- Understand and articulate the roles and functionalities of key technologies.
- Develop a step-by-step action plan for introducing new technologies.
Insurance in the Digital Era
14 HoursInsurance in the Digital Era provides 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) serves as a pivotal discipline in software and systems development, centered on identifying, documenting, and managing stakeholder needs and constraints to guarantee project success.
This instructor-led live training, available online or onsite, targets intermediate-level professionals aiming to deepen their grasp of practical Requirements Engineering while preparing for the IREB CPRE – Foundation Level certification exam.
After completing this training, participants will be able to:
- Comprehend and apply the core 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.
- 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 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 is tailored for JavaScript developers focused on designing and implementing complex web applications. The curriculum aims to introduce best practices in JavaScript programming while highlighting frequent pitfalls. A key aspect of the course is exploring object-oriented programming concepts within the context of JavaScript syntax.
Kubernetes Design Patterns
21 HoursThe rapid advancement of microservices and container technologies in recent years has fundamentally transformed the way software is designed, developed, deployed, and operated. Modern applications must be engineered for scalability, elasticity, fault tolerance, and adaptability to change. To meet these evolving demands, contemporary architectures rely on a distinct set of patterns and best practices. This training explores methods to identify, comprehend, and adapt to these new requirements.
Target Audience
This training is designed for individuals who possess a foundational understanding of container technology and Kubernetes concepts but may lack extensive real-world experience. Drawing on use cases and lessons learned from actual projects, the course aims to inspire participants to build and manage superior cloud-native applications.
- Developers
- Operations Staff
- DevOps Engineers
- QA Engineers
- IT Project Managers
Course Format
- Interactive lectures and discussions
- Extensive exercises and practical application
- Hands-on implementation in a live-lab environment
Course Customization Options
- For requests regarding customized training for this course, please contact us to arrange details.
Kubernetes Design Patterns and Extensions
14 HoursKubernetes is an open-source platform designed to automate the entire development lifecycle of containerized applications. Design patterns offer proven, iterative solutions to common software development challenges related to software architecture. Kubernetes extensions are tools used to configure and support Kubernetes clusters. By leveraging Kubernetes design patterns and extensions, platform users can implement CI/CD practices while preserving the scalability and flexibility of their software applications.
This instructor-led live training (available online or onsite) is designed for developers and DevOps engineers who want to utilize Kubernetes design patterns and extensions to build enterprise-grade applications on Kubernetes clusters.
Upon completion of this training, participants will be able to:
- Provision a Kubernetes cluster and configure essential DevOps tools.
- Grasp the core concepts of software design patterns and Kubernetes extensions.
- Apply Kubernetes extensions and design patterns when interacting with the Kubernetes API.
- Create custom Kubernetes resources and implement dynamic controllers within a cluster.
- Secure and manage any Kubernetes environment using Kubernetes plugins.
- Integrate DevOps networking models into current and future Kubernetes projects.
Course Format
- Interactive lectures and discussions.
- Extensive exercises and practical sessions.
- Hands-on implementation in a live-lab environment.
Course Customization Options
- To request a customized version of this training, please contact us to arrange.
Model Based Development for Embedded Systems
21 HoursModel-Based Development (MBD) is a software engineering approach that accelerates and reduces the cost of developing dynamic systems, including control systems, signal processing applications, and communication infrastructure. This methodology prioritizes graphical modeling over conventional text-based coding.
In this instructor-led live training, attendees will discover how to leverage MBD techniques to cut development expenses and speed up the market launch of embedded software solutions.
Upon completion of this training, participants will be able to:
- Choose and implement appropriate tools for MBD implementation.
- Apply MBD to facilitate rapid development during the initial phases of embedded software projects.
- Reduce the time required to release embedded software to the market.
Course Format
- A blend 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 a strategy for building software applications as a collection of small, loosely coupled services, each operating in its own process and communicating via lightweight protocols like HTTP resource APIs. This approach allows for efficient deployment through continuous automation tools, eliminating the reliance on centralized management. These services can be developed in various programming languages and connected to diverse data storage systems.
Designed for enterprise developers and architects, this instructor-led live training explores microservice architecture from a .Net perspective. It covers strategies for migrating away from monolithic systems and guides participants through the process of building and deploying a sample microservice-based application.
Upon completion of this training, participants will be able to:
- Determine the appropriate scenarios for adopting or avoiding microservice architecture
- Develop and execute a testing strategy specifically for microservices
- Deploy a sample microservice-based application to a production environment
- Refactor a monolithic application into distinct 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 designed for professionals seeking to understand requirements analysis and execute it efficiently and accurately using appropriate analysis techniques for their projects.
Upon completion of this training, participants will be capable of:
- Differentiating between various types of requirements.
- Comprehending the core concepts and activities associated with requirements analysis.
- Gaining familiarity with established requirements analysis methodologies.
- Leveraging diverse requirements analysis techniques for optimal results.
- Organizing requirements to facilitate efficient communication with architects and developers through an iterative gathering process.
Software Engineering, Requirements Engineering and Testing
63 HoursThrough practical, hands-on exercises, this course illustrates the core principles and real-world applications of software engineering, requirements engineering, and testing.