Object Oriented Analyis & Design Training Agenda

advertisement
Project and Process Management
Techniques
Introduction

The chapter will address the following questions:







What is a a project and why do you need project management?
What is project management and what are the consequences of
mismanagement?
What is the difference between project and process management?
How do you develop or modify a work breakdown structure for a
project?
How do you read Gantt charts as a model of project activities,
schedules, and progress?
How do you read PERT charts as a model of project activities,
schedules, and progress?
What is a typical software approach to project modeling and
management?
1
Project and Process Management
Techniques
What is Project Management?

Introduction

A definition for project:
 “A project is a sequence of unique, complex, and connected
activities having one goal or purpose and that must be
completed by specific time, within budget, and according to
specification.” Wysocki, Beck, and Crane
 As applied to information systems, note the following:
• A system development methodology, such as FAST, defines a
sequence of activities, mandatory and optional.
• Every system development project is unique; that is, it is different
from every system development project which preceded it.
• The activities that comprise systems development are relatively
complex.
2
Project and Process Management
Techniques
What is Project Management?

Introduction

As applied to information systems, note the following:
(continued)
• While some tasks may overlap, many tasks are dependent on the
completion of other tasks.
• The development of an information system represents a goal.
• Although many information system development projects do not
have absolute deadlines or specified times (there are exceptions),
they are notoriously completed later than originally projected.
• Few information systems are completed within budget.
• Information system must satisfy the business, user, and
management expectations and specifications.
3
Project and Process Management
Techniques
What is Project Management?

Introduction

For any systems development project, effective project
management is necessary to ensure that the project meets the
deadline, is developed within an acceptable budget, and fulfills
expectations and specifications.
 Project management is the process of defining, planning,
directing, monitoring, and controlling the development of an
acceptable system at a minimum cost within a specified time
frame.
4
Project and Process Management
Techniques
What is Project Management?

Introduction

Different organizations take different approaches to project
management.
 One approach is to appoint a project manager from the ranks of
the team (once it has been formed).
• This approach is a result of the self-directed team paradigm.

But many organizations have found that successful project
managers apply a unique body of knowledge and skills that
must be learned.
• These organizations tend to hire and/or develop professional
project managers who are assigned to one or more projects at any
given time.
5
Project and Process Management
Techniques
What is Project Management?

Project Management Causes of Failed Projects

Failures and limited successes far outnumber successful
information systems. Why?
 Many systems analysts and information technologists are
unfamiliar with or undisciplined in the tools and techniques of
systems analysis and design.
 Many projects suffer from poor leadership and management.
• Project mismanagement can sabotage the best application of the
systems analysis and design methods.
6
Project and Process Management
Techniques
What is Project Management?

Project Management Causes of Failed Projects

One of the most common causes of project failure is taking
shortcuts through or around the methodology.
• Project teams often take shortcuts for one or more of the following
reasons:
– The project gets behind schedule and the team wants to ‘catch
up.’
– The project is over budget and the team wants to make up costs
by skipping methodology steps.
– The team is not trained or skilled in some of the methodologies
activities and requirements, so they skip them.
7
Project and Process Management
Techniques
What is Project Management?

Project Management Causes of Failed Projects

Another common cause of project failures is poor expectations
management.
• All users and managers have expectations of the project.
• Over time, these expectations change and takes the form of scope
creep.
– Scope creep is the unexpected growth of user expectations and
business requirements for an information system as the project
progresses.
• Unfortunately, the schedule and budget are rarely modified at the
same time.
– The project manager is ultimately held accountable for the
inevitable and unavoidable schedule and budget overruns.
– The users' expectations of schedule and budget did not change
as the scope changed.
8
Project and Process Management
Techniques
What is Project Management?

Project Management Causes of Failed Projects

A similar problem is caused by feature creep.
• Feature creep is the uncontrolled addition of technical features to
a system under development without regards to schedule and
budget.
– Each unplanned feature, however impressive, adds time and
costs to the overall schedule.

Cost overrun problems:
• Many methodologies or project plans call for an unreasonably
precise estimate of costs before the project begins.
• Poor estimating techniques.
• Schedule delays.
9
Project and Process Management
Techniques
What is Project Management?

