Software Architecture in the Presales Process
Humberto Cervantes Universidad Autónoma Metropolitana – Iztapalapa / Quarksoft SATURN 2014
1
Software Architecture in the Presales Process Humberto Cervantes - - PowerPoint PPT Presentation
Software Architecture in the Presales Process Humberto Cervantes Universidad Autnoma Metropolitana Iztapalapa / Quarksoft SATURN 2014 1 Quarksoft A leading software development company based in Mexico City Founded in 2001
1
2
Launch Post-Mortem REQ HLD CODE Re-Launch Post-Mortem HLD CODE TEST Re-Launch Post-Mortem HLD CODE TEST Re-Launch Post-Mortem CODE TEST
Cycle 1 Cycle 2 … Cycle n
TEST REQ
3
Architectural drivers Architectural design Architectural documentation Architectural evaluation
<<precedes>> <<precedes>> <<precedes>> Re-Launch Post-Mortem HLD CODE TEST REQ
scenarios
evaluations
Problem: Many architectural decisions are made before the actual TSP‐based development is performed, during Presales
4
Presales Development (TSP)
Historic database
Project data Estimation data
[Accepted] [Rejected]
5
Presales Development (TSP)
Historic database
Project data Estimation data
[Accepted] [Rejected]
components associated with specific technologies
components is an essential task
6
Presales
Leffingwell, D. “Features, Use Cases, Requirements, Oh My!”, Rational Software White Paper, 2000
7
Presales Development (TSP)
[Accepted] [Rejected]
Architectural drivers Architectural design Architectural documentation Architectural evaluation
<<precedes>> <<precedes>> <<precedes>>
Presales architecture
Architectural drivers Architectural design Architectural documentation Architectural evaluation
<<precedes>> <<precedes>> <<precedes>>
8
certificates to be visualized and printed”
the kiosk system shall be protected (Security)”
windows XP”
Architectural drivers Architectural design Architectural documentation Architectural evaluation
<<precedes>> <<precedes>> <<precedes>>
9
– Estimation – Project planning – Satisfying drivers
– Selection and adaptation of a reference architecture – Selection of technologies – Establishment of deployment layout – Identification of components for estimation
Architectural drivers Architectural design Architectural documentation Architectural evaluation
<<precedes>> <<precedes>> <<precedes>>
Presales architecture
10
Sample reference architecture (from Microsoft Application Architecture Guide)
11 Estimation component Estimation component Estimation component Estimation component Estimation component Estimation component Estimation component Estimation component Estimation component Estimation component
Architectural drivers Architectural design Architectural documentation Architectural evaluation
<<precedes>> <<precedes>> <<precedes>>
12
– Performed before estimation – 3 architects – Seeks to identify risks both in the design decisions of the technical solution but also in the project strategy
– Requirements, for example
– Design decisions, for example
– Strategy
Architectural drivers Architectural design Architectural documentation Architectural evaluation
<<precedes>> <<precedes>> <<precedes>>
13
14
Architectural drivers Architectural design Architectural documentation Architectural evaluation
<<precedes>> <<precedes>> <<precedes>>
15
Pre‐sales Development (TSP)
[Accepted] [Rejected]
Architectural drivers Architectural design Architectural documentation Architectural evaluation
<<precedes>> <<precedes>> <<precedes>>
Architectural drivers Architectural design Architectural documentation Architectural evaluation
<<precedes>> <<precedes>> <<precedes>>
iterations
iterations
plan
Presales architecture Final architecture 16
17
Pre‐sales Development (TSP)
[Accepted] [Rejected]
Architectural drivers Architectural design Architectural documentation Architectural evaluation
<<precedes>> <<precedes>> <<precedes>>
Architectural drivers Architectural design Architectural documentation Architectural evaluation
<<precedes>> <<precedes>> <<precedes>>
Presales architecture Final architecture 18
19