![]() |
Telelogic Rhapsody (steve huntington) | ![]() |
Topic Title: Requirements vs Constraints Topic Summary: Created On: 2-Jun-2006 10:23 Status: Read Only |
Linear : Threading : Single : Branch |
![]() |
![]()
|
![]() |
|
The debate we are having is whether to use constraints at all.
Consider the requirement and constraint pair: [list] [*]"The TV shall display the last viewed service when it is repowered from Standby mode". [*]"The maximum time for the TV to display a service from power up is 10ms". (It is a Panasonic TV ). [/list] This can also be expressed as a single requirement: [list]"The TV shall display the last viewed service within 10ms when it is repowered from Standby mode". [/list] So, superficially, it looks like constraints aren't necessary: REASONS FOR USING CONSTRAINTS: [list] [*] you can write something formal in their specifications that could help with executable validation, e.g. startupToDisplay<=10ms [*] they parcel up the quality of service / performance items so that they can be specifically addressed, e.g. for a tester seeking to verify performance [*] they encourage engineers to consider performance [*] multiplicity - a constraint may attach to more than one requirement [/list] REASONS FOR NOT USING CONSTRAINTS: [list] [*] they confuse people [*] they need to be managed e.g. should they be uniquely ID'd and should those IDs be on a different series to the IDs given to requirements [/list] (Regarding IDs, we use unique numeric IDs [now supported in 6.1 but previously we used tags] which are assigned indelibly using a VBA macro. What do others do?) Please feel free to add comment and to supplement the list of fors/againsts? ------------------------- ----------------------- Matthew Thomas Panasonic Manufacturing UK Ltd |
|
![]() |
|
![]() |
|
Everything is a requirement of some sort. I don't worry overmuch.
I usually reserve 'Constraints' for non-behavioural/physical elements - weight, volume, finish etc. Many can be hierarchically aggregated; weight for instance. In a narrower sense what I refer to as 'Specifying Requirements' specify required functionality (behaviour) - "shall work out the square root of something". Quality of Service (QoS) Requirements or Performance Indices (PI) I reserve for specifying the behavioural performance - time taken, accuracy etc. and are often associated with a specifying requirement. In some respects they are similar to Constraints in that they may sometimes be hierarchically aggregated, time allocation for instance. In essence the 'specifying requirement' describes what a function has to do and a QoS defines how well. QoS requirements tend to be more tradeable than specifying requirements. Any help? |
|
![]() |
FuseTalk Standard Edition v3.2 - © 1999-2009 FuseTalk Inc. All rights reserved.