Description
- The course introduces the main concepts and context of software architecture. Participants will learn about practices such as essential requirements identification, architectural design, architectural documentation, and architecture analysis.
- It provides a clear understanding of the main aspects of being a software architect, as well as different types of architects (e.g. enterprise, solution, software, and system).
- It reveals a structured way of collecting and documenting the business requirements with an architectural impact (i.e. non-functional requirements) to be quantifiable, measurable, and testable.
- It includes various design techniques in light of the Quality Attributes which help to create software architecture.
- It teaches you how to create proper and structured architectural documentation, in compliance with its purpose and beneficiaries (i.e. users).
- Evaluating software architecture should be part of each project, hence we will discuss different techniques that might help you to mitigate the architectural risk.
- It gives a recipe to conduct a healthy evaluation across different frameworks and libraries which might fit the project, to pick up the most suitable and appropriate based on the environmental context.
- The course is a blend of lectures, individual and team exercises, and interactive workshops.
Agenda
- Main architectural concepts (e.g. what is a software architecture, the contexts of software architecture, the architecture influence cycle, etc.). The duties, skills, and knowledge of a software architect
- Stakeholders, Business Goals and Quality Attributes (e.g. scalability, performance, security, availability, modifiability) in lights of architectural tactics
- Designing software architecture
- Documenting the software architecture via viewpoint-based approach and architectural views (how to structure the architectural description)
- Evaluation of the software architecture involving different types of stakeholders
- Technologies and frameworks from an architectural perspective (what they mean and how to properly choose them)
Duration
- 16 hours
Target Audience
- software developers
- technical leaders
- software/solution architects
- test engineers
- business analysts with a technical background or passionate about technology
Attendees’ Feedback
[su_quote]I liked the structure of the course, the fact that we applied the concepts we learned by following a methodology creating an architecture starting from the requirements.[/su_quote]
[su_quote]The course helped me understand the architectural concepts and the role of an architect.[/su_quote]
[su_quote]The course helped me to learn the terminology better, by doing exercises, also with book recommendations, describing architectural tactics and generic patterns.[/su_quote]
[su_quote]I was clarified regarding the diagrams (views and viewpoints) and regarding the applicability of some quality attributes.[/su_quote]
[su_quote]The trainer is a true professional. He explained everything in detail as best as he could.[/su_quote]
[su_quote]I think that diagrams are most useful. I think that they should be implemented for every project and presented to developers when they see a project for the first time, as it is easier to imagine and understand how a project works.[/su_quote]
People from the following companies attended my courses:
Enroll
Note: At the moment this course is available only for companies, teams, or groups of students. The individual subscription (i.e. single person) is not an option at the moment.