SEC 308 Yazılım MühendisliğiSEC 308 Yazılım Mühendisliği
Software Project Planning
1
The Four P’s0 People — the most important element of a successful project0 Product — the software to be built0 Process — the set of framework activities and software
engineering tasks to get the job done0 Project — all work required to make the product a reality
2
Product Process Project People
The People: The Stakeholders0 Five categories of stakeholders
0 Senior managers who define the business issues that often have significant influence on the project.
0 Project (technical) managers who must plan, motivate, organize, and control the practitioners who do software work.
0 Practitioners who deliver the technical skills that are necessary to engineer a product or application.
0 Customers who specify the requirements for the software to be engineered and other stakeholders who have a peripheral interest in the outcome.
0 End-users who interact with the software once it is released for production use.
3
Software Teams
4
How to lead?
How to organize?
How to motivate?
How to collaborate?
How to create good ideas?
The People: Team Leaders0 Qualities to look for in a team leader
0 Motivation. The ability to encourage (by “push or pull”) technical people to produce to their best ability.
0 Organization. The ability to mold existing processes (or invent new ones) that will enable the initial concept to be translated into a final product.
0 Ideas or innovation. The ability to encourage people to create and feel creative even when they must work within bounds established for a particular software product or application.
5
The People: The Software Team
0 Seven project factors to consider when structuring a software development team0 the difficulty of the problem to be solved0 the size of the resultant program(s) in lines of code or function
points0 the time that the team will stay together (team lifetime)0 the degree to which the problem can be modularized0 the required quality and reliability of the system to be built0 the rigidity of the delivery date0 the degree of sociability (communication) required for the
project
6
The Product Scope0 Scope
0Context. How does the software to be built fit into a larger system, product, or business context and what constraints are imposed as a result of the context?
0Information objectives. What customer-visible data objects are produced as output from the software? What data objects are required for input?
0Function and performance. What function does the software perform to transform input data into output? Are any special performance characteristics to be addressed?
0 Software project scope must be unambiguous and understandable at the management and technical levels.
7
Problem Decomposition0Sometimes called partitioning or problem
elaboration0Once scope is defined …
0 It is decomposed into constituent functions0 It is decomposed into user-visible data objects
or0 It is decomposed into a set of problem classes
0Decomposition process continues until all functions or problem classes have been defined
8
The Process0Once a process framework has been established
0 Consider project characteristics0 Determine the degree of rigor required0 Define a task set for each software engineering activity
0Task set =0Software engineering tasks0Work products0Quality assurance points0Milestones
9
The Project0Projects get into trouble when …
0 Software people don’t understand their customer’s needs.0 The product scope is poorly defined.0 Changes are managed poorly.0 The chosen technology changes.0 Business needs change [or are ill-defined]. 0 Deadlines are unrealistic.0 Users are resistant.0 Sponsorship is lost [or was never properly obtained].0 The project team lacks people with appropriate skills.0 Managers [and practitioners] avoid best practices and lessons
learned.10
To Get to the Essence of a Project
0Why is the system being developed?0What will be done? 0When will it be accomplished?0Who is responsible?0Where are they organizationally located?0How will the job be done technically and managerially?0How much of each resource (e.g., people, software, tools,
database) will be needed?
11
A Good Manager Measures
12
measurement
What do weuse as abasis? • size? • function?
project metrics
process metricsprocess
product
product metrics
Why Do We Measure?0assess the status of an ongoing project0track potential risks0uncover problem areas before they go “critical,”0adjust work flow or tasks, 0evaluate the project team’s ability to control quality
of software work products.
13
Process Metrics0 Quality-related
0 focus on quality of work products and deliverables0 Productivity-related
0 Production of work-products related to effort expended0 Statistical SQA data
0 error categorization & analysis0 Defect removal efficiency
0 propagation of errors from process activity to activity0 Reuse data
0 The number of components produced and their degree of reusability
14
Typical Project Metrics0Effort/time per software engineering task0Errors uncovered per review hour0Scheduled vs. actual milestone dates0Changes (number) and their characteristics0Distribution of effort on software engineering tasks
15
Typical Size-Oriented Metrics0 errors per KLOC (thousand lines of code)0 defects per KLOC0 $ per LOC0 pages of documentation per KLOC0 errors per person-month0 errors per review hour0 LOC per person-month0 $ per page of documentation
16
Typical Function-Oriented Metrics
0errors per FP (function point)0defects per FP0$ per FP0pages of documentation per FP0FP per person-month
17
Function-Oriented Metrics0 FP are computed by
FP = count-total * [0.65 + 0.01 * Sum(Fi)]0 count-total is the sum of all FP entries0 The Fi (i = 1 to 14) are "complexity adjustment values" based
on responses to the following questions [ART85]:1. Does the system require reliable backup and recovery?2. Are data communications required?3. Are there distributed processing functions?4. Is performance critical?...
0 Each of these questions is answered using a scale that ranges from 0 (not important or applicable) to 5 (absolutely essential). 18
Comparing LOC and FP
19
Programming LOC per Function point
Language avg. median low high
Ada 154 - 104 205Assembler 337 315 91 694C 162 109 33 704C++ 66 53 29 178
COBOL 77 77 14 400Java 63 53 77 -JavaScript 58 63 42 75Perl 60 - - -PL/1 78 67 22 263Powerbuilder 32 31 11 105SAS 40 41 33 49Smalltalk 26 19 10 55SQL 40 37 7 110Visual Basic 47 42 16 158
Representative values developed by QSM
Object-Oriented Metrics0Number of scenario scripts (use-cases)0Number of support classes (required to implement
the system but are not immediately related to the problem domain)
0Average number of support classes per key class (analysis class)
0Number of subsystems (an aggregation of classes that support a function that is visible to the end-user of a system)
20
WebApp Project Metrics0 Number of static Web pages (the end-user has no control over the
content displayed on the page)0 Number of dynamic Web pages (end-user actions result in customized
content displayed on the page)0 Number of internal page links (internal page links are pointers that
provide a hyperlink to some other Web page within the WebApp)0 Number of persistent data objects0 Number of external systems interfaced0 Number of static content objects0 Number of dynamic content objects0 Number of executable functions
21
Measuring Quality0Correctness — the degree to which a program
operates according to specification0Maintainability—the degree to which a program is
amenable to change0Integrity—the degree to which a program is
impervious to outside attack0Usability—the degree to which a program is easy
to use
22
Defect Removal Efficiency
23
where:E is the number of errors found before delivery of the software to the end-user D is the number of defects found after delivery.
DRE = E /(E + D)
Software Project Planning
24
The overall goal of project planning is to establish a pragmatic strategy for controlling, tracking, and monitoring a complex technical project.
Why?
So the end result gets done on time, with quality!
Project Planning Task Set0Establish project scope0Determine feasibility0Analyze risks0Define required resources
0Determine required human resources0Define reusable software resources0Identify environmental resources
25
Project Planning Task Set (cont.)0Estimate cost and effort
0 Decompose the problem0 Develop two or more estimates using size, function
points, process tasks or use-cases0 Reconcile the estimates
0Develop a project schedule0 Establish a meaningful task set0 Define a task network0 Use scheduling tools to develop a timeline chart0 Define schedule tracking mechanisms
26
Estimation0Estimation of resources, cost, and schedule
for a software engineering effort requires 0experience0access to good historical information (metrics)0the courage to commit to quantitative
predictions when qualitative information is all that exists
0Estimation carries inherent risk and this risk leads to uncertainty 27
Write it Down!
28
SoftwareProject
Plan
Project ScopeEstimatesRisksScheduleControl strategy
What is Scope?0 Software scope describes
0 the functions and features that are to be delivered to end-users0 the data that are input and output0 the “content” that is presented to users as a consequence of
using the software0 the performance, constraints, interfaces, and reliability that
bound the system.
0 Scope is defined using one of two techniques:0 A narrative description of software scope is developed after
communication with all stakeholders.0 A set of use-cases is developed by end-users. 29
Resource Estimation0 Three major categories of software engineering resources
0 People0 Development environment0 Reusable software components
0 Often neglected during planning but become a paramount concern during the construction phase of the software process
0 Each resource is specified with0 A description of the resource0 A statement of availability0 The time when the resource will be required0 The duration of time that the resource will be applied
30
Time window
Categories of Resources
31
People- Number required- Skills required- Geographical location
Development Environment- Software tools- Computer hardware- Network resources
Reusable Software Components- Off-the-shelf components- Full-experience components- Partial-experience components- New components
The Project
Human Resources0Planners need to select the number and the kind of
people skills needed to complete the project0They need to specify the organizational position and
job specialty for each person0Small projects of a few person-months may only need
one individual0Large projects spanning many person-months or
years require the location of the person to be specified also
0The number of people required can be determined only after an estimate of the development effort 32
Development Environment Resources
0A software engineering environment (SEE) incorporates hardware, software, and network resources that provide platforms and tools to develop and test software work products
0Most software organizations have many projects that require access to the SEE provided by the organization
0Planners must identify the time window required for hardware and software and verify that these resources will be available 33
Reusable Software Resources0Off-the-shelf components
0 Components are from a third party or were developed for a previous project
0 Ready to use; fully validated and documented; virtually no risk
0Full-experience components0 Components are similar to the software that needs to be
built0 Software team has full experience in the application area
of these components0 Modification of components will incur relatively low risk34
Reusable Software Resources0Partial-experience components
0 Components are related somehow to the software that needs to be built but will require substantial modification
0 Software team has only limited experience in the application area of these components
0 Modifications that are required have a fair degree of risk
0New components0 Components must be built from scratch by the software team
specifically for the needs of the current project0 Software team has no practical experience in the application
area0 Software development of components has a high degree of risk
35
Estimation Techniques
36
• Past (similar) project experience• Conventional estimation techniques
• task breakdown and effort estimates
• size (e.g., FP) estimates• Empirical models• Automated tools
Functional Decomposition
37
functional decomposition
Statementof
Scope Perform a Grammatical “parse”
Problem-Based Estimation0Start with a bounded statement of scope0Decompose the software into problem functions
that can each be estimated individually 0Compute an LOC or FP value for each function0Derive cost or effort estimates by applying the LOC
or FP values to your baseline productivity metrics (e.g., LOC/person-month or FP/person-month)
0Combine function estimates to produce an overall estimate for the entire project
38
Problem-Based Estimation0 In general, the LOC/pm and FP/pm metrics should be
computed by project domain0 Important factors are team size, application area, and
complexity 0 LOC and FP estimation differ in the level of detail required
for decomposition with each value0 For LOC, decomposition of functions is essential and should go
into considerable detail (the more detail, the more accurate the estimate)
0 For FP, decomposition occurs for the five information domain characteristics and the 14 adjustment factors0External inputs, external outputs, external inquiries, internal
logical files, external interface files
39
Problem-Based Estimation0 For both approaches, the planner uses lessons learned to
estimate an optimistic, most likely, and pessimistic size value for each function or count (for each information domain value)
0 Then the expected size value S is computed as follows:
S = (Sopt + 4Sm + Spess)/6
0 Historical LOC or FP data is then compared to S in order to cross-check it
40
Example: LOC Approach
41
Average productivity for systems of this type = 620 LOC/pm.
Burdened labor rate =$8000 per month, the cost per line of code is approximately $13.
Based on the LOC estimate and the historical productivity data, the total estimated project cost is $431,000 and the estimated effort is 54 person-months.
Example: FP Approach
42
The estimated number of FP is derived:FPestimated = count-total * [0.65 + 0.01 * Sum(Fi)] (see next)
FPestimated = 375
organizational average productivity = 6.5 FP/pm. burdened labor rate = $8000 per month, the cost per FP is approximately $1230. Based on the FP estimate and the historical productivity data, the total estimated project cost is $461,000 and the estimated effort is 58 person-months.
Complexity Adjustment FactorFactor Value
0 Backup and recovery 40 Data communications 20 Distributed processing 00 Performance critical 40 Existing operating environment 30 On-line data entry 40 Input transaction over multiple screens 50 Master files updated on-line 30 Information domain values complex 50 Internal processing complex 50 Code designed for reuse 40 Conversion/installation in design 30 Multiple installations 50 Application designed for change 5
43
• Answer the factors using a scale that ranges from 0 (not important or applicable) to 5 (absolutely essential)
• Sum(Fi)=52
Example: FP Approach
44
The estimated number of FP is derived:FPestimated = count-total * [0.65 + 0.01 * Sum(Fi)]
FPestimated = 375
organizational average productivity = 6.5 FP/pm. burdened labor rate = $8000 per month, the cost per FP is approximately $1230. Based on the FP estimate and the historical productivity data, the total estimated project cost is $461,000 and the estimated effort is 58 person-months.
Process-Based Estimation0 Identify the set of functions that the software
needs to perform as obtained from the project scope
0 Identify the series of framework activities that need to be performed for each function
0 Estimate the effort (in person months) that will be required to accomplish each software process activity for each function
45
Process-Based Estimation0 Apply average labor rates (i.e., cost/unit effort) to the
effort estimated for each process activity0 Compute the total cost and effort for each function and
each framework activity (See table in Pressman, p. 655)0 Compare the resulting values to those obtained by way
of the LOC and FP estimates0 If both sets of estimates agree, then your numbers are
highly reliable0 Otherwise, conduct further investigation and analysis
concerning the function and activity breakdown
46
This is the most commonly used of the two estimation techniques (problem and process)
Process-Based Estimation
47
Obtained from “process framework”
applicationfunctions
framework activities
Effort required to accomplisheach framework activity for each application function
Process-Based Estimation Example
48
Activity
Task
Function
UICF2DGA3DGA
DSMPCF
CGDF
DAM
Totals
% effort
CC PlanningRisk
Analysis EngineeringConstruction
Release TotalsCE
analysis design code test
0.25 0.25 0.25 3.50 20.50 4.50 16.50 46.00
1% 1% 1% 8% 45% 10% 36%
CC = customer communication CE = customer evaluation
0.50
0.750.500.50
0.500.25
2.50
4.004.003.00
3.002.00
0.40
0.601.001.00
0.750.50
5.002.003.001.501.501.50
8.40
7.358.506.00
5.754.25
0.50 2.00 0.50 2.00 5.00
n/an/an/an/an/an/an/a
Based on an average burdened labor rate of $8,000 per month, the total estimated project cost is $368,000 and the estimated effort is 46 person-months.
Tool-Based Estimation
49
project characteristicsproject characteristics
calibration factorscalibration factors
LOC/FP dataLOC/FP data
Estimation with Use-Cases
50
use cases scenarios pages scenarios pages LOC LOC estimatee subsystem 6 10 6 12 5 560 3,366subsystem group 10 20 8 16 8 3100 31,233e subsystem group 5 6 5 10 6 1650 7,970
stimate 42,568
User interface subsystem Engineering subsystem group Infrastructure subsystem group
Total LOC estimate
Using 620 LOC/pm as the average productivity for systems of this type and a burdened labor rate of $8000 per month, the cost per line of code is approximately $13. Based on the use-case estimate and the historical productivity data, the total estimated project cost is $552,000 and the estimated effort is 68 person-months.
Empirical Estimation Models
51
General form:
effort = tuning coefficient * sizeexponent
usually derivedas person-monthsof effort required
either a constant ora number derived based on complexity of project
usually LOC butmay also befunction point
empiricallyderived
COCOMO-II0COCOMO II is actually a hierarchy of estimation
models that address the following areas:0Application composition model. Used during the early stages of
software engineering, when prototyping of user interfaces, consideration of software and system interaction, assessment of performance, and evaluation of technology maturity are paramount.
0Early design stage model. Used once requirements have been stabilized and basic software architecture has been established.
0Post-architecture-stage model. Used during the construction of the software.
52
The Software Equation
53
A dynamic multivariable model
E = [LOC x B0.333/P]3 x (1/t4)where
E = effort in person-months or person-yearst = project duration in months or yearsB = “special skills factor”P = “productivity parameter”
Estimation for OO Projects-I
0 Develop estimates using effort decomposition, FP analysis, and any other method that is applicable for conventional applications.
0 Using object-oriented analysis modeling (Chapter 8), develop use-cases and determine a count.
0 From the analysis model, determine the number of key classes (called analysis classes in Chapter 8).
0 Categorize the type of interface for the application and develop a multiplier for support classes:0 Interface type Multiplier0 No GUI 2.00 Text-based user interface 2.250 GUI 2.50 Complex GUI 3.0
54
Estimation for OO Projects-II
0 Multiply the number of key classes (step 3) by the multiplier to obtain an estimate for the number of support classes.
0 Multiply the total number of classes (key + support) by the average number of work-units per class. Lorenz and Kidd suggest 15 to 20 person-days per class.
0 Cross check the class-based estimate by multiplying the average number of work-units per use-case
55
The Make-Buy Decision
56
system Xsystem Xreusereuse
simple (0.30)simple (0.30)
difficult (0.70)difficult (0.70)
minorminor changeschanges
(0.40)(0.40)
majormajorchangeschanges
(0.60)(0.60)
simple (0.20)simple (0.20)
complex (0.80)complex (0.80)
majormajor changeschanges (0.30)(0.30)
minorminor changeschanges
(0.70)(0.70)
$380,000$380,000
$450,000$450,000
$275,000$275,000
$310,000$310,000
$490,000$490,000
$210,000$210,000
$400,000$400,000
buybuy
contractcontract
without changes (0.60)without changes (0.60)
with changes (0.40)with changes (0.40)
$350,000$350,000
$500,000$500,000
buildbuild
Computing Expected Cost
57
(path probability) x (estimated path cost) i i
For example, the expected cost to build is:
expected cost = 0.30 ($380K) + 0.70 ($450K)
similarly,
expected cost = $382K
expected cost = $267K
expected cost = $410K
build
reuse
buy
contr
expected cost =
= $429 K
Why Are Projects Late?0 an unrealistic deadline established by someone outside the software
development group0 changing customer requirements that are not reflected in schedule
changes;0 an honest underestimate of the amount of effort and/or the number of
resources that will be required to do the job;0 predictable and/or unpredictable risks that were not considered when
the project commenced;0 technical difficulties that could not have been foreseen in advance;0 human difficulties that could not have been foreseen in advance;0 miscommunication among project staff that results in delays;0 a failure by project management to recognize that the project is falling
behind schedule and a lack of action to correct the problem
58
Effort and Delivery Time
59
Effort Cost
Impossible region
td
Ed
Tmin = 0.75T d
to
Eo
Ea = m (td4/ ta
4)
development time
Ea = effort in person-months
td = nominal delivery time for schedule
to = optimal development time (in terms of cost)
ta = actual delivery time desired
Scheduling Principles
60
• “front end” activities– customer communication– analysis– design– review and modification
• construction activities– coding or code generation
• testing and installation– unit, integration– white-box, black box– regression
40-50%40-50%
30-40%30-40%
15-20%15-20%
40-20-40 Distribution of Effort0 A recommended distribution of effort across the software process
is 40% (analysis and design), 20% (coding), and 40% (testing)0 Work expended on project planning rarely accounts for more
than 2 - 3% of the total effort0 Requirements analysis may comprise 10 - 25%
0 Effort spent on prototyping and project complexity may increase this0 Software design normally needs 20 – 25%0 Coding should need only 15 - 20% based on the effort applied to
software design0 Testing and subsequent debugging can account for 30 - 40%
0 Safety or security-related software requires more time for testing
61
Basic Principles for Project Scheduling
0 Compartmentalization0 The project must be compartmentalized into a number of
manageable activities, actions, and tasks; both the product and the process are decomposed
0 Interdependency0 The interdependency of each compartmentalized activity,
action, or task must be determined0 Some tasks must occur in sequence while others can occur in
parallel0 Some actions or activities cannot commence until the work
product produced by another is available
62
Basic Principles for Project Scheduling
0 Time allocation0 Each task to be scheduled must be allocated some number of
work units0 In addition, each task must be assigned a start date and a
completion date that are a function of the interdependencies0 Start and stop dates are also established based on whether
work will be conducted on a full-time or part-time basis0 Effort validation
0 Every project has a defined number of people on the team0 As time allocation occurs, the project manager must ensure
that no more than the allocated number of people have been scheduled at any given time
63
Basic Principles for Project Scheduling
0 Defined responsibilities0 Every task that is scheduled should be assigned to a specific
team member0 Defined outcomes
0 Every task that is scheduled should have a defined outcome for software projects such as a work product or part of a work product
0 Work products are often combined in deliverables0 Defined milestones
0 Every task or group of tasks should be associated with a project milestone
0 A milestone is accomplished when one or more work products has been reviewed for quality and has been approved
64
Relationship Between People and Effort
0 Common management myth: If we fall behind schedule, we can always add more programmers and catch up later in the project0 This practice actually has a disruptive effect and causes the
schedule to slip even further0 The added people must learn the system0 The people who teach them are the same people who were
earlier doing the work0 During teaching, no work is being accomplished0 Lines of communication (and the inherent delays) increase for
each new person added
65
Factors that Influence a Project’s Schedule
0 Size of the project0 Number of potential users0 Mission criticality0 Application longevity0 Stability of requirements0 Ease of customer/developer communication0 Maturity of applicable technology0 Performance constraints0 Embedded and non-embedded characteristics0 Project staff0 Reengineering factors
66
Purpose of a Task Network0 Also called an activity network0 It is a graphic representation of the task flow for a project0 It depicts task length, sequence, concurrency, and
dependency0 Points out inter-task dependencies to help the manager
ensure continuous progress toward project completion0 The critical path
0 A single path leading from start to finish in a task network0 It contains the sequence of tasks that must be completed on
schedule if the project as a whole is to be completed on schedule
0 It also determines the minimum duration of the project 67
Example Task Network
68
Task A3
Task B3
Task E8
Task F2
Task H5
Task C7
Task D5
Task I4
Task M0
Task N2
Task G3
Task J5
Task K3
Task L10
Where is the critical path and what tasks are on it?
Example Task Network
69
Critical path: A-B-C-E-K-L-M-N
Task A3
Task B3
Task E8
Task F2
Task H5
Task C7
Task D5
Task I4
Task M0
Task N2
Task G3
Task J5
Task K3
Task L10
70
Timeline Charts
71
Tasks Week 1 Week 2 Week 3 Week 4 Week n
Task 1
Task 2Task 3Task 4Task 5Task 6Task 7Task 8
Task 9Task 10Task 11Task 12
Use Automated Tools toDerive a Timeline Chart
72
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
Example Timeline Charts
73
Proposed Tasks for a Long-Distance Move of 8,000 lbs of Household Goods
74
Loadtruck
Unloadtruck
Drive truckfrom origin
to destination
Returntruck andsupplies
Decide on type/size ofrental truck
Reserverental truckand supplies
Arrange forworkers toload truck
Pick uprental truck
Arrange forworkers to
unload truck
Arrange forperson to
drive truck/car
Find lodgingwith space
to park truck
Make lodging
reservations
Determinedestination
locationDetermine
date to moveout or move in
Makedecisionto move
Packhousehold
goods
Plan travelroute and
overnight stops
Get moneyto pay forthe move
Lease or buyhome at
destination
• Where is the critical path and what tasks are on it?• Given a firm start date, on what date will the project be completed?• Given a firm stop date, when is the latest date that the project must start by?
Proposed Tasks for a Long-Distance Move of 8,000 lbs of Household Goods
75
17. Loadtruck
19. Unloadtruck
18. Drive truckfrom origin
to destination
20. Returntruck andsupplies
6. Decide on type/size ofrental truck
15. Reserverental truck
and supplies
7. Arrange forworkers toload truck
16. Pick uprental truck
9. Arrange forworkers to
unload truck
8. Arrange forperson to
drive truck/car
11. Milestone
13. Find lodgingwith space
to park truck
14. Make lodging
reservations
4. Determinedestination
location
3. Determinedate to move
out or move in
10. Packhousehold
goods
12. Plan travelroute and
overnight stops
2. Get moneyto pay forthe move
5. Lease or buyhome at
destination
• Where is the critical path and what tasks are on it? • Given a firm start date, on what date will the project be completed?• Given a firm stop date, when is the latest date that the project must start by?
Timeline Chart for Long Distance Move
76