44 USING OBJECT ROLE MODELLING TO TEACH DATABASE DESIGN Bernadette Byrne School of Computing and I.T. University of Wolverhampton B.Byrne@wlv.ac.uk http://www.scit.wlv.ac.uk/~cm1998 Mary Garvey School of Computing and I.T. University of Wolverhampton M.Garvey@wlv.ac.uk http://www.scit.wlv.ac.uk/~cm1958 Mike Jackson School of Computing and I.T. University of Wolverhampton mj@wlv.ac.uk http://www.scit.wlv.ac.uk/~cm1914 ABSTRACT Traditionally database design has been taught using Entity Relationship (ER) modelling. In this paper we set out some of the problems that learners experience with the ER approach. We argue that Object Role Modelling (ORM), a design method taught at the University of Wolverhampton helps overcome these problems. Keywords ORM Entity-Relationship database design. 1. INTRODUCTION Traditionally, the subject matter of the majority of database design courses has been based on the entity relationship (ER) model [1]. This model has been the leading design method within the computer industry for some years and is supported by a number of CASE tools [2]. There are many different variations of the original ER model [3]. Recently, some courses have switched from ER notation to the Unified Modelling Language (UML) [4] in recognition of the fact that many students are now familiar with this notation from material they have encountered elsewhere in their studies. From a database perspective, however, there is very little difference semantically between UML and the Extended Entity Relationship (EER) approach described in [5]. The only substantial difference is the way in which the diagrams are drawn. For over ten years the School of Computing and Information Technology (SCIT) at the University of Wolverhampton has offered a level three undergraduate module in Database Design. Students eligible to take this module will have studied an introductory database module that includes ER modelling in their second year studies. The Database Design module discusses complex data modelling using EER and then introduces them to a technique, Object Role Modelling (ORM) as a alternative to the ER approach. In contrast to ER, which concentrates on the way entities relate to each other, ORM [6] concentrates on the way attributes are related and is often described as a fact-based approach to design. We argue that students find it easier to identify attributes and their relationships than to identify entities. Furthermore, when a student has developed an ORM design it is much easier for them to check this design against the results of their requirements analysis. It is also much easier to verbalize an ORM design to a user than to explain an ER diagram. Following the release of a free ORM tool by Microsoft, the transition from a conceptual ORM design to an actual database implementation has become a simple task. This paper describes our experiences teaching ORM and presents our reasons for promoting it as an appropriate mechanism for helping students to understand the fundamentals of database design. 2. EXAMPLE Most database teaching uses examples of data that are very much simpler than those found in actual practice. Professional database designers expect to build systems where the number of entities on the diagram is numbered in the hundreds. It is not necessary to take on this size of system to communicate the basics of data design and therefore most lecture courses and textbooks concentrate on quite simple scenarios that illustrate the principles under discussion. This paper is no exception to this rule and will therefore use possibly the simplest and possibly best known example to develop its argument. The example is taken from Date [7]. A company records details of suppliers and parts. A supplier supplies parts. Each supplier may supply one or more parts. Each part is supplied by one or more suppliers. If supplier s supplies a part p, then the quantity of p that has been supplied by s is recorded in the database. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission. Teaching, Learning and Assessment in Databases, Coventry 2003 © 2003 LTSN Centre for Information and Computer Sciences