16.982 Advanced Software Engineering Fa2000
16.982 Advanced Software Engineering Fall 2000
Problem Background Why hard? Outline Syllabus °| s There a problem? Background Information Why is Software Engineering Hard? Syllabus and Class Description opyright Nancy Leveson, Sept 2000
Problem Background Why Hard? Slyllabus Outline Is There a Problem? Background Information Why is Software Engineering Hard? Syllabus and Class Description Copyright c Nancy Leveson, Sept. 2000 ✁
o Problem Is there a problem? Why Hard? Syllabus EXamples AAS(FAA Advanced Automation System) FBI CIC IRS Modernization Program ·C-17 · Ariane5 Head of af Systems command: Software is the achilles heel of weapons development 7 out of every 10 major weapons development programs are encountering software problems and rate is increasing Copyrig ancy Leveson, Sept 1999
✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂✂ Is there a problem? ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ Examples: AAS (FAA Advanced Automation System) FBI CIC IRS Modernization Program C-17 Ariane 5 Problem Trends Why Hard? Slyllabus Head of AF Systems Command: ‘‘Software is the achilles heel of weapons development" 7 out of every 10 major weapons development programs are encountering software problems and rate is increasing. Copyright c Nancy Leveson, Sept. 1999 ☎
-e Problem Trends Some"Data"(Myths? Why Hard? Syllabus The development of large applications in excess of 5000 function points(500, 000 LoC)is one of the most risky business undertakings in the modern. world(Capers Jones) The risks of cancellation or major delays rise rapidly as the overall application size increases(Capers Jones) 65%of large systems(over 1,000,000 LOC)are cancelled before completion 50% for systems exceeding half million LOC 25 for those over 100 000 loc Failure or cancellation rate of large software systems is over 20%(Capers Jones) Copyright Nancy Leveson, Sept 1999
✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆✆ Problem Trends Why Hard? ✝ Some "Data" (Myths?) ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ ✝ Slyllabus The development of large applications in excess of 5000 function points (~500,000 LOC) is one of the most risky business undertakings in the modern. world (Capers Jones) The risks of cancellation or major delays rise rapidly as the overall application size increases (Capers Jones): 65% of large systems (over 1,000,000 LOC) are cancelled before completion 50% for systems exceeding half million LOC 25 % for those over 100,000 LOC Failure or cancellation rate of large software systems is over 20% (Capers Jones) Copyright Nancy Leveson, Sept. 1999 c ✞
Problem Trends Why hard? Syllabus More "Data"(Myths?) After surveying 8,000 IT projects, Standish Group reported about 30% of all projects were cancelled Average cancelled project in U.S. is about a year behind schedule and has consumed 200% of expected budget (Capers Jones) Work on cancelled projects comprises about 15% of total U.S. software efforts amounting to as much as $14 billion in 1993 dollars(Capers Jones Copyright Nancy Leveson, Sept 1999
✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟✟ Problem Trends Why Hard? Slyllabus More "Data" (Myths?) ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ ✠ After surveying 8,000 IT projects, Standish Group reported about 30% of all projects were cancelled. Average cancelled project in U.S. is about a year behind schedule and has consumed 200% of expected budget (Capers Jones). Work on cancelled projects comprises about 15% of total U.S. software efforts, amounting to as much as $14 billion in 1993 dollars (Capers Jones). c Copyright Nancy Leveson, Sept. 1999 ✡
-e Problem Trends Why Hard? Syllabus And yet more Of completed projects, 2/3 experience schedule delays and cost overruns( Capers Jones)[bad estimates?] 2/3 of completed projects experience low reliability and quality problems in first year of deployment (Jones) Software errors in fielded systems typically range from 0. 5 to 3.0 occurrences per 1000 lines of code( Bell Labs survey) Civilian software: at least 1 00 english words produced for every source code statement Military: about 400 words(Capers Jones Copyright Nancy Leveson, Sept 1999
☛☛☛☛☛☛☛☛☛☛☛☛☛☛☛☛☛☛☛☛☛☛☛☛ Problem Trends Why Hard? Slyllabus And Yet More ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ ☞ Of completed projects, 2/3 experience schedule delays and cost overruns (Capers Jones) [bad estimates?] 2/3 of completed projects experience low reliability and quality problems in first year of deployment (Jones). Software errors in fielded systems typically range from 0.5 to 3.0 occurrences per 1000 lines of code (Bell Labs survey). Civilian software: at least 100 English words produced for every source code statement. Military: about 400 words (Capers Jones) c Copyright Nancy Leveson, Sept. 1999 ✌
-e Problem Trends Why Hard? Have you ever been on a project where the Syllabus software was never finished or used? What were some of the problems? cy Leveson, Sept. 1999
Problem Trends Why Hard? Slyllabus Have you ever been on a project where the software was never finished or used? What were some of the problems? c Copyright Nancy Leveson, Sept. 1999 ✍
-e Problem Trends Why Hard? Death March Projects Feature(scope)creep Thrashing Integration problems Overwriting source code Constant re-estimation Redesign and rewriting during test No documentation of design decisions Etc Copyright Nancy Leveson, Sept 1999
✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎✎ Problem Trends Why Hard? Slyllabus Death March Projects ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ ✏ Feature (scope) creep Thrashing Integration problems Overwriting source code Constant re-estimation Redesign and rewriting during test No documentation of design decisions Etc. Copyright c Nancy Leveson, Sept. 1999 ✑
-e Problem Trends Why Hard? Types of Problem Projects(Yourdan · Mission Impossible Likely to succeed, happy workers Ugly Likely to succeed, unhappy workers Kamikaze Unlikely to succeed, happy workers · Suicide Unlikely to succeed, unhappy workers Copyright Nancy Leveson, Sept 1999
✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒✒ Problem Trends Why Hard? Slyllabus Types of Problem Projects (Yourdan) ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ Mission Impossible Likely to succeed, happy workers Ugly Likely to succeed, unhappy workers Kamikaze Unlikely to succeed, happy workers Suicide Unlikely to succeed, unhappy workers Copyright c Nancy Leveson, Sept. 1999 ✔
e Problem renas Why Hard? Syllabus Development Costs Analyze Developmen Test Planning/Coding Maintain Test 1/3 planning 1/6 coding 1/4 component test Development costs are only 1/4 system test the tip of the iceberg Copyright Nancy Leveson, Sept 1999
✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕✕ ✕✖ ✕✖ Understanding the Problem ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✕✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ Problem Trends Why Hard? Slyllabus Development Costs Coding Test Planning ✗✙✘✛✚✜✘✣✢ ✤✣✥✣✦✧✘✣★✪✩ ✫✭✬✯✮✯✰✱✳✲✣✴ ✵✙✴✷✶✳✸✹✯✬ ✺✼✻✯✽✴ ✾✿✴✷✶✳❀ ❁❂✮✯✸✬✷❀❃✮✯✸✬ 1/3 planning 1/6 coding 1/4 component test Development costs are only 1/4 system test the tip of the iceberg. Copyright c Nancy Leveson, Sept. 1999 ❅❄