Project Management Causes of Failed Projects
Poor people management can also cause projects to fail.
 Another cause of project failure is that the business is in a
constant state of change.

• If the project’s importance changes, or if the management and
business reorganizes, all projects should be reassessed for
compatibility with changes, and importance to the business.
10
Project and Process Management
Techniques
What is Project Management?

The Basic Functions of the Project Manager


These functions include planning, staffing, organizing, scheduling,
directing, and controlling.
Scoping the Project:
 At a minimum, a complete project definition should include the
following:
• A project champion and executive sponsor.
• A brief statement the problem or opportunity to be addressed by
the project.
• The project goal.
• The project objectives.
• Project assumptions and constraints.

Failure to achieve consensus on the above dooms a project
before it starts.
11
Project and Process Management
Techniques
What is Project Management?

The Basic Functions of the Project Manager

Planning Project Tasks and Staffing the Project Team:
 A good manager always has a plan.
• Each task required to complete the project must be planned.
• The following are other planning issues.
– How much time will be required?
– How many people will be needed?
– How much will the task cost?
– What tasks must be completed before other tasks are started?
– Can some of the tasks overlap?
12
Project and Process Management
Techniques
What is Project Management?

The Basic Functions of the Project Manager

Planning Project Tasks and Staffing the Project Team:
 The project manager should carefully consider the business and
technical expertise that may be needed to successfully finish the
project.
 The key is to match the personnel to the required tasks that
have been identified as part of project planning.
13
Project and Process Management
Techniques
What is Project Management?

The Basic Functions of the Project Manager

Organizing and Scheduling the Project Effort:
 Members of the project team should understand their own
individual roles and responsibilities as well as their reporting
relationship to the project manager.
 The project schedule should be developed with an
understanding of task time requirements, personnel
assignments, and inter-task dependencies.
 Many projects present a deadline or requested delivery date.
• The project manager must determine whether a workable schedule
can be built around such deadlines.
– If not, the deadlines must be delayed or the project scope must
be trimmed.
14
Project and Process Management
Techniques
What is Project Management?

The Basic Functions of the Project Manager

Directing and Controlling the Project:
 Once the project has begun, the project manager becomes a
supervisor.
• As a supervisor, the project manager directs the team's activities
and evaluates progress.
• Every project manager must demonstrate such people management
skills as motivating, rewarding, advising, coordinating, delegating,
and appraising team members.
15
Project and Process Management
Techniques
What is Project Management?

The Basic Functions of the Project Manager

Directing and Controlling the Project:
 Perhaps the manager's most difficult and important function is
controlling the project.
• The project manager's job is to monitor tasks, schedules, costs, and
expectations in order to control those elements.
• The project manager must be able to present the alternatives and
their implications for the budget and schedule in order to manage
expectations.
16
Project and Process Management
Techniques
What is Project Management?

Project Management Software


Today, project management software is routinely used to help
project managers plan projects, develop schedules, develop
budgets, monitor progress and costs, generate management reports,
and affect change.
This software greatly simplify the preparation of the project
management models such as Gantt and PERT charts.
 The models and techniques would be difficult to apply without
software assistance.
17
Project and Process Management
Techniques
18
Project and Process Management
Techniques
19
Project and Process Management
Techniques
Process Management

Introduction




Information system development and maintenance are business
processes — very complex business processes.
Like most business processes, information system development
processes must be managed.
Process management is a prerequisite to systems development
project management.
 Process management is the planning, selection, deployment,
and consistent application of standard system development
methods, tools, techniques, and technologies to all information
system projects.
For most information system organizations, process management is
built around a system development methodology.
20
Project and Process Management
Techniques
Process Management

Management of the Methodology


Once a methodology has been selected (or developed), it must be
implemented.
This can be an enormous undertaking that requires the following:
 Establishing visibility for the methodology by educating all
developers, managers, and technical support staff in the basic
development process, tools, and techniques to be used.
 Providing just-in-time detailed training to development teams
as each team begins its first project.
 Providing consultation to project teams as they apply the
methodology.
 Improving the methodology.
21
Project and Process Management
Techniques
Process Management

Management of the Methodology


