Further to my second post on this topic, I’ve been working away at the detail of my example scenario so that it hangs together better.
I am discovering that it takes a lot of work to create even a “toy” requirements traceability example, but I think I am getting close. As I did before, I shall start with the “end result diagram” which you can now click on to get to a more detailed version:

In a couple of weeks I shall be presenting at the PowerPoint Live User Conference in New Orleans. The subject I am speaking about is how applying principles from requirements management (RM) can help us build better presentations. Since the audience already understands a lot about presentations, I thought I’d illustrate RM by applying one of its formal information models to the construction of the presentation that they will be watching me give. Here’s another, more refined sneak preview, beginning with:

My UR above contains just an illustrative sample of 4 user requirements; my real talk covers 10 principles of requirements management and I can imagine writing down other requirements on the presentation such as that it will be between 45 and 52 minutes long. The first thing to note about user requirements is that they should try not to mention solutions (like using slides) - they should contain only things you want to achieve or constraints imposed by the environment (e.g. I only have one hour in the conference schedule).

A requirement that can’t be tested is not a proper requirement. So anytime you write or contribute to a user requirement, you should think about how it is going to be tested. And before getting directly into tests, you should do a bit of test planning; the ATP is a high level description of what the tests should achieve -it contains test requirements not tests. So here I decided that I am going to test the audience’s learning of the principles by an examination. ATP:11 is going to help us qualify that the audience was actually entertained by measuring something that may be an indicator of that.
For URD:15, we have an easier test requirement, ATP:15. We only need to demonstrate that further engagements are requested when that happens.

In the acceptance tests we specify tests which will be performed to qualify the acceptance test plan. Above we just show the test for assessing whether the audience understood the principle about distinguishing problems from solutions. In real systems development, one would not ask such blatantly leading questions!

Now we think about the system which we will build to satisfy the user requirements. And for the UR presented above we make the decision that images with commentary (i.e. a slide show) will be fit for purpose. To meet the requirement URD:15, which was about generating spin-off engagements, I’ve decided that one way of doing that will be to make sure that the audience is entertained, and one way of doing that is to employ humor in the slides and commentary. So even if the audience don’t understand what is being said or shown, if they have had a laugh now and then, they might still rate the presentation highly enough to secure further bookings for the presentation and/or the speaker.

and above we see a sample of 4 slides which will be used to satisfy requirements in the SR. The slides are our final implementation layer (we don’t bother with test plan and tests for this layer of our example).

The SR requires a system test plan to qualify its system requirements. STP:1 is about testing to see whether 90% the audience “believes” that the images and commentary successfully explain the concepts they are being used to portray. This is a much weaker test than examining their actual understanding!

Our last document is the system tests, where we specify how to test the system test requirements in the STP. I was worried that measuring how often people smile was maybe a too crazy idea for even a toy example, but then I remembered how much importance Hollywood places on the results of measuring the reaction of test audiences to movies - so my example is maybe not so contrived after all.
At last we can show what traceability is by linking the requirements, test requirements and tests together, which leads us back to the first image again:

(please click the image for more detail).
In this trip out to tackle traceability, I’ve pushed to three levels, so there are now two sets of satisfaction links; the first is between the SR and the UR, and the second is between the slides (aka SSR or implementation) and the SR. Three of the slides help satisfy SR:2, one of the slides helps satisfy SR:16 (humor), you can’t really see what the image providing humor is, but its title is “bored audience”.
There is much more that can be said about the above traceability diagram, but for now I am happy I’ve created a firmer foundation for having those conversations in future posts.
Share This
2 Comments »