Download Managing Application Development

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

International Council of Management Consulting Institutes wikipedia , lookup

Management wikipedia , lookup

Investment management wikipedia , lookup

Project management wikipedia , lookup

Transcript
Chapter 9
Managing Application
Development
Introduction
• Firms can choose to develop applications
internally for
– Large, unique applications
– Important strategic applications
• This allows firms to
– Control proprietary information
– Retain ownership of exclusive / valuable
databases
Introduction
• Successfully directing internal application
development is a critical success factor for
managers
• Weak or ineffective management is the
most frequent and expensive source of
developmental difficulties
• Delivering on-time, on-budget, applications
that fulfill the client’s expectations is a true
test of a manager's skill
Challenges of Application
Development
• History is littered with huge application
development failures and enormous waste
– FAA air traffic control system - $7 billion
– IRS computer auditing system - $4 billion
– Denver International Airport - $190 million
• The cost to industry of “small” failures in
total easily surpasses all of the above
combined
• The hidden cost of IT – failure is never
advertised
Reasons for Development
Difficulties
• Program development is extremely difficult
– The task itself is complex
• Large application programs consist of many parts
that must function together
• No one person understands the entire task
– The environment is complex
• Multiple agendas, priorities, goals, and directions
• The business has changed and evolved during the
development lifecycle, and the product is out of
step with the current environment
Size and Cost of Common
Application Programs
Reasons for Development
Difficulties
• The process of programming is still a
cottage industry
– Skilled coders produce better code than poor
coders, but the management tools to
distinguish the two are lacking
– Rigid programming environments yield more
predictable results, but don’t incorporate
changes well
– Flexible environments respond well to change
but have difficulty producing a usable product
Firm Induced Difficulties
• Environmental factors
• Inadequate developmental and testing
tools
• Improperly skilled coders
• Failure to incorporate best practices
• Weak management control systems
• Large differences exist between executive
expectations and program manager’s
ability to deliver
Application Project Management
• Application development managers often
achieve low success rates due to critical
differences between managing application
projects and other projects
• Successful managers must implement a
stepwise approach of activities and
corresponding controls that together guide
the development effort
Steps in the Application Project
Management Process
1.
2.
3.
4.
5.
6.
Business case development
Phase review process
Managing the review process
Resource allocation and control
Risk analysis
Risk reduction strategies
Application Life-Cycle
• Concepts for new applications emerge
• Ideas are developed
• Applications are designed and
implemented
• They are maintained and enhanced
• They are replaced
Traditional Life-Cycle Approach
• The complex development task is divided
into phases, each of which culminates in a
management review. There are many
advantages including:
– Complex activities are more easily understood
– Skill sets can be more closely matched to the
task
– Requires managers to evaluate the project
and make corrections midcourse
The Waterfall Life Cycle
Phases in the Development Life
Cycle
1.
2.
3.
4.
5.
6.
Initial Investigation
Requirements Definition
General Design
Development
Installation
Post-Installation Activities
Business Case Development
• The business case itemizes investment
resources and estimates investment
returns
• Must address tangible and intangible costs
• Application owners must be responsible
for producing the business case
• The application development manager
must propose the most cost effective
solution
The Business Case
• Establish objectives that the development
activity must meet
– Objectives are the reasons to pursue the
activity
• Analyze the costs and benefits associated
with application development
– This must be repeated for each alternative
– Understanding the current situation is key to
analyzing future solutions
The Business Case
• To accurately assess the operational
costs, the analysis period may extend out
to five years
– Need to consider the time value of money
– Judgment calls are needed to quantify cost
across all departments involved
– Costs must include personnel, benefits,
training, hardware, travel, and other related
expenses
The Business Case
• Return on investment calculations
– Payback Method – predicts when operating
benefits exceed operational cost
– Net Present Value (NPV) – incorporates the
time value of money into calculations
– Internal Rate of Return (IRR) – takes into
account time value of money and the project’s
lifespan
• Much more involved analysis of cost than the other
two methods
The Phase Review Process
• Phases are logical segments of work
• Control aspects of each phase include:
– Scope
– Content
– Resources
– Schedule
• The phase review process allows
managers to inspect the progress made
and make decisions for future work
Information for a Phase Review
•
•
•
•
•
•
•
•
Written project description
Well-defined goals, objectives, and benefits
Budgets and staffing plans
Specific tasks planned vs. tasks accomplished
Risk assessment
Statement of plans vs. actual accomplishments
Asset protection / business control plans
Client concurrence with objectives and plans
Information for a Phase Review
• Phase reviews produce documented
results that are helpful for implementation
of future phases
• The application’s owner must concur that
the work meets expectations before
proceeding
• Phases can overlap, but checkpoints must
be established allowing managers to track,
measure, and authorize continuation
Phase Review Objectives
• The goal of phase reviews is to measure
the accomplishment of agreed-upon
objectives within the planned time and
cost parameters
– Must lead to an accurate analysis
– Managers must be prepared to develop
alternate action plans based on findings
– Reviews must be inclusive
– Documentation of the review must be
produced
Timing of Phase Reviews
• Phase reviews occur at the end of each
phase
• If phases are longer than 6 months then
interim reviews should be planned
• In large projects with multiple subsystems,
phase reviews are necessary for each
subsystem
– Each review must establish, alter, or confirm
schedules for subsequent phase reviews
Phase Review Contents
• Phase 1 – Initial investigation phase
– Begins with an idea for new application or
enhancement
– Usually originates within the department using
or needing the application
– Analysts conduct preliminary reviews and
generate requirements
– Develop preliminary system concepts and
generate design alternatives
Phase 1 Review
•
•
•
•
•
•
•
•
Statement of need and estimate of benefits
Schedule and cost commitments for Phase 2
Preliminary project schedule
Preliminary total resource requirements
Project dependencies
Analysis of risk
Project scope
Plans for Phase 2
Phase 2
• The requirements definition phase
– Consists of modeling the existing system and
deriving a logical equivalent to which the new
system requirements are added
– Creates a logical model of the new system
– Updated costs and benefits are developed
– Auditability requirements are established
– System performance criteria are created
Phase 3
• Development of external and internal
general design specifications
– System software specs are refined
– Utility program requirements are specified
– Hardware requirements and system
architecture definitions are finalized
– System documentation and user training
plans are created
– Plans for Phase 4 are created
Phase 4
• Actual program development
– Development
– Building
– Unit testing
– System installation
– File and data conversion strategies are
addressed
– User training plans and program
documentation are completed
Phase 5
• Application installation
• User training and application
documentation is completed
• Acceptance testing is completed
• File and data conversions are completed
• With the completion of the Phase 5 review,
the new system goes live
Phase 6
• Post-installation activities
– Review of the management techniques used
with “lessons learned”
– Original specs and objectives are used to
evaluate the final implementation
– Review of cost estimates and plans to
improve estimation techniques
The Participants
• IT managers
– They direct the process
• Owners of the application system and data
• Key client managers
• Representatives of all functions affected or
affecting the project
• Senior executives when the application’s
significance rises to that level
Phases for Large Projects
• The terms large and complex are in
relation to the organization's size or skills
• The phase list may include more events
– Generally, these are included in the design
and development phases
• Project managers must schedule
additional checkpoints within each phase
to establish finer control of the process
Managing the Review Process
• Documentation of each phase review must
be clear and concise
– Project’s scope, content, resources, and
schedule
– Statement of the assumptions and
dependencies involved in each phase and in
the overall plan
– All parties must concur on the document;
management must resolve differences and
understand their genesis
Resource Allocation and Control
• Different resources and skill sets are in
demand across the project lifespan;
managers must track and control these
assets as they would any other corporate
resource
• The application development plan must
describe resource deployment by skill type
• Deviations from the plan must be
investigated and underlying causes sought
Major Causes of System Failures
Risk Analysis
• Managers must constantly track a project’s
health and measure leading indicators to
avert project failure
• Risk analysis is a proactive activity
– The metrics necessary to avert trouble are
much more difficult to generate and assess
than coincident and lagging ones
– Following coincident and lagging indicators
allows a manager to accurately document the
ongoing failure of a project – not a value add
Sources of Risk
Detailed Risk Items
Detailed Risk Items
Risk Trends
• As the program proceeds toward
implementation, risk declines
– Increases in risk with time is an indicator of
potential project failure
• Risk analysis enables project managers to
take corrective action when risk is small,
before missing commitments
Risk Reduction Actions
• Problem management is a major task for
project managers
• Risk analysis is an analytical tool that
warns of impending difficulties
• Managers can act to solve problems when
they are small and manageable
More on the Life-Cycle
• Disadvantages
– Tangible client results come late in the cycle
– Initial project/application requirements must
remain stable
– The process is paper-intensive and
bureaucratic
– Parallel activities are permitted, but are not
encouraged
Programming Process
Improvements
• Stable, rigorous development
environments encourage design and
programming practices and techniques
that reduce error injection and increase
defect discovery and removal
• With the rapid development approach in
Chapter 8, time to market is optimized at
the cost of prolonged post-rollout coding
and increased maintenance costs
Successful Application
Management
• Flows from well-designed, smoothly
functioning management systems
– Thrives on controlled processes, yields
predictable results, and deals effectively with
increased complexity
– Successful application management yields
predictable products that contribute important
assets to the organization
Summary
• Application development is a difficult
management task
• Disciplined processes must supplant ad
hoc management techniques
• Application management systems build on
the firm’s established management
processes
• IT application development is seen as a
value add to the firm’s strategic plan