Methodologies are notorious for becoming ‘shelfware’, that is, not
used at all.
Methodology management is the key to avoiding the following
common consequences.
 No consistency in the processes used to develop systems —
even successes cannot be reliably repeated.
 No flexibility in the process used to develop systems — project
teams are unable to adapt the methodology to new or unique
situations.
 Failure to follow the methodology — either because
management doesn’t expect it, or project managers
inappropriately skip or accelerate activities in response to
schedule or budget problems.
22
Project and Process Management
Techniques
Process Management

Management of System Development Technology


Development technology must be carefully evaluated and selected
based on the technology architecture and vision of the business,
and compatibility with (or adaptability to) the chosen
methodology.
Once a technology has been chosen, developers must be trained in
its correct use.
 The most effective training occurs just-in-time (JIT) for the
project team.
23
Project and Process Management
Techniques
Process Management

Total Quality Management


A development process (methodology) does not ensure quality.
Quality must be managed and quality management begins with
establishing quality standards.
 Internal standards applicable to system development may
include the following:
• Standards for project deliverables such as reports and
documentation.
• Modeling techniques and standards.
• Naming standards for models, objects, programs, databases, etc.
• Quality checkpoints, deliverables, and signoffs at various stages of
the projects.
24
Project and Process Management
Techniques
Process Management

Total Quality Management

Internal standards applicable to system development may include
the following: (continued)
• Technology standards such as approved graphical user interface
components and placement.
• Testing procedures and tolerances.
• Acceptance criteria for system implementation.
25
Project and Process Management
Techniques
Process Management

Metrics and Measurement



This is a relatively new dimension of process management.
According to the SEI Capability Maturity Model sophisticated
development organizations measure their productivity and quality
with formal metrics, and adjust the development process to affect
continuous improvement.
System and software metrics is a relatively new, and rapidly
changing discipline.
 The interest in that discipline is being increasingly driven by
upper management’s desire to improve the accountability of
developers and the entire information system unit to the overall
organization.
26
Project and Process Management
Techniques
Process Management

The Development Center


The ultimate process management infrastructure is a development
center.
 A development center is a central group of information system
development consultants and managers who plan, implement,
and support all aspects of process management including,
methodology, technology, quality, and measurement.
Development Center staff does not develop information systems.
 They provide consulting services to those who do develop
information systems (including systems analysts and
programmers).
27
Project and Process Management
Techniques
Director
of
Systems
Development
Information
Center
Manager
Development
Center
Manager
Methodology
Coordinator
CASE Tools
Analyst(s)
Quality
Analyst
Methodology
Steering
Committee
Internal
CASE Tool
User Groups
Development
Standards
Committee
Measurement
Analyst(s)
Project
Quality
Referees
28
Development
Team
Manager
Development
Team
Manager
Central
Repository
Data
Administrator
Central
Repository
Database
Analyst(s)
Project and Process Management
Techniques
Project Management Tools and Techniques

Gantt Charts


The Gantt chart was first conceived by Henry L. Gantt in 1917.
It is the most commonly used project scheduling and progress
evaluation tool in use.
 A Gantt chart is a simple horizontal bar chart that depicts
project tasks against a calendar. Each bar represents a named
project task. The tasks are listed vertically in the left-hand
column. On a Gantt chart, the horizontal axis is a calendar
timeline.
29
Project and Process Management
Techniques
Project Management Tools and Techniques

Gantt Charts

Forward and Reverse Scheduling:
 Initially, you must determine the scheduling strategy to be used.
 There are two basic scheduling approaches supported by most
project management software tools.
• Forward scheduling establishes a project start-date and then
schedules forward from that date. Based on the planned duration of
required tasks, and the allocation of resources to complete those
tasks, a projected project completion date is calculated.
• Reverse scheduling establishes a project deadline and then
schedules backward from that date. Essentially, tasks, their
duration, and resources must be chosen to ensure that the project
can be completed by the deadline.
30
Project and Process Management
Techniques
Project Management Tools and Techniques

Gantt Charts

Calendars:
 Every business operates on a calendar.
 In project management software a base calendar can be
established to identify the work week (e.g., Monday through
Friday), work day (e.g., 8 AM -Noon; 1 PM - 5 PM), and
holidays and conflict days.
 After the project team has been identified, personal calendars
