Presentation is loading. Please wait.

Presentation is loading. Please wait.

Project management.

Similar presentations


Presentation on theme: "Project management."— Presentation transcript:

1 Project management

2 Administration Assignment 1 has been uploaded to the CET Account.
Submission in the next workshop class In the week third lab, submit the answer sheet for the question that will be uploaded to the CET Account related to Shopping Mall

3 Cover Page Sample

4 The Aim of Project Management
To complete a project: • SRS (System / Software Requirement Specifications) • Time • Budget • With required functionality • To the satisfaction of the client • Without exhausting the team on the project

5 Objectives To explain the main tasks undertaken by project managers
To introduce software project management and to describe its distinctive characteristics To discuss project planning and the planning process To show how graphical schedule representations are used by project management To discuss the notion of risks and the risk management process

6 Topics covered Management activities Project planning
Project scheduling Risk management

7 The Project Manager • Create and maintain the schedule
• Should track progress against schedule • Keep some slack in the schedule • Be continually making adjustments: Start activities before previous activity complete Sub-contract activities Renegotiate deliverables • Keep senior management informed

8 Software project management
Concerned with activities involved in ensuring that software is delivered on time and on schedule and in accordance with the requirements of the organisations developing and procuring the software. Project management is needed because software development is always subject to budget and schedule constraints that are set by the organisation developing the software.

9 Software management distinctions
The product is intangible. The product is uniquely flexible. Software engineering is not recognized as an engineering discipline with the sane status as mechanical, electrical engineering, etc. The software development process is not standardised. Many software projects are 'one-off' projects.

10 Project Planning Methods
The Critical Path Method, Gantt charts, Activity bar charts, etc. are roughly equivalent. These methods are best when: • Model is updated regularly (e.g., monthly) • The structure of the project is well understood • The time estimates are reliable • Activities do not share resources [Critical Path Method is excellent for large construction projects.]

11 Management activities
Proposal writing. Project planning and scheduling. Project costing. Project monitoring and reviews. Personnel selection and evaluation. Report writing and presentations.

12 Management commonalities
These activities are not peculiar to software management. Many techniques of engineering project management are equally applicable to software project management. Technically complex engineering systems tend to suffer from the same problems as software systems.

13 Project staffing May not be possible to appoint the ideal people to work on a project Project budget may not allow for the use of highly-paid staff; Staff with the appropriate experience may not be available; An organisation may wish to develop employee skills on a software project. Managers have to work within these constraints especially when there are shortages of trained staff.

14 Project planning Probably the most time-consuming project management activity. Continuous activity from initial concept through to system delivery. Plans must be regularly revised as new information becomes available. Various different types of plan may be developed to support the main software project plan that is concerned with schedule and budget.

15 Types of project plan

16 Project planning process
Establish the project constraints Make initial assessments of the project parameters Define project milestones and deliverables while project has not been completed or cancelled loop Draw up project schedule Initiate activities according to schedule Wait ( for a while ) Review project progress Revise estimates of project parameters Update the project schedule Re-negotiate project constraints and deliverables if ( problems arise ) then Initiate technical review and possible revision end if end loop

17 The project plan The project plan sets out:
The resources available to the project; The work breakdown; A schedule for the work.

18 Project plan structure
Introduction. Project organisation. Risk analysis. Hardware and software resource requirements. Work breakdown. Project schedule. Monitoring and reporting mechanisms.

19 Activity organization
Activities in a project should be organised to produce tangible outputs for management to judge progress. Milestones are the end-point of a process activity. Deliverables are project results delivered to customers. The waterfall process allows for the straightforward definition of progress milestones.

20 Milestones in the RE process

21 Project scheduling Split project into tasks and estimate time and resources required to complete each task. Organize tasks concurrently to make optimal use of workforce. Minimize task dependencies to avoid delays caused by one task waiting for another to complete. Dependent on project managers intuition and experience.

22 The project scheduling process

23 Scheduling problems Estimating the difficulty of problems and hence the cost of developing a solution is hard. Productivity is not proportional to the number of people working on a task. Adding people to a late project makes it later because of communication overheads. The unexpected always happens. Always allow contingency in planning.

24 Bar charts and activity networks
Graphical notations used to illustrate the project schedule. Show project breakdown into tasks. Tasks should not be too small. They should take about a week or two. Activity charts show task dependencies and the the critical path. Bar charts show schedule against calendar time.

