Architectural design of MDX compiler via attribute-driven design *

Size: px
Start display at page:

Download "Architectural design of MDX compiler via attribute-driven design *"

Transcription

1 Jul. 2009, Volume 6, No.7 (Serial No.56) Journal of Communication and Computer, ISSN , USA Architectural design of MDX compiler via attribute-driven design * ZHANG Ping-jian, XI Jian-qing, ZHAO Juan-juan (School of Software Engineering, South China University of Technology, Guangzhou , China) Abstract: MDX is a language that expresses selections, calculations, and some metadata definitions against an Online Analytical Processing (OLAP) database. As the interface with OLAP, the MDX complier is a major component of the OLAP analysis server. This paper addresses the system design of MDX compiler via the ADD method, meaning that system requirements, including functional and quality requirements and constraints, are considered as drivers in the design process. The output architecture satisfies not only that the functional requirements but also the important qualities the system must possess. Key words: MDX complier; OLAP analysis server; software architecture; attribute-driven design 1. Introduction Multi Dimensional expression (MDX) is a language for OLAP query, computation and meta data definition, proposed jointly by Microsoft and Hyperion around MDX works with data warehouse similarly to how SQL works with DBMS. With growing support from OLAP vendors, MDX has become the de facto standard for OLAP manipulations. As the interface with OLAP services, the MDX compiler is one of the major components of the OLAP analysis server, and its design and implementation is critical to the success of OLAP * Acknowledgements: The research was supported by the Science & Technology Project of Guangdong Province (No. 2006B ) and the Science & Technology Project of Guangzhou City (No. 2006Z3-D3081). Corresponding author: ZHANG Ping-jian (1966- ), male, Ph.D., associate professor; research fields: data warehouse, software engineering. XI Jian-qing (1962- ), male, Ph.D., professor; research fields: database, high performance computing, knowledge engineering. ZHAO Juan-juan (1975- ), female, lecturer; research fields: data mining, knowledge engineering. server. This paper focuses on some design issues of a MDX compiler. In traditional software architecture design, functional requirements are emphasized and are always satisfied, with little consideration of quality requirements. In reference [1], Chung, et al considers that quality attributes are soft goals; there is no clear-cut definition and criteria as to whether it is satisfied or not. In the work of Bosch, et al [2], the functional requirement is the primary driver and the quality attribute as secondary driver. Hofmeister, et al [3] describe a framework known as global analysis to identify, accommodate, and describe architecturally significant factors including quality attributes early into the design phase. However, these methods do not sufficiently support the reasoning about the quality consequences of each design decision. The Attribute-Driven Design (ADD) [4], on the other hand, considers both as primary architectural drivers and has been applied in system design [5-6]. In this paper, we discuss the design of an MDX compiler via the ADD approach. Both functional and non-functional requirements are analyzed using use cases and quality attribute scenarios. Usually, stakeholders participating in the decision-making process have different, often conflicting, quality goals (e.g., performance, security, availability, modifiability, and usability), and project constraints. By prioritizing the quality attribute scenarios, we ensure that the most important qualities are satisfied first; the secondary qualities are satisfied within the constraints of the most important ones. Tactics and primitives to achieve system qualities are proposed and applied in the design process. 1

2 2. The add design method ADD is basically built upon Attribute Based Architecture Styles (ABAS) [7], and architectural views [8-9]. It provides a framework to make design decisions with known affects on the desired quality attributes. The input to ADD is the system requirements (i.e. functional, quality requirements and constraints), and its output is the conceptual architecture which provides the overview of data and control transfer between system components. Further instantiation and decisions on conceptual architecture would yield the concrete architecture, the document that is the basis for discussion among various stakeholders. The ADD steps go as follows: (1) Choose the module to decompose. Initially, this is the system or subsystem under design. (2) Refine the module according to the following steps: (a) Choose the architectural driver from the set of concrete quality scenarios and functional requirements. This will determine what is important for this decomposition; (b) Choose an architectural pattern that satisfies the drivers. Create the pattern based on the tactic that can be used to achieve the drivers. Identify the modules required to implement the tactics; (c) Instantiate modules and allocate functionalities from the use cases and represent using multiple views; (d) Define interfaces of the child modules; (e) Verify and refine use cases and quality scenario and make them constraints for the child modules. This step verifies that nothing important was forgotten. (3) Repeat steps in (2) (a)-to-(e) for all other modules for decomposition. 3. MDX compiler requirement analysis The MDX compiler lies in between the application interface layer and OLAP business layer [10]. It receives the MDX statements and converts them to some query tree objects, which are passed down to the business layer for processing. Results are returned to clients via the application interface layer. The architecture of the OLAP server is portrayed in Fig. 1. Fig. 1 Architecture of the OLAP server 3.1 Functional requirements of MDX compiler The MDX compiler consists of 5 modules: database connection module, metadata access module, MDX parser module, calculated member and function evaluation module, and authentication/ authorization module. After obtaining the MDX statements, the MDX compiler connects to database and retrieves the data warehouse metadata information, which is used to parse those statements. When abstract syntax trees are constructed, metadata information is further employed to handle the calculated members and function evaluations. Finally, query tree objects are constructed for subsequent processing. The MDX compiler use cases are summarized below: (1) The end edits MDX statements in some text area and then submits. 2

