SPDW+: a seamless approach for capturing quality metrics in software development environments

Among the key factors for the success of a metrics program are the regularity of metrics collection, a seamless and efficient data collection methodology, and the presence of non-intrusive automated data collection tools. This paper presents the software process data warehousing architecture SPDW+ as a solution to the frequent, seamless, and automated capturing of software quality metrics, and their integration in a central repository for a full range of analyses. The striking features of the SPDW+ ETL (data extraction, transformation, and loading) approach are that it addresses heterogeneity issues related to the software development context, it is automatable and non-intrusive, and it allows different capturing frequency and latency strategies, hence allowing both analysis and monitoring of software metrics. The paper also provides a reference framework that details three orthogonal dimensions for considering ETL issues in the software development process context, used to develop SPDW+ ETL. The advantages of SPDW+ are: (1) flexibility to meet the requirements of the frequent changes in SDP environments; (2) support for monitoring, which implies the execution of frequent and incremental loads; (3) automation of the complex and time-consuming task of capturing metrics, making it seamless; (4) freedom of choice regarding management models and support tools used in projects; and (5) cohesion and consistency of the information stored in the metrics repository which will be used to compare data of different projects. The paper presents the reference framework, illustrates the key role played by the metrics capturing process in a metrics program using a case study, and presents the striking features of SPDW+ and its ETL approach, as well as an evaluation based on a prototype implementation.

[1]  Fabio Casati,et al.  A Generic solution for Warehousing Business Process Data , 2007, VLDB.

[2]  Rodrigo C. Barros,et al.  Issues on Estimating Software Metrics in a Large Software Operation , 2008, 2008 32nd Annual IEEE Software Engineering Workshop.

[3]  Christian Emig,et al.  Development of SOA-Based Software Systems - an Evolutionary Programming Approach , 2006, Advanced Int'l Conference on Telecommunications and Int'l Conference on Internet and Web Applications and Services (AICT-ICIW'06).

[4]  Taghi M. Khoshgoftaar,et al.  A Hybrid Approach to Cleansing Software Measurement Data , 2006, 2006 18th IEEE International Conference on Tools with Artificial Intelligence (ICTAI'06).

[5]  Quentin W. Fleming,et al.  Earned Value Project Management , 1996 .

[6]  Khaled El Emam,et al.  Spice: The Theory and Practice of Software Process Improvement and Capability Determination , 1997 .

[7]  Christoph Steindl,et al.  Service-oriented agility: an initial analysis for the use of agile methods for SOA development , 2005, 2005 IEEE International Conference on Services Computing (SCC'05) Vol-1.

[8]  Barry Boehm,et al.  COCOMO Suite Methodology and Evolution , 2005 .

[9]  Richi Nayak,et al.  A Data Mining Application Analysis of Problems Occurring during a Software Project Development Process , 2005, Int. J. Softw. Eng. Knowl. Eng..

[10]  Duncan Dubugras Alcoba Ruiz,et al.  A data warehousing environment to monitor metrics in software development processes , 2005, 16th International Workshop on Database and Expert Systems Applications (DEXA'05).

[11]  James D. Herbsleb,et al.  Guest Editors' Introduction: Global Software Development , 2001, IEEE Softw..

[12]  Mayuram S. Krishnan,et al.  The impact of institutional forces on software metrics programs , 2005, IEEE Transactions on Software Engineering.

[13]  Fabio Casati,et al.  iBOM: a platform for intelligent business operation management , 2005, 21st International Conference on Data Engineering (ICDE'05).

[14]  Shamkant B. Navathe,et al.  Temporal Extensions to the Relational Model and SQL , 1993, Temporal Databases.

[15]  D. Ross Jeffery,et al.  An Instrument for Assessing Software Measurement Programs , 2000, Empirical Software Engineering.

[16]  Sunita Chulani,et al.  Metrics for managing customer view of software quality , 2003, Proceedings. 5th International Workshop on Enterprise Networking and Computing in Healthcare Industry (IEEE Cat. No.03EX717).

[17]  Fabio Casati,et al.  A Metric Definition, Computation, and Reporting Model for Business Operation Analysis , 2006, EDBT.

[18]  Matteo Golfarelli,et al.  Beyond data warehousing: what's next in business intelligence? , 2004, DOLAP '04.

[19]  Jan Mendling,et al.  Business Process Intelligence , 2009, Handbook of Research on Business Process Modeling.

[20]  Hassan Gomaa,et al.  Designing concurrent, distributed, and real-time applications with UML , 2000, ICSE.

[21]  R. Suganya,et al.  Data Mining Concepts and Techniques , 2010 .

[22]  Olivera Marjanovic The Next Stage of Operational Business Intelligence: Creating New Challenges for Business Process Management , 2007, 2007 40th Annual Hawaii International Conference on System Sciences (HICSS'07).

[23]  Stephen H. Kan,et al.  Metrics and Models in Software Quality Engineering , 1994, SOEN.

[24]  Boudewijn F. van Dongen,et al.  Business process mining: An industrial application , 2007, Inf. Syst..

[25]  Quentin W. Fleming,et al.  Earned Value Project Management, Second Edition , 2000 .

[26]  Linda G. Wallace,et al.  Understanding developer and manager perceptions of function points and source lines of code , 2009, J. Syst. Softw..

[27]  Jiawei Han,et al.  Data Mining: Concepts and Techniques , 2000 .

[28]  Fabio Casati,et al.  Predictive business operations management , 2005, Int. J. Comput. Sci. Eng..

[29]  Mary E. Helander,et al.  Using Software Repositories to Investigate Socio-technical Congruence in Development Projects , 2007, Fourth International Workshop on Mining Software Repositories (MSR'07:ICSE Workshops 2007).

[30]  Cmmi Product Team CMMI for Development, Version 1.2 , 2010 .

[31]  Cem Kaner,et al.  Software Engineering Metrics: What Do They Measure and How Do We Know? , 2004 .

[32]  Kenneth H. Rose,et al.  Book Review: A Guide to the Project Management Body of Knowledge (PMBOK® Guide), Fourth Edition , 2001 .

[33]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach (McGraw-Hill Series in Computer Science) , 2004 .

[34]  Taghi M. Khoshgoftaar,et al.  Learning from Software Quality Data with Class Imbalance and Noise , 2007, SEKE.

[35]  Sushil Jajodia,et al.  Temporal Databases: Theory, Design, and Implementation , 1993 .

[36]  Taghi M. Khoshgoftaar,et al.  Data Mining of Software Development Databases , 2004, Software Quality Journal.

[37]  Andreas Zeller,et al.  Mining metrics to predict component failures , 2006, ICSE.

[38]  Alain Abran,et al.  Establishing a generic and multidimensional measurement repository in CMMI context , 2003, 28th Annual NASA Goddard Software Engineering Workshop, 2003. Proceedings..

[39]  Duncan Dubugras Alcoba Ruiz,et al.  SPDW: A Software Development Process Performance Data Warehousing Environment , 2006, 2006 30th Annual IEEE/NASA Software Engineering Workshop.

[40]  Gustavo Alonso,et al.  Web Services: Concepts, Architectures and Applications , 2009 .