COVID-19 Update: Improving is now back to delivering in-person training in most of our offices! Check out our full schedule for locations near you or contact us about scheduling an in-person class.
Course Details
This three-day instructor-led course will provide participants with the tools needed to reach the next level of object-oriented software development.
These tools will help discover and communicate:
what an object-oriented system is functionally required to do
how the system should be built in a manner conducive to maintainability
Modern object-oriented developers and designers must have a deeper understanding of this technology paradigm to successfully create sustainable custom software solutions. This course prepares them for that.
Each topic will be reinforced with very interactive and targeted group exercises that will guide participants through complete software development cycles. These exercises will be done without computers to keep the focus on the principles being learned. Some more technical aspects will be demoed by the instructor.
Audience:
Software development professionals looking for a deeper understanding of what it takes to create sustainable enterprise software solutions.
This class is also suitable for IT leaders looking for a broader understanding of designing robust solutions so that they can make more informed decisions.
Participants will learn to:
Describe the advantages of object-oriented techniques
Recall the advantages of agile software development methods
Communicate designs with the Unified Modeling Language (UML) in a pragmatic way
Create high-level use case diagrams
Write effective use cases and/or user stories to capture customer needs
Use sequence diagram notation to visually describe system interactions
Effectively identify business concepts to minimize the representation gap
Depict relevant business concepts in a domain model using static structure notation
Identify acceptance criteria for relevant functionality
Map acceptance tests to unit tests (behavior-driven development)
Identify the aspects of a ‘good’ design
Identify the aspects of a ‘bad’ design
Explain core principles such as Low Coupling and High Cohesion
Assign responsibility to appropriate classes using the GRASP patterns
Use the SOLID principles as design guidelines
Recognize the most common Design Patterns
Know when and where to apply Design Patterns
Depict object collaboration using interaction diagrams
Portray classes and their dependencies using static structure notation
Recognize how code is mapped from a design
Apply test-driven development concepts
Understand when not to create analysis and design artifacts
Customized Training
Don't see the class or size you need? Want another date or location? Let us know. We can offer private training or even schedule another public class.
Have a large group? Contact us about group discounts or private training.