3 (2) The end manipulates with GUI controls and generates MDX statements to submit. (3) The MDX compiler checks not only syntax validity but also semantics integrity and consistency. (4) The statistics and report subsystem requires routine OLAP querying at daily/weekly/monthly base. (5) The decision support subsystem regularly requests OLAP querying for data mining services. (6) Other applications can interact with OLAP server for OLAP services via API. (7) MDX compiler accesses database for necessary metadata information and consults the authentication and authorization subsystem to ensure valid OLAP services request. (8) MDX compiler accesses database for necessary metadata information to handle calculated members and function evaluations. 3.2 Quality attributes requirements of MDX compiler Quality attributes are the functional characteristics that the system must possess. Some of these qualities are overlapping (e.g. availability vs. security) and often the achievement of one has a side effect on another (e.g. security vs. performance). The ADD method, therefore, is aimed at satisfying the desired primary qualities and the achievement of secondary attributes is only within the constraint of achieving the primary ones. For MDX compiler design, its basic qualities to achieve are (i) availability, (ii) modifiability, (iii) performance, (iv) security, (v) portability, and (vi) inter-operability. Availability is about diagnosing, solving and preventing ML software and its associated hardware from faults and failures. Modifiability is about ease in installing changes to ML system. Performance is making sure that the system is able to respond accordingly when an event occurs. Security is about protecting the system and its s and finding ways to deny access to unauthorized s. Portability refers to that quality of the system that could be easily configured and deployed to other platform. Inter-operability is the ability to interact with other and applications. Achieving these qualities depends on the system s capacity to respond correctly on different stimuli that could challenge the system from achieving these qualities. Table 1 provides the MDX compiler quality attribute scenarios. For each quality attribute (e.g. availability), different stimuli are conceived, and it shows how the system would respond. The success of the response is based on its ability to satisfy the response measure. Quality attribute Availability Modifiability Modifiability Performance Table 1 The MDX compiler quality attribute scenarios Stimulus Source of stimulus Artifact Response Response measure Hardware failure; Log error; inform ; Downtime should be CPU failure All modules corrupted programs start backups less than 5 minutes Fact table; Log error; inform ; Recovery data within 1 Database failure Corrupted data aggregate data recover data minutes Request to add XMLA Project manager; Query tree Extend query tree Complete within 1 support architect person week Request to support new Project manager; Query tree Extend query tree Complete within 1 MDX features end Request to support new Project manager; Query tree Extend query tree Complete within 2 end OLAP services request Analyst; tester; end MDX compiler; Parse MDX statement Data retrieved within from console retrieve aggregate data half minute OLAP services request Analyst; tester; end MDX compiler; Parse MDX statement Data retrieved within from Report /Data retrieve aggregate data 30 minute mining OLAP services request from other Other MDX compiler; Parse MDX statement retrieve aggregate data Data retrieved within 1 minute (to be continued) 3

4 Security Portability Interoperability Invalid Invalid access Request to port system to other platform Request to operate with other s and front end BI Other or Any data in Validate persons Other or Sensitive data in Authorize persons Module that is Customer Project platform lead dependent Other OLAP engines and BI MDX compiler; Modify the dependent modules Interact with other or other Deny system to invalid Deny data to invalid access Complete within 3 Able to retrieve data from other OLAP engine; able to interact with other BI 4. Attribute-driven design of MDX compiler The design begins with identification of the most important quality attribute issues of MDX compiler. In Table 1, the two availability scenarios are in fact shared by all sub of the OLAP server, and hence is not the focus of this paper. After reviewing those scenarios, the project team becomes congruous that for a robust MDX compiler, it is imperative to consider the modifiability above all others. The OLAP service and the MDX language are prospecting new technologies that are still under rapid development, new concepts, specifications, architectures, frameworks and APIs are emerging. To meet the challenge, MDX compiler needs to be design for flexibility and extensibility. Closely related to modifiability is the inter-operability, which is becoming the core idea of enterprise service infrastructure. The second top priority attribute is the performance, which is always among the most important indexes of any good. For MDX compiler, performance is not a big deal since query tree objects are usually quite small, especially for those from interactive s. Of course, some reporting/data mining services might generate quite complicated MDX statements. The only problem here is that there should be some preemptive policy to guarantee that interactive s will not wait too long. Security has become a more and more important issue for any information system, the data warehouse and OLAP server is not an exception. Incorporation of authentication and authorization into MDX compiler makes it possible for early detection of invalid intrusion to the system and thus saves both time and resources. Currently, unlike the other quality attributes, portability is given little consideration for the first release of the MDX compiler except that only standard C++ features and standard C++ library are strictly adhered to. 4.1 Adapting architectural primitives and tactics to achieve qualities Architectural primitives are components and connectors that collaborate to achieve some quality attribute goal. The MDX compiler is designed with all the quality attribute scenarios bear on mind. To achieve modifiability, the strategy to be adapted is called indirection. To accommodate modifications, an abstract syntax tree structure is adopted. With various modification requests, concrete query tree structures are generated from the abstract syntax tree. In addition, the semantic coherence strategy and the generalize module strategy are applied to API design which allows programming to interface, not to class. To achieve inter-operability, the adherence to defined protocol strategy is adapted and the MDX compiler communicates with other sub via the standard XML/A protocol. To achieve performance, three strategies are adapted. First, resource arbitration via preemptive priority scheduling is implemented to guarantee that reporting/data mining jobs will give way to interactive s which have the highest priority. Secondly, concurrency is introduced to process requests so that the compilers will not get stuck by a time consuming 4

