11022006 - Integrating ITIL With the Software Development Process - Annual

30
Integrating ITIL with the Software Development Process Dhiraj Gupta IT Manager Mark Stehlik IT Director

description

11022006 - Integrating ITIL With the Software Development Process - Annual

Transcript of 11022006 - Integrating ITIL With the Software Development Process - Annual

Page 1: 11022006 - Integrating ITIL With the Software Development Process - Annual

Integrating ITIL with the Software Development Process

Dhiraj GuptaIT Manager

Mark StehlikIT Director

Page 2: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

Agenda

• Why integrate ITIL with the Software Development Process?

• Progressive Operations Framework (POF)– Overview– Planning Areas– Implementation

• Questions

Page 3: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

IT – A tale of two Departments

Typical IT Life CycleConflicting Incentives

Speed of Delivery

Unstructured Communication

Stability

Ineffective Coordination

Insufficient Collaboration

Analysis

Test

Design

ConstructSolution Development Operate

Change

Support

OptimizeIT Service DeliveryBusiness Need IT Service

Enterprise

Architecture

Liaison

Page 4: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

IT – A tale of two Departments

ISO 9000

CobiT

SDLC

CMMiSEI

AgileAgile Alliance

MOFMicrosoft

ITILOGC, UK

Six Sigma

Software Development Operations

Functional Operational

Separate Process Control Frameworks …

… accentuate Enterprise IT Integration Challenges

Page 5: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

IT – A tale of two Departments

Software not designed for Operability and Supportability

Operations Processes not geared for Service Management

Net Result …

Page 6: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

IT – A tale of two Departments

Systematic Integration of ITSM best practices with the Software Development Process …

… can effectively bridge the AD – Operations gap thru the introduction of non-functional requirements into the

Software Development Process

Progressive Operations Framework

Analysis

Test

Design

ConstructSolution Development Operate

Change

Support

OptimizeIT Service DeliveryPOFBusiness Need IT Service

Page 7: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

ITIL & Software Development

“Design for non-functional requirements means giving non-functional requirements a level of importance similar to that for the functional requirements, and including them as a mandatory part of the design phase.”

Page 8: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

ITIL & Software Development

IT Service

What comes first?

IT Service

Management

While it is important to have an effective IT Service Management Program, it is equally important to develop IT Services that are

manageable in the first place

Page 9: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

ITIL & Software Development

The second I in ITIL is misleading …

Its not all about the InfrastructureIts about the alignment of IT, both

Applications and Infrastructure, with the Business Need

Page 10: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

POF Overview

• Link between Software Development and IT Service Delivery (Operations)

• Framework to drive non-functional requirements thru the Software Development process

• Ensures that Operability and Supportability issues are addressed as part of the software design and development efforts and not as an afterthought

• Defines 57 Planning Areas for Software Development

• Based on ITIL best practices• Follows MOF structure

Page 11: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

POF Overview - MOF

Page 12: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

POF Overview

© Progressive Insurance All rights reserved.

Thursday, March 09, 2006Progressive Operations Framework – MOF View

Release Readiness Review

POF

Operatin

gSupporting

Optimizi

ng ChangingSLA Review

Change Management· Change Management System· Change Categorization & Prioritization Rules· Change Advisory Board· Integrated Change Calendar

Configuration Management· Configuration Management Plan· Configuration Database· Configuration Status Accounting and Audit

Release Management· Release Policy· Definitive Software Library· Build Process· Acceptance Testing· Rollout / Rollback Process

· Support Plan· Support Statistics Reporting

Service Desk· Error Handler & Logger· Incident Data Capture Tools· Service Desk Training & Communication· Known Error Database

Incident Management· Incident Database· Event Response Guides· Escalation Process

Problem Management· Incident Correlation & Trend Analysis· Application Tracing· Problem Prioritization Rules

Security Management· Data Classification· Authentication System· Authorization System· Confidentiality Mechanisms· Security Administration Tools· Security Audits

Storage Management· Data Archival

System Administration· Operations Guide

Service Level Management· Service Catalog· Service Level Requirements· Service Level Metrics Definition· Service Level Definition (SLA, OLA)

Financial Management· Service Usage Accounting· Service Usage Reporting & Trend Analysis

Capacity & Performance Management· Software Performance Engineering· Application Sizing· Application Instrumentation (Capacity,

Performance, Business Metrics)· Instrumentation Database· Capacity & Performance Modeling· Capacity & Performance Reporting & Trend

Analysis

Availability Management· Component Failure Impact Analysis· Maintenance Planning· Application Instrumentation (Availability Metrics)· Availability Reporting & Trend Analysis

