About this workshop
Object Oriented Software Analysis and Design is a 3-day, instructor-led practical workshop in Object-Oriented software analysis, design, and architecture.
The workshop teaches fundamental OO analysis, design, and architecture skills to software developers who have some experience programming in Object-Oriented programming language and who wish to gain a deeper experience of the software design process. The course extensively uses practical examples and hands-on exercises to maximise participants’ absorption of the subject matter.
This workshop builds a foundation for participants to further develop their OO analysis and design skills. It aims to provide practical, immediately applicable guidelines and heuristics for doing high-quality software design, to support the development of higher-quality, more robust, more flexible and maintainable software.
It does not introduce basic OO concepts and is unsuitable for software designers without exposure to OO basics.
Our starter course, Java and OO Foundation, is a 4-day course designed to provide such an introduction to OO basics and Java.
Object Oriented Software Analysis and Design introduces some software architecture concepts and processes but does not intend to give in-depth coverage of architectural concerns.
The course material uses the Unified Modelling Language (UML) as the typical “design language” but does not assume that participants have any prior knowledge of UML. No particular development or design methodology is promoted or imposed, although an iterative approach is recommended.
Instead, the course aims to teach the fundamental analysis and design skills common to all approaches to software design. The course is technology neutral and does not require nor use any specific OO programming language, and is thus valuable for any OO technology platform environment.
Workshop Goals
Object Oriented Software Analysis and Design were designed to teach participants:
- purpose of analysis and design in the broader context of an iterative software development lifecycle
- specific processes for developing analysis, design, and architecture models
- heuristics for designing more robust, maintainable systems
- strategies for ensuring that designs adequately address all systems requirements
- understanding of core UML diagrams
Who will Benefit from this Course?
Software developers and designers who are familiar with object-oriented software development, and who wish to develop their skills in system analysis, design and architecture, are the primary audience for the course.
Course Outline
Object Oriented Software Analysis and Design is an instructor-led course of 3 days duration. The course is concept-based and does not target any particular programming language or platform. Participation is limited to 16 people.
What is Covered by the Course?
- Software Development Lifecycle: The Bigger Picture
- Analysis-phase activities and evolutionary requirements
- OO Design Process and outputs
- Core UML constructs
- Guidelines for good design, DDD
- Applying Design Patterns during design
- Architectural design
- Pulling it all together: The Design Model
Topics NOT Covered
- In-depth Design Patterns
- Advanced use of OO
- Distributed Systems Design
- JavaEE/EJB
- Web services design
- Service Oriented Architecture concepts and design.
Workshop Formats & Pricing
This workshop is offered as a 3-day on-site or nine 2-hour sessions online workshop.
Please take a look at our pricing section for more information.