Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS3773 Software Engineering Lecture 8 Software Planning and Estimation.

Similar presentations


Presentation on theme: "CS3773 Software Engineering Lecture 8 Software Planning and Estimation."— Presentation transcript:

1 CS3773 Software Engineering Lecture 8 Software Planning and Estimation

2 UTSA CS3773 2 Software Management  Software engineering is a managed process – People management – Software cost estimation – Quality management – Configuration management  Software management activities may include – Proposal writing – Software planning – Project monitoring – Personnel selection and evaluation

3 UTSA CS3773 3 Software Planning  Effective software management depends on thoroughly planning the progress of the project  Project planning identifies the activities, milestones, and deliverables produced by a project  Project plan guides the development towards the project goals  In planning, cost estimation is an important task, which is concerned with estimating the resources required to accomplish the project plan

4 UTSA CS3773 4 Project Plan  Project plan shall include the following sections – Introduction – Project organization – Risk analysis – Hardware and software resource requirements – Work breakdown – Project schedule – Monitoring and reporting mechanism  Project plan is revised during project development

5 UTSA CS3773 5 Milestones and Deliverables  A milestone is a recognizable end-point of a software process activity – Deliverables are milestones Requirements specification Architectural design Program – Internal project results that are used by the project manager to check project progress are milestones  Software process must be broken down into basic activities with associated outputs to establish milestones

6 UTSA CS3773 6 Project Scheduling  Project scheduling separates the total work involved in a project into separate activities and judging the time required to complete them  Project scheduling organizes all the activities into a coherent order – Some of the activities can be carried out in parallel – Some of the activities must be organized in a sequential manner – Project activities shall last lat least a week  Project schedules are usually represented as a set of charts or diagrams

7 UTSA CS3773 7 Mechanics of Scheduling  We follow the three steps to produce a project schedule – Decomposing activities into subtasks and estimating the durations - produce an estimation table – Identifying dependencies on subtasks – produce a priority graph – Assigning subtasks and analyzing resulting schedule – produce a critical path diagram  Project schedule charts or diagrams show work breakdowns, activities dependencies, and staff allocations

8 UTSA CS3773 8 Estimation Table Task NamesDuration (days)Accumulated Duration * IT133 IT258 IT3412 IT4416 IT5723 IT6225 * We assume that the project is done by a single developer

9 UTSA CS3773 9 Priority Graph

10 UTSA CS3773 10 Critical Path Method (CPM)  CPM take as input – Estimation table – Priority graph – An assignment of each task to a programmer – An ordering on the tasks assigned to each programmer  It computes – Earliest start time of each task – Earliest completion time for all tasks – Slack time, the amount of time starting on a task can be delayed without affecting the earliest completion date

11 UTSA CS3773 11 CPM: Notational Convention for Tasks

12 UTSA CS3773 12 CPM: Ordering of Constraints

13 UTSA CS3773 13 CPM Example

14 UTSA CS3773 14 CPM Example

15 UTSA CS3773 15 CPM Example

16 UTSA CS3773 16 CPM Example

17 UTSA CS3773 17 CPM Example

18 UTSA CS3773 18 CPM Example

19 UTSA CS3773 19 Gantt Charts

20 UTSA CS3773 20 Reading Assignments  Sommerville’s Book, 8 th edition – Chapter 5, “Project Management”  Sommerville’s Book, 9 th edition – Chapter 22, “Project Management” – Chapter 23, “Project Planning”


Download ppt "CS3773 Software Engineering Lecture 8 Software Planning and Estimation."

Similar presentations


Ads by Google