Presentation is loading. Please wait.

Presentation is loading. Please wait.

Database Complexity Metrics Brad Freriks SWE6763, Spring 2011.

Similar presentations


Presentation on theme: "Database Complexity Metrics Brad Freriks SWE6763, Spring 2011."— Presentation transcript:

1 Database Complexity Metrics Brad Freriks SWE6763, Spring 2011

2 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

3 Database Complexity Metrics Entity-relationship diagram

4 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

5 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)

6 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.

7 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

8 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

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

10 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

11 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

12 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

13 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

14 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. 2007 IEEE International Conference on Software-Science, Technology & Engineering, 48-56. Pavlic, M., Kaluza, M., & Vrcek, N. (2008). Database Complexity Measuring Method. Central European Conference on Information and Intelligent Systems, CECIIS – 2008. Retrieved from http://www.ceciis.foi.hr/app/index.php/ceciis/2008/paper/view/84. Piattini, M., Calero C., & Genero, M. (2001). Table Oriented Metrics for Relational Databases. Software Quality Journal, 9(2), 79-97.


Download ppt "Database Complexity Metrics Brad Freriks SWE6763, Spring 2011."

Similar presentations


Ads by Google