The Curse of Flexibility Software is the resting place of afterthoughts No physical constraints To enforce discipline on design, construction and modification To control complexity So flexible that start working with it before fully understanding what need to . And they looked upon the software and saw that it was good, but they just had to add one other feature Software Myths Good software engineering is the same for all types of software 2. Software is easy to change 3. Software errors are simply"teething" problems 4. Reusing software will increase safety 5. Testing or"proving" software correct will remove all the errorsc ✂✁✂✄☎✁✂✆☎✝✂✞✠✟☛✯ ✙✝✂✖✠✚✂✛✂✜✁✂✒✆✣✢✂✞✂✤✠✥✧✦✆☎★ The Curse of Flexibility Software is the resting place of afterthoughts No physical constraints To enforce discipline on design, construction and modification To control complexity So flexible that start working with it before fully understanding what need to do ‘‘And they looked upon the software and saw that it was good, but they just had to add one other feature ...’’ c ✂✁✂✄☎✁✂✆☎✝✂✞✠✟✌☞✱✰ ✙✝✂✖✠✚✂✛✂✜✁✂✒✆✣✢✂✞✂✤✠✥✧✦✆☎★ Software Myths 1. Good software engineering is the same for all types of software. 2. Software is easy to change. 3. Software errors are simply ‘‘teething’’ problems. 4. Reusing software will increase safety. 5. Testing or ‘‘proving’’ software correct will remove all the errors