20
CSE Senior Design I CSE Senior Design I Classic Mistakes Classic Mistakes Instructor: Vassilis Athitsos Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, This presentation was derived from the textbook used for this class, McConnell, Steve, McConnell, Steve, Rapid Development Rapid Development , Chapter 3. The presentation was , Chapter 3. The presentation was prepared by Mr. Mike O'Dell and modified by Vassilis Athitsos. prepared by Mr. Mike O'Dell and modified by Vassilis Athitsos.

CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

Embed Size (px)

Citation preview

Page 1: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

CSE Senior Design ICSE Senior Design I

Classic MistakesClassic Mistakes

Instructor: Vassilis AthitsosInstructor: Vassilis Athitsos

This presentation was derived from the textbook used for this class, This presentation was derived from the textbook used for this class, McConnell, Steve, McConnell, Steve, Rapid DevelopmentRapid Development, Chapter 3. The presentation was , Chapter 3. The presentation was

prepared by Mr. Mike O'Dell and modified by Vassilis Athitsos.prepared by Mr. Mike O'Dell and modified by Vassilis Athitsos.

Page 2: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

2

Why Projects Fail - OverviewWhy Projects Fail - Overview

Five main reasons: Failing to communicate Failing to create a realistic plan Lack of buy-in Allowing scope/feature creep Throwing resources at a problem

N.B. – Software development is COMPLEX and HARD, so people make mistakespeople make mistakes.

Page 3: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

3

Categories of Classic MistakesCategories of Classic Mistakes

People-relatedProcess-relatedProduct-relatedTechnology-related

Page 4: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

4

Effect of Classic Mistakes on Effect of Classic Mistakes on Development SchedulesDevelopment Schedules

Doing a few things right DOES NOT guarantee success! Use of any specific best practice is

necessary, but not sufficientnecessary, but not sufficient, to achieve rapid development speeds

Missing mostMissing most of the potholes in the road, but falling into one big onefalling into one big one, will ruin your whole day (or project)

“One bad apple (mistake) can spoil the bunch”

Page 5: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

5

Case Study in Classic MistakesCase Study in Classic Mistakes

What Mistakes can you identify? First Mistake? Impact? Second Mistake? Impact? Other Mistakes? Impact? When and why did things finally turn

around? What should have been done, and by

whom?

Page 6: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

1. Undermined motivation: The Big One - Probably the largest single

factor in poor productivity Motivation must come from within

2. Weak personnel: The right people in the right roles

3. Uncontrolled problem employees: Problem people (or just one person) can kill a

team and doom a project The team must take action… early Consider the Welch Grid

6

Classic Mistakes EnumeratedClassic Mistakes Enumerated

Page 7: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

7

Classic Mistakes EnumeratedClassic Mistakes Enumerated

4. Heroics: Heroics seldom work to your advantage Honesty is better than an empty “can-do”empty “can-do”

5. Wishful thinking: Not the same as optimism Don’t plan on good luckluck! (Plan on bad luck??) May be the root causeroot cause of many other mistakes

6. Noisy, crowded offices: Work environment is importantenvironment is important to productivity Noisy, crowded conditions lengthen schedules

Page 8: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

8

Classic Mistakes EnumeratedClassic Mistakes Enumerated

7. Friction between developers and customers/sponsors:

Cooperation Cooperation is the key Encourage participationparticipation in the process

8. Unrealistic expectations: Avoid seat-of-the-pants commitments Realistic expectations is a TOP 5 issueTOP 5 issue

9. Lack of effective project sponsorship: Management must buy-inManagement must buy-in and provide support Potential morale killerPotential morale killer

Page 9: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

9

Classic Mistakes EnumeratedClassic Mistakes Enumerated

10. Lack of stakeholder buy-in: Team members, end-users, customers,

management, etc. Buy-in engenders cooperationcooperation at all levels

11. Lack of user input: You can’t build what you don’t understand Early input is critical to avoid feature creepfeature creep

12. Politics placed over substance: Being well regarded by management will not

make your project successful

Page 10: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

10

Classic Mistakes EnumeratedClassic Mistakes Enumerated

