Object Oriented Design using Design Patterns Training Course
Objective:
This session is designed to help Technical Analysts and Designers navigate the software implementation of requirements, ensuring clear traceability between business specifications and the resulting code.
Over the course of two days, participants will learn to design specifications originally described by business analysts. By transforming these into software component representations, the system components can effectively trace system requirements to their corresponding software structures.
Ultimately, these technical specifications are coded and tested at the component level. The resulting software components offer robust reactivity to changes, allowing for separate tracing of system behaviors from the user interfaces down through the application components to the business objects layer, where actor usage choices are defined.
This course is available as onsite live training in Czech Republic 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 from inception 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
- Proceeding to system design via operation contracts
- Case Study: Defining the system's analysis component model
Transforming Analysis Specifications into Design-Level Specifications
- Maintaining traceability between system analysis and design
- Utilizing Design Patterns for loose coupling and high cohesion among components
- Defining the system's Design-Level Architectural Backbone (components, ports, interfaces, and exchange objects)
- Creating design-level interaction diagrams to implement operation contracts
- Case Study: Updating design-level component diagrams with architectural choices
Implementing Technical Specifications and Component-Based Testing
- Translating design-level specifications into object-oriented programming languages
- Deploying components onto physical nodes
- Conducting integration and acceptance tests based on prior specifications
Conclusion
- Reviewing the steps of the system analysis and design processes
- Applying patterns to ensure traceability between requirements and software code
- Evaluating requirements against the system architecture
Note: These interactive training and mentoring sessions utilize Requirement Engineering and Modeling tools to maintain high levels of traceability between requirements and underlying solutions. Concepts are first introduced through basic examples, followed by the development of solution drafts tailored to your specific challenges. Following the session, we can 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 HoursA wide array of proven patterns is readily available for widespread use. Often, implementation simply involves adapting the nomenclature and applying the pattern within a specific technology. This approach can save hundreds of hours that would otherwise be dedicated to design and testing phases. Training Objectives This course aims to achieve two primary objectives: first, to enable the reuse of widely recognized patterns, and second, to facilitate the creation and reuse of patterns tailored to your organization. It assists in estimating how patterns can reduce costs, systematize the design process, and generate a code framework based on your specific patterns. Target Audience Software designers, business analysts, project managers, programmers, developers, as well as operational managers and software division managers. Course Approach The course emphasizes use cases and their relationship with specific patterns. Most examples are explained using UML and simple Java examples (the programming language may vary if the course is booked as a closed course). It guides participants through the sources of patterns and demonstrates how to catalogue and describe patterns for reuse across the 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 reduce costs, elevate the customer experience, and increase operational agility.
Through this instructor-led training, participants will develop a solid understanding of the technologies, methodologies, and mindset required to drive digital transformation within their organizations and across the industry. This training is specifically designed for managers who need to grasp the broader strategic context, cut through the hype and jargon, and take the initial steps toward establishing a robust 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 within the Insurtech ecosystem.
- Develop a general strategy for implementing Insurtech solutions within their organization
Audience
- Insurance professionals
- Technology experts within the insurance industry
- Key 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:
This training aims to equip participants with the skills necessary to design advanced development and project structures using C#.
Throughout the course, students will become familiar with MSDN resources and tools that support the development process, such as Microsoft Visual Studio and ReSharper.
Design Patterns (GoF) for Java
21 HoursThis instructor-led, live training in Czech Republic (online or onsite) targets intermediate Java developers who want to apply design patterns to enhance software structure, maintainability, and scalability.
Upon completing this training, participants will be capable of:
- Comprehending the purpose and advantages of design patterns.
- Effectively implementing Creational, Structural, and Behavioral patterns in Java.
- Enhancing code reusability, scalability, and maintainability.
- Refactoring existing codebases using design patterns.
Design Patterns in PHP
14 HoursThis instructor-led, live training in Czech Republic (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 Czech Republic, participants will develop a solid grasp of the technologies, methodologies, and mindset required to successfully implement a Fintech strategy.
This course is designed for managers who need a "big picture" understanding of Fintech, aiming to cut through the hype and jargon while taking concrete first steps toward adopting new technologies relevant to financial businesses and services.
Upon completion of this training, participants will be able to:
- Propose viable Fintech strategies for their organization.
- Understand and articulate 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 Era 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) targets intermediate-level insurance professionals who want to understand and implement 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) serves as a critical discipline in software and systems development, concentrating on the identification, documentation, and management of stakeholder needs and constraints to guarantee project success.
This instructor-led live training, available online or onsite, targets intermediate-level professionals aiming to enhance their grasp of practical Requirements Engineering while preparing for the IREB CPRE – Foundation Level certification exam.
After completing this training, participants will be equipped to:
- Grasp and apply the core concepts and terminology outlined in the IREB CPRE Foundation syllabus.
- Identify and elicit requirements using effective techniques suited to the specific context.
- 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 improve communication and project outcomes.
- Feel fully prepared to take and pass the IREB CPRE – Foundation Level certification exam.
Course Format
- Interactive lectures and discussions.
- Case-based exercises and collaborative workshops.
- Dedicated exam preparation sessions and practice questions.
Customization Options
- Additional modules or industry-specific case studies can be included upon request.
JavaScript - Advanced Programming
14 HoursThis training course is tailored for JavaScript developers who are designing and implementing advanced Internet applications. The sessions focus on introducing best practices in JavaScript programming while highlighting common pitfalls. A key aspect of the training is exploring object-oriented programming concepts within the context of JavaScript syntax.
Kubernetes Design Patterns
21 HoursThe advancement of microservices and container technologies in recent years has fundamentally transformed how software is designed, developed, deployed, and operated. Today's applications need to be optimized for scalability, elasticity, fault tolerance, and adaptability. To meet these evolving demands, modern architectures rely on a distinct set of patterns and best practices. This training explores strategies to identify, comprehend, and adapt to these new requirements.
Target Audience
This course is designed for professionals who have a basic understanding of container technology and Kubernetes concepts but may lack extensive real-world experience. The curriculum is grounded in use cases and lessons learned from practical projects, aiming to inspire participants to build and manage even more effective cloud-native applications.
- Developers
- Operations Staff
- DevOps Engineers
- QA Engineers
- IT Project Managers
Course Format
- Interactive lectures and discussions
- Numerous exercises and hands-on practice
- Practical implementation in a live lab environment
Customization Options
- To request tailored 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 provide proven, iterative solutions to common software development challenges. Meanwhile, Kubernetes extensions are employed to configure and support Kubernetes clusters effectively. By leveraging Kubernetes design patterns and extensions, platform users can implement CI/CD practices while ensuring the scalability and flexibility of their software applications.
This instructor-led live training, available either online or onsite, targets developers and DevOps engineers who aim 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:
- Establish a Kubernetes cluster and configure the essential DevOps tools.
- Grasp the fundamental concepts of software design patterns and Kubernetes extensions.
- Apply Kubernetes extensions and design patterns when interacting with the Kubernetes API.
- Develop customized Kubernetes resources and implement dynamic controllers within a cluster.
- Manage and secure any Kubernetes environment using Kubernetes plugins.
- Integrate DevOps networking models into both current and upcoming Kubernetes projects.
Format of the Course
- Interactive lecture and discussion.
- Extensive exercises and practical application.
- Hands-on implementation within a live laboratory 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 enables faster, more cost-effective development of dynamic systems such as control systems, signal processing and communication systems. It relies on graphic modeling rather than the 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 of their embedded software products.
By the end of this training, participants will be able to
- Select and utilize the right tools for implementing MBD.
- Use MBD to carry out rapid development in the early stages of their embedded software project.
- Shorten the release of their embedded software into the market.
Format of the course
- Part lecture, part discussion, exercises and heavy hands-on practice
Microservice Patterns: Migrating from a Monolithic to a Microservice Architecture with .Net
14 HoursA microservice architecture involves building a software application as a collection of small, independent services. Each service operates within its own process and communicates via lightweight mechanisms, such as HTTP-based resource APIs. These services can be efficiently deployed through continuous automation systems, eliminating the need for centralized management. Furthermore, microservices can be developed using various programming languages and integrated with diverse data storage systems.
This instructor-led, live training is designed for enterprise developers and architects. It provides a .NET-centric introduction to microservice architecture, 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
- Design and implement a testing strategy for microservices
- Deploy a sample microservice-based application into a production environment
- Refactor a monolithic application into distinct services
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 Czech Republic (online or onsite) is designed for individuals who wish to understand requirements analysis and execute it efficiently and accurately by utilizing analysis techniques for their projects.
Upon completing this training, participants will be able to:
- recognize various types of requirements.
- comprehend the overarching concepts and activities involved in requirements analysis.
- gain familiarity with the requirements analysis methodology.
- leverage diverse requirements analysis techniques for optimal results.
- organize requirements to facilitate efficient communication with architects and developers through an iterative requirement 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.