Database Complexity Metrics Brad Freriks SWE6763, Spring 2011.

Slides:



Advertisements
Similar presentations
Three-Step Database Design
Advertisements

Database Systems: Design, Implementation, and Management Tenth Edition
Learning Objectives Copyright © 2002 South-Western/Thomson Learning Data Analysis: Bivariate Correlation and Regression CHAPTER sixteen.
Prediction of fault-proneness at early phase in object-oriented development Toshihiro Kamiya †, Shinji Kusumoto † and Katsuro Inoue †‡ † Osaka University.
Object-Oriented Metrics. Characteristics of OO ● Localization ● Encapsulation ● Information hiding ● Inheritence ● Object abstraction.
Object-Oriented Databases v OO systems associated with – graphical user interface (GUI) – powerful modeling techniques – advanced data management capabilities.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3 The Basic (Flat) Relational Model.
SE curriculum in CC2001 made by IEEE and ACM: Overview and Ideas for Our Work Katerina Zdravkova Institute of Informatics
Software Metrics II Speaker: Jerry Gao Ph.D. San Jose State University URL: Sept., 2001.
File Systems and Databases
Software Engineering Metrics for Object Oriented Programming Developed by – Shrijit Joshi.
Software metrics Selected key concepts. Introduction Motivation:  Management:  Appraisal  Assurance  Control  Improvement  Research:  Cause-effect.
Object-Oriented Metrics
Geographic Information Systems
Sharif University of Technology Session # 7.  Contents  Systems Analysis and Design  Planning the approach  Asking questions and collecting data 
RIZWAN REHMAN, CCS, DU. Advantages of ORDBMSs  The main advantages of extending the relational data model come from reuse and sharing.  Reuse comes.
Using A Defined and Measured Personal Software Process Watts S. Humphrey CS 5391 Article 8.
Trisha Cummings.  Most people involved in application development follow some kind of methodology.  A methodology is a prescribed set of processes through.
Chidamber & Kemerer Suite of Metrics
Information storage: Introduction of database 10/7/2004 Xiangming Mu.
Week 1 Lecture MSCD 600 Database Architecture Samuel ConnSamuel Conn, Asst. Professor Suggestions for using the Lecture Slides.
Learning Objective Chapter 14 Correlation and Regression Analysis CHAPTER fourteen Correlation and Regression Analysis Copyright © 2000 by John Wiley &
Copyright © 2010, 2007, 2004 Pearson Education, Inc. All Rights Reserved Section 10-1 Review and Preview.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 1 Refactoring.
Web-Enabled Decision Support Systems
A Framework for Examning Topical Locality in Object- Oriented Software 2012 IEEE International Conference on Computer Software and Applications p
By: Eng. Mohamed Awad Elshaarawy Supervisors: Prof. Dr. Ismail Taha, Dr. Haitham S.Hamza Date: 8 th Jul, 2013 Towards a Unified Framework for Measuring.
Chapter 9 Designing Databases Modern Systems Analysis and Design Sixth Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Software Measurement & Metrics
Information System Development Courses Figure: ISD Course Structure.
1 OO Metrics-Sept2001 Principal Components of Orthogonal Object-Oriented Metrics Victor Laing SRS Information Services Software Assurance Technology Center.
E. Wainright Martin Carol V. Brown Daniel W. DeHayes Jeffrey A. Hoffer William C. Perkins MANAGINGINFORMATIONTECHNOLOGY FIFTH EDITION CHAPTER 5 T HE D.
C6 Databases. 2 Traditional file environment Data Redundancy and Inconsistency: –Data redundancy: The presence of duplicate data in multiple data files.
Prepared By Prepared By : VINAY ALEXANDER ( विनय अलेक्सजेंड़र ) PGT(CS),KV JHAGRAKHAND.
1 Metrics and lessons learned for OO projects Kan Ch 12 Steve Chenoweth, RHIT Above – New chapter, same Halstead. He also predicted various other project.
An Automatic Software Quality Measurement System.
Chapter 2: Behavioral Variability and Research Variability and Research 1. Behavioral science involves the study of variability in behavior how and why.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Database Design Some of these slides are derived from IBM/Rational slides from courses on UML and object-oriented design and analysis. Copyright to the.
CSc 461/561 Information Systems Engineering Lecture 5 – Software Metrics.
Article Summary of The Structural Complexity of Software: An Experimental Test By Darcy, Kemerer, Slaughter and Tomayko In IEEE Transactions of Software.
Copyright © 2010 Pearson Education, Inc Chapter Seventeen Correlation and Regression.
West Virginia University Sherif Yacoub, Hany H. Ammar, and Ali Mili A UML Model for Analyzing Software Quality Sherif Yacoub, Hany H. Ammar, and Ali Mili.
Object-Oriented (OO) estimation Martin Vigo Gabriel H. Lozano M.
Ontology Support for Abstraction Layer Modularization Hyun Cho, Jeff Gray Department of Computer Science University of Alabama
Jemerson Pedernal IT 2.1 FUNDAMENTALS OF DATABASE APPLICATIONS by PEDERNAL, JEMERSON G. [BS-Computer Science] Palawan State University Computer Network.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix A Object-Oriented Analysis and Design A.1.
Chapter 3 The Relational Model. Objectives u Terminology of relational model. u How tables are used to represent data. u Connection between mathematical.
OBJECT-ORIENTED DESIGN JEAN SIMILIEN. WHAT IS OBJECT-ORIENTED DESIGN? Object-oriented design is the process of planning a system of interacting objects.
Data Models. 2 The Importance of Data Models Data models –Relatively simple representations, usually graphical, of complex real-world data structures.
Introduction: Databases and Database Systems Lecture # 1 June 19,2012 National University of Computer and Emerging Sciences.
A Hierarchical Model for Object-Oriented Design Quality Assessment
The Movement To Objects
Course Notes Set 12: Object-Oriented Metrics
Object-Oriented Database Management System (ODBMS)
Data Models.
Object-Oriented Metrics
Geographic Information Systems
Design Metrics Software Engineering Fall 2003
CHAPTER fourteen Correlation and Regression Analysis
Design Metrics Software Engineering Fall 2003
Advanced Database Models
Information flow-Test coverage measure
File Systems and Databases
Chapter 20 Object-Oriented Analysis and Design
Chapter 19 Technical Metrics for Software
PPT6: Object-oriented design
Appendix A Object-Oriented Analysis and Design
Presentation transcript:

