agility, governance and productivity - ibm-+murray+cantor+-+cantor... · agility, governance and...

38
© 2007 IBM Corporation What keeps me Rational? IBM Rational Software Development Conferences 2007 ® Agility, governance and productivity Dr. Murray Cantor Distinguished Engineer, IBM Rational software

Upload: phungdien

Post on 02-May-2018

216 views

Category:

Documents


2 download

TRANSCRIPT

© 2007 IBM Corporation

What keeps me Rational?

IBM Rational Software Development Conferences 2007

®

Agility, governance and productivity

Dr. Murray CantorDistinguished Engineer, IBM Rational software

IBM Rational Software Development Conference 2007

What keeps me Rational?

Topics

� Uncertainty and development risk

� Value and Productivity

� Governance to improve productivity

� Governance for agility

IBM Rational Software Development Conference 2007

What keeps me Rational?

Topics

� Uncertainty and development risk

� Value and Productivity

� Governance to improve productivity

� Governance for agility

IBM Rational Software Development Conference 2007

What keeps me Rational?

Imagine you have 12 months to deliver a business critical system

� Your estimators tell you it will be done in 11 months

� What do you do with the information?

� Rest easy, believing there is no risk?

0 6 12

IBM Rational Software Development Conference 2007

What keeps me Rational?

Maybe you realize that program parameters (cost, schedule, effort, quality, …) are random variables

• Area under curve describes probability of measurement falling inrange

0.80

1.20

1.60

2.00

2.40

2.80

3.20

3.60

4.00

4.40

4.80

5.20

5.60

6.00

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0

0.00

0.40

Likelihood of actual value falling in range

is area under curve

IBM Rational Software Development Conference 2007

What keeps me Rational?

Imagine you have 12 months to deliver a business critical systems

� So you ask for the distribution and discover there is some uncertainty

0 6 12

IBM Rational Software Development Conference 2007

What keeps me Rational?

Imagine you have 12 months to deliver a business critical systems

� In fact there is less than 50% chance of making the date

0 6 12

48%

IBM Rational Software Development Conference 2007

What keeps me Rational?

Then what?

� Move out the date to improve likelihood of shipping?

0 6 12 15

95%

IBM Rational Software Development Conference 2007

What keeps me Rational?

Then what?

� Or move in the estimate by sacrificing quality or content?

0 6 12

95%

IBM Rational Software Development Conference 2007

What keeps me Rational?

The estimate variance reflects current state of understanding� Source

�Lack of knowledge

�Lack of confidence

� Reduction of variance reflects

�Increased knowledge about

� Client needs

� Technology

� Team capability

�Good Decisions0.80

1.20

1.60

2.00

2.40

2.80

3.20

3.60

4.00

4.40

4.80

5.20

5.60

6.00

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0

0.00

0.40

IBM Rational Software Development Conference 2007

What keeps me Rational?

Then what?

� Determine the source of the variance

� Over the project lifecycle, reduce the variance to improve likelihood

0 6 12

90%

IBM Rational Software Development Conference 2007

What keeps me Rational?

Then what?

� Over the lifecycle, reduce the variance further to improve likelihood

0 6 12

95%

IBM Rational Software Development Conference 2007

What keeps me Rational?

Medium Variance

Risk reduces with completeness of information

Time

Variance in Cost, Schedule…

Project Lifecycle Phases

Inception Elaboration Construction Transition/Maintenance

High Variance Low Variance

80% reduction

96% reduction

IBM Rational Software Development Conference 2007

What keeps me Rational?

The two keys to reducing variance

� Managed Collaboration

�Well identified roles, decision rights, …

� Enabled by agile collaboration environment

� Iterative development

� Each iteration should reduce remaining project variance, i.e. improve certainty of successful delivery.

IBM Rational Software Development Conference 2007

What keeps me Rational?

Uncertainty in Uncertainty in deliverydelivery

Actual Path

Each iteration should reduce variance

Uncertainty in Stakeholder

Satisfaction Space

Initial Planned Initial Planned ContentContent

Initial Planned Path

IBM Rational Software Development Conference 2007

What keeps me Rational?

Topics

� Uncertainty and development risk

� Value and Productivity

� Governance to improve productivity

� Governance for agility

IBM Rational Software Development Conference 2007

What keeps me Rational?

How much is an incomplete development program worth?

� Conventional wisdom provides no opportunity for ongoing value management

� Net present value/Options theory: project increases value when

�Decrease variance of time/effort/cost to complete –

� improve likelihood of success

�Increase upside variance of value delivered

� Robustness, reuse.

0 6 Ship date

Conventional Wisdom

NPV/Options Theory

Value

IBM Rational Software Development Conference 2007

What keeps me Rational?

ProductInnovation

OperationalEfficiency

ClientIntimacy