5 job. Finally, a small cache for MDX statements and query tree objects is maintained, and efficiency is gained at the cost of some memory space. To achieve security, in addition to the routine authentication and the role based authorization, the limit exposure strategy is also adapted, i.e., except necessary services for the OLAP server to work, other system services are all shut down. 4.2 The conceptual architectural view Architectural views represent the elements of the system and the relationship among them; it shows the modules, the possible contention and the resources allocated to a component. The architectural view of MDX compiler is depicted in Fig. 2 below. Fig. 2 Architecture of the MDX compiler 4.3 Test of the MDX compiler The MDX compiler has been implemented along with the. To ensure maximum portability, only standard C++ features and libraries are used. To test the flexibility, we have run the MDX compiler against various such as Microsoft SQL Server Analysis Services, Modrian and our proprietary OLAP server, as well as various BI such as JPivot, CubeDesigner and Pentaho. Testing results demonstrate that our MDX compiler works seamlessly with these. attributes are presented. We concur with ADD on the need to consider quality attributes, along with functional requirements and system constraints, as the drivers in the design process. References: [1] Chung L., et al. Using non-functional requirements to systematically support change. 2nd IEEE Intl. Symposium on Requirements Engineering, [2] Bosch J. and Molin P. Software architecture design: Evaluation and transformation. ECBS 99, IEEE Conf. and Workshop on Engg of Comp.-Based Systems, [3] Hofmeister, C., Nord, R. L. and Soni, D. Applied Software Architecture. Reading, MA. Addison-Wesley Longman, 2000 [4] Bachmann F. and Bass L. Intro. to attribute driven design method. Proceedings. IEEE Comp. Society Intl. Conf. on Software Engg., Toronto, Canada, [5] T. Al-Naeem1, I. Gorton, M. A. Babar, F. Rabhi and B. Benatallah. A quality-driven decision-support method for identifying software architecture candidates. ICSE 05, May 15-21, 2005, St. Louis, Missouri, USA, [6] Hina M. D., Tadj C. and Ramdane-Cherif A. Attribute-driven design of incremental learning component of a ubiquitous multimodal multimedia computing system. IEEE CCECE/CCGEI, Ottawa, May 2006, [7] M. Klein and R. Kazman. Attribute-Based Architectural Styles, Tech. Report, CMU/SEI-99-TR-022, Soft Engineering Institute, Carnegie Mellon University. [8] Kruchten P. B. The 4+1 View Model of architecture. IEEE Software, 1995, 12(6): [9] Soni D., Nord R. L. and Hofmeister C. Software architecture in industrial applications. Proc. of the 17th International Conference on Software Engineering, Washington, USA, [10] George S. and Sivakumar H. MDX solutions: With Microsoft SQL Server Analysis Services 2005 and Hyperion Essb, (Edited by Jane, Flyer) 5. Conclusions This paper covers the requirement analysis of the MDX compiler of the OLAP server. Functional and quality requirements are enumerated, with discussion on deciding the driving quality attributes. Techniques to achieve those most important system quality 5

Software Architectures. Lecture 6 (part 1)

Software Architectures. Lecture 6 (part 1) Software Architectures Lecture 6 (part 1) 2 Roadmap of the course What is software architecture? Designing Software Architecture Requirements: quality attributes or qualities How to achieve requirements

More information

Introduction to software architecture Revision : 732

Introduction to software architecture Revision : 732 Introduction to software architecture Revision : 732 Denis Conan Septembre 2018 Foreword The content of these slides is extracted from the following references: L. Bass, P. Clements, and R. Kazman. Software

More information

Quality-Driven Architecture Design Method

Quality-Driven Architecture Design Method Quality-Driven Architecture Design Method Matinlassi Mari, Niemelä Eila P.O. Box 1100, 90571 Oulu Tel. +358 8 551 2111 Fax +358 8 551 2320 {Mari.Matinlassi, Eila.Niemela}@vtt.fi Abstract: In this paper

More information

Scenarios, Quality Attributes, and Patterns: Capturing and Using their Synergistic Relationships for Product Line Architectures

Scenarios, Quality Attributes, and Patterns: Capturing and Using their Synergistic Relationships for Product Line Architectures Scenarios, Quality Attributes, and Patterns: Capturing and Using their Synergistic Relationships for Product Line Architectures Muhammad Ali Babar National ICT Australia Ltd. and University of New South

More information

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 1 Faculty of Sciences, Lebanese University 2 LINA Laboratory, University of Nantes ABSTRACT:

More information

OLAP Introduction and Overview

OLAP Introduction and Overview 1 CHAPTER 1 OLAP Introduction and Overview What Is OLAP? 1 Data Storage and Access 1 Benefits of OLAP 2 What Is a Cube? 2 Understanding the Cube Structure 3 What Is SAS OLAP Server? 3 About Cube Metadata

More information

Attribute-Driven Design

Attribute-Driven Design Attribute-Driven Design Minsoo Ryu Hanyang University msryu@hanyang.ac.kr Attribute-Driven Design The ADD method is an approach to defining a software architecture in which the design process is based

More information

Quality Attribute Design Primitives and the Attribute Driven Design Method 1

Quality Attribute Design Primitives and the Attribute Driven Design Method 1 Quality Attribute Design Primitives and the Attribute Driven Design Method 1 Len Bass, Mark Klein, and Felix Bachmann Software Engineering Institute Carnegie Mellon University Pittsburgh, Pa 15213 USA

More information

Describing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms?

Describing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms? Describing the architecture: Creating and Using Architectural Description Languages (ADLs): What are the attributes and R-forms? CIS 8690 Enterprise Architectures Duane Truex, 2013 Cognitive Map of 8090

More information

Creating and Analyzing Software Architecture

