Ensure every role involved in a software product's lifecycle knows the most relevant aspects to consider when designing and implementing its software architecture, from its strategic importance through to its implementation.
Epidata Corporate Courses
Software Architecture: Fundamentals
Content
Unit 1: definitions and basic concepts
- Definition of architecture.
- Differences between architecture and design.
- Views and Stakeholders.
- The architect's role.
- Types of architects.
- Tasks and capabilities of the architect.
- Lifecycle.
- DevOps.
Unit 2: requirements engineering
- Functional and non-functional requirements.
- Use cases or user stories.
- Quality attributes.
- Quality scenarios.
- Utility Tree.
Unit 3: architecture design
- Cohesion, coupling, and connascence.
- Software design principles.
- Design process. Introduction to methodologies (ADD).
- Monolithic architecture
- Distributed architecture.
- Introduction to architectural styles.
Unit 4: architecture documentation
- Uses of documentation and audience types.
- Basic architectural views: Modules, Components and Connectors, and Allocation.
- Documentation and agility.
- Examples of documentation languages.
Skills developed
- provide participants with a solid understanding of the fundamental concepts and principles related to software architecture
- Understand how to design systems that can grow and adapt as requirements and the number of users increase
- Understand how to integrate different systems and technologies so they work together efficiently.
Course characteristics
Format and Duration
Online 18 hrs
Who it's for
Developers, technical leads, managers, POs, functional analysts, and anyone involved in a software product's development process.
Course Instructors
Herman Schinca
Instructor in Software Design, Architecture, and Quality
Alejandra González
DevOps Engineer