Beruflich Dokumente
Kultur Dokumente
Introduction
Agenda
Software Architecture –
Definition 1
“The software architecture of a program
or computing system is the structure
or structures of the system, which
comprise software elements, the
externally visible properties of
those elements, and the relationships
among them.”
-Software Architecture in Practice (2nd
Architecture
Architecture
Is an Abstraction
Defines Structure
Defines Behavior
Focuses on Significant Elements
Balances Stakeholder Needs
Embodies Decisions based on Rationale
Specifies Component Communication
Addresses Non-functional Requirements
Business constraints
Technical constraints
Quality attributes
Influences team structure
Architecture vs . Design
S
Da pec
Enterprise ta i a
Enterprise , li
Se z
Scope and Responsibility
Architect
Architect cu ed
ri A
ty rc
Solution
Solution , hi
Architect Ne te
Architect tw ct
or s
k.
Application
Application or
or Software
Software
Architect
Architect
Development
Development Lead
Lead
Development
Development Team
Team
Strategic Hands on Coder
Level of Detail
Architect ’ s Play a Major
Role in
1. Analysis of the problem domain
2. Risk management
3. Requirements management
4. Estimation
5. Technology roadmap management
6. Determination of implementation approaches
7. Assessment of technical feasibility through POCs
8. Definition of an architecture that meets the system
requirements (functional and quality attributes),
goals of the organization, budget and schedule
9. Interface design
10.Oversight of the mapping from the architecture to the
design and implementation
11.Communication of the software architecture to
technical and non - technical audiences
12.Maintenance of the software architecture throughout
the project lifecycle
13.
14.
Competencies
Strategy Mindset
Communication
Skill
Technical Acumen s