Lecture 4: Capturing Design Rationale Flashcards
What is the difference between a decisioin problem and a design problem?
- Decision problems are defined by a fixed set of options to choose among
- Design problems are more than complex, they are dilemmas
What are the 3 types of information of service contracts?
- functional requirements
- non functional requirements
- design decisions
What is the states of the design?
- decisions taken
- decisions left pending
- concerns/ issues that need to be refined and articulated as decisions
- concerns/issues that are left out
Classification of the design decisions?
Legenda: DT = decision, Taken DP = decision, left Pending IR = issue, needing Refinement (articulated as decision) IO = issue, left Out
- DT: grant system acces to end-users depending on their role
- DP: Duplicate/distribute data on multiple DB servers
- DP: secre data exchange against unauthorized data acces
- IR: ensure data availablity
- IO: ensure good level of usability
How to move forward in the design process?
Make assumptions:
- Assumptions are ‘hypotheses about the problem and the context of its solution’
- they may later prove to be unfounded
- many are typically left implicit.
Design rationale:
- The logical reasons given to justify a designed artifact, for someone.
- An explanation of why a designed artifact is the way it is, for some concern/issue
Formal capture techniques
predicates logic, constrain expression to a predefined set of categories
+ codified
- inhibit or constrain deliberation
Informal capture techniques
+ capture wide range of considerations
Active: mind-mapping
- require considerable discipline
Passive: video recording
- postpone the effort of searching and organizing
What is a QOC
Questions: key design issues
Options: possible answers
Criteria: assess and compare the options