Share this
What all Business Analysts ought to know about documenting reporting requirements
by Nick Foard on 11 June 2015
See large version of this image
Earlier this week I was asked by a junior Business Analyst, “How do I capture and document reporting requirements?”
As I started to explain the process I realised that it was a skill I had learned on the job. In fact, a quick online search revealed there is no category in the Business Analysis Body of Knowledge (BABOK) or specific business course that teaches the process. It’s little wonder that the documenting of reporting requirements is not well understood and not well executed, especially by inexperienced business analysts.
In this post, I share my ideas and experience to help you take an effective, consistent, and repeatable approach to documenting reporting requirements.
Choose your approach
In my experience, there are three formal approaches to documenting reporting requirements:
- the structured top-down approach (where everything is completed in sequence, one phase at a time);
- the agile approach (a more flexible approach, where parts of the project are completed organically and concurrently); and
- the use cases approach (which focuses the content on how it is used by different users).
All have their merits, and for the most part a client will dictate the approach they would like to take; but there are consistent steps across all these approaches that are required to get the information you need.
The 10 essential steps for documenting reporting requirements
1. Identify the stakeholder’s main requirement for the report
I’ve put together a sample project to help illustrate the different parts of what we do: the ‘Portfolio Holdings Report Package’ (refer to image at top). In this example, the Portfolio Advisor wants a report that provides a view of portfolio holdings for one of their customers so they can provide better wealth management advice. This is the ‘stakeholder requirement’ of the report.
2. Research “the art of the possible”
There will no doubt be other reports on record that have similar functional requirements or constraints that may be incorporated in the development side. I always find it best to do some background research before you start the brainstorm process to look at “what is possible”. This way you’re in a better space to advise the client on the best approach to deliver their stakeholder requirement.
3. Brainstorm detailed requirements with business stakeholders
I like to meet with all the stakeholders who will have input or will be affected by the report and brainstorm their requirements, either on a whiteboard or a piece of paper. Brainstorming is a very useful tool as it allows you to gather a lot of information quickly and then prioritise the core components required in the report. There are software programmes that allow you to visually model requirements, such as Enterprise Architect and Visual Paradigm, but I find the manual whiteboard brainstorm is just as effective.
4. Elicit and group the functional reporting requirements from the brainstorm
If we go back to the example diagram at the top of this post, by brainstorming with this client, I’ve been able to determine the functional requirements (what the report must be able to do or provide) of the report are:
- It shall display results in both trade and portfolio currency
- The information must be grouped by asset in alphabetical order
- It must be able to be printed.
- It shall provide a total for each set of grouped assets
5. Determine the non-functional report requirements from the brainstorm
At the same time you’ll be looking for the non-functional requirements (how the report needs to behave, the design constraints etc.)
The non-functional requirements of the report are:
- It must not scroll horizontally when viewed onscreen but can scroll vertically
- It will adhere to corporate branding
- It will take no longer than two seconds to open and view electronically.
When documenting non-functional requirements I tend to follow the acronym ‘URPS’, which stands for usability, reliability, performance and supportability. While this does not cover all the areas of non-functional requirements, it helps ensure you consider some of the core business needs for inclusion in your report.
If you are taking the agile approach ‘user stories’ represent the functional reporting requirements and non-functionals can be represented by acceptance tests on the specific user stories.
6. Identify opportunities for re-use from other reports
At well as preparing the list of functional and non-functional requirements you should also be thinking about candidates for re-use (what can be re-used for future reports).
7. Trace your detailed reporting requirements back to the main stakeholder requirement
In my example, all functional and non-functional requirements trace back to the main stakeholder requirement (this is crucial to be able to justify the detailed requirements by tracing back to the stakeholder requirement).
8. Provide the required detail for the report to be developed
At this point it is a good idea to delve further and think about what additional information you will need before you hand it over to a developer to build. Each of the suggestions listed below has a ‘container’ that can trace back to the Report package.
- In my example one of the functional requirements is to provide a total for each set of grouped assets. It is up to the Business Analyst to define and communicate the best approach to calculate these totals (Flow Logic). This could be calculation instructions that can be captured in text or as a flow diagram.
- Data requirements for reports often need to be captured in an Entity Relationship Diagram or Class Model with Attributes (or a good old fashioned list of grouped items, typically called a data dictionary).
- You might also need a mapping table to map the captions and labels on the report.
- There will also be rules or constraints that need to be applied. The report may provide information that is specific to different audiences. Your stakeholder may not want high-level information accessible by some audiences (e.g. media, public, junior staff) but accessible easily by others (e.g. managers, shareholders).
Note: if you are taking the agile approach you will be completing parts of all of these steps at the same time so that the report can be iteratively pulled together.
View larger version of this image
9. Provide mock-ups to facilitate clear communication
I would usually produce a prototype or mock up either in Microsoft Excel or PowerPoint, Balsamiq or similar wireframing tool and then go through this with the stakeholder. Together you can see if it’s in the format they’re after and if anything is missing.
10. Gain business signoff and hand over to the development team
From this point you should have a robust package to provide to a developer or development team to produce the report.
Get started and add value to your organisation!
Here in New Zealand, and internationally, organisations are collecting more and more digital information. The ability to report that information in ways that add value to the organisation is increasingly important.
Follow these 10 steps to documenting reporting requirements and you should find you achieve this goal effectively and consistently.
Keep in touch and let us know if you would like us to elaborate on how to apply the steps across the different approaches in a future post.
Nick Foard is a Principal Consultant based in Equinox IT's Auckland Office.
Share this
- Agile Development (89)
- Software Development (68)
- Scrum (41)
- Agile (32)
- Business Analysis (28)
- Application Lifecycle Management (27)
- Capability Development (23)
- Requirements (21)
- Lean Software Development (20)
- Solution Architecture (19)
- DevOps (17)
- Digital Disruption (17)
- Project Management (17)
- Coaching (16)
- IT Professional (15)
- IT Project (15)
- Knowledge Sharing (13)
- Equinox IT News (12)
- Agile Transformation (11)
- IT Consulting (11)
- Digital Transformation (10)
- Strategic Planning (10)
- IT Governance (9)
- International Leaders (9)
- People (9)
- Change Management (8)
- Cloud (8)
- MIT Sloan CISR (7)
- Working from Home (6)
- Azure DevOps (5)
- Innovation (5)
- Kanban (5)
- Business Architecture (4)
- Continuous Integration (4)
- Enterprise Analysis (4)
- Client Briefing Events (3)
- GitHub (3)
- IT Services (3)
- AI (2)
- Business Rules (2)
- Communities of Practice (2)
- Data Visualisation (2)
- Java Development (2)
- Lean Startup (2)
- Scaling (2)
- Security (2)
- System Performance (2)
- ✨ (2)
- Automation (1)
- FinOps (1)
- Microsoft Azure (1)
- Satir Change Model (1)
- Testing (1)
- March 2025 (1)
- December 2024 (1)
- August 2024 (1)
- February 2024 (3)
- January 2024 (1)
- September 2023 (2)
- July 2023 (3)
- August 2022 (4)
- July 2021 (1)
- March 2021 (1)
- February 2021 (1)
- November 2020 (2)
- July 2020 (1)
- June 2020 (2)
- May 2020 (3)
- March 2020 (3)
- August 2019 (1)
- July 2019 (2)
- June 2019 (1)
- April 2019 (3)
- March 2019 (2)
- December 2018 (1)
- October 2018 (1)
- August 2018 (1)
- July 2018 (1)
- April 2018 (2)
- February 2018 (1)
- January 2018 (1)
- September 2017 (1)
- July 2017 (1)
- February 2017 (1)
- January 2017 (1)
- October 2016 (2)
- September 2016 (1)
- August 2016 (4)
- July 2016 (3)
- June 2016 (3)
- May 2016 (4)
- April 2016 (5)
- March 2016 (1)
- February 2016 (1)
- January 2016 (3)
- December 2015 (5)
- November 2015 (11)
- October 2015 (3)
- September 2015 (2)
- August 2015 (2)
- July 2015 (7)
- June 2015 (7)
- April 2015 (1)
- March 2015 (2)
- February 2015 (2)
- December 2014 (3)
- September 2014 (2)
- July 2014 (1)
- June 2014 (2)
- May 2014 (8)
- April 2014 (1)
- March 2014 (2)
- February 2014 (2)
- November 2013 (1)
- October 2013 (2)
- September 2013 (2)
- August 2013 (2)
- May 2013 (1)
- April 2013 (3)
- March 2013 (2)
- February 2013 (1)
- January 2013 (1)
- November 2012 (1)
- October 2012 (1)
- September 2012 (1)
- July 2012 (2)
- June 2012 (1)
- May 2012 (1)
- November 2011 (2)
- August 2011 (2)
- July 2011 (3)
- June 2011 (4)
- April 2011 (2)
- February 2011 (1)
- January 2011 (2)
- December 2010 (1)
- November 2010 (1)
- October 2010 (1)
- February 2010 (1)
- July 2009 (1)
- October 2008 (1)