Normalization Rules of the Object-Oriented Data Model
|
|
|
- Candace Thompson
- 10 years ago
- Views:
Transcription
1 Normalization Rules of the Object-Oriented Data Model Vojt ch Merunka 1,2, Ji í Broºek 1, Martin ebek 1, and Martin Molhanec 2 1 Czech University of Life Sciences Prague, Faculty of Economics and Management, Department of Information Engineering, merunka,brozekj,[email protected] 2 Czech Technical University in Prague, Faculty of Nuclear Sciences and Physical Engineering, Department of Software Engineering in Economy, [email protected] Abstract. There are only very few approaches to normalizing objectoriented data. In this paper we present an approach to normalization of the object-oriented conceptual model based on UML class diagrams. First part of the paper describes the current status in the area of formal methods used for object-oriented data modeling. Second part presents four normalization rules, which are based on own experience and modied Ambler-Beck approach. These normalization rules are introduced on an example. Our method has been used in education at several universities. It has been and is also used for database design in software development projects, which we carried out. Recently, development of the CASE tool based on this approach has been started. Keywords. Data normalization, object-oriented data model (ODM), relational data model (RDM), rst object-oriented normal form (1ONF), second objectoriented normal form (2ONF), third object-oriented normal form (3ONF), fourth object-oriented normal form (4ONF). 1 Introduction Nowadays many various kinds of object-oriented software applications are used practically. We have the long-term experience with Gemstone database and Smalltalk programming, for example. Although there already are many theoretical works individually demonstrating suitability of non-relational objectoriented data model, only the procedures based on experience with imperative object-oriented programming languages are used in the area of analysis and design of data structures. However some techniques like behavioral design patterns or object library components, which are optimal for algorithms in software application, can fundamentally complicate their eective database processing. As a consequence of this situation, we can see wrong usage of relationships and hierarchies among objects, breakneck tricks in code, etc. The problem of these applications is not that they do not work. Unfortunately really monstrous constructions work thanks to modern components and development systems and this
2 is why the discussion with designers about the need to rebuild their software is very hard. Moreover, relational design techniques as normalization, decomposition and synthesis cannot be easily used in object-oriented data structures. This is why various proposals of object-specic normalization techniques appeared in the world of software developer's community. Unfortunately no generally accepted and widely used technique or method for object-oriented data design has been introduced so far. Our solution to this problem is adapting the Ambler-Beck approach. It has been developed as a part of agile programming techniques. Our contribution is in modication of this approach towards specic data structures in object-oriented models. Therefore we decided to discuss the formal techniques of object-oriented design. A data structure is the fundament of almost all software applications and object technology becomes the mainstream. In addition, many myths exist in the community of object-oriented software vendors and developers. For example very popular is the myth about no need for any normalization, about easiness of programming etc. 2 The issue of dierent software technologies 2.1 MDA MDA is an abbreviation for Model Driven Architecture. MDA denes an approach that separates a specication of business system description (CIM Computation Independent Model) from its computer implementation specication (PIM Platform Independent Model); and this computer specication from the nal solution on a concrete technological platform (PSM Platform Specic Model). Each specication represents an individual viewpoint of the same problem. According to MDA, there is a mutual relationship between these three views, and the models should transform from one to another when a system is created. MDA is created and maintained by the Object Management Consortium [9]. 2.2 Object-oriented programming The object-oriented approach has its origins in the researching of operating systems, graphic user interfaces, and particularly in programming languages, that took place in the 1970s. It diers from other software engineering approaches by incorporating non-traditional ways of thinking into the eld of informatics. We look at systems by abstracting the real world in the same way as in ontological, philosophical streams. The basic element is an object that describes data structures and their behavior. In most other modeling approaches, data and behavior are described separately, and, to a certain extent, independently. OOP has been and still is explained in many books, but we think that this one [8] written by OOP pioneers, belongs to the best.
3 The OOP can be regarded as one implementation option of PSM of more possible implementation ways. The interesting question is the position of PIM. In ideal case, this model should be independent on the following PSM. However, this does not happen in practice. Either the object-oriented data model derived from the UML or older Entity-Relation data model, which is closer to the relational database technology, is usually used for conceptual modeling on the level of abstraction correspondent to PIM. If we try to gure out how the independent conceptual data model for PIM should really look like, we will nd out, that we need to use following modeling concepts: 1. Entity. 2. Link between entities - however we need to distinguish between: (a) IS-A relationship, i.e. taxonomy or inheritance, (b) ASSOCIATED-TO relationship, i.e. link creating tuples of entities, and (c) HAS-A relationship, i.e. link describing hierarchic structures or data compositions. Detailed overview of various approaches can be found in the table 1. It is obvious that on the conceptual modeling level, the relational data model and existing object-oriented data model are incompatible. That is why we presume that formal techniques known from the relational database eld are not suitable for object-oriented data modeling and vice versa. A concept of object identity is the next problem of simple adoption of relational technique for the object-oriented data model. In RDM, the identity of record is created by a value of chosen attributes (primary keys). In object data model identity of object is based on addresses into virtual memory and is independent on any value changes. 2.3 Object-oriented databases Database systems are based on various data models, e.g. network (and its subspecies hierarchical data model), relational, object-relational and object-oriented data model. Nowadays relational database model dominates. But recent practice shows that object databases are able to compete with relational databases. Object databases are based on two substantially dierent data models: 1. Object-relational (or hybrid) data model (ORDM) introduces an evolutionary trend of design. It concerns on addition of the original relational data model with the support of some structures and operations known from programming languages. Most of the big producers of relational database systems (e.g. Oracle) chose this alternative. Object relational data model stays principally the same relational data model, but with extended functionality.
4 feature model comment R Entity-Relational This is the traditional RDBMS model based on Chen. C Network This is the model of the network databases (IDMS). I no name This conceptual model does not exist in the Software Engineering. Or does anywhere? RC Hybrid Network-Relational This is the RDBMS model combined with data containers (e.g. NF 2 = non-rst normal form databases). RI Extended Entity-Relational This is the RDBMS model extended by the inheritance (e.g. IDEF1X). CI OOP Model This is the data model of the recent object-oriented programming languages (e.g. Java, Smalltalk, C#,...) and many programming-language-based OODBMS. RCI The Universal Conceptual Model This data model includes all conceptual features and reects the proposed ODMG 2.0 and 3.0 standard, but is not directly implemented in recent object-oriented programming languages. legend R - presence of the association relationship (i.e. RELATED-TO). C - presence of the composition relationship (i.e. HAS-A). I - presence of the inheritance relationship (i.e. IS-A). Table 1. Possible approaches of the conceptual data modeling.
5 2. Object-oriented data model (ODM) introduces a new revolutionary trend of development. It concerns new data model, which is not built as an extension of relational data model at all. The impedance problem with storing and retrieving of object-oriented data in relational and also in object-relational databases was the main reason for creating the ODM. This is the reason, why the construction of new database models, which would be able to work with objects better, has risen. ODM and RDM dier distinctively from each other. In RDM, tables are the only possible form of logical data representation and their physical storage as well. On the other hand, ODM is similar to network databases, as we knew them in IDMS systems. The ODM can be interpreted as the renaissance of network data model. In a very simple way, it can be described by the following equation: network data model + objects + methods + polymorphism = ODM It is reasonable to assume that the importance of object databases will grow in the near future, because there are now many applications, where objectoriented database shows its advantages. Common attribute of these applications is large amount of complex data structures and their variability during their lifetime. Those systems can work with more then hundred or thousand various mutually composed and changing data types. Moreover, the queries over these structures require common polymorphism and abstraction. In those systems, for example, we need to write down the queries over sets containing elements of various types. At the same time we expect that while adding or updating data types it will not be required to change already written queries and related data structures. Good example of those systems are data-warehouses. Those systems are characteristic not only for company management systems, but also for various governance evidence systems, hospital information systems and information systems containing ecological information, agricultural information, historiographical information as well, decision support in marketing and nance[11,15,12]. On the other hand it is necessary to note that relational database works very well in area, where database structure is constant. This means that new data types not are added during lifetime of such system. Moreover, relational databases traditionally achieve very good performance if the database consists of large amount but simply structured records. 3 Miscellaneous approaches to object-oriented normalization Some various papers aroused since 1980s (for example [16]). First papers applied to the enlargement of relational techniques, but we can meet the papers specialized to object-oriented data structures in recent last years. There are several research groups in the world interested in object databases. The results of their
6 studies are used in object databases construction. The international organization ODMG Object Database Management Group supports publications and conferences on this topic. 3.1 Nootenboom's OONF According to Hank Nootenboom the rst three relational normal forms are universally valid for the object-oriented data model as well as for other possible data models [13]. He introduces the concept of only one additional normal form for objects as a substitute for fourth and fth relational normal forms, having the following denition: A collection of objects is in OONF if it is in 3NF and contains meaningful data elements only. 3.2 Khodorkovsky's ONF, 4ONF, 5ONF and 6ONF The paper [10] proposes object normal forms, which concerns the right relation among objects and methods. The rules of the dened object normal forms are based on modication of relational denitions of 4NF, 5NF (and 6NF, which is author's original renement of 5NF). The author calls these modications of classical denitions as 4ONF, 5ONF and 6ONF. The paper is considered to be more elaborated formulation of almost similar ideas as the example above. The author says, that 1NF, 2NF and 3NF are common for relational and object databases. 3.3 Australian-Swiss ONF The authors [14] present only one ONF on various types of functional dependencies among objects. Concretely, path dependency concerns a composition of objects and navigability among objects, local dependency concerns relations of internal object and global dependency concerns behavioral requirements on application. Object-oriented structure is in ONF, if user requirements on applications are covered by a set of functional dependencies. This method relates to the behavioral requirement of object databases, but it is not specically focused on the conceptual modeling of data. 3.4 Three Ambler-Beck's object normal forms Ambler and Beck are pioneers of the agile approach in programming. They introduced three object-oriented normal forms for object-oriented applications. [1,2]. These normal forms are analogous with rst, second and third relational normal form. The authors talk about these object normal forms as a tool for objects classes' normalization complementary with technique of design patterns. Let's look at their proposals in detail:
7 A class is in 1ONF when specic behavior required by an attribute that is actually a collection of similar attributes is encapsulated within its own class. An object schema is in 1ONF when all of its classes are in 1ONF. Fig. 1. 0ONF Fig. 2. Ambler's and Beck's 1ONF It is evident from the denition and the example that authors wanted to build the rst normal form analogically to the rst relational normal form. From experience, it is little confusing that object can be non-normalized even if it already has associated collection of encapsulated objects. See attribute seminars of class Student in the gure 1. In this example the class Student contains the collection seminars, but the class Student is still in 0ONF. The
8 collection seminars from 0ONF does not dier much from the relation takes in 1ONF in the gure 2. The dierence between 0ONF and 1ONF is only in presence of specic methods of class Student. A class is in second object normal form (2ONF) when it is in 1ONF and when share behavior that is needed by more than one instance of the class is encapsulated within its own class(es). An object schema is in 2ONF when all of its classes are in 2ONF. Fig. 3. Ambler's and Beck's 2ONF As the denition and the example show, the 2ONF requires to detach attributes, which are shared by more objects, into separate objects. In our experience, this denition is well accepted. Also, this denition oers analogous result, as the second relational object form in relational databases. A class is in third object normal form (3ONF) when it is in 2ONF and when it encapsulates only one set of cohesive behaviors. An object schema is in 3ONF when all of its classes are in 3ONF.
9 Fig. 4. Ambler's and Beck's 3ONF It is possible to recognize, that the third and the last object normal form by Ambler gives analogous results as the third relational normal form. This is our experience as well. It concerns the characteristics within some objects, which might be interpreted and behave as an independent object. In this case we need to exclude them into new separate object. 4 Our experience We have good results with Ambler-Beck approach. But we have found that object-oriented community expects bit dierent technique: 1. It has to be very simple, precise, and understandable and should work with minimum of abstract concepts, similarly as the classical relational normalization. We suppose that introduction of dicult denitions distinctively exceeding over the range of classical normal forms by having a lot of types of concepts and relations, is not the right way. 2. It should be focused concretely on object-oriented modeling of data structures. We need to model structures of objects used for data storage and data manipulation. We do not need to model objects responsible for functional behavior of applications. For these another behavioral objects we already have design patterns and other programming techniques. We do not need to duplicate these proved techniques. We think that original Ambler's approach needlessly tries to solve everything in one. We have to dene, what do we exactly understand by the concept of data object. Data objects serve only for data storing and manipulation. We will not work
10 with data elements and with methods separately. This is proposed by [12]. We will dene only one common concept of an attribute. By an attribute, we will understand the data property of an object, regardless if the data property is coming from a data element or if this data property is a result of a method. Of course, there is a question, if such simplication is not too much. Ambler- Beck's original approach works separately with data and methods and uses both of them separately. But we think that we can allow this simplication for the data objects, because our approach is not aimed for behavioral design of application structure. 4.1 First normal form rule Denition 1. A class is in the rst object normal form (1ONF) when its objects do not contain group of repetitive attributes. Repetitive attributes must be extracted into objects of a new class. The group of repetitive attributes is then replaced by the link at the collection of the new objects. An object schema is in 1ONF when all of its classes are in 1ONF. More formally; Let us have an object a in the object system Ω as a Ω, where for k > 1 (length of collections of similar attributes) and n > 1 (number of repetition of these collections) is data(a) = [, x 1 1,, x 1 k,, xn 1,, x n k, ] having i (1,, k) : class(x 1 i ) = class(x2 i ) = = class(xn i ). Then it is required to modify object a and create new objects b j Ω for j (1,, n) as data(a) = [, {b j }, ] and data(b j ) = [x j 1,, xj k ]. Fig. 5. Unnormalized model In the gure 5 there is the example of data structure in non-normalized form and in the gure 6 there is the same example in 1ONF. On the contrary with the original Ambler-Beck's approach, we do not assume designers recognize groups of repetitive attributes automatically and extract them out into independent classes. The problem is not always trivial as in presented example. Repetitive attributes can exist under various names, which are not easy visible on the rst sight.
11 Fig. 6. Model in 1ONF 4.2 Second normal form rule Denition 2. A class is in the second object normal form (2ONF) when it is in 1ONF and when its objects do not contain attribute or group of attributes, which are shared with another object. Shared attributes must be extracted into new objects of a new class, and in all objects, where they appeared, must be replaced by the link to the object of the new class. An object schema is in 2ONF when all of its classes are in 2ONF. More formally; Let us have two objects a, b Ω for k > 1 (length of a collection of shared attributes) as data(a) = [, x 1,, x k, ] and data(b) = [, y 1,, y k, ] having i (1,, k) : x i = y i. Then it is required to modify objects a and b and create new object c Ω as data(a) = [, c, ] and data(b) = [, c, ] and data(c) = [x 1,, x k ] = [y 1,, y k ]. Fig. 7. Model in 2ONF It concerns the attributes supplier's rst name, supplier's surname and his address and client's rst name, client's surname, his address and method of payment in our example. Because these attributes are common for both concrete order and supply, it was necessary to create the new object class Contract. 4.3 Third normal form rule Denition 3. A class is in the third object normal form (3ONF) when it is in 2ONF and when its objects do not contain attribute or group of attributes, which
12 have the independent interpretation in the modeled system. These attributes must be extracted into objects of a new class and in objects, where they appeared, must be replaced by the link to this new object. An object schema is in 3ONF when all of its classes are in 3ONF. More formally; Let us have an object a Ω for k > 1 (length of a collection of independent attributes) having data(a) = [, x 1,, x k, ], where [x 1,, x k ] is collection of independent attributes. Then it is required to create new object b Ω and modify object a as data(a) = [, b, ] and data(b) = [x 1,, x k ]. Fig. 8. Model in 3ONF It concerns the data about suppliers and clients in the objects of the class Contract. These attributes represent some persons having independent interpretation on contracts. The same applies to addresses. 4.4 Fourth normal form rule Denition 4. A class is in the fourth object normal form (4ONF) when it is in 3ONF and when there is no other class in the system, which denes the same attributes. These attributes must be extracted from classes, where they are duplicated, and aected classes must be connected using class inheritance in order to exclude data denition duplicates. If there is no existing class to be reused as a inheritance superclass, a new superclass must be added into the system. An object schema is in 4ONF when all of its classes are in 4ONF. More formally; For each two objects a, b in the object system Ω as a, b Ω having data(a) = [x 1,, x k ] and data(b) = [, y 1,, y k, ] where i (1,, k) : class(x i ) = class(y i ), classes of these objects a, b must have inheritance relationship as class (a) class (b) in order to avoid duplicates. 5 Conclusion It is a pity, that so perspective and practically used technology the objectoriented approach still does not have comprehensible and universally accepted
13 theoretical foundation and formal techniques. It is known, that several research centers are interested in this theme, but any coherent and widely accepted results were not yet published in recent years. Absence of reputable formal tools and techniques is the big problem of this promising technology. Therefore we suppose that near future may bring maybe some alternative approaches, more or less similar to our approach we presented in this paper. Our method has been used in education at University of Thessaly in Volos, Alexandrian Technological Institute in Thessaloniki, Lehigh University in Pennsylvania, Czech Technical University and Czech University of Life Sciences. It was also used for database design in software development projects, which we carried out for a large international consulting company Deloitte. Recently, the project on object-oriented CASE tool supporting this approach sponsored by a consortium of software companies has been started. Our future research will focus on describing the rules of our object-oriented normal forms as a sequence of refactoring steps. References 1. Ambler Scott: Building Object Applications That Work, Your Step-By-Step Handbook for Developing Robust Systems Using Object Technology, Cambridge University Press/SIGS Books, 1997, ISBN Ambler Scott: Object Orientation Bringing data professionals and application developers together, [online] January 2009, 3. Barry D.: The Object Database Handbook: How to Select, Implement, and Use Object-Oriented Databases, John Wiley & Sons, 1996, ISBN Beck K.: Agile Database Techniques- Eective Strategies for the Agile Software Developer, John Wiley & Sons 2003, ISBN Blaha M., Premerlani M.: Object-Oriented Modeling and Design for Database Applications, Prentice Hall 1998, ISBN Catell R. G.: The Object Data Normal: ODMG 3.0, Morgan Kaufmann 2000, ISBN Gemstone Object Server documentation & non-commercial version download, [online], January 2009, 8. Goldberg Adele, Kenneth Rubin S.: Succeeding with Objects - Decision Frameworks for Project Management, Addison Wesley 1995, ISBN David S. Frankel. Model Driven Architecture: Applying MDA to Enterprise Computing. John Wiley & Sons 2003, ISBN Khodorkovsky V. V.: On Normalization of Relations in Databases, Programming and Computer Software 28 (1), 41-52, January 2002, Nauka Interperiodica. 11. Kroha P.: Objects and Databases, McGraw Hill, London 1995, ISBN Loomis M., Chaundri A.: Object Databases in Practice, ISBN X 13. Nootenboom Henk Jan: Nuts - a online column about software design Tari Zahir, Stokes John, Spaccapietra Stefano: Object Normal Forms and Dependency Constraints for Object-Oriented Schemata, ACM Transactions on Database Systems , Vol 22 Issue 4, December Vanicek Jiri, Data Gathering for Science and Research, Agricultural Economics, 50, 2004 (1),
14 16. Wai Y. Mok, Yiu-Kai Ng and David W. Embley, An Improved Nested Normal Form for Use in Object-Oriented Software Systems. Proceedings of the 2nd International Computer Science Conference: Data and Knowledge Engineering: Theory and Applications, pp , Hong Kong, December Yonghui Wu, Zhou Aoying: Research on Normalization Design for Complex Object Schemes, Info-Tech and Info-Net, vol , Proceedings of ICII 2001, Beijing.
Managing large sound databases using Mpeg7
Max Jacob 1 1 Institut de Recherche et Coordination Acoustique/Musique (IRCAM), place Igor Stravinsky 1, 75003, Paris, France Correspondence should be addressed to Max Jacob ([email protected]) ABSTRACT
programming languages, programming language standards and compiler validation
Software Quality Issues when choosing a Programming Language C.J.Burgess Department of Computer Science, University of Bristol, Bristol, BS8 1TR, England Abstract For high quality software, an important
Agile Approach and MDA in Software Development Process
Agile Approach and MDA in Software Development Process JaroslavaKniežová, Ing. PhD. Associate Professor Comenius University Faculty of Management Department of Information Systems Bratislava, Slovakia
Handling Spatial Objects in a GIS Database -Relational v Object Oriented Approaches
Handling Spatial Objects in a GIS Database -Relational v Object Oriented Approaches Paul Crowther 1 and Jacky Hartnett 2 1 Sheffield Hallam University, School of Computing and Management Sciences, United
Agile Techniques for Object Databases
db4o The Open Source Object Database Java and.net Agile Techniques for Object Databases By Scott Ambler 1 Modern software processes such as Rational Unified Process (RUP), Extreme Programming (XP), and
Using Object And Object-Oriented Technologies for XML-native Database Systems
Using Object And Object-Oriented Technologies for XML-native Database Systems David Toth and Michal Valenta David Toth and Michal Valenta Dept. of Computer Science and Engineering Dept. FEE, of Computer
From Business World to Software World: Deriving Class Diagrams from Business Process Models
From Business World to Software World: Deriving Class Diagrams from Business Process Models WARARAT RUNGWORAWUT 1 AND TWITTIE SENIVONGSE 2 Department of Computer Engineering, Chulalongkorn University 254
TOGAF usage in outsourcing of software development
Acta Informatica Pragensia 2(2), 2013, 68 76, DOI: 10.18267/j.aip.25 Section: Online: aip.vse.cz Peer-reviewed papers TOGAF usage in outsourcing of software development Aziz Ahmad Rais 1, Rudolf Pecinovsky
A COMPARATIVE STUDY BETWEEN THE PERFORMANCE OF RELATIONAL & OBJECT ORIENTED DATABASE IN DATA WAREHOUSING
A COMPARATIVE STUDY BETWEEN THE PERFORMANCE OF RELATIONAL & OBJECT ORIENTED DATABASE IN DATA WAREHOUSING Dr. (Mrs Pushpa Suri) 1 and Mrs Meenakshi Sharma 2 1 Associate professor, Department of Computer
Masters of Science in Software & Information Systems
Masters of Science in Software & Information Systems To be developed and delivered in conjunction with Regis University, School for Professional Studies Object Oriented Design Table of Contents January
Overview RDBMS-ORDBMS- OODBMS
Overview RDBMS-ORDBMS- OODBMS 1 Database Models Transition Hierarchical Data Model Network Data Model Relational Data Model ER Data Model Semantic Data Model Object-Relational DM Object-Oriented DM 2 Main
Model Driven Interoperability through Semantic Annotations using SoaML and ODM
Model Driven Interoperability through Semantic Annotations using SoaML and ODM JiuCheng Xu*, ZhaoYang Bai*, Arne J.Berre*, Odd Christer Brovig** *SINTEF, Pb. 124 Blindern, NO-0314 Oslo, Norway (e-mail:
How To Teach Object Oriented Programming At An Introductory Level Course
149 TEACHING OBJECT ORIENTED PROGRAMMING AT THE INTRODUCTORY LEVEL Mehmet C. OKUR * ABSTRACT Teaching object oriented programming has become a rapidly expanding preference at various educational environments.
Reverse Engineering of Relational Databases to Ontologies: An Approach Based on an Analysis of HTML Forms
Reverse Engineering of Relational Databases to Ontologies: An Approach Based on an Analysis of HTML Forms Irina Astrova 1, Bela Stantic 2 1 Tallinn University of Technology, Ehitajate tee 5, 19086 Tallinn,
THE IMPACT OF INHERITANCE ON SECURITY IN OBJECT-ORIENTED DATABASE SYSTEMS
THE IMPACT OF INHERITANCE ON SECURITY IN OBJECT-ORIENTED DATABASE SYSTEMS David L. Spooner Computer Science Department Rensselaer Polytechnic Institute Troy, New York 12180 The object-oriented programming
sql-schema-comparer: Support of Multi-Language Refactoring with Relational Databases
sql-schema-comparer: Support of Multi-Language Refactoring with Relational Databases Hagen Schink Institute of Technical and Business Information Systems Otto-von-Guericke-University Magdeburg, Germany
Chapter 4 Multi-Stage Interconnection Networks The general concept of the multi-stage interconnection network, together with its routing properties, have been used in the preceding chapter to describe
Object Oriented Database Management System for Decision Support System.
International Refereed Journal of Engineering and Science (IRJES) ISSN (Online) 2319-183X, (Print) 2319-1821 Volume 3, Issue 6 (June 2014), PP.55-59 Object Oriented Database Management System for Decision
Designing Real-Time and Embedded Systems with the COMET/UML method
By Hassan Gomaa, Department of Information and Software Engineering, George Mason University. Designing Real-Time and Embedded Systems with the COMET/UML method Most object-oriented analysis and design
Enterprise Frameworks: Guidelines for Selection
Enterprise Frameworks: Guidelines for Selection Mohamed E. Fayad, University of Nebraska, Lincoln David S. Hamu, TRW [email protected], [email protected] An Enterprise Framework (EF) is a software architecture.
Comparison of Model-Driven Architecture and Software Factories in the Context of Model-Driven Development
Comparison of Model-Driven Architecture and Software Factories in the Context of Model-Driven Development Ahmet Demir Technische Universität München Department of Informatics Munich, Germany [email protected]
DATABASE MANAGEMENT SYSTEM
REVIEW ARTICLE DATABASE MANAGEMENT SYSTEM Sweta Singh Assistant Professor, Faculty of Management Studies, BHU, Varanasi, India E-mail: [email protected] ABSTRACT Today, more than at any previous
Department of Computer and Information Science, Ohio State University. In Section 3, the concepts and structure of signature
Proceedings of the 2nd International Computer Science Conference, Hong Kong, Dec. 1992, 616-622. 616 SIGNATURE FILE METHODS FOR INDEXING OBJECT-ORIENTED DATABASE SYSTEMS Wang-chien Lee and Dik L. Lee Department
Object Oriented Databases. OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar
Object Oriented Databases OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar Executive Summary The presentation on Object Oriented Databases gives a basic introduction to the concepts governing OODBs
Software Engineering. System Models. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering System Models Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain why the context of a system should be modeled as part of the RE process To describe
Clarifying a vision on certification of MDA tools
SCIENTIFIC PAPERS, UNIVERSITY OF LATVIA, 2010. Vol. 757 COMPUTER SCIENCE AND INFORMATION TECHNOLOGIES 23 29 P. Clarifying a vision on certification of MDA tools Antons Cernickins Riga Technical University,
Foundations of Model-Driven Software Engineering
Model-Driven Software Engineering Foundations of Model-Driven Software Engineering Dr. Jochen Küster ([email protected]) Contents Introduction to Models and Modeling Concepts of Model-Driven Software
Files. Files. Files. Files. Files. File Organisation. What s it all about? What s in a file?
Files What s it all about? Information being stored about anything important to the business/individual keeping the files. The simple concepts used in the operation of manual files are often a good guide
OBJECT-ORIENTED PROCESS MODELING AND SIMULATION BORM EXPERIENCE
Trakia Journal of Sciences, Vol. 8, Suppl. 3, pp 71-87, 2010 Copyright 2009 Trakia University Available online at: http://www.uni-sz.bg ISSN 1313-7069 (print) ISSN 1313-3551 (online) OBJECT-ORIENTED PROCESS
5.5 Copyright 2011 Pearson Education, Inc. publishing as Prentice Hall. Figure 5-2
Class Announcements TIM 50 - Business Information Systems Lecture 15 Database Assignment 2 posted Due Tuesday 5/26 UC Santa Cruz May 19, 2015 Database: Collection of related files containing records on
XXI. Object-Oriented Database Design
XXI. Object-Oriented Database Design Object-Oriented Database Management Systems (OODBMS) Distributed Information Systems and CORBA Designing Data Management Classes The Persistent Object Approach The
CHALLENGES AND WEAKNESSES OF AGILE METHOD IN ENTERPRISE ARCHITECTURE
CHALLENGES AND WEAKNESSES OF AGILE METHOD IN ENTERPRISE ARCHITECTURE Zahra Askarinejad Amiri 1 1 Department of Computer Engineering, Staffordshire University ABSTRACT [email protected] As Information
The BPM to UML activity diagram transformation using XSLT
The BPM to UML activity diagram transformation using XSLT Ondřej Macek 1 and Karel Richta 1,2 1 Department of Computer Science and Engineering, Faculty of Electrical Engineering, Czech Technical University,
How To Write A Diagram
Data Model ing Essentials Third Edition Graeme C. Simsion and Graham C. Witt MORGAN KAUFMANN PUBLISHERS AN IMPRINT OF ELSEVIER AMSTERDAM BOSTON LONDON NEW YORK OXFORD PARIS SAN DIEGO SAN FRANCISCO SINGAPORE
14 Databases. Source: Foundations of Computer Science Cengage Learning. Objectives After studying this chapter, the student should be able to:
14 Databases 14.1 Source: Foundations of Computer Science Cengage Learning Objectives After studying this chapter, the student should be able to: Define a database and a database management system (DBMS)
A Conceptual Approach to Data Visualization for User Interface Design of Smart Grid Operation Tools
A Conceptual Approach to Data Visualization for User Interface Design of Smart Grid Operation Tools Dong-Joo Kang and Sunju Park Yonsei University [email protected], [email protected] Abstract
Foundations of Business Intelligence: Databases and Information Management
Foundations of Business Intelligence: Databases and Information Management Content Problems of managing data resources in a traditional file environment Capabilities and value of a database management
Chapter 6 FOUNDATIONS OF BUSINESS INTELLIGENCE: DATABASES AND INFORMATION MANAGEMENT Learning Objectives
Chapter 6 FOUNDATIONS OF BUSINESS INTELLIGENCE: DATABASES AND INFORMATION MANAGEMENT Learning Objectives Describe how the problems of managing data resources in a traditional file environment are solved
Business Modeling with UML
Business Modeling with UML Hans-Erik Eriksson and Magnus Penker, Open Training Hans-Erik In order to keep up and be competitive, all companies Ericsson is and enterprises must assess the quality of their
Software Quality Factors OOA, OOD, and OOP Object-oriented techniques enhance key external and internal software quality factors, e.g., 1. External (v
Object-Oriented Design and Programming Deja Vu? In the past: Structured = Good Overview of Object-Oriented Design Principles and Techniques Today: Object-Oriented = Good e.g., Douglas C. Schmidt www.cs.wustl.edu/schmidt/
Common Criteria For Information Technology Security Evaluation
Security Characterisation and Integrity Assurance for Software Components and Component-Based Systems Jun Han and Yuliang Zheng Peninsula School of Computing and Information Technology Monash University,
History of Database Systems
History of Database Systems By Kaushalya Dharmarathna(030087) Sandun Weerasinghe(040417) Early Manual System Before-1950s Data was stored as paper records. Lot of man power involved. Lot of time was wasted.
Object models and Databases. Contents
: Object models and Databases by Robin Beaumont e-mail: [email protected] Contents 2. LEARNING OUTCOMES CHECK LIST FOR THE SESSION... 2-2 3. INTRODUCTION... 3-3 4. A STRATEGY FOR SPECIFYING
BUSINESS RULES AS PART OF INFORMATION SYSTEMS LIFE CYCLE: POSSIBLE SCENARIOS Kestutis Kapocius 1,2,3, Gintautas Garsva 1,2,4
International Conference 20th EURO Mini Conference Continuous Optimization and Knowledge-Based Technologies (EurOPT-2008) May 20 23, 2008, Neringa, LITHUANIA ISBN 978-9955-28-283-9 L. Sakalauskas, G.W.
Foundations of Business Intelligence: Databases and Information Management
Chapter 6 Foundations of Business Intelligence: Databases and Information Management 6.1 2010 by Prentice Hall LEARNING OBJECTIVES Describe how the problems of managing data resources in a traditional
Component visualization methods for large legacy software in C/C++
Annales Mathematicae et Informaticae 44 (2015) pp. 23 33 http://ami.ektf.hu Component visualization methods for large legacy software in C/C++ Máté Cserép a, Dániel Krupp b a Eötvös Loránd University [email protected]
Java (12 Weeks) Introduction to Java Programming Language
Java (12 Weeks) Topic Lecture No. Introduction to Java Programming Language 1 An Introduction to Java o Java as a Programming Platform, The Java "White Paper" Buzzwords, Java and the Internet, A Short
Architecture bits. (Chromosome) (Evolved chromosome) Downloading. Downloading PLD. GA operation Architecture bits
A Pattern Recognition System Using Evolvable Hardware Masaya Iwata 1 Isamu Kajitani 2 Hitoshi Yamada 2 Hitoshi Iba 1 Tetsuya Higuchi 1 1 1-1-4,Umezono,Tsukuba,Ibaraki,305,Japan Electrotechnical Laboratory
Chapter 1: Key Concepts of Programming and Software Engineering
Chapter 1: Key Concepts of Programming and Software Engineering Software Engineering Coding without a solution design increases debugging time - known fact! A team of programmers for a large software development
Design by Contract beyond class modelling
Design by Contract beyond class modelling Introduction Design by Contract (DbC) or Programming by Contract is an approach to designing software. It says that designers should define precise and verifiable
Object Oriented Databases (OODBs) Relational and OO data models. Advantages and Disadvantages of OO as compared with relational
Object Oriented Databases (OODBs) Relational and OO data models. Advantages and Disadvantages of OO as compared with relational databases. 1 A Database of Students and Modules Student Student Number {PK}
XFlash A Web Application Design Framework with Model-Driven Methodology
International Journal of u- and e- Service, Science and Technology 47 XFlash A Web Application Design Framework with Model-Driven Methodology Ronnie Cheung Hong Kong Polytechnic University, Hong Kong SAR,
Database Optimizing Services
Database Systems Journal vol. I, no. 2/2010 55 Database Optimizing Services Adrian GHENCEA 1, Immo GIEGER 2 1 University Titu Maiorescu Bucharest, Romania 2 Bodenstedt-Wilhelmschule Peine, Deutschland
10. Creating and Maintaining Geographic Databases. Learning objectives. Keywords and concepts. Overview. Definitions
10. Creating and Maintaining Geographic Databases Geographic Information Systems and Science SECOND EDITION Paul A. Longley, Michael F. Goodchild, David J. Maguire, David W. Rhind 005 John Wiley and Sons,
Chapter 2. Data Model. Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel
Chapter 2 Data Model Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel 1 In this chapter, you will learn: Why data models are important About the basic data-modeling
Bringing Business Objects into ETL Technology
Bringing Business Objects into ETL Technology Jing Shan Ryan Wisnesky Phay Lau Eugene Kawamoto Huong Morris Sriram Srinivasn Hui Liao 1. Northeastern University, [email protected] 2. Stanford University,
U III 5. networks & operating system o Several competing DOC standards OMG s CORBA, OpenDoc & Microsoft s ActiveX / DCOM. Object request broker (ORB)
U III 1 Design Processes Design Axioms Class Design Object Storage Object Interoperability Design Processes: - o During the design phase the classes identified in OOA must be revisited with a shift in
ObjectOrientedDatabaseManagementSystemsConceptsAdvantagesLimitationsandComparativeStudywithRelationalDatabaseManagementSystems
Global Journal of Computer Science and Technology: C Software & Data Engineering Volume 15 Issue 3 Version 1.0 Year 2015 Type: Double Blind Peer Reviewed International Research Journal Publisher: Global
Chapter 8 Approaches to System Development
Systems Analysis and Design in a Changing World, sixth edition 8-1 Chapter 8 Approaches to System Development Table of Contents Chapter Overview Learning Objectives Notes on Opening Case and EOC Cases
USING UML FOR OBJECT-RELATIONAL DATABASE SYSTEMS DEVELOPMENT: A FRAMEWORK
USING UML FOR OBJECT-RELATIONAL DATABASE SYSTEMS DEVELOPMENT: A FRAMEWORK Ming Wang, California State University, [email protected] ABSTRACT Data model of object-relational databases (ORDBs) is
II. TYPES OF LEVEL A.
Study and Evaluation for Quality Improvement of Object Oriented System at Various Layers of Object Oriented Matrices N. A. Nemade 1, D. D. Patil 2, N. V. Ingale 3 Assist. Prof. SSGBCOET Bhusawal 1, H.O.D.
Development of Performance Management Systems Dmitry Isaev Business Analytics Department Higher School of Economics (HSE) Moscow, Russian Federation [email protected] Abstract In the paper basic principles
Applying Object-Oriented Principles to the Analysis and Design of Learning Objects
Applying Object-Oriented Principles to the Analysis and Design of Learning Objects Chrysostomos Chrysostomou and George Papadopoulos Department of Computer Science, University of Cyprus, Nicosia, Cyprus
COCOVILA Compiler-Compiler for Visual Languages
LDTA 2005 Preliminary Version COCOVILA Compiler-Compiler for Visual Languages Pavel Grigorenko, Ando Saabas and Enn Tyugu 1 Institute of Cybernetics, Tallinn University of Technology Akadeemia tee 21 12618
Linked Data Interface, Semantics and a T-Box Triple Store for Microsoft SharePoint
Linked Data Interface, Semantics and a T-Box Triple Store for Microsoft SharePoint Christian Fillies 1 and Frauke Weichhardt 1 1 Semtation GmbH, Geschw.-Scholl-Str. 38, 14771 Potsdam, Germany {cfillies,
Axiomatic design of software systems
Axiomatic design of software systems N.P. Suh (1), S.H. Do Abstract Software is playing an increasingly important role in manufacturing. Many manufacturing firms have problems with software development.
On General-purpose Textual Modeling Languages. On General-purpose Textual Modeling Languages
On General-purpose Textual Modeling Languages On General-purpose Textual Modeling Languages Martin Mazanec and Ondřej Macek Martin Mazanec and Ondřej Macek Department of Computer Science, FEL, Czech Technical
Java Application Developer Certificate Program Competencies
Java Application Developer Certificate Program Competencies After completing the following units, you will be able to: Basic Programming Logic Explain the steps involved in the program development cycle
Button, Button, Whose got the Button?
,, Whose got the?,, Whose got the? (Patterns for breaking client/server relationships) By Robert C. Martin Introduction How many design patterns does it take to turn on a table lamp? This question was
Applying MDA in Developing Intermediary Service for Data Retrieval
Applying MDA in Developing Intermediary Service for Data Retrieval Danijela Boberić Krstićev University of Novi Sad Faculty of Sciences Trg Dositeja Obradovića 4, Novi Sad Serbia +381214852873 [email protected]
Selbo 2 an Environment for Creating Electronic Content in Software Engineering
BULGARIAN ACADEMY OF SCIENCES CYBERNETICS AND INFORMATION TECHNOLOGIES Volume 9, No 3 Sofia 2009 Selbo 2 an Environment for Creating Electronic Content in Software Engineering Damyan Mitev 1, Stanimir
Generating Enterprise Applications from Models
Generating Enterprise Applications from Models Vinay Kulkarni, R Venkatesh, Sreedhar Reddy Tata Research Development and Design Centre, 54, Industrial estate, Hadapsar, Pune, 411 013, INDIA { vinayk, rvenky,
A Web-Based Requirements Analysis Tool. Annie I. Anton. Eugene Liang. Roy A. Rodenstein. fanton,eugene,[email protected]
A Web-Based Requirements Analysis Tool Annie I. Anton Eugene Liang Roy A. Rodenstein fanton,eugene,[email protected] College of Computing Georgia Institute of Technology Atlanta, GA 30332-0280 Abstract
Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming
Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming Java has become enormously popular. Java s rapid rise and wide acceptance can be traced to its design
Evaluating OO-CASE tools: OO research meets practice
Evaluating OO-CASE tools: OO research meets practice Danny Greefhorst, Matthijs Maat, Rob Maijers {greefhorst, maat, maijers}@serc.nl Software Engineering Research Centre - SERC PO Box 424 3500 AK Utrecht
4. Incorporate Lessons Learned with SDLC
131 4. Incorporate Lessons Learned with SDLC In today s world, there are lots of Software Development Life Cycle Models. We have seen some of them earlier. We have seen the analytical study of these models
Object Oriented Design
Object Oriented Design Kenneth M. Anderson Lecture 20 CSCI 5828: Foundations of Software Engineering OO Design 1 Object-Oriented Design Traditional procedural systems separate data and procedures, and
Performance Comparison of Persistence Frameworks
Performance Comparison of Persistence Frameworks Sabu M. Thampi * Asst. Prof., Department of CSE L.B.S College of Engineering Kasaragod-671542 Kerala, India [email protected] Ashwin A.K S8, Department
ARCHITECTURAL DESIGN OF MODERN WEB APPLICATIONS
ARCHITECTURAL DESIGN OF MODERN WEB APPLICATIONS Lech MADEYSKI *, Michał STOCHMIAŁEK Abstract. Architectural design is about decisions which influence characteristics of arising system e.g. maintainability
A Proposal for Constructing Relational Database from Class Diagram
A Proposal for Constructing Relational Database from Class Diagram Mohd Zainuri Saringat Faculty of Information Technology and Multimedia Universiti Tun Hussein Onn Malaysia Parit Raja, Batu Pahat, 86400,
IRA 423/08. Designing the SRT control software: Notes to the UML schemes. Andrea Orlati 1 Simona Righini 2
Designing the SRT control software: Notes to the UML schemes Andrea Orlati 1 Simona Righini 2 1 - I.N.A.F. Istituto di Radioastronomia. 2 Dip. Astronomia - Università degli Studi di Bologna. Dicembre 2008
IS YOUR DATA WAREHOUSE SUCCESSFUL? Developing a Data Warehouse Process that responds to the needs of the Enterprise.
IS YOUR DATA WAREHOUSE SUCCESSFUL? Developing a Data Warehouse Process that responds to the needs of the Enterprise. Peter R. Welbrock Smith-Hanley Consulting Group Philadelphia, PA ABSTRACT Developing
Open Source egovernment Reference Architecture Osera.modeldriven.org. Copyright 2006 Data Access Technologies, Inc. Slide 1
Open Source egovernment Reference Architecture Osera.modeldriven.org Slide 1 Caveat OsEra and the Semantic Core is work in progress, not a ready to use capability Slide 2 OsEra What we will cover OsEra
