THE MYTHICAL MAN-MONTH .


54 views
Uploaded on:
Category: General / Misc
Description
THE MYTHICAL MAN-MONTH. How does a project get to be a year late? …… one day at a time?. Xianling Feng. The issue: -- Why do we need to read this one? Software projects go awry for lack of calendar time. -- Why is the disaster?. Frederick P. Boorks, Jr,
Transcripts
Slide 1

THE MYTHICAL MAN-MONTH How does an undertaking get the chance to be a year late? … without rushing too much? Xianling Feng Survey of Software Engineering (CS 5391) 2003

Slide 2

The issue: - Why do we have to peruse this one? Programming ventures go amiss for absence of logbook time. - Why is the catastrophe? Frederick P. Boorks, Jr, "the more remote of the IBM System/360)" the task supervisor of the Operating System Project has his investigation and answers for the issue. "THE MYTHICAL MAN-MONTH" distributed on Datamation in 1974 and republished in 1995. You have perused it since your administrator may have perused it. Overview of Software Engineering (CS 5391) 2003

Slide 3

The issue: - Brooks\' answers Software ventures go astray for absence of logbook time. - Why is the catastrophe? Evaluating Techniques are inadequately created - with supposition that all will go well. (hopefulness) Estimating Techniques mistakes the exertion for advancement (estimation) - with presumption that men and months are exchangeable Lack of "courteous stubbornness" to make individuals need a decent item - due to being unverifiable of the appraisals Schedule advancement is inadequately checked. At the point when plan slippage is perceived - > Natural (conventional) reaction is to include labor - > drenching a flame with gas Survey of Software Engineering (CS 5391) 2003

Slide 4

1. Good faith Quotes from developers: "This time it will most likely run." "I simply found the last bug" as a general rule, the pride and positive thinking are not legitimized. Henceforth, over-hopeful timetables are delivered. Review of Software Engineering (CS 5391) 2003

Slide 5

2. The Mythical Man-month Cost for sure differs as men * month. Notwithstanding, advance (exertion expected to complete an undertaking) can\'t be measured by men * month. Rivulets brings up: the man-month as unit for measuring the span of an occupation is a hazardous and beguiling myth. Man-month estimation infers man and month are compatible. Indeed, they would all be able to the time. Man and months are tradable just when an errand can be parceled among numerous specialists with no correspondence among them. Review of Software Engineering (CS 5391) 2003

Slide 6

2. The Mythical Man-month (Cont.) For programming building, it is not even roughly genuine: - the successive requirements make an assignment un-partitionable. - errands can be divided, yet require correspondence (preparing and intercommunication) Training ordinarily can\'t be apportioned - included exertion changes directly with number of specialists. intercommunication exertion increments as n(n-1)/2 Survey of Software Engineering (CS 5391) 2003

Slide 7

2. The Mythical Man-month (direct ramifications) The immediate ramifications of Man-Month is that in the event that one man takes 10 month to carry out work, 10 men can do it in one month. This might be valid for picking cottons. (where no correspondence is required among specialists) Survey of Software Engineering (CS 5391) 2003

Slide 8

2. The Mythical Man-month (for programming venture) For programming venture, correspondence exertion is incredible, including more men extends plan due to the additional correspondence overhead. Overview of Software Engineering (CS 5391) 2003

Slide 9

2. The Mythical Man-month (Communication exertion) correspondence endeavors = n(n-1)/2 Survey of Software Engineering (CS 5391) 2003

Slide 10

2. More precise estimation - System Test Testing is typically the most mis-planned part since individuals are frequently excessively hopeful and its consecutive nature. Creek\'s Rule of Thumb to gauge a product assignment: 1/3 arranging (33 %) 1/6 coding (17 %) 1/4 part test (25 %) 1/4 framework test (25 %) Please take note of that half of the time is to be spent on testing. Study of Software Engineering (CS 5391) 2003

Slide 11

2. More exact estimation - Gutless assessing Estimation depends on the client\'s earnestness - another reason for flawed planning To take care of the issue: - create and advertise profitability figures, bug-rate figures - evaluating rules Survey of Software Engineering (CS 5391) 2003

Slide 12

3. Adding labor to abbreviate the calendar - Regenerative Disaster What does one do when a crucial programming undertaking is behind timetable? A characteristic answer may be: Add labor. - This might possibly offer assistance. How about we take a case to see why. Overview of Software Engineering (CS 5391) 2003

Slide 13

3. Adding labor to abbreviate the calendar - Regenerative Disaster An Example: Given: Task: 12 man-month; Men: 3; Months: 4; Milestones: 4 The timetable: A B C D + - + - + - + - + At the end of the 2 nd month, it is found that exclusive the primary point of reference is come to: A + - + - + - + - + What would we be able to do about it? Overview of Software Engineering (CS 5391) 2003

Slide 14

