With daily occurrences of news-making software failures resulting more often from structural flaws rather than functional defects, industry is realizing that the cost and risk of business software is related more to structural (engineering) quality rather than functional quality. Unfortunately, traditional verification methods, mostly testing, focus on functional correctness. Results from statically analyzing the structural quality of 745 large business applications consisting of 365,000,000 lines of code from 160 companies in 14 countries and 10 industry segments will be presented. Differences in Robustness, Security, Performance Efficiency, Changeability, and Transferability among languages (.Net, Java, C, C++, ABAP, COBOL, etc.), industry segments (finance, telecom, retail, government, etc.), development method (waterfall, agile, etc.), sourcing choices, and other factors will be presented. An approach for measuring the emerging topic of Technical Debt will be discussed along with associated empirical results. The research is in its initial stage and the results yield more research questions than answers. The talk will end with a discussion of actions being taken by the Consortium for IT Software Quality (CISQ) to establish and deploy global standards for the automated measurement of software functional size and structural quality.
Sunday, May 06, 2012
Free and open to the public