LECTURE 5: SOFTWARE PROJECT MANAGEMENT. Software Engineering Mike Wooldridge



Similar documents
Project Planning and Scheduling

Software Engineering. Project Management. Based on Software Engineering, 7 th Edition by Ian Sommerville

Project Planning. COSC345 Lecture 3 Slides: Andrew Trotman Dramatic presentation: Richard O Keefe. Software Engineering 2013

Project management. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 5 Slide 1

Project management. Organising, planning and scheduling software projects. Ian Sommerville 2000 Software Engineering, 6th edition.

Project management. Organizing, planning and scheduling software projects

The work breakdown structure can be illustrated in a block diagram:

Project management. Organizing, planning and scheduling software projects. Objectives. Chapter 3. Chapter 3 Project Management. Learning Objective

Project management: an SE Perspective

Systems Analysis and Design

Organising, planning and scheduling software projects. Software management distinctions

Project management. Objectives. Topics covered. Organizing, planning and scheduling software projects DISCUSSION

Use project management tools

Organizing, planning and scheduling software projects

Importance of Project Schedules. matter what happens on a project. projects, especially during the second half of projects

Chapter 2: Project Time Management

Basic Concepts. Project Scheduling and Tracking. Why are Projects Late? Relationship between People and Effort

Project Planning. Lecture Objectives. Basic Reasons for Planning. Planning. Project Planning and Control System. Planning Steps

-stats show that 70% of Computer systems projects fail (i.e. cost overruns or behind schedule)

Goals of the Unit. spm adolfo villafiorita - introduction to software project management

Time Management II. June 5, Copyright 2008, Jason Paul Kazarian. All rights reserved.

Scheduling Glossary Activity. A component of work performed during the course of a project.

Project Scheduling & Tracking

Project Management Planning

Software Project Management

Mastering Microsoft Project 2010

Release 1. BSBPMG410A Apply project time-management techniques

Chapter 6: Project Time Management. King Fahd University of Petroleum & Minerals SWE 417: Software Project Management Semester: 072

5. Creating a Gantt Chart

Leaving Certificate Technology. Project Management. Student Workbook

Software Application: Information System Elements. Project Management in Information Technology (IT) Projects. Project Scheduling basics

A-1. Chapter 1. Project planning. Chapter 1. Festo Didactic Mechatronics

ICT Project Management. Software Project Planning By J. Ogutu

Mastering Microsoft Project B; 3 days, Instructor-led

Project Time Management

NE-50413B Mastering Microsoft Project 2010

Software Project Planning. CITS1220 Software Engineering

Project Management. 03/02/04 EPS 2004 Bjørn Engebretsen

Software Development & Education Center. Microsoft Office (Microsoft Project 2010)

Graphical Project Planning Techniques: An Overview of Gantt, PERT, and CPM Charts Prepared for groups in ECE480 1/6/02, D. Grover

Research Project Management Key Concepts. Dr Robin Henderson

Leaving Certificate Technology. Project Management. Teacher Notes

SWEN 256 Software Process & Project Management

Chapter 1.7 Project Management. 1. Project financing is one of the step of project management- State True or False

OPERATIONAL PROJECT MANAGEMENT (USING MS PROJECT)

Module 11. Software Project Planning. Version 2 CSE IIT, Kharagpur

Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of

Introduction to Project Management

SE351a: Software Project & Process Management

Lecture 11: Managing Your Project" Starting point"

Project Management. Massimo Felici Room 1402, JCMB, KB

Project Management Glossary

Introduction to Project Management ECE 480. Erik Goodman

Proposal template (technical annex) Health, demographic change and wellbeing Two-stage Research and Innovation actions Innovation actions

ESKIPM2(SQA Unit Code- F9CX 04) Project management software

Lecture 6: Project Time Management By: Prof. Lili Saghafi. Information Technology Project Management, Fifth Edition

Retained Fire Fighters Union. Introduction to PRINCE2 Project Management

Software Project Management

ESKIPM3 Project management software

MSc Project Planning