can also be established to block out individual vacations and
commitments.
31
Project and Process Management
Techniques
Project Management Tools and Techniques

Gantt Charts

Work Breakdown Structures:
 Most projects can be defined by a hierarchical breakdown of
the required work.
• A work breakdown structure is a hierarchical decomposition of
the project into phases, activities, and tasks.

Those work units which are broken down into more detailed
work units are called summary tasks.
• They are not scheduled, per se.
• The duration of summary tasks will be automatically be calculated
based on the duration of those tasks that will not be broken down
into more granular work units.
– These are called primitive tasks.
32
Project and Process Management
Techniques
Project Management Tools and Techniques

Gantt Charts

Work Breakdown Structures:
 Another type of entry in a work breakdown structure is a
milestone.
• Milestones are events that signify major accomplishments or
events during a project.
• Milestones do not represent actual work, per se.
33
Project and Process Management
Techniques
Project Management Tools and Techniques

Gantt Charts

Effort and Duration:
 For each primitive task, the duration needs to be estimated.
• This will determine the length of the bars in the Gantt Chart.

Sample estimating technique:
• Estimate the minimum amount of time it would take to perform the
task - called the optimistic time (OT).
– The optimistic time estimate assumes that even the most likely
interruptions or delays — such as occasional employee
illnesses — will not happen.
• Estimate the maximum amount of time it would take to perform
the task - called the pessimistic time (PT).
– The pessimistic time estimate assumes that anything that can
go wrong will go wrong.
34
Project and Process Management
Techniques
Project Management Tools and Techniques

Gantt Charts

Effort and Duration:
 Sample estimating technique: (continued)
• Calculate the most likely time (MLT) that will be needed to
perform the task.
– Don't take the median of the optimistic and pessimistic times.
– Attempt to identify interruptions or delays that are likely to
occur, such as occasional employee illnesses, inexperienced
personnel, and occasional training.
• Calculate the expected duration (ED) as follows:
ED = OT + (4 x MLT) + PT
6
– This formula provides a weighted average of the various
estimates.
35
Project and Process Management
Techniques
Project Management Tools and Techniques

Gantt Charts

Predecessors and Constraints:
 The start of any given task may be dependent on the start or
completion of another previous task.
 Additionally, the completion of a task is frequently dependent
on the completion of a prior task.
 Milestones almost always have several predecessors that
signify those tasks that must be completed before you can say
that the milestone has been achieved.
36
Project and Process Management
Techniques
Project Management Tools and Techniques

Gantt Charts

Critical Path and Slack Resources:
 The critical path is a sequence of dependent project tasks that
have the largest sum of estimated durations.
• It is the path that has no slack time built in.
• If any of these tasks fall behind schedule, the project’s completion
date will be delayed.

The slack time available for any task is equal to the difference
between the earliest and latest completion times.
• Tasks that have slack time can get behind schedule by an amount
less than or equal to that slack time without having any impact on
the project’s final completion date.

Understanding the critical path and slack resources in a project
are indispensable to the project manager.
37
Project and Process Management
Techniques
Project Management Tools and Techniques

Gantt Charts

Resource Assignment and Management:
 Resources are people, material, and tools that you assign to the
completion of a task.
 Resources may be constrained by the following:
• Resources available to the project manager.
• Competition with other managers and project for a resource’s time.
• Calendars of resources.

Costs can be assigned to resources to assist in budgeting the
project.
• If actual time spent on tasks is also recorded, budgets can be
compared to actual expenses.
38
Project and Process Management
Techniques
Project Management Tools and Techniques

Gantt Charts

Using Gantt Charts to Evaluate Progress:
 One of the project manager's frequent responsibilities is to
report project progress to superiors.
 Gantt charts frequently find their way into progress reports
because they can conveniently compare the original schedule
with actual performance.
• If a task has been completed, the bar corresponding to that task is
completely shaded.
• If a task is partially completed, the bar corresponding to that task is
partially shaded.
– The percentage of the bar that is shaded should correspond to
the percentage of the task completed.
39
Project and Process Management
Techniques
Project Management Tools and Techniques

Gantt Charts