Creating and Analyzing Software Architecture Creating and Analyzing Software Architecture Dr. Igor Ivkovic iivkovic@uwaterloo.ca [with material from Software Architecture: Foundations, Theory, and Practice, by Taylor, Medvidovic, and Dashofy, published

More information

Software Architecture. Lecture 5

Software Architecture. Lecture 5 Software Architecture Lecture 5 Roadmap of the course What is software architecture? Designing Software Architecture Requirements: quality attributes or qualities How to achieve requirements : tactics

More information

ADD 3.0: Rethinking Drivers and Decisions in the Design Process

ADD 3.0: Rethinking Drivers and Decisions in the Design Process ADD 3.0: Rethinking Drivers and Decisions in the Design Process Rick Kazman Humberto Cervantes SATURN 2015 Outline Presentation Architectural design and types of drivers The Attribute Driven Design Method

More information

Diseño y Evaluación de Arquitecturas de Software. Architecture Based Design Method

Diseño y Evaluación de Arquitecturas de Software. Architecture Based Design Method Diseño y Evaluación de Arquitecturas de Software Architecture Based Design Method César Julio Bustacara Medina Facultad de Ingeniería Pontificia Universidad Javeriana 08/10/2015 1 Architecture Based Design

More information

Software Architecture Recovery based on Dynamic Analysis

Software Architecture Recovery based on Dynamic Analysis Software Architecture Recovery based on Dynamic Analysis Aline Vasconcelos 1,2, Cláudia Werner 1 1 COPPE/UFRJ System Engineering and Computer Science Program P.O. Box 68511 ZIP 21945-970 Rio de Janeiro

More information

Software Performance-driven Quality Refinement of MINPHIS: an architectural view

Software Performance-driven Quality Refinement of MINPHIS: an architectural view www.ijcsi.org 275 Software Performance-driven Quality Refinement of MINPHIS: an architectural view Ishaya Gambo 1, Rhoda Ikono 2, Olaronke Iroju 3, Theresa Omodunbi 4 and Abimbola Soriyan 5 1, 2, 4 & 5

More information

Viewpoints for Sensor based Environmental Information Systems

Viewpoints for Sensor based Environmental Information Systems Viewpoints for Sensor based Environmental Information Systems Ruthbetha Kateule, Andreas Winter {kateule, winter}@se.uni-oldenburg.de Abstract: Sensor based environmental information systems are in use

More information

SOFTWARE ARCHITECTURE & DESIGN INTRODUCTION

SOFTWARE ARCHITECTURE & DESIGN INTRODUCTION SOFTWARE ARCHITECTURE & DESIGN INTRODUCTION http://www.tutorialspoint.com/software_architecture_design/introduction.htm Copyright tutorialspoint.com The architecture of a system describes its major components,

More information

20466C - Version: 1. Implementing Data Models and Reports with Microsoft SQL Server

20466C - Version: 1. Implementing Data Models and Reports with Microsoft SQL Server 20466C - Version: 1 Implementing Data Models and Reports with Microsoft SQL Server Implementing Data Models and Reports with Microsoft SQL Server 20466C - Version: 1 5 days Course Description: The focus

More information

Chapter 13 Business Intelligence and Data Warehouses The Need for Data Analysis Business Intelligence. Objectives

Chapter 13 Business Intelligence and Data Warehouses The Need for Data Analysis Business Intelligence. Objectives Chapter 13 Business Intelligence and Data Warehouses Objectives In this chapter, you will learn: How business intelligence is a comprehensive framework to support business decision making How operational

More information

Dimensions for the Separation of Concerns in Describing Software Development Processes

Dimensions for the Separation of Concerns in Describing Software Development Processes Dimensions for the Separation of Concerns in Describing Software Development Processes Pavel Hruby Navision Software Frydenlunds Allé 6 DK-2950 Vedbæk, Denmark ph@navision.com http://www.navision.com,

More information

Achieving Goals through Architectural Design Decisions

Achieving Goals through Architectural Design Decisions Journal of Computer Science 6 (12): 1424-1429, 2010 ISSN 1549-3636 2010 Science Publications Achieving Goals through Architectural Design Decisions Lena Khaled Department of Software Engineering, Faculty

More information

Architectural Blueprint The 4+1 View Model of Software Architecture. Philippe Kruchten

Architectural Blueprint The 4+1 View Model of Software Architecture. Philippe Kruchten Architectural Blueprint The 4+1 View Model of Software Architecture Philippe Kruchten Model What is a model? simplified abstract representation information exchange standardization principals (involved)

More information

Quality Attributes. Mikael Svahnberg 1. April 6, School of Computing Blekinge Institute of Technology. 1/28.

Quality Attributes. Mikael Svahnberg 1. April 6, School of Computing Blekinge Institute of Technology.   1/28. 1/28 Quality Attributes Mikael Svahnberg 1 1 Mikael.Svahnberg?bth.se School of Computing Blekinge Institute of Technology April 6, 2017 2/28 Quality What is quality? 3/28 Requirement vs Attribute A quality

More information

1. Analytical queries on the dimensionally modeled database can be significantly simpler to create than on the equivalent nondimensional database.

1. Analytical queries on the dimensionally modeled database can be significantly simpler to create than on the equivalent nondimensional database. 1. Creating a data warehouse involves using the functionalities of database management software to implement the data warehouse model as a collection of physically created and mutually connected database

More information

Comparative Analysis of Architectural Views Based on UML

Comparative Analysis of Architectural Views Based on UML Electronic Notes in Theoretical Computer Science 65 No. 4 (2002) URL: http://www.elsevier.nl/locate/entcs/volume65.html 12 pages Comparative Analysis of Architectural Views Based on UML Lyrene Fernandes

More information

Microsoft SQL Server Training Course Catalogue. Learning Solutions

Microsoft SQL Server Training Course Catalogue. Learning Solutions Training Course Catalogue Learning Solutions Querying SQL Server 2000 with Transact-SQL Course No: MS2071 Two days Instructor-led-Classroom 2000 The goal of this course is to provide students with the

More information

An UML-XML-RDB Model Mapping Solution for Facilitating Information Standardization and Sharing in Construction Industry

An UML-XML-RDB Model Mapping Solution for Facilitating Information Standardization and Sharing in Construction Industry An UML-XML-RDB Model Mapping Solution for Facilitating Information Standardization and Sharing in Construction Industry I-Chen Wu 1 and Shang-Hsien Hsieh 2 Department of Civil Engineering, National Taiwan

More information

Software Architecture

Software Architecture Software Architecture Does software architecture global design?, architect designer? Overview What is it, why bother? Architecture Design Viewpoints and view models Architectural styles Architecture asssessment

More information

SOFTWARE ARCHITECTURE INTRODUCTION TO SOFTWARE ENGINEERING PHILIPPE LALANDA

SOFTWARE ARCHITECTURE INTRODUCTION TO SOFTWARE ENGINEERING PHILIPPE LALANDA SOFTWARE ARCHITECTURE INTRODUCTION TO SOFTWARE ENGINEERING PHILIPPE LALANDA PURPOSE OF THIS CLASS An introduction to software architecture What is an architecture Why it is important How it is represented

More information

TOWARDS AUTOMATED TOOL SUPPORT FOR EXTRACTING INFORMATION FROM KNOWLEDGE REPOSITORY

TOWARDS AUTOMATED TOOL SUPPORT FOR EXTRACTING INFORMATION FROM KNOWLEDGE REPOSITORY I J I T E ISSN: 2229-7367 3(1-2), 2012, pp. 301-305 TOWARDS AUTOMATED TOOL SUPPORT FOR EXTRACTING INFORMATION FROM KNOWLEDGE REPOSITORY 1 C. DHAYA AND 2 G. ZAYARAZ 1 Research Scholar, 2 Associate Professor

More information

Partner Presentation Faster and Smarter Data Warehouses with Oracle OLAP 11g

Partner Presentation Faster and Smarter Data Warehouses with Oracle OLAP 11g Partner Presentation Faster and Smarter Data Warehouses with Oracle OLAP 11g Vlamis Software Solutions, Inc. Founded in 1992 in Kansas City, Missouri Oracle Partner and reseller since 1995 Specializes

More information

Data Warehouse and Data Mining

Data Warehouse and Data Mining Data Warehouse and Data Mining Lecture No. 04-06 Data Warehouse Architecture Naeem Ahmed Email: naeemmahoto@gmail.com Department of Software Engineering Mehran Univeristy of Engineering and Technology

More information

Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach

Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Ninat Wanapan and Somnuk Keretho Department of Computer Engineering, Kasetsart

More information

Quality-Driven Conformance Checking in Product Line Architectures

Quality-Driven Conformance Checking in Product Line Architectures Quality-Driven Conformance Checking in Product Line Architectures Femi G. Olumofin and Vojislav B. Mišić University of Manitoba, Winnipeg, Manitoba, Canada Abstract Software product line are often developed

More information

CHAPTER 9 DESIGN ENGINEERING. Overview

CHAPTER 9 DESIGN ENGINEERING. Overview CHAPTER 9 DESIGN ENGINEERING Overview A software design is a meaningful engineering representation of some software product that is to be built. Designers must strive to acquire a repertoire of alternative

More information

Software Architectures. Lecture 2

Software Architectures. Lecture 2 Software Architectures Lecture 2 Roadmap of the course What is software architecture? Designing Software Architecture Requirements: quality attributes or qualities Today How to achieve requirements : tactics

More information

Semi-Formal, not Semi-Realistic: A New Approach to Describing Software Components

Semi-Formal, not Semi-Realistic: A New Approach to Describing Software Components Semi-Formal, not Semi-Realistic: A New Approach to Describing Software Components E James Montgomery, Rune Meling, Daniela Mehandjiska School of Information Technology Bond University Queensland, Australia

More information

Business Intelligence Roadmap HDT923 Three Days

Business Intelligence Roadmap HDT923 Three Days Three Days Prerequisites Students should have experience with any relational database management system as well as experience with data warehouses and star schemas. It would be helpful if students are

More information

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802 UNIT-II Lecture Notes On UML IMPORTANCE OF MODELING, BRIEF OVERVIEW OF OBJECT MODELING TECHNOLOGY (OMT) BY RAMBAUGH, BOOCH METHODOLOGY, USE CASE DRIVE APPROACH (OOSE) BY JACKOBSON. KHALID AMIN AKHOON 1

More information

An Automatic Tool for Checking Consistency between Data Flow Diagrams (DFDs)

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

More information

Elements of a Usability Reasoning Framework

Elements of a Usability Reasoning Framework Elements of a Usability Reasoning Framework Jinhee Lee Len Bass September 2005 Software Architecture Technology Initiative Unlimited distribution subject to the copyright. Technical Note CMU/SEI-2005-TN-030

More information

A CORBA-based Multidatabase System - Panorama Project

A CORBA-based Multidatabase System - Panorama Project A CORBA-based Multidatabase System - Panorama Project Lou Qin-jian, Sarem Mudar, Li Rui-xuan, Xiao Wei-jun, Lu Zheng-ding, Chen Chuan-bo School of Computer Science and Technology, Huazhong University of

More information

Business Analytics in the Oracle 12.2 Database: Analytic Views. Event: BIWA 2017 Presenter: Dan Vlamis and Cathye Pendley Date: January 31, 2017

Business Analytics in the Oracle 12.2 Database: Analytic Views. Event: BIWA 2017 Presenter: Dan Vlamis and Cathye Pendley Date: January 31, 2017 Business Analytics in the Oracle 12.2 Database: Analytic Views Event: BIWA 2017 Presenter: Dan Vlamis and Cathye Pendley Date: January 31, 2017 Vlamis Software Solutions Vlamis Software founded in 1992

More information

Data Virtualization Implementation Methodology and Best Practices

Data Virtualization Implementation Methodology and Best Practices White Paper Data Virtualization Implementation Methodology and Best Practices INTRODUCTION Cisco s proven Data Virtualization Implementation Methodology and Best Practices is compiled from our successful

More information

A component-centric UML based approach for modeling the architecture of web applications.

A component-centric UML based approach for modeling the architecture of web applications. International Journal of Recent Research and Review, Vol. V, March 2013 ISSN 2277 8322 A component-centric UML based approach for modeling the architecture of web applications. Mukesh Kataria 1 1 Affiliated

More information

Architecture Viewpoint Template for ISO/IEC/IEEE 42010

Architecture Viewpoint Template for ISO/IEC/IEEE 42010 Architecture Viewpoint Template for ISO/IEC/IEEE 42010 Rich Hilliard r.hilliard@computer.org VERSION 2.1b Abstract This is a template for specifying architecture viewpoints in accordance with ISO/IEC/IEEE

More information

After completing this course, participants will be able to:

After completing this course, participants will be able to: Designing a Business Intelligence Solution by Using Microsoft SQL Server 2008 T h i s f i v e - d a y i n s t r u c t o r - l e d c o u r s e p r o v i d e s i n - d e p t h k n o w l e d g e o n d e s

More information

Data Warehouse and Data Mining

Data Warehouse and Data Mining Data Warehouse and Data Mining Lecture No. 03 Architecture of DW Naeem Ahmed Email: naeemmahoto@gmail.com Department of Software Engineering Mehran Univeristy of Engineering and Technology Jamshoro Basic

More information

Mei Nagappan. How the programmer wrote it. How the project leader understood it. How the customer explained it. How the project leader understood it

Mei Nagappan. How the programmer wrote it. How the project leader understood it. How the customer explained it. How the project leader understood it Material and some slide content from: - Software Architecture: Foundations, Theory, and Practice - Elisa Baniassad - Reid Holmes How the customer explained it How the project leader understood it How the

More information

Architectural Blueprint

Architectural Blueprint IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Architectural Blueprint

More information

Software Architecture Document

Software Architecture Document Software Architecture Document Clinical Research Chart Cell 1.0 1 of 18 Abstract: This is a software architecture document for CRC (Clinical Research Chart) cell. It identifies and explains the important

More information

Object Oriented Analysis and Design - Part2(Design)

Object Oriented Analysis and Design - Part2(Design) Object Oriented Analysis and Design - Part2(Design) Exam A QUESTION 1 Which statement is true about elements within the subsystem and public visibility? A. Only the subset of elements that define the subsystems

More information

Chapter 3. Database Architecture and the Web

Chapter 3. Database Architecture and the Web Chapter 3 Database Architecture and the Web 1 Chapter 3 - Objectives Software components of a DBMS. Client server architecture and advantages of this type of architecture for a DBMS. Function and uses

More information

Benefits of Automating Data Warehousing

Benefits of Automating Data Warehousing Benefits of Automating Data Warehousing Introduction Data warehousing can be defined as: A copy of data specifically structured for querying and reporting. In most cases, the data is transactional data

More information

Sindice Widgets: Lightweight embedding of Semantic Web capabilities into existing user applications.

Sindice Widgets: Lightweight embedding of Semantic Web capabilities into existing user applications. Sindice Widgets: Lightweight embedding of Semantic Web capabilities into existing user applications. Adam Westerski, Aftab Iqbal, and Giovanni Tummarello Digital Enterprise Research Institute, NUI Galway,Ireland

More information

How to Harvest Reusable Components in Existing Software. Nikolai Mansurov Chief Scientist & Architect

How to Harvest Reusable Components in Existing Software. Nikolai Mansurov Chief Scientist & Architect How to Harvest Reusable Components in Existing Software Nikolai Mansurov Chief Scientist & Architect Overview Introduction Reuse, Architecture and MDA Option Analysis for Reengineering (OAR) Architecture

More information

POSITION DESCRIPTION

POSITION DESCRIPTION State of Michigan Civil Service Commission Capitol Commons Center, P.O. Box 30002 Lansing, MI 48909 Position Code 1. INTCSPL3D16N POSITION DESCRIPTION This position description serves as the official classification

More information

Chapter 3. Databases and Data Warehouses: Building Business Intelligence

Chapter 3. Databases and Data Warehouses: Building Business Intelligence Chapter 3 Databases and Data Warehouses: Building Business Intelligence How Can a Business Increase its Intelligence? Summary Overview of Main Concepts Details/Design of a Relational Database Creating

More information

LiSEP: a Lightweight and Extensible tool for Complex Event Processing

LiSEP: a Lightweight and Extensible tool for Complex Event Processing LiSEP: a Lightweight and Extensible tool for Complex Event Processing Ivan Zappia, David Parlanti, Federica Paganelli National Interuniversity Consortium for Telecommunications Firenze, Italy References

More information

Component-Based Software Engineering TIP

Component-Based Software Engineering TIP Component-Based Software Engineering TIP X LIU, School of Computing, Napier University This chapter will present a complete picture of how to develop software systems with components and system integration.

More information

An Overview of Data Warehousing and OLAP Technology

An Overview of Data Warehousing and OLAP Technology An Overview of Data Warehousing and OLAP Technology CMPT 843 Karanjit Singh Tiwana 1 Intro and Architecture 2 What is Data Warehouse? Subject-oriented, integrated, time varying, non-volatile collection

More information

Deccansoft Software Services Microsoft Silver Learning Partner. SSAS Syllabus

Deccansoft Software Services Microsoft Silver Learning Partner. SSAS Syllabus Overview: Analysis Services enables you to analyze large quantities of data. With it, you can design, create, and manage multidimensional structures that contain detail and aggregated data from multiple

More information

1 Dulcian, Inc., 2001 All rights reserved. Oracle9i Data Warehouse Review. Agenda

1 Dulcian, Inc., 2001 All rights reserved. Oracle9i Data Warehouse Review. Agenda Agenda Oracle9i Warehouse Review Dulcian, Inc. Oracle9i Server OLAP Server Analytical SQL Mining ETL Infrastructure 9i Warehouse Builder Oracle 9i Server Overview E-Business Intelligence Platform 9i Server:

More information

Analyzing the Product Line Adequacy of Existing Components

Analyzing the Product Line Adequacy of Existing Components Analyzing the Product Line Adequacy of Existing Components Jens Knodel and Dirk Muthig Fraunhofer Institute for Experimental Software Engineering (IESE), Fraunhofer-Platz 1, D-67663 Kaiserslautern, Germany

More information

Minsoo Ryu. College of Information and Communications Hanyang University.

Minsoo Ryu. College of Information and Communications Hanyang University. Software Reuse and Component-Based Software Engineering Minsoo Ryu College of Information and Communications Hanyang University msryu@hanyang.ac.kr Software Reuse Contents Components CBSE (Component-Based

More information

CHAPTER 8: ONLINE ANALYTICAL PROCESSING(OLAP)

CHAPTER 8: ONLINE ANALYTICAL PROCESSING(OLAP) CHAPTER 8: ONLINE ANALYTICAL PROCESSING(OLAP) INTRODUCTION A dimension is an attribute within a multidimensional model consisting of a list of values (called members). A fact is defined by a combination

More information

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN NOTES ON OBJECT-ORIENTED MODELING AND DESIGN Stephen W. Clyde Brigham Young University Provo, UT 86402 Abstract: A review of the Object Modeling Technique (OMT) is presented. OMT is an object-oriented

More information

WHITE PAPER: ENHANCING YOUR ENTERPRISE REPORTING ARSENAL WITH MDX INTRODUCTION

WHITE PAPER: ENHANCING YOUR ENTERPRISE REPORTING ARSENAL WITH MDX INTRODUCTION WHITE PAPER: ENHANCING YOUR ENTERPRISE REPORTING ARSENAL WITH MDX INTRODUCTION In the trenches, we constantly look for techniques to provide more efficient and effective reporting and analysis. For those

More information

SAMPLE. Preface xi 1 Introducting Microsoft Analysis Services 1

SAMPLE. Preface xi 1 Introducting Microsoft Analysis Services 1 contents Preface xi 1 Introducting Microsoft Analysis Services 1 1.1 What is Analysis Services 2005? 1 Introducing OLAP 2 Introducing Data Mining 4 Overview of SSAS 5 SSAS and Microsoft Business Intelligence

More information

Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1

Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1 Automation of Semantic Web based Digital Library using Unified Modeling Language Minal Bhise 1 1 Dhirubhai Ambani Institute for Information and Communication Technology, Gandhinagar, Gujarat, India Email:

More information

Ontology Transformation in Multiple Domains

Ontology Transformation in Multiple Domains Ontology Transformation in Multiple Domains Longbing Cao 1, Dan Luo 2, Chao Luo 3, Li Liu 4 1,4 Faculty of Information Technology, University of Technology Sydney, Australia 2,3 Department of Electronics

More information

4th National Conference on Electrical, Electronics and Computer Engineering (NCEECE 2015)

4th National Conference on Electrical, Electronics and Computer Engineering (NCEECE 2015) 4th National Conference on Electrical, Electronics and Computer Engineering (NCEECE 2015) Benchmark Testing for Transwarp Inceptor A big data analysis system based on in-memory computing Mingang Chen1,2,a,

More information

SQL Server Analysis Services

SQL Server Analysis Services DataBase and Data Mining Group of DataBase and Data Mining Group of Database and data mining group, SQL Server 2005 Analysis Services SQL Server 2005 Analysis Services - 1 Analysis Services Database and

More information

COURSE 20466D: IMPLEMENTING DATA MODELS AND REPORTS WITH MICROSOFT SQL SERVER

COURSE 20466D: IMPLEMENTING DATA MODELS AND REPORTS WITH MICROSOFT SQL SERVER ABOUT THIS COURSE The focus of this five-day instructor-led course is on creating managed enterprise BI solutions. It describes how to implement multidimensional and tabular data models, deliver reports

More information

MSBI. Business Intelligence Contents. Data warehousing Fundamentals

MSBI. Business Intelligence Contents. Data warehousing Fundamentals MSBI CAC Noida is an ISO 9001:2015 certified training center with professional experience that dates back to 2005. The vision is to provide professional education merging corporate culture globally to

More information

Rational Software White paper

Rational Software White paper Unifying Enterprise Development Teams with the UML Grady Booch Rational Software White paper 1 There is a fundamental paradox at play in contemporary software development. On the one hand, organizations

More information

A Design of the Conceptual Architecture for a Multitenant SaaS Application Platform

A Design of the Conceptual Architecture for a Multitenant SaaS Application Platform A Design of the Conceptual Architecture for a Multitenant SaaS Application Platform Sungjoo Kang 1, Sungwon Kang 2, Sungjin Hur 1 Software Service Research Team, Electronics and Telecommunications Research

More information

Domain-Driven Development with Ontologies and Aspects

Domain-Driven Development with Ontologies and Aspects Domain-Driven Development with Ontologies and Aspects Submitted for Domain-Specific Modeling workshop at OOPSLA 2005 Latest version of this paper can be downloaded from http://phruby.com Pavel Hruby Microsoft

More information

EXPERIENCE OF COMMUNICATIONS SOFTWARE EVOLUTION AND PERFORMANCE IMPROVEMENT WITH PATTERNS

EXPERIENCE OF COMMUNICATIONS SOFTWARE EVOLUTION AND PERFORMANCE IMPROVEMENT WITH PATTERNS EXPERIENCE OF COMMUNICATIONS SOFTWARE EVOLUTION AND PERFORMANCE IMPROVEMENT WITH PATTERNS Chung-Horng Lung, Qiang Zhao, Hui Xu, Heine Mar, Prem Kanagaratnam Department of Systems and Computer Engineering

More information

Q1) Describe business intelligence system development phases? (6 marks)

Q1) Describe business intelligence system development phases? (6 marks) BUISINESS ANALYTICS AND INTELLIGENCE SOLVED QUESTIONS Q1) Describe business intelligence system development phases? (6 marks) The 4 phases of BI system development are as follow: Analysis phase Design

