Documente Academic
Documente Profesional
Documente Cultură
Content
1. What is Software Engineering? 2. Characteristics of Software Engineering 3. History of Software Engineering 4. What is Software? 5. Role of Software Engineers 6. Why still Software Engineering? 7. Software Life Cycle 8. Practical Disasters 9. Year 2000 Problem 10. Software Projects in Industry
Reference: Fundamentals of Software Engineering by C. Ghezzi, M. Jazayeri and D. Mandrioli. Prentice Hall Publisher.
- Management.
- Mathematics.
- Psychology.
Software Crisis Requirements not well understood. No methodologies for describing what the
software should do.
High cost and time pressure. Coordination problems within the development
teams.
Software Crisis: what were the problems? Software Engineering: idea for a solution.
Summary: Building a product : software. Using a process to build that product. Use tools in support of that process (CASE
tools).
What is a Software?
What is a Software?
Requirements specication document. Design specication document. Source code. Test cases. User documentation. Technical documentation.
What is a Software?
10
11
More demands on software qualities. Control critical systems (air crafts, medical
devices, nuclear stations) where errors can have catastrophic results.
12
13
A series of phases that organize the software production process to build high quality software:
Feasibility Study: is there a solution to the problem? Analysis: dene the problem requirements. Design: build software architecture and modules. Implementation: produce source code. Testing: deal with unit testing and system testing. Maintenance: x bugs, enhance features and adapt across platforms
14
Production Activities
- Analyze problem requirements. - Decide on high-level architecture. - Produce detailed design of components. - Implement the modules. - Test the modules. - Integrate the modules and test the software. - Write user documentation. - Release to customers. - Provide maintenance.
15
Management Activities
- Plan the development of the new software. - Study the software feasibility. - Estimate deadline. - Estimate software cost (resources and people). - Organize teams.
16
Practical Disasters
Practical Disasters
17
Practical Disasters
Practical Disasters
Therac-25 (1985-1987):
- a radiation therapy and X-ray machine, - malfunctioned and killed several patients by overdose (100 times), - a nonstandard sequence of keystrokes.
18
19
20
Projects in Industry
Projects in Industry
21
Projects in Industry
US study (1995):
- software cost more than $450 billion, - $81 billion spend per year for failing software projects,
22