13. Adding people to a late project: Productivity killerProductivity killer Throwing people at a problem seldom helps

Page 11: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

11

Classic Mistakes EnumeratedClassic Mistakes Enumerated

14. Overly optimistic schedules: Wishful thinking/planning on good luck.

(Feasibility??)

15. Insufficient risk management: Identify unique risks and develop a plan to

eliminate them Consider a “spiral” “spiral” (iterative) approach for

larger risks

16. Contractor failure: Relationship/cooperation/clear Statement of

Work

Page 12: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

12

Classic Mistakes EnumeratedClassic Mistakes Enumerated

17. Insufficient planning: If you can’t plan it… you can’t do it!

18. Abandonment of planning under pressure:

Path to failure Code-and-fixCode-and-fix mentality takes over… and will

fail

19. Wasted time during fuzzy front end: That would be nownow! Almost always cheaper and faster to spend

time upfront working/refining the plan

Page 13: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

13

Classic Mistakes EnumeratedClassic Mistakes Enumerated

20. Shortchanged upstream activities: See above… do the work up frontup front! Avoid the “jump to coding” mentality

21. Inadequate design: See above… do the required work up frontup front!

22. Shortchanged quality assurance: Test planning is a critical part of every plan ShortcuttingShortcutting 1 day early on will likely cost you

3-10 days later QA me now, or pay me later!

Page 14: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

14

Classic Mistakes EnumeratedClassic Mistakes Enumerated

23. Insufficient (project) management controls:

Buy-in implies participation & cooperationcooperation

24. Premature or overly frequent convergence:

It’s not done until it’s done!

25. Omitting necessary tasks from estimates:

Can add 20-30% to your schedule Don’t sweat the small stuffsmall stuff!!

Page 15: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

15

Classic Mistakes EnumeratedClassic Mistakes Enumerated

26. Planning to catch up later: Schedule adjustments WILL be necessary A month lost early on probably cannot be cannot be

made upmade up later

27. Code-like-hell programming: The fast, loose, “entrepreneurial” approach This is simply… Code-and-Fix. Don’t!

Page 16: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

16

Classic Mistakes EnumeratedClassic Mistakes Enumerated

28. Requirements gold-plating: Avoid complex, difficult to implement features Often, they add disproportionatelyadd disproportionately to schedule

29. Feature creep: The average project experiences 25% change Another killerkiller mistake!

30. Developer gold-plating: Use proven stuffproven stuff to do your job Avoid dependence on the hottest new toolshottest new tools Avoid implementing all the cool new featurescool new features

Page 17: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

17

Classic Mistakes EnumeratedClassic Mistakes Enumerated

31. Push-me, pull-me negotiation: Schedule slip = feature addition

32. Research-oriented development: Software research schedules are theoreticaltheoretical, at

best Try not to push the enveloppush the envelop unless you allow

for frequent schedule revisions If you push the state of the art… it will push

back!

Page 18: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

18

Classic Mistakes EnumeratedClassic Mistakes Enumerated

33. Silver-bullet syndrome: There is no magicno magic in product development Don’t plan on some new whiz-bang thing to

save your bacon (i.e., your schedule)

34. Overestimated savings from new tools or methods:

Silver bullets probably won’t improve your schedule… don’t overestimate their value

Page 19: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

19

Classic Mistakes EnumeratedClassic Mistakes Enumerated

35. Switching tools in the middle of the project:

Version 3.1…version 3.2… version 4.0! Learning curve, rework inevitable

36. Lack of automated source control: Stuff happens… enough said!

Page 20: CSE Senior Design I Classic Mistakes Instructor: Vassilis Athitsos This presentation was derived from the textbook used for this class, McConnell, Steve,

5

21

Exercise: Develop a Project Exercise: Develop a Project “Disaster Avoidance Plan”“Disaster Avoidance Plan”

Get together as a team and make a list list of “worst practices”of “worst practices” that you should avoid in your project.

Include specific mistakes that you think could/will be made by your teamyour team

Post thisPost this list on the wall in your lab space or wherever it will be visible and prominent on a daily basis

ReferRefer to it frequently and talk about how you will avoid these mistakesavoid these mistakes