Multidimensional Modeling with UML Package Diagrams
|
|
|
- Hillary Dennis
- 9 years ago
- Views:
Transcription
1 Multidimensional Modeling with UML Package Diagrams Sergio Luján-Mora 1, Juan Trujillo 1, and Il-Yeol Song 2 1 Dept. de Lenguajes y Sistemas Informáticos Universidad de Alicante (Spain) {slujan,jtrujillo}@dlsi.ua.es 2 College of Information Science and Technology Drexel University (USA) [email protected] Abstract. The Unified Modeling Language (UML) has become the de facto standard for object-oriented analysis and design, providing different diagrams for modeling different aspects of a system. In this paper, we present the development of multidimensional (MD) models for data warehouses (DW) using UML package diagrams. In this way, when modeling complex and large DW systems, we are not restricted to use flat UML class diagrams. We present design guidelines and illustrate them with various examples. We show that the correct use of the package diagrams using our design guidelines will produce a very simple yet powerful design of MD models. Furthermore, we provide a UML extension by means of stereotypes of the particular package items we use. Finally, we show how to use these stereotypes in Rational Rose 2000 for MD modeling. Keywords: UML, multidimensional modeling, data warehouses, UML extension, UML packages 1 Introduction Multidimensional (MD) modeling is the foundation of data warehouses (DW), MD databases, and OLAP applications. These systems provide companies with many years of historical information for the decision making process. MD modeling structures information into facts and dimensions. A fact table contains interesting measures of a business process (sales, deliveries, etc.), whereas a dimension table represents the context for analyzing a fact (product, customer, time, etc.). Various approaches for the conceptual design of MD systems have been proposed in the last few years [1][2][3][4] to represent main MD structural and dynamic properties. However, none of them has been accepted as a standard conceptual model for MD modeling. Due to space constraints, we refer the reader to [5] for a detailed comparison and discussion about most of these models. This paper has been partially supported by the Spanish Ministery of Science and Technology, project number TIC C02-02.
2 On the other hand, the Unified Modeling Language (UML) [6] has been widely accepted as the standard object-oriented (OO) modeling language for describing and designing various aspects of software systems. Therefore, any approach using the UML will minimize the efforts of developers in learning new diagrams or methodologies for every subsystem to be modeled. Following this consideration, we have previously proposed in [7] an OO conceptual MD modeling approach, based on the UML, for a powerful conceptual MD modeling. This proposal considers major relevant MD properties at the conceptual level in an elegant and easy way. In this paper, we start from our previously presented approach [7] and show how to apply the grouping mechanism called package provided by the UML. A package groups classes together into higher level units creating different levels of abstraction, and therefore, simplifying the final model. In this way, when modeling complex and large data warehouse systems, we are not restricted to use flat UML class diagrams. Furthermore, based on our experience in developing real world cases, we provide design guidelines to properly and easily apply packages to MD modeling. These design guidelines are extremely relevant for two reasons. First, the UML Specification does not formally define how to apply packages, and therefore, different people may use them in different ways. Second, these guidelines are very close to the natural way both designers and analyzers understand and accomplish MD modeling. Our experience indicates that these guidelines produce a very simple yet powerful design of large and complex MD models. To facilitate the MD modeling using our package diagrams, we provide a UML extension by using stereotypes of the particular package items we define. Our extension uses the Object Constraint Language (OCL) [6] for expressing well-formedness rules of the new defined elements, thereby avoiding an arbitrary use of our extension. Finally, we use these package stereotypes in Rational Rose 2000 for MD modeling to show the applicability of our proposal. The remainder of the paper is structured as follows: Section 2 briefly presents other works related to grouping mechanisms in conceptual modeling. Section 3 summarizes how we have previously used the UML for proper conceptual MD modeling. Section 4 presents our design guidelines for using packages in MD modeling. Section 5 presents a case study to show how our guidelines are properly applied for MD modeling. Section 6 presents the definition of our UML extension in terms of package stereotypes. Section 7 shows how to apply our package extension in Rational Rose. Finally, Section 8 presents the main conclusions and introduces our immediate future work. 2 Related Work The benefits of layering modeling diagrams have been widely recognized. Different modeling techniques, such as Data Flow Diagrams, Functional Modeling (IDEF0), Entity Relationship Model (ER) and the UML make use of some kind of layering mechanism.
3 Focusing on the aim of this paper, i.e. data modeling, several approaches have been proposed to provide grouping mechanisms to the ER to simplify complex diagrams. In [8], the Clustered Entity Model, one of the early attempts at layering ER diagrams, is presented. In this approach, an ER diagram at a lower level appears as an entity on the next level. In [9], a model and a technique for clustering entities in an ER diagram is described. This modeling technique refines ER diagrams into higher-level objects that lead to a description of the conceptual database on a single page. The great benefit of this proposal is that it increases the clarity of the database description, and therefore, facilitates a better communication between end-users and the database designer. In [10], the Leveled Entity Relationship Model presents another layering formalism for ER diagrams. Regarding the UML, and as it is stated in [11], There are different views about how to use UML to develop software systems. The UML is a complex modeling language and it lacks a systematic way of guiding the users through the development of systems. With respect to packages, the UML defines them as a mechanism to simplify complex UML diagrams. However, no formal design guidelines regarding how to properly use them are clearly stated. In this context, many text books and authors have provided guidelines to apply packages in general or in a specific domain. For example, Fowler states [12]: I use the term package diagram for a diagram that shows packages of classes and the dependencies among them. In a specific domain such as web applications, Conallen states [13] that A package is merely a mechanism to divide the model into more manageable pieces and Try to avoid making the package hierarchy match the semantics of the business, and instead use packages as a means of managing the model. The author proposes to make packages comprehensible, cohesive, loosely coupled and hierarchically shallow. To the best of our knowledge, no work has been presented showing the benefits of using UML packages for MD modeling. On the other hand, there have lately been proposed several approaches to accomplish the conceptual design of data warehouses following the MD paradigm. Due to space constraints, we will only make a brief reference to those works which are close to the research topic of this paper [1][2][3][4]. These MD models are mainly conceived to gain user requirements and provide an easy to be used but yet powerful set of graphical elements to facilitate the task of conceptual modeling as well as the specification of queries. Both [2] and [3] extend the ER model to use it for MD modeling providing specific items such as facts, dimension levels and so on. [1] and [4] propose different graphical notations for data warehouse conceptual design. Motivation: All the above-commented MD approaches use flat design in the sense that all the elements that form a MD model (e.g. facts, dimensions, classification hierarchies and so on) are represented in the same diagram at the same level. Therefore, these approaches are not often suitable for huge and complex MD models in which several facts share many dimensions and their classification hierarchies, thereby leading to cluttered diagrams that are very difficult to read. Based on our experience in designing real-world cases, we argue
4 that in most cases we need an approach that structures the design of complex data warehouses at different levels. 3 Object-Oriented Multidimensional Modeling In this section, we summarize 1 how an OO MD model can represent main structural aspects of MD modeling. The main features considered are the many-tomany relationships between facts and dimensions, degenerate dimensions, multiple and alternative path classification hierarchies, and non-strict and complete hierarchies. In this approach, the main structural properties of MD models are specified by means of a UML class diagram in which the information is clearly separated into facts and dimensions. Dimensions and facts are represented by dimension classes and fact classes, respectively. Then, fact classes are specified as composite classes in shared aggregation relationships of n dimension classes. The flexibility of shared aggregation in the UML allows us to represent many-to-many relationships between facts and particular dimensions by indicating the 1..* cardinality on the dimension class role. In our example in Fig. 1 (a), we can see how the fact class Sales has a many-to-one relationship with both dimension classes. By default, all measures in the fact class are considered additive. For nonadditive measures, additive rules are defined as constraints and are included in the fact class. Furthermore, derived measures can also be explicitly considered (indicated by / ) and their derivation rules are placed between braces near the fact class, as shown in Fig. 1 (a). This OO approach also allows us to define identifying attributes in the fact class, by placing the constraint {OID} next to an attribute name. In this way we can represent degenerate dimensions [14][15], thereby representing other fact features in addition to the measures for analysis. For example, we could store the ticket number (ticket_num) and the line number (line_num) as degenerate dimensions, as reflected in Fig. 1 (a). With respect to dimensions, every classification hierarchy level is specified by a class (called a base class). An association of classes specifies the relationships between two levels of a classification hierarchy. The only prerequisite is that these classes must define a Directed Acyclic Graph (DAG) rooted in the dimension class (constraint {dag} placed next to every dimension class). The DAG structure can represent both alternative path and multiple classification hierarchies. Every classification hierarchy level must have an identifying attribute (constraint {OID}) and a descriptor attribute 2 (constraint {D}). These attributes are necessary for an automatic generation process into commercial OLAP tools, as these tools store this information in their metadata. The multiplicity 1 and 1..* defined in the target associated class role addresses the concepts of strictness and non-strictness, respectively. Strictness means that an object at a hierarchy s lower level belongs to only one higher-level object (e.g., as one month can be 1 We refer the reader to [7] for a complete description of our approach. 2 A descriptor attribute will be used as the default label in the data analysis.
5 Fig. 1. Multidimensional modeling using UML related to more than one season, the relationship between them is non-strict). Moreover, defining the {completeness} constraint in the target associated class role addresses the completeness of a classification hierarchy (see an example in Fig. 1 (b)). By completeness we mean that all members belong to one higherclass object and that object consists of those members only. For example, all the recorded seasons form a year, and all the seasons that form the year have been recorded. Our approach assumes all classification hierarchies are non-complete by default. The categorization of dimensions, used to model additional features for a class s subtypes, is represented by means of generalization-specialization relationships. However, only the dimension class can belong to both a classification and specialization hierarchy at the same time. An example of categorization for the Product dimension is shown in Fig. 1 (c). 4 Package Design Guidelines for Multidimensional Modeling In this section, based on our experience in real-world cases, we present our design guidelines for using UML packages in MD modeling following the approach presented in Section 3. We believe these guidelines are very close to the natural way that both designers and analyzers accomplish and understand MD modeling. Our experience indicates that these guidelines produce a very simple yet powerful design of MD models. We summarize all the design guidelines in Table 1. Guideline 0 is the foundation of the rest of the guidelines and summarizes our overall approach. This guideline closely resembles how data analyzers understand MD modeling. We have divided the design process into three levels (Fig. 2 shows a summary of our proposal):
6 Level 1 : Model definition. A package represents a star schema of a conceptual MD model. A dependency between two packages at this level indicates that the star schemas share at least one dimension. Level 2 : Star schema definition. A package represents a fact or a dimension of a star schema. A dependency between two dimension packages at this level indicates that the packages share at least one level of a dimension hierarchy. Level 3 : Dimension/fact definition. A package is exploded into a set of classes that represent the hierarchy levels in a dimension package, or the whole star schema in the case of the fact package. The MD model is designed in a top-down fashion by further decomposing a package. We have limited our proposal to three levels because deep hierarchies tend to be difficult to understand, since each level carries its own meanings [13]. N o Level Guideline 0a At the end of the design process, the MD model will be divided into three levels: model definition, star schema definition, and dimension/fact definition 0b Before starting the modeling, define facts and dimensions and remark the shared dimensions and dimensions that share some hierarchy levels 1 1 Draw a package for each star schema, i.e., for every fact considered 2a 1 Decide which star schemas will host the definition of the shared dimensions; according to this decision, draw the corresponding dependencies 2b 1 Group together the definition of the shared dimensions in order to minimize the number of dependencies 3 2 Draw a package for the fact (only one in a star package) and a package for each dimension of the star schema 4a 2 Draw a dependency from the fact package to each one of the dimension packages 4b 2 Never draw a dependency from a dimension package to a fact package 5 2 Do not define a dimension twice; if a dimension has been previously defined, import it 6 2 Draw a dependency between dimension packages in order to indicate that the dimensions share hierarchy levels 7 3 In a dimension package, draw a class for the dimension class (only one in a dimension package) and a class for every classification hierarchy level 8 3 In a fact package, draw a class for the fact class (only one in a fact package) and import the dimension classes with their corresponding hierarchy levels 9 3 In a dimension package, if a dependency from the current package has been defined at level 2, import the corresponding shared hierarchy levels 10 3 In a dimension package, when importing hierarchy levels form another package, it is not necessary to import all the levels Table 1. Multidimensional modeling guidelines
7 Fig. 2. The three levels of a MD model explosion using packages 5 Applying Package Design Guidelines: a Case Study In this section, we use a case study to show how our guidelines 3 are properly applied to MD modeling. We use the supply value chain example taken from Chapter 5 of [15]. As Kimball states, The supply side of the business consists of the steps needed to manufacture the products from original ingredients or parts.... Typical DWs that support the supply value chain include seven facts (Purchase Orders, Deliveries, Materials Inventory, Process Monitoring, Bill of Materials, Finished Goods Inventory, and Manufacturing Plans) and nine dimensions (Time, Ingredient, Supplier, Deal, Plant, Ship Mode, Process, Product, and Warehouse). In Fig. 3, we show the supply value chain example modeled by our approach presented in [7]. The fact classes have been filled in a dark colour, while the dimension classes in a light colour, and the base classes of the dimension hierarchies in white. As seen in Fig. 3, the Time dimension is the only one connected to all the facts. For the sake of clearness, we have omitted the definition of the classification hierarchy levels for both the Process and Ship Mode dimensions. Moreover, we have not represented the attributes and methods of the classes either. Even though we have tried to obtain a clear model, the model is confusing because there are a lot of lines that cross each other. Furthermore, it is difficult to see at a glance the different dimensions connected to a fact. In short, when the scale of a model is large and includes a large number of interconnections among its different elements, it may be very difficult to understand and manage it, especially for end users. Guideline 1 and Guideline 2. Fig. 4 shows the first level of the model that is formed by seven packages that represent the different star schemas that form our 3 For the sake of comprehensibility, we explicitly indicate when we apply each guideline.
8 Fig. 3. A partial complex MD model case study (G.1). A dashed arrow from one package to another one denotes a dependency between packages, i.e., the packages have some dimensions in common (G.2a). The direction of the dependency indicates that the common dimensions shared by the two packages were first defined in the package pointed to by the arrow (to start with, we have to choose a star schema to define the dimensions, and then, the other schemas can use them with no need to define them again). If the common dimensions had been first defined in another package, the direction of the arrow would have been different. In any case, it is better to group together the definition of the common dimensions in order to reduce the number of dependencies (G.2b). Guideline 3 and Guideline 4. A package that represents a star schema is shown as a simple icon with names. The package contents can be dynamically accessed by zooming to a detailed view. For example, Fig. 5 shows the content of the package Purchase Orders Star (level 2). The fact package Purchase Orders Fact is represented in the middle of Fig. 5, while the dimension packages are placed around the fact package (G.3). As it can be seen, a dependency is drawn from the fact package to each one of the dimension packages, because the fact package comprises the whole definition of the star schema (G.4a). At level 2, it is possible to create a dependency from a fact package to a dimension package or between dimension packages, but we do not allow a dependency from a dimension package to a fact package, since it is not semantically correct in our proposal (G.4b).
9 Fig. 4. Level 1: different star schemas of the supply value chain example Fig. 5. Level 2: Purchase Orders Star Guideline 5 and Guideline 6. Fig. 6 shows the content of the package Deliveries Star (level 2). As in the previous package, the fact package is placed in the middle of the figure and the dimension packages are placed around the fact package in a star fashion. The three dimension packages (Deal Dimension, Supplier Dimension, and Time Dimension) have been previously defined in the Purchase Orders Star (Fig. 5), so they are imported in this package 4 (G.5). Because of this, the name of the package where they have been previously defined appears below the package name (from Purchase Orders Star). Since Plant Dimension and Ship Mode Dimension have been defined in the current package, they do not show a package name. At this level, a dependency between dimension packages indicates that they share some hierarchy levels (G.6). For example, a dependency between Plant Dimension and Supplier Dimension is represented because there is a shared hierarchy 5 (ZIP, City,...), as shown in Fig. 3. In a similar way, Materials Inventory Star is further decomposed as shown in Fig. 7 (level 2). All the dimensions that this package contains have been previously defined in other packages. We can notice that it is possible to import packages defined in different star packages. Guideline 7. The content of the dimension and fact packages is represented at level 3. The diagrams at this level are only comprised of classes and associations among them. For example, Fig. 8 shows the content of the package Supplier 4 However, our approach does not forbid defining the same dimension twice but with different names defined by views. For example, the designer can define two dimensions, such as Shipment Date and Reception Date with the same structure instead of defining only one Date dimension. 5 We have decided to share a hierarchy for both dimensions to obtain a clearer design, although the designer may have decided not to do it if such sharing is not totally feasible.
10 Fig. 6. Level 2: Deliveries Star Fig. 7. Level 2: Materials Inventory Star Fig. 8. Level 3: Supplier Dimension Dimension (level 3), that contains the definition of the dimension (Supplier) and the different hierarchy levels (ZIP, City, County, and State) (G.7). The hierarchy of a dimension defines how the different OLAP operations (roll up, drill down, etc.) can be applied [15]. Guideline 8. Regarding fact packages, Fig. 9 shows the content of the package Purchase Orders Fact (level 3). In this package, the whole star schema is displayed: the fact class (filled in a dark colour) is defined (we show some of its attributes) and the dimensions with their corresponding hierarchy levels are imported (G.8). To avoid unnecessary detail, we have hidden the attributes and methods of dimensions and hierarchy levels. Guideline 9 and Guideline 10. Fig. 10 shows the content of the package Plant Dimension (level 3). This dimension shares some hierarchy levels with Supplier Dimension (Fig. 8). Therefore, we notice that the shared hierarchy levels have been imported (the name of the package where they have been defined appears below the class name) (G.9). Furthermore, we also notice a salient feature of our approach: two dimensions, that share hierarchy levels, do not need to share the whole hierarchy (G.10). For example, the hierarchy of Plant Dimension does not include State level defined in Supplier Dimension. Other proposals, such as [1][2], when sharing dimension hierarchy levels, share all the hierarchy path from the shared level. However, the package mechanism allows us to import only the required levels, thereby providing a higher level of flexibility.
11 Fig. 9. Level 3: Purchase Orders Fact Fig. 10. Level 3: Plant Dimension 6 Definition of Package Stereotypes In Section 4 and 5, we have shown how the complexity of a MD model is managed by organizing it into logical packages. We have used three different kinds of packages: star package, dimension package, and fact package. In this section, we provide a UML extension by means of stereotypes of the particular packages we have defined. For the definition of stereotypes, we follow the examples included in the UML Specification [6]: Name: The name of the stereotype. Base class (also called Model class): The UML metamodel element that serves as the base for the stereotype. Description: An informal description with possible explanatory comments.
12 Icon: It is possible to define a distinctive visual cue for the stereotype. Constraints: A list of constraints defined by OCL expressions associated with the stereotype, with an informal explanation of the expressions. Tagged values: A list of all tagged values that may be associated with the stereotype. We have defined three stereotypes that specialize the Package model element: Name: StarPackage Base class: Package Description: Packages of this stereotype represent MD star schemas Icon: Fig. 11 (a) Constraints: A StarPackage can only contain FactPackages or DimensionPackages: 6 self.contents->forall(oclistypeof(factpackage) or oclistypeof(dimensionpackage)) A StarPackage can only contain one FactPackage: self.contents->select(oclistypeof(factpackage))->size <= 1 There are no cycles in the dependency structure 7 : 8 not self.allsuppliers->includes(self) Tagged values: None Name: DimensionPackage Base class: Package Description: Packages of this stereotype represent MD dimensions Icon: Fig. 11 (b) Constraints: It is not possible to create a dependency from a DimensionPackage to a Fact- Package (only to a DimensionPackage): self.clientdependency->forall(supplier->forall(oclistypeof(dimensionpackage))) There are no cycles in the dependency structure: not self.allsuppliers->includes(self) A DimensionPackage cannot contain Packages: self.contents->forall(not ocliskindof(package)) Tagged values: None Name: FactPackage Base class: Package 6 contents is an additional operation defined in the UML Specification [6]: The operation contents results in a Set containing the ModelElements owned by or imported by the Package. 7 Fowler states: As a rule of thumb, it is a good idea to remove cycles in the dependency structure [12]. 8 allsuppliers is an additional operation defined in the UML Specification [6]: The operation allsuppliers results in a Set containing all the ModelElements that are suppliers of this ModelElement, including the suppliers of these ModelElements. This is the transitive closure.
13 Description: Packages of this stereotype represent MD facts Icon: Fig. 11 (c) Constraints: There are no cycles in the dependency structure: not self.allsuppliers->includes(self) A DimensionPackage cannot contain Packages: self.contents->forall(not ocliskindof(package)) Tagged values: None StarPackage DimensionPackage FactPackage (a) (b) (c) Fig. 11. Stereotype icons of the MD extension 7 Using Multidimensional Modeling in Rational Rose Rational Rose (RR) is one of the most well-known visual modeling tools. As RR supports the UML, it is becoming the common modeling tool for OO modeling. RR is extensible by means of add-ins, that allows us to group together customizations and automation of several RR features through the Rose Extensibility Interface (REI) [16] into one component. An add-in allows us to customize main menu items, data types, stereotypes, etc. In this section, we present an addin we have developed, that allows us to use the stereotypes we have previously presented in RR. Our add-in customizes the following elements: Menu item: We have added the new menu item MD Validate in the menu Tools. This menu item runs a Rose script that validates a MD model: our script checks all the constraints we have presented in Section 6. Stereotypes: We have defined the stereotypes we have previously presented in Section 6. We use our stereotypes in RR by means of a stereotype configuration file. To graphically distinguish model elements from different stereotypes, each stereotype can have a graphical representation. Thus, for each stereotype, there may be four different icons: a diagram icon, a small diagram toolbar icon, a large diagram toolbar icon, and a list view icon. The best way to understand our extension is to show a tangible example. Fig. 12 shows the level 1 of the supply value chain example (the same level is displayed in Fig. 4 without stereotypes). We can notice the list view icons of
14 our stereotypes in the list of the browser (left hand panel in Fig. 12). Besides, the vertical toolbar in the middle of Fig. 12 contains three new buttons that correspond to our stereotypes. Furthermore, we also show how the level 2 of a MD model is displayed in RR. In Fig. 13, the content of Purchase Orders Star is shown (the same level is displayed in Fig. 5 without stereotypes). The icons for the FactPackage and DimensionPackage can be observed. Fig. 12. Multidimensional modeling using Fig. 13. Multidimensional modeling using Rational Rose (level 1) Rational Rose (level 2) 8 Conclusions and Future Work Existing multidimensional (MD) modeling approaches use flat design in that all the modeling elements are represented in the same diagram. These approaches are not often suitable for huge and complex MD models. Therefore, in this paper, we have presented how UML package mechanisms can be successfully used for MD modeling at three levels of complexity. We have also provided design guidelines, based on our experience in designing real cases, that allow the correct use of the UML packages for simplifying a conceptual design when modeling large and complex data warehouses. We have also illustrated the benefits of these guidelines by applying them to a case study. These guidelines are extremely useful as they allow us to obtain conceptual MD models that can be understood by both designers and analyzers, facilitating the communication between them. Furthermore, we have also provided a UML extension by means of stereotypes of the different package items we use. Finally, to show the applicability of our proposal, this UML extension has been defined for a well-known modeling tool such as Rational Rose 2000, which allows us to put in practice all ideas developed throughout the paper. Future works are concerned with providing a UML extension including stereotypes for main structural properties of MD modeling (fact class, dimension class,
15 etc.). Further future work refers to extending our approach to allow us to cover all life cycle of MD systems, which involves implementation of MD models into OO and object-relational databases. References 1. Golfarelli, M., Rizzi, S.: A methodological Framework for Data Warehouse Design. In: Proc. of the ACM 1st Intl. Workshop on Data warehousing and OLAP (DOLAP 98), Washington D.C., USA (1998) Sapia, C., Blaschka, M., Höfling, G., Dinter, B.: Extending the E/R Model for the Multidimensional Paradigm. In: Proc. of the 1st Intl. Workshop on Data Warehouse and Data Mining (DWDM 98). Volume 1552 of LNCS., Springer-Verlag (1998) Tryfona, N., Busborg, F., Christiansen, J.: starer: A Conceptual Model for Data Warehouse Design. In: Proc. of the ACM 2nd Intl. Workshop on Data warehousing and OLAP (DOLAP 99), Kansas City, Missouri, USA (1999) 4. Husemann, B., Lechtenborger, J., Vossen, G.: Conceptual Data Warehouse Design. In: Proc. of the 2nd. Intl. Workshop on Design and Management of Data Warehouses (DMDW 2000), Stockholm, Sweden (2000) Abelló, A., Samos, J., Saltor, F.: A Framework for the Classification and Description of Multidimensional Data Models. In: Proc. of the 12th Intl. Conference on Database and Expert Systems Applications (DEXA 01), Munich, Germany (2001) Object Management Group (OMG): Unified Modeling Language Specification 1.4. Internet: (2001) 7. Trujillo, J., Palomar, M., Gómez, J., Song, I.: Designing Data Warehouses with OO Conceptual Models. IEEE Computer, special issue on Data Warehouses 34 (2001) Feldman, P., Miller, D.: Entity Model Clustering: Structuring a Data Model by Abstraction. The Computer Journal 29 (1986) Teorey, T., Wei, G., Bolton, D., Koenig, J.: ER Model Clustering as an Aid for User Communication and Documentation in Database Design. Communications of ACM 32 (1989) Gandhi, M., Robertson, E., Gucht, D.V.: Leveled Entity Relationship Model. In: Proc. of the 13th Intl. Conference on Entity-Relationship Approach (ER 94). Volume 881 of LNCS., Springer-Verlag (1994) Siau, K., Cao, Q.: Unified Modeling Language (UML) - A Complexity Analysis. Journal of Database Management 12 (2001) Fowler, M.: UML Distilled. Applying the Standard Object Modeling Language. Object Technology Series. Addison-Wesley (1998) 13. Conallen, J.: Building Web Applications with UML. Object Technology Series. Addison-Wesley (2000) 14. Giovinazzo, W.: Object-Oriented Data Warehouse Design. Building a star schema. Prentice-Hall, New Jersey, USA (2000) 15. Kimball, R.: The Data Warehouse Toolkit. 2 edn. John Wiley & Sons (1996) 16. Rational Software Corporation: Using the Rose Extensibility Interface. Rational Software Corporation (2001)
Dimensional Modeling for Data Warehouse
Modeling for Data Warehouse Umashanker Sharma, Anjana Gosain GGS, Indraprastha University, Delhi Abstract Many surveys indicate that a significant percentage of DWs fail to meet business objectives or
Modeling the User Interface of Web Applications with UML
Modeling the User Interface of Web Applications with UML Rolf Hennicker,Nora Koch,2 Institute of Computer Science Ludwig-Maximilians-University Munich Oettingenstr. 67 80538 München, Germany {kochn,hennicke}@informatik.uni-muenchen.de
Data warehouses. Data Mining. Abraham Otero. Data Mining. Agenda
Data warehouses 1/36 Agenda Why do I need a data warehouse? ETL systems Real-Time Data Warehousing Open problems 2/36 1 Why do I need a data warehouse? Why do I need a data warehouse? Maybe you do not
Rose/Architect: a tool to visualize architecture
Published in the Proceedings of the 32 nd Annual Hawaii International Conference on Systems Sciences (HICSS 99) Rose/Architect: a tool to visualize architecture Alexander Egyed University of Southern California
A Model-based Software Architecture for XML Data and Metadata Integration in Data Warehouse Systems
Proceedings of the Postgraduate Annual Research Seminar 2005 68 A Model-based Software Architecture for XML and Metadata Integration in Warehouse Systems Abstract Wan Mohd Haffiz Mohd Nasir, Shamsul Sahibuddin
SDWM: An Enhanced Spatial Data Warehouse Metamodel
SDWM: An Enhanced Spatial Data Warehouse Metamodel Alfredo Cuzzocrea 1, Robson do Nascimento Fidalgo 2 1 ICAR-CNR & University of Calabria, 87036 Rende (CS), ITALY [email protected]. 2. CIN,
6NF CONCEPTUAL MODELS AND DATA WAREHOUSING 2.0
ABSTRACT 6NF CONCEPTUAL MODELS AND DATA WAREHOUSING 2.0 Curtis Knowles Georgia Southern University [email protected] Sixth Normal Form (6NF) is a term used in relational database theory by Christopher
QUALITY TOOLBOX. Understanding Processes with Hierarchical Process Mapping. Robert B. Pojasek. Why Process Mapping?
QUALITY TOOLBOX Understanding Processes with Hierarchical Process Mapping In my work, I spend a lot of time talking to people about hierarchical process mapping. It strikes me as funny that whenever I
A Methodology for the Conceptual Modeling of ETL Processes
A Methodology for the Conceptual Modeling of ETL Processes Alkis Simitsis 1, Panos Vassiliadis 2 1 National Technical University of Athens, Dept. of Electrical and Computer Eng., Computer Science Division,
Basics of Dimensional Modeling
Basics of Dimensional Modeling Data warehouse and OLAP tools are based on a dimensional data model. A dimensional model is based on dimensions, facts, cubes, and schemas such as star and snowflake. Dimensional
Semantic Object Language Whitepaper Jason Wells Semantic Research Inc.
Semantic Object Language Whitepaper Jason Wells Semantic Research Inc. Abstract While UML is the accepted visual language for object-oriented system modeling, it lacks a common semantic foundation with
Chapter 8 The Enhanced Entity- Relationship (EER) Model
Chapter 8 The Enhanced Entity- Relationship (EER) Model Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 Outline Subclasses, Superclasses, and Inheritance Specialization
Tool Support for Software Variability Management and Product Derivation in Software Product Lines
Tool Support for Software Variability Management and Product Derivation in Software s Hassan Gomaa 1, Michael E. Shin 2 1 Dept. of Information and Software Engineering, George Mason University, Fairfax,
Optimization of ETL Work Flow in Data Warehouse
Optimization of ETL Work Flow in Data Warehouse Kommineni Sivaganesh M.Tech Student, CSE Department, Anil Neerukonda Institute of Technology & Science Visakhapatnam, India. [email protected] P Srinivasu
TOWARDS A FRAMEWORK INCORPORATING FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTS FOR DATAWAREHOUSE CONCEPTUAL DESIGN
IADIS International Journal on Computer Science and Information Systems Vol. 9, No. 1, pp. 43-54 ISSN: 1646-3692 TOWARDS A FRAMEWORK INCORPORATING FUNCTIONAL AND NON FUNCTIONAL REQUIREMENTS FOR DATAWAREHOUSE
Data warehouse life-cycle and design
SYNONYMS Data Warehouse design methodology Data warehouse life-cycle and design Matteo Golfarelli DEIS University of Bologna Via Sacchi, 3 Cesena Italy [email protected] DEFINITION The term data
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
Lost in Space? Methodology for a Guided Drill-Through Analysis Out of the Wormhole
Paper BB-01 Lost in Space? Methodology for a Guided Drill-Through Analysis Out of the Wormhole ABSTRACT Stephen Overton, Overton Technologies, LLC, Raleigh, NC Business information can be consumed many
CHAPTER 4 Data Warehouse Architecture
CHAPTER 4 Data Warehouse Architecture 4.1 Data Warehouse Architecture 4.2 Three-tier data warehouse architecture 4.3 Types of OLAP servers: ROLAP versus MOLAP versus HOLAP 4.4 Further development of Data
Metadata Management for Data Warehouse Projects
Metadata Management for Data Warehouse Projects Stefano Cazzella Datamat S.p.A. [email protected] Abstract Metadata management has been identified as one of the major critical success factor
Object Oriented Programming. Risk Management
Section V: Object Oriented Programming Risk Management In theory, there is no difference between theory and practice. But, in practice, there is. - Jan van de Snepscheut 427 Chapter 21: Unified Modeling
Data Modeling Basics
Information Technology Standard Commonwealth of Pennsylvania Governor's Office of Administration/Office for Information Technology STD Number: STD-INF003B STD Title: Data Modeling Basics Issued by: Deputy
CHAPTER 4: BUSINESS ANALYTICS
Chapter 4: Business Analytics CHAPTER 4: BUSINESS ANALYTICS Objectives Introduction The objectives are: Describe Business Analytics Explain the terminology associated with Business Analytics Describe the
DATA WAREHOUSE DESIGN
DATA WAREHOUSE DESIGN ICDE 2001 Tutorial Stefano Rizzi, Matteo Golfarelli DEIS - University of Bologna, Italy 1 Motivation Building a data warehouse for an enterprise is a huge and complex task, which
Data Warehousing Systems: Foundations and Architectures
Data Warehousing Systems: Foundations and Architectures Il-Yeol Song Drexel University, http://www.ischool.drexel.edu/faculty/song/ SYNONYMS None DEFINITION A data warehouse (DW) is an integrated repository
A UML 2 Profile for Business Process Modelling *
A UML 2 Profile for Business Process Modelling * Beate List and Birgit Korherr Women s Postgraduate College for Internet Technologies Institute of Software Technology and Interactive Systems Vienna University
Tutorial - Building a Use Case Diagram
Tutorial - Building a Use Case Diagram 1. Introduction A Use Case diagram is a graphical representation of the high-level system scope. It includes use cases, which are pieces of functionality the system
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
How To Develop Software
Software Engineering Prof. N.L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture-4 Overview of Phases (Part - II) We studied the problem definition phase, with which
Data Warehouse Requirements Analysis Framework: Business-Object Based Approach
Data Warehouse Requirements Analysis Framework: Business-Object Based Approach Anirban Sarkar Department of Computer Applications National Institute of Technology, Durgapur West Bengal, India Abstract
Foundations of Business Intelligence: Databases and Information Management
Chapter 5 Foundations of Business Intelligence: Databases and Information Management 5.1 Copyright 2011 Pearson Education, Inc. Student Learning Objectives How does a relational database organize data,
Enterprise Architecture Modeling PowerDesigner 16.1
Enterprise Architecture Modeling PowerDesigner 16.1 Windows DOCUMENT ID: DC00816-01-1610-01 LAST REVISED: November 2011 Copyright 2011 by Sybase, Inc. All rights reserved. This publication pertains to
An Automatic Tool for Checking Consistency between Data Flow Diagrams (DFDs)
An Automatic Tool for Checking Consistency between Data Flow Diagrams (DFDs) Rosziati Ibrahim, Siow Yen Yen Abstract System development life cycle (SDLC) is a process uses during the development of any
DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES
DEVELOPING REQUIREMENTS FOR DATA WAREHOUSE SYSTEMS WITH USE CASES Robert M. Bruckner Vienna University of Technology [email protected] Beate List Vienna University of Technology [email protected]
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
Object Oriented Data Modeling for Data Warehousing (An Extension of UML approach to study Hajj pilgrim s private tour as a Case Study)
International Arab Journal of e-technology, Vol. 1, No. 2, June 2009 37 Object Oriented Data Modeling for Data Warehousing (An Extension of UML approach to study Hajj pilgrim s private tour as a Case Study)
Chapter 10 Practical Database Design Methodology and Use of UML Diagrams
Chapter 10 Practical Database Design Methodology and Use of UML Diagrams Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 10 Outline The Role of Information Systems in
THE DIMENSIONAL FACT MODEL: A CONCEPTUAL MODEL FOR DATA WAREHOUSES 1
THE DIMENSIONAL FACT MODEL: A CONCEPTUAL MODEL FOR DATA WAREHOUSES 1 MATTEO GOLFARELLI, DARIO MAIO and STEFANO RIZZI DEIS - Università di Bologna, Viale Risorgimento 2, 40136 Bologna, Italy {mgolfarelli,dmaio,srizzi}@deis.unibo.it
An eclipse-based Feature Models toolchain
An eclipse-based Feature Models toolchain Luca Gherardi, Davide Brugali Dept. of Information Technology and Mathematics Methods, University of Bergamo [email protected], [email protected] Abstract.
Generating Aspect Code from UML Models
Generating Aspect Code from UML Models Iris Groher Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich, Germany [email protected] Stefan Schulze Siemens AG, CT SE 2 Otto-Hahn-Ring 6 81739 Munich,
A Knowledge Management Framework Using Business Intelligence Solutions
www.ijcsi.org 102 A Knowledge Management Framework Using Business Intelligence Solutions Marwa Gadu 1 and Prof. Dr. Nashaat El-Khameesy 2 1 Computer and Information Systems Department, Sadat Academy For
UML Data Models From An ORM Perspective: Part 1
UML Data Models From An ORM Perspective: Part 1 by Dr. Terry Halpin, BSc, DipEd, BA, MLitStud, PhD Director of Database Strategy, Visio Corporation This paper appeared in the April 1998 issue of the Journal
Usability metrics for software components
Usability metrics for software components Manuel F. Bertoa and Antonio Vallecillo Dpto. Lenguajes y Ciencias de la Computación. Universidad de Málaga. {bertoa,av}@lcc.uma.es Abstract. The need to select
Using Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting
Using Use Cases for requirements capture Pete McBreen 1998 McBreen.Consulting [email protected] All rights reserved. You have permission to copy and distribute the document as long as you make no changes
Chapter 5. Learning Objectives. DW Development and ETL
Chapter 5 DW Development and ETL Learning Objectives Explain data integration and the extraction, transformation, and load (ETL) processes Basic DW development methodologies Describe real-time (active)
Lecture 12: Entity Relationship Modelling
Lecture 12: Entity Relationship Modelling The Entity-Relationship Model Entities Relationships Attributes Constraining the instances Cardinalities Identifiers Generalization 2004-5 Steve Easterbrook. This
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
BUILDING OLAP TOOLS OVER LARGE DATABASES
BUILDING OLAP TOOLS OVER LARGE DATABASES Rui Oliveira, Jorge Bernardino ISEC Instituto Superior de Engenharia de Coimbra, Polytechnic Institute of Coimbra Quinta da Nora, Rua Pedro Nunes, P-3030-199 Coimbra,
Alejandro Vaisman Esteban Zimanyi. Data. Warehouse. Systems. Design and Implementation. ^ Springer
Alejandro Vaisman Esteban Zimanyi Data Warehouse Systems Design and Implementation ^ Springer Contents Part I Fundamental Concepts 1 Introduction 3 1.1 A Historical Overview of Data Warehousing 4 1.2 Spatial
CHAPTER 5: BUSINESS ANALYTICS
Chapter 5: Business Analytics CHAPTER 5: BUSINESS ANALYTICS Objectives The objectives are: Describe Business Analytics. Explain the terminology associated with Business Analytics. Describe the data warehouse
The Role of Metadata for Effective Data Warehouse
ISSN: 1991-8941 The Role of Metadata for Effective Data Warehouse Murtadha M. Hamad Alaa Abdulqahar Jihad University of Anbar - College of computer Abstract: Metadata efficient method for managing Data
Towards an Integration of Business Process Modeling and Object-Oriented Software Development
Towards an Integration of Business Process Modeling and Object-Oriented Software Development Peter Loos, Peter Fettke Chemnitz Univeristy of Technology, Chemnitz, Germany {loos peter.fettke}@isym.tu-chemnitz.de
An MDA Approach for the Development of Web applications
An MDA Approach for the Development of Web applications Santiago Meliá Beigbeder and Cristina Cachero Castro {santi,ccachero}@dlsi.ua.es Univesidad de Alicante, España Abstract. The continuous advances
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
Goal-Driven Design of a Data Warehouse-Based Business Process Analysis System
Proceedings of the 6th WSEAS Int. Conf. on Artificial Intelligence, Knowledge Engineering and Data Bases, Corfu Island, Greece, February 16-19, 2007 243 Goal-Driven Design of a Data Warehouse-Based Business
What is a metamodel: the OMG s metamodeling infrastructure
Modeling and metamodeling in Model Driven Development Warsaw, May 14-15th 2009 Gonzalo Génova [email protected] http://www.kr.inf.uc3m.es/ggenova/ Knowledge Reuse Group Universidad Carlos III de Madrid
Chapter 2: Entity-Relationship Model. Entity Sets. " Example: specific person, company, event, plant
Chapter 2: Entity-Relationship Model! Entity Sets! Relationship Sets! Design Issues! Mapping Constraints! Keys! E-R Diagram! Extended E-R Features! Design of an E-R Database Schema! Reduction of an E-R
Scenario-based Requirements Engineering and User-Interface Design
Scenario-based Requirements Engineering and User-Interface Institut für Computertechnik ICT Institute of Computer Technology Hermann Kaindl Vienna University of Technology, ICT Austria [email protected]
Bitrix Site Manager 4.1. User Guide
Bitrix Site Manager 4.1 User Guide 2 Contents REGISTRATION AND AUTHORISATION...3 SITE SECTIONS...5 Creating a section...6 Changing the section properties...8 SITE PAGES...9 Creating a page...10 Editing
Going Interactive: Combining Ad-Hoc and Regression Testing
Going Interactive: Combining Ad-Hoc and Regression Testing Michael Kölling 1, Andrew Patterson 2 1 Mærsk Mc-Kinney Møller Institute, University of Southern Denmark, Denmark [email protected] 2 Deakin University,
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 Model Data For Business Intelligence (Bi)
WHITE PAPER: THE BENEFITS OF DATA MODELING IN BUSINESS INTELLIGENCE The Benefits of Data Modeling in Business Intelligence DECEMBER 2008 Table of Contents Executive Summary 1 SECTION 1 2 Introduction 2
Goal-Oriented Requirement Analysis for Data Warehouse Design
Goal-Oriented Requirement Analysis for Data Warehouse Design Paolo Giorgini University of Trento, Italy Stefano Rizzi University of Bologna, Italy Maddalena Garzetti University of Trento, Italy Abstract
Software Project Management and UML
Software Project Management and UML Ali Bigdelou Computer Aided Medical Procedures (CAMP), Technische Universität München, Germany Outline Intro to Software Project Management Project Requirements Specification
Business Process Redesign and Modelling
Business Process Redesign and Modelling The Business Process Redesign the Process Handbook the key idea of the Process Handbook approach is that a richly structured online repository about business processes
Course 103402 MIS. Foundations of Business Intelligence
Oman College of Management and Technology Course 103402 MIS Topic 5 Foundations of Business Intelligence CS/MIS Department Organizing Data in a Traditional File Environment File organization concepts Database:
The Benefits of Data Modeling in Business Intelligence
WHITE PAPER: THE BENEFITS OF DATA MODELING IN BUSINESS INTELLIGENCE The Benefits of Data Modeling in Business Intelligence DECEMBER 2008 Table of Contents Executive Summary 1 SECTION 1 2 Introduction 2
Common Warehouse Metamodel (CWM): Extending UML for Data Warehousing and Business Intelligence
Common Warehouse Metamodel (CWM): Extending UML for Data Warehousing and Business Intelligence OMG First Workshop on UML in the.com Enterprise: Modeling CORBA, Components, XML/XMI and Metadata November
Remote Usability Evaluation of Mobile Web Applications
Remote Usability Evaluation of Mobile Web Applications Paolo Burzacca and Fabio Paternò CNR-ISTI, HIIS Laboratory, via G. Moruzzi 1, 56124 Pisa, Italy {paolo.burzacca,fabio.paterno}@isti.cnr.it Abstract.
Using UML Part One Structural Modeling Diagrams
UML Tutorials Using UML Part One Structural Modeling Diagrams by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page 1 Trademarks Object Management Group, OMG, Unified Modeling Language,
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
Concepts of Database Management Seventh Edition. Chapter 9 Database Management Approaches
Concepts of Database Management Seventh Edition Chapter 9 Database Management Approaches Objectives Describe distributed database management systems (DDBMSs) Discuss client/server systems Examine the ways
CSC 742 Database Management Systems
CSC 742 Database Management Systems Topic #4: Data Modeling Spring 2002 CSC 742: DBMS by Dr. Peng Ning 1 Phases of Database Design Requirement Collection/Analysis Functional Requirements Functional Analysis
The Relational Data Model: Structure
The Relational Data Model: Structure 1 Overview By far the most likely data model in which you ll implement a database application today. Of historical interest: the relational model is not the first implementation
Announcements. SE 1: Software Requirements Specification and Analysis. Review: Use Case Descriptions
Announcements SE 1: Software Requirements Specification and Analysis Lecture 4: Basic Notations Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445 Send your group
Spotfire v6 New Features. TIBCO Spotfire Delta Training Jumpstart
Spotfire v6 New Features TIBCO Spotfire Delta Training Jumpstart Map charts New map chart Layers control Navigation control Interaction mode control Scale Web map Creating a map chart Layers are added
Automatic Generation of Consistency-Preserving Edit Operations for MDE Tools
Automatic Generation of Consistency-Preserving Edit Operations for MDE Tools Michaela Rindt, Timo Kehrer, Udo Kelter Software Engineering Group University of Siegen {mrindt,kehrer,kelter}@informatik.uni-siegen.de
Automating Data Warehouse Conceptual Schema Design and Evaluation
Automating Data Warehouse Conceptual Schema Design and Evaluation Cassandra Phipps Karen C. Davis ABB Inc. ECECS Dept. 650 Ackerman Rd. University of Cincinnati Columbus, OH 43202 Cincinnati, OH 45221-0030
