Project Management. Lecture 3. Software Engineering CUGS. Spring 2011 (slides made by David Broman)

Similar documents
Project Management. Lecture 3. Software Engineering CUGS. Spring 2012 (slides made by David Broman) Kristian Sandahl

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

How To Manage Project Management

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

Project Time Management

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

Software Life Cycles and Configuration Management

The Plan s Journey From Scope to WBS to Schedule

Information Technology Project Oversight Framework

Project management: an SE Perspective

Software cost estimation

Applied Software Project Management

Project Management Plan for

Software Project Management

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

Chapter 23 Software Cost Estimation

Software cost estimation

Unit 4: Time Management (PMBOK Guide, Chapter 6)

PROJECT RISK MANAGEMENT

Software cost estimation. Predicting the resources required for a software development process

Develop Project Charter. Develop Project Management Plan

Research Project Management Key Concepts. Dr Robin Henderson

Project management. Organizing, planning and scheduling software projects

Contents. Today Project Management. Project Management. Last Time - Software Development Processes. What is Project Management?

PROJECT PLAN FOR. Project Name Here

Negative Risk. Risk Can Be Positive. The Importance of Project Risk Management

Organizing, planning and scheduling software projects

Classical Software Life Cycle Models

Software Project Management

Supporting Workflow Overview. CSC532 Fall06

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

Software Quality Management II

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

Sistemi ICT per il Business Networking

Topics. Project plan development. The theme. Planning documents. Sections in a typical project plan. Maciaszek, Liong - PSE Chapter 4

Software Engineering. Dilbert on Project Planning. Overview CS / COE Reading: chapter 3 in textbook Requirements documents due 9/20

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

ITRM Guideline CPM Date: January 23, 2006 SECTION 4 - PROJECT EXECUTION AND CONTROL PHASE

SoftwareCostEstimation. Spring,2012

Unit 06 Developing the Work Breakdown Structure

Short Introduction to Design Patterns

How To Write An Slcm Project Plan

Software Development Life Cycle (SDLC)

ICS 121 Lecture Notes Spring Quarter 96

Applied Software Project Management

Integration Mgmt / Initiating Process Group 4.1 Develop Project Charter

WBS, Estimation and Scheduling. Adapted from slides by John Musser

Software Engineering. Objectives. Designing, building and maintaining large software systems

CISC 322 Software Architecture

MTAT Software Economics. Lecture 5: Software Cost Estimation

Project Knowledge Areas

CPM -100: Principles of Project Management

11.1 What is Project Management? Object-Oriented Software Engineering Practical Software Development using UML and Java. What is Project Management?

PROJECT TIME MANAGEMENT. 1 Powered by POeT Solvers Limited

Software Quality Assurance Plan

Cost Management. How Much Will This Project Cost?

The 10 Knowledge Areas & ITTOs

Risk Assessment Worksheet and Management Plan

CDC UNIFIED PROCESS PRACTICES GUIDE

What methods are used to conduct testing?

Metadata-Based Project Management System. A Case Study at M-Files Corporation. Iulia Adomnita

CS 6361, SPRING 2010 Advanced Requirements Engineering Web Based Meeting Scheduler- Project Plan

Quiz Examination in Software Engineering Theory

Crosswalk Between Current and New PMP Task Classifications

PROJECT MANAGEMENT PLAN CHECKLIST

Project Management. Software Projects vs. Engineering Projects

Project Risk Management Basics: Cost and Schedule Impacts

Chapter 4 SUPPLY CHAIN PERFORMANCE MEASUREMENT USING ANALYTIC HIERARCHY PROCESS METHODOLOGY

Software Quality Management

Project Zeus. Risk Management Plan

The Company Approach to Software Engineering Project Courses

Lecture Objectives. Software Life Cycle. Software Engineering Layers. Software Process. Common Process Framework. Umbrella Activities

Introduction to Risk Management for Software Projects. Peter Kolb. Distributed and Outsourced Software Engineering, ETH Zurich

Project Management. Massimo Felici Room 1402, JCMB, KB

Frequently Asked Questions in Project Management

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

(Refer Slide Time: 01:52)

PROJECT MANAGEMENT PLAN TEMPLATE < PROJECT NAME >

3SL. Requirements Definition and Management Using Cradle

Introduction and Overview

OPERATIONAL PROJECT MANAGEMENT (USING MS PROJECT)

Minnesota Health Insurance Exchange (MNHIX)

Appendix 2-A. Application and System Development Requirements

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

TDWI strives to provide course books that are content-rich and that serve as useful reference documents after a class has ended.

Best Practices Statement Project Management. Best Practices for Managing State Information Technology Projects

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

SOFTWARE PROJECT MANAGEMENT

Project Integration Management

Organising, planning and scheduling software projects. Software management distinctions

Pearson Education Limited 2003

Chapter 6. (PMBOK Guide)