More information

Developing Integrated Engine for Database Administrator and Developer

Developing Integrated Engine for Database Administrator and Developer Developing Integrated Engine for Database Administrator and Developer Alan Seelan, Jeongkyu Lee Department of Computer Science and Engineering University of Bridgeport, CT {aseelan,jelee}@bridgeport.edu

More information

WHAT IS SOFTWARE ARCHITECTURE?

WHAT IS SOFTWARE ARCHITECTURE? WHAT IS SOFTWARE ARCHITECTURE? Chapter Outline What Software Architecture Is and What It Isn t Architectural Structures and Views Architectural Patterns What Makes a Good Architecture? Summary 1 What is

More information

Enterprise Data Architect

Enterprise Data Architect Enterprise Data Architect Position Summary Farmer Mac maintains a considerable repository of financial data that spans over two decades. Farmer Mac is looking for a hands-on technologist and data architect

More information

Software Reuse and Component-Based Software Engineering

Software Reuse and Component-Based Software Engineering Software Reuse and Component-Based Software Engineering Minsoo Ryu Hanyang University msryu@hanyang.ac.kr Contents Software Reuse Components CBSE (Component-Based Software Engineering) Domain Engineering

More information

EMC Documentum xdb. High-performance native XML database optimized for storing and querying large volumes of XML content

