Home > Store > Software Development & Management > Object Technology

UML for Database Design

Register your product to gain access to bonus material or receive a coupon.

UML for Database Design


  • Your Price: $35.99
  • List Price: $44.99
  • Usually ships in 24 hours.




  • Copyright 2002
  • Dimensions: 7-3/8x9-1/4
  • Pages: 320
  • Edition: 1st
  • Book
  • ISBN-10: 0-201-72163-5
  • ISBN-13: 978-0-201-72163-8

The Unified Modeling Language (UML), the standard graphical notation for modeling business and software application needs, has emerged as an effective modeling tool for database design. When used as a common modeling language for the many facets of system development, the UML can serve as a unifying framework that facilitates the integration of database models with the rest of a system design.

This pragmatic guide introduces you to the UML and leads you through the process of UML-based database modeling and design. The book presents the different types of UML diagrams, explaining how they apply to the database world, and shows how data modeling with the UML can be tied into the Rational Unified Process.

UML for Database Design is structured around the database design process: business use case modeling, business object modeling, database requirements definition, analysis and preliminary design, and, finally, detailed design and deployment. For each phase of development the book describes the overall objectives and workflow of that phase, the status of the case study, the relevant UML constructs, and the nuts and bolts of database modeling and design with the UML. Drawing on their extensive industry experience, the authors reveal the trials and tribulations of database development teams, lessons learned, and pointers for success.

Topics covered include:

  • The business use case model
  • Activity and sequence diagrams for modeling database functions and tasks
  • Moving from the business to system model
  • Class diagrams and statecharts
  • Mapping classes to tables
  • Transformation of attributes
  • Rational's UML Profile for Database Design
  • Creating tables from classes
  • DDL scripts, component diagrams, and deployment diagrams
  • Jump starting the database design process

A case study runs throughout the book to illustrate key concepts and techniques, and appendixes containing the actual UML models from this case study are used to catalog the type and extent of models that would be developed for such a system.

Practical, concrete, and based on real-life experience, UML for Database Design brings you exactly the information you need to begin working with the UML and take full advantage of the technology for high-quality database modeling and design.


Sample Content

Online Sample Chapter

Introduction to UML for Database Design

Table of Contents



The Approach.

Chapter Summaries.


1. Introduction.

Why Read This Book?

Who Should Read This Book?

How To Read This Book?

2. Database Design From Requirements to Implementation.

Database Modeling vs. Database Design.

Data Modeling Today.

UML Diagrams for Database Design.

UML Differs From Traditional Database Modeling.

The Case Study.

3. Business Modeling for Database Design.

The Workflow.

The Case Study Status.

The Concepts.

The Approach.

The Design.

4. Requirements Definition.

The Workflow.

The Case Study Status.

The Concepts.

The Approach.

The Design.

5. Analysis and Preliminary Design.

The Workflow.

The Case Study Status.

The Concepts.

The Approach.

The Design.

6. Preparing For Transformation to the Database Design Model.

The Workflow.

The Case Study Status.

The Concepts.

The Approach.

The Design.

7. Database Design Models-UML Profile for Database Design.

The Workflow.

The Case Study Status.

The Concepts.

The Approach.

The Design.

8. Implementing the Physical Aspects of the Database.

The Workflow.

The Case Study Status.

The Concepts.

The Approach.

The Design.

9. Summary of Using the UML for Database Design.

The Workflow.

The Case Study Status.

The Approach.

The Design.


Appendix A: The Models.


The Business Use Case Models.

The Business Object Models.

The Traditional Conceptual Data Models.

The System Use Case Models.

The Design Models.

The Database Design Models.

Appendix B: The Use Case Descriptions.



For database professionals, this book provides a practical guide to the use of the Unified Modeling Language (UML) for database design. It is intended for those who have to make things happen in the real world; those who have to deliver real systems to meet real business needs. In short, this book is designed for those pragmatic, working database designers who need to get things done.

UML for Database Design addresses the questions most frequently asked of us by database professionals from all over the globe:

  • How can I use UML for database design in the real world?
  • How can I fit the UML into my current process?
  • How should the database design team adopt this approach?
  • How can database and application teams work together using the UML?

The Approach

We have endeavored to ensure that this book didn't get lost in theory, buried in formalism, or trivialized by unrealistic, contrived examples. Thus, at times we may run contrary to the purists. That's OK. The approach we take is to introduce the use of UML for database design in a stepwise fashion, for each phase of the system development life cycle. We move from business modeling at the beginning of the life cycle to database design at the end. We show how the UML applies to the process and the value it provides to the database designer in each phase. A robust, realistic case study (described in Chapter 2) helps demonstrate how to use the UML and how to handle challenges that you may encounter during your real-world projects.

