A Class Normalization Approach to the Design of Object-Oriented Databases
|
|
- Kory Baldwin
- 6 years ago
- Views:
Transcription
1 A Class Normalization Approach to the Design of Object-Oriented Databases Shuguang Hong Dept. of Computer Information Systems Georgia State University Atlanta, GA ABSTRACT In a poorly designed conceptual database schema based on an object-oriented model, redundant information can be found in class definitions. This redundant information is very harmful to the data sharing, data consistency, and data integrity. By examining the relationships among the attributes of a class, we have defined an existence dependency relationship which is similar to the functional dependency relationship in relational database theory. Based on the relationship, we introduce the class normalization concept and three desired class normal forms for the design of object-oriented databases. In this paper, we report our initial finding and show by examples that this concept can help a database designer to identify redundant information in a conceptual database schema and to remove update anomalies caused by this redundancy. 1. INTRODUCTION Methodologies for the design of object-oriented databases ( OODBs ) have been studied since the emergence of this new technology. However, most of these research efforts have been focused on the conceptual aspects of modeling, i.e., how to model an enterprise in terms of its objects, classes, and relationships. Accordingly, tools have been built to help the novice users design a conceptual database schema. But, after the classes are defined, there is no guide to the user to check if the definition of a class is "correct" with respect to the issues of data sharing, data consistency, and data integrity. Inspired by the normalization concept in the design theory of relational databases, we propose a class normalization concept for the design of OODBs in this paper. We believe that the problems addressed by the relation normalization theory such as redundant information and update anomalies [Date 90, Ullman 88, Kent 83] do exist in the design of OODBs as shown later in this paper. In order to study these problems in the design of OODBs, we have extended and generalized the relation normalization concept and suggested a methodology for normalizing classes. Instead of inventing a new theory from scratch, our research can benefit from the previous research results of design theory for relational databases. Our main objective is to provide a practical procedure which can help the novice users detect design problems in class definitions and supply sound suggestions to resolve the problems. After classes in a conceptual schema are defined, the user can follow the proposed rules to check whether the definition of a class contains redundant information which may result in update anomalies. If any problem is found in a class definition, that class can be normalized into desired normal forms. In the rest of the paper, Section 2 briefly reviews the design methodologies and tools for the design of OODBs, and Section 3 suggests two concepts, key identifier and existence dependency. Based on the concepts in Section 3, class normalization theory is proposed in Section 4. Finally, in Section 5 the applications and limitations of our approach are discussed and further research is suggested. 2. RELATED RESEARCH Various design methodologies for information system analysis and design based on an objectoriented approach have been proposed. Wirfs-Brock and Johnson provided a survey of the current research in object-oriented design [Wirfs-Brock 90]. Booch - 1 -
2 [Booch 91] and Rumbaugh and his colleagues [Rumbaugh 91] discussed detailed methodologies for software system analysis and design. They also addressed issues related to database design. However, those methodologies mainly deal with how to identify and construct objects, classes, and relationships which satisfied the application requirements. The issues specific to the database design, such as data sharing, data consistency, and data integrity, have not been addressed. Computer aided tools for the design of OODBs have also been developed. Representative research efforts are OdeView [Agrawal 90], RIDL [Troger 89], SeaWeed [Hong 88, Maryanski 85], SNAP[Byrce 86], SIG [Maier 86], Gambit [Bragger 85], ISIS [Gold 85], LID [Fogg 84], SKI [King 84], and DDEW [Reiner 84]. These systems adopted graphical user interfaces and provided facilities which aid the user in the design of a conceptual database schema. But these tools emphasized the user interface and data modeling issues. They did not provide any guide in determining whether the definition of a class satisfies the database issues mentioned earlier. In contrast, the formal theory for the design of relational databases has been studied intensively since Codd introduced the normal form concept in 1970 [Codd 70, Chamberlin 76]. More than two decades later, many design methodologies have been developed based on the relation normalization theory [Maier 83, Ullman 88, Elmasri 89, Hawryszkiezycz 91]. Numerous applications have shown the effectiveness of the design theory in reducing the redundant information and update anomalies. The class normalization concept proposed in this paper has been strongly influenced by this design theory. 3. NORMALIZATION FOUNDATION 3.1 Classes and Key Identifiers Classes in a conceptual schema of an OODB are the bases from which objects are instantiated. Thus, defining classes correctly is a very critical factor in ensuring data consistency, data sharing, and data integrity. The proposed class normalization concept attempts to help the user to improve the database design quality. A class consists of two components, attributes and methods. Attributes describe the static properties of objects of a class, and methods implement the dynamic properties of objects of that class. Formally, a class C is defined as C = ( A, M ) where A is a set of attribute name and attribute type pairs A = A i A i = < n : t > and i = 1, 2,..., m, and M is a set of methods. More simply, attributes are the facts about objects of a class, and methods are the common behavior of objects of that class. A key identifier K of a class C is a subset of attributes of the class, K(C) C.A Two properties distinguish a key identifier from other attributes of a class: 1. Semantics Sufficiency. It provides enough information about an object of the class such that it can be used to distinguish the object from other objects without the presence of other attributes. 2. Minimality. No proper subset of it can satisfy the property (1) above. In other words, a key identifier is equivalent to the identity of an object with respect to identifying objects, which is similar to the key concept in the relational data model. But, the relational key concept has been introduced basically as tuple identifier. In general, a key attribute alone does not indicate much information about a tuple ( entity ). However, the key identifier concept states that, not only can an object be uniquely identified, but can also its semantics be characterized by its key identifier. Thus, the key identifier concept is the extension of the key concept in relational data model. Figure 1 below defines a class PERSON. The key identifier of the class is composed of the four underlined attributes: SSN, Name, Sex, and birthdate. These four attributes together can uniquely identify a person as well as provide sufficient information about that person. If PERSON was defined as a relation, the primary key of PERSON would be SSN. But SSN alone specifies a little - 2 -
3 meaning about a person. Note that in Figure 1 we have omitted the definition of methods and adopted a C++ like syntax for illustration. We also assumed that the classes, NAME, DATE, ADDRESS and COLOR, have been defined somewhere else. Class PERSON private: char NAME char DATE ADDRESS COLOR COLOR... SSN[11]; Name; Sex; birthdate; Live-at; Hair-color; Eye-color; FIGURE 1: PERSON CLASS DEFINITION How to select a key identifier of a class is dependent on the database designer's knowledge of the enterprise to be modeled. This decision is based on how critical a piece of information this object is. Figure 2 gives another example. The class INSTRUCTOR is a subclass of PERSON. The key identifier of INSTRUCTOR is the combination of the key identifier of PERSON and the underlined attribute of INSTRUCTOR, that is K ( INSTRUCTOR ) = SSN, Name, Sex, birthdate, Dept. Class INSTRUCTOR : PERSON Private: DEPARTMENT Dept; ROOM assignedoffice; Set of PERSON officemates;... FIGURE 2. INSTRUCTOR CLASS In this paper, we assumed single class inheritance. Class COLLOQUIUM Private: PERSON TOPIC Set of PERSON DATE ROOM TIME Integer Integer Update Anomalies Speaker; Subject; Attendants; thedate; theroom; thetime; roomcapacity; numberofattendants; FIGURE 3. COLLOQUIUM CLASS During the design of a conceptual schema of an OODB, we want to check whether the definition of a class contains redundant information. Figure 3 shows the definition of COLLOQUIUM class in which other classes are assumed to be defined somewhere else. The key identifier of the class consists of the underlined attributes. By analyzing the class definition, we find that the attributes, roomcapacity and numberof-attendants, should not be included in the class. We can see several problems existing in this class definition. 1. Redundancy. The room capacity information is repeated in all COLLOQUIUM objects which are scheduled in a same room. Also, the number of attendants should be obtained from the cardinality of the set of attendants. 2. Potential inconsistency. As a consequence of the redundancy in (1) above, the database would contain inconsistent data if the change of the capacity of a room is not propagated to all COLLOQUIUM objects referring to that room. 3. Deletion anomalies. If the room capacity in COLLOQUIUM is the only place in the - 3 -
4 database where this information is recorded, the cancellation of all COLLOQUIUM objects scheduled in a same room unintentionally loses the room capacity information. Following the terminology of relational databases, we call the above problems 2 and 3 as update anomalies. Note that the problems above are the same problems addressed by the relation normalization in the design of an relational database. It has motivated us to study the class normalization concept to reduce redundant information and to remove update anomalies in the design of an OODB. One may argue that the above mentioned problems could be resolved by implementing specific methods to ensure data consistent and to avoid update anomalies. However, this solution may not work unless the redundant information can be identified in the schema design phase. It is the proposed class normalization concept that can help the designer to uncover any redundant information. 3.3 Existence Dependency Existence dependency is a kind of relationship between attributes of a class. Let the class C contains a set of attributes, C.A C.A = A 1, A 2,..., A n and X and Y be subsets of C.A. Y is said to be existentially dependent on X (1) If Y supplies additional fact about X, and (2) If X is removed from C, then Y should also be deleted from C. This existence dependency is denoted as X <== Y. Intuitively, the above definition says that Y adds an additional fact about nothing but X. From the example in Figure 3, we can identify the following existence dependencies. Speaker, Subject, Attendants <== thedate, thetime, theroom Attendants <== numberofattendants theroom <== roomcapacity We can also find the following existence dependency in PERSON class in Figure 1. SSN, Name, Sex, birthdate <== Liveat, Haircolor, Eyecolor In this example, X happens to be the key identifier of PERSON. Note that, existence dependency looks similar to functional dependency of relational database theory [Codd 70, Kent 83, Ullman 88, Date 90]. But existence dependency is a generalized form of functional dependency; functional dependency is a specialized form of existence dependency. For example, the functional dependency SSN, Name, Sex --> ( Haircolor, Eyecolor ) can be mapped to the existence dependency SSN, Name, Sex <== Haircolor, Eyecolor. But, an existence dependency is not necessarily a functional dependency. For instance, the existence dependency Attendants <== numberofattendants has no corresponding functional dependency. It is because functional dependency is based on atomic values, while existence dependency is based on objects. 4. CLASS NORMALIZATION Based on the existence dependency, we propose three desired normal forms for class definitions in a conceptual database schema, following the relation normalization concept of relational database design theory. 4.1 First Normal Form Class normalization should be employed as the last design step after the conceptual modeling process of an enterprise is completed. Thus, a conceptual database schema which is defined based on a qualified object-oriented model should be as the starting point for class normalization. According to the threshold - 4 -
5 model discussed by Zdonik and Maier in [Zdonik 90], we define the first normal form of a class as follows. DEFINITION I. A class is in first normal form ( 1NF ) if it is defined based on an object-oriented model which supports Object identity, Encapsulation, and objects with complex state. We have assumed that the examples given in Figures 1, 2, and 3 above are defined based on such a qualified object-oriented model. Thus the classes, PERSON, INSTRUCTOR, and COLLOQUIUM, are all in first normal form according to this definition. 4.2 Second Normal Form The class COLLOQUIUM in Figure 3 is in 1NF but has update anomalies. The analysis in Section 3 has revealed that the redundant information is caused by that the attributes, numberofattendants and roomcapacity, are not facts about a COLLOQUIUM object, but are the facts about individual components of the object, i.e., Attendants and theroom, respectively. These two attributes are existentially dependent on a partial key identifier of the COLLOQUIUM class, i.e., K(COLLOQUIUM) = Speaker, Subject, Attendants, thedate, thetime, theroom and Attendants <== numberofattendants theroom <== roomcapacity. DEFINITION II. A class is in second normal form ( 2NF ) if every non-key identifier attribute is existentially dependent on the key identifier and not on any proper subset of the key identifier. Intuitively, this definition says that a non-key identifier attribute must be a fact about the key identifier and not a fact about a component of the key identifier. According to this definition, COLLOQUIUM class is not in second normal form. To normalize the class, the attribute numberofattendants should be deleted because this information can be obtained from the set Attendants. Two of possible ways to remove the attribute roomcapacity are as follows. (1) If there is no attribute in the class ROOM to record the room capacity, add the attribute roomcapacity to ROOM class, and then delete the attribute from COLLOQUIUM. (2) If there already exists a similar attribute in the class ROOM, simply eliminate the attribute roomcapacity from COLLOQUIUM. After the above normalization process, COLLOQUIUM is now in 2NF according this definition. Note that the definition of 2NF has included extreme cases in which a class definition includes irrelevant attributes. For example, a novice user may include as attributes of a class some temporary variables required only by the implementation of some methods. Such a mistake may not be a serious problem if it occurs in a program. But such a mistake should not be permitted in the design of a conceptual database schema. 4.3 Third Normal Form Update anomalies can still be found in classes which are in 2NF. Let us analyze the class INSTRUCTOR in Figure 2. The key identifier of INSTRUCTOR is K(INSTRUCTOR) = SSN, Name, Sex, birthdate, Dept The existential dependencies in INSTRUCTOR are SSN, Name, Sex, birthdate, Dept <== assignedoffice assignedoffice <== officemates, SSN, Name, Sex, birthdate, Dept <== officemates. INSTRUCTOR is in 2NF according to Definition II. However, there is a transitive dependency from the key identifier to officemates through assignedoffice. It causes several problems
6 1. Redundant information. The officemates appears in all INSTRUCTOR objects who share a same office. 2. Potential inconsistent. As a consequence of the redundancy in (1) above, update the objects on officemates may cause data inconsistencies. 3. Deletion anomalies. Deletion of instructor objets may unintentionally lose office sharing data if this information is a valuable piece of historical information. After a close examination on the definition of the class INSTRUCTOR, we find that the attribute officemates should actually belong to a relationship among a set of INSTRUCTOR objects. Figure 4 shows a solution to remove the update anomalies by creating a new class OFFICE to model the office sharing relationship and modifying the definition of INSTRUCTOR. This example shows a process by which a class is normalized into classes that are in third normal form. Class OFFICE Private: ROOM Set of PERSON... Class Instructor : Person Private: DEPARTMENT OFFICE... theoffice; officemates; Dept; assignedoffice; FIGURE 4. OFFICE AND INSTRUCTOR CLASSES DEFINITION III. A class is in third normal form ( 3NF ) if it is in 2NF and all non-key identifier attributes are non-transitively dependent on the key identifier. Intuitively, the above definition says that a class should not contain a piece of information which is a fact about a relationship in which that class is one of the participants. 5. CONCLUSION We have introduced the class normalization concept and three class normal forms in this paper. This concept can be applied to the design of an OODB and to determine whether the definition of a class contains any redundant information that may results in update anomalies. The normalization concept is based on the key identifier and existence dependency concepts. Existency dependency is a generalized form of functional dependency of relational data model. We believe that normalized classes can reduce redundant information and remove some update anomalies. Because of lack of a formal and widely accepted theory about object-oriented data modeling and methodology for the design of OODBs, the proposed class normalization procedure could add greatly to database design practice based on object-oriented approach. This normalization procedure is rather straightforward and should be easily accepted by those users who are familiar with the normalization concept of relational database theory. However, this paper represents our initial effort in seeking for a formal design theory for OODBs. A number of theoretical issues have not been addressed. Some of these issues are: A formal theory about existence dependency and its properties, A formal theory about class normal forms, A way of formalizing the class "decomposition" procedure, and A formal proof of the correctness and soundness of the class normalization concept. In addition, answers are needed for the following questions: - 6 -
7 How does class inheritance, in general, affect class normalization? Applications," The Benjamin /Cummings Publishing Company, Inc., How do relationships, in general, affect class normalization? What is the role played by methods of a class in the normalization process? Can class normalization be extended to detect redundant information and update anomalies among classes? What is the relationship between class normalization and relation normalization? These issues suggest fruitful areas of future research. ACKNOWLEDGMENTS The author would like to thank Dr. Ephraim McLean for his review, correction, and commentis of this paper. REFERENCES [Agrawal 90] Agrawal, R., Gehani, N.H., and Srinivasan, J, "OdeView: The Graphical Interface to Ode", Proc. of ACM SIGMOD, May, 1990, pp [Byrce 86] Byrce, D. and Hull, R., "SNAP: A Graphics- Based Schema Manager", Proc. of IEEE Int'l Conf. on Data Engineering, Feb. 1986, pp [Bragger 85] Bragger, R.P., et al. "Gambit: An Interactive Database Design Tool for Data Structures, Integrity Constraints, and Transactions", IEEE Trans. on Software Engineering, Vol. SE-11, No. 7, July 1985, pp [Bancilhon 90] Bancilhon, F. and Kim, W., "Object-Oriented Database Systems: In Transition," SIGMOD Record, Vol. 19, No. 4, Dec [Booch 91] Booch, G., "Object-Oriented Design with [Chamberlin 76] Chamberlin, D.D., "Relational Data-Base Management Systems," ACM Computing Surveys, Vol. 8, No. 1, March 1976, pp [Codd 70] Codd, E.F., "A Relational Model of Data for Large Shared Data Banks,"Communication of ACM, Vol. 13, No. 6, June, 1970, pp [Date 90] Date, C.J., "An Introduction to Database Systems", Volume 1, 5th Edition, Addison- Wesley Publishing Company, [Elmasri 89] Elmasri, R. and Navathe, S.B., "Foundamentals of Database Systems," The Benjamin/Cummings Publishing Company, Inc., [Fogg 84] Fogg, D., "Lessons from `Living in a Database' Graphical Query Interface," Proc. of ACM SIGMOD, June, 1984, pp [Goldman 85] Goldman, K.J. et al., "ISIS: Interface for a Semantic Information System", Proc. of ACM- SIGMOD, May 1985, pp [Hawryszkiewycz 91] Hawryszkiewycz, I.T., "Database Analysis and Design," 2nd Edition, Science Research Associates, Inc., [Hong 88] Hong, S., and Maryanski, F., "Database Design Tool Generation vis Software Reusability," Proc. of IEEE Int. Computer Software & Applications Conf., Oct. 1988, pp [Kent 83] Kent, W., "A Simple Guide to Five Normal Forms in Relational Database Theory," Communications of ACM, Vol. 26, No. 2, Feb. 1983, pp [King 84] King, R. and Melville, "Ski: A Semantics- Knowledgeable Interface," Proc. of VLDB, Aug. 1984, pp
8 [Maryanski 85] Maryanski, F., and Hong, S., "A Tool For Generating Semantic Database Applications," in Proc. of IEEE Int'l Computer Software & Application Conf., Oct. 1985, pp [Maier 83] Maier, D., The Theory of Relational Databases, Computer Science Press, [Maier 86] Maier, D., Nordquist, P. and Grossman, M., "Displaying Database Objects", Proc. of 1st Int'l Conf. on Expert Database Systems, April 1986, pp [Reiner 84] Reiner, D. S., et al, "The Database Design and Evaluation Workbench ( DDEW ) Project at CCA," IEEE Database Engineering, Vol. 7, No. 4, Dec. 1984, pp [Rumbaugh 91] Rumbaugh, J., et al., "Object-Oriented Modeling and Design," Prentice Hall, [Troger 89] Troger, O.D., "RIDL: A Tool for the COmputer Aided Engineering of Large Databases in the Presence of Integrity Constraints," in Proc. of ACM SIGMOD, June, 1989, pp [Ullman 88] Ullman, J.D., "Principles of Database and Knowledge-Base Systems,", Volumes 1 & 2, Computer Science Press, [Wirfs-Brock 90] Wirfs-Brock, R.J. and Johnson, R.E., "Surveying Current Research in Object-Oriented Design," Communication of ACM, Vol. 33, No. 9, Sept. 1990, pp [Zdonik 90] Zdonik, S.B. and Maier, D., "Fundamentals of Object-Oriented Databases", Readings in Object- Oriented Database Systems, edited by S. Zdonik and D. Maier, Morgan Kaufmann Publishers, Inc.,
Introducing MESSIA: A Methodology of Developing Software Architectures Supporting Implementation Independence
Introducing MESSIA: A Methodology of Developing Software Architectures Supporting Implementation Independence Ratko Orlandic Department of Computer Science and Applied Math Illinois Institute of Technology
More informationNovel Materialized View Selection in a Multidimensional Database
Graphic Era University From the SelectedWorks of vijay singh Winter February 10, 2009 Novel Materialized View Selection in a Multidimensional Database vijay singh Available at: https://works.bepress.com/vijaysingh/5/
More informationLecture2: Database Environment
College of Computer and Information Sciences - Information Systems Dept. Lecture2: Database Environment 1 IS220 : D a t a b a s e F u n d a m e n t a l s Topics Covered Data abstraction Schemas and Instances
More informationThe Relational Data Model and Relational Database Constraints
CHAPTER 5 The Relational Data Model and Relational Database Constraints Copyright 2017 Ramez Elmasri and Shamkant B. Navathe Slide 1-2 Chapter Outline Relational Model Concepts Relational Model Constraints
More informationThe Entity-Relationship Model (ER Model) - Part 2
Lecture 4 The Entity-Relationship Model (ER Model) - Part 2 By Michael Hahsler Based on slides for CS145 Introduction to Databases (Stanford) Lecture 4 > Section 2 What you will learn about in this section
More informationChapter 14. Database Design Theory: Introduction to Normalization Using Functional and Multivalued Dependencies
Chapter 14 Database Design Theory: Introduction to Normalization Using Functional and Multivalued Dependencies Copyright 2012 Ramez Elmasri and Shamkant B. Navathe Chapter Outline 1 Informal Design Guidelines
More informationINCONSISTENT DATABASES
INCONSISTENT DATABASES Leopoldo Bertossi Carleton University, http://www.scs.carleton.ca/ bertossi SYNONYMS None DEFINITION An inconsistent database is a database instance that does not satisfy those integrity
More informationNOTES ON OBJECT-ORIENTED MODELING AND DESIGN
NOTES ON OBJECT-ORIENTED MODELING AND DESIGN Stephen W. Clyde Brigham Young University Provo, UT 86402 Abstract: A review of the Object Modeling Technique (OMT) is presented. OMT is an object-oriented
More informationFunctional Dependencies and. Databases. 1 Informal Design Guidelines for Relational Databases. 4 General Normal Form Definitions (For Multiple Keys)
1 / 13 1 Informal Design Guidelines for Relational Databases 1.1Semantics of the Relation Attributes 1.2 Redundant d Information in Tuples and Update Anomalies 1.3 Null Values in Tuples 1.4 Spurious Tuples
More informationSpecifying the Standard Guidelines to Normalize the EERD Up to Best Normal Form
Specifying the Standard Guidelines to Normalize the EERD Up to Best Normal Form Abstract: In the traditional approach Entity Relationship Diagram plays vital and important role in structured database design
More informationCourse on Database Design Carlo Batini University of Milano Bicocca Part 5 Logical Design
Course on Database Design Carlo atini University of Milano icocca Part 5 Logical Design 1 Carlo atini, 2015 This work is licensed under the Creative Commons Attribution NonCommercial NoDerivatives 4.0
More informationRelational Database design. Slides By: Shree Jaswal
Relational Database design Slides By: Shree Jaswal Topics: Design guidelines for relational schema, Functional Dependencies, Definition of Normal Forms- 1NF, 2NF, 3NF, BCNF, Converting Relational Schema
More informationAuthor's Prepublication Version
OBJECT DATA MODELS Susan D. Urban Arizona State University http://www.public.asu.edu/~surban Suzanne W. Dietrich Arizona State University http://www.public.asu.edu/~dietrich SYNONYMS ODB (Object Database),
More informationINCORPORATING ADVANCED PROGRAMMING TECHNIQUES IN THE COMPUTER INFORMATION SYSTEMS CURRICULUM
INCORPORATING ADVANCED PROGRAMMING TECHNIQUES IN THE COMPUTER INFORMATION SYSTEMS CURRICULUM Charles S. Saxon, Eastern Michigan University, charles.saxon@emich.edu ABSTRACT Incorporating advanced programming
More informationIntroduction to Geant4
Introduction to Geant4 Release 10.4 Geant4 Collaboration Rev1.0: Dec 8th, 2017 CONTENTS: 1 Geant4 Scope of Application 3 2 History of Geant4 5 3 Overview of Geant4 Functionality 7 4 Geant4 User Support
More informationData integration supports seamless access to autonomous, heterogeneous information
Using Constraints to Describe Source Contents in Data Integration Systems Chen Li, University of California, Irvine Data integration supports seamless access to autonomous, heterogeneous information sources
More informationFormalizing OO Frameworks and Framework Instantiation
Formalizing OO Frameworks and Framework Instantiation Christiano de O. Braga, Marcus Felipe M. C. da Fontoura, Edward H. Hæusler, and Carlos José P. de Lucena Departamento de Informática, Pontifícia Universidade
More informationCISC 3140 (CIS 20.2) Design & Implementation of Software Application II
CISC 3140 (CIS 20.2) Design & Implementation of Software Application II Instructor : M. Meyer Email Address: meyer@sci.brooklyn.cuny.edu Course Page: http://www.sci.brooklyn.cuny.edu/~meyer/ CISC3140-Meyer-lec4
More informationA Design Rationale Representation for Model-Based Designs in Software Engineering
A Design Rationale Representation for Model-Based Designs in Software Engineering Adriana Pereira de Medeiros, Daniel Schwabe, and Bruno Feijó Dept. of Informatics, PUC-Rio, Rua Marquês de São Vicente
More informationCopyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Slide 5-1
Copyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Slide 5-1 Chapter 5 The Relational Data Model and Relational Database Constraints Copyright 2007 Pearson Education, Inc. Publishing
More informationUML-Based Conceptual Modeling of Pattern-Bases
UML-Based Conceptual Modeling of Pattern-Bases Stefano Rizzi DEIS - University of Bologna Viale Risorgimento, 2 40136 Bologna - Italy srizzi@deis.unibo.it Abstract. The concept of pattern, meant as an
More informationChapter 5. Relational Model Concepts 5/2/2008. Chapter Outline. Relational Database Constraints
Chapter 5 The Relational Data Model and Relational Database Constraints Copyright 2004 Pearson Education, Inc. Chapter Outline Relational Model Concepts Relational Model Constraints and Relational Database
More informationByzantine Consensus in Directed Graphs
Byzantine Consensus in Directed Graphs Lewis Tseng 1,3, and Nitin Vaidya 2,3 1 Department of Computer Science, 2 Department of Electrical and Computer Engineering, and 3 Coordinated Science Laboratory
More informationChapter 5. Relational Model Concepts 9/4/2012. Chapter Outline. The Relational Data Model and Relational Database Constraints
Chapter 5 The Relational Data Model and Relational Database Constraints Copyright 2004 Pearson Education, Inc. Chapter Outline Relational Model Constraints and Relational Database Schemas Update Operations
More informationObjects Meet Relations: On the Transparent Management of Persistent Objects
Objects Meet Relations: On the Transparent Management of Persistent Objects Luca Cabibbo Dipartimento di Informatica e Automazione Università degli studi Roma Tre cabibbo@dia.uniroma3.it Abstract. Many
More informationSoftware Development Methodologies
Software Development Methodologies Lecturer: Raman Ramsin Lecture 3 Seminal Object-Oriented Methodologies: A Feature-Focused Review 1 Responsibility-Driven Design (RDD) Introduced in 1990; a UML-based
More informationDATABASE MANAGEMENT SYSTEM SHORT QUESTIONS. QUESTION 1: What is database?
DATABASE MANAGEMENT SYSTEM SHORT QUESTIONS Complete book short Answer Question.. QUESTION 1: What is database? A database is a logically coherent collection of data with some inherent meaning, representing
More informationChapter 14 Outline. Normalization for Relational Databases: Outline. Chapter 14: Basics of Functional Dependencies and
Ramez Elmasri, Shamkant B. Navathe(2016) Fundamentals of Database Systems (7th Edition), pearson, isbn 10: 0-13-397077-9;isbn-13:978-0-13-397077-7. Chapter 14: Basics of Functional Dependencies and Normalization
More informationDatabases 1. Daniel POP
Databases 1 Daniel POP Week 6 & 7 Agenda Introduction to normalization Functional dependencies 1NF 2NF 3NF. Transitive dependencies BCNF 4NF. Multivalued dependencies 5NF De-normalization Normalization
More informationENTITIES IN THE OBJECT-ORIENTED DESIGN PROCESS MODEL
INTERNATIONAL DESIGN CONFERENCE - DESIGN 2000 Dubrovnik, May 23-26, 2000. ENTITIES IN THE OBJECT-ORIENTED DESIGN PROCESS MODEL N. Pavković, D. Marjanović Keywords: object oriented methodology, design process
More informationDatabase Systems ER Model. A.R. Hurson 323 CS Building
ER Model A.R. Hurson 323 CS Building Database Design Data model is a group of concepts that helps to specify the structure of a database and a set of associated operations allowing data retrieval and data
More informationChapter 5. The Relational Data Model and Relational Database Constraints. Slide 5-١. Copyright 2007 Ramez Elmasri and Shamkant B.
Slide 5-١ Chapter 5 The Relational Data Model and Relational Database Constraints Chapter Outline Relational Model Concepts Relational Model Constraints and Relational Database Schemas Update Operations
More informationCopyright 2007 Ramez Elmasri and Shamkant B. Navathe. Slide 5-1
Slide 5-1 Chapter 5 The Relational Data Model and Relational Database Constraints Chapter Outline Relational Model Concepts Relational Model Constraints and Relational Database Schemas Update Operations
More informationA Class Hierarchy Concurrency Control Technique in Object-Oriented Database Systems
A Class Hierarchy Concurrency Control Technique in Object-Oriented Database Systems Woochun Jun and Le Gruenwald Dept. of Computer Science Univ. of Oklahoma Norman, OK 73072 gruenwal@cs.ou.edu Abstract
More informationInformal Design Guidelines for Relational Databases
Outline Informal Design Guidelines for Relational Databases Semantics of the Relation Attributes Redundant Information in Tuples and Update Anomalies Null Values in Tuples Spurious Tuples Functional Dependencies
More informationChapter 10. Chapter Outline. Chapter Outline. Functional Dependencies and Normalization for Relational Databases
Chapter 10 Functional Dependencies and Normalization for Relational Databases Chapter Outline 1 Informal Design Guidelines for Relational Databases 1.1Semantics of the Relation Attributes 1.2 Redundant
More information1/24/2012. Chapter 7 Outline. Chapter 7 Outline (cont d.) CS 440: Database Management Systems
CS 440: Database Management Systems Chapter 7 Outline Using High-Level Conceptual Data Models for Database Design A Sample Database Application Entity Types, Entity Sets, Attributes, and Keys Relationship
More informationDynamic Optimization of Generalized SQL Queries with Horizontal Aggregations Using K-Means Clustering
Dynamic Optimization of Generalized SQL Queries with Horizontal Aggregations Using K-Means Clustering Abstract Mrs. C. Poongodi 1, Ms. R. Kalaivani 2 1 PG Student, 2 Assistant Professor, Department of
More informationIS 263 Database Concepts
IS 263 Database Concepts Lecture 4: Normalization Instructor: Henry Kalisti 1 Department of Computer Science and Engineering Limitations of E- R Designs Provides a set of guidelines, does not result in
More informationConceptual Design with ER Model
Conceptual Design with ER Model Lecture #2 1/24/2012 Jeff Ballard CS564, Spring 2014, Database Management Systems 1 See the Moodle page Due February 7 Groups of 2-3 people Pick a team name Homework 1 is
More informationINFORMS 4th Conference on Information Systems and Technology. Generalizations as Data and Behavior Abstractions
INFORMS 4th Conference on Information Systems and Technology Generalizations as Data and Behavior Abstractions,..- Dale L. Lunsford The University of Southern Mississippi, College of Business Administration,
More informationUNIT 3 DATABASE DESIGN
UNIT 3 DATABASE DESIGN Objective To study design guidelines for relational databases. To know about Functional dependencies. To have an understanding on First, Second, Third Normal forms To study about
More informationA Framework for Relationship Pattern Languages
A Framework for Relationship Pattern Languages Technical Report# TR-08-03. Created: May 15, 2006. Last Modified: Feb. 08, 2008 Sudarshan Murthy, David Maier Department of Computer Science, Portland State
More informationMapping ER Diagrams to. Relations (Cont d) Mapping ER Diagrams to. Exercise. Relations. Mapping ER Diagrams to Relations (Cont d) Exercise
CSC 74 Database Management Systems Topic #6: Database Design Weak Entity Type E Create a relation R Include all simple attributes and simple components of composite attributes. Include the primary key
More informationDatabase Management Systems CS Spring 2017
Database Management Systems CS 542 --- Spring 2017 Instructor: Elke Rundensteiner Office: FL 135 Email: rundenst@cs.wpi.edu http://web.cs.wpi.edu/~cs542/s17 Course Information Who should attend? Interested
More informationSoftware Service Engineering
Software Service Engineering Lecture 4: Unified Modeling Language Doctor Guangyu Gao Some contents and notes selected from Fowler, M. UML Distilled, 3rd edition. Addison-Wesley Unified Modeling Language
More informationCategory Theory in Ontology Research: Concrete Gain from an Abstract Approach
Category Theory in Ontology Research: Concrete Gain from an Abstract Approach Markus Krötzsch Pascal Hitzler Marc Ehrig York Sure Institute AIFB, University of Karlsruhe, Germany; {mak,hitzler,ehrig,sure}@aifb.uni-karlsruhe.de
More informationInference in Hierarchical Multidimensional Space
Proc. International Conference on Data Technologies and Applications (DATA 2012), Rome, Italy, 25-27 July 2012, 70-76 Related papers: http://conceptoriented.org/ Inference in Hierarchical Multidimensional
More informationConceptual Design. The Entity-Relationship (ER) Model
Conceptual Design. The Entity-Relationship (ER) Model CS430/630 Lecture 12 Slides based on Database Management Systems 3 rd ed, Ramakrishnan and Gehrke Database Design Overview Conceptual design The Entity-Relationship
More informationE-R Model. Hi! Here in this lecture we are going to discuss about the E-R Model.
E-R Model Hi! Here in this lecture we are going to discuss about the E-R Model. What is Entity-Relationship Model? The entity-relationship model is useful because, as we will soon see, it facilitates communication
More informationCorrectness Criteria Beyond Serializability
Correctness Criteria Beyond Serializability Mourad Ouzzani Cyber Center, Purdue University http://www.cs.purdue.edu/homes/mourad/ Brahim Medjahed Department of Computer & Information Science, The University
More informationPath Expression Processing. in Korean Natural Language Query Interface. for Object-Oriented Databases. Jinseok Chae and Sukho Lee
Path Expression Processing in Korean Natural Language Query Interface for Object-Oriented Databases Jinseok Chae and Sukho Lee Department of Computer Engineering, Seoul National University, San 56-1, Shinrim-Dong,
More informationDetailed Data Modelling: Attribute Collection and Normalisation of Data
Detailed Data Modelling IMS1002 /CSE1205 Systems Analysis and Design Detailed Data Modelling: Attribute Collection and Normalisation of Data The objective of detailed data modelling is to develop a detailed
More informationElmasri/Navathe, Fundamentals of Database Systems, Fourth Edition Chapter 10-2
Elmasri/Navathe, Fundamentals of Database Systems, Fourth Edition Chapter 10-2 Chapter Outline 1 Informal Design Guidelines for Relational Databases 1.1Semantics of the Relation Attributes 1.2 Redundant
More information01/01/2017. Chapter 5: The Relational Data Model and Relational Database Constraints: Outline. Chapter 5: Relational Database Constraints
Chapter 5: The Relational Data Model and Relational Database Constraints: Outline Ramez Elmasri, Shamkant B. Navathe(2017) Fundamentals of Database Systems (7th Edition),pearson, isbn 10: 0-13-397077-9;isbn-13:978-0-13-397077-7.
More informationCollaborative Framework for Testing Web Application Vulnerabilities Using STOWS
Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology ISSN 2320 088X IMPACT FACTOR: 5.258 IJCSMC,
More informationEnhancing Datalog with Epistemic Operators to Reason About Systems Knowledge in
Enhancing Datalog with Epistemic Operators to Enhancing ReasonDatalog About Knowledge with Epistemic in Distributed Operators to Reason About Systems Knowledge in Distributed (Extended abstract) Systems
More informationDatabase Foundations. 3-9 Validating Data Using Normalization. Copyright 2015, Oracle and/or its affiliates. All rights reserved.
Database Foundations 3-9 Roadmap Conceptual and Physical Data Models Business Rules Entities Attributes Unique Identifiers Relationships Validating Relationships Tracking Data Changes over Time Validating
More informationEECS 647: Introduction to Database Systems
EECS 647: Introduction to Database Systems Instructor: Luke Huan Spring 2009 Administrative I have communicated with KU Bookstore inquring about the text book status. Take home background survey is due
More informationMIDTERM EXAMINATION Spring 2010 CS403- Database Management Systems (Session - 4) Ref No: Time: 60 min Marks: 38
Student Info StudentID: Center: ExamDate: MIDTERM EXAMINATION Spring 2010 CS403- Database Management Systems (Session - 4) Ref No: 1356458 Time: 60 min Marks: 38 BC080402322 OPKST 5/28/2010 12:00:00 AM
More informationLecture 5 STRUCTURED ANALYSIS. PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall Bühnová, Sochor, Ráček
Lecture 5 STRUCTURED ANALYSIS PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall 2015 1 Outline ² Yourdon Modern Structured Analysis (YMSA) Context diagram (CD) Data flow diagram
More informationCourse Design Document: IS202 Data Management. Version 4.5
Course Design Document: IS202 Data Management Version 4.5 Friday, October 1, 2010 Table of Content 1. Versions History... 4 2. Overview of the Data Management... 5 3. Output and Assessment Summary... 6
More informationCSCI 403: Databases 13 - Functional Dependencies and Normalization
CSCI 403: Databases 13 - Functional Dependencies and Normalization Introduction The point of this lecture material is to discuss some objective measures of the goodness of a database schema. The method
More informationI. Khalil Ibrahim, V. Dignum, W. Winiwarter, E. Weippl, Logic Based Approach to Semantic Query Transformation for Knowledge Management Applications,
I. Khalil Ibrahim, V. Dignum, W. Winiwarter, E. Weippl, Logic Based Approach to Semantic Query Transformation for Knowledge Management Applications, Proc. of the International Conference on Knowledge Management
More informationCSE 544 Principles of Database Management Systems. Magdalena Balazinska Winter 2009 Lecture 4 - Schema Normalization
CSE 544 Principles of Database Management Systems Magdalena Balazinska Winter 2009 Lecture 4 - Schema Normalization References R&G Book. Chapter 19: Schema refinement and normal forms Also relevant to
More informationComposability Test of BOM based models using Petri Nets
I. Mahmood, R. Ayani, V. Vlassov and F. Moradi 7 Composability Test of BOM based models using Petri Nets Imran Mahmood 1, Rassul Ayani 1, Vladimir Vlassov 1, and Farshad Moradi 2 1 Royal Institute of Technology
More informationSelecting Topics for Web Resource Discovery: Efficiency Issues in a Database Approach +
Selecting Topics for Web Resource Discovery: Efficiency Issues in a Database Approach + Abdullah Al-Hamdani, Gultekin Ozsoyoglu Electrical Engineering and Computer Science Dept, Case Western Reserve University,
More informationEntity-Relationship Modelling. Entities Attributes Relationships Mapping Cardinality Keys Reduction of an E-R Diagram to Tables
Entity-Relationship Modelling Entities Attributes Relationships Mapping Cardinality Keys Reduction of an E-R Diagram to Tables 1 Entity Sets A enterprise can be modeled as a collection of: entities, and
More informationConstructing Object Oriented Class for extracting and using data from data cube
Constructing Object Oriented Class for extracting and using data from data cube Antoaneta Ivanova Abstract: The goal of this article is to depict Object Oriented Conceptual Model Data Cube using it as
More informationAn Ontological Analysis of Metamodeling Languages
An Ontological Analysis of Metamodeling Languages Erki Eessaar and Rünno Sgirka 2 Department of Informatics, Tallinn University of Technology, Estonia, eessaar@staff.ttu.ee 2 Department of Informatics,
More informationXRay Views: Understanding the Internals of Classes
XRay Views: Understanding the Internals of Classes Gabriela Arévalo, Stéphane Ducasse, Oscar Nierstrasz Software Composition Group University of Bern (Switzerland) {arevalo, ducasse, oscar}@iam.unibe.ch
More informationInheritance Conflicts in Object-Oriented Systems
Inheritance Conflicts in Object-Oriented Systems Tok Wang LING and Pit Koon TEO Department of Information Systems and Computer Science National University of Singapore Abstract. Inheritance conflicts in
More informationNormalization. Murali Mani. What and Why Normalization? To remove potential redundancy in design
1 Normalization What and Why Normalization? To remove potential redundancy in design Redundancy causes several anomalies: insert, delete and update Normalization uses concept of dependencies Functional
More informationDetailed Data Modelling. Detailed Data Modelling. Detailed Data Modelling. Identifying Attributes. Attributes
IMS1002 /CSE1205 Systems Analysis and Design Detailed Data Modelling The objective of detailed data modelling is to develop a detailed data structure that: Detailed Data Modelling: Attribute Collection
More informationInternational Journal of Advancements in Research & Technology, Volume 2, Issue5, May ISSN
International Journal of Advancements in Research & Technology, Volume 2, Issue5, May-2013 194 A REVIEW ON OBJECT MODELLING METHODOLOGIES ROHIT SHARMA 1, Dr. VINODINI KATIYAR 2 1 Research Scholar, C.M.J.
More informationTransactions on Engineering Sciences vol 3, 1993 WIT Press, ISSN
Object-oriented data model for computer aided design in electrical engineering I. Salomie," D.G. Elliman* Computer Science and Engineering Department, Technical Romania & Computer Science Department, University
More informationUpdates through Views
1 of 6 15 giu 2010 00:16 Encyclopedia of Database Systems Springer Science+Business Media, LLC 2009 10.1007/978-0-387-39940-9_847 LING LIU and M. TAMER ÖZSU Updates through Views Yannis Velegrakis 1 (1)
More informationWeb Security Vulnerabilities: Challenges and Solutions
Web Security Vulnerabilities: Challenges and Solutions A Tutorial Proposal for ACM SAC 2018 by Dr. Hossain Shahriar Department of Information Technology Kennesaw State University Kennesaw, GA 30144, USA
More informationRole based Software Process Modelling
Role based Software Process Modelling Fadila Atil, Djamel Meslati, Nora Bounour & Said Ghoul * LRI Laboratory, University of Badji Mokhtar, BP 12, Annaba, Ageria * Institute of Computer science, university
More informationFunctional Dependencies and Normalization for Relational Databases Design & Analysis of Database Systems
Functional Dependencies and Normalization for Relational Databases 406.426 Design & Analysis of Database Systems Jonghun Park jonghun@snu.ac.kr Dept. of Industrial Engineering Seoul National University
More informationINTRODUCING DYNAMIC OBJECT ROLES INTO THE UML CLASS DIAGRAM
INTRODUCING DYNAMIC OBJECT ROLES INTO THE UML CLASS DIAGRAM Andrzej Jodlowski 1, Jacek Plodzien 1,2, Ewa Stemposz 1,3, Kazimierz Subieta 3,1 1 Institute of Computer Science Polish Academy of Sciences ul.
More informationAn Incremental Query Compiler with Resolution of Late Binding
An Incremental Query Compiler with Resolution of Late Binding Staffan Flodin E-mail: stala@ida.liu.se Abstract This paper presents the extensions made to the query compiler of an object-relational database
More informationHOW AND WHEN TO FLATTEN JAVA CLASSES?
HOW AND WHEN TO FLATTEN JAVA CLASSES? Jehad Al Dallal Department of Information Science, P.O. Box 5969, Safat 13060, Kuwait ABSTRACT Improving modularity and reusability are two key objectives in object-oriented
More informationEntity Relationship Data Model. Slides by: Shree Jaswal
Entity Relationship Data Model Slides by: Shree Jaswal Topics: Conceptual Modeling of a database, The Entity-Relationship (ER) Model, Entity Types, Entity Sets, Attributes, and Keys, Relationship Types,
More informationChapter 4. The Relational Model
Chapter 4 The Relational Model Chapter 4 - Objectives Terminology of relational model. How tables are used to represent data. Connection between mathematical relations and relations in the relational model.
More information8. Relational Calculus (Part II)
8. Relational Calculus (Part II) Relational Calculus, as defined in the previous chapter, provides the theoretical foundations for the design of practical data sub-languages (DSL). In this chapter, we
More informationA Tutorial on Agent Based Software Engineering
A tutorial report for SENG 609.22 Agent Based Software Engineering Course Instructor: Dr. Behrouz H. Far A Tutorial on Agent Based Software Engineering Qun Zhou December, 2002 Abstract Agent oriented software
More informationUsing Statistics for Computing Joins with MapReduce
Using Statistics for Computing Joins with MapReduce Theresa Csar 1, Reinhard Pichler 1, Emanuel Sallinger 1, and Vadim Savenkov 2 1 Vienna University of Technology {csar, pichler, sallinger}@dbaituwienacat
More informationAn Approach for Quality Control Management in Object Oriented Projects Development
J. Basic. Appl. Sci. Res., 3(1s)539-544, 2013 2013, TextRoad Publication ISSN 2090-4304 Journal of Basic and Applied Scientific Research www.textroad.com An Approach for Quality Control Management in Object
More informationCopyright 2016 Ramez Elmasr and Shamkant B. Navathei
CHAPTER 3 Data Modeling Using the Entity-Relationship (ER) Model Slide 1-2 Chapter Outline Overview of Database Design Process Example Database Application (COMPANY) ER Model Concepts Entities and Attributes
More informationDistributed Database Systems By Syed Bakhtawar Shah Abid Lecturer in Computer Science
Distributed Database Systems By Syed Bakhtawar Shah Abid Lecturer in Computer Science 1 Distributed Database Systems Basic concepts and Definitions Data Collection of facts and figures concerning an object
More informationAn Optimization of Disjunctive Queries : Union-Pushdown *
An Optimization of Disjunctive Queries : Union-Pushdown * Jae-young hang Sang-goo Lee Department of omputer Science Seoul National University Shilim-dong, San 56-1, Seoul, Korea 151-742 {jychang, sglee}@mercury.snu.ac.kr
More informationLSC 740 Database Management Fall 2008
Catholic University of America, School of Library and Information Science LSC 740 Database Management Fall 2008 Time/Location: Thursday 12:30-3:00 pm / room 302 Shahan Hall Make mistakes. Get messy. Take
More informationCSE 132A Database Systems Principles
CSE 132A Database Systems Principles Prof. Alin Deutsch RELATIONAL DATA MODEL Some slides are based or modified from originals by Elmasri and Navathe, Fundamentals of Database Systems, 4th Edition 2004
More informationCopyright 2016 Ramez Elmasri and Shamkant B. Navathe
CHAPTER 14 Basics of Functional Dependencies and Normalization for Relational Databases Slide 14-2 Chapter Outline 1 Informal Design Guidelines for Relational Databases 1.1 Semantics of the Relation Attributes
More informationCS 377 Database Systems
CS 377 Database Systems Relational Data Model Li Xiong Department of Mathematics and Computer Science Emory University 1 Outline Relational Model Concepts Relational Model Constraints Relational Database
More informationIntroduction to Relational Databases. Introduction to Relational Databases cont: Introduction to Relational Databases cont: Relational Data structure
Databases databases Terminology of relational model Properties of database relations. Relational Keys. Meaning of entity integrity and referential integrity. Purpose and advantages of views. The relational
More informationFunctional Dependencies and Single Valued Normalization (Up to BCNF)
Functional Dependencies and Single Valued Normalization (Up to BCNF) Harsh Srivastava 1, Jyotiraditya Tripathi 2, Dr. Preeti Tripathi 3 1 & 2 M.Tech. Student, Centre for Computer Sci. & Tech. Central University
More informationCSCC43H: Introduction to Databases
CSCC43H: Introduction to Databases Lecture 2 Wael Aboulsaadat Acknowledgment: these slides are partially based on Prof. Garcia-Molina & Prof. Ullman slides accompanying the course s textbook. CSCC43: Introduction
More informationAn Ameliorated Methodology to Eliminate Redundancy in Databases Using SQL
An Ameliorated Methodology to Eliminate Redundancy in Databases Using SQL Praveena M V 1, Dr. Ajeet A. Chikkamannur 2 1 Department of CSE, Dr Ambedkar Institute of Technology, VTU, Karnataka, India 2 Department
More information