Project Management zDefine project, project management, RAD, JAD zDescribe project management...

36
Project Management Define project, project management, RAD, JAD Describe project management activities Describe the advantages, disadvantages and characteristics of SDLC (System Development Life Cycle) and prototyping Describe the phases of SDLC Describe project dimensions affecting risk Discuss integration and project management tools to use in dealing with risk Discuss issues in managing behavioral factors

Transcript of Project Management zDefine project, project management, RAD, JAD zDescribe project management...

Project ManagementDefine project, project management, RAD, JADDescribe project management activitiesDescribe the advantages, disadvantages and

characteristics of SDLC (System Development Life Cycle) and prototyping

Describe the phases of SDLCDescribe project dimensions affecting riskDiscuss integration and project management tools

to use in dealing with riskDiscuss issues in managing behavioral factors

Project Management

Project - temporary endeavor undertaken to create a unique product or service may be divided into subprojects

Project management - application of knowledge, skills, tools and techniques to project activities to meet or exceed stakeholder needs and expectations from a project T.A.N.S.T.A.A.F.L.

Project Management Activities

Ensuring progress of project using metricsIdentifying risks and assessing the

probability of them occurring Ensuring progress toward deliverables

within constraints of time and resourcesRunning coordination meetings of the

project teamNegotiating for resources on behalf of the

project

Project ModelingCommon vocabulary (beyond data repository)TeamworkCycle PlanManagement

Demonstrated in SDLC and other approaches Project planning & requirements identification Project control (status, corrective action) Team management Organizational integration

Development Models

Systems Development Life CycleRapid Applications Development

(RAD)PrototypingJoint Applications Development

(JAD) (like RAD with users)Object-Oriented

Systems Development Life Cycle (SDLC)

OverviewSoftware Acquisition ChoicesSDLC OverviewSDLC:PhasesAlternative Approaches

SDLC - Prior Problems

Failure to meet: Budgets Schedules Expectations

TOO LITTLE…. TOO LATE

SDLC - Characteristics“Problem” or “Opportunity”Many names; Widely applicable“Analysis” vs. “Synthesis”Variance across stagesDisciplined approachSystems approachIterative (not sequential)Cyclical

SDLC - AdvantagesFocus on tradeoffsFocus on goalsControls: milestones, checklist,

accountabilityTools, models, CASEHierarchical decompositionDesigned for user & manager

involvement

SDLC - Reasons for Failure

Scope too broad or too narrowLack of needed skillsIncomplete specificationsNo control/no frameworkLack of management/user

involvementToo time-consuming

SDLC Phases

Initiation and FeasibilityRequirements DefinitionFunctional DesignTechnical Design and ConstructionVerificationImplementationMaintenance & Review

I. Initiation & Feasibility

Project objectives & ScopePreliminary survey & feasibility

Technical Economic Operational

Project proposal and scheduleIdentify assumptions & constraints

II. Requirements Definition

Problem/Opportunity definitionAnalyze current systemFocus on decisions and related

information needsDefine business functionalityPlan for training, user acceptance

Problem/Opportunity Definition

Symptoms vs. real problemsQuestion decision maker’s

statement of problemBound problem realisticallyTry to ascertain actual causeSometimes figuring out the

problem is half the solution

Analyze Current System

+ Understand activities involved+ Identify decision points+ Help identify problems &

deficiencies+ Be aware of history- Bias thinking

III. Functional DesignFocus on business needs

usability, reliability

Logical design Outputs Inputs Presentation Processes Databases Personnel

IV. Technical Design and ConstructionFinalize architecture and acquire

hardwareComplete technical definition of data

access and other system componentsMake (program) vs. buyDevelop test plansRevise schedule, plan and costs

V. VerificationProgram Testing

Structured walkthrough Code inspection Unit test Pairs testing

Verification, stress, user and security testing

VI. Implementation

Cut-over Parallel conversion Direct cut-over Pilot conversion Phased conversion

User training

VII. Maintenance and Review

Post-implementation audit Ends - information requirements (information, performance)

Means - processMaintenance (correcting bugs &

scheduled maintenance)Enhancement (adding functionality)

Rapid Applications Development (RAD)Like prototyping, uses iterative

developmentUses tools to speed up

