The SQA Framework: CEDALION®
Research results of my activity pertaining software process/product quality, software reliability growth modeling (SRGM), software defect prediction and optimal test planning (testing resources allocation) have been implemented and then conflated into a framework for software quality assurance (SQA) and decision support, named CEDALION®.
Description
CEDALION is intended to support key decisions about SQA, such as: planning V&V activities to attain specified quality goals while minimizing the monetary risk and/or the delivery time; predicting the best time to release the product; assessing the external software suppliers performing better or worse than others, against internally defined quality objectives.
A screenshot of CEDALION
The framework puts together advanced estimation, prediction and optimization algorithms devised for software quality improvement, and implements them in three key platforms:
Measurement and Estimation: to monitor/gauge processes/activities by well-known as well as newly defined key performance indicators (KPI) for quality of single processes – mainly coding, testing, maintenance tasks such as bug fixing and operational data analysis.
Prediction: implementing models to foresee quality-cost-time trends; these provide figures about the future evolution as consequence of a given decision, enabling a quantitative comparison among contrasting options. CEDALION features a set of algorithms for reliability growth modelling relating the planned testing time with the expected defect discovery rate; algorithms for predicting the expected defectiveness level of components based on static code metrics; algorithms for time-to-failure prediction based on runtime events.
Resource optimization: strategies to optimally distribute efforts for quality assurance activities, given some user-specified constraints (e.g., a maximum budget) and the desired objectives to maximize or minimize (e.g., maximize the expected software quality while minimizing the cost of quality assurance activities). CEDALION implements optimization algorithms to: i) define a detailed plan for the cost- effective fixing of ASA rule violations, ii) to prioritize the components to test soon after coding based on their expected defectiveness, iii) to suggest the best allocation of testing resources during all the system testing stage to best tune the effort in view of the minimization of residual defects.
A demo of CEDALION is available here. For commercial use and support, please contact Critiware s.r.l.. For research and education purposes, please contact me.
SQA Defects add-on for JIRAI also implemented some of the SRGM-based algorithms into a library, which is now the engine of an Add-On developed for the Atlassian marketplace, realized in collaboration with the Spanish company DEISER. The Add-On intends to calculate a different set of KPIs related with the quality of a software product. The main purpose is to give a complete set of data from which companies can take different decisions about the software development process. The Add-On is freely available on Atlassian marketplace.
Resources
Refer to the following articles for further information on research work behind CEDALION® and SQA Defects:
Defect analysis in mission-critical software systems: a detailed investigation
Dynamic test planning: a study in an industrial context
Prioritizing Correction of Static Analysis Infringements for Cost-Effective Code Sanitization
Other related works are available in the Pubblications page.