CEN 4021 4 th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project Planning.

Slides:



Advertisements
Similar presentations
Project Management Concepts
Advertisements

Creating a Schedule Using Network Diagrams; Defining Task Durations
CEN nd Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Process Models.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project Planning.
Management & Development of Complex Projects Course Code - 706
Managing Project Scheduling. What is Project Scheduling? The process of: – defining project activities – determining their sequence – estimating their.
Introduction to Project Management Chapter 6 Managing Project Scheduling Information Systems Project Management: A Process and Team Approach, 1e Fuller/Valacich/George.
Project Management Workshop. Nick Cook  Citigroup Corporate and Investment Bank  European Technology Business Office Manager Edinburgh University April.
CSCU 411 Software Engineering Chapter 2 Introduction to Software Engineering Management.
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
Project Planning Dr. Jane Dong Electrical and Computer Engineering.
Chapter 1 Software Development. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 1-2 Chapter Objectives Discuss the goals of software development.
ELC 347 DAY 7. Agenda Questions Assignment 3 Due Assignment #4 posted  Due next week Group Progress report due next week Exam 2 next week  Same format.
Project Tracking and Scheduling Infsy 570 Dr. R. Ocker.
LSU 10/09/2007Project Schedule1 The Project Schedule Project Management Unit #4.
PROJECT SCOPE, SCHEDULE, AND RESOURCE MANAGEMENT
Project Management and Scheduling
Task Analysis is Part of Planning Once we have completed planning on the deliverables and contents of the deliverables, we need to plan out “how to accomplish”
Task Analysis is Part of Planning Once we have completed our plan on what to deliver and the contents of deliverables (via requirements), we need to: plan.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Change Control.
Copyright 2002 Prentice-Hall, Inc. Chapter 3 Managing the Information Systems Project Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer.
Computer System Analysis
S/W Project Management
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Release Management.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project Planning.
After Lesson 6 next is Lesson 13 to fit topic on Software Development SOFTWARE PROJECT MANAGEMENT.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project Planning.
Project Tracking. Questions... Why should we track a project that is underway? What aspects of a project need tracking?
CEN st Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi What.
CEN rd Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Phases of Software.
Successful IT Projects slides © 2007 Darren Dalcher & Lindsey Brodie Successful IT Projects By Darren Dalcher & Lindsey Brodie
Lecture 3 Scheduling CSCI – 3350 Software Engineering II Fall 2014 Bill Pine.
Software Project Management Lecture # 7. Outline Project Scheduling.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project Planning.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Effort estimation.
Software Project Management Lecture # 7. What are we studying today? Chapter 24 - Project Scheduling  Effort distribution  Defining task set for the.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project.
BIS 360 – Lecture Two Ch. 3: Managing the IS Project.
Ahmad Al-Ghoul. Learning Objectives Explain what a project is,, list various attributes of projects. Describe project management, discuss Who uses Project.
Lecture 6. Review of Lecture 5 Company strategic planning: mission and objective statements and competitive strategy. Planning Methods: Top-down, Bottom-up.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project.
S/W Project Management Software Project Planning (POMA) Task Analysis.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
1 Software Development Software Engineering is the study of the techniques and theory that support the development of high-quality software The focus is.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Systems Analysis and Design in a Changing World, Fourth Edition
CEN st Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Monitoring (POMA)
Project Management All projects need to be “managed” –Cost (people-effort, tools, education, etc.) –schedule –deliverables and “associated” characteristics.
PRJ566 Project Planning & Management Work Breakdown Structure.
1 Capturing Requirements As Use Cases To be discussed –Artifacts created in the requirements workflow –Workers participating in the requirements workflow.
CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project Planning.
PMI-Planning Process Group Lecture 08 Ms Saba Sahar.
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: Introduction to Software Architecture.
CEN First Lecture CEN 4010 Introduction to Software Engineering Instructor: Masoud Sadjadi
Connecting with Computer Science2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering.
Copyright 2002 Prentice-Hall, Inc. Chapter 3 Managing the Information Systems Project 3.1 Modern Systems Analysis and Design.
Information Systems System Analysis 421 Chapter 3 Managing the Information Systems Project.
CSPC 464 Fall 2014 Son Nguyen. 1. The Process of Software Architecting, Peter Eeles, Peter Cripss 2. Software Architecture for Developers, Simon Brown.
Project Management Why do projects fail? Technical Reasons
SCOPE DEFINITION,VERIFICATION AND CONTROL Ashima Wadhwa.
Chapter 7 Part II Structuring System Process Requirements MIS 215 System Analysis and Design.
SOFTWARE PROJECT MANAGEMENT
Develop Schedule is the Process of analyzing activity sequences, durations, resource requirements, and schedule constraints to create the project schedule.
© 2008 Prentice Hall6-1 Introduction to Project Management Chapter 6 Managing Project Scheduling Information Systems Project Management: A Process and.
Project management assignment, Spring 2017
CEN 4021 Software Engineering II
CEN 4021 Software Engineering II
Chapter 2: Building a System
Building a “System” Moving from writing a program to building a system. What’s the difference?! Complexity, size, complexity, size complexity Breadth.
Presentation transcript:

