Report design
Report design
47.1 Purpose
A report is a formal, organized presentation of data, often in the form of a printed document or a set of screens. Reports are an important part of a system’s user interface. This chapter discusses text-only reports.
47.2 Strengths, weaknesses, and limitations
Reports were common long before computers were invented. They are excellent tools for organizing and summarizing large amounts of data.
Traditionally, reports were static and often suffered from information overload, but such modern software as report generators and query languages have made it possible to select on demand only the desired data from a file or database.
47.3 Inputs and related ideas
Reports are an important part of a system’s user interface (Chapter 48). Before a report can be prepared, the data must exist, usually in the form of one or more files (Chapter 44) or databases (Chapter 45). During the high-level system design phase (Part V), reports are identified as data flows to users. The contents of a report can often be derived from the logical data structures identified during the analysis stage by using such tools as data flow diagrams (Chapter 24), prototypes (Chapters 31 and 32), and Warnier-Orr diagrams (Chapter 33). Reports are an important source of information about the existing system during the problem definition and information gathering stage (Part II).
47.4 Concepts
A report is a formal, organized presentation of data, often in the form of a printed document or a set of screens. This chapter discusses text-only reports.
47.4.1 Report format
Figure 47.1 illustrates the format of a traditional control breaks report. It begins with a report header or a report title that identifies the report. Other identifiers, such as the report date and the person or department responsible for compiling the report, are often included in the report header. Sometimes, a separate title page is printed or displayed. On multiple page reports, the report title is often repeated at the top of each page or screen.
The body of the report is divided into an imaginary grid of columns and rows (or lines). Column headers near the top of each page or screen identify the field displayed in each column. Each row holds a single detail line that displays the appropriate field values from a single input record (e.g., from a single sales receipt) or a single set of related input records.
Note in Figure 47.1 that the stock number and the description are repeated on each detail line for stock number 17593, but the repetitive values are suppressed on the detail lines for the second item, stock number 17594. Suppressing repetitive data makes the report easier to read, but either approach is acceptable.
The data used to generate a report are often sorted or indexed by one or more key fields. (In Figure 47.1, the stock number serves as the key.) Because the source records are accessed in key order, the detail lines for all records with the same key value are grouped together on the report. For example, all the records for stock number 17593 will be read (and, thus, be printed or displayed) before the first stock number 17594 record is read.
Figure 47.1 The elements of a control breaks report.
A change in the value of the key field is called a control break. For example, when the first record for stock number 17594 is read, it is reasonable to assume that all the stock number 17593 records have been processed. When a control break occurs, a summary line (Figure 47.1) can (optionally) be printed. Summary lines typically hold a count of the number of records and/or the sums of selected fields in the control group.
Some reports feature multiple control fields, with primary control breaks, secondary control breaks, and so on. If desired, summary lines can be printed at each level control break. In some reports, the detail lines are suppressed and only summary lines are printed.
Most reports end with a report summary line, section, or page. On multiple-page reports, page summaries are common, too. Page numbers and a page header are usually added to lengthy reports.
47.4.2 Types of reports
A detail report lists data for each input record or transaction. As the name suggests, a summary report summarizes data accumulated or derived from several detail records, often showing only the summarized data. An exception report lists or summarizes only the data for input records that pass a predefined condition or filter, for example, listing only overdue accounts or only items than have been in inventory for longer than 30 days. An unusual occurrence report lists or summarizes data describing only abnormal or out of the ordinary occurrences.
A scheduled report is prepared at a predetermined time; for example, at the end of the day, the week, the month, the quarter, or the year. A key indicator report is a form of scheduled report that summarizes critical activities, often on a daily basis. A demand report, in contrast, is created on request. Often, end users are given the ability to create their own demand reports using a query language.
47.4.3 Report layout
To lay out a report, start by defining the report title and the page title lines. Be sure to include the report date and page numbers (if necessary).
Then, turn to the body of the report. Any number of lines can be printed or displayed, but the number of characters that can be arrayed across a page or a screen is limited, so width is the primary constraint on report design.
To determine the column width for each of the report fields, start with the column headers. Lengthy, multiple-word headers can be spread over two or more lines, so for each column count the number of characters in the widest header line and record the header widths. Then count the number of characters (including decimal points, commas, plus signs, minus signs, dollar signs, and other punctuation) needed to display the biggest (or smallest) possible value for each field and record the data widths. Finally, working across the report one column at a time, compare the header width and the data width for each column and select the larger value. That number is the column width. Add the widths for each of the columns to get the number of characters needed to display the data.
Next, consider the blank space (or white space) needed to separate the columns. A single space might be enough for closely related columns, but additional column separation normally enhances readability. Add white space to the sum of the column widths to get the report width. If that number is bigger than the paper or screen width, modify or delete one or more columns, use a smaller font, reduce the amount of white space, or change the (printed) report orientation from portrait to landscape. Otherwise, subtract the report width from the paper or screen width to get the number of unused spaces that can be distributed across the line to enhance the balance, symmetry, overall appearance, and readability of the report.
47.4.4 Report design guidelines
Historically, reports were designed on paper using report layout forms. Modern report generators (software) have simplified the task by suggesting a reasonable report layout given only a list of the fields to be included, but the designer may still want to fine-tune the suggested layout to enhance clarity. Report design is a bit of an art, but there are several guidelines that can help.
The first guideline is to include all the necessary data, but only the necessary data. The temptation is to list every available field. Don’t. Be selective. Note that no report generator, no matter how sophisticated, can select the correct fields for the designer.
A second set of guidelines is intended to make the data easy to read. Start by using clear, meaningful, descriptive column headers. Visually distinguish the data from the descriptive information; for example, set column headers in uppercase, italic, or boldface and the data in a basal (regular) font. Group closely related fields in adjacent columns. Use white space to separate loosely related and adjacent positioning to group closely related fields. Avoid using too much white space to separate columns (four or five spaces are usually plenty), because too much separation makes it difficult to visually align the rows. Use a visual clue (such as an asterisk, a different type font, and/or blank lines or horizontal spacing) to identify summary lines.
To clarify the meaning of the data, make sure the headers and the associated data are visually aligned. Generally, left-justify character fields and their headers and right-justify numeric fields and their headers, or center the data under the header. If a numeric field includes digits to the right of the decimal point, make sure all the decimal points are aligned. The easiest way to control decimal point alignment is to display the same number of digits in all the values and to right-justify the numbers.
With some type fonts, it is easy to mistake a dollar sign for the digit 8, so by convention, dollar signs are displayed only on column or row totals and (optionally) on the first value in a column. Negative signs are easy to overlook in a column of numbers, so the negative sign (or other designator, such as DB for debit or CR for credit) is typically printed to the right of the negative number. An option is to enclose negative numbers in parentheses.
Some reports print or display negative numbers in red, but relying strictly on color is dangerous because most standard office copiers show red as black. Also, avoid using light blue. Many office copiers are blind to light blue.
The final rule is a simple one: Be consistent. Changes in rules from column to column, row to row, or page to page are confusing and lead to interpretation errors. The reader should not be expected to learn the formatting rules more than once.
47.5 Key terms
- Column header —
- Documentation at the top of each page or screen that identifies the field displayed in each column.
- Control break —
- A change in the value of a key field.
- Demand report —
- A report that is created on request.
- Detail line —
- A single report row that displays the appropriate field values from a single report file record.
- Detail report —
- A report that lists data for each input record or transaction.
- Exception report —
- A report that lists or summarizes only the data for input records that pass a predefined condition or filter.
- Field —
- A data element; a single, logically meaningful unit of data.
- File —
- A set of related records.
- Key indicator report —
- A form of scheduled report that summarizes critical activities, often on a daily basis.
- Record —
- A set of related fields.
- Report —
- An organized presentation of data, often printed or displayed in text form.
- Report header (report title) —
- A page, screen, or section that (typically) precedes and identifies the report.
- Report summary —
- One or more lines, a section, or a page that summarizes the entire report.
- Scheduled report —
- A report that is prepared at a predetermined time.
- Summary line —
- On a report, a line (or row) that holds summary information, such as counts or sums; summary lines are typically printed or displayed following a control break.
- Summary report —
- A report that summarizes data accumulated or derived from several input records, often showing only the summarized data.
47.6 Software
Most programming languages can be used to create a report. Most database management programs and many CASE products, screen design tools, and prototyping tools incorporate a report generator or a report layout facility. Some languages, such as RPG, were specifically designed to create reports.
47.7 References
- 1. Davis, W. S., Business Systems Analysis and Design, Wadsworth, Belmont, CA, 1994.
Comments
Post a Comment