3. Adding labor to abbreviate the timetable - Regenerative Disaster "Arrangement 1": Assume assignment must be done on time. Accept just the initial segment (A) was misestimated. 3 points of reference left (B, C, D) - > need 3 turning points * 3 man-month/development = 9 man-month (9 man-month/2 month) = 4.5 men - > include 2 men ! Study of Software Engineering (CS 5391) 2003

Slide 15

3. Adding labor to abbreviate the timetable - Regenerative Disaster "Arrangement 2": Assume assignment must be done on time. Expect the entire assessment was consistently misestimated. Every part needs (3 men * 2 month) = 6 man month/breakthrough 3 turning points left (B, C, D) - > need 3 developments * 6 man-month/breakthrough = 18 man-month ( 18 man-month/2 month ) = 9 men - > include 6 men Survey of Software Engineering (CS 5391) 2003

Slide 16

3. Adding labor to abbreviate the calendar - Regenerative Disaster "Arrangement 3": Scrap the old the timetable, make another one. "Arrangement 4": Trim the undertaking (if adhering to the first timetable is too expensive). Overview of Software Engineering (CS 5391) 2003

Slide 17

3. Adding labor to abbreviate the timetable - Regenerative Disaster "Arrangement 1" – returned to toward the end of 3 rd month: 1 experienced man trains 2 unpracticed - > 3 man-months utilized Repartition the undertaking from 3 sections to 5 sections - > absolutely 9 + 3 = 12 man-months At the end of third month, 9 - 3*1 + repartition ( work lost, more framework testing) > 7 man-months errand remains 7 man-months assignment to be done by 5 experienced men - > unrealistic  venture deferred! To be on timetable, 4 men rather than 2 should be included - which dramatically increases unique group size. Things looks so extremely distressing (the March 1 point of reference is still not achieved), the allurement to include more men is so solid to rehash this cycle - include more would postpone the task further by the same token. Study of Software Engineering (CS 5391) 2003

Slide 18

3. Adding labor to abbreviate the timetable – Brooks\' Law "Arrangement 2" returned to By the same token, it will prompt the same "regenerative catastrophe" as in "arrangement 1". This yields the Brooks\' Law: "Adding labor to a late programming venture makes it later". Study of Software Engineering (CS 5391) 2003

Slide 19

4. Developer\'s Productivity Data 1. Portman\'s information (Charles Portman, supervisor of ICL\'s Software Div. at Manchester) Programming groups miss plans by 1/2. Work log demonstrates that exclusive 1/2 of the working time is spent on programming and investigating. Causes: Machine downtime, short inconsequential occupations, gatherings, printed material, organization business, infection, individual time, and so on accounted the rest. Study of Software Engineering (CS 5391) 2003

Slide 20

4. Software engineer\'s Productivity Data 2. Aron\'s Data (Joel Aron, Manger of Systems Technology at IBM in Gaithersburg) Very couple of cooperations: 10,000 get together instrutctions/man-year Some associations: 5,000 Many connections 1,500 System testing, backing are not tallied here. Review of Software Engineering (CS 5391) 2003

Slide 21

4. Software engineer\'s Productivity Data 3. Harr\'s information (John Harr, director of programming at Bell Telephone Laboratory) Control Program: 600 words/man-yr Translator: 2,200 words/man-yr Survey of Software Engineering (CS 5391) 2003

Slide 22

4. Software engineer\'s Productivity Data 4. OS/360 Data (IBM OS/360 experience) Control program: 600 - 800 fixed directions/man-year Language interpreter: 2,000 - 3,000 fixed guidelines/man-year This incorporates: arranging, coding part test, framework test, support. Review of Software Engineering (CS 5391) 2003

Slide 23

4. Software engineer\'s Productivity Data Summary of the information All information demonstrate that profitability (number of project guidelines) is identified with the many-sided quality and trouble of the assignment. To gauge the multifaceted nature, utilize the accompanying proportions: Normal group application : 1 Compiler : 3 Operating System : 9 Survey of Software Engineering (CS 5391) 2003

Slide 24

5. Bring forth a disaster - Causes for the postponement, "baby steps" Project deferrals are generally because of the day by day slippage that is difficult to perceive and anticipate: Sickness of a key man - meeting wiped out Machines all down - lightning struck the force transformer Disk not testing Snow, Jury obligation Family issues, Emergency meentigs with clients Executive reviews : (the rundown continues forever … ) Survey of Software Engineering (CS 5391) 2003

Slide 25

6. Control a venture on tight calendar First, have a timetable - get blade edged, sharp developments with the goal that individuals can\'t lie about it. Everyone in the group ought to see: Sharp points of reference are a support of a group. Fluffy points of reference are harder weights - for it beguiles one about lost time until it is irremediable. Endless timetable slippage is an assurance executioner. Overview of Software Engineering (CS 5391) 2

Recommended
View more...