Using Gantt Charts to Evaluate Progress:
 Gantt charts frequently find their way into progress reports
because they can conveniently compare the original schedule
with actual performance. (continued)
• Unshaded bars represent tasks that have not begun.
• A bold vertical line that is perpendicular to the horizontal axis and
that intersects the current date assists in evaluating project
progress.
40
Project and Process Management
Techniques
Project Management Tools and Techniques

PERT Charts



PERT stands for Project Evaluation and Review Technique.
Was developed in the late 1950s to plan and control large weapons
development projects for the U.S. Navy.
 It was developed to make clear the interdependence of project
tasks when projects are being scheduled.
PERT is a graphic networking technique.
41
Project and Process Management
Techniques
Project Management Tools and Techniques

PERT Charts

PERT Definitions and Symbols:
 Like Gantt Charts, PERT charts projects are organized in terms
of tasks and milestones.
 A variety of symbols — circles, squares, and the like — have
been used to depict tasks and milestones on PERT charts.
42
Project and Process Management
Techniques
Project Management Tools and Techniques

PERT Charts

The Critical Path in a PERT Network:
 The critical path is a sequence of dependent project tasks that
have the largest sum of estimated durations.
 Each task appearing on the critical path is referred to as a
critical task.
• Critical tasks must be monitored closely by the project manager
because any delays in those tasks will delay the entire project.
43
Project and Process Management
Techniques
Project Management Tools and Techniques

PERT Charts

The Critical Path in a PERT Network:
 Critical path example:
Path 1:
Path 2:
Path 3:
Path 4:
A(3)
A(3)
A(3)
A(3)
B(2)
B(2)
B(2)
B(2)
C(2)
C(2)
C(2)
C(2)
D(7)
E(6)
F(3)
G(2)
H(5)
H(5)
H(5)
H(5)
• The total expected duration time for a path is equivalent to the sum
of the expected duration times for each task in the path.
Path 1:
Path 2:
Path 3:
Path 4:
3 + 2 + 2 + 7 + 0 + 5 = 19
3 + 2 + 2 + 6 + 0 + 5 = 18
3 + 2 + 2 + 3 + 0 + 5 = 15
3 + 2 + 2 + 2 + 5 = 14
• Path 1 is the critical path. It indicates that the expected time for
completing the programming project is 19 days.
44
Project and Process Management
Techniques
Project Management Tools and Techniques

PERT Charts

Using PERT for Planning and Control:
 The primary uses and advantages of the PERT chart lie in its
ability to assist in the planning and controlling of projects.
• In planning, the PERT chart aids in determining the estimated time
required to complete a given project, in deriving actual project
dates, and in allocating resources.
• As a control tool, the PERT chart helps the manager identify
current and potential problems.
– Particular attention should be paid to the critical path of a
project.
– When a project manager identifies a critical task that is running
behind schedule and that is in danger of upsetting the entire
project schedule, alternative courses of action are examined.
45
Project and Process Management
Techniques
Project Management Tools and Techniques

PERT Charts

PERT versus Gantt Charting:
 PERT is usually recommended for larger projects with high
intertask dependency.
 Gantt is recommended for simpler projects.
 PERT and Gantt charts can be used in a complementary manner
to plan, schedule, evaluate, and control systems development
projects.
 Most information systems project managers seem to prefer
Gantt charts because of their simplicity and ability to show the
schedule of a project.
46
Project and Process Management
Techniques
Expectations Management

The Expectations Management Matrix

Every project has goals and constraints when it comes to cost,
schedule, scope, and quality.
 Often you must strike a balance that is both feasible and
acceptable to management.
 That is the purpose of the expectations management matrix.
• An expectations management matrix is a rule-driven tool for
helping management appreciate the dynamics of changing project
parameters. The parameters include cost, schedule, scope, and
quality.
47
Project and Process Management
Techniques
Expectations Management

The Expectations Management Matrix

The basic matrix consists of three rows and three columns (plus
headings).
 The rows correspond to the measures of success in any project:
cost, schedule, and scope and/or quality.
 The columns correspond to priorities: first, second, and third.
