1 Chapter 7 Project Scheduling and Tracking. 2 Write it Down! SoftwareProjectPlan Project Scope...
-
Upload
jack-johns -
Category
Documents
-
view
217 -
download
0
Transcript of 1 Chapter 7 Project Scheduling and Tracking. 2 Write it Down! SoftwareProjectPlan Project Scope...
2
Write it Write it Down!Down!
SoftwareSoftwareProjectProject
PlanPlan
Project ScopeProject ScopeEstimatesEstimatesRisksRisksScheduleScheduleControl strategyControl strategy
4
Comments on Comments on “Lateness”“Lateness”
Determine the estimated effort Determine the estimated effort and durationand duration
Use an incremental process Use an incremental process modelmodel
Explain it to the customerExplain it to the customer Offer the incremental Offer the incremental
development strategydevelopment strategy
5
Scheduling Scheduling PrinciplesPrinciples Compartmentalization — define distinct Compartmentalization — define distinct
taskstasks Interdependency — indicate task Interdependency — indicate task
interrelationshipinterrelationship Time allocation — assign task start & Time allocation — assign task start &
finish timefinish time Effort validation Effort validation — — schedule no more schedule no more
than the allocated number of peoplethan the allocated number of people Defined responsibilities — people must Defined responsibilities — people must
be assignedbe assigned Defined outcomes — each task must Defined outcomes — each task must
have an outputhave an output Defined milestones — review for qualityDefined milestones — review for quality
8
Defining Task Defining Task SetsSets
determine determine type of projecttype of project assess the degree of rigor requiredassess the degree of rigor required
identify identify adaptation criteriaadaptation criteria compute compute task set selectortask set selector (TSS) (TSS)
valuevalue interpret TSS to determine interpret TSS to determine degree degree
of rigorof rigor select appropriate software select appropriate software
engineering tasksengineering tasks
9
Types of Types of ProjectProject
Concept development projectsConcept development projects New application development New application development
projectsprojects Application enhancement projectsApplication enhancement projects Application maintenance projectsApplication maintenance projects Reengineering projectsReengineering projects
10
Adaptation Adaptation CriteriaCriteria
Size of the projectSize of the project Number of potential usersNumber of potential users Mission criticalityMission criticality Application longevityApplication longevity Stability of requirementsStability of requirements Ease of customer/developer Ease of customer/developer
communicationcommunication Maturity of applicable technologyMaturity of applicable technology Performance constraintsPerformance constraints Embedded and nonembedded Embedded and nonembedded
characteristicscharacteristics Project staffProject staff Reengineering factorsReengineering factors
11
Task Set Selector Task Set Selector (TSS)(TSS)
Select the appropriate task setSelect the appropriate task set
Task set selector value Degree of Task set selector value Degree of rigorrigor
TSS < 1.2 casual TSS < 1.2 casual
1.0 < TSS < 3.01.0 < TSS < 3.0 structuredstructured
TSS > 2.4TSS > 2.4 strict strict
12
Degree of Degree of RigorRigor
Select the appropriate task setSelect the appropriate task set
Task set selector value Degree of Task set selector value Degree of rigorrigor
TSS < 1.2 TSS < 1.2 casual casual
1.0 < TSS < 3.01.0 < TSS < 3.0 structuredstructured
TSS > 2.4TSS > 2.4 strict strict
13
Software Engineering Software Engineering TasksTasks
Depend on the project type and the Depend on the project type and the degree of rigor.degree of rigor.
Decompose each major task into a set Decompose each major task into a set of subtasks.of subtasks.
Be Distributed on the project time Be Distributed on the project time line.line.
Flow smoothly into the next.Flow smoothly into the next.
15
ExampExamplele
Figure 7.2 Concept development tasks using anevolutionary model
Project Definition
I.1 Concept scoping
Concept Development
New ApplicationDevelopmentApplication
EnhancementApplicationMaintenance
I.4 Proof of concept
I.5 Concept implementation
Planning
ReleaseCustomerEvaluation
Engineering/Construction
I.6 Customer reaction
I.2 Preliminary concept planningI.3 Technology risk assessment
Reengineering
16
Define a Task Define a Task NetworkNetwork
I.1Conceptscoping
I.3aTech. Risk
Assessment
I.3bTech. Risk
Assessment
I.3cTech. Risk
Assessment
Three I.3 tasks areapplied in parallel to3 different conceptfunctions
Three I.3 tasks areapplied in parallel to3 different conceptfunctions
I.4Proof ofConcept
I.5aConcept
Implement.
I.5bConcept
Implement.
I.5cConcept
Implement.
I.2Conceptplanning
I.6CustomerReaction
Integratea, b, c
17
ScheduliSchedulingng
InformationInformation Estimates of effortEstimates of effort A decomposition of the product functionA decomposition of the product function The selection of the appropriate process model The selection of the appropriate process model
and task setand task set Decomposition of taskDecomposition of task A task networkA task network
MethodsMethods Program evaluation and review technique Program evaluation and review technique
(PERT)(PERT) Critical path method (CPM)Critical path method (CPM)
18
PERT & PERT & CPMCPM
Determine the “critical Determine the “critical path”path”
Establish “most likely time”Establish “most likely time”
Calculate “boundary times”Calculate “boundary times” earliest timeearliest time latest timelatest time earliest finishearliest finish latest finish timelatest finish time the total floatthe total float
20
I.1.1 Identify need and benefits Meet with customers Identify needs and project constraints Establish product statement Milestone: product statement definedI.1.2 Define desired output/control/input (OCI) Scope keyboard functions Scope voice input functions Scope modes of interaction Scope document diagnostics Scope other WP functions Document OCI FTR: Review OCI with customer Revise OCI as required; Milestone; OCI definedI.1.3 Define the functionality/behavior Define keyboard functions Define voice input functions Decribe modes of interaction Decribe spell/grammar check Decribe other WP functions FTR: Review OCI definition with customer Revise as required Milestone: OCI defintition completeI.1.4 Isolate software elements Milestone: Software elements definedI.1.5 Research availability of existing software Reseach text editiong components Research voice input components Research file management components Research Spell/Grammar check components Milestone: Reusable components identifiedI.1.6 Define technical feasibility Evaluate voice input Evaluate grammar checking Milestone: Technical feasibility assessedI.1.7 Make quick estimate of sizeI.1.8 Create a Scope Definition Review scope document with customer Revise document as required Milestone: Scope document complete
week 1 week 2 week 3 week 4Work tasks week 5
Timeline/Gantt Timeline/Gantt ChartChart
22
Tracking/Controlling the Tracking/Controlling the ScheduleSchedule
TrackingTracking Periodic project status meetingPeriodic project status meeting The results of all reviewsThe results of all reviews Project milestonesProject milestones Actual start-dateActual start-date Earned value analysisEarned value analysis
ControllingControlling Additional resourceAdditional resource Redefine the project scheduleRedefine the project schedule Time-boxingTime-boxing
23
Earned Value Earned Value AnalysisAnalysis
Budgeted Cost of Work Scheduled (Budgeted Cost of Work Scheduled (BCWSBCWS)) BCWS values for all tasks k, BCWS values for all tasks k, BACBAC = =
(BCWS(BCWSkk)) Budgeted Cost of Work Performed Budgeted Cost of Work Performed
((BCWPBCWP)) Schedule Performance Index, Schedule Performance Index, SPISPI = BCWP/BCWS = BCWP/BCWS Schedule Variance, Schedule Variance, SVSV = BCWP - BCWS = BCWP - BCWS Percent complete = BCWP/BACPercent complete = BCWP/BAC
Actual Cost of Work Performed (Actual Cost of Work Performed (ACWPACWP)) Cost Performance Index, Cost Performance Index, CPICPI = BCWP / ACWP = BCWP / ACWP Cost Variance, Cost Variance, CVCV = BCWP - ACWP = BCWP - ACWP