development GUI reusable code code generation programming, language testing and debugging

Iterative Development

System Concept

Version “1”

Version “2”

Version “N”Software

Development Process

Uses of Prototyping

Verifying user needs

Verifying that design = specifications

Selecting the “best” design

Developing a conceptual understanding of novel situations

Testing a design under varying environments

Demonstrating a new product to upper management

Implementing a new system in the user environment quickly

Prototyping

Proposed Advantages Improved user

communication Users like it Low risk Avoids over-design Experimentation

and innovation Spreads labor to

user department

Disadvantages in practice Prototypes are used “as is”

Integration often difficultDesign flawsPoor performance

Difficult to manage process Creates unrealistic

expectations Documentation is difficult

Observed Effects of Prototyping

ease of use (+) user needs (+) unrealistic user

expectations (-) added features (?) poorer performance (-) mixed design quality mixed maintainability

less need more difficult to do

effort decreased (+) difficult cost-estimation

(-) end-user participation

increased (+) more expertise needed

(-) difficult planning &

control (-)

Software Product Software Process

Examples of Software Risk Items

personnel shortfalls unrealistic schedules/budgets developing wrong functionality developing wrong user interface “gold plating” continuing stream of requirements changes shortfalls in externally furnished

components shortfalls in externally performed tasks real-time performance shortfalls strained technical capabilities

Project Dimensions Affecting Risk

Project Size (relative to others) Interchangeable man months The pregnant lady

Experience with TechnologyProject structure

High vs. LowComplexity???

Low Company-Relative Technology

LOWSTRUCTURE

HIGHSTRUCTURE

LARGEPROJECT

Low Risk(susceptible to

mismanagement)

Low Risk

SMALLPROJECT

Very LowRisk

(susceptible tomismanagement)

Very LowRisk

High Company-Relative Technology

LOWSTRUCTURE

HIGHSTRUCTURE

LARGEPROJECT

Very HighRisk

MediumRisk

SMALLPROJECT

HighRisk

Medium-Low Risk

Tools for Project Management

External integration tools (beyond project team)

Internal integration tools ( within project team)

Formal planning toolsFormal results-control

mechanisms

Integration ToolsEXTERNALUser project managerUser specification

approval processUser-managed control

processUsers as team

membersUser responsibility for

education&installation

INTERNAL IT professional team

leaderFrequent team

meetingsRegular technical

status reviewsOutside technical

assistanceGoal setting by team

Tools of Project Management

Formal Planning ToolsPERT, CPMMilestonesSystems specification

standardsFeasibility study

specificationsProject approval

processesPostaudit procedures

Formal Control Tools

Periodic formal status reports vs. plan

Change control disciplines

Regular milestone presentation meetings

Deviations from plan reports

Project Management Tools - Low Structure

ProjectDescription

ExternalIntegration

InternalIntegration

FormalPlanning

FormalControl

Low tech,large

High Medium High Hign

Low tech,small

High Low Medium High

High tech,large

High High Low+ Low+

High tech,small

High High Low Low

Project Management Tools - High Structure

ProjectDescription

ExternalIntegration

InternalIntegration

FormalPlanning

FormalControl

Low tech,large

Low Medium High Hign

Low tech,small

Low Low Medium High

High tech,large

Low High Medium Medium

High tech,small

Low High Low Low

LimitedExtensiveModerateExtensiveModerateHigh

HighIn-House Developme

nt

Extensive

ModerateExtensive

Difficult Complex

LimitedModerateHigh

HighEnterprise-Wide

Systems

LimitedExtensiv

e

Not Applicabl

e

Not Applicable

LimitedModerateModerateHigh

Outsourced Developme

nt

LimitedExtensiv

e

ModerateExtensive

ModerateLimitedExtensive

ModerateModerateHigh

Customized Software

LimitedModerateModerateLimitedLowModerate

LowModerate

Packaged Application

s

Firm-Wide

Impact

Maintenance

Ease of Installation

Meets Needs

RiskCostMethod

Comparison of Software Acquisition Choices

Managing Behavioral FactorsBalance goals of stakeholders

project manager customer end-user (there’s a difference) sponsor

Sustain commitment project psychological (personal responsibility, biases) social (rivalry, norms for consistency) organizational (political support, culture)