Chapter Summaries

Chapter 1--Introduction. This chapter indicates who should read this book and why. It describes the basic structure of subsequent chapters and the overall flow of the book.

Chapter 2--Database Design from Requirements to Implementation.This chapter discusses database modeling versus database design, addresses data modeling as it exists today, describes how using the UML differs from traditional techniques, and introduces the case study used throughout the remainder of the book.

Chapter 3--Business Modeling for Database Design. This chapter introduces business modeling and how it, and the UML, can be used for database design. Here is where the conceptual model is established.

Chapter 4--Requirements Definition.This chapter shows how all the artifacts provided by the previous business modeling are used to establish the system requirements.

Chapter 5--Analysis and Preliminary Design.This chapter moves from the realm of business requirements into the logical design of the system and its database.

Chapter 6--Preparing for Transformation to the Database Design Model. This chapter transitions from the logical analysis model to the database design model. This chapter also addresses the issues that arise during the mapping of object models to data models.

Chapter 7--Database Design Models--the UML Profile for Database Design.This chapter introduces the UML Profile for Database Design developed by Rational Software Corporation.

Chapter 8--Implementing the Physical Aspects of the Database.This chapter focuses on the physical component of database design.

Chapter 9--Summary of Using the UML for Database Design.This chapter performs a "postmortem" on how the UML was used in the case study project.

Appendix A--UML Models for EAB Healthcare, Inc.This appendix contains the UML models from the case study project.

Appendix B--Use Case Descriptions.This appendix contains the use case descriptions from the case study project.


We would appreciate your feedback on this book. If you have questions or comments, please feel free to contact us by email at gurus@UMLforDatabaseDesign.com, or visit our website http://www.UMLforDatabaseDesign.com.



Note: Page numbers followed by letters f and t indicate figures and tables, respectively.


Access Clinical Records
     sequence diagram, 255f
     system use case, 61, 64t, 66, 71f
     use case description, 266f
     use case template, 71f

Accounts Receivable
     activity diagram, 34, 35f, 191f
     business object model, 198f–201f
     business use case, 30, 31f, 60, 60t

Accreditation, sequence diagram, 61, 206f

Activity diagram(s)
     Accounts Receivable, 34, 35f, 191f
     from business use cases, 32
     for class diagram support, 78
     Compliance Assessment, 61, 63f, 193f
     Compliance Review, 61, 62f, 194f
     in current systems comprehension, 23–24
     in database implementation, 151
     in describing processes, 36
     description of, 11
     elements of, 21f. See also specific elements
     examples of, 22f, 35f
     Provide Clinical Care, 33f, 33–34, 196f
     purposes of, 18–19
     Respond to Inquiry, 197f
     sequence diagram vs., 88–89
     simulation of, 24
     in system use case model transition, 61, 62f, 63f
     Transfer Records, 32f, 33, 195f
     in use cases, 19

     automating functions of, 61
     definition of, 19, 25
     symbol for, 19f
     in system use cases, 58

Actor generalization(s), 46, 46f, 47f

     class diagram view, 253f
     system use case view, 101, 101f

Admit Prior Resident, sequence diagram, 38–40, 39f, 41f, 86f, 89, 218f

Agents, 236f

Aggregation, definition of, 25, 111

Alternate keys, primary key used instead of, 138–41, 142f

Analysis datatype(s). See Type(s)

Analysis paralysis, 22, 70

ARBackgroundView, 143, 146f

     definition of, 25, 110
     mapping many-to-many, 106
     symbol for, 19

Association class(es)
     definition of, 111
     in logical models, 106, 107f
     mapping, 106

     columns mapped to, 108–10
     derived, 109
     of logical models, 7
     as primary keys, 115
     in tablespaces, 156
     transformation of, 114–17

Auditors, 18, 20f, 34, 35, 236f


Background (MDS), 114
     class, 135–36, 137f
     class diagram, 95, 96f
     database diagram, 135–36, 137f
     primary key, 141, 142f
     table, 135–36, 137f, 143, 146f, 164, 165f
     tablespace, 164, 165f

Basic Assessment (MDS), 114
     class, 136, 138f
     class diagram, 95, 96f
     database diagram, 136, 138f
     primary key, 141, 142f
     subtype class, 112
     table, 136, 138f, 162, 164f
     tablespace, 162, 164f

Best-of-breed solutions
     full life-cycle CASE tools vs., 9–10
     UML vs., 10

Billing Manager, 34, 35f

