Background ◆ Software Cost Coding Requirements Testing Maintenance June17,2004 o Massachusetts institute of technology 2002
June 17, 2004 June 17, 2004 © Massachusetts Institute of Technology, 2002 6 Background Software Cost Maintenance Testing Requirements Coding
Requirements specification Most critical portion of the software lifecycle Majority of errors in software can be traced back to flaws in the requirements Many methods and types of requirements including Informal formal .English Zed UML . State Machines .Intent Specifications June17,2004 o Massachusetts institute of technology 2002
June 17, 2004 June 17, 2004 © Massachusetts Institute of Technology, 2002 7 Requirements Specification Most critical portion of the software lifecycle Majority of errors in software can be traced back to flaws in the requirements Many methods and types of requirements including: Informal •English •UML Formal •Zed •State Machines •Intent Specifications
Approaches to Design Software design grew out of the structured programming movement beginning in the 1960s o Many approaches to design including Functional decomposition Object-Orientation(OO) Event-based CBSe Agent Architectures What approach to Software Design is appropriate for Satellite Engineering? June17,2004 o Massachusetts institute of technology 2002
June 17, 2004 June 17, 2004 © Massachusetts Institute of Technology, 2002 8 Approaches to Design Software design grew out of the structured programming movement beginning in the 1960s Many approaches to design including: Functional Decomposition Object-Orientation (OO) Event-based CBSE Agent Architectures What approach to Software Design is appropriate for Satellite Engineering?
Implementation Only 10% of the software development effort Other 90%made up of planning and testing ◆ Issues include Programming Languages COTS and Reuse Interfaces June17,2004 o Massachusetts institute of technology 2002
June 17, 2004 June 17, 2004 © Massachusetts Institute of Technology, 2002 9 Implementation Only 10% of the software development effort!!! Other 90% made up of planning and testing Issues include: Programming Languages COTS and Reuse Interfaces
Testing Examining a program to see if it does not do what it is supposed to do is only half the battle-the other half is seeing whether the program does what it is not supposed to do prob more errors errors already found June17,2004 o Massachusetts institute of technology 2002 10
June 17, 2004 June 17, 2004 © Massachusetts Institute of Technology, 2002 10 Testing Examining a program to see if it does not do what it is supposed to do is only half the battle – the other half is seeing whether the program does what it is not supposed to do!