Course Outline
Introduction
Overview of Software Architecture
- Architectural drivers
- The necessity of architecting
Exploring Architecting Responsibilities
- Responsibilities, skills, and knowledge
- Technical leadership
- Developer versus architect
Understanding the Process of Architecting
- Coding, coaching, and collaboration
- Managing technical risks
- Analyzing and evaluating an architecture
Making Architecture Decisions in Development Teams
- Collecting and documenting issues
- Establishing a community of practice
- Creating a responsibility assignment matrix
Learning About Architecture Descriptions
- Viewpoints and frameworks
- Description languages
Visualizing the Software Architecture
- Communication and shared vocabulary
- Models and diagrams
- Architectural patterns
Documenting the Software Architecture
- Documentation as a guidebook
- Components
Understanding Standards, Decay, and Recovery
- International standards
- Solving process divergence
Getting Involved in the Delivery Process
- Where architecture fits in the process
- Relationship to organizational structure
- Building agile designs
Summary and Conclusion
Requirements
- Knowledge of software design, development, or testing
Audience
- Senior engineers
- Junior engineers
- Developers
Testimonials (3)
You can't take the perfect decision from the beginning, but you can work on it.
Benchia Madalin-Codrin - Siemens BV
Course - Software Architecture 3 days
Trainer knowledge, involvement, and rapport
Adam Kuklewski - GE Medical Systems Polska
Course - Technical Architecture and Patterns
I liked the exercises that helped to open the mind and gain new insights into software architecture.