Design Patterns Training Course
There are plenty of tried and tested patterns widely available to everyone. Sometimes it is a matter of changing the names and implementing the pattern in a specific technology. It can save hundreds of hours, which otherwise would be spent on design and testing. Training Goals This course has two goals: first, it allows you to reuse widely-known patterns, second, it allows you to create and reuse patterns specific to your organization. It helps you to estimate 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 and developers as well as 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.
Course Outline
Introductions
- Patterns and tiered architectures
- Pattern description
- Design patterns and design
- Finding and selecting design patterns
- Design pattern implementation
Well-known patterns
Object Creation
- Factory
- Builder
- Factory Method
- Prototype
- Singleton
Structural Patterns
- Adapter
- Bridge
- Composite
- Decorator
- Facade
- Flyweight
- Proxy
Behavioural Patterns
- Chain of Responsibility
- Command
- Interpreter
- Iterator
- Mediator
- Memento
- Observer
- State
- Strategy
- Template Method
- Visitor
- Observer
Creating Patterns
- To pattern or not to pattern
- Formal pattern description
- Organizing the pattern catalogue
- Particular goal and abstracted goal
- Publishing your patterns to a pattern community
Requirements
Good knowledge of UML and any object-oriented language like C++, C#, Java, VB.NET, PHP 5.3 or above etc...
Open Training Courses require 5+ participants.
Design Patterns Training Course - Booking
Design Patterns Training Course - Enquiry
Design Patterns - Consultancy Enquiry
Consultancy Enquiry
Testimonials (3)
The trainer highlighted the really important concepts in software architecture with quizzes. The high-level perspective on effective implementation of software development cycle starting from requirements elicitation to unit testing is very refreshing to data scientist without much experience in software development.
Kok Cheong Cheng - DBS Bank
Course - Design Patterns
Broad overview of techniques
Kay Jan Wong - DBS Bank Ltd
Course - Design Patterns
I like the simple but informative example codes.
Yue Wang - DBS Bank Ltd
Course - Design Patterns
Upcoming Courses
Related Courses
Practical aspects of UML
21 HoursThe course extends possessed knowledge of UML. During the training, we focus on the practical use of the language of the UML object-oriented analysis.
Business and System Analysis using UML Notation - Practical Workshop for PO in the Scrum Methodology
21 HoursBusiness analysis is the process of examining, understanding, and defining business needs in order to develop solutions that meet those needs. Jest a key element in the process of managing changes in the organization and designing new business solutions. Business analysis aims to ensure that technological, process or organizational solutions meet business goals and needs. Jest a key element in ensuring the effectiveness of projects and changes in the organization, by ensuring that the solutions introduced are accurate, feasible and fully meet business requirements.
Business Process Analysis with UML and BPMN
14 HoursCourse Audience:
Managers who want to understand BPMN diagrams, Business Consultants, Business Analysts, Business Process Engineers, System Analysts and anyone who is involved in analyzing and planning Business Processes using standardized, unified modelling notation.
Course Goals:
- Produce high-quality process diagrams
- Model in the BPMN process notation
- Capture as-is process information
- Implement optimized process flows for people-intensive processes
- Simplify complex process definitions and break them into more manageable pieces
Business Process Modeling using BPMN and UML
14 HoursObjective:
This training course aims at helping business analysts to learn to model efficiently their business processes using BPMN as well as resources that are handled by their activities. Being conducted by an agile enterprise framework, business analysts learn during this course how to use appropriate BPMN notations and business extensions of UML in order to deal with their "business requirements" and coherently drive underlying design level activities.
Insurtech: A Practical Introduction for Managers
14 HoursInsurtech (a.k.a Digital Insurance) refers to the convergence of insurance + new technologies. In the field of Insurtech "digital insurers" apply technology innovations to their business and operating models in order to reduce costs, improve the customer experience and enhance the agility of their operations.
In this instructor-led training, participants will gain an understanding of the technologies, methods and mindset needed to bring about a digital transformation within their organizations and in the industry at large. The training is aimed at managers who need to gain a big picture understanding, break down the hype and jargon, and take the first steps in establishing an Insurtech strategy.
By the end of this training, participants will be able to:
- Discuss Insurtech and all its component parts intelligently and systematically
- Identify and demystify the role of each key technology within Insurtech.
- Draft a general strategy for implementing Insurtech within their organization
Audience
- Insurers
- Technologists within the insurance industry
- Insurance stakeholders
- Consultants and business analysts
Format of the course
- Part lecture, part discussion, exercises and case study group activities
Introduction to Enterprise Architect
7 HoursThis Introduction to Enterprise Architect training course is designed for all persons who wish to use Sparx Systems’ UML modelling tool, Enterprise Architect, for their modelling activities yet are unfamiliar with the features, functions and use of Enterprise Architect.
Efficient Requirement Management using Agile Methods and Agile UML Modeling
21 HoursObjective:
This training course aims at helping product managers, products owners, business analysts, system architects and developers understand how to efficiently Manage Requirements on the basis of the product vision till guiding developers accurately in implementing them.
More in detail, this course aims at assisting product managers in better defining the value propositions of their products on the basis of strategies and stakeholder needs. Business Analysts and product owners understand how to describe requirements of the product backlog then discover appropriate epics and user stories of the system while contributing to the required value creation. Along interactive case study exercises, participants learn how to describe in detail such requirements in order to validate correct understanding of needs and prepare system acceptance tests. Thus, only using a very common and productive UML profile, they learn to structure requirements in order to communicate efficiently with architects and developers through an iterative requirement gathering process.
Audience:
- Product Managers
- Product Owners
- Business Analysts
- Anyone interetsted in the Requirements Management Process
Fintech: A Practical Introduction for Managers
14 HoursIn this instructor-led, live training in France, 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.
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
Object Constraint Language (OCL) and Web Ontology Language (OWL)
21 HoursThis instructor-led, live training in France (online or onsite) is aimed at programmers or anyone who wish to learn and use OCL and OWL for expressing all kinds of model query, manipulation, and specification requirements.
By the end of this training, participants will be able to:
- Have a better understanding of OCL and OWL architecture.
- Use OCL and OWL to express model transformations.
OCUP2 UML Certification - UML 2 Foundation Exam Preparation
21 HoursOCUP2 Content Developer
NobleProg has official OMG OCUP 2 Content Developer status, which means that our course outlines and training materials were developed by the same experts who prepared questions for OCUP 2 exams.
Audience
Developers, programmers, business analysts, project managers, software architects, testers, people responsible for documentation or anyone involved in the software development process.
Objectives
Prepares you to work with the most commonly encountered UML elements
Teaches you how to create simple UML models
Prepares you to be a member of a UML Development Team
Requirements Analysis
21 HoursThis instructor-led, live training in France (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 demonstrates through hands-on practice the fundamentals and applications of software engineering, requirements engineering and testing.