Contents Introduction Requirements Engineering Project Management

Slides:



Advertisements
Similar presentations
Project management.
Advertisements

Chapter 26 Estimation for Software Projects
Contents Introduction Requirements Engineering Project Management
SWE Introduction to Software Engineering
Software project management Module 1 -Introduction to process management Teaching unit 1 – Introduction Ernesto Damiani Free University of Bozen-Bolzano.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 Project management.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
Lecturer: Dr. AJ Bieszczad Chapter 33-1 Planning and managing the project Tracking project progress Project personnel and organization Effort and schedule.
PVK-HT03
Contents Introduction Requirements Engineering Project Management
SOFTWARE PROJECT MANAGEMENT AND COST ESTIMATION © University of LiverpoolCOMP 319slide 1.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
1 SOFTWARE PRODUCTION. 2 DEVELOPMENT Product Creation Means: Methods & Heuristics Measure of Success: Quality f(Fitness of Use) MANAGEMENT Efficient &
Project Management Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
Project Tracking and Scheduling Infsy 570 Dr. R. Ocker.
Project planning. Software project management Informal definition of management – The art of getting work done through other people Software project management.
©Ian Sommerville 2006Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
©Ian Sommerville 2000Software Engineering, 7th edition. Chapter 5 Slide 1 Chapter 5 Project Management Modified by Randy K. Smith.
 Probably the most time-consuming project management activity.  Continuous activity - Plans must be regularly revised.  Various different types of.
