Chapter 17. Designing for Reporting

This chapter looks at some patterns and practices you can employ to improve the overall reporting within the solution. Reports can be used by the business team and the technical team, and during incident investigation. Reporting is not just database reporting; it also includes the log file analytics. However, this chapter concentrates on the database side of things. Thinking beyond the initial reporting requirements and capturing information in the database right from the start will help to ensure that the low-level data is in place and will help to support future reporting requirements.

This chapter is organized into the following sections:

  • Maintaining Meaningful Data — This section looks at some of the specific data elements that can improve the overall reporting capabilities, including:

    • Using lookup tables

    • Recording dates and times

    • Maintaining transaction counts

    • Defining the master data set

  • Providing an Audit Trail — This section looks at providing an audit trail at the database level. An audit trail can help during incident investigation because it contains all the changes that have been made to database records and, more importantly, who (or what) changed them. Reports of this nature can also be very useful for Service Delivery.

Get Design – Build – Run: Applied Practices and Principles for Production-Ready Software Development now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.