0 Items in Your Cart
Cart Summary
Shopping Cart Empty
  Search by keyword: Find
Previous |  ReadyNotes  | Next

Designing Databases with Object-Oriented Methods

Authored by Robert J. Muller
RN0067909
List Price: $19.00
 
File Name: OODB Design.pdf

Robert J. Muller

Most object-oriented (OO) designers now use the Unified Modeling Language (UML) to model systems. This ReadyNote defines the terms of OO design using standard UML definitions (from the Object Modeling Group, or OMG), showing how the OO concepts map into data modeling concepts. The origins of UML in fact lie in data modeling: class diagrams and their notational conventions have their roots in entity-relationship diagrams. The UML, however, adds many things to the pot, such as use cases.

This ReadyNote is intended to be a succinct introduction to using OO methods for designing databases. It assumes familiarity with basic database terminology and some exposure to basic data modeling. It also assumes some sophistication with respect to the programming and design of computer programs. If you’ve worked with database technology and database application programming and want to learn how OO techniques can be of use, this ReadyNote will help. If you need more examples and a more complete discussion of methods and techniques, consult the book by Muller.

This ReadyNote does not assume any particular database management technology; it is about data modeling, not database implementation. Most people implement OO designs with relational technology, not object-relational or OO database technology. Therefore, the section titled “Transforming a Data Model into a Database” assumes relational technology. Getting OO data from relational databases is a problem with many solutions, including commercial and open-source tools. All these tools make their own assumptions about the relational design, so you should consult your tool documentation in tandem with this ReadyNote to fully understand what you’ll need to model.

USE CASES FOR DATA REQUIREMENTS
Use Cases
Structure of a Use Case
Contents
Transactional Use Cases
Structural Use Cases
Data Requirements in Use Cases
Schema Design
Transaction Design
UML CLASS DIAGRAMS FOR DATA MODELING
Architecture Packages: Schemas
Classes and Attributes
Operations
Relationships
One-to-Many and One-to-One Associations: Foreign Keys
Many-to-Many and N-Ary Associations: Association Classes
Generalization and Inheritance
Constraints and Business Rules
ESTIMATING APPLICATION SIZE: FUNCTION POINTS
File Function Points from Class Diagrams
Transactional Function Points from Use Cases
DESIGN PATTERNS FOR DATABASES
Key Patterns
Sequence Key
GUID Key
URI Key
Natural Key
Alternate Key
Association Key
Composite Key
Lookup Table
Composite
Metamodel or Name-Value Pair
Null Object
Flyweight
Singleton
TOOLS
Model Driven Architectureý (MDAý)
AndroMDA Database Generation
Summary Transformation
SUMMARY UML NOTATION
GLOSSARY
REFERENCES
TRADEMARKS
  • Robert J. Muller is an academic technology specialist in the Department of Political Science at Stanford University. His research interests include database design theory, model-driven architecture, object-oriented design, statistical modeling, Bayesian networks, election studies, and international relations. Muller has a PhD from the Massachusetts Institute of Technology, an MS from MIT, and a BA from the University of California, Berkeley, all in political science. He is a member of the IEEE Computer Society and the IEEE Society on Social Implications of Technology. Contact him at muller@computer.org.