Service Continuity Management· Business Impact Analysis· Environmental & Hardware Redundancy· Data Redundancy· Vendor Redundancy Management· Fault Tolerance

· DSL Backup & Recovery· Documentation Backup & Recovery· Data Backup & Recovery· Disaster Recovery Planning

Page 13: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

POF Planning Areas

Activities, Processes, and Tools that must be employed during the life cycle of an application, specially the design, development and operations stages, in order to deliver virtually perfect IT service

POF Planning Areas include: AD Activities – Service Level Requirements AD Processes – Software Performance Engineering (SPE) Operational Tools – Application Instrumentation Operational Activities – Capacity and Performance Modeling Operational Processes – Change Management

Page 14: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

POF Planning Areas

• High Level• General Recommendation• Descriptive, Not Prescriptive• Not universally applicable• Assume Ideal Implementation – Systematic Approach

• Most IT projects, however, are Opportunistic in nature, where timeliness takes precedence over planning, discipline and control

• Assumes no resource or schedule constraints• Assumes that Operations and Support Infrastructure

exists (eg. Help Desk exists)• Some Planning Areas are quite specific to Progressive

Page 15: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

Service Level Management

Service Level RequirementsCapacity Requirements

Performance Requirements

Availability Requirements

Service Catalog

Service Level Metrics DefinitionCapacity Metrics

Performance Metrics

Availability and Reliability Metrics

Business Metrics

Service Level DefinitionService Level Agreement

Operational Level Agreements

SLA Reviews

Page 16: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

Capacity and Performance Management

Capacity and Performance Requirements

Service Level RequirementsCapacity Requirements

Workload DefinitionsGrowth Estimates

Performance Requirements

Capacity Data Collection

Software Performance EngineeringPerformance

Benchmarks and Stress Test Results

Application Instrumentation

Capacity, Performance and Business Data

Metrics

Capacity and Performance Modelling / SimulationsCapacity and Performance

Forecasts

Capacity , Performance and Business Metrics

ReportingTrend Analysis

Usage and Exception Reports

Change Management

Reactive Performance Management

Proactive Capacity Management

Application SizingHardware / Software

Configurations

Implementation

Capacity Enhancements

Performance Tuning

Service Catalog

Service Level Metrics DefinitionCapacity Metrics

Performance MetricsPerformance Thresholds

Business Metrics

SLA Reviews

Incident Management

Capacity, Performance,

Availability Management DB

Page 17: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

Availability Management

Service Level RequirementsAvailability Requirements

Availability Data Collection

Component Failure Impact Analysis

Hardware / Software Configurations

Application Instrumentation

(Availability)Availability and

Reliability Data Metrics

Availability and Reliability Reporting

Availability and Reliability Reports

Change ManagementImplementation

Availability Enhancements

Service CatalogService Level Metrics

DefinitionAvailable and Reliability Metrics

SLA Reviews

Incident Management

Application DesignInfrastructure Diagram

Maintenance Planning

Planned OutagesUn-planned Outages

Capacity, Performance, Availability

Management DB

Page 18: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

Service Continuity Management

Service Level Requirements

Availability Requirements

Disaster Recovery Exercise

Environmental and Hardware RedundancyRedundant Configuration

Fault ToleranceFault Tolerant

Design

Definitive Software Library Backup and Recovery Strategy

(Source Code, Executables)

Data Backup and Recovery Strategy

Documentation Backup and Recovery

Strategy

Disaster Recovery Planning

Data Redundancy

Vendor Redundancy Management

Implementation

Business Impact Analysis

Business Impact Statement

Page 19: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

Financial Management

Service Catalog

Service Usage Accounting

Capacity, Performance,

Availability Management DB

Service Usage Reporting / Trend Analysis

SLA Reviews

Page 20: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

Change, Configuration, and Release Management

Develop and Test Change

Configuration Management Plan

Configuration Status Accounting and Audit

Configuration Database

Change Management System

Change Advisory Board

Change Categorization and Prioritization Rules

Approved C

hanges

ConfigurationChanges

Request For Change

Infrastructure Changes

Integrated Change Calendar

Approved

Changes

ImpactAssessment

Release Policy

Build Process

Acceptance Testing

Release Readiness Review

Definitive Software Library

Implementation

Release ManagementConfiguration Management Change Management

UpdateD

SL

Rollout / Rollback Process

Page 21: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

Service Desk, Incident, and Problem Management

Error Handler and Logger

Service Desk Training and Communication Escalation

Process

Application Tracing