Database Complexity Metrics Brad Freriks SWE6763, Spring 2011

Database Complexity Metrics Why metrics for databases? – No longer just simple files/tables with little complexity – Now, a core part of development efforts What is a relational database? – Entity-relationship diagram Entities (Tables) Attributes (Columns) Relationships (Primary Keys and Foreign Keys) – May include queries, forms, reports, functions, assertions, and complex data types

Database Complexity Metrics Entity-relationship diagram

Database Complexity Metrics Evolution of metrics – Bang metric by DeMarco – Emperical study by MacDonnel, Shepperd, and Sallis – Piattini, Calero, and Genero extended with formal validation framework – Jamil and Batool with SMARtS Framework for defining and validating database metrics

Database Complexity Metrics Metrics Definition – Account for specific database characteristics we want to measure – Based on experience of database designers and administrators – GQM Theoretical Validation – Zuse (1998) – measurement theory-based framework – Briand (1996) – axiomatic based framework Empirical Validatation – Strong focus of research efforts – Based on historical project of small and limited focus (mostly academic)

Database Complexity Metrics Metric Definition DRT - length of the longest referential path in the database schema COS - sum of the square of the number of tables in each unrelated subgraph of the database schema.

Database Complexity Metrics Zuse’s Formal Framework – Set of properties for measure, which characterize different measurement structures for determination of a metric's scale (nominal, ordinal, interval, ratio) – Ratio scale - satisfies the modified extensive structure – Ordinal scale - does not satisfy the modified extensive structure but does the independence conditions – Above the ordinal scale (interval, ratio) - satisfies the modified relation of belief

