1 / 14

Database Complexity Metrics

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

juro
Download Presentation

Database Complexity Metrics

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Database ComplexityMetrics 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.

More Related