EMC Documentum xdb. High-performance native XML database optimized for storing and querying large volumes of XML content DATA SHEET EMC Documentum xdb High-performance native XML database optimized for storing and querying large volumes of XML content The Big Picture Ideal for content-oriented applications like dynamic publishing

More information

Key Differentiators. What sets Ideal Anaytics apart from traditional BI tools

Key Differentiators. What sets Ideal Anaytics apart from traditional BI tools Key Differentiators What sets Ideal Anaytics apart from traditional BI tools Ideal-Analytics is a suite of software tools to glean information and therefore knowledge, from raw data. Self-service, real-time,

More information

Perspectives on User Story Based Visual Transformations

Perspectives on User Story Based Visual Transformations Perspectives on User Story Based Visual Transformations Yves Wautelet 1, Samedi Heng 2, and Manuel Kolp 2 1 KU Leuven, Belgium yves.wautelet@kuleuven.be, 2 LouRIM, Université catholique de Louvain, Belgium

More information

Lecture 16: (Architecture IV)

Lecture 16: (Architecture IV) Lecture 16: (Architecture IV) Software System Design and Implementation ITCS/ITIS 6112/8112 091 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte Oct.

More information

Life Cycle of SAS Intelligence Platform Project

Life Cycle of SAS Intelligence Platform Project Life Cycle of SAS Intelligence Platform Project Author: Gaurav K Agrawal SAS Center of Excellence Tata Consultancy Services Ltd. C-56 Phase II, Noida, India Contact Information: gaurav.a@tcs.com gaurav_agrawal@yahoo.com