Business actor(s)
     Agents, 236f
     Auditors, 18, 20f, 34, 35, 236f
     Care Providers, 237f
     Clinical Records User, 66, 67f
     definition of, 25
     describing, 28–29
     diagrams of, 236f–238f
     External Facility, 33
     External Service Providers, 18, 20f
     identifying, 28, 29f
     Inquirer, 30
     Investigator, 47f, 61
     Medical Records Manager, 61
     Medical Supply Vendors, 18, 20f
     Nurses, 61
     other, 238f
     perspective of, 28
     Physicians, 18, 20f, 29
     Residents, 18, 20f, 28
     symbol for, 19
     system actors transformed from, 57–58, 58t, 61
     Time, 66, 67f
     Transport Service, 30, 33

Business entities
     Care Plan, 68, 68t
     Clinical Records, 36, 36f, 44, 44f, 80–84, 83t, 84t, 85f–87f
     conceptual data models for, 48f–50f
     definition of, 25
     Treatment, 68, 68t

Business modeling
     completion of, 34, 56
     as cooperative effort, 27
     for database design, 17–51
     definition of, 25
     focus of, 26, 67–68
     goals of, 27–28
     JAD session in, 27
     participants' roles in, 72
     refining, 27
     scenarios in, 82–84, 83t
     scope of, 27
     sequences vs. system use case model, 73
     testing, 82–84
     workflow, 17–24

Business object model(s)
     Accounts Receivable, 198f–201f
     actors' view of, 204f, 224f
     Comply with Regulations, 61, 64f, 65t, 202f–213f
     in conceptual model development, 44
     and database designer, 45, 50, 69
     definition of, 25
     development of, 36–44, 38f, 40f, 44f
     Manage Clinical Records, 36, 38, 38f, 40, 40f, 44f, 80–84, 81f, 82f, 83t, 84f, 214f–221f
     MDS view of, 203f
     Medical Records Manager view, 216f
     modifying, 80–84, 81f, 82f, 84f
     perspective of, 34–35
     Provide Clinical Care, 222f–231f
     Respond to Inquiry, 36f, 232f
     in sequence prioritization, 68t
     in system use case model transition, 61, 64f
     Update Care Plan, 223f
     updating, 38, 40, 40f, 44f, 80–84, 81f, 82f, 83t, 84f–87f
     for view construction, 79–80

Business Process Reengineering, 27

Business use case (models), 28–34
     Accounts Receivable, 30, 31f, 60, 60t
     for activity diagram creation, 32
     completion, 34, 56
     Comply with Regulations, 30, 31f, 60t, 60–62
     deferring, 60, 60t
     definition of, 25
     explanation of, 28
     Manage Clinical Records, 30, 31f, 60, 60t, 63–68, 73t
     overview, 29f, 29–30
     perspective of, 28
     prioritizing, 60, 60t, 60–62, 68t
     Provide Clinical Care, 30, 60t, 66–68, 68t
     Provide Resident Care, 29f, 29–30, 30, 31f, 189f, 190f
     refining, 30
     Respond to Inquiry, 30, 31f, 36, 36f, 60, 60t, 67–68
     scope of, 29–30
     in subsystem transformation, 57–58, 58t
     symbol for, 19
     in system use case model transformation, 58t, 60–69

Business worker(s)
     activities transformed to system use cases, 57–58, 58t
     Billing Manager, 34, 35f
     definition of, 25
     Medical Records Manager, 32f, 33, 34, 35f, 66
     system actors, transformation to, 57–58, 58t


Candidate key(s), definition of, 282

Cardinality, 127, 128f

Care Plan, business entities, 68, 68t

Care Providers, 237f

Check constraint(s), creating, 131, 132, 141, 144f

     association, 106, 107f, 111
     Background MDS, 135–36, 137f
     Basic Assessment MDS, 136, 138f
     defining, 112
     Full Assessment MDS, 136–38, 139f, 140f
     passive, 78
     persistent, 111, 133–34
     subtype, 25, 106–8, 112
     supertype, 25, 106–8
     tables created from, 133–46
     tables mapped to, 106–8

Class diagram(s)
     activity diagram as support for, 78
     Administrator view, 253f
     in application design, 77
     Background MDS, 95, 96f
     Basic Assessment MDS, 95, 96f
     in change management, 77
     Comply with Regulations, 242f–253f
     control classes in updating, 90, 91f
     in database design, 77
     and database designer, 92, 102, 102f
     in database implementation, 151
     definition of, 25
     description of, 11, 35–36, 36f
     developing, 79
     elaborating, 91
     Establish MDS, 93f, 243f
     from existing business models, 80
     Full Assessment MDS, 95, 96f–99f
     initial, 94, 96f
     integrating, 103f, 104
     MDS, 95, 96f, 247f–250f
     normalizing, 111
     Nurse view, 245f
     in partitioning tables, 151
     Security Access, 254f
     sequence diagrams for, 78–79
     statechart diagrams for support of, 78
     system use case model in developing, 79
     Transmit MDS, 101, 101f–103f, 251f
     in UML, 76–77
     updating, 95, 97f–99f