SWEBOK Certification Program. Software Engineering Management

Process Methodology. Wegmans Deli Kiosk. for. Version 1.0. Prepared by DELI-cious Developers. Rochester Institute of Technology

Practice Overview. REQUIREMENTS DEFINITION Issue Date: <mm/dd/yyyy> Revision Date: <mm/dd/yyyy>

Test Fragen. October 2003 Project Management Wilhelm F. Neuhäuser IBM Corporation 2003

Project Implementation Plan (PIP) User Guide

Hit the Ground Running Modernizing Your Sales New Hire Onboarding. January 28, 2015

Project Scope Management in PMBOK made easy

Transcription:

Lecture 3 Software Engineering CUGS Spring 2011 (slides made by David Broman) Kristian Sandahl Department of Computer and Information Science Linköping University, Sweden A Software Life-cycle Model Which part will we talk about today? Maintenance 2 Requirements Validate Requirements, Verify Specification Acceptance Test (Release testing) System Design (Architecture, High-level Design) Module Design (Program Design, Detailed Design) Verify System Design Verify Module Design Verify Implementation System Testing (Integration testing of modules) Module Testing (Integration testing of units) Implementation of Units (classes, procedures, functions) Unit testing, Software Quality Assurance (SQA), Supporting Tools, Education I V 1

Agenda - What will you learn today? 3 I V I V 4 I V 2

Typical properties of a project? 5 Start and stop A budget Goal An orderer A single-time occurrence I V Who are involved in a software project? 6 User Customer Pays for the system Development Organization Uses the system Stakeholders Provides the system A person or organization with a major interest in the project outcome. Supplier I V 3

Dependent project parameters 7 Calendar Time Resources Project Features Quality I V SMART Goals 8 Specific Must be straightforward and answer the questions: What will you do? Why is it important? Measurable Agreed Upon If you cannot measure it, how do you then know if the goal is reached or not? Agreed upon with all stakeholders (e.g. customer, user etc.) Realistic Timely Possible with the current resources, knowledge and time. You must be both willing and able to do it. A clear time frame for the goal. Note that there exists other similar versions the definition of SMART goals. I V 4

9 I V A project 10 Lots of things to do... Time I V 5

A project 11 Work breakdown Time I V A task or an activity 12 Examples: Implement encryption module Interview users Design user-interface prototype Task (or activity) Time Task1 Duration, e.g. 10 days I V 6

Dependencies between tasks 13 Task1 and Task2 are precursors (predecessors) to Task3 Time Task2 Task1 Task3 I V Tool Support 14 Microsoft Project OpenProj IDA's MSDN Academic Alliance (see "Resources" on course page) http://openproj.org I V 7

Tasks, Duration, and Dependencies 15 Phases Predecessors Gantt-chart Phase Dependency Task Tasks Duration I V Milestone and Tollgate 16 Milestone Tollgate Verify internal sub-goal fulfillment Properties of a SMART goal External decision point E.g. after a pre-study phase, the customer decides if the project should continue or not. I V 8

Critical Path, Slack and Real time 17 Critical Path Slack (float) time Real time (estimated) Available time = Slacktime + Real time I V Resource 18 Who is going to "do" the task and with what? Resource planning Time Task1 I V 9

Resource 19 Resource name Type of resource Cost Resource assigned to task I V Resource Total Estimated Time 20 Over allocated I V 10

A key to success - buffer time 21 Buffer Time Time Internal Deadline External Deadline Buffer To who should you communicate the deadlines? I V Effort Estimation in reality How long time does it take for you to implement the encryption layer? No idea. I have never done this before... I wonder if it is even possible. 22 8 months +- 2 months Sam the seller Harry the hacker I V 11

Prioritization of requirements 23 Customer Value High Sweet Spot Low Avoid Low High Development Effort I V Effort Estimation 24 Expert Judgment - the Delphi technique Experts make individual predictions secretly Calculate Mean Mean is presented to expert group [No change] [An expert changes its estimate] Algorithmic Methods - COCOMO and COCOMO II COCOMO (Boehm, 1981) An formula where parameters are estimated using real projects. Input: No of code lines Output: Effort (time) COCOMO II Takes into account changes in SE, such as component reuse, prototyping Other inputs than number of code lines. E.g. function-points (e.g. external in/out, user interactions, files) I V 12

Illustrating example, COCOMO 25 Effort = C1 EAF (Size) P1 Effort = number of staff months C1 = scaling constant EAF = Effort Adjustment Factor Size = number of delivered, human produced source code instructions (KDSI) P1 = exponent describing the scaling inherent of the process (0.91-1.23) I V Illustrating example, COCOMO II 26 Predict maintenance size: Size = ASLOC *0.01* Assessment and Assimilation (0-8) (effort to test other S/W) Software Understanding (10-50) (low:good structure) 0.4 * percentage of changed design 0.3 * percentage of changed code 0.3 * percentage of integrated external code I V 13