Project management DeSiaMore 1.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 4 Slide 1 Concerned with activities involved in ensuring that software is delivered: on.
Software Project Management Introduction to Project Management.
By K Gopal Reddy.  Metrics in software are of two types.direct and indirect.  Function points as indirect metrics.  Function points are used to measure.
1 Chapter 5 Project management. 2 Project management : Is Organizing, planning and scheduling software projects.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Lecture 17: Chapter 26 Estimation for Software Projects Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman.
Engineering, 7th edition. Chapter 5 Slide 1 Project management.
Project management Lecture 10. Topics covered Management activities Project planning Project scheduling Risk management.
Chapter 3 Project Management Details Tracking Project Progress Project Estimation Project Risk Analysis Project Organization RUP Project Management Workflow.
1 Chapter 23 Estimation for Software Projects. 2 Software Project Planning The overall goal of project planning is to establish a pragmatic strategy for.
Introduction to Software Engineering ECSE-321 Unit 4 – Project Management 10/19/2015Introduction to Software Engineering – ECSE321Unit 4 – Project Management/1.
Chapter 11. Intro  What is Project Management?  Project Manager  Project Failures & Successes Managing Projects  PMBOK  SDLC Core Process 1 – Project.
T. E. Potok - University of Tennessee CS 594 Software Engineering Lecture 3 Dr. Thomas E. Potok
10/27/20151Ian Sommerville.  Fundamentals of software measurement, costing and pricing  Software productivity assessment  The principles of the COCOMO.
University of Southern California Center for Systems and Software Engineering Barry Boehm, USC CS 510 Software Planning Guidelines.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
Chapter 3 Project Management Chapter 3 Project Management Organising, planning and scheduling software projects.
Software Engineering, 8th edition. Chapter 5 1 Courtesy: ©Ian Sommerville 2006 Oct 13 th, 2008 Lecture # 6 Project management.
1 Project management. 2 Topics covered Management activities Project planning Project scheduling Risk management.
Estimation for Software Projects 1. Software Project Planning 2 The overall goal of project planning is to establish a pragmatic strategy for controlling,
Function Points Synthetic measure of program size used to estimate size early in the project Easier (than lines of code) to calculate from requirements.
Chap 4. Project Management - Organising, planning and scheduling
Software Engineering (CSI 321) Project Planning & Estimation 1.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
Project management 1/30/2016ICS 413 – Software Engineering1.
PROJECT PLANNING & MANAGEMENT Brittany Hamilton. PROGRESS TRACKING Do we understand customer’s needs? Can we design a system to solve customer’s problems.
PLANNING AND MANAGING THE PROJECT CODY STANISH. 3.1 TRACKING PROGRESS Do you understand the customer’s needs? Can you design a system to solve customer’s.
1 Project Management Software management is distinct and often more difficult from other engineering managements mainly because: – Software product is.
CSC 480 Software Engineering Project Planning. Proposal writing Project planning and scheduling Project costing Project monitoring and reviews Personnel.
Project management. Software project management ■It is the discipline of planning, organizing and managing resources to bring about the successful completion.
1 Project management Organising, planning and scheduling software projects.
Software Development Process includes: all major process activities all major process activities resources used, subject to set of constraints (such as.
Chapter 33 Estimation for Software Projects
Project Cost Management
Software Planning Guidelines
Software Engineering Fall 2005
Project management.
Software Project Management
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
COCOMO Model Basic.
Project management Lecture 9
COCOMO 2 COCOMO 81 was developed with the assumption that a waterfall process would be used and that all software would be developed from scratch. Since.
Project Management Chapter 11.
Chapter 33 Estimation for Software Projects
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
DOD’S PHASED SYSTEM DEVELOPMENT PROCESS
PPT3: Project planning and management
Chapter 26 Estimation for Software Projects.
Presentation transcript:

Contents Introduction Requirements Engineering Project Management Software Design Detailed Design and Coding Quality Assurance Maintenance PVK-HT06

Project Management Project Management Activities Project Scheduling Cost Estimation PVK-HT06

Project Management Activities Project acquisition Project planning Resource assessment Risk and option analysis Cost estimation Project scheduling Work breakdown structure Effort distribution Resource assignment Project tracking and control Reporting PVK-HT06

Project Resources People Hardware and software tools Required skills Availability Duration of tasks Start date Hardware and software tools Description Duration of use Delivery date PVK-HT06

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. PVK-HT06

Top Ten Project Risks Staff deficiencies Unrealistic schedules and budgets Developing the wrong functions Developing the wrong interface Over-engineering Changing requirements Externally developed items Externally performed tasks Performance problems Assumptions on technology PVK-HT06

Risk management requirements Risk impact: the loss associated with the event Risk probability: the likelihood that the event will occur Risk control: the degree to which we can change the outcome Risk exposure = (risk probability) x (risk impact) PVK-HT06

Define Work Breakdown Structure Activity Major work unit Start date End date Consumes resources Results in work products (and milestones) Project function Continue throughout the project Not bound to specific phases Step 1 Step 2 Activity 1 Activity 2 Activity 3 Phase 1 Step 1 Step 2 Activity 1 Activity 2 Task 1 Task 2 Task 3 Project Phase 2 Step 1 Step 2 Phase N PVK-HT06

Schedule Activities Almost all activities depend on the completion of some other activities Many activities can be performed in parallel Organisation necessary to balance work-load, costs, and duration PERT chart (activity network/task graph) Critical path Project Time-line (Gantt chart) Resource table PVK-HT06

PERT Charts Program Evaluation and Review Technique Graph Compute Nodes = activities/tasks and estimated duration Edges = dependencies Compute Slack time = available time - estimated duration Critical path A path is critical when it contains an activity that, if delayed, will cause a delay of the whole project. PVK-HT06

Example PERT Chart PVK-HT06

Gantt charts A Gantt chart is used to graphically present the start and end dates of each software engineering task One axis shows time. The other axis shows the activities that will be performed. The black bars are the top-level tasks. The white bars are subtasks The diamonds are milestones: Important deadline dates, at which specific events may occur PVK-HT06

A Gantt Chart (Project Time Line) PVK-HT06

Another Gantt Chart PVK-HT06

Cost Estimation Approach Problems: Use empirical and historical data Decompose problem Check for experiences/ data on sub problems Make qualified estimations (Make at least two independent estimates) Problems: What are good measures? Do the estimates affect the result? Does the type of software affect the result? Does the project environment affect the result? ... Use empirical and historical data Algorithmic cost modelling COCOMO (based on LOC) FP (based on function points) PVK-HT06

COCOMO Constructive Cost Modelling [Boehm 81] Based on publicly available historical data of 63 TRW projects Basic assumptions: Requirements change only slightly during the project There is good project management The historical data is representative Assigning more resources to the project does NOT result in linear decreasing development time PVK-HT06

Basic Model Effort = a (KDSI)b Schedule = c (Effort)d a b c d 2.4 KDSI = Kilo Delivered Source Instructions ( LOC - comments) The a, b, c, and d factors vary depending on the type of project Effort is measured in PM (Person Months = 152h of work) Schedule is the Development Time measured in Months a b c d 2.4 3.0 3.6 1.05 1.12 1.20 2.5 0.38 0.35 0.32 Organic In-house IS, Development in a familiar environment Semi-detached Between OM- and EM projects Embedded Large and inexperienced teams, many constraints PVK-HT06 Boehm, Software Engineering Economics, Prentice-Hall, 1981.

Example Size = 30000 LOC = 30KLOC Effort = 2.4 * (30)1.05 = 85 PM Schedule = 2.5 * (85)0.38 = 13.5 Months => Avg. staffing: 85/13.5 = 6.3 persons ??? => Avg. productivity: 30000/85 = 353 LOC/PM Compare: Semi-detached: 135 PM 13.9 M 9.7 persons Embedded: 213 PM 13.9 M 15.3 persons PVK-HT06

COCOMO II Goal: To develop a software cost and schedule estimation model tuned to the life cycle practices of the 1990’s and 2000’s 3 Models Application Composition: prototyping to resolve high-risk user interface issues, 2 environment drivers, 0 process drivers, Sizing in Object Points Early Design Model: to explore alternative architectures and concepts,7 environment drivers, 5 process drivers, Sizing in Function Points or SLOC Post Architecture Model: development has begun, 17 environment drivers, 5 process drivers, Sizing in Function Points or SLOC PVK-HT06

Effort and schedule in COCOMO 2 Application Composition Model Effort = NOP/productivity NOP = OP * [(100 -%reuse)/100] Productivity = NOP/man-months, 5 productivity levels depending on the 2 environment drivers Early Design and Post-architecture Model æ ö Environment [ ] ( ) Factors Scale Process Effort = ç ÷ Size ç ÷ Multipliers è ø PM = ( NAP x (1 - %reuse/100 ) ) / PROD Environment: product, platform, people, project factors Process: constraint, risk/architecture, team, maturity factors ( ) [ ] Effort ( ) Factors Scale Process Schedule = Multiplier PVK-HT06

COCOMO II Model Stages Overestimated Underestimated 4x Overestimated 2x Early Design (13 parameters) 1.5x 1.25x Relative Size Range x 0.8x Post-Architecture 0.67x (23 parameters) 0.5x Underestimated Applications Composition (3 parameters) 0.25x Product Detail Concept of Rqts. Design Design Accepted Operation Spec. Spec. Spec. Software Feasibility Plans Product Detail Devel. and Design Design and Test Rqts. PVK-HT06 Phases and Milestones

COCOMO II summary COCOMO II allow for spiral model instead of waterfall model only Size of project can be listed as object points, function points or source lines of code (SLOC) The environmental multipliers are calculated from seventeen cost drivers better suited for today's methods Calibration is difficult, but can improve accuracy by a factor of five PVK-HT06

Function Points Function Point Analysis (FPA) measures the size of a software product in terms of the functionality it delivers to the users. A.J. Albrecht 1979 What the software must do from the user’s perspective Irrespective of software construction Based on five function types: Inputs Outputs Inquiries Logic Files Interfaces PVK-HT06

Project plan contents Documentation plan Project scope Data management plan Resource management plan Test plan Training plan Security plan Risk management plan Maintenance plan Project scope Project schedule Project team organization Technical description of system Project standards and procedures Quality assurance plan Configuration management plan PVK-HT06

Difficulties and Risks in Project Management Accurately estimating costs is a constant challenge It is very difficult to measure progress and meet deadlines It is difficult to deal with lack of human resources or technology needed to successfully run a project Communicating effectively in a large project is hard It is hard to obtain agreement and commitment from others PVK-HT06