The course consists of 6 modules, which include a description of all stages of software architecture development: from developing a design for a new product to aspects of evaluating and improving the architecture of an existing product.
Architecture is the foundation of any software product. It defines the main components, their relationships and those rules that ensure the correct and efficient operation of the entire system.
That is why it is important for engineers not only to understand what architecture is, but also to know in detail the process of its development. All developers in one way or another face either the architecture of individual programs/services (Application Architecture), or the architecture of the entire product (Solution Architecture), or even the architecture of the entire company (Enterprise Architecture).
The software architecture development process is a structured approach to creating a blueprint for a system that ensures it meets all business requirements and quality metrics.
It begins with an requirement analysis: functional and non-functional, which define what the system must do and how, and the identification of Architecturally Significant Requirements (ASR). At the same time, non-functional requirements (for example: performance, security, reliability) often influence architectural decisions more than functional ones, because they determine the boundaries and direction of the design.
This is followed by design (analysis of alternative solutions and selection of the most suitable), which includes the choice of architectural style, architectural patterns, development of infrastructural aspects, detailed technical aspects of each of the components and all aspects of development. A parallel stage is the documentation of architectural decisions, which includes the creation of diagrams and descriptions (ADRs) that demonstrate the structure of the system, the relationships between components, interaction protocols, and rules for the distribution of responsibilities.
Transparent and understandable documentation helps all team members understand and follow a single architectural vision during implementation - developing components according to the chosen architecture. The Architect's work does not end here and it is very important to continuously improve the architecture with a focus on an evolutionary approach, and not on technologies that change very rapidly.
Also an important stage is checking the architecture and implementation for compliance with requirements and constraints. This may include modeling, prototyping, or architectural reviews that analyze potential risks and ways to minimize them.
Audience:
Required knowledge:
Why should people who have participated in previous courses/workshops come?
New topics:
Format:
Date and time: November 18 - December 7, classes on Mondays, Wednesdays and Saturdays.
How it will take place: Lecture, Q&A, group practice.
Platform: Zoom. We will send you a link to the broadcast on the eve of the course, and it will also be available on this page.
Language of the event and presentation: Ukrainian
The number of participants is limited
Module 1: Fundamental concepts of Software Architecture
Module 2: Identifying and Analyzing Architecturally Significant Requirements (ASR)
Module 3: Architectural management
Module 4: Architecture Design
Module 5: Architecture development during implementation
Module 6: Architecture for a Brownfield product
— More than 16 years in IT (inc. 8+ years in enterprise and software architecture)
— Hands-on Software Architect, Solutioning Director.
— Speaker at global conferences, author of software architecture courses and workshops, has taught more than 500 people in the last year, which helped them delve into Architecture
— Went from developer to delivery director, head of departments
— Managed departments with 300+ people, led big programs (150+ engineers) from different business domains, modern technology stacks and complexity
— SEI/TOGAF/ITIL trained specialist, ICAgile Certified Professional, AWS accredited specialist
— For the past 2.5 years, he has been actively volunteering and participating in various projects that help the Armed Forces and civilians throughout Ukraine
Access to online course sessions
Access to course recording (1 year)
Access to the TG chat, where the speaker will answer questions
Presentations
Additional materials from the mentor
Certificate of workshop participant
Course participants receive a 10% discount on participation in Fwdays conferences
Fwdays is Ukrainian company, that is why payment for services is made in the national currency of Hryvnia. You can see the approximate price in Euros at blocks with the price.