This document discusses key aspects of software project management including planning, milestones, deliverables, and risk management. It outlines the project planning process which involves establishing constraints, assessing parameters, defining milestones and deliverables, and revising the schedule as the project progresses. An important part of planning is developing a project plan that defines resources, work breakdown, and a schedule. The plan should be regularly updated as the project evolves over time.
This document discusses key aspects of software project management including planning, milestones, deliverables, and risk management. It outlines the project planning process which involves establishing constraints, assessing parameters, defining milestones and deliverables, and revising the schedule as the project progresses. An important part of planning is developing a project plan that defines resources, work breakdown, and a schedule. The plan should be regularly updated as the project evolves over time.
Metrics & Measurements Software project management • Informal definition of management – The art of getting work done through other people • Software project management is 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 Management activities • Project planning and scheduling • Project costing • Project monitoring and reviews • Personnel selection and evaluation • Report writing and presentations Project planning • A plan, drawn up at the start of the project, should be used as the driver for the project • The initial plan should be the best possible plan given the available information. It must be regularly revised as new information becomes available 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 The project plan • The project plan sets out: – The resources available to the project – The work breakdown – A schedule for the work Project plan structure • Introduction – Objectives, constraints (e.g., budget, time, etc…) • Project organisation – People involved and their roles in the team • Risk analysis – Possible risks, their likelihood and reduction strategies • Hardware and software resource requirements • Work breakdown – Breaks down the project into activities, identifies milestones, deliverables • Project schedule – Activity dependencies, estimated milestone time, people allocation • 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 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 • Important to note that the schedule evolves over time. During early stages of planning, a macroscopic schedule is developed that identifies all major SE activities. As the project gets under way, each entry is refined into a detailed schedule where specific tasks required to accomplish an activity are identified and scheduled Scheduling problems • Estimating the difficulty of problems and hence the cost of developing a solution is hard • Common myth: “If we fall behind schedule, we can always add more programmers and catch up later in the project” – 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 (CLASS DISCUSSION) Scope of the Project • Project scope is the part of project planning that involves determining and documenting a list of specific project goals, deliverables, tasks, costs and deadlines. Milestones and deliverables • Milestones are tools used in project management to mark specific points along a project timeline. • These points may signal anchors such as a project start and end date, a need for external review or input and budget checks, among others. • In many instances, milestones do not impact project duration. • Instead, they focus on major progress points that must be reached to achieve success. • Milestones can also be used to maintain accountability and motivate staff. • Deliverable is a term used in project management to describe a tangible or intangible object produced as a result of the project that is intended to be delivered to a customer (either internal or external). A deliverable could be a report, a document, a server upgrade or any other building block of an overall project. • A deliverable usually has a due date and is tangible, measurable and specific. • A deliverable can be given to either an external or internal customer and satisfies a milestone or due date that is created and produced in the project plan. • A deliverable can be a software product, a design document, a training program or other asset that is required by the project plan. 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 • Activity Bar charts show schedule against calendar time Thank You