CEN th Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Project Planning (POMA) Task Analysis

4 th LectureCEN 4021: Software Engineering II Acknowledgements  Dr. Onyeka Ezenwoye  Dr. Peter Clarke 2

4 th LectureCEN 4021: Software Engineering II Agenda  Software Project Planning (POMA) –Task Analysis  Work Breakdown Structure (WBS)

4 th LectureCEN 4021: Software Engineering II Work Breakdown Structure  Is a depiction of the project (model) in terms of the discrete pieces of work needed to complete the project and the ordering of those pieces of work.  Performed by software project team.  Focuses on the tasks required to produce the artifacts that are to be delivered.

4 th LectureCEN 4021: Software Engineering II Work Breakdown Structure  As the details of the software development and support process are realized subtasks are identified.  There are a number of tools used to support the WBS activity:  Graphical – MS Visio, Smartdraw, ArgoUML.  Scheduling – MS Project, Primavera TeamPlay

4 th LectureCEN 4021: Software Engineering II Work Breakdown Structure Steps in the WBS: 1.Examine the set of required external deliverables. 2.Identify and list the steps and tasks needed to produce the required deliverables, including intermediate deliverables. 3.Sequence the identified tasks required to produce the deliverable. 4.Estimate the effort required to perform each task. 5.Estimate the productivity of the resources that will be applied to the tasks.

4 th LectureCEN 4021: Software Engineering II Work Breakdown Structure Steps in the WBS: 6.Compute the time needed for each task by dividing the task effort estimates by the resource productivity estimates. 7.Lay out the time needed for each task and “label” each task with its task name and the assigned resources; this layout forms the initial schedule

4 th LectureCEN 4021: Software Engineering II Identify and list all deliverables For each deliverable: Identify and list the necessary tasks for completing the deliverable For each task: Compute the timeline required by dividing effort by productivity For each task: Estimate the productivity of the assigned resources For each task: Estimate the effort needed Sequence the tasks Lay out the timeline for all the ordered tasks need for each deliverable Perform task After the timelines for all tasks for all deliverable are computed Flow of WBS to schedule

4 th LectureCEN 4021: Software Engineering II WBS - Example  Deliverable 1: Executable code that is installable from a CD.  Deliverable 2: Help text, usage, and reference information that is installable from CD.  Deliverable 1 activities: –To develop code: requirements specification, and analysis (which are already completed), design, coding, and testing. –To make code installable: requirements specification (already completed), design, coding and testing

4 th LectureCEN 4021: Software Engineering II WBS - Example  Deliverable 2 activities: –Creating help text: requirements specification and analysis (already completed), design, writing, and testing. –Developing usage and reference information: requirements specification and analysis (already completed), design, writing, and testing.  Choice of activities and sequence depends on: 1.The size and complexity of both the problem and the solution,

4 th LectureCEN 4021: Software Engineering II WBS - Example 2.The process and methodology that the software organization has defined and trained its people to follow, and agreed with its client to use.  Sequencing the activities needed for the development of the artifacts can be a large problem for new software organizations.

4 th LectureCEN 4021: Software Engineering II WBS Task Refinement  List of activities for Deliverable 1: –Activity A: Designing and documenting the design using an agreed upon notation –Activity B: Coding (in language agreed upon) –Activity C: Defining test cases and generating test scripts –Activity D: Executing test scripts –Activity E: Correcting and fixing problems found during testing –Activity F: Collecting the tested executable modules and handing them to the packaging group

4 th LectureCEN 4021: Software Engineering II WBS Task Refinement Refinement of activity A: Table 2.1. Subtasks within the Design activity TasksDescription Task A-1Overall application, user interface (UI), and message architecture Task A-2Database and relational tables design Task A-3Application function 1 design Task A-4Application function 2 design Task A-5Application function 3 design

4 th LectureCEN 4021: Software Engineering II WBS - Task Sequencing  After the tasks refinement then comes the sequencing of the tasks.  There are usually dependencies between tasks i.e., Task A-1 needs to be completed before Tasks A-2, A-3, A-4 and A-5 commence.  There may also be overlap between tasks, i.e., Task A-2 maybe or may not be started before Task A-1 is completed.

