Analysis & Design Modern Info Systems
. Describe a fully developed use case for Receive new book in the university library system and then:
o Describe (UML) Activity diagram for the Enter new patient information use case
o Develop a first-cut sequence diagram that only includes the actor and problem domain classes.
o Develop a design class diagram based on your solution. Be sure to include your controller class.
o Add the view layer classes and the data access classes to your diagram. You may do this with two separate diagrams to make them easier to work with and read.
o Explain What is the difference between designing with CRC cards and designing with sequence diagrams?
o Explain the syntax of a message on a sequence diagram.
o What is the purpose of the first-cut sequence diagram? What kinds of classes are included?
o What is the purpose of the use case controller?
2. Using RMO that is the case in your text book answer the following:
Assume that RMO will begin asking a random sample of customers who order by telephone about purchases made from competitors. RMO will give customers a 15 percent discount on their current order in exchange for answering a few questions. To store and use this information, RMO will add two new classes and three new associations to the class diagram. The new classes are Competitor and ProductCategory. Competitor has a one-to-many association with ProductCategory, and the existing Customer class also has a one-to-many association with ProductCategory. Competitor has a single attribute called Name. ProductCategory has four attributes: Description, DollarAmountPurchased, MonthPurchased, and YearPurchased. Revise the relational database schema shown in Figure 12-10 to include the new classes and associations. All tables must be in 3NF.
3. Read this narrative and then make a list of system capabilities and describe how the project could be developed for the company:
The new direct sales and accounting system for Especially for You Jewelers will be an important element in the growth and success of the jewelry company. The direct sales portion needs to track every sale and be able to link to the inventory system for cost data to provide a daily profit and loss report. The customer database needs to be able to produce purchase histories to assist management in preparing special mailings and special sales to existing customers. Detailed credit balances and Aged accounts for each customer would help solve the problem with the high balance of accounts receivables. Special notice letters and credit history reports would help management reduce accounts receivable.
Project Management Techniques
Learning Objectives After reading this chapter, you should be able to:
Calculate net present value, payback period, and return on investment
Develop a PERT/CPM chart
Be able to set up a project in Microsoft Project
Explain how Microsoft Project can be used to track an existing project
Explain the ten areas of the Project Management Body of Knowledge
Calculating Net Present Value, Payback Period, and Return on Investment
Understanding PERT/CPM Charts
Building the Project Schedule with Microsoft Project
Project Management Body of Knowledge (PMBOK)
chapter OutLine
chapter C
17204_APPC_ptg01_053-082.indd 53 12/12/14 9:48 AM
OL-54 PART 4 ■ System Development and Project Management
Opening Case Succeeding aS a FirSt time Project manager “But how do you make sure you have covered all your bases?” Mary asked Bill.
Mary had recently been promoted to project leader in the systems department of her company. She was a high performer and had done very well as a developer and then as a team leader. Just two weeks ago, she had been given responsibility for the development of a new smartphone application to complement the other appli- cations provided by her company. It wasn’t a large proj- ect, but she was still a little concerned that she might forget something.
She had done well as team leader in coordinating the work of her fellow developers on the teams she had led. Not only was she a good developer, but she was an excellent resource to the other team members to answer their questions and provide help. In fact, the rea- son she was promoted to project leader was because of her success as a technical developer and as a team coordinator. However, this promotion was a pretty big jump and her responsibilities were much broader. Not only was she responsible for the development of the software, but now she had to worry about coordination with a steering committee, training for her workers, the overall schedule of the project, and many other areas in which she had little experience.
She had cornered her previous project manager, Bill Harris. He had always been a good mentor for her, so she asked him how she should approach her new assignment. Her biggest worry was how to know everything she should be keeping track of. She knew that if she knew what to do that she could do it well. The problem was how to know everything she needed to address.
“Well, Mary,” Bill answered, “one good way to know if you have covered all your bases is to build a checklist of project management areas that are important. One of the things that I did when I was a new project manager was to go through each of the nine knowledge areas of the Project Management Body of Knowledge (PMBOK) and then build myself a list of what I needed to focus on in each area. I also set myself some goals of what I wanted to achieve in each area.”
“I think I understand,” she replied. “But I’m not sure I have enough experience to know how to do that. Can you give me an example?”
“Sure,” he said. “Let me take one of the key knowl- edge areas: communication management.
For communication management, I focused on three primary goals. First, I wanted to ensure that I had current and accurate information available. Second, I established some personal objectives about how to keep my project sponsors informed about project prog- ress. As you know, project sponsors don’t like surprises. Third, I want to make sure that all team members knew what was going on and had all the information that was needed to do their jobs. In each of those three focus areas, I set up procedures and processes to make sure that my objectives were being met.”
“Wow, that sounds great. And so you did that for each of the nine PMBOK knowledge areas?” she asked.
“Yes, and it worked out quite well. I felt like I was on top of all the issues related to my project. Over the years, I have kept expanding and enhancing my list. I don’t do it quite as formally now because I know what I need to have successful projects. But at the time, it was a great help to organize myself as a project manager.”
■ Overview Many project management concepts were presented within the chapters of the sixth edition of Systems Analysis and Design in a Changing World. In particu- lar, Chapter 11 focused on project management principles, which are a major portion of each of the first two core processes: Identify the problem and obtain approval, and Plan and monitor the project. This online chapter will extend the coverage of project management principles and will provide additional explana- tions on several of the important project management techniques.
One important task within the first core process is a cost/benefit analysis. In Chapter 11, a brief explanation of the calculation of the net present value was provided. This chapter will explain that process in more depth as well as explain two other financial measures: breakeven point and return on investment.
An important task within the second core process is the development of a project schedule. As we learned in Chapter 11, an overall project iteration schedule can be developed that only provides general timeframes with approximate dates.
17204_APPC_ptg01_053-082.indd 54 12/12/14 9:48 AM
OL-55Chapter C ■ Project Management Techniques
However, within each iteration, it is often helpful to develop a more detailed schedule so the project team is able to perform and coordinate the individual tasks of the iteration. In Chapter 11, we illustrated a Gantt chart by using Micro- soft Project. In this online chapter, we will explain in more detail how to develop a Gantt chart with Microsoft Project. We will also explain the basic principles of a PERT/CPM chart, which Microsoft Project refers to as a network diagram.
Chapter 11 briefly introduced the ten knowledge areas of the PMBOK. The final portion of this online chapter is a more in-depth explanation of the each area of the PMBOK.
■ Calculating Net Present Value, Payback Period, and Return on Investment
A capital investment is an expenditure by an organization in equipment, land, or other assets that is used to carry out the objectives of the organization. Because money—including money available for capital investment—is a scarce resource, one important responsibility of senior-level management in any organization is to decide which investments to choose. Organizations use several different methods to determine which investment is best. The three methods this online chapter discusses are net present value (NPV), payback period, and return on investment (ROI). Definitions and brief explanations of these terms are given in Chapter 11. This online chapter explains these measures in more detail and shows how to calculate them by using spreadsheet tools. In addition, financial calculators have built-in function keys to calculate these measures.
■ Net Present Value Calculations The two basic concepts of net present value are (1) that all benefits and costs are calculated in terms of today’s dollars (that is, present value) and (2) that benefits and costs are combined to give a net value—hence, the name net present value.
The first step in calculating the NPV is to decide on the discount rate to use. Most organizations have a policy, determined by the chief financial officer, that states the standard discount rate used for investments. This rate may vary by type of investment; normally, there is a particular discount rate for software development. The discount rate is the means to equate future values to current values. For example, $100 received one year in the future is only worth $94.34 today with a discount rate of .06 (6 percent). The equation that represents this is:
present value 5 amount received in future / (1 1 discount interest rate)number of years
For dollar amounts received more than one year in the future—for example, in three years—the discount rate is applied three times to give a discount factor. Let us use PV for present value, FV for future value, i for discount interest rate, F for discount factor, and n for the number of years in the future. The equations that apply to find a present value for a future value across multiple years are:
Fn 5 1/(1 1 i)n and PV 5 FV * F n
For example, $100 received three years hence at a discount rate of 6 percent is:
Fn 5 1/[(1 1 .06) * (1 1 .06) * (1 1 .06)] 5 .8396
PV 5 $100.00 * .8396 5 $83.96
Finance books provide tables of discount factors by discount rate for multiple years, so you don’t have to calculate them. Financial calculators have the pre- ceding equations built in, so you simply enter the future value, the discount rate, and the number of years to get the present value.
discount rate the annual percentage rate that an amount of money is discounted to bring it to a present value
discount factor the accumulation of yearly discounts based on the discount rate
17204_APPC_ptg01_053-082.indd 55 12/12/14 9:48 AM
OL-56 PART 4 ■ System Development and Project Management
Figure C-1, which is the same as Figure 11-11, shows the NPV calcula- tions for Ridgeline Mountain Outfitters. In this instance, the NPV calculation was done for a period of five years. The time period used is usually a matter of organization policy, and standards are established for each type of investment. Software expenditures usually use a fairly short time period, such as three to five years.
Year zero is considered the time period during which the asset is being devel- oped and while no benefit is being derived by the organization. In reality, year zero can cover a period of more than one year. For very long asset development periods, more complex NPV calculations are done and may include such things as opportunity costs, which attempts to measure the costs associated with the development expenditures that are tied up during project development. In our less complex example, all the development costs are assigned to year zero even if the project spans multiple years. Figure 11-8 presents the standard types of costs that are allocated to the project as capital expenditures for software development, which in this example totals $1,581,000, and is show in Column C, Row 2.
The anticipated benefits are also associated with the year in which they accrue. Row 1 in Figure C-1 shows the annual benefits of the new system. Notice that these benefits begin in year 1—in other words, after the new system is placed in production. The beginning amount is estimated to be $1,046,000. RMO anticipates that these benefits will increase over time with increased usage and utility from the system, as discussed in Chapter 11. Row 3 shows the annual costs of operations. In this simple example, the costs of operation are kept con- stant during the five-year period. In reality, operating costs normally increase over time because as the system gets older, it frequently requires more main- tenance. Either more detailed estimates may be generated or a simple rate of increase can be applied to the initial value.
You can apply the next two steps in either order: You can either combine the benefits and costs (net them together) and then apply the discount factor or you can apply the discount factor to the benefits and costs individually and then combine the two discounted amounts. The example in Figure C-1 uses the first approach with the benefits and costs combined to give a net value for each year, as show on Row 4. Notice that in Year 0, the net value is simply the development costs because there are no benefits. In subsequent years, the net value is a posi- tive value. Row 5 show the discount factors for each year at a 6 percent discount rate. These values can either be calculated by using the equations given earlier or extracted from a table of values. In this example, we also use an annual dis- count factor. Slightly different values are obtained if monthly discount factors are used. However, because these numbers are estimated values anyway, dis- counting precision isn’t required.
The values for each column on Row 6 are simply the product of the amount in Row 4 multiplied by the discount factor. The values in Row 7 are the cumula- tive values and are a little more involved to calculate. The approach requires that
FIGURE C-1 Five-year cost/benefit analysis for CSMS
S ou
rc e:
M ic
ro so
ft C
or po
ra tio
n
17204_APPC_ptg01_053-082.indd 56 12/12/14 9:48 AM
OL-57Chapter C ■ Project Management Techniques
each year be calculated individually because it depends on the value in the previ- ous year. The process to calculate the cumulative NPV for any year is to take the previous year’s cumulative NPV and combine it with the current year’s annual NPV. So, for Year 1, Column D, Row 7, the value of –$897,035 is derived by taking the cumulative value in Year 0, Column C, Row 7, of –$1,581,000 and combining it with the annual net present value of Year 1, Column C, Row 6, of $683,965. As shown in Figure C-1, the cumulative NPV at the end of five years is expected to be $1,713,097.
■ Payback Period Calculations Payback is a method to determine the point in time at which the initial investment is paid off. Various methods are used to calculate payback. You can calculate the payback period by using either present value amounts or cash flow amounts. Cash flow amounts don’t take the time value of money into consideration and calculate payback based on nondiscounted dollar amounts. Another approach is to consider only the initial investment and not include annual operating costs in the calculations. In the example in Figure C-1, we use the time value of money (that is, the discount rate) and use net benefits (that is, benefits minus operating costs). The year when the cumulative value becomes positive is the year in which payback occurs. In the RMO example, this happens within the third year.
You can obtain a more precise answer by determining the fraction of a year when payback actually occurs. The approach to calculate this time period is to calculate the ratio of the negative value at the beginning of the year to the total amount of benefit derived during the year and then to apply this ratio to the number of days in a year to determine the number of days until breakeven. In our example, the negative value at the beginning of the year is –$226,865 and the total benefit for the year is $657,608, giving a ratio of 0.35. Applying this factor to 365 days yields 128 days in the third year as the breakeven point in time.
■ Return on Investment While the objective of the NPV, as explained earlier, is to determine a specific value based on a predetermined discount rate, the objective of the return on investment is to calculate a percentage return (like an interest rate) on the initial investment. There are various methods to calculate ROI. Sometimes, ROI cal- culations are done by using values that include the discount factor, as we have done in Figure C-1, while at other times, ROI is done on purely a cash basis without considering the organization’s assigned discount rate. The time period for ROI calculations also critically affects the result. Depending on the type of investment, organizations will calculate a five-year ROI, an eight-year ROI, or a 10-year ROI.
In our example, Figure C-2 expands Figure C-1 to show the ROI calcula- tions. We can calculate an ROI with discounted amounts and one using purely
FIGURE C-2 Five-year ROI calculation for CSMS
S ou
rc e:
M ic
ro so
ft C
or po
ra tio
n
17204_APPC_ptg01_053-082.indd 57 12/12/14 9:48 AM
OL-58 PART 4 ■ System Development and Project Management
cash values without considering the time value of money. To calculate the five- year ROI with the discount, we take the sum of the five years of Row 6 and divide it by the initial investment. The result is 3,294,097 / 1,581,000 * 100 5 208 percent. Using cash values without the discount rate, the ROI is 3,298,210 / 1,581,000 * 100 5 248 percent.
The time period can be the expected life of the investment (that is, the pro- ductive life of the system) or it can be an arbitrary time period. This example simply calculates the ROI for the five-year period. In another situation, RMO might want to consider a 10-year ROI, assuming the system will be functional for at least 10 years.
■ Understanding PERT/CPM Charts In Chapter 11 of Systems Analysis and Design in a Changing World, you learned that there are two types of charts that are used for project scheduling: Gantt charts and PERT/CPM charts. In addition, you learned a little bit about using Microsoft Project to produce a Gantt chart. In this section, we will introduce the concepts related to PERT/CPM charts. Then, in the next section, we will learn more about how to use Microsoft Project to produce both Gantt charts and PERT/CPM charts.
A PERT/CPM chart is a network diagram with boxes that represent the tasks or activities of the project and with connecting arrows that represent the sequence and dependencies between tasks. The strength of a PERT/CPM chart is that, as a network, it provides a visual representation of the relation- ships between tasks of a project. During the development of the project sched- ule and especially while trying to determine task dependencies, a PERT/CPM chart can be an effective tool. PERT, which stands for Project Evaluation and Review Technique, was first developed in the 1950s and was used by the U.S. Department of Defense to organize, monitor, and control very large, complex defense projects. CPM, which stands for Critical Path Method, was developed independently, also in the 1950s. As its name implies, its primary objective was to determine not only the dependencies between tasks but which tasks were on the critical path. These two methods have much in common, and in recent years, most scheduling tools have taken the best attributes of each one and combined them into a single technique—thus, the name PERT/CPM.
The first step in creating a schedule is always to develop a work breakdown structure. Let us use the same project that was discussed in Chapter 11 for the CSMS system. As explained in Chapter 11, for iterative Agile projects, we fre- quently don’t build an overall project schedule because the project is frequently changing as it progresses. However, within each iteration, the project team does freeze the identified objectives for that iteration and thus can build a meaning- ful schedule. Figure 11-16 identified the use cases for the first iteration, and Figure 11-17 presented a work breakdown structure for this iteration. We will begin with those figures and enhance them with more detail to give a more in- depth explanation of how to develop the schedule.
Figure C-3 is an expanded version of Figure 11-17. In this figure, the dura- tions have been changed from days to hours, with the assumption that each day is equivalent to an eight-hour workday. Two additional columns have been added—for predecessors and for resources. Remember that these tasks are being performed by the Tiger Team, which consists of two subteams of two persons each. The estimated resources have been added with some comments about sub- team assignments.
The next step is to assign task dependencies, which lay the foundation for the development of the PERT/CPM chart. There are three types of dependencies between tasks: (1) project mandatory, (2) external mandatory, and (3) discretion- ary. Predecessors are usually easily assigned to project mandatory dependencies.
17204_APPC_ptg01_053-082.indd 58 12/12/14 9:48 AM
OL-59Chapter C ■ Project Management Techniques
One task depends on the completion or output of another task and thus is depen- dent on it. For example, user acceptance testing can’t begin until the programs to be tested have been written and the necessary test cases have been identified. External mandatory dependencies are caused by other, nonproject occurrences, such as the arrival of new hardware or the completion of an interface definition from another project. The most troublesome dependencies are the discretionary ones. They provide the most flexibility for building the schedule, but they also add the most complexity. For example, developers must determine which should be done first: designing input screens or output reports. Either will probably work. Complexity is added when the project manager tries to balance the sched- uling of these tasks with the available resources (that is, the team members). Often, several tentative schedules must be built with different dependencies to determine a sequence that best utilizes team members. This activity is often best completed with a whiteboard and sticky notes. The individual tasks can be placed on the board, with positions based on an approximate dependency. Arrows can then be drawn to identify the best combination of dependencies to balance workloads.
For now, let us assume that the juggling and rearranging has been done and that the information from the whiteboard has been captured in a computer format. Figure C-4 is a sample PERT/CPM chart that could have been drawn with sticky notes on a whiteboard or with any computer drawing tool, such as Microsoft Visio. In this instance, we use rectangles with five compartments to document each task. The legend shows the meaning of each compartment. An ending “dummy” tasks has been added for ease of understanding.
The format shown in Figure C-4 is just one of many possible formats. The Microsoft Project format shown later is slightly different. The top compartment within the rectangle is the task name. The left-middle compartment is the task ID, and the right-middle compartment is the duration. The bottom-left corner is
1
2
3
4
5
6
Analysis tasks
Meet with sales department
Meet with marketing department
Define required information and data elements
Model user activities
Design tasks
Design database schema
ID Description
8 hrs
8 hrs
8 hrs
16 hrs
32 hrs
4 people
4 people
4 people
4 people
7
Design screen layouts and cross links 32 hrs 2 people (all 4 team members assigned half time)
Identify program classes and methods 32 hrs 1 person (all 4 team members assigned quarter time)
8
Build tasks
9
Build database 8 hrs 2 people
10
Write program code 32 hrs 4 people
11
Set up user simulated live environment 8 hrs 2 people
12
16 hrs 2 people
32 hrs
16 hrs
4 hrs
4 hrs
4 people (quarter time)
4 people
4 people
4 people
1 person (all 4 team members assigned quarter time)
DurationPredecessor Resources
Integrate 3-D imaging code
Build test data
13 Perform acceptance test with users
14 Release accepted version
15 Perform team introspection
FIGURE C-3 Work breakdown structure for the first iteration of CSMS
© C
en ga
ge Le
ar ni
ng ®
17204_APPC_ptg01_053-082.indd 59 12/12/14 9:48 AM
OL-60 PART 4 ■ System Development and Project Management
the early start time for each task, and the bottom-right corner is the late start for each task. To keep this example simple, the duration numbers represent hours and the start time for each task is the number of hours from the beginning of the project. Optionally, the early start and late start can also be shown as actual cal- endar dates with an automated tool such as MS Project. Next, we explain and calculate the early and late start times.
We call this the first-cut PERT/CPM chart because although the dependen- cies are correct, we will have resource conflicts. For example, task number 3 and task number 4 have early start times of 16 hours into the project and run concurrently. Obviously, the team members can’t work full time on each task at the same time. The final version of the PERT/CPM chart will have to be adjusted to take this into consideration. We will wait and let Microsoft Project solve this dilemma for us. For now, let us go ahead and enter the dependency information into the work breakdown structure. Let us also learn how to calculate the early start time and the late start times. Figure C-5 shows the updated work break- down structure with the predecessor information entered. One quick check of your work is to make sure that every task, except the last one, is identified as a predecessor task in the table. Leaving one out causes a dangling task that isn’t required by any other task in the project. Really, the only time that this occurs is when a milestone or delivery is completed, such as at the end of an iteration.
The bottom-left compartment contains a number that is called the early start time for the task. The early start time represents the earliest time that a task can begin. In other words, based on all the predecessor tasks, the given task can’t begin until the time indicated. This field is calculated by taking the early start time of the predecessor task and adding to it the duration of the predeces- sor task. Here is the formula:
ESn11 5 ESn 1 durationn 1 lag time
This formula indicates that the early start time of a successor task (for example, n11) is equal to the early start of the nth task plus the duration of the nth task
De�ne data elements
3
16 hrs 32 hrs
8 hrs
Design screens
6
32 hrs 40 hrs
32 hrs
Identify classes
7
32 hrs 40 hrs
32 hrs
Task name
ID
Early start Late start
Duration
Legend Set up user env
10
32 hrs 80 hrs
8 hrs
Integrate 3-D code
11
104 hrs 104 hrs
16 hrs
Build test data
12
40 hrs 88 hrs
32 hrs
Do acceptance test
13
120 hrs 120 hrs
16 hrs
Release version
14
136 hrs 136 hrs
4 hrs
Do team introspection
15
140 hrs 140 hrs
4 hrs
End
16
144 hrs 144 hrs
0
Meet sales dept
From cougar team
1
0 hrs 0 hrs
8 hrs
Meet marketing dept
2
8 hrs 8 hrs
8 hrs
Model user activities
4
16 hrs 16 hrs
16 hrs
Design database
5
32 hrs 32 hrs
32 hrs
Build database
8
64 hrs 64 hrs
8 hrs
Write programs
9
72 hrs 72 hrs
32 hrs
FIGURE C-4 First cut PERT/CPM chart for the first iteration of CSMS
early start time the earliest time that a task can begin due to predecessor durations
© C
en ga
ge Le
ar ni
ng ®
17204_APPC_ptg01_053-082.indd 60 12/12/14 9:48 AM
OL-61Chapter C ■ Project Management Techniques
plus any lag time if it is specified. To calculate early start times, we begin with the first detailed task: number 1. In this case, ESn 5 0, durationn 5 8 hours, and, consequently ESn11 5 8 hours. The rest of the early start times are calcu- lated one at a time, moving from beginning to end and following the arrows through the chart. Lag time is simply some time delay that occurs between a task and its predecessor. Lag time is associated with the relationship (the arrow) between the two tasks. For example, if we wanted to wait eight hours before beginning task number 10, the early start time would be E10 5 E9 1 16 hours 1 8 hours 5 40 hours.
One complexity occurs when there are multiple predecessor tasks with different values for the task to be calculated. Obviously, the identified task can’t begin until the latest predecessor task is completed. Hence, the equation becomes:
ESn11 5 {ESn 1 durationn}latest 1 lag time
The curly braces indicate the set of all predecessor tasks, and the subscript latest means to choose the one with the latest calculated value. An example from the figure is task number 5. It has predecessors of task number 3, which yields a start time of 16 hours 1 8 hours 5 24 hours, and task number 4, which yields a start time of 16 hours 1 16 hours 5 32 hours. We choose the latest one.
The bottom-right compartments contain the times for the late start time. Not all formats of PERT/CPM diagrams show the late start time, but this con- cept will help us understand some other concepts. The late start time is the latest time that a given task can start and still keep the project on schedule. Late start times are calculated by starting at the end of the project and moving backward through the diagram. We start by noting that the final task, or end task, has an early start (and finish because it has 0 duration) of 144 hours. Move that same value into the lower-right compartment, which denotes that the late start time
1
2
3
4
5
6
Analysis tasks
Meet with sales department
Meet with marketing department
Define required information and data elements Model user activities
Design tasks
Design database schema
ID Description
8 hrs
8 hrs
8 hrs
16 hrs
32 hrs
4 people
4 people
4 people
4 people
7
Design screen layouts and cross links 32 hrs 2 people (all 4 team members assigned half time)
Identify program classes and methods 32 hrs 1 person (all 4 team members assigned quarter time)
8
Build tasks
9
Build database 8 hrs 2 people
10
Write program code 32 hrs 4 people
11
Set up user simulated live environment 8 hrs 2 people
12
16 hrs 2 people
32 hrs
16 hrs
4 hrs
4 hrs
—
1
2
2
3, 4
3, 4
3, 4
5
6, 7, 8
4
9
10
11, 12
13
14
4 people (quarter time) 4 people
4 people
4 people
1 person (all 4 team members assigned quarter time)
DurationPredecessor Resources
Integrate 3-D imaging code
Build test data
13 Perform acceptance test with users
14 Release accepted version
15 Perform team introspection
FIGURE C-5 Work breakdown structure with predecessor information
late start time the latest time that a task can start to maintain the schedule
© C
en ga
ge Le
ar ni
ng ®
17204_APPC_ptg01_053-082.indd 61 12/12/14 9:48 AM
OL-62 PART 4 ■ System Development and Project Management
is the same as the early start time. To calculate other late start times, we simply move backward through the diagram by using the following equation:
LSn21 1 durationn21 5 LSn or (equivalently) LSn21 5 LSn 2 durationn21
This equation shows that the late start of a predecessor task is equal to the late start of a successor task minus the duration of the predecessor task. It is similar to the early start calculation, except that we are moving backward through the diagram.
Two special situations must be handled—just as in our previous examples: concurrent tasks and lag times. Let us make the preceding equation more general:
LSn21 5 {LSn 2 durationn21}earliest 2 lag time
As before, we calculate the late start for each leg and then choose the earli- est time (the smallest number) as the correct one. The lag time associated with the arrow is also subtracted because it is time that must be removed from the successor times to arrive at the predecessor late start time.
In Chapter 11, we defined the critical path as the sequence of tasks that can’t be delayed without causing the project to be delayed. Notice on Figure C-4 that some tasks have the same early start time and late start time. That means they must start on the indicated time or else the project is delayed—in other words, that there is no slack time in those tasks. In Figure C-4, we have highlighted those tasks in red. Those are the tasks that are on the critical path. Other tasks—those highlighted in blue—have a late start time that is higher than the early start time. They can be delayed somewhat before starting and not have a negative impact on the schedule. The time difference between the early start time and the late start time is called the slack time. It represents the amount of time a task can be delayed with delaying the project. For example, the early start for task number 6 is 32 hours into the project. However, it could wait until 40 hours before starting and still be ready for task number 9 to start on time. However, notice that when several tasks aren’t on the critical path but are in sequence that the slack time represents the total slack time for that leg of the chart. For example, tasks 10 and 12 have a total slack time of 48 hours. If task 10 uses the 48 hours, there is no slack left for task 12 to use. It then becomes a critical path task.
■ Building the Project Schedule with Microsoft Project
Chapter 11 of Systems Analysis and Design in a Changing World explains the techniques and steps required to build a project schedule by using the Gantt chart view in Microsoft Project. In this online Chapter C, we will explain more in depth about how to use Microsoft Project to develop a project schedule. We will illustrate a Gantt chart view and a PERT/CPM view. A Gantt chart and a PERT/CPM chart provide essentially the same information about project activi- ties and tasks. Each chart has unique strengths and weaknesses.
A Gantt chart is a type of bar chart that is superimposed on a calendar. The primary strength of a Gantt chart is that the bars show the duration and project progress as compared to the days and weeks of the calendar. The other advantage of a Gantt chart view is that it provides an effective visual representation of the project timeline and helps you track project progress. A tracking Gantt chart shows what should have been accomplished by a specific date and what has actually been completed on that date. We will also illustrate a tracking Gantt in this chapter.
■ Gantt Chart View Developing a schedule by using either a Gantt chart or a PERT chart requires a work breakdown structure with the information provided on Figure C-5. Microsoft Project uses the concept of the amount of effort required to complete
slack time the amount of time a task or leg of sequential tasks can be delayed without impacting the project schedule
17204_APPC_ptg01_053-082.indd 62 12/12/14 9:48 AM
OL-63Chapter C ■ Project Management Techniques
a task. The effort required for a task is defined as the duration of the task times the number of resources assigned to the task. So, an eight-hour task with four people working requires an effort of 32 person hours.
Developers frequently think that by using a tool such as Microsoft Project that it will be easy to build a schedule. However, as we have learned from build- ing Figure C-5, there is considerable work and preparation required even before the tool can be used. The advantage of a project tool is twofold. First, it is much easier to make changes to the schedule when it is necessary to add, delete, or update tasks. Second, it is easier to track progress by using a project-tracking Gantt chart, which we shall see later.
Microsoft Project is a rich application with many features and capabilities. In our example, we will stick to the basic features. It is suggested that you use the example as it is explained in this chapter and enter the same information into MS Project. This will give you a good foundation for how to use it. There will also be homework problems that will enable you to practice using the pro- gram with more elaborate requirements. In this example, we will identify and describe each required step.
❚ Step One: Set Up a New Project When you open MS Project, it opens to a new blank project or you can use the File menu option to select a new project. For a simple project, there are only two pieces of information that need to be set: the project name and the project start date. The project name is determined by the name you use to save the file by using the File | Save As option. The start date can be set with the Project tab and the Project Information toolbar icon. Use the popup window to set the start date and then save your file with your project name. For this first project, we will call it LearningMSProject-RMO and give it a start date of January 2, 2012.
❚ Step Two: Enter Information About the Resources Before we begin entering the project tasks, we will enter the information about the resources. In Chapter 11, we identified the resources as two teams of two people each. When we enter the information into Microsoft Project, we can either maintain resources as teams or as individual persons. Individual persons will provide a closer control over the schedule. For this example, we will identify individual persons.
Even though this may not appear to be the next logical step, it makes enter- ing the tasks much easier. If the resources available to the project have already been entered into Microsoft Project, then we can enter the tasks and assign the resources all at the same time. To enter the resources, go to the View | Resource Sheet menu item. Figure C-6 is a snapshot of that screen with the information already entered. You can identify the menu and submenu item on the figure.
FIGURE C-6 Resource information for the project
17204_APPC_ptg01_053-082.indd 63 12/12/14 9:48 AM
OL-64 PART 4 ■ System Development and Project Management
As mentioned earlier, in this instance, we have identified each individual pro- grammer by name. Because each programmer is identified individually, the max- imum usage is 100 percent. Had we identified “programmers” as a resource, we would have had a maximum usage of 400 percent, indicating that there were four of that type of resource. Because we aren’t using MS Project to estimate a cost for the project, we won’t use the rate fields.
❚ Step Three: Enter Information About the Tasks This step is where we actually enter all the information from the work break- down structure. There are several ways that this can be done. It would be a good idea to experiment with the various methods to find which you prefer. From the top menu, select Tasks and then click the Gantt Chart icon in the left corner. The drop-down menu displays many different pages associated with a Gantt chart. The ones that are most useful for entering task information are Gantt Chart | Gantt Chart, Gantt Chart | Task Form, and Gantt Chart | Task Sheet. Each screen has a slightly different view and facilitates slightly different data entry. We will use a split screen that shows us the Task Sheet and the Task Form together. To get to the split screen click on the Details icon, either in the Task tab or the View tab. Figure C-7 is a snapshot of the Task Sheet and Task Form screen that we will use to enter data. Notice that we have already entered the first five tasks, including a summary task called Analysis Tasks.
This screen allows you to enter detailed information about the task directly from the work breakdown structure. In the bottom part of the screen, we enter the task name and the duration from the work breakdown structure. We can also enter the resources (i.e., the team members) that will work on this task.
There are two other important fields on the bottom form that are often misunderstood. They are the Effort Driven field and the Task Type field.
FIGURE C-7 Entering task information with a split screen
17204_APPC_ptg01_053-082.indd 64 12/12/14 9:48 AM
OL-65Chapter C ■ Project Management Techniques
The number of resources, the amount of work, and the duration of the task are often related by this formula: duration 5 amount of work multiplied by the number of resources. When entering data for a task, you enter the duration and the resources. MS Project calculates the amount of work or the effort. When you mark a task as Effort Driven, MS Project forces this equation to be held constant. So, if you make a change, such as adding more resources later, then MS Project automatically changes the task duration. For tasks such as a staff meeting, where the duration is constant no matter who participates, the task should be marked as not effort driven. Related to the Effort Driven checkbox is the selection of Task Type. This field indicates what you want to remain constant even though other things may change in the task: fixed units (i.e., number of resources), fixed duration (i.e., the time), or fixed effort (i.e., the amount of work). After entering all the fields, click the OK button to accept the information.
After you have entered the basic information for the task, you can enter the predecessor number in the appropriate column. Normally, dependencies are finish-start, or FS, which means the predecessor task finishes before the subse- quent task starts. Other dependencies supported by Microsoft Project include start-start (SS), which means they both start at the same time; finish-finish (FF), which means they both finish at the same time; and start-finish (SF), which is basically the opposite of FS and not often used.
Any of these dependencies can be adjusted by adding lag time as required. The following points should be noted about the information already entered
and as shown in Figure C-6.
1. As tasks are entered, MS Project automatically assigns each one a task number, as shown on the far left column. You have no control over this assignment. Usually, this isn’t the same number that we used on the work breakdown structure.
2. The information column, as noted by the “i” icon, is for warnings and notices. In Figure C-7, there are two red warning messages because tasks 4 and 5 are in conflict in that they are scheduled for the same time by using the same resources. We will have to fix this later.
3. Each new task has a default setting to be automatically scheduled by MS Project. Automatic scheduling or manual scheduling can be set in the tool- bar. Microsoft Project automatically calculates the task start date and task end date based on automatic scheduling. If you schedule a task manually, then you can enter those dates.
4. A summary task called Analysis Tasks has been entered. A summary task can be inserted by clicking the Summary task icon on the toolbar. Another way to create a summary task is by “demoting” the tasks directly below a particular task. Tasks are demoted and promoted by using the green arrow icons on the toolbar. Tasks can be summary tasks, regular tasks, or mile- stone tasks. A task can also be made inactive, which essentially causes that task to be only documentation.
5. Each cell on a task row has a drop-down option that allows you to enter or select appropriate values.
Placing the cursor on a row and right-clicking opens up a menu list that allows you to insert new tasks, delete tasks, move tasks around, and other task related options. The “assign resources” option displays a pop-up that allows you to assign staff with less than full-time assignment. For example, a task may have a duration of four days but with a person assigned half the time. Figure C-8 illustrates both of these options.
Figure C-9 is the completed schedule with all the tasks entered, resources assigned, and predecessors defined. According to this first-cut diagram, there are four days scheduled for analysis tasks, four days for design tasks, 11 days for build tasks, and 13 days for testing and deployment tasks. However, much of
17204_APPC_ptg01_053-082.indd 65 12/12/14 9:48 AM
OL-66 PART 4 ■ System Development and Project Management
FIGURE C-8 Split screen view with resource allocation pop-up
FIGURE C-9 First-cut Gantt Chart
the work runs concurrently, so the schedule, as calculated by Microsoft Project, is January 4th through January 28th. This view also has the resources listed next to the bars in the bar chart. You can turn this feature off in the Format tab. In order to illustrate the features of this screen, we had to cover up several columns on the left. When you use Microsoft Project, you can expand the left
17204_APPC_ptg01_053-082.indd 66 12/12/14 9:48 AM
OL-67Chapter C ■ Project Management Techniques
or right half to display the areas that are important for you. As we look at this screen, we can also see that there are quite a few resource conflicts in the sched- ule. The project will need to be adjusted before it can really be considered a workable schedule.
One of the benefits of using a tool such as Microsoft Project is that it indi- cates when there are conflicts in the project schedule. Let us look at those conflicts from another view. Microsoft Project provides several other screens to view the resources, their workloads, and their conflicts. Figure C-10 is a snapshot of the Resource Usage screen. In this screen, each resource is listed along the left column, with all his or her task assignments listed and how many hours he or she is assigned to each task. The right half of this screen displays a calendar of workdays for each resource. As can be seen, those resources who are overallocated are highlighted in red. We can also see which days and which tasks are causing the overload. Frequently, multiple resources will be overloaded due to the same task schedules. In this figure, we have adjusted the column widths to show the entire project. The figure shows the work schedule for Mary Smith and Jack Rogers. Note that some days these two resources are scheduled to work more than 8 hours in a day. Also note that Jack has two days with nothing to do. One side comment is appropriate here. Microsoft Project allows you to determine the number of hours in a workday. The default is eight, but in reality, it is very unusual for a developer to be able to work a full eight hours a day. Meetings, questions from colleagues, and other inter- ruptions usually mean that a more realistic workday is only five or six hours.
There are several methods that can be used to resolve these conflicts. One method, of course, is to manually adjust the schedule to reschedule those tasks that are causing a conflict. The advantage of manually changing the schedule is that the team leader can think through the assignments and dependencies again to make sure that it will work. Microsoft Project also has a tool to help
FIGURE C-10 Resource usage chart
17204_APPC_ptg01_053-082.indd 67 12/12/14 9:48 AM
OL-68 PART 4 ■ System Development and Project Management
reschedule the project to remove the conflicts. Under the Resource tab, as seen in Figure C-10, there is an icon called Leveling. Leveling can either be done resource by resource or by all resources at once. In our case, we will go ahead and let Microsoft Project level all the resources at once.
Leveling all the resources causes Microsoft Project to move tasks around so each resource works only the allowable number of hours per day. In most cases, the length of the project is increased due to leveling. One effective tech- nique is to allow Microsoft Project to level the resources and then you can make any final refinements manually. For our example, we first leveled all the resources, which lengthened the project to February 4th. However, reviewing the Resource Usage screen, we noted that there were many days when some resources were either not working or only working for two hours. In particular, we discovered that we could shorten task 16 to 16 hours by having the team work 1/2 time instead of 1/4 time. Figure C-11 is the final Gantt chart of the schedule after it was leveled and manually adjusted. The final completion date is February 2nd, which is three working days later than the original schedule that had conflicts.
In Figure C-11, we have also turned on critical path highlighting and slack highlighting. In Chapter 11, the critical path was defined as that sequence of tasks that must not be delayed. If any task on the critical path is delayed, the entire project will be delayed. As before, the tasks on the critical path are highlighted in red. The tasks in blue aren’t on the critical path. The amount of time that each of these takes is its slack time. In Figure C-11, the slack time is shown by a heavy black line following each of the blue tasks. Of course, if a noncritical path task is delayed up to its slack time, it could suddenly find itself on the critical path.
Figure C-11 also illustrates the two other types of tasks: summary tasks and milestone tasks. Summary tasks are simply a convenient way to group detail tasks. No resources or work is ever assigned to summary tasks. Milestone tasks,
FIGURE C-11 Final Gantt chart with critical path and slack
17204_APPC_ptg01_053-082.indd 68 12/12/14 9:48 AM
OL-69Chapter C ■ Project Management Techniques
as shown by task number 19, always have a duration of zero and are used to indicate some important delivery or completion.
■ Tracking Gantt Chart One major advantage of using a tool such as Microsoft Project is the ability to track the project as work is completed. Because a Gantt chart is projected onto a calendar, it is straightforward to see if the completion of the tasks corre- sponds to the projected completion dates. Figure C-12 is an example of a track- ing Gantt chart in Microsoft Project.
Referring back to Figure C-7, you will note that the Task Form screen has a text box to enter the percent completion of each task. Using that form, we entered 100 percent for tasks 1 through 5. Checkmarks have been placed in the information column to indicate that they are complete. In addition, the bars are changed to remove critical path colors and to add a completion line in the middle of the bar. On tasks 7, 8, and 9, we entered partial completion percentages. The completion line within each of those tasks only goes part- way in accordance with the percentage completion indicated. Also on this chart, the current date is indicated by a vertical red line. In this example, the current date is January 15th. You will notice that it appears that tasks 7 and 9 are a little behind schedule and that task 8 is a little ahead of schedule. Obvi- ously, the team leader will pay close attention to tasks 7 and 9 to see that they complete on time.
■ PERT/CPM and Network Diagrams Earlier in this section, we developed a PERT/CPM chart by using Visio as an aid to understanding dependencies and assigning predecessors. As mentioned, a project team normally doesn’t use a drawing tool to develop the PERT/ CPM chart. More commonly, a preliminary PERT/CPM layout is done on a
FIGURE C-12 Tracking Gantt chart
17204_APPC_ptg01_053-082.indd 69 12/12/14 9:48 AM
OL-70 PART 4 ■ System Development and Project Management
whiteboard with sticky notes. The objective is to understand the work and the tasks so dependencies can be identified. Once the data has been entered into Microsoft Project, then a Network Diagram screen can be displayed to show the project in a PERT/CPM format. Figure C-13 is an example of Microsoft Project’s Network diagram.
Microsoft Project automatically lays out the tasks and connecting arrows when this screen is opened. However, the layout is often so spread out that it is difficult to view in a meaningful way. It isn’t uncommon for projects to have 50 or 100 tasks or more. For schedules of a single iteration, there will be fewer tasks, but 20 or 30 isn’t uncommon. You can rearrange the boxes to make them easier to view by choosing the layout menu item under the Format tab or when right-clicking on the network screen. Once the layout pop-up window is opened, choose Allow manual box positioning. To move boxes around, you must grab the edge with the mouse cursor. Hovering over a box causes it to expand for easier viewing, as illustrated in Figure C-13.
■ Project Management Body of Knowledge (PMBOK)
People often think of project management only as a set of skills that one acquires through inherent capabilities or on-the-job practice. While good project man- agers do possess skills to successfully execute projects, project management is also a complex topic with its own body of knowledge. This body of knowledge
FIGURE C-13 Network diagram
17204_APPC_ptg01_053-082.indd 70 12/12/14 9:48 AM
OL-71Chapter C ■ Project Management Techniques
consists of principles and practices that form the foundation for understanding and developing effective project management skills.
There are two primary approaches to teaching project management. One method is to focus on and teach the specific tasks that are required to manage a project. These types of courses are usually organized around the sequence of activities for a typical project. The first topics of such courses teach how to initiate and plan a project. Next, they explain how to build a schedule. The specific skills, techniques, and processes are taught in the context of a typical project. Systems Analysis and Design in a Changing World takes this approach. We discuss spe- cific tasks and skills associated with the various phases and activities of a project.
Another approach to learning about project management is to concentrate on its principles and practices apart from the processes of a project. This section focuses on fundamental principles that underlie specific project management tasks. In other words, it teaches project management from the principles and concepts viewpoints. Both approaches have strengths and weaknesses for learn- ing project management. We have included this second approach in this online chapter so you could have the advantage of learning the strengths of each.
This section is based on the Project Management Body of Knowledge (PMBOK) that has been developed by the Project Management Institute (PMI). PMI is a nonprofit professional organization with members from every industry and large organization in the United States as well as major international organi- zations. It is the largest project management organization in the world, with more than 500,000 members. It sponsors various conferences and workshops around the globe on project management. It also offers various training courses, extensive project management books and materials, and various certification programs.
One of PMI’s major contributions is the development of a comprehensive set of principles for project management, called the Project Management Body of Knowledge (PMBOK). The PMBOK is divided into ten major categories, which we briefly discuss in this section:
■ Project scope management ■ Project time management ■ Project cost management ■ Project quality management ■ Project human resources management ■ Project communications management ■ Project risk management ■ Project procurement management ■ Project stakeholder management ■ Project integration management
■ Project Scope Management ❚ Objectives
Scope management is a key project management activity for predictive and adaptive projects. The objectives of project scope management are:
■ To precisely define the functions and capabilities to be included in the new system
■ To verify that the identified capabilities are necessary and are important priorities for the project at hand
■ To control the set of functions so it doesn’t grow inappropriately
Scope management includes managing the original definition of the sys- tem requirements so they can be accomplished within the allotted time and budget of the project. Obviously, the requirements must be comprehensive
17204_APPC_ptg01_053-082.indd 71 12/12/14 9:48 AM
OL-72 PART 4 ■ System Development and Project Management
to include the needed functions; however, they must also be realistic in not including unnecessary functions. Project managers must verify that the selected functions are indeed essential for the intended use of the new system. Finally, they must control additional requests to avoid the problems associ- ated with scope creep.
❚ Techniques There are three main categories of scope management techniques: (1) defining the scope, (2) verifying the scope, and (3) controlling the scope. Within those categories are supporting techniques.
Defining the Scope Generally, every project has two levels of scope defi- nition. The overall scope of the new system is delineated when the project begins. A high-level document will provide information about expected busi- ness benefits and system capabilities. The second level entails the details of the project scope, which are further defined as the system specifications are developed. For predictive projects, this occurs during the analysis and requirements activities. For adaptive projects, each iteration includes detailed scope definition tasks.
Verifying the Scope A universal truth is always that more system functionality is requested than can be included within the allowable time and budget. Hence, user requirements should be approved before they are included in the system scope. The project team should analyze the impact of each requirement and its cost to the project build, testing, and deployment activities.
Controlling the Scope As indicated earlier, controlling the project’s scope is just as important as initially defining it. A formal mechanism should be established to review additional requests for new system functions that appear during the construction phase. One effective way to track and control these changes is to set up a change control log and change control committee.
■ Project Time Management ❚ Objectives
The objectives of project time management are multifaceted:
■ To ensure that the project schedule accurately accommodates the work to be done
■ To effectively use resources and techniques to accelerate the overall time to completion
■ To accurately measure completed work to correctly assess the percentage completed
Basically, these objectives mean that the project manager must build an accurate schedule, use it to allocate the work to get maximum productivity, and then monitor and control progress based on scheduled tasks and milestones.
❚ Techniques The core element in project time management is the schedule, and develop- ing the schedule is one of the most important tasks of the project manager. Time management techniques include building the project schedule, making changes to it, monitoring progress based on the scheduled dates, and short- ening the project schedule by using optimization techniques. Overall project time for adaptive projects is especially difficult to estimate, so it is hard to build a schedule.
17204_APPC_ptg01_053-082.indd 72 12/12/14 9:48 AM
OL-73Chapter C ■ Project Management Techniques
Building the schedule involves considering many aspects of the project. System functionality (scope), available resources, cost, and system quality all affect the details of the schedule. Schedules may need to be modified for three main reasons: (1) additional activities are added to the project, (2) the time esti- mates of activities are expanded because of complexity, and (3) resources aren’t available at the expected time.
■ Project Cost Management ❚ Objectives
The specific objectives associated with project cost management are:
■ To accurately estimate the anticipated project costs ■ To accurately predict the cash flow and timing of expenditures ■ To confine actual project expenditures to those that are included within
the plan ■ To capture and record actual project expenditures correctly
❚ Techniques Project cost management techniques are based on fundamental accounting principles, which you learn in your cost accounting and managerial account- ing classes. This section limits the discussion to identifying some of these basic techniques.
Estimating Costs Every company has its own set of rules to determine which costs should be included in project costs. Direct costs are those that can be directly attributed to the project, such as salaries of project team members, costs of soft- ware licenses, and fees paid to contract personnel such as programmers. Other costs may be partly or fully allocated to the project based on company rules.
Controlling Expenditures Effective project managers try to achieve a balance between stinginess and overly wasteful procedures. Such techniques as moni- toring overtime, using standard off-the-shelf components, and careful pricing of vendor contracts are standard cost-control procedures that effective manag- ers use. A project manager should be concerned if spending exceeds what was planned. She should also be concerned if the spending is substantially lower than planned because it may indicate that work isn’t being done and that the schedule could be delayed.
■ Project Quality Management ❚ Objective
The single objective of project quality management is to produce a system that is:
■ Easy to use ■ Fit for its intended purpose ■ Robust ■ Reliable ■ Efficient ■ Secure ■ Maintainable
One problem with project quality management is that these characteristics are difficult to measure. How do you measure “ease of use”? Even though a precise metric may not exist, project managers must still attempt to provide high-quality software.
17204_APPC_ptg01_053-082.indd 73 12/12/14 9:48 AM
OL-74 PART 4 ■ System Development and Project Management
❚ Techniques All too frequently, project managers focus exclusively on program testing to ensure a high-quality system. But quality control should be planned from the beginning, and procedures should be integrated throughout all activities of the project. Every milestone and intermediate delivery should contain specific reviews and measurements to test for quality. As shown in Figure C-14, the automated system depends on the design; the design depends on the specifications; the speci- fications depend on the requirements. Errors and problems anywhere along the chain will reduce the quality of the final system. So, quality control needs to begin with the user requirements and continue with every activity.
The specific techniques to ensure quality in each of these intermediate steps are well documented and widely described. The real problem for a proj- ect manager is to integrate quality reviews into the schedule and ensure that they are done.
■ Project Human Resources Management ❚ Objectives
There are six primary objectives for project human resources management:
■ To ensure that the project team is staffed at the right time with people who have adequate skills in the right mix
■ To provide appropriate training and development opportunities for members of the team
■ To organize the project team and subteams for effective work ■ To encourage work teams to become effective working units ■ To provide the leadership and vision necessary to encourage and motivate
members of the team ■ To ensure that the working environment, including facilities, tools, and
support, is conducive to accomplishing work
❚ Techniques Human resources management is a broad and well-developed area. It is out- side the scope of this chapter to extensively explain the multitude of theories and techniques for team management. Numerous courses, books, and other resources that thoroughly discuss this topic are available. Project managers should always remember that their primary responsibility is to enable and allow the team members to do their best work.
■ Project Communications Management ❚ Objectives
Project communication management can also be organized to accomplish the following objectives:
■ To ensure that the necessary information is gathered in a timely manner and is complete and accurate
■ To ensure that project information is disseminated frequently and is an accurate representation of the project
FIGURE C-14 Quality-control dependencies of intermediate development steps Automated
system System design
System specifications
User requirements
© C
en ga
ge Le
ar ni
ng ®
17204_APPC_ptg01_053-082.indd 74 12/12/14 9:48 AM
OL-75Chapter C ■ Project Management Techniques
■ To ensure that members of the project team have current information ■ To capture and record important project information in a central informa-
tion repository
❚ Techniques Often, project managers outline an early plan for communications to ensure a smooth flow of information throughout the project. The four objectives just listed provide a starting point.
The plan for gathering information should address such questions as:
■ What information is to be gathered? ■ Who should gather the information? ■ What methods should they use? ■ How should information be recorded? ■ How is it verified for accuracy?
The plan for internal communications should answer these questions:
■ What internal information must be maintained and tracked? ■ Who needs to be included in which types of internal information? ■ What internal procedures are needed to ensure that information is dissemi-
nated accurately and in a timely fashion? ■ What methods should be used to capture and record internal information? ■ What kinds of meetings are necessary (and unnecessary)?
Planning for the dissemination of project information should include these questions:
■ How is status and progress information collected? ■ How is it reported—how frequently and in what format? ■ Who needs to receive progress information? ■ What types of information should be disseminated?
■ Project Risk Management ❚ Objectives
Risk management is unique because it varies tremendously with the type of proj- ect undertaken. We identify three primary objectives of risk management:
■ To determine the potential areas of high risk for the project ■ To develop strategies and plans of actions to reduce the identified risks ■ To carry out the plans of action to monitor and control the project risks
❚ Techniques Risk management techniques vary from project to project. Probably the tough- est part of risk management is to be realistic in assessing the risks and potential problems of a given project. People tend not to see problems in projects with which they are integrally involved, so one technique of risk assessment is to put an outsider on the risk assessment team. A common technique for identify- ing project risks is to have an open session on risk identification and tracking that includes senior project members, outsiders, and even team members. Team members can often observe risks that senior management may not see.
■ Project Procurement Management ❚ Objectives
Specific objectives of project procurement management are:
■ To plan the procurement process ■ To ensure that solicitation documents are complete and accurate
17204_APPC_ptg01_053-082.indd 75 12/12/14 9:48 AM
OL-76 PART 4 ■ System Development and Project Management
■ To evaluate and select alternative providers ■ To ensure that contracts are adequate, with sufficient performance controls
and metrics ■ To monitor and control deliverables
❚ Techniques Project procurement management is a complex and wide-ranging area—from the development of a request for proposal (RFP), to contract negotiations, to performance assessment, to daily work relationships and chains of authority, and even to arbitration and litigation. Unfortunately, little training is available to strengthen these skills. In addition, each company has its own procedures for working with providers, and this knowledge is often disseminated through many levels and departments within the organization. Project managers need to seek out this information wherever it is. Some of the primary activities in pro- curement planning are:
■ Planning procurement requirements ■ Development of solicitation documents ■ Evaluating providers and alternatives ■ Developing contracts ■ Monitoring and controlling deliveries
■ Project Stakeholder Management ❚ Objectives
Project Stakeholder Management is a new PMBOK area that was recently added in the fifth edition of the PMBOK Guide. There are several major categories of stakeholders, including
■ Project Team ■ Clients or sponsors ■ Users ■ Functional managers (bosses of users) ■ Technical staff
The primary objectives of Stakeholder Management are to
■ Identify all the relevant stakeholders and understand their interest or role ■ Understand and manage the expectations of stakeholders ■ Manage and control stakeholder communications ■ Manage and control stakeholder involvement
❚ Techniques Because the objectives of Stakeholder Management are quite diverse, a wide range of techniques are required. Each objective will require different techniques.
The identification of all relevant stakeholders is a research oriented activity. It begins by identifying the obvious stakeholders such as the client, the users, the project team, and the technical staff. These people can then be interviewed to understand their interest in the project and their expectations about communication and involvement. They can also help to identify other stakeholders.
Managing and controlling the stakeholder communications uses the same techniques as explained in the Communications Management PMBOK area.
Managing and controlling stakeholder involvement varies extensively depending on the stakeholder and his or her interest. Primarily it requires an understanding by the project manager of what the needs are and creating a plan and program to satisfy those needs.
17204_APPC_ptg01_053-082.indd 76 12/12/14 9:48 AM
OL-77Chapter C ■ Project Management Techniques
ChAPTER SUMMaRy This online chapter supplements and enhances the printed chapters on project management. It covers four major themes. First, it explained in detail the un- derlying concepts related to calculating the net pres- ent value and other financial measurement techniques. The second theme explained the foundation concepts of PERT/CPM charts and how they are developed. The third theme was more of a tutorial explanation about how to use Microsoft Project to build a project sched- ule. The final theme presented additional explanations of the nine areas of the PMBOK.
Net present value is an approach to evaluate the potential benefit to an organization of an investment in a software development project. The key concept of net present value is the time value of money. In other words, because money today can be invested and will provide added value in the future, then today’s dol- lars are worth more than future dollars. Hence, future revenues—and expenses—are made equivalent to to- day’s money by using a discount factor. This is a simi- lar concept to taking today’s dollars and calculating a future value based on an interest rate. The objective of the net present value calculations is to determine a value benefit to the organization in today’s dollars.
Two other techniques or measurements to evalu- ate potential benefit are payback period and return on investment. Payback period is that point in time when the original investment has been recouped from the in- creased future revenue stream. Another term used to define payback period is breakeven point.
Finally, the return on investment is a measure- ment—based on a particular time period—of the per- cent increase of an original investment. For example, to say that a five-year return on investment is 200 per- cent means that an original investment of $100 returns $200 over a five-year period.
PERT/CPM charting is a technique that docu- ments relationships between the tasks of a project. A PERT/CPM chart is a graphical layout of all the project tasks and provides a visual method of ob- serving the dependencies between the tasks of a project. It also demonstrates in a graphical manner those tasks that comprise the critical path and which must be closely tracked to avoid project delays. Tasks that aren’t on the critical path always have a certain amount of slack time, which is a measure- ment of the time a task can slip without causing a negative impact on the project.
The Project Management Body of Knowledge (PMBOK) includes nine specific knowledge areas that are important to project management. In Chapter 11, those knowledge areas were introduced but weren’t elaborated on. In this chapter, each knowledge area is discussed, with an explanation given for the primary objectives of each knowledge area. In order for a person to be successful as a project manager, he or she should have a firm grasp of the principles as- sociated with each knowledge area. He or she should also develop skills and expertise in each of these areas.
■ Project Integration Management ❚ Objectives
The primary objective of integration management is to see that the work of the project is completed successfully. Project integration management focuses on the specific tasks that ensure the project is coordinated, executed, and controlled properly. This knowledge area is described through the processes that occur during the life of a project. The skills from all the other knowledge areas are included in the project processes of integration management.
late start time
slack time
discount rate
discount factor
early start time
KEy TERMS
17204_APPC_ptg01_053-082.indd 77 12/12/14 9:48 AM
OL-78 PART 4 ■ System Development and Project Management
1. What is the difference between the following two procedures?
a. Discount benefits and discount costs first and then net these values together to get a net present value.
b. Net benefits and costs together first and then discount the combined figure to get a net present value.
2. Explain the difference between the discount rate and the discount factor.
3. How do you determine the time period for NPV? For ROI?
4. What is meant by payback period?
5. Why is it important to develop a detailed list of tasks when preparing to build a project schedule?
6. Explain in your own words the process of calcu- lating the late start times on a PERT/CPM chart.
7. Discuss the difference between a PERT/CPM chart and a Gantt chart. List comparative advantages and disadvantages of each.
8. Can a project have two paths that are critical paths? Explain why or why not. Give an example if possible.
9. What is the difference between effort and duration in Microsoft Project?
10. What problem does the Microsoft Process of leve- ling attempt to solve? How does the process work?
11. When would a project manager use a tracking Gantt chart? How does it help him or her manage the project?
12. What is a network diagram?
13. What is the difference between lag time and slack time?
14. What are the nine knowledge areas in the Project Management Body of Knowledge (PMBOK)?
15. What are the specific objectives of project scope management?
16. What are the specific objectives of project time management?
17. What are the specific objectives of project cost management?
18. What are the characteristics of quality in a new system?
19. What are the objectives of project human resources management?
20. What is the difference between internal communi- cations and external communications?
21. Discuss the importance of risk management in information systems development.
22. What are the objectives of project procurement management?
23. What is the objective of project integration management?
REVIEw QUESTIONS
PROBlEMS AND ExERCISES 1. Using the information in Figure C-15, calculate
the net present value, the payback period, and the return on investment by using a discount rate of 8 percent for the following systems devel- opment project. The development costs for the system were $225,000. Do a five-year and an eight-year ROI.
2. Build a Gantt chart by using Microsoft Project based on the list of tasks as shown in Figure C-16. This mini-project is to build part of the user interface for a new system. a. How many days does this project take? Can
you shorten it any? (Note: One easy way to view the total project length is to make a single highest-level task, with all other tasks demoted beneath it.)
b. Does it contain resource conflicts?
c. What does leveling do to the length of the project?
d. Can you readjust the project manually to keep it as short as the original schedule but without resource conflicts?
e. Can you make other reassignments of work between Bryce and Tammy that will shorten the project?
3. The work breakdown structure shown in Figure C-17 is for a final iteration to deploy a new application in a new datacenter. The ABC company has a contract with Super ISP to host the system, and the ISP will set up the computing envi- ronment. ABC will then configure the system soft- ware, install the new application, conduct stress tests and tune the system, run beta tests, and then deploy the system into a beta-production status.
17204_APPC_ptg01_053-082.indd 78 12/12/14 9:48 AM
OL-79Chapter C ■ Project Management Techniques
Using Microsoft Project, create a schedule for this deployment activity. Allow Microsoft Project to automatically schedule the tasks. (Note: One easy way to view the total project length is to make a single highest-level task, with all other tasks demoted beneath it.) Answer these questions:
a. Note the resource conflicts. Which resources are overallocated? Which tasks show resource conflicts? Does Microsoft Project schedule the tasks correctly or are there resource conflicts that are unnecessary? Please explain.
b. Show critical path tasks and slack time. Which tasks aren’t on the critical path and how much slack time does each have?
c. How many days does the project take? Can you shorten the project by manually schedul- ing the tasks?
d. Level all the resources. How many days does the project take now? Can you improve it by adjusting resources or rescheduling activities?