The purpose of this hands-on, three-day course is to help developers focus on technical design with an emphasis on simplicity and architecting for a low cost of change. The course emphasizes design patterns and teaches developers how to do the right level of design at the right time within the development cycle. Students will also spend considerable time exploring the value of a system that is test-driven, or uses a “test-first” approach.
An important part of this certification is to develop not only an understanding of the technical aspects of agile engineering and continuous delivery tools, but also approaches for structuring work in a more agile manner to respond to customer goals and lower technical risk. A goal of this certification is for students to become well versed in effective approaches to agile software design and engineering, with an emphasis on building in quality and lowering the cost of change.
Agile Developers, Programmers, Development Managers, Technical Team Leads or other team members involved in development or who would like to increase their agile programming knowledge.
We recommend that learners attend ICAgile – Agile Programming – QAICPPRG before attending this course.
Pre Course Reading
Delegates will learn how to
As a result of participating in the course, learners will be able to:
- Apply software design techniques to improve efficiency and testability.
- Refactor design by following the SOLID design principles.
- Choose the most appropriate architecture by considering the needs of the needs of the stakeholders.
- Enterprise Architecture
- Views and Viewpoints of Stakeholders
- Capability and Application Architecture
- Design Throughout the Lifecycle
- Sequencing the Work
Simplicity - Simple and Good Design
- Simple Design
- Evaluating Designs and Design Principles
- Design Patterns
- Architecture Patterns
Design for Automated Testing
- Testing the System Bypassing the User Interface
- Testing the System Through the User Interface
- Non-Functional Testing
- Recognizing Technical Debt
- Discussing Technical Debt Choices with Stakeholders
- The Need for Technical Leadership
- Characteristics of Technical Leadership
THE BUILD PROCESS
- Continuous Delivery
- Developer-Operations Collaboration
- Patterns for Continuous Delivery