Incident Correlation and Trend Analysis

Problem Prioritization

Rules

Change Management

Problem Management

Service Desk

Incident Management

Capacity, Performance and Business Metrics

Monitors

Availability Monitors

Support Statistics Reporting

Support Plan

Known Error Database

Configuration Database

Incident Data Capture Tools

End Users

Event Response Guides

Incident Database

Service Level Requirements

Support Requirements

Page 22: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

Security Management

Data Classification

Authentication System Authorization System Confidentiality Mechanism Security Audits

Security Administration

Page 23: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

System Administration & Storage Management

Operations Guide Data Archival

System Administration Storage Management

Page 24: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

POF Implementation - Principles

• Ownership of all aspects of the software; not just functional, by the application development teams

• Dedicated Operational Architecture team within application development area to generate and drive the implementation of non-functional requirements

• Embed senior technical resources from operations with application development teams from project inception to deployment

• Integrate ITSM best practice based non-functional requirements into the software development cycle

• Actionable non-functional requirements for developers– Gold Standard Code Examples

• Communicate, Coordinate, Collaborate– POF Steering Committee

Page 25: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

ITIL Integrated with the Software Development Process

© Progressive Insurance All rights reserved.

Thursday, March 09, 2006Progressive Operations Framework – Application LifeCycle View

Design· Service Level Metrics Definition· Component Failure Impact Analysis· Maintenance Planning· Environment / Hardware, Data and

Vendor Redundancy Management· Fault Tolerance

Analysis· Service Level Requirements· Business Impact Analysis· Data Classification

Construct· Definitive Software Library (DSL)· Build Process· Software Performance Engineering· Application Instrumentation (Capacity,

Performance, Availability, Service Usage, Business Metrics)

· Error Handler & Logger· Incident Data Capture Tools· Application Tracing· Capacity, Performance, Availability

Management Database· Data Archival· Authentication & Authorization System· Confidentiality Mechanism

Test· Known Error Database· Event Response Guides· Acceptance Testing· Application SizingSolution

Development

Change· Change Management System· Change Categorization &

Prioritization Rules· Change Advisory Board· Integrated Change Calendar· Configuration Management Plan· Configuration Database

Optimize· Capacity & Performance Modeling· SLA Reviews

Operate· Configuration Status Accounting &

Audit· Security Administration· Security Audits· DSL, Documentation and Data

Backup and Recovery· Disaster Recovery Planning

Support· Incident Database· Incident Correlation & Trend

Analysis· Problem Prioritization Rules· Capacity, Performance, Availability,

Service Usage, Business Metrics & Support Statistics Reporting & Trend Analysis

IT Service Delivery

Deployment· Release Policy· Service Catalog· Service Level Definition· Rollout / Rollback Process· Support Plan· Escalation Process· Operations Guide· Service Desk Training &

Communication· Release Readiness Review

Page 26: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

POF Accomplishments

• Instrumentation Framework• Error Handling Framework• Application Tracing• Security Strategy• Data Archival Strategy• System Integration Catalog• Non-functional Testing

– Transaction Profile– Parallel Performance Testing

• Test Early and Often

Page 27: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

Non-functional Testing Process

Development

Analysis

Test

Design

ConstructDevelop Analysis

Test

Design

ConstructDevelop Analysis

Test

Design

ConstructDevelop Analysis

Test

Design

ConstructDevelop

Production

Change

Optimize

Operate

SupportOperate

Testing in an Agile World

QA (PIT)

Non-Functional

Testing

FunctionalTesting

QA

Non-Functional

Testing

FunctionalTesting

QA

Non-Functional

Testing

FunctionalTesting

QA

Non-Functional

Testing

FunctionalTesting

QA

Deploy Deploy Deploy Deploy

Stress

Non-Functional

Testing

Non-Functional

Testing

Mini Stress Test Full Volume Stress Test

Deploy Deploy

Page 28: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

POF Implementation – Challenges

• Organizational Culture– Service Management Culture

• Availability of senior technical resources that are right for the job– Breadth of technical experience– Application Development as well as Operations

experience– Business Knowledge– Excellent Communication skills– Initiative and Drive

• Creating Actionable Non-functional Requirements for developers

Page 29: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company

POF Implementation – Recommendations

• Executive Sponsorship to foster Service Management Culture

• Establish a Career Path to encourage resources to take up this role

• Provide Gold Standard Code Examples to developers

• Adopt Continuous Improvement Approach

Page 30: 11022006 - Integrating ITIL With the Software Development Process - Annual

© 2006 Progressive Casualty Insurance Company