Hi All,
I'm very much a fan of the Volere style of gathering and producing requirements e.g. Business events > businsess use cases > system use cases > req's. however, I find it difficult to decide where to put reporting requirments within this model - functional req's, non-functional or their own section?
An example would be 3 entities - say warehouse operations, marketing admin and a client - all make use of the same inventory report. This makes it difficult to fit into a functional partition, and i'm not even really sure that reports should even come under the "functional" heading anyway.
I currently record reporting requiremetns in thier own section, but i'm perhaps wondering if they should instead come under a sub-section of non-functional requirments.
I would love to hear any suggestions on where I should be putting my reporting requirments within the reqs documents.
Thanks, Andy
Hi Andy,
I record each report as a use case. The report is an activity undertaken by a user that does something of value to the user, hence its a use case.
Then after identifying all your use cases, the next step in the elaboration process is to model the screens and reports that realise your use cases. Note that as with screens, the relationship between use cases and reports is many to many. The report spec has the layout, fields, groupings, sorting, parameters, etc.
Having said that, from a behavioural point of view, most reports behave the same, so I tend to take short cuts with the reporting use cases and maybe only have one use case and list the reports I've identified in the description. Its cheating but quicker.
Kimbo
I would normally put them into a non functional category. I've worked on a project before with a vast anmount of non functional requirments. In that situation we put them into their own document. But in other smaller projects I've just added them to the back of the use case specs under a "non functional" heading.
Hello Andy,
A report shows up first on the Work Context Diagram. Going one level down, each report is output from a Business Use Case (BUC). This is typically triggered by a temporal business Event. in other words the business event happens because there is some functional work-related need for a report. When you decide the product/system boundary for the BUC then the report is output from one of the Product Use Cases (PUCs) linked to that BUC. The detailed requirements for producing the report are atomic functional requirements that are linked to the PUC.
The definition of the data content of the report should be defined in the data dictionary right down to elemental level.
The non-functional requirements that relate to the report (performance, usability, look and feel....etc.) should also be linked to the PUC that produces the report.
If there are any screen designs, prototypes, interface behaviour specifications then they can also be linked to the PUC. They are design requirements and belong in Section 8 of the Volere template. In the next version of the template this section will be expanded to provide more explicit guidance.
There is a Volere Requirements Linked in group where you can talk to other Volere users.
http://www.linkedin.com/e/vgh/2491512/
Regards
Suzanne
Thank you everyone for your great replies.
I capture reporting in the context diagrams, business & product use cases, and both functional and non-functional req's, but I think I've been getting stuck by always trying to find a way to fit reporting into it's own nice neat section.
I'm assuming that Suzanne, you are of 'Mastering the Requirements Process' fame. I wanted to say what a fantastic book you guys have written. It is one of my BA go-to books, and I consider it my requirements "bible". I love how you logically break down each of the stages of gathering and producing requirements - it's very intuitive. I wish i'd come across the book - and the volere template - years ago when I first took on the BA role.
brought to you by enabling practitioners & organizations to achieve their goals using: