IT:AD:PLANGUAGE:
- See also:
Summary
A notation for Requirements developed by Tob Gilb.
Planguage stands for “Plan Language”.
Tom Gilb had a strong distrust of the use of “Natural Language” for defining requirements due to flexibility – and therefore potential for ambiguity – within everyday English.
The PLanguage solution is to use a set of formal tags, listed below.
Notes
Tag
:- The unque Identifier of the Requirement
*
Gist
/Ambition
:- The goal that is to be met
*
Scale
:- The scale to use when measuring (see Meter)
*
Meter
:- Describes precisely how to perform the measurement.
*
Must
:- The minimum target value to meet.
*
Plan
:- The desired normal wish.
Wish
:- The desired optimal value.
Acid
* Advantages:
- A defined syntax is a excellent starting point.
- I appreciate the recording of
Stakeholder
, andAuthority
, which I think useful.
* Considerations:
- It appears to be heavily influenced by an engineering environment.
- It's formality appears to have had only a limited success at influencing the field of requirement development.
- Is it
Ambition
orAspiration
– orGist
? They're all a bit unclear as to whether they are Obligations, Recommendations or Allowances. - Missing 'Context' and 'Exceptions' to 'Context'. Not all Requirements are applicable to all situations.
- Missing a word to define or at least suggest the
Test
method. - Tag is unclear as to being a 'Action' to be undertaken, or simply a handle/tag (if so, where do we put the Action?).
* Disadvantages:
- It's flexibility – the ability to define tags as needed – is also it's disadvantage. It's hard to find two companies using the exact same set of same tags.
- There's an unproductive amount of duplication – therefore chance for errors – in between filling in
Tag
,Gist
(basically the same thing in most cases),Ambition
,Aspiration
, andRequirement
(all dealing with the same thing, but in long format). - Having multiple Targets ('Record', 'Must', 'Past', 'Wish', 'Stretch', 'Trend' make the requirements non atomic, adding ambiguity.
- In such cases it would better to break the requirements into multiple requirements, each with a varying desirability (MUST be polite at greeting + SHOULD be polite during rest of meeting).
Conclusion
PLanguage has good intentions, but adds a lot of artificial friction in order to ensure thought has been put into the requirements. But it's still a lot of friction, that is not needed.
Consider instead using a Restrained Natural Language.
Resources
* http://www.clearspecs.com/downloads/ClearSpecs20V01_Quantifying%20Quality%20Requirements.pdf * http://www.syque.com/quality_tools/tools/Tools104.htm * https://books.google.co.nz/books?id=spxCAwAAQBAJ&pg=PT120&lpg=PT120&dq=Tag+ambition+target+meter&source=bl&ots=AqcztgzLpp&sig=UUx8ru57P9tuehz_sxIZYj_XGcU&hl=en&sa=X&ved=0ahUKEwjtrcXdjaXKAhWDJZQKHdfBBzYQ6AEIIDAB#v=onepage&q=Tag%20ambition%20target%20meter&f=false