Presentation on theme: "Chapter 3 Project Management"— Presentation transcript:
1 Chapter 3 Project Management Parts of this presentation is extracted from Ian Sommerville’s slides located atSommerville SE 8: Chapter 5, Chapter 26
2 Objectives Know the principal tasks of software managers Understand the need for planning in all software projectsUnderstand how graphical presentations can be used for project schedulesUnderstand the risk management process in software projects
4 Do you Agree or Disagree Good management guarantees project success Bad management usually result in project failureGood management can not guarantee project success.Bad management usually results in project failure.
5 Why?Project management is needed because software development is always subject to budget and schedule constraints.
6 Software project management is difficult than other engineering project management because: The product is intangible.The software development process is not standardised.Many software projects are 'one-off' projectsThe role of the project manager encompasses many activities including: * Planning and Defining Scope * Activity Planning and Sequencing * Resource Planning * Developing Schedules * Time Estimating * Cost Estimating * Developing a Budget * Controlling Quality * Managing Risks and Issues * Creating Charts and Schedules * Risk Analysis * Benefits Realisation * Scalability, Interoperability and Portability Analysis * Documentation * Team Leadership * Strategic Influencing * Customer Liaison
7 Project Management Activities Proposal writing/ Report writing and presentations. writing and communication skills (covered in other courses)Team formation ( personal selection and evaluation)Project planning and scheduling.Project cost estimation.Project monitoring and reviews. (covered in QA chapter)Report writing and presentations
8 Team FormationA project manager success starts with creating the best team possible and having the right people in the right roles.May not be possible to appoint the ideal people to work on a projectProject 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.More on people management in Chapter 25.
9 Project PlanningProbably 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 plans may be developed to support the main software project plan that is concerned with schedule and budget.
11 Objective of project plans The project plan sets out:The resources available to the project;The work breakdown;A schedule for the work.It’s all about estimation, how much..
12 Structure of a project plan Introduction ( objectives, constraints)Project organisation (team organisation)Risk analysis.Hardware and software resource requirements.Work breakdown (project activities, milestones and deliverables of each activity)Project schedule.(dependencies between activities, time needed to reach each milestone and the allocation of people to activities)Monitoring and reporting mechanisms.(define the reports that should be produced, when they should be produced and the project mechanism used)
13 Risk Management Risk identification: Analyze the risk : what can go wrongAnalyze the risk :determine the likelihood that it will occur andthe damage it will do if it does occurPrioritize risks byprobability and impactDevelop plan and monitorto manage risks with high probability and high impact
17 Risk Planning and Monitoring Consider each risk and develop a strategy to manage that risk.Avoidance strategiesThe probability that the risk will arise is reduced;Minimisation strategiesThe impact of the risk on the project or product will be reduced;Contingency plansIf the risk arises, contingency plans are plans to deal with that risk;
18 ExampleReplace potentially defective components with bought-in components of known reliabilityDefective ComponentsRisk avoidance StrategyReorganize team so that there is more overlap of work and people therefore understand each others jobStaff illnessMinimization strategyPrepare a briefing document for senior management showing how the project is making a very important contribution to the goals of the businessOrganizational financial problemsContingency plan
19 Work breakdownActivities 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.To establish milestones the software process must be broken down into basic activities with associated outputs.
21 Activity : Work breakdown As a teamProject :Organizing a partyIdentify the milestones and the deliverables of this project
22 TaskMilestoneDeliverableChoosing a date and timeDate and timeChoosing guestsList of guestsSelecting venueName of venueReserving venueReservation numberInvoiceSending guest invitationsInvitation cardSelecting catering companyName of companySelecting beverages, food, and dessert.MenuA milestone is something that identifies the end of a task, a deliverable is something delivered to the customer or beneficiary.
23 Project SchedulingSplit 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.
25 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 critical path.Bar charts show schedule against calendar time.
26 Example (Activity network) DependenciesDuration (days)Activity1T12T2T1,T23T35T4T5
33 ActivityCalculate the start and the finish of each activity in the activity network shown in the previous slideCompare your answer with the text book p 102More explanation can be found in the following site(some figures used in this slides are taken from this site)
35 Project Cost Estimation (chapter26) There are three parameters involved in computing the total cost of a software development projectHardware and software costs including maintenanceTravel and training costsEffort costs (paying software engineers)For most projects, the dominant cost in software development is effort cost.
36 Project cost estimation techniques Algorithmic cost modelingExpert judgmentEstimation by analogyParkinson’s lawPricing to winFor large projects it is advisable to use several cost estimation techniques and compare the results