Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Role: Database Designer

The database designer is responsible for designing the persistent data storage to be used by the system.
Topics - Description - Related Information - Staffing - Further Reading

Description

For most application development projects, the technology used for persisting data is a relational database. The database designer is responsible for defining the detailed database design, including tables, indexes, views, constraints, triggers, stored procedures, and other database-specific constructs needed to store, retrieve, and delete persistent objects. This information is maintained in the Artifact: Data Model.

The scope of the activities performed by the database designer role vary depending on the size and complexity of the application development effort and the type of persistent data storage mechanisms used for the project.

This section provides links to additional information related to this role.

Staffing

Skills

The database designer must have a solid working knowledge of the following:

  • Data Modeling, Database design
  • Object-Oriented Analysis and Design techniques
  • System Architecture, including Database and System performance tuning, as well as hardware and network workload balancing
  • Database Administration
  • an understanding of the implementation language and environment
Role assignment approaches

On small projects, the database designer role may be performed by a senior developer, possibly in addition to other roles.

On large projects, the database designer role may be assigned to a team of database specialists.

In some organizations, the database designer role may be assigned to a member of a central database management or administration group that supports multiple projects.

An organization may choose to replace this role by finer-grained roles. For example, an organization may define a Data Analyst role that is responsible only for logical data modeling, while physical data modeling is the responsibility of another role (such as a Database Administrator).

A person that takes on this role should ideally be involved early in the project as a technical reviewer, participating in requirements reviews and analyzing the relevant system features and requirements.

Further Reading

Some additional reference sources to learn more about this role are:

  • An Introduction to Database Systems [DAT99]
  • UML For Database Design [NBG01]