25 Task durations and dependencies

26 Activity network

27 Activity timeline

28 Staff allocation

29 Risk management Risk management is concerned with identifying risks and drawing up plans to minimise their effect on a project. A risk is a probability that some adverse circumstance will occur Project risks affect schedule or resources; Product risks affect the quality or performance of the software being developed; Business risks affect the organisation developing or procuring the software.

30 Software risks

31 The risk management process
Risk identification Identify project, product and business risks; Risk analysis Assess the likelihood and consequences of these risks; Risk planning Draw up plans to avoid or minimise the effects of the risk; Risk monitoring Monitor the risks throughout the project;

32 The risk management process

33 Risk identification Technology risks. People risks.
Organisational risks. Requirements risks. Estimation risks.

34 Risks and risk types

35 Risk analysis Assess probability and seriousness of each risk.
Probability may be very low, low, moderate, high or very high. Risk effects might be catastrophic, serious, tolerable or insignificant.

36 Risk analysis (i)

37 Risk analysis (ii)

38 Risk planning Consider each risk and develop a strategy to manage that risk. Avoidance strategies The probability that the risk will arise is reduced; Minimisation strategies The impact of the risk on the project or product will be reduced; Contingency plans If the risk arises, contingency plans are plans to deal with that risk;

39 Risk management strategies (i)

40 Risk management strategies (ii)

41 Risk monitoring Assess each identified risks regularly to decide whether or not it is becoming less or more probable. Also assess whether the effects of the risk have changed. Each key risk should be discussed at management progress meetings.

42 Risk indicators

43 Key points Good project management is essential for project success.
The intangible nature of software causes problems for management. Managers have diverse roles but their most significant activities are planning, estimating and scheduling. Planning and estimating are iterative processes which continue throughout the course of a project.

44 Key points A project milestone is a predictable state where a formal report of progress is presented to management. Project scheduling involves preparing various graphical representations showing project activities, their durations and staffing. Risk management is concerned with identifying risks which may affect the project and planning to ensure that these risks do not develop into major threats.

45 OS 360 The operating system for the IBM 360 was two years late.
Question: How does a project get two years behind schedule? Answer: One day at a time! Fred Brooks Jr.,The Mythical Man Month

46 The Project Manager • Create and maintain the schedule
• Should track progress against schedule • Keep some slack in the schedule • Be continually making adjustments: Start activities before previous activity complete Sub-contract activities Renegotiate deliverables • Keep senior management informed

47 Project Planning Methods
The Critical Path Method, Gantt charts, Activity bar charts, etc. are roughly equivalent. These methods are best when: • Model is updated regularly (e.g., monthly) • The structure of the project is well understood • The time estimates are reliable • Activities do not share resources [Critical Path Method is excellent for large construction projects.]

48 Flexibility Schedule: Dates for broadcasting TV and radio programs are fixed. Printing and mailings can be accelerated if overtime is used. Functionality: The course team can decide what goes into the components of the course. Resources: The size of the course team can be increased slightly.

49 Scheduling: Critical Path Method
An activity A dummy activity An event A milestone

50 Critical Path Method other activities Revise Unit 3 Print Unit 3 Edit
Mail Unit 3 END START

51 Critical Path Method other activities Revise Unit 3 Edit Unit 3
Typeset Unit 3 Print Units 3/4 Mail Units 3/4 START Typeset Unit 4 other activities Revise Unit 4 Edit Unit 4

52 Critical Path Method Script Make TV 2 TV 2 Edit Mail Unit 3 Delivery
START Edit Unit 4 Document Computer 1 Program Computer 1 Prototype Computer 1

53 Time Estimates for Activities (Weeks)
4 6 1 1 3 2 3 1 1 12 3 12 3 2 2 8 4 4

54 Earliest Start Dates 26 1 4 6 1 1 3 2 12 15 17 3 1 1 12 22 23 25 3 12 3 2 12 17 19 2 8 4 4 4 17

55 Latest Start Dates 26 11 4 6 1 1 3 2 12 15 17 3 1 1 12 23 24 25 3 12 3 2 14 17 20 2 8 4 4 13 17

56 Critical Path 1/11 26/26 12/12 15/15 17/17 22/23 23/24 25/25 0/0 12/14
19/20 4/13 17/17

57 Slack 0/0 1/11 12/12 12/14 4/13 15/15 17/17 19/20 22/23 26/26 25/25 10 2 9 1 3 10 17/17 23/24 5

