O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
Team Situational Awareness and
Architectural Decision Making with the
Software Architecture Warehouse
Marcin Nowak and Ces...
Team Situational Awareness and
Architectural Decision Making with the
Software Architecture Warehouse
Marcin Nowak and Ces...
“The life of a software architect is a long and
rapid succession of suboptimal design decisions
taken partly in the dark”*...
Good decisions
Informed
Smart
4
Panel discussion on Architecture Decisions, SATURN 2013 Mineapollis, Minesota
Good decisions
Informed
Smart
5
Situational Awareness
“The perception of elements in the environment
within a volume of time and space, the
comprehension ...
Situational Awareness
“The perception of elements in the environment
within a volume of time and space, the
comprehension ...
Situational Awareness
8
Perception
recognize
monitor
Comprehension make sense
Projection predict future
* Endsley, M.R. (1...
Assumption #1
Situational Awareness => good decisions
9
“*…+ 86% of architectural decisions are group decisions.”
10
* Difficulty of Architectural Decisions – A Survey with Profe...
Assumption #2
No single architect has complete SA
11
Good decisions
Informed
Smart
Consensual
12
Good decisions
Informed
Smart
Consensual
13
Team Situational Awareness
“The degree to which every team member
possesses the SA required for his or her
responsibilitie...
Team Situational Awareness
“The degree to which every team member
possesses the SA required for his or her
responsibilitie...
Motivation
Team Situational Awareness =>
good collaborative decisions
16
Team Situational Awareness for
Architecture Decisions
17
distributed
decision space
decision metrics
decision process guid...
Reactive design document
18
Decision Space
Architect
Architect
Architect
Architect
Other stakeholders
Real-time sharing,
c...
Decision Space Comprehension
19
Decision Space Comprehension
20
Questionable
Complex
Obsolete
Promising
Positive
Risky
Negative
ISO 42010 decision meta-model
21
Architecture
Element
affectsArchitecture
Decision
RationaleConcern
depends upon
pertains
...
ISO 42010 decision meta-model
22
Issue
addresses
Alternative
addresses
solvesArchitecture
Decision
RationaleConcern
depend...
Argumentation viewpoint meta-model
23
Issue
addresses
Alternative
addresses
solvesArchitecture
Decision
RationaleConcern
d...
Argumentation view example
24
Account
Access
Security
Web Services
Security
Mechanism
Design Issue
WS-Security
HTTPS
Plain...
WS-Security
Argumentation view example
25
WS-Security
Design Issue Architecture Decision Design Alternatives
Compatibility...
Argumentation view example
26
Design Issue Architecture Decision Design Alternatives
HTTPS
WS-Security
Compatibility
issue...
Argumentation view example
27
Design Issue Architecture Decision Design Alternatives
Plain text
Unsecure!
Simple
Stakehold...
Position and alternative life cycle
28
No positions
Position and alternative life cycle
29
No positions
Aligned
Positions
Position and alternative life cycle
30
No positions
Aligned
Positions
Colliding
Positions
Position and alternative life cycle
31
No positions
Sealed
Aligned
Positions
Colliding
Positions
Position and alternative life cycle
32
No positions
Sealed
Inconclusive positions Conclusive positions
Aligned
Positions
C...
Design Issue life-cycle
33
No Alternatives
Inconclusive
Choice
Incomplete
Choice
Conclusive
Choice
Warring
Choice
No Decis...
Design Issue life-cycle
34
No Alternatives
Inconclusive
Choice
Complete choice
Incomplete
Choice
Conclusive
Choice
Warring...
Design Issue life-cycle
35
No Alternatives
Inconclusive
Choice
Complete choice
Incomplete
Choice
Conclusive
Choice
Warring...
Design Issue life-cycle
Plain text
HTTPS
WS-Security
Account
Access
Security
Web Services
Security
Mechanism
HTTPS
No Alte...
Design Issue life-cycle
Plain text
HTTPS
WS-Security
Account
Access
Security
Web Services
Security
Mechanism
HTTPS
No Alte...
Design Issue life-cycle
38
Plain text
HTTPS
WS-Security
Account
Access
Security
Web Services
Security
Mechanism
HTTPS
No A...
Design Issue life-cycle
Plain text
HTTPS
WS-Security
Account
Access
Security
Web Services
Security
Mechanism
HTTPS
No Alte...
Software Architecture Warehouse
40
Formative Evaluation
41
• User-centric design
• 2 yearly iterations (with students of “Software
Architecture and Design” m...
Formative Evaluation Findings
42
• Connectivity
• Position volatility
• Decision space dynamics vary greatly
• Need for de...
Position revoking
43
43
Team re-focusing
44
44
Team re-focusing
45
45
Constraining decision-process
46
46
Constraining decision-process
47
47
Summary
48
• Documenting decision making process is as
important as documenting decisions itself
• There is a lot to learn...
Road ahead
49
• Decision metrics
(in particular complex, graph metrics)
• Detection strategies
(patterns and anti-patterns...
Team Situational Awareness and
Architectural Decision Making with the
Software Architecture Warehouse
Marcin Nowak and Ces...
Próximos SlideShares
Carregando em…5
×

Team Situational Awareness and Architectural Decision Making with the Software Architecture Warehouse

2.043 visualizações

Publicada em

European Conference on Software Architecture (ECSA 2013) presentation on 4 July 2013 by Marcin Nowak

Publicada em: Tecnologia, Negócios
  • Seja o primeiro a comentar

Team Situational Awareness and Architectural Decision Making with the Software Architecture Warehouse

  1. 1. Team Situational Awareness and Architectural Decision Making with the Software Architecture Warehouse Marcin Nowak and Cesare Pautasso marcin.nowak@usi.ch, c.pautasso@ieee.org Faculty of Informatics, University of Lugano, Switzerland
  2. 2. Team Situational Awareness and Architectural Decision Making with the Software Architecture Warehouse Marcin Nowak and Cesare Pautasso marcin.nowak@usi.ch, c.pautasso@ieee.org Faculty of Informatics, University of Lugano, Switzerland
  3. 3. “The life of a software architect is a long and rapid succession of suboptimal design decisions taken partly in the dark”* 3 Philippe Kruchten
  4. 4. Good decisions Informed Smart 4 Panel discussion on Architecture Decisions, SATURN 2013 Mineapollis, Minesota
  5. 5. Good decisions Informed Smart 5
  6. 6. Situational Awareness “The perception of elements in the environment within a volume of time and space, the comprehension of their meaning, and the projection of their status in the near future”* 6 * Endsley, M.R. (1995b). Toward a theory of situation awareness in dynamic systems. Human Factors 37(1), 32–64
  7. 7. Situational Awareness “The perception of elements in the environment within a volume of time and space, the comprehension of their meaning, and the projection of their status in the near future”* 7 * Endsley, M.R. (1995b). Toward a theory of situation awareness in dynamic systems. Human Factors 37(1), 32–64
  8. 8. Situational Awareness 8 Perception recognize monitor Comprehension make sense Projection predict future * Endsley, M.R. (1995b). Toward a theory of situation awareness in dynamic systems. Human Factors 37(1), 32–64
  9. 9. Assumption #1 Situational Awareness => good decisions 9
  10. 10. “*…+ 86% of architectural decisions are group decisions.” 10 * Difficulty of Architectural Decisions – A Survey with Professional Architects Dan Tofan, Matthias Galster, Paris Avgeriou, ECSA 2013
  11. 11. Assumption #2 No single architect has complete SA 11
  12. 12. Good decisions Informed Smart Consensual 12
  13. 13. Good decisions Informed Smart Consensual 13
  14. 14. Team Situational Awareness “The degree to which every team member possesses the SA required for his or her responsibilities”* 14 * Endsley, M.R. (1995b). Toward a theory of situation awareness in dynamic systems. Human Factors 37(1), 32–64
  15. 15. Team Situational Awareness “The degree to which every team member possesses the SA required for his or her responsibilities”* 15 * Endsley, M.R. (1995b). Toward a theory of situation awareness in dynamic systems. Human Factors 37(1), 32–64
  16. 16. Motivation Team Situational Awareness => good collaborative decisions 16
  17. 17. Team Situational Awareness for Architecture Decisions 17 distributed decision space decision metrics decision process guidance Perception Comprehension Projection
  18. 18. Reactive design document 18 Decision Space Architect Architect Architect Architect Other stakeholders Real-time sharing, collaborative decision making
  19. 19. Decision Space Comprehension 19
  20. 20. Decision Space Comprehension 20 Questionable Complex Obsolete Promising Positive Risky Negative
  21. 21. ISO 42010 decision meta-model 21 Architecture Element affectsArchitecture Decision RationaleConcern depends upon pertains raises justifies
  22. 22. ISO 42010 decision meta-model 22 Issue addresses Alternative addresses solvesArchitecture Decision RationaleConcern depends upon pertains raises justifies
  23. 23. Argumentation viewpoint meta-model 23 Issue addresses Alternative addresses solvesArchitecture Decision RationaleConcern depends upon pertains raises justifies Position Action Stakeholder Decision Force recommends pertains states
  24. 24. Argumentation view example 24 Account Access Security Web Services Security Mechanism Design Issue WS-Security HTTPS Plain text Architecture Decision Design Alternatives Compatibility issues Heavyweight Unsecure! Simple Practice proven Stakeholder Positions
  25. 25. WS-Security Argumentation view example 25 WS-Security Design Issue Architecture Decision Design Alternatives Compatibility issues Heavyweight Stakeholder Positions Account Access Security Web Services Security Mechanism HTTPS Plain text Unsecure! Simple Practice provenHTTPS
  26. 26. Argumentation view example 26 Design Issue Architecture Decision Design Alternatives HTTPS WS-Security Compatibility issues Heavyweight Account Access Security Web Services Security Mechanism Plain text Unsecure! Simple Practice proven Stakeholder Positions HTTPS
  27. 27. Argumentation view example 27 Design Issue Architecture Decision Design Alternatives Plain text Unsecure! Simple Stakeholder Positions HTTPS WS-Security Compatibility issues Heavyweight Account Access Security Web Services Security Mechanism Practice proven Plain text
  28. 28. Position and alternative life cycle 28 No positions
  29. 29. Position and alternative life cycle 29 No positions Aligned Positions
  30. 30. Position and alternative life cycle 30 No positions Aligned Positions Colliding Positions
  31. 31. Position and alternative life cycle 31 No positions Sealed Aligned Positions Colliding Positions
  32. 32. Position and alternative life cycle 32 No positions Sealed Inconclusive positions Conclusive positions Aligned Positions Colliding Positions
  33. 33. Design Issue life-cycle 33 No Alternatives Inconclusive Choice Incomplete Choice Conclusive Choice Warring Choice No Decisions
  34. 34. Design Issue life-cycle 34 No Alternatives Inconclusive Choice Complete choice Incomplete Choice Conclusive Choice Warring Choice No Decisions
  35. 35. Design Issue life-cycle 35 No Alternatives Inconclusive Choice Complete choice Incomplete Choice Conclusive Choice Warring Choice No Decisions Plain text HTTPS WS-Security Account Access Security Web Services Security Mechanism HTTPS
  36. 36. Design Issue life-cycle Plain text HTTPS WS-Security Account Access Security Web Services Security Mechanism HTTPS No Alternatives Inconclusive Choice Complete choice Incomplete Choice Conclusive Choice Warring Choice No Decisions 36
  37. 37. Design Issue life-cycle Plain text HTTPS WS-Security Account Access Security Web Services Security Mechanism HTTPS No Alternatives Inconclusive Choice Complete choice Incomplete Choice Conclusive Choice Warring Choice No Decisions 37
  38. 38. Design Issue life-cycle 38 Plain text HTTPS WS-Security Account Access Security Web Services Security Mechanism HTTPS No Alternatives Inconclusive Choice Complete choice Incomplete Choice Conclusive Choice Warring Choice No Decisions 38
  39. 39. Design Issue life-cycle Plain text HTTPS WS-Security Account Access Security Web Services Security Mechanism HTTPS No Alternatives Inconclusive Choice Complete choice Incomplete Choice Conclusive Choice Warring Choice No Decisions 39
  40. 40. Software Architecture Warehouse 40
  41. 41. Formative Evaluation 41 • User-centric design • 2 yearly iterations (with students of “Software Architecture and Design” master course) • 50+ co-located design workshops • 5-10 participants • 146 issues • 401 alternatives • 694 positions 41
  42. 42. Formative Evaluation Findings 42 • Connectivity • Position volatility • Decision space dynamics vary greatly • Need for decision process framing (sealing, time-boxing) • Lack of collective attention focus • Multimodality of the decision discussion 42
  43. 43. Position revoking 43 43
  44. 44. Team re-focusing 44 44
  45. 45. Team re-focusing 45 45
  46. 46. Constraining decision-process 46 46
  47. 47. Constraining decision-process 47 47
  48. 48. Summary 48 • Documenting decision making process is as important as documenting decisions itself • There is a lot to learn about how software architects make decisions (as a group) 48
  49. 49. Road ahead 49 • Decision metrics (in particular complex, graph metrics) • Detection strategies (patterns and anti-patterns) • Decision guidance models 49 Perception Comprehension Projection
  50. 50. Team Situational Awareness and Architectural Decision Making with the Software Architecture Warehouse Marcin Nowak and Cesare Pautasso marcin.nowak@usi.ch, c.pautasso@ieee.org Faculty of Informatics, University of Lugano, Switzerland Public software architecture warehouse demo: http://demo.saw.sonyx.net http://saw.inf.unisi.ch

×