Your Business?

Business value

Based on The Discipline of Market Leaders by Michael Treacey and Fred Wiersma

IBM Rational Software Development Conference 2007

What keeps me Rational?

Two questions you should be able to answer:

ProductInnovation

OperationalEfficiency

ClientIntimacy

Your Business?

How does your business/organization deliver value?

Medium Variance

Inception

Elaboration Construction Transition/Maintenance

High Variance

Low Variance

Innovation

Client Intimacy

Operational Efficiency

How do your development projects support the value delivery?

IBM Rational Software Development Conference 2007

What keeps me Rational?

What we really mean by productivity

� Productivity is the most effective use of staff time

� Kinds of productivity

�Efficiently increase likelihood of successful delivery with right amount of staff

� Writing the right code

� Removing risk of a bad outcome

�Creating return/value on expense

IBM Rational Software Development Conference 2007

What keeps me Rational?

How should we measure productivity?

� Code lines/programmer hour?

�Maybe, if you in the code lines business

� Function points/programmer hour?

�Maybe, if you in the function point business

� Change requests/programmer hour?

�Maybe, if you in the change request business

� What if you are in the telecom, banking, system development… or embedded device business?

�Need to measure value/prog hr

IBM Rational Software Development Conference 2007

What keeps me Rational?

Achieving business productivity

� In governance process plan phase, agree with stakeholders on value metrics, augment with roi, irr, roa ….

� Calculate metric per programmer month as appropriate

� In design phase, choose internal measures (klocs, churn …)that contribute to business value.

� In monitor phase, report and adjust metrics

� Maintain metrics history for tracking improvement

IBM Rational Software Development Conference 2007

What keeps me Rational?

Topics

� Uncertainty and development risk

� Value and Productivity

� Governance to improve productivity

� Governance for agility

IBM Rational Software Development Conference 2007

What keeps me Rational?

The different perspectives of governance

� Policy-driven�Execution of externally imposed processes, policies

� e.g., HR, spending guidelines …

�Addresses business risk, regulatory compliance

� Results-oriented

�Better decisions to achieve better outcomes

�Balancing risk and value

�Improved culture

� Architecture alignment

�Business alignment

� Operational

�The processes of:

� Setting decision-rights, controls, measures

� Deploying the execution environment supporting governance solution

The operational perspective is key to achieving business value and productivity

IBM Rational Software Development Conference 2007

What keeps me Rational?

Operational Perspective: Governance is a process to create and maintain the governance solution

The governance solution lifecycleSome governance solution artifacts

� Responsible Accountable Consulted Informed (RACI) matrices

� Governance effectiveness measures

� Operation metrics specifications

� Policy libraries

� Compliance specifications

� Governance Deployment architecture

– Process choreography

– Policy enforcement

– Metrics collection and reporting

– Compliance audit trails

Design, deploy, and automate governance solution (controls and measures; organizations; roles and responsibilities, polices, and compliance)

Evaluate and analyze results against current business and IT objectives; determine value and risk of IT and other resources; provide business insight and use it to improve the governance solution

Set business and IT objectives, set scope, policies and practices; set measurable goals

Execute governance solution; monitor operational performance, compliance and risk events;

Manage

Assess

Set Objectives

Design

Deploy

Plan

Implement

ControlMonitor

Evaluate

AnalyzeGovernanceLifecycle

Design, deploy, and automate governance solution (controls and measures; organizations; roles and responsibilities, polices, and compliance)

Evaluate and analyze results against current business and IT objectives; determine value and risk of IT and other resources; provide business insight and use it to improve the governance solution

Set business and IT objectives, set scope, policies and practices; set measurable goals

Execute governance solution; monitor operational performance, compliance and risk events;

Manage

Assess

Set Objectives

Design

Deploy

Plan

Implement

ControlMonitor

Evaluate

Analyze

Manage

Assess

Set Objectives

Design

Deploy

Plan

Implement

ControlMonitor

Evaluate

AnalyzeGovernanceLifecycle

IBM Rational Software Development Conference 2007

What keeps me Rational?

Governance process and the governed processes

� Processes are characterized by the lifecycle of their artifacts

�Examples range from entire programs to a change request or block of code

�As artifacts evolve through their lifecycle, decisions must be made, i.e., decision points

� In the governance process, each decision point is addressed by elements of the governance solution:

�Assigning decision rights

�Specifying appropriate policies to guide or constrain the decision

�Associated metrics to support the decision

�Compliance records to document the decision

� Executing the governance process may entail new organization role

IBM Rational Software Development Conference 2007

What keeps me Rational?

Development governance is applying governance to processes carried out by development organizations

Project

� Program management

� Release management

� Change Management

� Configuration Management

� …

Organization

� Value management

� Portfolio management

� Estimation

� Compliance

