Chapter 4

Designing Enterprise Data

   

Designing enterprise data is about discovering and completely defining your application's data characteristics and processes. Data design is a process of gradual refinement, from the coarse "What data does your application require?" to the precise data structures and processes that provide it. With a good data design, your application is fast, easily maintained, and can gracefully accept future data enhancements.

This chapter is not a formal methodology for data modeling, although it does use some relational terminology. Rather, it presents some concepts and processes that are typically encountered as you design your application's data.

This topic makes no assumptions about the eventual data storage technology used to store and retrieve your application's data. After all, it's not always obvious at the beginning of an application design just exactly how or where the data will be stored. While most formal data modeling methodologies anticipate using a relational database engine, your enterprise application has many data storage options, including relational, mainframe hierarchical and Virtual Sequential Access Method files, AS/400 files, and various other distributed file data structures.

As you become more familiar with designing data, you'll want to learn about the more formal data modeling methodologies, generally called entity relationship modeling or simply logical data modeling.

The following sections will acquaint you with some general concepts useful for designing enterprise data.

Section Description
What Is Data Modeling? Defines data modeling as a process of finding the data and business services that satisfy your application's data requirements.
Identifying the Data Describes the process of discovering how the organization and your application will use the data.
Defining the Data Explains the general process of defining tables, rows, columns, data types, keys, and relationships.
Ensuring Data Integrity Discusses some important ways to provide data integrity, including normalization, business rules, referential integrity, and data validation.
Defining the Operational Processes Describes the ongoing operational processes that keep your application running, including database maintenance, backup, security review, and performance monitoring.
Choosing a Data Storage Technology Briefly describes the characteristics of the differing kinds of data storage technology, including relational, indexed, and hierarchical.