Database Design for Smarties - 1st Edition - ISBN: 9781558605152, 9780080503738

Database Design for Smarties

1st Edition

Using UML for Data Modeling

Authors: Robert Muller
eBook ISBN: 9780080503738
Paperback ISBN: 9781558605152
Imprint: Morgan Kaufmann
Published Date: 22nd February 1999
Page Count: 464
Tax/VAT will be calculated at check-out Price includes VAT (GST)

Institutional Access

Secure Checkout

Personal information is secured with SSL technology.

Free Shipping

Free global shipping
No minimum order.

Table of Contents

Contents

Preface

Chapter 1: The Database Life Cycle

Information Requirements Analysis

Data Modeling

Database Design and Optimization

Database Quality, Reviews, and Testing

Database Certification

Database Maintenance and Enhancement

Chapter 2: System Architecture and Design

System Architectures

The Three-Schema Architecture

The Multitier Architectures

System Architecture Summary

Data Architectures

Relational Databases

Object-Oriented Databases

Object-Relational Databases

Summary

Chapter 3: Gathering Requirements

Ambiguity and Persistence

Ambiguity

Observing and Asking the Right Questions

Persisting

Getting Your Priorities Straight

Understanding Requirements

Categorizing Requirements

Relating Requirements

Prioritizing Requirements

Deciding the Style of Database

Summary

Chapter 4: Modeling Requirements with Use Cases

All the World's a Stage

Actors on Stage

Use Case Diagrams

A Brief Example

Transactions and Use Cases

Use Case Relationships

Setting the Scene

Summaries

Narratives

UML Activity Diagrams

Data Elements and Business Rules Summary

Summary

Chapter 5: Testing the System

Requirements and Truth

Systems and Truth

Summary

Chapter 6: Building Entity-Relationship Models

Entities and Attributes

Relationships

Semantic Relationships: Subtyping and Aggregation

ER Business Rules

Multiplicity

Keys and Relationships

Strong and Weak Relationships

Domains

Summary

Chapter 7: Building Class Models in UML

Packages, Classes, and Attributes

Packages

Classes and Attributes

Operations

Operations, Methods, and Interfaces

Application Behavior

Database Server Behavior

Relationships

Inheritance and Generalization

Associations, Containment, and Visibility

Object Constraints and Business Rules

Object Identity and Uniqueness Constraints

Domain Constraints

Complex Constraints

Summary

Chapter 8: Patterns of Data Modeling

Modeling with Reusable Design Patterns

Abstract Patterns

The Singleton Pattern

The Composite Pattern

The Flyweight Pattern

The Metamodel Pattern

Analysis Patterns

The Party Pattern

The Geographic Location Pattern

The Process Pattern

The Document Pattern

Summary

Chapter 9: Measures for Success

Goals, Metrics, and Scales

Size Measures

Database Size

Schema Size

Complexity Measures

Cohesion Measures

Abstraction Cohesion

Structural Cohesion

Coupling Measures

Reuse Potential

Reuse Certification

Summary

Chapter 10: Choosing Your Parents

Software Development Cultures and the Legacy System

Cultural Events

Replacing or Leveraging Legacy Systems

Starting Fresh

Using Your Legacy

Scoping the System and the Culture

Starting from Scratched

War Stories and Shared Language

Norms, Values, and Beliefs

Rituals

The Structure of Schema Design

Structures

Relationships

Business Rules

Design Guidelines

Data Definition Languages

Integrating Data Model Views

Structural Integration

Generalization Integration

Business Rule Integration

Big Picture Integration

Summary

Chapter 11: Designing a Relational Database Schema

Turning the Tables

Packages, Subsystems, and Name Spaces

Types and Domains

Classes

Foreign Affairs

Binary Associations

Generalizations

Special Situations

Living by the Rules

Class Invariants

System Invariants

Normalizing Relations

Atomic Values

Dependencies and Normalization

Denormalizing Your Schema

The Language of Peace

Conformity Rules

Nonconformity Rocks

Summary

Chapter 12: Designing an Object-Relational Database Schema

So What's New?

Features

The Downside

The Transformation Process for ORDBMS Products Object Diversity-Types

User-Defined and Object Types

Associations

Behavior

Who Makes the Rules?

The Language of War

Persistent Classes

Operations

Summary

Chapter 13: Designing an Object-Oriented Database Schema

The Transformation Process for OODBMS Products

Objective Simplicity?

Classes

Generalizations and Realizations

Associations

Disciplining Your Objects

Behavioral Problems

Setting Boundaries

Objective Language

Persistent Classes and Interfaces

Operations

Summary

Sherlock Holmes Story References

Bibliography

Index


Description

Whether building a relational, object-relational, or object-oriented database, database developers are increasingly relying on an object-oriented design approach as the best way to meet user needs and performance criteria. This book teaches you how to use the Unified Modeling Language-the official standard of the Object Management Group-to develop and implement the best possible design for your database.

Inside, the author leads you step by step through the design process, from requirements analysis to schema generation. You'll learn to express stakeholder needs in UML use cases and actor diagrams, to translate UML entities into database components, and to transform the resulting design into relational, object-relational, and object-oriented schemas for all major DBMS products.

Key Features

  • Teaches you everything you need to know to design, build, and test databases using an OO model.
  • Shows you how to use UML, the accepted standard for database design according to OO principles.
  • Explains how to transform your design into a conceptual schema for relational, object-relational, and object-oriented DBMSs.
  • Offers practical examples of design for Oracle, SQL Server, Sybase, Informix, Object Design, POET, and other database management systems.
  • Focuses heavily on re-using design patterns for maximum productivity and teaches you how to certify completed designs for re-use.

Details

No. of pages:
464
Language:
English
Copyright:
© Morgan Kaufmann 1999
Published:
Imprint:
Morgan Kaufmann
eBook ISBN:
9780080503738
Paperback ISBN:
9781558605152

About the Authors

Robert Muller Author

Robert Muller is a Partner and Founder of Poesys Associates, and a project management consultant specializing in object-oriented, rapid application development, and client/server technology. Previously, he was Product Development Manager and Technical Documentation Manager for Blyth Software, Inc. and Manager of Client/Server Technology at Symantec’s TimeLine division. He is the author of The Oracle Developer/2000 Handbook, has taught a Developer/2000 course and C++ courses for UC Extension, and is co-author of Object-Oriented Software Testing: A Hierarchical Approach.