• For purposes of establishing expectations, we assign names to the
priorities as follows:
– Maximize or minimize -- The most important of the three
measures in a given project.
– Constrain -- The second most important of the three measures
in a project.
– Accept -- The least important of the three measures in a
project.
48
Project and Process Management
Techniques
Expectations Management

The Expectations Management Matrix

The management expectations matrix helps (forces) management
to understand this through three simple rules:
 For any project, you must record three Xs within the nine
available cells.
 No row may contain more than one X. In other words, a single
measure of success must have one and only one priority.
 No column may contain more than one X. In other words, there
must be a first, second, and third priority.
49
Project and Process Management
Techniques
Priorities
Measures of Success
Cost
Schedule
Scope and/or Quality
Max or Min
50
Constraint
Accept
Project and Process Management
Techniques
Priorities
Measures of Success
Cost
Estimated at $20 billion
Max or Min
Constraint
X
Schedule
Deadline = December 31,1969
Scope and/or Quality
1. Land a man on the moon.
2. Get him back Safely.
Accept
X
X
51
Project and Process Management
Techniques
Expectations Management

The Expectations Management Matrix



At the beginning of any project, the project manager should
consider introducing the system owner to the matrix concept and
should work with the system owner to complete the matrix.
The project manager must never establish the priorities or even
suggest those priorities.
 The project manager merely enforces the rules.
A system owner who refuses to set priorities is an owner who may
be setting the project manager up for a no-win performance review.
52
Project and Process Management
Techniques
Expectations Management

Using the Expectations Management Matrix

During the course of the average systems development project,
priorities are not stable.
 Various factors such as the economy, government, and politics
can change the priorities.
53
Project and Process Management
Techniques
Priorities
Measures of Success
Cost
Max or Min
Constraint
X
Schedule
Scope and/or Quality
Accept
X
X
54
Project and Process Management
Techniques
Priorities
Measures of Success
Cost
(Record New Budget)
Max or Min
Accept
X+
Increase
budget
Schedule
(Record New Deadlines)
Scope and/or Quality
(Revise attachment that
describes scope and quality.
Be sure to date all new
requirements to distinguish them
from original requirements.)
Constraint
X-
Extend
deadline
X+
Accept
expanded
requirements
55
Project and Process Management
Techniques
Priorities
Measures of Success
Cost
Max or Min
Constraint
Step 1
Schedule
Scope and/or Quality
Accept
X
X
X
Step 2
56
Project and Process Management
Techniques
Expectations Management

Using the Expectations Management Matrix

There are three final comments about priority migration.
 Priorities may migrate more than once during a project.
• Expectations can be managed through any number of changes as
long as the matrix is balanced (meaning it conforms to our rules).
Expectation management can be achieved through any
combination of priority migrations and resource adjustments.
 It should be noted that system owners can initiate priority
migration even if the project is on schedule.

57
Project and Process Management
Techniques
People Management

Introduction


The management or supervision of project team members is
equally important to planning and controlling the project schedule,
budget, and expectations.
The One Minute Manager

The One Minute Manager by Kenneth Blanchard and Spencer
Johnson is an indispensable aid to anyone managing people for the
first time.
 The book highlights three basic management secrets:
• One-minute goal setting.
• One-minute praisings.
• One-minute reprimands.
58
Project and Process Management
Techniques
People Management

The Subtle Art of Delegation and Accountability


Most young and many experienced managers have difficulty
delegating responsibilities.
Worse still, they let subordinates reverse-delegate tasks back to the
manager.
 This leads to poor time management and manager frustration.
59
Project and Process Management
Techniques
People Management

The Subtle Art of Delegation and Accountability

In The One Minute Manager Meets the Monkey, Kenneth
Blanchard teams with William Oncken and Hal Burrows to help
managers overcome this problem.
 The solution is based on Oncken's classic principle of ``the care
and feeding of monkeys.''
• Monkeys refer to problems that managers delegate to their
subordinates who, in turn, attempt to reverse-delegate back to the
manager.
• This book the authors teach managers how to keep the monkeys on
the subordinates' backs.
• Doing so increases the manager's available work time, accelerates
task accomplishment by subordinates, and teaches subordinates
how to solve their own problems.
60
Project and Process Management
Techniques
Summary





Introduction
What is Project Management?
Process Management
Expectations Management
People Management
61
Download