Introduction to Software Engineering ECSE-321 Unit 4 – Project Management 10/19/2015Introduction to Software Engineering – ECSE321Unit 4 – Project Management/1.

Slides:



Advertisements
Similar presentations
ISBN Prentice-Hall, 2006 Chapter 3 Planning and Managing the Project Copyright 2006 Pearson/Prentice Hall. All rights reserved.
Advertisements

Software Project Management Lecture 2. Laws of Project Management 4 No major project is ever installed on time, within budget and with the same staff.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall 3.1.
CS3773 Software Engineering Lecture 8 Software Planning and Estimation.
CMSC 345 Project Planning. Customer’s Perspective Do you understand my problem? Can you develop and deliver a system that will solve my problem? How long.
Project Management.
W5HH Principle As applied to Software Projects
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.
Lecturer: Dr. AJ Bieszczad Chapter 33-1 Planning and managing the project Tracking project progress Project personnel and organization Effort and schedule.
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
CH03 Planning and Managing the Project
12 C H A P T E R Systems Investigation and Analysis and Analysis.
Creator: ACSession No: 9 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringNovember 2005 Risk Management CSE300 Advanced Software Engineering.
1 SOFTWARE PRODUCTION. 2 DEVELOPMENT Product Creation Means: Methods & Heuristics Measure of Success: Quality f(Fitness of Use) MANAGEMENT Efficient &
OHT 6.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Development plan and quality plan objectives The elements of the development.
Chapter 3 Planning and Managing the Project Shari L. Pfleeger Joanne M. Atlee 4th Edition.
Project Tracking and Scheduling Infsy 570 Dr. R. Ocker.
Planning. SDLC Planning Analysis Design Implementation.
Project planning. Software project management Informal definition of management – The art of getting work done through other people Software project management.
Project Management and Scheduling
Cost Estimation Van Vliet, chapter 7 Glenn D. Blank.
Chapter 3 Planning and Managing the Project. Pfleeger and Atlee, Software Engineering: Theory and PracticeChapter 3.2 Important Dates 09/09/2010 HW: Page.
Software Project Management Task Estimating and Scheduling
Four P’s People – software engineers People – software engineers Product – software to be produced Product – software to be produced Process – framework.
After Lesson 6 next is Lesson 13 to fit topic on Software Development SOFTWARE PROJECT MANAGEMENT.
Information System Design IT60105 Lecture 21 Staff Organization, Risk Management and Software Configuration Management.
Project Tracking. Questions... Why should we track a project that is underway? What aspects of a project need tracking?
1 Chapter 5 Project management. 2 Project management : Is Organizing, planning and scheduling software projects.
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.
© The McGraw-Hill Companies, Software Project Management 4th Edition Risk management Chapter 7.
Project Estimation Model By Deepika Chaudhary. Factors for estimation Initial estimates may have to be made on the basis of a high level user requirements.
University of Southern California Center for Systems and Software Engineering Barry Boehm, USC CS 510 Software Planning Guidelines.
Chapter 3 Project Management Chapter 3 Project Management Organising, planning and scheduling software projects.
Pre-Project Components
Project Management All projects need to be “managed” –Cost (people-effort, tools, education, etc.) –schedule –deliverables and “associated” characteristics.
Parts of this presentation is extracted from Ian Sommerville’s slides located at
Copyright 2006 John Wiley & Sons, Inc. Beni Asllani University of Tennessee at Chattanooga Project Management Operations Management - 5 th Edition Chapter.
Project Management in the Software Development Environment CIS490.
Project & Risk Management For next class -- Pressman: 3, , 5.8, , 6.6 Introductions Software Development Processes Software Maturity Models.
Chapter 3 Planning and Managing the Project Shari L. Pfleeger Joanne M. Atlee 4 th Edition.
Copyright 2002 Prentice-Hall, Inc. Chapter 3 Managing the Information Systems Project 3.1 Modern Systems Analysis and Design.
Project & Risk Management
Software Project Management Lecture 5 Software Project Risk Management.
Information Systems System Analysis 421 Chapter 3 Managing the Information Systems Project.
Lecture 61 Project planning tool Lecture 62 Objectives Understand the reasons why projects sometimes fail Describe the different scheduling tools, including.
1 Chapter 3: Project Management Chapter 22 & 23 in Software Engineering Book.
Software Engineering (CSI 321) Project Planning & Estimation 1.
CSCI 3428: Software Engineering Tami Meredith Chapter 3 Planning and Managing the Project.
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.
WEEK 3 Project Planning.
CHAPTER 3 Planning and Managing the Project  Tracking project progress  Project personnel and organization  Effort and schedule estimation  Risk management.
Project Scope, Time and Cost IT Project Management PM Knowledge Areas:
University of Southern California Center for Systems and Software Engineering Barry Boehm, USC CS 510 Fall 2010 Software Planning Guidelines.
Project management. Software project management ■It is the discipline of planning, organizing and managing resources to bring about the successful completion.
Chapter 3 Project Management Parts of this presentation is extracted from Ian Sommerville’s slides located at
بشرا رجائی برآورد هزینه نرم افزار.
Software Development Process includes: all major process activities all major process activities resources used, subject to set of constraints (such as.
Project Cost Management
Software Planning Guidelines
Project Management and Information Security
Software Engineering (CSI 321)
Software Project Management
Chapter 3 Planning and Managing the Project Shari L. Pfleeger
PPT3: Project planning and management
Copyright 2006 Pearson/Prentice Hall. All rights reserved.
Importance of Project Schedules
Chapter 26 Estimation for Software Projects.
Presentation transcript:

Introduction to Software Engineering ECSE-321 Unit 4 – Project Management 10/19/2015Introduction to Software Engineering – ECSE321Unit 4 – Project Management/1

Tracking Progress When a customer approaches a software development house: ●Do you understand customer’s problems and needs? ●Can you design a system to solve customer’s problems or satisfy customer’s needs? ●How long will it take you to develop the system? ●How much will it cost to develop the system? Concerns needing progress tracking

Project Schedule – What is it? Describes the software-development cycle for a particular project by ●enumerating the phases or stages of the project ●breaking each phase into discrete tasks or activities to be completed Portrays the interactions among the activities and estimates the times that each task or activity will take

Project Schedule: Approach Understanding customer’s needs by listing all project deliverables ●Documents ●Demonstrations of function ●Demonstrations of subsystems ●Demonstrations of accuracy ●Demonstrations of reliability, performance or security Determining milestones and activities to produce the deliverables

Milestones and activities Activity: takes place over a period of time Milestone: completion of an activity -- a particular point in time Precursor: event or set of events that must occur in order for an activity to start Duration: length of time needed to complete an activity Due date: date by which an activity must be completed

Project Schedule (continued) Project development can be separated into a succession of phases which are composed of steps, which are composed of activities Phases of a project could be independent Phases of a project could be independent

Project Schedule (continued) Next table shows the phases, steps and activities to build a house ●landscaping phase ●building the house phase

Phases, Steps, and Activities in Building a House Some activities are dependent on others Some activities are dependent on others Some activities are independent Some activities are independent

Milestones in Building a House Corresponds to the “survey the land” activity Corresponds to the “survey the land” activity

Work Breakdown and Activity Graphs Work breakdown structure depicts the project as a set of discrete pieces of work Activity graphs depict the dependencies among activities ●Nodes: project milestones ●Lines: activities involved

Activity graph for building a house

Estimating Completion Adding estimated time in activity graph of each activity to be completed tells us more about the project's schedule Time needed for “surveying the land” Time needed for “surveying the land”

Estimating Completion for Building a House

Critical Path Method (CPM) Minimum amount of time it will take to complete a project ●Reveals those activities that are most critical to completing the project on time Real time (actual time): estimated amount of time required for the activity to be completed Available time: amount of time available in the schedule for the activity's completion Slack time: the difference between the available time and the real time for that activity

Critical Path Method (CPM) Critical path: the slack at every node is zero ●can be more than one in a project schedule Slack time = available time – real time = latest start time – earliest start time 

Slack Time for Activities of Building a House

CPM Bar Chart Including information about the early and late start dates Asterisks indicate the critical path

Project Personnel Key activities requiring personnel ●requirements analysis ●system design ●program design ●program implementation ●testing ●training ●maintenance ●quality assurance There is great advantage in assigning different responsibilities to different people

Choosing Personnel Ability to perform work Interest in work Experience with ●similar applications ●similar tools, languages, or techniques ●similar development environments Training Ability to communicate with others Ability to share responsibility Management skills

Communication A project's progress is affected by ●degree of communication ●ability of individuals to communicate their ideas Software failures can result from breakdown in communication and understanding

Communication (continued) Line of communication can grow quickly If there is n worker in project, then there are n(n-1)/2 pairs of communication

Work Styles Extroverts: tell their thoughts Introverts: ask for suggestions Intuitives: base decisions on feelings Rationals: base decisions on facts, options

Work Styles (continued) Horizontal axis: communication styles Vertical axis: decision styles

Work Styles (continued) Work styles determine communication styles Understanding workstyles ●Helps you to be flexible ●give information about other's priorities Affect interaction among customers, developers and users

Project Organization Depends on ●backgrounds and work styles of team members ●number of people on team ●management styles of customers and developers Examples: ●Chief programmer team: one person totally responsible for a system's design and development ●Egoless approach: hold everyone equally responsible

Chief Programmer Team Each team member must communicate often with chief, but not necessarily with other team members

Project Organization (continued) Characteristics of projects and the suggested organizational structure to address them

Effort Estimation Estimating project costs is one of the crucial aspects of project planning and management Estimating cost has to be done as early as possible during the project life cycle Type of costs ●facilities: hardware space, furniture, telephone, etc ●methods and tools: software, tools for designing software (Computer-Aiede Software Engineering or CASE) ●staff (effort): the biggest component of cost

Estimation Should be Done Repeatedly Uncertainty early in the project can affect the accuracy of cost and size estimations 4x uncertainty Uncertainty is almost zero – not very useful! Uncertainty is almost zero – not very useful!

Effort Estimation - COCOMO model Constructive Cost Model (COCOMO) introducted by Barry Boehm Basic COCOMO categorizes software projects into three classes ●organic – relatively small, simple projects with rigid requirements ●semi-detached - intermediate sized projects with mixed teams and requirements ●embedded – projects developed for a fixed hardware

COCOMO Basic COCOMO equations take the form ● ●P=E/D ●where E is the effort applied in person-months, D is the development time in chronological months, KLOC is the estimated number of delivered lines of code for the project (expressed in thousands), and P is the number of people required.

COCOMO The coefficients are found from historical data

Risk Management - What is a Risk? Risk is an unwanted event that has negative consequences Distinguish risks from other project events ●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 Quantify the effect of risks ●Risk exposure = (risk probability) x (risk impact) Risk sources: generic and project-specific

Risk Management Activities

Risk Management Activities (cont’d) Example of risk exposure calculation

Risk Management Activities (cont’d) Three strategies for risk reduction ●Avoiding the risk: change requirements for performance or functionality ●Transferring the risk: transfer to other system, or buy insurance ●Assuming the risk: accept and control it Cost of reducing risk ●Risk leverage = (risk exposure before reduction – (risk exposure after reduction) / (cost of risk reduction)

Boehm’s Top Ten Risk Items Personnel shortfalls Unrealistic schedules and budgets Developing the wrong functions Developing the wrong user interfaces Gold-plating Continuing stream of requirements changes Shortfalls in externally-performed tasks Shortfalls in externally-furnished components Real-time performance shortfalls Straining computer science capabilities

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

Project Plan Project Plan Lists List of the people in development team List of hardware and software Standards and methods, such as ●algorithms ●tools ●review or inspection techniques ●design language or representaions ●coding languages ●testing techniques