Guidance For Specifying Reports
Guidance For Specifying Reports
Guidance For Specifying Reports
Introduction
Inquiring About Many applications involve generating reports from one or more databases.
Reports Exploring the content and format of the reports needed is an important aspect
of requirements development. This document suggests specific aspects of
reports to ask about and report information to record. A template for
recording report specifications is found at the end of this document.
General Which reports do you currently use?
Questions to Ask Which reports are currently generated but are not used?
About Reports Are there departmental, organizational, or governmental standards to
which reports are expected to conform to provide a consistent look and
feel or to comply with a regulation? Obtain copies of those standards and
examples of current reports that meet them.
Data Analysis When developing requirements for reports, ensure that the data necessary to
populate the report is available somewhere within the system or database.
Users typically think in terms of generating the outputs they desire, which
implies certain inputs and sources that will make the necessary data
available. This type of analysis may reveal previously undiscovered
requirements. In addition, identify computational business rules that will be
applied to generate any computed output data.
Consider Other When a user requests a specific type of report, the analyst should suggest
Variations variations on that theme. One variation is simply sequencing the data
differently, such as providing order-by capability on data elements beyond
those the user initially requested. Consider providing the user with tools to
specify the column sequence. Another type of variation is to crunch up or
drill down. “Crunch up” means to produce a summarized report of
aggregated results, possibly including results from another source in the
report. “Drill down” means to produce a report with supporting details in
addition to summary data.
Anticipate Users may request reports based on their initial conceptions of how much
Growth data or how many parameters may be involved. However, as systems grow
over time an initial report layout that worked well with small quantities of
data maybe prove intractable. For example, a columnar layout for a certain
number of company divisions might fit nicely on one page. But doubling the
number of divisions might lead to awkward page breaks, the need to change
from portrait to landscape mode, or the need to show the information for
each division down the page (rows) rather than across the page (columns).
Look for Multiple users (or even the same user) may request similar, but not identical,
Similarities reports. Look for opportunities to merge these variations into a single report
that provides enough flexibility to meet the diverse needs without requiring
redundant or near-redundant development and maintenance effort.
Sometimes the variations can be dealt with as set-up parameters for the
report generation, such that a report specified at a higher level of abstraction
can meet multiple needs.
Specifying Reports
Not all of these elements and questions will pertain to every report. Also, there is considerable
variation in where report elements might be placed. For example, the report title could appear
just on the top of the first page or as a header at the top of every page. Use the information below
as a guide to help the Requirements Analyst and Developer fully understand the requirements
and design constraints for each report.
Header and The following items are among those that could be positioned somewhere in
Footer the report header or footer. For each element included, specify the location
on the page and its appearance, including font face, point size, text
highlighting, color, case, and text justification. When a title or other content
exceeds its allocated space, should it be truncated, word-wrapped to the
next line, or what?
Report title
Page numbering and format (such as "Page x" or "Page x of y")
Report notes (such as "The report excludes employees who worked for
the company for less than one month.")
Report run timestamp
Name of the person who generated the report
Data source(s), particularly in a data warehousing application that
consolidates data from disparate sources
Report begin and end dates
Organization identification (company name, department, logo, other
graphics)
Confidentiality statement or copyright notice
Report Body Record selection criteria (logic for what data to select and what to
exclude)
Fields to include
User-specified text or parameters to customize field labels
Column and row heading names and formats: text, font, size, color,
highlighting, case, justification
Column and row layout of data fields, or graph positioning and
parameters for charts or graphs
Display format for each field: font, size, color, highlighting, case,
justification, alignment, numeric rounding, digits and formatting, special
characters ($, %, commas, decimals, leading or trailing pad characters)
How numeric and text field overflows should be handled
Calculations or other transformations that are performed to generate the
data displayed
Sort criteria for each field
Filter criteria or parameters used to restrict the report query prior to
running the report
Grouping and subtotals, including formatting of totals or subtotal
breakout rows
Paging criteria
End-of-Report Appearance and position of any indicator that appears at the end of the
Indicator report
Interactivity If the report is dynamic or is generated interactively, what options
should the user have to modify the contents or appearance of the
initially generated report (expand and collapse views, links to other
reports, drill down to data sources)?
What is the expected persistence of report settings between report
sessions?
Security Access Any limitations regarding which individuals, groups, or organizations are
Restrictions permitted to generate or view the report or which data they are permitted to
select for inclusion
Purpose
<Provide a brief description of the project, background, situation, context, or request that led to
the need to create or modify the report(s) specified in this document.>
Report Description
<Describe the contents and layouts of each report, including changes being made in an existing
version of the report. Indicate the conditions that will trigger generating the report (e.g., manual
or automatic) the timing of report generation, and the disposition of the report, such as to whom
it is sent or where it is stored.>
Report ID:
Report Title:
Report Purpose:
Data Sources:
Frequency and Disposition:
Latency:
Visual Layout:
Header and Footer:
Report Body:
End-of-Report Indicator:
Interactivity:
Security Access Restrictions:
Sample Report
<If appropriate, provide a mock-up or a sample of the report, or an illustration of a similar
existing report, showing the desired layout.>