Object Oriented Design using Design Patterns Training Course
Objective:
Aiming to empower Technical Analysts and Designers to master the software implementation of requirements, ensuring clear traceability between business specifications and the resulting code.
This two-day training course supports technical analysts and designers in crafting specifications as defined by business analysts. Once transformed into software component representations, the resulting system components map system requirements directly to software component structures.
Ultimately, these technical specifications are realized in software code and tested on a component basis. The resulting software components offer high adaptability to changes, allowing for separate tracing of system behaviors layer by layer—from user interfaces down to business objects, through application components where actor usage choices are stored.
This course is available as onsite live training in Brazil 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)
- Overview of UML 2 Diagrams Used 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 Techniques for Representing System Structure and Dynamics
- Refining Requirements Across Both Axes
- Advancing Toward System Design via 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 in Components
- Defining the Design-Level Architectural Backbone (Components, Ports, Interfaces, and Exchange Objects)
- Using 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
- Translating Design-Level Specifications into Object-Oriented Programming Code
- Deploying Components onto Physical Nodes
- Conducting Integration and Acceptance Tests Based on Previous Specifications
Conclusion
- Reviewing the Steps of the System Analysis and Design Processes
- Utilizing Patterns to Ensure Traceability Between Requirements and Software Code
- Validating Requirements Against System Architecture
Please note: The above training-mentoring sessions are conducted interactively using Requirement Engineering and Modeling tools to ensure a robust level of traceability between requirements and underlying solutions. Concepts are initially explained through basic examples and subsequently applied to draft solutions for your specific challenges. Following this session, we can assist you further by reviewing and validating your solutions according to your specific 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 well-established patterns are readily accessible. Often, the key lies in adapting their names and implementing them within a specific technology. This approach can save hundreds of hours that would otherwise be devoted to design and testing. Training Goals 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 you in estimating how patterns can reduce costs, systematize the design process, and generate a code framework based on your patterns. Audience Software designers, business analysts, project managers, programmers, developers, operational managers, and software division managers. Course Style The course emphasizes use cases and their relationship with specific patterns. Most 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 patterns and demonstrates how to catalogue and describe patterns for reuse 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. Digital insurers leverage technological innovations within their business and operational models to lower costs, enhance customer experiences, and increase operational agility.
This instructor-led training helps participants understand the technologies, methodologies, and mindsets required to drive digital transformation within their organizations and across the industry. The program is designed for managers seeking a comprehensive overview, aiming to cut through the hype and jargon while taking initial steps toward formulating an Insurtech strategy.
Upon completion of this training, participants will be capable of:
- Discussing Insurtech and its core components in an intelligent and systematic manner
- Identifying and clarifying the role of key technologies within the Insurtech landscape
- Drafting a general strategy for implementing Insurtech within their organization
Target Audience
- Insurance companies
- Technology professionals within the insurance sector
- Stakeholders in the insurance industry
- Consultants and business analysts
Course Format
- A blend of lectures, discussions, exercises, and case study group 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 in C#.
Throughout the course, students will explore MSDN resources and essential tools to streamline the development process, including Microsoft Visual Studio and ReSharper.
Design Patterns (GoF) for Java
21 HoursThis instructor-led, live training in Brazil (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 Brazil (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 Brazil, 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 a "big picture" grasp of Fintech, the ability to cut through hype and jargon, and actionable 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 a step-by-step action plan for introducing new technologies.
Insurance in the Digital Era
14 HoursInsurance in the Digital Age offers 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 insurance professionals at an intermediate level who aim to understand and apply digital technologies, data-driven strategies, and innovation frameworks to modernize their insurance offerings and operational processes.
Upon completion 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 understand their impact on the insurance ecosystem.
- Design customer-centric strategies powered by digital tools and data insights.
- Apply data-driven approaches to risk management and decision-making processes.
- Develop an innovation and change management approach tailored for insurers.
- Assess real-world case studies and translate lessons into local initiatives.
Course Format
- Interactive lectures and discussions.
- Case study analysis and group workshops.
- Practical exercises and action planning for participants’ organizations.
Course Customization Options
- To request 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 crucial discipline within the realm of software and systems development. It focuses on identifying, documenting, and managing the needs and constraints of stakeholders to guarantee project success.
This instructor-led, live training, available both online and onsite, is tailored for intermediate-level professionals aiming to deepen their understanding 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 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 sophisticated web applications. The curriculum emphasizes best practices in JavaScript development and highlights frequent pitfalls. A key aspect of the course involves exploring object-oriented programming capabilities within the JavaScript syntax.
Kubernetes Design Patterns
21 HoursThe rapid evolution of microservices and container technologies has fundamentally transformed how we design, develop, deploy, and operate software. Today's applications need to excel in scalability, elasticity, resilience to failure, and adaptability to change. To meet these modern demands, architects must adopt a distinct set of patterns and practices. This training explores how to identify, comprehend, and adapt to these evolving requirements.
Audience
This course is designed for professionals who have some familiarity with container technology and Kubernetes concepts but may lack extensive practical experience. Drawing on use cases and lessons learned from real-world projects, the goal is to inspire participants to create and manage superior 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 laboratory environment
Course Customization Options
- For customized training arrangements for this course, please contact us.
Kubernetes Design Patterns and Extensions
14 HoursKubernetes serves as an open-source platform designed to automate every stage of the development lifecycle for containerized applications. Design patterns represent proven, iterative solutions to software development challenges related to system architecture. Meanwhile, Kubernetes extensions play a crucial role in configuring and supporting Kubernetes clusters. By leveraging these design patterns and extensions, platform users can implement CI/CD strategies while ensuring the scalability and flexibility of their software applications.
This instructor-led live training, available online or on-site, targets developers and DevOps engineers aiming to harness Kubernetes design patterns and extensions to build enterprise-grade applications on Kubernetes clusters.
Upon completion of this training, participants will be equipped 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 deploy dynamic controllers within a cluster.
- Administer and secure any Kubernetes environment utilizing Kubernetes plugins.
- Incorporate DevOps networking models into current and future Kubernetes projects.
Course Format
- Interactive lectures and group discussions.
- Extensive exercises and practical practice.
- Hands-on implementation within a live-lab environment.
Customization Options
- For those seeking tailored training for this course, please reach out to us to arrange a session.
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 graphical modeling rather than 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.
- Use MBD to carry out rapid development during the early stages of an embedded software project.
- Shorten the time to release embedded software into the market.
Format of the course
- A mix of lectures, discussions, exercises, and extensive hands-on practice.
Microservice Patterns: Migrating from a Monolithic to a Microservice Architecture with .Net
14 HoursMicroservice architecture is an approach to developing a software application as a suite of small, independent services, each running in its own process and communicating with lightweight mechanisms such as an HTTP resource API. These services can be efficiently deployed using continuous automation systems and bypass the need for centralized management. Microservices can be written in different programming languages and integrate with different data storage systems.
This instructor-led, live training is aimed at enterprise developers and architects. It introduces microservice architecture from a .Net perspective, presents migration strategies from a monolithic system, and walks participants through the creation and deployment of a sample microservice-based application.
By the end of this training, participants will be able to:
- Understand when to use and when not to use microservice architecture
- Create and implement a testing strategy for microservices
- Deploy a sample microservice-based application into a production environment
- Refactor a monolithic application into services
Audience
- Developers
- Architects
Format of the course
- Part lecture, part discussion, exercises and heavy hands-on practice
Requirements Analysis
21 HoursThis instructor-led, live training in Brazil (online or onsite) targets individuals who want to understand requirements analysis and execute it efficiently and accurately using specific 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 offers a practical, hands-on exploration of the core principles and applications in software engineering, requirements engineering, and testing.