Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Copper Bullet for Software Quality Improvement Michael Blaha Computer (IEEE), Volume: 37 No. 2, Feb. 2004.

Similar presentations


Presentation on theme: "A Copper Bullet for Software Quality Improvement Michael Blaha Computer (IEEE), Volume: 37 No. 2, Feb. 2004."— Presentation transcript:

1 A Copper Bullet for Software Quality Improvement Michael Blaha Computer (IEEE), Volume: 37 No. 2, Feb. 2004

2 Copper Bullets Fred Brooks ‘no silver bullet’ – no single action that the computing community can take to radically improve software quality Copper bullets – lesser actions that improve quality over time

3 Software Engineering = copper bullet Large and complex software makes benefits of SE less noticeable Unprecedented number of project failures >>> NEED MORE COPPER BULLETS

4 Proposal Use database reverse engineering to measure the quality of software Flawed database  Other quality issues Sound database  Good overall quality

5 Why needed? Companies examine software based on –Cost –Functionality –User Interface –Vendor Stability Nothing to measure intrinsic quality

6 Evaluation Database reverse engineering will measure the quality of the product Time spent is trivial compared to cost of product and cost of implementation Benefits are immediate and far reaching

7 Copper Bullet Effect Evaluation pressures vendors to improve Improvement means upgrading practices Technical merit >= Marketing savvy Better products  More sales, better prices Lesser products  Less sales, future ? Aggregate vendor quality  better for entire software community

8 How is database reverse engineering done? Reverse engineering starts at the end and works backward to deduce the requirements Most large products have databases Vendors more willing to provide database structure than code Vendors are asked for design and model

9 More How-to Logic Reverse engineering is not new, not unethical In this case, used for evaluation, not to expose secrets Non-disclosure agreement Reverse engineering not practical for copying product by companies looking to buy product

10 Additional Benefits Get past assumptions and sales claims Get deeper understanding of the product Better communication with the vendor Use software more effectively Clearly answer “What is the vendor selling?”

11 Grading Scale

12 About Grading Adopted scale in 1992 Business leaders understand the grade Supported by technical details Details can be reviewed

13 History Began doing reverse database engineering since 1992 www.modelsoftcorp.com First time was an experiment –Perplexed by experience with vendor product –Vendor was large and credible –Sales pitch good –Vendor understood business requirements

14 History Decided to look at the database –Found its poor quality was root of problems Decided to look at other product databases Determined it should be routinely performed

15 Results of 11 years of grades Varied vendors, in house products, and team evaluators Many applications have flawed databases –Anonymous address fields –Use sequence number to resolve 1 to many relationship –Overloaded foreign keys –Propagated identity –Linked tables by human inspection rather than referential integrity

16 Results of 11 years of grades Design average improved 1.7 to 2.2 Model average improved 1.9 to 2.2 In house product vs vendor product similar

17 Causes for Low Averages Developers do not appreciate modeling Abstraction most difficult part of modeling Need to teach the art and thought processes behind modeling

18 Conclusion Database quality is good indicator of application quality Business leaders like the help in evaluating vendors/software Database reverse engineering should be routinely practiced The ripple effect is a copper bullet

19 The Copper Bullet Effect Reward excellent vendors, penalize sloppy ones As vendors improve, then through transfer of personnel, in house developers will improve Universities will see the need to teach database courses better Overall software quality will improve Copper bullet effect of entire software community

20 Dr. Michael Blaha Dr. Blaha - doctoral degree from Washington University in St. Louis, Missouri alumnus of the GE R&D Center in Schenectady, New York. areas of interest are modeling, database design, object- oriented technology, and reverse engineering. authored a number of papers and three books an independent consultant and trainer in the areas of modeling, database design, and reverse engineering. a partner of Modelsoft Consulting Corp.


Download ppt "A Copper Bullet for Software Quality Improvement Michael Blaha Computer (IEEE), Volume: 37 No. 2, Feb. 2004."

Similar presentations


Ads by Google