58 Key Personnel In computing, not all people are equal:
• The best are at least 5 times more productive • Some tasks are too difficult for everybody Adding more people adds communications complexity • Some activities need a single mind • Sometimes, the elapsed time for an activity can not be shortened. What happens to the project if a key person is sick or quits?

59 Key Personnel: Schedule for Editor
Earliest Start Date Activity Weeks Edit Unit 3 Weeks Edit Unit 4 Weeks Edit Unit 5 Weeks Edit Unit 6 Week 15 Review draft of Unit 7 Week 17 Review draft of Unit 8 Week 19 Check proofs of Unit 3 Week 21 Check proofs of Unit 4 Weeks Vacation Week 22 Out sick

60 Start-up Time On a big project, the start-up time is typically three to six months: • Personnel have to complete previous projects (fatigue) or recruited. • Hardware and software has to be acquired and installed. • Staff have to learn new domain areas and software (slow while learning) • Clients may not be ready.

61 Experience with Critical Path Method
Administrative computing department at Dartmouth used the Critical Path Method for implementation phase of major projects. Experience: Elapsed time to complete projects was consistently 25% to 40% longer than predicted by model. Analysis: • Some tasks not anticipated (incomplete understanding) • Some tasks had to be redone (change of requirements, technical changes) • Key personnel on many activities (schedule conflicts) • System ZZZ (non-billable hours)

62 Why do software projects fail?
People begin programming before they understand the problem Everyone likes to feel that they’re making progress When the team starts to code as soon as the project begins, they see immediate gains When problems become more complex (as they always do!), the work gets bogged down In the best case, a team that begins programming too soon will end up writing good software that solves the wrong problem

63 Why do software projects fail?
The team has an unrealistic idea about how much work is involved. From far away, most complex problems seem simple to solve Teams can commit to impossible deadlines by being overly optimistic and not thinking through the work Few people realize the deadline is optimistic until it’s blown

64 Why do software projects fail?
Defects are injected early but discovered late. Projects can address the wrong needs Requirements can specify incorrect behavior Design, architecture and code can be technically flawed Test plans can miss functionality The later these problems are found, the more likely they are to cause the project to fail

65 Why do software projects fail?
Programmers have poor habits – and they don’t feel accountable for their work. Programmers don’t have good control of their source code Code written by one person is often difficult for another person to understand Programmers don’t test their code, which makes diagnosing and fixing bugs more expensive The team does not have a good sense of the overall health of the project.

66 Why do software projects fail?
Managers try to test quality into the software. Everyone assumes that the testers will catch all of the defects that were injected throughout the project. When testers look for defects, managers tell them they are wasting time. When testers find defects, programmers are antagonized because they feel that they are being personally criticized. When testers miss defects, everyone blames them for not being perfect.

67 How can we make sure that our projects succeed?
Make sure all decisions are based on openly shared information It’s important to create a culture of transparency, where everyone who needs information knows where to find it and is comfortable looking at it. All project documents, schedules, estimates, plans and other work products should be shared with the entire team, managers, stakeholders, users and anyone else in the organization who wants them. Major decisions that are made about the project should be well-supported and explained.

68 How can we make sure that our projects succeed?
Don’t second-guess your team members’ expertise Managers need to trust team members. Just because a manager has responsibility for a project’s success, it doesn’t mean that he’s more qualified to make decisions than the team members. If you don’t have a good reason to veto an idea, don’t.

69 How can we make sure that our projects succeed?
Introduce software quality from the very beginning of the project Review everything, test everything. Use reviews to find defects – but don’t expect the review to be perfect. Use reviews to gain a real commitment from the team. It’s always faster in the long run to hold a review than it is to skip it.

70 How can we make sure that our projects succeed?
Don’t impose an artificial hierarchy on the project team All software engineers were created equal. A manager should not assume that programming is more difficult or technical than design, testing or requirements engineering. Managers should definitely not assume that the programmer is always right, or the tester is always raising false alarms.

71 How can we make sure that our projects succeed?
Remember that the fastest way through the project is to use good engineering practices Managers and teams often want to cut important tasks – especially estimation, reviews, requirements gathering and testing. If it were faster to build the software without these practices, we would never use them. Every one of these practices is about saving time and increasing quality by planning well and finding defects early. Cutting them out will cost time and reduce quality.


Download ppt "Project management."

Similar presentations


Ads by Google