� …

IBM Rational Software Development Conference 2007

What keeps me Rational?

Some value metrics for innovation and product leadership

Customer growth

Revenue per customer

Does it establish new markets for the corporation?

Cycle time

Architecture value

How quickly can the product be delivered?

Revenue growth

Portfolio value

Project value

What new sets of value can the products deliver?

MetricsObjective

IBM Rational Software Development Conference 2007

What keeps me Rational?

Some value metrics for operational efficiency

Klocs/prog month

Function points/prog month

Code productivity

Cycle time

Test execution cost in $ for a release

Time to delivery

Uptime

Mean and variance of time to recovery

System stability

Transactions/sec

Mean and variance of response time

System throughput

MetricsObjective

IBM Rational Software Development Conference 2007

What keeps me Rational?

Value metrics for client Intimacy

Number of enhancements

Cycle time for enhancements

Requested enhancements delivered

Customer reported defects

Customer support calls

Customer defects reduced

Customer support calls reduced

MetricsObjective

IBM Rational Software Development Conference 2007

What keeps me Rational?

Topics

� Uncertainty and development risk

� Value and Productivity

� Governance to improve productivity

� Governance for agility

IBM Rational Software Development Conference 2007

What keeps me Rational?

Project agility

� Ability to respond to changing requirements, dependencies

� Apply governance process to distribute rights to foster extended team learning

Medium Variance

Inception Elaboration Construction Transition/Maintenance

High Variance Low Variance

Innovation

Client Intimacy

Operational Efficiency

IBM Rational Software Development Conference 2007

What keeps me Rational?

Kinds of development: Initial variance

Medium Variance

Little discovery

Variance in Cost, Schedule…

Inception Elaboration Construction Transition/Maintenance

HighVariance

LowVariance

New platform

architectureChange

requests to existing code

New capability

with existing

architecture

Some discovery

Much discovery

IBM Rational Software Development Conference 2007

What keeps me Rational?

Tailoring the governance solution

� Kind of value for organization processes

� Kind of projects

�Full variance – foster discovery and learning

�Medium Variance – architecture alignment, lean methods

�Low variance – focus on automation, cost

Medium Variance

Little discovery

Variance in Cost, Schedule…

Inception Elaboration Construction Transition/Maintenance

HighVariance

LowVariance

New platform

architectureChange

requests to existing code

New capability

with existing

architecture

Some discovery

Much discovery

Medium Variance

Little discovery

Variance in Cost, Schedule…

Inception Elaboration Construction Transition/Maintenance

HighVariance

LowVariance

New platform

architectureChange

requests to existing code

New capability

with existing

architecture

Some discovery

Much discovery

IBM Rational Software Development Conference 2007

What keeps me Rational?

Organization agility

� Ability to respond to changing business needs, i.e., staying aligned

� Execute governance solution periodically revisiting business needs

Design, deploy, and automate governance solution (controls and measures; organizations; roles and responsibilities, polices, and compliance)

Evaluate and analyze results against current business and IT objectives; determine value and risk of IT and other resources; provide business insight and use it to improve the governance solution

Set business and IT objectives, set scope, policies and practices; set measurable goals

Execute governance solution; monitor operational performance, compliance and risk events;

Manage

Assess

Set Objectives

Design

Deploy

Plan

Implement

ControlMonitor

Evaluate

AnalyzeGovernanceLifecycle

Design, deploy, and automate governance solution (controls and measures; organizations; roles and responsibilities, polices, and compliance)

Evaluate and analyze results against current business and IT objectives; determine value and risk of IT and other resources; provide business insight and use it to improve the governance solution

Set business and IT objectives, set scope, policies and practices; set measurable goals

Execute governance solution; monitor operational performance, compliance and risk events;

Manage

Assess

Set Objectives

Design

Deploy

Plan

Implement

ControlMonitor

Evaluate

Analyze

Manage

Assess

Set Objectives

Design

Deploy

Plan

Implement

ControlMonitor

Evaluate

AnalyzeGovernanceLifecycle

IBM Rational Software Development Conference 2007

What keeps me Rational?

Rational supports the full range of variance faced by development projects

Medium Variance

Little discovery

Variance in Cost, Schedule…

Inception Elaboration Construction Transition/Maintenance

HighVariance

LowVariance

Some discovery

Much discovery

Analysis, Modeling, Design & Construction

Change Configuration & Release Management

Requirements & Analysis

Software Quality Management

Traditional Programming Languages & Compilers

Process and Portfolio Management

IBM Rational Software Development Conference 2007

What keeps me Rational?

Some final thoughts

The choice is not between governance and no governance.

The choice is between good and bad governance.

Good governance increases productivity and agility.

Good governance requires attention.

IBM Rational Software Development Conference 2007

What keeps me Rational?

Thank You