Presentation is loading. Please wait.

Presentation is loading. Please wait.

MADALINA CROITORU Software Engineering week 1 Madalina Croitoru IUT Montpellier.

Similar presentations


Presentation on theme: "MADALINA CROITORU Software Engineering week 1 Madalina Croitoru IUT Montpellier."— Presentation transcript:

1 MADALINA CROITORU croitoru@lirmm.fr Software Engineering week 1 Madalina Croitoru IUT Montpellier

2 MADALINA CROITORU croitoru@lirmm.fr What is Software Engineering? The IEEE Computer Society defines software engineering as: –The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software. –The study of approaches as in (1).

3 MADALINA CROITORU croitoru@lirmm.fr Engineering (a definition) The application of applied science and mathematics to produce solutions to problems or produce a product. In software engineering, we produce software; programs, documentation and configuration. There are two types of software: generic and bespoke.

4 MADALINA CROITORU croitoru@lirmm.fr Software engineering has a wide scope Mathematics Computer science Economics Management Ethics

5 MADALINA CROITORU croitoru@lirmm.fr Famous engineering failures

6 MADALINA CROITORU croitoru@lirmm.fr Tacoma bridge 1940

7 MADALINA CROITORU croitoru@lirmm.fr The day the phones stopped ringing A single missing “break” statement in a C program resulted in the loss of a long distance telephone service in the USA Economic damage was about $100,000,000 Use of formal methods –Link a model to a software implementation –UML B

8 MADALINA CROITORU croitoru@lirmm.fr Complexity The main problem is complexity UNIX contains 4 million lines of code WINDOWS 2000 – 10 18 lines of code Software engineering is about managing this complexity

9 MADALINA CROITORU croitoru@lirmm.fr Difficulties Software development is hard Easy case: one developer, one user vs hard case: multiple developers, multiple users One person techniques do not scale up

10 MADALINA CROITORU croitoru@lirmm.fr Software crisis Survey of outcomes from Standish Group 280,000 development projects 1.Successful 2.Cancelled 3.Late, over budget, incomplete

11 MADALINA CROITORU croitoru@lirmm.fr Whittaker paper common reasons Poor project planning. Specifically, inadequate risk management and a weak project plan. Risk management becomes more important as the organization gets bigger, so larger organizations need to pay more attention to this area. A weak business case. The need for the system should be justified in ways that relate directly to the organization's business needs.

12 MADALINA CROITORU croitoru@lirmm.fr More reasons Lack of top management involvement and support. This often dooms the project to failure before it starts. Securing buy-in from the top, often by a strong business case backed up with a realistic project plan, is an essential step.

13 MADALINA CROITORU croitoru@lirmm.fr Goals of software engineering Satisfy user requirements High reliability Low maintenance costs Deliver on time Low production cost High performance Ease of reuse

14 MADALINA CROITORU croitoru@lirmm.fr Satisfying user requirements Large-scale commissioned systems: –45% delivered but not used –27% paid for but not delivered –17% abandoned –6% used after changes –5% used as delivered Users find it hard to articulate what they want Developers find it hard to understand what users say

15 MADALINA CROITORU croitoru@lirmm.fr Low maintenance costs Maintenance: what is done to the software after it starts being used – 65% of overall project cost Corrective: fixing bugs Adapting: altering software to adapt to changing software Perfective: new requirements Preventative: prevents further maintenance

16 MADALINA CROITORU croitoru@lirmm.fr Reliability You can prove bugs are there but cannot prove they are not Bugs are expensive in terms of: –Human lives –Money –Poor customer relations

17 MADALINA CROITORU croitoru@lirmm.fr Delivery on time Relationship person-months vs development time is not linear: –Adding person-months of effort to a project usually has no effect –Sometimes makes the project slower It is really hard to predict when a project will complete and how much effort will require

18 MADALINA CROITORU croitoru@lirmm.fr Production costs US Software production 1985: 70 billion $ US Software production 2000: 700 billion$ US Software production 2015: ???

19 MADALINA CROITORU croitoru@lirmm.fr Ease of reuse Goal of system reuse: use same software in different systems: –Reduce development cost –Increase reliability Most software has two parts: –Environment independent part –Environment dependent (GUI etc.)

20 MADALINA CROITORU croitoru@lirmm.fr


Download ppt "MADALINA CROITORU Software Engineering week 1 Madalina Croitoru IUT Montpellier."

Similar presentations


Ads by Google