Critical Path Analysis & PERT Charts (taken from

SOFTWARE PROJECT MANAGEMENT

Information Technology Project Management, Sixth Edition. Note: See the text itself for full citations. More courses at cie-wc.edu

Teaching Students Project Management. Dr. Bill Oakes, EPICS Director Pamela Dexter, EPICS High School Coordinator 2011

Project Management Dr. James A. Bednar

Scheduling Resources and Costs

Pearson Education Limited 2003

The Plan s Journey From Scope to WBS to Schedule

Project Time Management

A Step-by-Step Approach for Planning Your Small Project

Scheduling and Review of Project Activities

CRITICAL PATH METHOD (CPM) SCHEDULES

Project Management (CS 3730) Lecture 4 Name:

Learning Objectives. Learning Objectives (continued) Importance of Project Schedules

Chapter 6: Project Time Management

CISC 322 Software Architecture. Project Scheduling (PERT/CPM) Ahmed E. Hassan

4. Software Project Management

Network Diagram Critical Path Method Programme Evaluation and Review Technique and Reducing Project Duration

Mastering Microsoft Project 2013

Python Checker. Computer Science Department

Chapter 3 Managing the Information Systems (IS) Project

pm4dev, 2015 management for development series Project Schedule Management PROJECT MANAGEMENT FOR DEVELOPMENT ORGANIZATIONS

Guidance on Critical Path Analysis

Mastering Microsoft Project 2013 Course: 55054A Course Length: 3 Days

Microsoft Project 2010

Chapter 4: Project Time Management

How To Manage Project Management

Horizon Proposal template for: H2020 Widespread Teaming

2.3.5 Project planning

Simple Data Analysis Techniques

Chapter 4: Planning Projects, Part I (Integration, Scope, Time, and Cost Management) Slide 1

Research proposal (Part B)

MODULE TWO PROJECT MANAGEMENT BACKGROUND & COMMUNICATION

The management of the projects with MS Project

Business Idea Development Product production Services. Development Project. Software project management

Project management Project Management

Cambridge International AS and A Level Computer Science

PROJECT AUDIT METHODOLOGY

Project Management Fact Sheet:


Transcription:

LECTURE 5: SOFTWARE PROJECT MANAGEMENT Mike Wooldridge

1 Introduction The software crisis of the 1960s and 1970s was so called because of a string of high profile software project failures: over budget, overdue, etc. The crisis arose in part because the greater power available in computers meant that larger software projects were tackled with techniques developed on much smaller projects. Techniques were needed for software project management. Good project management cannot guarantee success, but poor management on significant projects always leads to failure. Mike Wooldridge 1

Software projects have several properties that make them very different to other kinds of engineering project. The product is intangible. Its hard to claim a bridge is 90% complete if there is not 90% of the bridge there. It is easy to claim that a software project is 90% complete, even if there are no visible outcomes. We don t have much experience. Software engineering is a new discipline, and so we simply don t have much understanding of how to engineer large scale software projects. Large software projects are often bespoke. Most large software systems are one-off, with experience gained in one project being of little help in another. The technology changes very quickly. Most large software projects employ new technology; for many projects, this is the raison d etre. Mike Wooldridge 2

Activities in software project management: project planning; project scheduling; risk management; managing people. Mike Wooldridge 3

2 Project Planning The biggest single problem that afflicts software developing is that of underestimating resources required for a project. Developing a realistic project plan is essential to gain an understanding of the resources required, and how these should be applied. Types of plan: Software development plan. The central plan, which describes how the system will be developed. Quality assurance plan. Specifies the quality procedures & standards to be used. Validation plan. Defines how a client will validate the system that has been developed. Mike Wooldridge 4

Configuration management plan. Defines how the system will be configured and installed. Maintenance plan. Defines how the system will be maintained. Staff development plan. Describes how the skills of the participants will be developed. We will focus on software development & quality assurance plan. Mike Wooldridge 5

2.1 The Software Development Plan This is usually what is meant by a project plan. Specifies the order of work to be carried out, resources, responsibilities, and so on. Varies from small and relatively informal to large and very formal. Developing a project plan is as important as properly designing code: On the basis of a project plan, contracts will be signed and careers made or broken... Important not to: overestimate your team s ability; simply tell clients what they want to hear; be pressured by developers ( we can do that in an afternoon! ) Mike Wooldridge 6

2.2 Structure of Development Plan 1. Introduction brief intro to project references to requirements spec 2. Project organisation intro to organisations, people, and their roles 3. Risk Analysis what are the key risks to the project? 4. Hardware and software resources what h/ware and s/ware resources will be required for the project and when? 5. Work breakdown the project divided into activities, milestones, deliverables; dependencies between tasks etc 6. Project schedule actual time required allocation of dates 7. Reporting and progress measurement mechanisms to monitor progress. Mike Wooldridge 7

2.3 Work Breakdown There are many ways of breaking down the activities in a project, but the most usual is into: work packages; tasks; deliverables; milestones. Mike Wooldridge 8

A workpackage is a large, logically distinct section of work: typically at least 12 months duration; may include multiple concurrent activities; independent of other activities; but may depend on, or feed into other activities; typically allocated to a single team. A task is typically a much smaller piece of work: A part of a workpackage. typically 3 6 person months effort; may be dependent on other concurrent activities; typically allocated to a single person. Mike Wooldridge 9

A deliverable is an output of the project that can meaningfully be assessed. Examples: a report (e.g., requirements spec); code (e.g., alpha tested product). Deliverables are indicators (but only indicators) of progress. A milestone is a point at which progress on the project may be assessed. Typically a major turning point in the project. EXAMPLES: delivery of requirements spec; delivery of alpha tested code. Mike Wooldridge 10

Usually... work packages are numbered WP1, WP2,... ; tasks are numbered T1.1, T1.2, etc, the first number is the number of the workpackage; the second is a sequence number. deliverables are numbered D1.1, D1.2, etc milestones are numbered M1, M2 etc. Mike Wooldridge 11

For each workpackage & task, it is usual to document: brief description; earliest start date; earliest end date; total person months effort; pre-requisite WPs or tasks; dependent WPs or tasks; who is responsible. Mike Wooldridge 12

2.4 Critical Paths The pre-requisites and dependencies of WPs and tasks determine a critical path: the sequence of dependencies in the project. The critical path is the sequence of activities that takes the longest time to complete. Any delay to an activity in the critical path will cause delays to the overall project. Delays to activities not on the critical path need not necessarily cause overall delays. Mike Wooldridge 13

3 Gantt Charts & Activity Networks Gantt charts are a kind of bar chart: time plotted on x axis bars on y axis for each activity. Mike Wooldridge 14

An activity network is a labelled graph, with: nodes corresponding to activities, arcs labelled with estimated times; activities are linked if there is a dependency between them. Mike Wooldridge 15

4 Risks When planning a project, it is critically important to know what the key risks are, and is possible plan for them: staff turnover; management change; hardware unavailability; requirements change; specification delays; size underestimate; technology change; product competition. Mike Wooldridge 16

5 Quality Assurance Many organisations make use of a quality assurance plan, which sets out standards to be maintained during project development. Documentation standards: what documents; format & content; Coding standards: class/method/variable naming conventions; comment standards (e.g., javadoc); testing conventions; Mike Wooldridge 17