3. Introduction
More than just design!
Software Architecture = {Elements, Form, Rationale}
Rationale is usually embodied in architecture decisions (ADs)
ADs should be explicit and documented for future reference
Became a reality in the industry also!
4. Motivation
Our industry cooperation partner documents ADs
Benefits are company-wide acknowledged
But…improvements were necessary
Are ADs well communicated? Are ADs easily retrievable?
Is our decision process good enough?
How does an external observer
perceive it?
How good are we,
compared to the state of the art?
How can we improve?
5. Goals
Analyze the current decision making process
Identify improvement potentials
Propose an enhanced concept for decision making
6. Analysis
Analyze the current decision making process
Initial meeting
Analysis of ADs repositories of two large projects
(45000 and 9000 IT person days)
12 follow-up discussions (semi-structured)
Identify improvement potentials
Propose an enhanced concept for decision making
7. Current Process
possibly ask others
Well established template:
• Title
• Problem description
• Identified alternatives
• Prioritized criteria
• Quantification
• Chosen alternative
• Invoked stakeholders
• Derived requirements
• Related decisions, etc.
• Several mediums
• Many inconsistencies
8. Remarks
The “nature” of the ADs was different then expected
<10% contained component diagrams or lines and boxes
Inter-decision relations are almost never documented
When asked if useful, the architects were reluctant
“Implies” received the most acknowledgement
The industry is behind the state of the art
Alternatives not only identified, but also semi-subjectively quantified
However…much documented knowledge, little reuse
Many inconsistencies (even within the same project)
Rudimentary process
9. Goals
Analyze the current decision making process
Identify improvement potentials
Propose an enhanced concept for decision making
10. Improvement Potentials
ADs should be …
documented in a central location
documented based on an enforced model
easily retrievable
“search all decisions of the PROJECT PRJ11 that affect the COMPONENT
CRM and violate the COMPANY-GUIDELINE CG10”
easy to be communicated
Push mechanisms
Subscribe mechanisms – “notify me when decisions in the context of
PROJECT PRJ11 are made”
learned from
Active/passive feedback
11. Goals
Analyze the current decision making process
Identify improvement potentials
Propose an enhanced concept for decision making
13. Conclusions
Analysis of the current state of the practice
The situation is much better than expected but…
Improvement potentials were found
A process-oriented approach to boost informal learning was proposed
14. Future work
Capitalize on existing informal learning techniques
Develop metrics and dashboards to aid in the AD management process.
Tool support
15. Thank you!!!
ADs should be …
documented in a central location
documented based on an enforced model
easily retrievable
easy to be communicated
learned from active/passive feedback