Download presentation
Presentation is loading. Please wait.
1
OHJELMISTOJEN TOTEUTUS - SOFTWARE ENGINEERING
Today - motivation: - Software Engineering: Why? - Software Engineering: What?
2
WHY SOFTWARE ENGINEERING?
High failure rate of software projects. Also the partially succesfull software projects have problems. A belief that systematic work could improve things.
3
HOW TO IDENTIFY SOFTWARE PROJECT SUCCESS
The product is accepted or sells Economical profit Low error rate Schedule and budget are kept
4
SUCCESS FACTORS Good project management
Understanding the needs and freezing the requirements Controlled implementation and delivery Skilled project personnel Sufficient resources Good communication between groups
5
MAJOR ERRORS Too optimistic design Over-emphasizing technology
Management problems No profitability pre-evaluation Unrealistic resources Communication problems
6
SUCCESS STUDIES - ONNI’88 (Finland)
Over 100 projects Good success: 33% Questionable: 42% Failure: 25%
7
ONNI’88 - REASONS FOR FAILURE
Inabilities of the Software Engineering personnel Insufficient resources Management problems
8
SUCCESS STUDIES: USA’82 - Gibson & Singer
18 projects Good success: 17% Partly usable/in use: 28% Satisfactory (just about?) 11% Failure: 22% No evaluation: 11%
9
USA’82 - REASONS FOR FAILURE
Organisational problems New work methods and salary policies Unexpected changes in business
10
FORSMAN’S STUDIES (FINLAND)
From Forsman’s book ”ATK-projektin läpivienti”, Suomen ATK-kustannus Oy, 1995 17 projects Good success: 18% Partially usable/in use: 29% Satisfactory (just about?): 29% Failure: 24%
11
FORSMAN - REASONS FOR FAILURE
Problems in organisation and attitudes The customer could not decide what it wants Problems with customer and software producer communication Inexperience of the software producer
12
EXAMPLES OF FAILING SOFTWARE RISKS:
Nuclear war General technical device malfunction (e.g. failing life-support devices) Economical transaction failures Economical losses in business Personal tragedies from faulty information Y2K - ?
13
A BELIEF IN SYSTEMATIC WORK AND METHODS
There is no way to guarantee success Sometimes also the not so good practices seem to bring some success However, the studies suggest that the way software is made is meaningful for the success, at least statistically Practical observations support the belief
14
LARGE SYSTEMS Some problems grow with the size of the software, below we give example sizes: Dutch KLM airline reservation system (1993), assembler loc (lines of code) Unix System V, relese 4.0 with Xnews and X11, over loc Nokia NMS/2000 network management system, over loc NASA Space Shuttle software, lines of object code IBM OS360: 5000 man years of development
15
SOFTWARE ENGINEERING - WHAT
IEEE: Software engineering is the systematic approach to the development, operation, maintenance, and retirement of software An earlier definition: Software engineering is the establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines.
16
SOFTWARE ENGINEERING - WHAT (observations)
Software engineering concerns the construction of large programs. Mastering complexity is essential. Regular co-operation between people is an integral part of the process. Software evolves. Software development efficiency is important The software has to serve its purpose and users.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.