IT:AD:SMART
Summary
<uml> @startuml
!includeurl http://skysigal.com/_media/resources/configuration/plantuml/minimalist.txt skinparam nodesep 50 skinparam ranksep 30 scale 0.8 scale max 800 width 'skinparam handwritten true
title SMART Objective Attributes
class Specific class Measurable class Achievable class Relevant class Time
Specific -[HIDDEN]RIGHT- Measurable
Specific -[HIDDEN]- Achievable Measurable -[HIDDEN]- Achievable
Achievable -[HIDDEN]- Relevant Achievable -[HIDDEN]- Time
Relevant -[HIDDEN]RIGHT- Time
note right of Time Or other Resource constraint (Duration, Expense, etc.) endnote
@enduml </uml>
An acronym for what Requirements should be:
- Specific (ie, Atomic, SRP)
- Measurable (ie, Testable: define quantity, and test to prove so)
- Achievable (ie, Objective, as opposed to an open ended Goal).
- Relevant (ie, Rationale given, associated to an ISO-25010 Quality)
- Time-bound (ie, …or better yet, Resource bound (expected Time, Cost, Effort)
What's implied from the above is capturing: * Specific: Input Criteria are defined
What's ambiguous from the above is whether Alternate Flows are beyond Specific.
What's missing from SMART is asking for:
- Context/Exceptions: when to apply and when not to apply Information: recommendations and resources (how)
<WRAP tip> Note that there is value in using something like OCRRA or ART ICE notation when defining Requirements. </WRAP>