More information

Practical Database Design Methodology and Use of UML Diagrams Design & Analysis of Database Systems

Practical Database Design Methodology and Use of UML Diagrams Design & Analysis of Database Systems Practical Database Design Methodology and Use of UML Diagrams 406.426 Design & Analysis of Database Systems Jonghun Park jonghun@snu.ac.kr Dept. of Industrial Engineering Seoul National University chapter

More information

Architectural Design

Architectural Design Architectural Design Topics i. Architectural design decisions ii. Architectural views iii. Architectural patterns iv. Application architectures Chapter 6 Architectural design 2 PART 1 ARCHITECTURAL DESIGN

More information

Software Architecture Thoughts for the System Security Design

Software Architecture Thoughts for the System Security Design Software Architecture Thoughts for the System Security Design Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 James Ivers April 17, 2007 Role of Software Architecture If

More information

A Technique for Design Patterns Detection

A Technique for Design Patterns Detection A Technique for Design Patterns Detection Manjari Gupta Department of computer science Institute of Science Banaras Hindu University Varansi-221005, India manjari_gupta@rediffmail.com Abstract Several

More information

SQL Maestro and the ELT Paradigm Shift

SQL Maestro and the ELT Paradigm Shift SQL Maestro and the ELT Paradigm Shift Abstract ELT extract, load, and transform is replacing ETL (extract, transform, load) as the usual method of populating data warehouses. Modern data warehouse appliances