Algorithmic or parametric methods 27 Pros: Based on empirical data Potential up to +/- 20 % accuracy No human bias Cons: Data collection planned and perfomed Expensive consultants Rapid change in technology I V Relative importance Analytical Hierarchy Process 1. Expert pairwise comparison F1: On line group-booking 7 F3: Last minute tickets 3. Calculate normalized eigenvector = relative importance 3 5 F2: Round-trip tickets Approximation: 2. Comparison matrix F1 F1 F2 F3 1 1/3 1/7 F1 0.083 F2 3 1 1/5 F2 = 0.193 F3 7 5 1 F3 0.724 For enthusiasts: http://www.boku.ac.at/mi/ahp/ahptutorial.pdf I V 14

I V I V 15

I V AHP usage Pros: Multiple criteria Simple comparison Fast Gives values on rational scale Cons: Grows quadratically Relative values only Though chains of inconsistency Hard to add new alternatives Needs a tool I V 16

Expert judgment Poker Each developer has a set of cards, usually with values: 0, ½, 1, 2, 3, 5, 8, 13, 20, 40, 100, don t know Values translate into days or points Requirement and user story is described All developers picks a card All disclose their cards Discussion, time-boxed, lowest and highest estimator start. New estimation round Enthusiasts: http://www.planningpoker.com/ I V poker Pros: Each participant make own decision All participants are active Participants get deeper knowledge Iterative work Consensus based final estimate Fun Cons: Need of tools for distributed projects The orderer of the project needs to take consequences of over-rating confidence when too little information is present I V 17

35 I I V What is a risk? 36 Something that can eliminate full success of the project Examples: Staff turnover - Experienced team members will leave the project Requirement change - Significant requirements will change late in the process. Size underestimated - The size project was larger then expected I V 18

Kinds of risks 37 General Project Specific "A team member gets sick" "There is a risk that the project gets delayed" "The delivery of the development hardware environment is delayed." "Anders needs to visit his family, since his father is dying." Direct Indirect The project has great control "The Windows platform will not scale" where the project has little control "The servers will stop running due to an earthquake" I V What is risk management? 38 identification analysis planning monitoring List of potential risks Prioritized list plan assessment "What can go wrong" "How bad is it" "What shall we do with it" "Has the probability changed?" I V 19

1. Identification 39 Brainstorming with the whole team for 10 minutes. What can go bad?!? Types of risks Technology risks - Hardware/software technology used for development, e.g. using Java People risks - people in the development team Organizational risks Tools risks - s with the current tool used Requirements risks - Changes in customer requirements Estimation risks - Wrong project estimations I V 2. Analysis 40 low 1 moderate 2 Probability high 3 very high 4 catastrophic 4 serious 3 Impact tolerable 2 insignificant 1 Probability x Impact = Magnitude Indicator Sort list after risk magnitude I V 20

3. 1. Avoidance Reorganize so that the risk disappears. 41 " problem between develop sites in Stockholm and India - localize all development in India?" "the web-server fails often - low accessibility outsource the operation?" 2. Transfer Reorganize so that someone else takes the risk, insurance, customer, bank. 3. Acceptance Live with it "Changes of requirements late in project - a prototype?" Mitigate the risk Lower the probability. "The key architect starts to work for another company - 2 architects?" Define A plan B... Contingency plan I V Example 42 Analyze No Description Probability Impact Factor 1 During implementation it is discovered that the new web-platform cannot Moderate (2) Serious (3) 6 talk to the legacy database system Plan Avoid risk Do not introduce a new web-platform. Use the existing platform. Transfer risk Sign a contract with a contractor, who guarantees access to the system. Accept risk Mitigate Create a prototype early in the process. Solve issues before implementation phase Contingency plan Transfer the whole old legacy database system to a modern DBMS. I V 21

Make the risks useful 43 Few (3-10) Project Specific Regular meetings I V 44 V I V 22

The Project Plan 45 Why a project plan? Tool for the project manager medium between project members and other stakeholders What should be done, when and by who When is the plan finished? Abstraction Time v1 v2 v3 v4 More information... I V The Project Plan - Content 46 Project Description Background to the project Relevant constraints (budget etc.) Project Goal Start and expected end date. Project Organization Roles Knowledge / skill and reports s, Probability and Impact Mitigation and Contingency plan Time and Resource Plan Milestones Tollgates Deliverables Activities Resources Training Plan Needed knowledge and skills. Who needs what? Budget? Change and configuration management (In larger projects, this part is a document of its own.) I V 23

Project Status Reports Content of a status report? Summary - current status What has happened since last report What happens next (both in long and short term) Problems and risks 47 Status Report I Status Report II Status Report III Time v1 v2 v3 v4 More information... I V Finally, never underestimate... 48... a project Kick-off I V 24