Class model(s). See Class diagram(s)

Clinical Records
     business entities, 36, 36f, 44, 44f, 80–84, 83t, 84t, 85f–87f
     conceptual data model, 48f, 233f

Clinical Records User, 66, 67f

Close Clinical Records
     sequence diagrams, 40, 42f, 220f
     use case description, 267f

     attributes mapped to, 108–10
     definition of, 125
     elements of, 131
     identity, 131, 133
     modeling, 125

Comment(s), 131, 133

Compliance Assessment activity diagram, 61, 63f, 193f

Compliance Review activity diagram, 61, 62f, 194f

Comply with Regulations
     business object model, 61, 64f, 65t, 202f–213f
     business use case, 30, 31f, 60t, 60–62
     class diagram, 242f–253f
     database diagram, 257f–264f
     sequence diagram, 56, 207f, 244f, 246f, 252f
     system use case, 61–63, 64f, 65f, 86, 88f, 239f

     databases. See Database (component)
     definition of, 154
     schemas. See Schema(s)
     in storage modeling, 156–59
     tablespaces. See Tablespace(s)

Component diagram(s)
     in database implementation, 151–52
     description of, 11

Composite domain(s), 130–31

Composite index, 141

Conceptual model(s)
     for business entities, 48f–50f
     business object models in developing, 44
     Clinical Records, 48f, 233f
     definition of, 282
     initial components of, 32, 34
     from JAD sessions, 27–28
     for miscellaneous data, 235f
     for miscellaneous entities, 50f
     refining, 58
     Schedules and Reports, 49f, 234f
     traditional, 47, 48f–50f

Connection, definition of, 154

     check, 131, 132, 141, 144f
     definition of, 131
     explanation of, 132
     key. See Key(s)
     unique, 131, 132

Control class(es)
     in class diagram updating, 90
     definition of, 78
     statechart diagrams for, 90, 92f

Create Clinical Records
     system use case, 66
     use case description, 268f


Data Definition Language (DDL), 113

Data dictionary, definition of, 282

Database(s), definition of, 282

Database (component)
     in database modeling, 154
     dependency on tablespaces, 159
     determining, 170–71
     icon for, 159f
     MDSDatabases, 170, 171f
     modeling, 158–59

Database administrator (DBA)
     in database implementation, 149–50
     in DBMS selection, 120

Database design
     business modeling for, 17–51
     class diagrams in, 77
     domains in, 116, 129–31
     focus of, 8
     with logical model basis, 105–6
     model-driven development of, 123–24
     physical modeling for, 8
     preliminary, 75–104
     and requirements, 76
     and sequence diagrams, 79
     traditional, 7
     UML for, 2–3, 11, 119–48

Database design model(s), transformation to, 105–18

Database designer
     and business object models, 45, 50, 69
     in class diagram creation, 102, 102f
     in postmortem, 179
     and requirements definition, 59
     and scope, 66
     and system use case models, 69

Database diagram(s)
     Background MDS, 135–36, 137f
     Basic Assessment MDS, 136, 138f
     Comply with Regulations, 257f–264f
     definition of, 282
     Establish MDS, 258f
     Full Assessment MDS, 136–38, 139f, 140f
     icons for, 126f
     MDS, 139f, 260f–263f
     Nurse view, 259f
     Transmit MDS, 264f
     typing, 122–23

Database implementation (deployment), 149–74
     activity diagrams in, 151
     class diagrams in, 151
     component diagrams in, 151–52
     database administrator in, 149–50
     deployment diagrams in, 151–52
     modeling, importance of, 150
     sequence diagrams in, 151
     use cases in, 150

Database management system (DBMS), selecting, 120, 157, 159–60

Database modeling
     conceptual. See Conceptual model(s)
     database components in, 154
     diagrams for. See UML diagram(s)
     focus of, 7
     logical. See Logical model(s)
     metadata, 12
     physical. See Physical model(s)
     reasons for, 123
     schemas in, 154
     stages of, 5, 176–77
     tablespaces in, 154, 161–62, 163f
     traditional, 7, 8
     traditional vs. UML, 12–14
     in understanding business, 23–24
     in understanding current systems, 23–24
     updating, 87f
     usefulness of, 152–53

