Design Decision Rationale: Experiences and Steps Ahead Towards Systematic Use Davide FalessiMartin BeckerGiovanni Cantone SHARK '06, June 11, 2006, Torino, Italy
2 Problem CBSE and PLA testify both the importance of reuse and the achieved standardization. Design Decision Rationale (DDR): + is promising, - is not yet largely utilized, - no standard methods exist. DDR NEEDS FURTHER IMPROVEMENTS Introduction DGA Motivators&Inhibitors Solution Conclusion
3 Outline New DDR documentation framework the Decision, Goal, and Alternatives (DGA). Motivators and inhibitors of using DDR. A solution: be systematic! Reuse only pays off when enacted in a systematic, pre-planned, and carefully focused way. DDR usage scenarios, enlightening who, what, when, and which items, allow a scenario-focused efficient DDR documentation (DDRD) and the persuasion of DDR maintainers and payees. Introduction DGA Motivators&Inhibitors Solution Conclusion
4 DGA Context Ambient Intelligence (AmI) is a vision of intelligent environments that react in a sensitive and adaptive way to the presence of humans and objects in order to provide various services to people. BelAmi (Bilateral German-Hungarian Research Collaboration on Ambient Intelligence Systems) project in the assisting living domain. Introduction DGA Motivators&Inhibitors Solution Conclusion
5 DGA Context There are AmI characteristics that demand for DDR usage, including: New combinations of required qualities, e.g., flexibility and efficiency, interoperability, and safety. Several stakeholders with specific knowledge and views. Architects and designers have to negotiate their objectives that interfere with the issues of others. Requirements do change substantially. Introduction DGA Motivators&Inhibitors Solution Conclusion
6 DGA Rationale Our decision was to capture DDR by documenting decisions that stakeholders were making in the AmI context by using the CBAM method. In fact, the SEI presented Cost Benefit Analysis Method (CBAM) as a rational decision-making process for software architectural decisions, which is able to give stakeholders help in the elicitation of costs and benefits. We designed the Decision, Goals and Alternative (DGA) technique that, as its name partially suggests (“decision”, “alternative”), is related to CBAM. Introduction DGA Motivators&Inhibitors Solution Conclusion
7 DGA Decision Drivers Design Decision Non-Functional RequirementFunctional Requirement Decision RelationshipBusiness Goal Is it complete? Introduction DGA Motivators&Inhibitors Solution Conclusion
8 DGA stages: 1.Understand what to document. Define project goals. 2.Enact the documentation. For each design decision, describe the level of importance that every pre-defined goal (see point 1 above) has for this decision; for each decision-related alternative, describe the level of fulfillment of every pre-defined goals. Our Experience Decision Goal and Alternatives DDR Framework Introduction DGA Motivators&Inhibitors Solution Conclusion
9 DGA Example of Usage: Stage 1 Introduction DGA Motivators&Inhibitors Solution Conclusion
10 2.a Goal importance 2.b Goal fulfillment Introduction DGA Motivators&Inhibitors Solution Conclusion DGA Example of Usage: Stage 2
11 DDR Motivators & Inhibitors DDR Communication Design quality Reusability Domain knowldg. Additional effort Unclear benefit Inconsistencies Personal int. Introduction DGA Motivators&Inhibitors Solution Conclusion
12 How to mitigate the impact of inhibitors and emphasize on the impact of motivators? We propose a new approach aimed to enact a systematic DDR use based on the concept of DDR Use Case (DDRUC). DDRUC enlightening who profits from what information in which amount, allow a scenario- focused efficient DDRD and the persuasion of DDR maintainers and payees. Introduction DGA Motivators&Inhibitors Solution Conclusion
13 The set of DDRUC is supposed to be partial and illustrative, however its description is complete. Do you agree? Our Solution DDR Use Case Description Introduction DGA Motivators&Inhibitors Solution Conclusion
14 Process for a Systematic DDR Use.
15 Our Solution Example of Scenario Focused DDRD Using a DDRD framework recently proposed in literature and the abovementioned DDRUC, we rationally deduced which information is required by which DDRUC. Introduction DGA Motivators&Inhibitors Solution Conclusion
16 Example of scenario focused DDRD the Chosen framework The framework, aimed to capture Architectural Rationale, recently proposed by Tyree and Akerman Introduction DGA Motivators&Inhibitors Solution Conclusion
17 60% of T&A DDR information is not used ! (percentage of empty box) By analyzing the contents of the traceability matrix, we can derive that the amount of effort needed for using DDR heavily depends on the specificities of the DDRUC. Example of scenario focused DDRD Results Introduction DGA Motivators&Inhibitors Solution Conclusion
18 Future Work Investigate the relationships between “Usefulness” and the “Which”, “When”, and “How” of design decision documentation, respectively. Develop a decision-making support tool. Figure out incompatibility issues and which design rationale information is already available, so that we do not need to document them again, when using a certain software architecture design method. Investigate the relationship between design rationale information and the “type”, “granularity” and “hierarchies” of a decision. Introduction DGA Motivators&Inhibitors Solution Conclusion
19 Conclusion We described: Decision, Goal, and Alternatives (DGA) DDR framework. Motivators and inhibitors of using DDR. An approach for systematic DDR employment based on the concept of DDR Use Case (DDRUC). Introduction DGA Motivators&Inhibitors Solution Conclusion
20 Main contact Davide Falessi, Ph.D. Student University of Rome “Tor Vergata”, Dept. of Computer Science, System and Industrial Engineering; Via del Politecnico 1, Roma Phone: Url: