Key practices of a software architect - course RUB 57,500. from IBS Training Center, training 30 hours, Date: December 11, 2023.
Miscellaneous / / November 29, 2023
In this course, participants are introduced to the basic concepts and context of software architecture, the practice of identifying essential requirements, design, documentation and analysis that a software architect can apply in his work for projects with different subject areas and technological base.
The theoretical material is supported by examples, short written and oral exercises for participants. The second part of each day of the course provides the opportunity to apply these practices, working in a team of 3-4 person: it is necessary to work through an example from setting business goals to draft architectural document. The training ends with a game in which one team presents the resulting architecture and the other performs an evaluation.
Topics covered:
1. Introduction to the course (2 hours).
Context;
Basic concepts;
An overview of the discipline of design and analysis of software systems architectures;
The role of the architect.
2. Architecture in the life cycle of a software development project (2 hours).
Application of learned architectural practices in the life cycle of software development projects;
Their combination with different design methodologies, incl. flexible (Agile) development methodologies;
Varieties of the architect's role, interaction with the roles of analyst and project manager.
3. Project initiation (3 hours).
The relationship of architecture with the system environment (technical and organizational), stakeholders and business goals;
Identifying stakeholders and business goals.
4. Requirements identification (4 hours).
Formalization and prioritization of requirements for system quality characteristics: performance and scalability, availability, security, variability, etc.
5. Architectural design (5 hours).
The concept of design tactics;
Method of designing architecture from quality attributes (Attribute Driven Design, ADD);
Decision-making process, patterns, approaches, styles;
Typical tactics for achieving key quality characteristics.
6. Documenting architecture (6 hours).
Purpose and structure of the architecture description;
The approach of “points of view” (viewpoints) and architectural representations (views);
A detailed examination of several common sets of “points of view” (“Kruchten 4+1” and “Rozanski & Woods”);
Using modeling techniques in documentation;
Prospects for the tactics used to achieve the required system quality characteristics;
Typical architecture description template;
Using a simplified description at the initial stages of the project;
Application of alternative techniques for describing software architecture (C4, Cloudfront).
7. Architectural analysis (8 hours).
Formal architecture review and evaluation processes involving various stakeholders;
Identification of accepted compromise decisions and architectural risks, further work with risks;
Assessment method ATAM (Architecture Tradeoff Analysis Method);
ARID (Active Reviews for Intermediate Designs);
CBAM (Cost-Benefit Analysis Method).
8. Summary of the training and materials for self-preparation.