More information

Agent-Oriented Software Engineering

Agent-Oriented Software Engineering Agent-Oriented Software Engineering Lin Zuoquan Information Science Department Peking University lz@is.pku.edu.cn http://www.is.pku.edu.cn/~lz/teaching/stm/saswws.html Outline Introduction AOSE Agent-oriented

More information

A Novel Approach of Data Warehouse OLTP and OLAP Technology for Supporting Management prospective

A Novel Approach of Data Warehouse OLTP and OLAP Technology for Supporting Management prospective A Novel Approach of Data Warehouse OLTP and OLAP Technology for Supporting Management prospective B.Manivannan Research Scholar, Dept. Computer Science, Dravidian University, Kuppam, Andhra Pradesh, India

More information

Optimization Online Analytical Processing (OLAP) Data Sales Door Case Study CV Adilia Lestari

Optimization Online Analytical Processing (OLAP) Data Sales Door Case Study CV Adilia Lestari RESEARCH ARTICLE OPEN ACCESS Optimization Online Analytical Processing (OLAP) Data Sales Door Case Study CV Adilia Lestari Setiawansyah 1, Ayi Bayyinah 2, Nuroji 3 1 (Faculty of Engineering and Computer

More information

BUSINESS INTELLIGENCE AND OLAP

BUSINESS INTELLIGENCE AND OLAP Volume 10, No. 3, pp. 68 76, 2018 Pro Universitaria BUSINESS INTELLIGENCE AND OLAP Dimitrie Cantemir Christian University Knowledge Horizons - Economics Volume 10, No. 3, pp. 68-76 P-ISSN: 2069-0932, E-ISSN:

More information

Chapter 6 Architectural Design. Chapter 6 Architectural design

Chapter 6 Architectural Design. Chapter 6 Architectural design Chapter 6 Architectural Design 1 Topics covered Architectural design decisions Architectural views Architectural patterns Application architectures 2 Software architecture The design process for identifying

More information

Building a Data Warehouse step by step

Building a Data Warehouse step by step Informatica Economică, nr. 2 (42)/2007 83 Building a Data Warehouse step by step Manole VELICANU, Academy of Economic Studies, Bucharest Gheorghe MATEI, Romanian Commercial Bank Data warehouses have been

More information