System Development Phase : Project Management and Cost Project management Project management is the ongoing process of directing and coordinating all the steps in.

Download Report

Transcript System Development Phase : Project Management and Cost Project management Project management is the ongoing process of directing and coordinating all the steps in.

System Development Phase :
Project Management and Cost
Project management
Project management is the ongoing process of directing
and coordinating all the steps in the development of an
information system. Effective project management is
necessary throughout the entire systems development life
cycle, not just during the systems development phase; by
placing project management at this point in the text, we
do not mean to imply that project management is
relevant only during systems development.
1
• Project management overview
The goal of project management is to produce an
information system that is acceptable to its end users and
that is developed within the specified time frame and
budget. The acceptability, deadline, and budget criteria
must all be met for a project to be considered completely
successful. Failing to meet any one of these three criteria
usually indicates a failure, at least in part, in project
management. Even though outside factors might
contribute significantly to project failure, the role of
project management is to recognize such factors and to
eliminate or minimize their negative effects.
2
The job of a project manager is to manage a project to
develop an information system. The project manager is
usually a member of the information systems
department, typically a senior systems analyst. The
project manager might also be called the project leader or
When appropriate, the lead analyst or the chief
programmer.
Most IS projects also have a project coordinator. The
project coordinator handles the administrative and
procedural responsibilities for the developing IS. This
person also negotiates between end users when they have
conflicting requirements and makes the final ruling on all
3
requests for change to the system requirements document
after the requirements have been frozen.
General management functions
In business today, the generally recognized management
functions are planning, staffing, organizing, directing,
and controlling. These five functions apply to all types of
managers in all kinds of situations; an information
system project manager is no exception.
4
Project planning
Project planning takes place at both the beginning and
end of every SDLC phase. End-of-phase planning is
necessary for formulating estimates of costs, manpower
requirements, and schedules for all subsequent phases;
these estimates, which are included in the documents
prepared at the end of each phase, are used by
management to decide on future action.
Planning is necessary at the beginning of each
phase to determine all the specific activities to be
accomplished during that phase. An activity, or task, is
any project-related work requiring the use of project
5
resources (personnel, time, or money) or any external
effort that impacts the project. Examples of internal
activities are conducting an interview, designing a report
layout, and selecting equipment for purchase, whereas
awaiting the delivery of purchase d equipment is an
example of an external activity. An activity is the
smallest unit of work over which the project manager
desire control.
An event is a project milestone representing the
beginning or end of an activity. Each activity has two
related events: one event represents the activity’s
beginning, and the other event represents the activity’s
6
completion. Some events signal the end of one activity
and the start of another activity.
Project estimating
Determining realistic time estimates for project activities
is one of the most difficult of a project manager’s duties.
The project manager must consider many factors that can
affect time requirements.
One of the most important of these factors is the
size of the project, because the relationship between a
project’s size and its required development resources is
not proportional.
7
The attributes of individual project team members
also affect time requirements. A team member with less
experience, knowledge, education, maturity, and
imagination requires more time to complete a project
activity than does a more knowledgeable and
experienced team member.
Other examples of factors that can affect project
time requirements include the attitudes and availability
of end users, the level of upper management
commitment, and the priority of the project compared to
the priority of other projects in progress within the
organization.
8
Most of the research done on estimating
techniques concerns programming activities during the
systems development phase. Project managers typically
use one of three methods (or combination of these
methods) to estimate programming times. These methods
are the quantitative method, the experience method, and
the constraint method.
Project scheduling
The project scheduling functions of the project manager
include determining the order in which activities will be
performed, setting start and end times for each activity,
and assigning specific tasks to team members.
9
The first step in determining the order for
performing activities is to identify all activity
dependencies. To say that an activity is dependent
means that the activity cannot be started until one or
more of the other activities have been completed.
Scheduling tools
Several graphical planning aids can assist a project
manager in the scheduling process. We will examine two
of these tools: Gantt charts and PERT/CPM.
• Gantt charts
10
Plan and Schedule Await Hardware delivery Programming Install Hardware Convert Files Write User Manual Program Testing User Training System Test User Test -
A Gantt chart
20 40
60 80 100 120 140 160
11
Elapsed Time (in days)
• PERT/CPM
The Program Evaluation Review Technique (PERT)
Is a network model that allows for randomness in activity
completion times. PERT was developed by the Navy
Special Projects Office in the 1950s to control the
development of the Polaris submarine missile program.
At approximately the same time, the Critical Path
Method (CPM) was developed by private industry to
meet similar project management needs. The important
distinctions between the two methods have disappeared
over time, so today the technique is generally called
PERT/CPM.
12
PERT/CPM
1
Activity Description
2
Activity Duration
EVENT 1 ACTIVITY EVENT 2
3
4
EVENT 3 DUMMY ACTIVITY EVENT 4
13
• PERT/CPM
Plan and
Schedule5
1
18
2
Programming
70
4
Program Testing
8
30
5
Await
Hardware
Delivery
3
7
Install
Hardware
10
Write User
Manual
5
System Test
25
User Training
20
10
9
User Test
25
11
25
25
Convert
files
6
14
Activity duration
Traditional PERT techniques use a formula for
calculating estimated activity duration. The project
manager first determines three time estimates for each
activity:
• Optimistic time (O) – generally the shortest time in
which the activity can be completed.
• Most likely time (M) – the completion time having the
highest probability.
• Pessimistic estimate (P) – the longest time that an
activity might require.
The expected activity duration is then calculated as :
expected time = (O + 4M + P) / 6
15
For example, the project manager might estimate
that a file-conversion activity could be completed in as
few as twenty days or could take as many as thirty-four
days, but is most likely to require twenty-four days.
Using the formula, the expected activity duration is 25
days from the calculation:
(20 + 4 x 24 + 34) / 6 = 25
16
Critical path
The critical path has been defined as the path with
the most time required from the start to the finish of the
project. The critical path can be derived by tracing the
total duration time for all tasks for every path from the
start to the end of the project. The path with the longest
duration time is the critical path.
From example:
The critical path is : 1-2-4-8-10-9-11
17
Cost considerations
Throughout the entire systems development life cycle,
project managers and system analysts must be concerned
with costs. Estimates of projected costs and benefits must
be determined at the end of each SDLC phase as input to
the end-of-phase management decision.
• Cost classifications
Costs can be classified as tangible or intangible, direct
or indirect, and fixed or variable.
Benefit considerations
Recognizing and understanding the various
classifications of benefits is helpful when you want to
identify all the benefits of an IS project. Like costs,
18
benefits can be classified as tangible or intangible, fixed
or variable, and direct or indirect. Another useful benefit
classification relates to the source of the benefit: positive
benefits versus cost-avoidance benefits. Positive benefits
are those that increase revenues, improve services to
customers or employees, or otherwise contribute to the
organization or its image as a direct result of the
performance of the IS. Examples of positive benefits
include improved information availability, greater
flexibility, faster service to customers, support for new
products or capabilities, and better inventory
management.
19
Frequently, an information systems project is
initiated in order to eliminate the high costs of a current
operation. The new system is expected to provide
significant cost-avoidance benefits. Examples of costavoidance benefits include reduced clerical cost and
reduced overtime wages. In general, a new information
system will achieve cost-avoidance benefits equal to all
the operating costs of the system that it replaces.
Cost-avoidance benefits are as important and as
real as positive benefits. You must consider both types of
benefits when you perform cost-benefit analyses.
20
Cost-benefit analysis
After the costs and benefits have been identified and
quantified, the next step is a cost/benefit analysis, in which
each cost or benefit is evaluated in relation to each
alternative. Numerous methods are used to accomplish this
task. The following are some cost/benefit analysis
methods:
• Pay-back analysis
• Break-Even analysis
• Present value analysis
• Net Present Value analysis
• Depreciation model
21
• Pay-back analysis
Pay-back analysis determines the time it takes for
the benefits to equal the initial investment. With this
method the analyst calculates how long it takes for the
benefits to pay back the costs incurred during development
and usage. The simplest form of this determination is :
Pay-back =
Investment
After-tax yearly savings
For example, assume that a project requires an initial
investment of $1,000,000 with a yearly after-tax savings of
$250,000 resulting from completion of the project. The
formula now becomes
22
Pay-back = 1,000,000
250,000
= 4 years
Example of simple payback, consider the lighting retrofit
of a 10,000-square-foot commercial office building.
relamping with T-8 lamps and electronic, high-efficiency
ballasts may cost around $13,300 ($50 each for 266
fixtures) and produce annual savings of around $4,800 per
year (80,000 kWh at $0.06/kWh). The simple payback
time for this improvement would be $13,000/$4,800
annually = 2.8 years. That is, the improvement would pay
for itself in 2.8 years
23
• Break-Even analysis
Current
system
Costs in $
Return on
investment
Fix costs
$20,000
Proposed
system
Investment
0
1,000
Break-Even analysis
Units
24
25
• Present value analysis and Net Present Value analysis
The cost/benefit formulas that consider present and
future values of money.
Future value formula
F = P(1 + i)n
Present value formula
P=
F
(1 + i)n
Where P = principal sum or present value
F = future value, compounded amount of the
principal sum
i = nominal rate of interest
n = number of interest periods
26
Programming, Testing, and Documentation
During the system development phase, programmers
code, test, and document individual programs; the systems
analyst oversees these activities.
Program development
• Review the program documentation
• Design the program
• Code the program
• Test the program
• Document the program
Documentation
Documentation is the written material that explains what
27
the information system does and how people interact with
the system.
• Program documentation
• System documentation
• Operations documentation
• End user documentation
Testing
Programmers are responsible for unit testing the individual
programs they develop. After the programmers have tested
each program, then the programs within the system that
depend on one another must be tested together, and finally
the entire system must be tested.
28
System Implementation and Evaluation
Phase :
When the systems implementation and evaluation
phase begins, all the software and hardware for the new
information system is complete and available. As the
first step in this phase, you prepare a production
environment and transfer the programs and procedures
for the new information system into that environment. In
the second activity of this phase, you are involved in the
training of the end users, operations personnel, and other
people who will interact with the new information
system. After all the training has been completed , you
29
perform the actual conversion effort, which includes file
conversion and system changeover. The last two
activities of the system implementation and evaluation
phase are the post-implementation evaluation and the
final report to management.
• Operational and test environment
• Training
• Equipment conversion
• install computer & peripheral equipment
• File conversion
• System conversion
• Auditing
• Evaluation
30
Old System
New System
DIRECT CHANGEOVER
Old System
New System
PARALLEL OPERATION
Old System
New System
PILOT OPERATION
Old System
New System
PHASED CHANGEOVER
31
System conversion
Changeover method
Direct changeover
Parallel Operation
Pilot Operation
Phased Changeover
Risk
High
Low
Medium
Medium
Cost
Low
High
Medium
Medium
32
Maintenance
• Factors in Maintenance
The information needs of businesses constantly
change in response to external and internal factors.
External factors that may require system changes include
the general business climate, a competitor’s introduction
of new products and services, and imposition of new
rules and regulations by governments. Internal factors
include changes in user requirements and responses to
methodological and technological changes. In addition,
all systems contain inadequacies and errors overlooked
33
during system development. Existing system—whether
they are newly developed and installed systems or older
systems that are still in service—require the following
modification:
• Correcting errors
• Improving and enhancing the system
• Interfacing systems with other applications, systems,
and technology
The implementation of these changes is the reason
why maintenance consumes more time, effort, and
money than do new system development activities for the
business.
34
Types of Maintenance
• Ongoing Maintenance
The firm has ongoing maintenance needs, which
are usually taken care of by programs that perform some
type of maintenance on a regular basis. They update files,
update records and data items within files, update
business accounts, reset totals, modify table entries, and
perform a host of other activities. Files and databases are
backed up and copied. The number of files within a firm
is reduced as a result of purging inactive files and
records. Storages space for data is reduced by
35
reorganizing files, indexes, and directories. Files
undergo conversions involving formats, media, and
physical locations. New versions of vendor software and
hardware may replace older version.
• Maintenance Categories
• Corrective maintenance
• Perfective maintenance
• Adaptive maintenance
Corrective maintenance entails action to eliminate
errors and failures. Perfective maintenance represents
actions to improve or maintain system performance.
36
Adaptive maintenance embodies actions to adapt system
to new methodologies, functions, or technologies.
Maintenance Tools and Methods
Tools that support maintenance design and development
activities are :
• Prototyping
• Modeling methods and tools supporting them
• Structured methods and tools supporting them
• Design/development dictionaries
• Design/developer CASE workbenches
• Computer-aided tools and methods such as CASE
utility software
37
Maintenance Activities
The major influences on maintenance include:
• Type of application
• Age of the system
• Size of the system and programs
• Complexity of the system and programs
• Dependence within and between systems
• Quality and completeness of development documentation
• Level of user understanding of the system
• Level of user involvement in the project
38
• Maintenance Role
The team that develops a system is not always used to
maintain the system once it is operational. Often, a
separate maintenance team is employed to ensure that the
system runs properly. The new team may be more
objective than the original developers. A separate team
may find it easier to distinguish how a system should
work from how it does work.
39
The maintenance team involved in many activities such
as:
• understanding the system
• locating information in system documentation
• keeping system documentation up to date
• extending existing functions to accommodate new or
changing requirements
• adding new functions to the system
• finding the source of system failures or problems
• locating and correcting faults
• answering questions about the way the system works
40
• restructuring design and code components
• rewriting design and code components
• deleting design and code components that are no longer
useful
• managing changes to the system as they are made
In addition, maintenance team members work with users,
operator, and customers. First, they try to understand the
problem as expressed in the user's language. Then, the
problem is transformed into a request for modification.
41
The change request includes a description of how the
system works now, how the user wants the system to
work, and what modifications are needed to produce the
changes. Once design or code is modified and tested, the
maintenance team retrains the user, if necessary.
42