From: Paul TIPLADY (Paul.TIPLADY@TRW.COM)
Date: Fri Mar 11 2005 - 22:30:12 EST
Don,
First up, I'll repeat the disclaimer -- this isn't my model, just one I've found useful so far.
I'm not convinced you've put forward real exceptions. You just have to draw the lines in the right places and use the words in the right way (sounds a bit too close to magic, phrased that way!), and everything drops into one of the three categories. And here's why I'm not convinced:
This is bound to be confusing because I've just used the word interface in two subtly different contexts. With an initial lower case 'i' ('interface'), I'm referring to the interface that a system presents to/expects of a user or another system (GUI, web page, serial communications, analogue signals etc). This is the accepted use, and the one I believe you have used to interpret what I wrote. With an initial upper case 'I' ('Interface') I'm referring to one of the three parts of the model described below. In this context, the Interface is more than just what the system presents to/expects of users and other systems. It includes references to legislation, environmental conditions, customer practices and processes, etc -- these are each a part of the Universe that we can't change, but we need to know about them in order to describe what our Machine must do and not do. The important point about the model is that it gives one a way of working out the relative importance of the facts/opinions/data with which an RE is presented when attempting to specify the requirements for a system.
2) Pah! Semantics! ;-) You can't do a webpage design until you know the requirements for that design. Ditto architecting website navigation (does that actually mean something?).
And as I've said before (and will no doubt say again), I do 'proper' systems - hard real time, deeply embedded control systems. The interfaces are mostly mechanical or serial communications, which are much simpler to specify than GUIs, and far less likely to be abused! This tends to colour my interpretation of other peoples' ideas on requirements, so I am grateful (honestly!) for the opportunity to consider this particular idea from another angle.
Regards,
Paul
TRW Automotive
Technical Centre, Stratford Road,
Solihull B90 4GW
England
Tel: +44 (0)121 627 3837
Fax: +44 (0)121 627 3773
E-Mail: Paul.Tiplady@TRW.com Internal web: http://www.cirenuk.trw.com/technology/ External web: http://www.trwauto.com/ ---------------------------------------------------------------------------This e-mail message is for the sole use of the intended recipient(s) and may contain confidential and/or privileged information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply e-mail and destroy all copies of the original message.
>>> "Donald Firesmith" <donald_firesmith@hotmail.com> Thu, 10 Mar 2005
06:16:42 -0600 >>>
Paul wrote:
"The best description of requirements engineering from the system point
of view that I've come across is to consider the universe in two parts:
the machine (or system) we are building, and the rest of the universe,
parts of which our machine will change. The only way we can change the
universe is via our machine. In order for this change to happen, there
has to be an interface between our machine and the rest of the universe,
and it is this interface with which the requirements engineering task
involves itself. We don't care what's inside the machine (that's part
of the 'how'). We can't influence the universe in any way apart from
via our machine, all we can do is describe what it's like now and what
we want our machine to do with/to it. Drawn as a Venn diagram, we have
two overlapping circles -- one labelled 'Universe' (or Domain) and one
labelled 'Machine' (or Specification) -- where the overlap is labelled
'Requirements'."
While largely true, there are a couple of exceptions that need to be
addressed:
1) If humans use the system as part of some business process, then
hopefully the system will improve the business process. Therefore, the
workflow of the humans will be modified, so there is an impact on the
universe. Similarly, if the system interfaces with other systems, the
interfaces to/of these other systems may be improved by being modified (
these interfaces are not always considered fixed and unchangeable).
2) The boundary between the system and its context includes
architecting (e.g., website navigation) and design (e.g., webpage
design) as well as requirements.
;-)
Don
Donald Firesmith
Chairperson, OPF Repository Organization
http://www.donald-firesmith.com
This archive was generated by hypermail 2.1.6 : Mon Mar 21 2005 - 09:00:23 EST