4 th LectureCEN 4021: Software Engineering II WBS - Task Sequencing  Sequence diagrams depict the start-stop relationships among the various subtasks.  Sequence diagram – shows all the tasks required to complete an activity and the order in which those tasks must be performed, including the depiction of the tasks that may be performed in parallel.

4 th LectureCEN 4021: Software Engineering II WBS - Task Sequencing Task A-1 Task A-2 Task A-3 Task A-4 Task A-5 Fig. 2.2 Sequence diagram Tasks A-3, A-4, and A-5 maybe performed in parallel. Note there is no indication how task may overlap.

4 th LectureCEN 4021: Software Engineering II WBS - Task Sequencing  Steps for the construction of the software project: 1.List the deliverables. 2.For each deliverable, list the activities that are required. 3.For each activity, list the set of subtasks that are required. 4.Further refine any of the subtasks by creating the next level of subtasks, if necessary. 5.Construct the sequence relationship of the subtasks 6.Depict the sequence relationship with a sequence diagram

4 th LectureCEN 4021: Software Engineering II WBS – Time and Resource Assignments  What is a “satisfactory” level of refinement?  Guidelines: – Each task may be assigned to one person. –The estimate of the task cost, stated not in terms of money but rather in terms of time required to complete it, does not extend beyond more than two or three project status meeting.  Ensuring single person accountability makes the management and tracking of the task much easier.

4 th LectureCEN 4021: Software Engineering II WBS – Time and Resource Assignments  Assume that project management meetings are conducted very often, daily, for a small project (range of weeks) and weekly if the s/w project is large (range of months < 1 year). Units of tasks management:  Project team must decide on a unit of measurement, usually range from 1 hour units to a several days (< week).  It is important to state hours in a day and days in a week (5 or 7)

4 th LectureCEN 4021: Software Engineering II WBS - Time and Resource Assignments Units of tasks management:  Time must be allocated for non-direct-task-related activities e.g., departmental meetings, telephone interruptions etc.  How to estimate time required to complete a task. –Ask experienced s/w engineers (bottom-up estimating). –Assemble a team and ask them to estimate each task in terms of some common work volume unit e.g., lines of code (LOC) per hour per day

4 th LectureCEN 4021: Software Engineering II WBS - Time and Resource Assignments Units of tasks management: Example of Historical Information TasksPossible rates Requirements elicitation2 interviews/person-day Message design15 messages/person-day Code implementation2 functions points/person-day; 40 lines of Java/person-day Test generation5 test scenarios/person-day

4 th LectureCEN 4021: Software Engineering II WBS - Time and Resource Assignments Task A-1 Task A-2 Task A-3 Task A-4 Task A-5 End 5 days 3 days 7 days 5 days 2 days Fig2.3 Subtasks with estimated times. Longest path includes A-1, A-2, and A-3 (critical path) There is no slippage along the critical path.

4 th LectureCEN 4021: Software Engineering II WBS - Time and Resource Assignments Estimates and assignments:  Need to assign people to tasks. 1.Spmr need to consider skills required to perform each task, then seek people capable of performing these tasks. 2.Must consider the availability of the identified skilled people. 3.Must consider the timing of and the requirement of the identified person for another aspect of the project or another project. The above must be made in conjunction with the schedule in the time-estimated WBS.

4 th LectureCEN 4021: Software Engineering II WBS - Time and Resource Assignments Estimates and assignments cont:  The dependencies of the tasks in the WBS restrict assignment of resources, it also allows for the use of additional resources.  The skill of the team members may also restrict assignment.

4 th LectureCEN 4021: Software Engineering II WBS - Time and Resource Assignments Estimates and assignments: Subtasks with time Estimates and People Assignments SubtaskPersonSequence time-estimate A-1P1 A-2P2 A-3P3 A-4P4 A-5P5 5 days 3 days 7 days 2 days 5 days

4 th LectureCEN 4021: Software Engineering II WBS - Time and Resource Assignments Milestones SubtaskPersonSequence time-estimate A-1P1 A-2P2 A-3P3 A-4P4 A-5P5 5 days 3 days 7 days 2 days 5 days Minor MilestoneMilestone

4 th LectureCEN 4021: Software Engineering II WBS - Time and Resource Assignments Milestones:  End-point of a software process activity.  A significant event in a project that occurs at a specific point in time.  The labeling of a milestone gives a certain amount of priority and significance to the event.  Spmr may use the term “milestone” to emphasize the particular activity, as well as for the purpose of recognizing the attainment of a significant task.

4 th LectureCEN 4021: Software Engineering II WBS - Time and Resource Assignments Milestones:  Depending on the size of the project the schedule might only be depicted in terms of milestones. Such a schedule may be used by higher level management.  It is important for the spmr to recognize the accomplishments of milestones and publicly recognize them.  The spmr should also pay attention to missed milestones.