Database Complexity Metrics Briand’s Formal Framework – Set of mathematical properties that characterize and formalize several important measurement concepts: size, length complexity, cohesion, and coupling

Database Complexity Metrics Results of Formal Validation – NFK, DRT, and NA only satisfy axiom 1, 3, and 4 – COS satisfies all axioms

Database Complexity Metrics Empirical Validation – MacDonnel, Shepperd, and Sallis 70 small to medium database systems comprising database schema & 4GL applications Projection of application code size based on database schema metrics Linear relationship with strong correlation by Pearson & Spearman ATTRIB (number of attributes) and NONMENU (non-menu functions) primarily defined size – Piattini, Calero, and Genero 60 students Hypothesized, tested, and performed statistical analysis Concluded NFK (number of foreign keys) was a more solid indicator of schema understandability than DRT (depth of referential tree) – Pavlic, Kaluza, and Vrcek DC – Database Complexity method Sum of all relevant elements Showed attributes had a significant effect on database complexity – Jamil and Batool (SMARtS: Software Metric Analyzer for Relational Database Systems) Similar to MacDonnel et al - not only considered tables and relationships in the database schema, but an application layer consisting of queries, forms, and reports Characteristics of these objects vary and are assigned a complexity determining factor (CDF) to more properly weight the actual effort for developing the applications

Database Complexity Metrics Based on sum of CDF weights, classified as Simple, Average, or Complex Complexity estimate using Database Points (DBP) metric 8 projects resulted in 0.8 correlation suggesting high correlation for calculating real effort based on computed complexity

Database Complexity Metrics Object-relational databases – Add object-oriented principles to a relational database – Classes and abstract data types create complex user-defined data types Piattini, Calero, and Genero metrics – Schema size (SS) and table size (TS) with reference to simple and complex columns (taking into account the level of inheritance). Justus & Iyakutti – Number of weighted methods per class (NWC) – Depth in the relational tree (DRT) – Referential degree (RD) – Number of involved classes (NIC) – Number of shared classes (NSC) – Coupling between object (CBO) – Cohesion between methods (COM) – Based on the "Metrics Suite for Object Oriented Design" from Chidamber and Kemerer

Database Complexity Metrics Conclusion – Databases are becoming more complex and integral to application development – Projections needed for implementation and maintenance efforts – MacDonnel, Shepperd, and Sallis work expanded by Jamil and Batool Best projection method found based on professional experience. Tailored to individual environments by adjusted the CDF weights and complexity estimations in DBP metric Estimates at early parts of the development cycle Refined during design and coding phases – Object-relational databases are more recent Fewer metrics Existing OO metric suites can be applied with minor alterations – Empirical validation mostly focused on small systems development in academia – Does not fully extend into large system development in commercial enterprises – Opportunity for significantly more research into metrics for relational and object- relational database complexity

Database Complexity Metrics Beckler, S. A. (2001). Developing Quality Complex Database Systems: Practices, Techniques, and Technologies. Hershey, PA: Idea Group Publishing. Jamil, B. & Batool, A. (June 2010). SMARtS: Software Metric Analyzer for Relational Database Systems. Information and Emerging Technologies (ICIET) 2010 International Conference. Justus, S. & Iyakutti, K. (2007). Accessing the Object-level Behavioral Complexity in Object Relational Databases IEEE International Conference on Software-Science, Technology & Engineering, Pavlic, M., Kaluza, M., & Vrcek, N. (2008). Database Complexity Measuring Method. Central European Conference on Information and Intelligent Systems, CECIIS – Retrieved from Piattini, M., Calero C., & Genero, M. (2001). Table Oriented Metrics for Relational Databases. Software Quality Journal, 9(2),