Database Modeling & Design Fourth Edition- P10: Database technology has evolved rapidly in the three decades since the rise and eventual dominance of relational database systems. While many specialized database systems (object-oriented, spatial, multimedia, etc.) have found substantial user communities in the science and engineering fields, relational systems remain the dominant database technology for business enterprises. | The Unified Modeling Language UML The Unified Modeling Language UML is a graphical language for communicating design specifications for software. The object-oriented software development community created UML to meet the special needs of describing object-oriented software design. UML has grown into a standard for the design of digital systems in general. There are a number of different types of UML diagrams serving various purposes Rumb05 . The class and activity diagram types are particularly useful for discussing database design issues. UML class diagrams capture the structural aspects found in database schemas. UML activity diagrams facilitate discussion on the dynamic processes involved in database design. This chapter is an overview of the syntax and semantics of the UML class and activity diagram constructs used in this book. These same concepts are useful for planning documenting discussing and implementing databases. We are using UML although for the purposes of the class diagrams and activity diagrams shown in this book if you are familiar with UML or you will probably not see any differences. UML class diagrams and entity-relationship ER models Chen 1976 Chen 1987 are similar in both form and semantics. The original creators of UML point out the influence of ER models on the origins of class diagrams Rumbaugh Jacobson and Booch 2005 . The influence of UML has in turn affected the database community. Class diagrams 33 34 CHAPTER 3 The Unified Modeling Language UML now appear frequently in the database literature to describe database schemas. UML activity diagrams are similar in purpose to flowcharts. Processes are partitioned into constituent activities along with control flow specifications. This chapter is organized into three sections. Section presents class diagram notation along with examples. Section covers activity diagram notation along with illustrative examples. Section concludes with a few rules of thumb for UML usage. .