Quick viewing(Text Mode)

Internet Engineering Jan Nikodem, Ph.D. Software Engineering

Internet Engineering Jan Nikodem, Ph.D. Software Engineering

Internet Engineering

Jan Nikodem, Ph.D.

Software Engineering crisis

Software Engineering Lecture 2 The term "" was coined at the first NATO Software Engineering Conference in 1968

by:

Nationality;Dutch, astronomer, NielsBohr Institute, Technical University of Denmark, University of Copenhagen. Peter Naur 1928

3/25 The term "software crisis" was coined at the first NATO Software Engineering Conference in 1968

by:

Friedrich. L. Bauer

Nationality;German, mathematician, theoretical physicist, Technical University of Munich Friedrich L. Bauer 1924 4/25 The major cause of the software crisis is that the machines have become several orders of magnitude more powerful! The Humble Programmer (EWD340), Communications of the ACM(1972).

Nationality; Dutch, theoretical physicist, mathematician Eindhoven University of Technology Edsger Wybe Dijkstra 1930-2002 5/25 To put it quite bluntly: as long as there were no machines, programming was no problem at all; when we had a few weak computers, programming became a mild problem, and now we have gigantic computersand programming hasbecomean equally gigantic problem. Nationality; Dutch, Eindhoven University of Edsger Wybe Dijkstra Technology 1930-2002 6/25 Brooks'smanagementadage (1)

Addingmanpower to a late softwareprojectmakes it later.

TheMythicalMan-Month (1975).

Nationality; USA,applied mathematician Copyright owned by SD&M (www.sdm.de) IBM, University of North Carolina at FredericP. Brooks Chapel Hill Copyright owned1931 by SD&M (www.sdm.de)

7/25 Brooks'smanagementadage (2)

The nine-women adage:

"Nine women cannotmake a baby in one month".

Nationality; USA,applied mathematician Copyright owned by SD&M (www.sdm.de) IBM, University of North Carolina at Chapel Hill Frederic P. Brooks 1931

8/25 Corollaryof Brooks'sadage (1)

There is an incremental person who, when added to a project, makes it take more, not less time.

TheMythicalMan-Month (1975).

Nationality; USA,applied mathematician Copyright owned by SD&M (www.sdm.de) IBM, University of North Carolina at Chapel Hill Frederic P. Brooks 1931 Corollaryof Brooks'sadage (2) 1. It takes some time (ramp up) for the peopleadded to a project to become productive.

2. The number of different communication channels increases with the square of the number of people

Nationality; USA,applied mathematician Copyright owned by SD&M (www.sdm.de) IBM, University of North Carolina at Chapel Hill Frederic P. Brooks 1931

10/25 Brooks’sconclusion

There is no Silver Bullet

( the final result of looking for the software crisis solution)

11/25 Essence and Accidents of Software Engineering

Brooks use Aristotelian language to separate two kindsof problems in software engineering. 1. Essence is the difficulty inherent in the structure of the problem. 2.Accident includes difficulties that in any particular setting go along with the production of software, or mistakes that happen but are not inherent to the particular task. Copyright owned by SD&M (www.sdm.de)

12/25 Essence and Accidents of SE 1.Essential properties are those propertiesthat a thing must have to be that thing: A carmust have an engine, wheels, and a transmission inorder to be a car.

2.Theaccidentalpropertiesarise by happenstance and donot affect the basic “car-ness” of the car. A studdedsnow tires or racing slicks, an automatic or a manualtransmission.

Steve McConnell,From the Editor IEEE Software, Vol. 16, No. 2,1999

13/25 No Silver Bullet—Essence and Accidents of Software Engineering

1.Fashioning complex conceptual constructs is the essence. 2. Accidentaltasks arise in representing the constructs in language.

Past progress has so reduced the accidental tasks that future progress now depends upon addressing Copyright owned by SD&M (www.sdm.de) the essence.

14/25 Standish Group CHAOS report (1)

• 31% of IT projectscanceledbeforecompletion.

• Average IT projectcostis 189% of originalestimates.

• Average timeoverrunis 222% of originalestimates.

15/25 Standish Group CHAOS report (2)

• 88% of all IT projectsare overschedule, overbudget, or both.

• On average, only 61% of originallyspecified featuresareimplemented.

16/25 Standish Group CHAOS report (3)

• 5% of software projects are terminated before they produce anything. • 66% are considered to have failed. • Of those that do complete the average cost blowout is 43%

17/25 Standish Group reflection on SE (1) The fact of the matter is: developers commit to unrealistic estimates of

• effort, • cost and • schedule.

18/25 Standish Group supposition (1)

• Perhaps cost estimates supported a bid-to- win strategy wereunrelated to the actual amount of work to be done.

• Perhaps the initial schedule was driven by business requirements alone and did not consider the product size/functionality

19/25 StandishGroupsupposition (2)

• Perhaps there was no real awareness of the developer’s process productivity.

• Perhaps there was no reality check performed upfront to see if what had been proposed and accepted was actually feasible.

20/25 Standish Group supposition (3)

• Perhaps, there was no motivation to develop a realistic cost and schedule baseline.

• Perhaps,………

but in the meantime …….

21/25 Standish Group reality

The lost dollar value for USA projects in 2002 is estimated at US$38bn with another US$17bn in cost overruns.

22/25 Thereare two issuesat the heart of the estimating thechallenge : 1)the need to understand and express (as early as possible) the software problem domain and 2)the need to understand our capability to deliver the required software solution within a specified environment.

Then, and only then, wecan accurately predict the effort required to deliver the product. (Garmus, Principles of Sizing and Estimating Using (IFPUG) Function Points 23/25 Readings

• W. WaytGibbs, Software's Chronic Crisis,Scientific American, 1994

• EdsgerW. Dijkstra, EWD340: the humble programmer. Communications of the ACM, 10, http://www.cs.utexas.edu/users/EWD/ewd03xx/EWD340.PDF .

24/25 Useful links

• http://www.naur.com/ • http://en.wikipedia.org/wiki/Friedrich_L._Bauer • E.W.Dijkstra Archive: Home page • Fred Brooks -Wikipedia, the free encyclopedia • Welcome to The Standish Group International, Inc.

25/25