Database view(s). See View(s)

Datatype(s), definition of, 131, 133

DBA. See Database administrator

DBMS. See Database management system

DDL (Data Definition Language), 113

Decision point(s)
     symbol for, 21f
     using, 34, 35f

     definition of, 282
     of physical models, 7

     of database components on tablespaces, 159
     definition of, 154
     explanation of, 154
     in storage modeling, 156
     symbol for, 19

Deployment (implementation) diagram(s)
     in database implementation, 151–52
     definition of, 154
     description of, 11, 154
     elements of, 154

Derived attribute(s), definition of, 109

Destroy Clinical Records
     sequence diagram, 40, 43f, 221f
     system use case, 66
     use case description, 269f

Developer(s), and system use case model, 57

Development cycle, 2

     definition of, 154
     in storage modeling, 156

Domain(s) (user-defined datatypes)
     composite, 130–31
     in database design, 116, 129–31
     definition of, 125


     of activity diagrams, 21f
     aggregate, 25
     of columns, 131
     of deployment diagrams, 154
     of packages, 122f
     stereotyping, 12
     of tables, 131, 132f
     of UML diagrams, 125

End state(s), symbol for, 21f

Entities. See also Business entities
     defining, 112
     definition of, 283
     making persistent, 113–14

Entity-relationship (ER) diagram(s), definition of, 283

Entity-relationship (ER) notation(s), UML and, 107, 121

Establish Care Plan
     sequence diagram, 229f
     use case description, 270f

Establish MDS
     class diagram, 93f, 243f
     database diagram, 258f
     sequence diagram, 56, 63, 90f, 164, 166f, 207f, 244f
     system use case, 63, 65f, 88–93
     use case description, 271f
     user view, 89f

Establish Treatment
     sequence diagram, 225f
     use case description, 272f

Evaluate Eligibility sequence diagram, 199f

     definition of, 56
     in use case templates, 70

Extension point(s), definition of, 283

External Facility, 33

External Service Providers, 18, 20f


Foreign key(s)
     definition of, 125
     in logical database models, 115

Full Assessment MDS, 114
     class, 136–38, 139f, 140f
     class diagram, 95, 96f–99f
     database diagram, 136–38, 139f, 140f
     primary key, 141, 143f
     subtype class, 112
     table, 136–38, 139f, 140f, 164
     tablespaces, 164, 167f–170f

Full life-cycle CASE tools
     best-of-breed solutions vs., 9–10
     UML vs., 9–10


     actors, 46, 46f, 47f
     definition of, 25, 111
     symbol for, 19

Generic (logical) type(s), 110, 116t


Hardware, designing with UML, 172


Identifying (mandatory) relationship
     creating, 127
     definition of, 125
     explanation of, 126–27

Identity, 131, 133

Implementation diagram(s). See Deployment (implementation) diagram(s)

     definition of, 56
     in use case templates, 70

Inclusion point(s), definition of, 283

     composite, 141
     creating, 141, 143f
     definition of, 131
     explanation of, 133
     MDS, 141, 143f
     partitioning, 158
     tagged values on, 133

Inheritance, definition of, 111

Inquirer, 30

Interaction diagram(s), description of, 11

Investigate Concerns sequence diagram, 61, 208f–210f

Investigator, 47f, 61

Iron Triangle, 53–54


Joint Application Development (JAD) session(s), in business modeling, 27–28


     alternate, 138–41, 142f
     candidate, 282
     definition of, 131, 132
     foreign, 115, 125
     primary, 111, 115, 125, 138–41, 142f, 143f

Key migration, definition of, 283


Length, definition of, 131, 133

Logical model(s)
     application design based on, 105
     association classes in, 106, 107f
     attributes, 7
     composition of, 7
     database design based on, 105–6
     definition of, 283
     entities, 7
     foreign keys in, 115
     mapping, 106
     normalizing, 111
     optimizing, 7
     and physical model, 7–8

Lower CASE tools, 9


Maintain MDS
     sequence diagram, 56, 63, 94f, 211f, 246f
     system use case, 63, 65f, 93–99
     use case description, 273f

Manage Clinical Records
     business object model, 36, 38, 38f, 40, 40f, 44f, 80–84, 81f, 82f, 83t, 84f, 214f–221f
     business use case, 30, 31f, 60, 60t, 63–68, 73t
     sequence diagram, 89
     system use case, 63–68, 67f, 73t, 240f
     use case description, 274f

     association classes, 106
     attributes to columns, 108–10
     classes to tables, 106–8
     logical analysis model, 106
     managing, 117


Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership