Database Architecting
Database architecting is the subclass of
architecting during which an
application’s
database architecture is produced.
The typical goals of database architecting are to:
- Produce and maintain the top-level strategic structure of
an application's databases.
The typical objectives of database architecting are to:
- Produce a formally documented consensus amoung the
project stakeholdlers (e.g., client, management, developers)
concerning the overall database structure and persistance
mechanism of the next version [incremental iteration] of the
application.
- Provide input (e.g., number, size, and complexity of
databases) to the project cost and schedule estimation
task.
- Provide a basis (e.g., components) for the scheduling of
the project phases and builds.
- Maximize the quality of the database architecture:
- Correctness, completeness, consistency, and
understandability.
- To meet architecturally significant:
- Operational requirements,
- Quality requirements (e.g., extensibility,
scalability, performance, operational availability, and
security),
- Design constraints (e.g., use of existing databases),
and
- Business rules.
- Maximize the productivity of the architecture team (e.g.,
reuse of reusable architectural frameworks, reuse of
architecture conventions, and existence of example
documents).
Examples of database architecting include:
- Architecting those aspects of an application involving
relational databases.
- Architecting those aspects of an application involving
object databases.
Database architecting typically may begin when the following
preconditions hold:
- The
initiation phase has started.
- The
architecture team is initially staffed and adequately
trained in database architecting.
- Some architecturally significant requirements regarding
persistent data have been specified.
Database architecting is typically complete when the
following postconditions hold:
- The contact center architecture has been documented in
the:
- These deliverable documents in the architecture work
product set have:
- Passed evaluation.
- Been delivered to the customer organization.
- Been accepted by the customer representative.
Database architecting typically involves the following
producers performing the following architecting tasks:
Database architecting is typically performed using the
following environment(s) and associated tools:
Database architecting typically results in the production of
the following
architecture work products:
Database architecting tasks are typically performed during
the following phases:
Guidelines
- The database architecture must fulfill (and is therefore
validated against) the architecturally significant
operational and quality requirements.
- The database architecture drives and constrains the
tactical (i.e., detailed) design.
- This activity is documented using the typical
configuration for large projects. It is intended to be
configured (i.e., instantiated, extended, and tailored) to
meet the needs of specific projects.
- The preconditions of this activity should be the union of
the preconditions of its constituent tasks.
- The completion criteria for this activity should be the
union of the postconditions of its constituent tasks.