@ADR(1) @ADR(2)
@Target({ANNOTATION_TYPE,CONSTRUCTOR,FIELD,LOCAL_VARIABLE,METHOD,PACKAGE,PARAMETER,TYPE,TYPE_PARAMETER,TYPE_USE})
@Retention(RUNTIME)
@Documented
@Repeatable(YStatementJustifications.class)
public @interface YStatementJustification
See IEEE Software/InfoQ article and
SATURN 2012 presentation for introduction of Y statements.
More information is also given in the AppArch lecture at HSR FHO.
TODO decide where to put the Y statement template text - defaults? IO helper? ...?
-
Optional Element Summary
Optional Elements
-
Element Details
-
id
String id- Default:
- "AD-xx"
-
context
String context- Default:
- "In the context of [functional requirement and current design stage/evolution state]"
-
facing
String facing- Default:
- "facing [non-functional requirements such as quality attributes and constraints]"
-
chosen
String chosen- Default:
- "we decided for [selected solution option]"
-
neglected
String neglected- Default:
- "and neglected [alternate solution options]"
-
achieving
String achieving- Default:
- "to achieve [positive consequences of chosen solution (quality attribute fulfillmment?)]"
-
accepting
String accepting- Default:
- "accepting that [negative consequences of chosen solution (quality attribute impact?)]"
-
moreInformation
String moreInformation- Default:
- ""
-