Driving Your Business Forward with Application Life-cycle Management (ALM)



Similar documents
Key Benefits of Microsoft Visual Studio Team System

Datacenter Management and Virtualization. Microsoft Corporation

How to Maximise ROI and drive IT Governance with Visual Studio Team System

Harnessing the power of software-driven innovation. Martin Nally IBM Rational CTO IBM Fellow and VP

TeamCompanion Solution Overview. Visual Studio

Fortune 500 Medical Devices Company Addresses Unique Device Identification

Cognizant Accelerates Enterprise Application Development Cycle-time by 10 Percent

Requirements-Based Testing: Encourage Collaboration Through Traceability

How do you manage the growing complexity of software development? Is your software development organization as responsive to your business needs as

Manoo Ordeedolchest Chairman ICT Policy Committee Sripatum University Microsoft Software Development Life Cycle Management of Enterprise June 5, 2007

Leveraging BPM Workflows for Accounts Payable Processing BRAD BUKACEK - TEAM LEAD FISHBOWL SOLUTIONS, INC.

Rally Integration with BMC Remedy through Kovair Omnibus Kovair Software, Inc.

Effective Team Development Using Microsoft Visual Studio Team System

The role of integrated requirements management in software delivery.

How To Deliver A Microsoft Solution

Realizing business flexibility through integrated SOA policy management.

Contents. Introduction... 1

Enhance visibility into and control over software projects IBM Rational change and release management software

DOCUMENT MANAGEMENT SYSTEM WHITE PAPER

Business Analysis Capability Assessment


Software: Driving Innovation for Engineered Products

Balancing the Outsourcing Equation

Pragmatic Business Service Management

Successfully managing geographically distributed development

Published April Executive Summary

Unleash Competitive Advantage through Software Lifecycle Integration

Supply Chain Management Build Connections

Executive Summary WHO SHOULD READ THIS PAPER?

Agile enterprise content management and the IBM Information Agenda.

IKAN ALM and Collabnet TeamForge

ORACLE HYPERION DATA RELATIONSHIP MANAGEMENT

Configuration Management in the Data Center

Support and Service Management Service Description

ORACLE PROJECT MANAGEMENT

An introduction to the benefits of Application Lifecycle Management

Bringing agility to Business Intelligence Metadata as key to Agile Data Warehousing. 1 P a g e.

Application Test Management and Quality Assurance

Managing FDA regulatory compliance with IBM Rational solutions

IBM Software Integrated Service Management: Visibility. Control. Automation.

Agile Development with Jazz and Rational Team Concert

Datacenter Management Optimization with Microsoft System Center

EMC PERSPECTIVE. Information Management Shared Services Framework

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into

Modernizing enterprise application development with integrated change, build and release management.

Lowering business costs: Mitigating risk in the software delivery lifecycle

White Paper. An Overview of the Kalido Data Governance Director Operationalizing Data Governance Programs Through Data Policy Management

Top Ten Reasons to Transition Your IT Sandbox Environments to the Cloud

Software: Driving Innovation for Engineered Products. Page

Microsoft SOA Roadmap

Select the right configuration management database to establish a platform for effective service management.

IBM Rational systems and software solutions for the medical device industry

Making Compliance Work for You

IBM WebSphere Operational Decision Management Improve business outcomes with real-time, intelligent decision automation

VMware Virtualization and Cloud Management Solutions. A Modern Approach to IT Management

Experience Business Success Invest in Microsoft CRM Today

Strategies and Best Practices to Implement a Successful Data Loss Prevention Program Sebastian Brenner, CISSP

Process Assessment and Improvement Approach

Experiences with ALM tools in Software Engineering course

Data- Centric Enterprise Approach to Risk Management Gregory G. Jackson, Sr. Cyber Analyst Cyber Engineering Division Dynetics Inc.

Basic Unified Process: A Process for Small and Agile Projects

Business Analysis Standardization & Maturity

Global Delivery Excellence Best Practices for Improving Software Process and Tools Adoption. Sunil Shah Technical Lead IBM Rational

CA HalvesThe Cost Of Testing IT Controls For Sarbanes-Oxley Compliance With Unified Processes.

IBM Software IBM Business Process Management Suite. Increase business agility with the IBM Business Process Management Suite

Four Clues Your Organization Suffers from Inefficient Integration, ERP Integration Part 1

How To Improve Your Business Recipe Cards

Improving Service Asset and Configuration Management with CA Process Maps

Cisco Network Optimization Service

Orchestrated. Release Management. Gain insight and control, eliminate ineffective handoffs, and automate application deployments

SharePoint Composites. Do-It-Yourself SharePoint solutions

Transitioning from Waterfall to Agile Course AG01; 3 Days, Instructor-led

WebSphere Business Modeler

IBM 2010 校 园 蓝 色 加 油 站 之. 商 业 流 程 分 析 与 优 化 - Business Process Management and Optimization. Please input BU name. Hua Cheng chenghua@cn.ibm.

Best practices in project and portfolio management

How To Understand The Role Of Enterprise Architecture In The Context Of Organizational Strategy

Transforming Field Service Operations w ith Microsoft Dynamics NAV

Better Together with Microsoft Dynamics CRM

Vermont Enterprise Architecture Framework (VEAF) Master Data Management (MDM) Abridged Strategy Level 0

Product Lifecycle Management in the Food and Beverage Industry. An Oracle White Paper Updated February 2008

How Technology Supports Project, Program and Portfolio Management

How To Manage Project And Portfolio Management In Microsoft Office 2010

IBM Tivoli Netcool Configuration Manager

Enabling Continuous Delivery by Leveraging the Deployment Pipeline

ITIL. Lifecycle. ITIL Intermediate: Continual Service Improvement. Service Strategy. Service Design. Service Transition

Deploying the CMDB for Change & Configuration Management

Process-Based Business Transformation. Todd Lohr, Practice Director

CA Automation Suite for Data Centers

5 Steps to Choosing the Right BPM Suite

Extend the value of your service desk and integrate ITIL processes with IBM Tivoli Change and Configuration Management Database.

Develop enterprise mobile applications with IBM Rational software

How to bridge the gap between business, IT and networks

Real World Strategies for Migrating and Decommissioning Legacy Applications

Operational security for online services overview

Transcription:

Driving Your Business Forward with Application Life-cycle Management (ALM) Published: August 2007

Executive Summary Business and technology executives, including CTOs, CIOs, and IT managers, are being asked to do more with less. Maintenance of legacy systems and current technology support consume vast amounts of a typical enterprise* software budget (Forrester research suggests as much as 67%). This leaves precious few resources to develop new standards-based, adaptive applications that meet the core needs of the business. Managing complexity, aligning IT with the business, and enabling agility are top priorities for CIOs who are under pressure to do more for the business with fixed or diminishing budgets. So how can you measure the real value of IT and how can you ensure that it helps you effectively run your business? Your core business and your IT departments must coalesce and your software initiatives must deliver measurable business benefits. To help achieve this, a common life-cycle management solution is needed to help you track, balance, and communicate the systems that are being created to effectively run your business. Application Life-cycle Management (ALM) provides such a solution by addressing the overall alignment and synchronization of business goals and IT investment priorities. It relies on automation, integration, and a coordinated approach to optimize the software development process. Acquiring tools to support ALM, such as Microsoft Visual Studio Team System (VSTS), is straightforward. Introducing and driving an ALM strategy within your organization, and understanding the necessary changes required within your business, is more difficult. This white paper introduces ALM, the business benefits that you can achieve with an ALM strategy, and it explains how you can get started. The tangible business benefits you can realize with ALM include: Increased return-on-investment from your IT initiatives. Increased accountability. Improved compliance with regulations. Quicker time-to-market. These benefits help you to more effectively utilize IT to drive your business forward and achieve its stated goals. * Enterprise in this context refers to a company of 1,000 or more employees. Source: The State of Application Development in Enterprises and SMBs, Forrester Research, February 2007. 1

Introduction Creating and supporting software that effectively aligns with business objectives has unique challenges. Conventional management skills adapted from other industries do not consider the peculiarities of software, and generally cannot direct the workflow well enough. Unless they are very well managed, software projects are at a high risk of failure. They can easily drift off target, fall behind schedule, exceed budget, fail to deliver adequate quality levels, or simply fail to deliver any tangible business benefit. Miscommunication and misunderstanding between the business sponsors, users, and IT experts often contribute to the failures. With most engineering disciplines, there are previous examples to follow. For example, when you build a road or a bridge you can study hundreds of other similar examples. By building a new one, just like an existing one, you de-risk the whole process. Software engineering and building IT systems in general is quite different. If a system already exists like the one you want to build, economics dictate that you go out and buy it or license it commercially. In other words, you would never build it yourself. As a result of this, you need to view software development in a completely different business context. Virtually all of your software development projects are concerned with building products and solutions that don t already exist so the risk is immediately higher. This business reality is the key factor that makes software development so difficult and risky, which makes attention to process essential. 2

Key Business Issues Business and technical decision makers generally face a number of common issues with their IT and software initiatives. Figure 1 highlights these issues. Figure 1: Key business issues faced by development organizations The predominant four issues common to most development organizations today are: Lack of visibility into project status. This is a primary project management issue that can also include the inability to enforce responsibility, accountability, sign-offs, and checkpoints. The inability to enforce stakeholder involvement, to perform accurate estimation, and to adjust project schedules accordingly are also symptomatic of project management issues. Ineffective team communication. Coordinating efforts across functional, geographic, and organizational boundaries is a particularly challenging communication issue. 3

Balancing business demands with project risk. Poorly defined and changing requirements, scope creep, unreliable estimates, unclear business objectives, and complex and rapidly evolving technology compound this issue and increase risk. Unpredictable delivery times and quality. Balancing quality of service requirements, functional requirements, budget, and schedule is a tough challenge. Eleventh-hour bugs found during testing and in production are all too frequent occurrences. There are many different areas and factors that can contribute to these core issues and discovering and addressing the underlying issues is not trivial. Additional demands include having to balance new project requirements with the financial burden of maintaining existing applications and the need to meet ever more stringent compliance requirements. What is ALM? So what is ALM and how can it help address these issues? ALM describes methods to manage software development and IT initiatives by automating the process from end to end, and integrating the information from the various steps. Integration provides consistency and accuracy and also introduces opportunities for automation. Forrester defines ALM solutions as: Integrated tool sets that support and unite the following life-cycle activities: requirements management, design and modeling, development, software configuration management (SCM), and testing. The three core pillars of ALM are: Traceability of relationships between artifacts. This is traditionally a labor-intensive, manual process, where the effort varies with the number and size of projects, the varying size and scope, and the number of artifact interdependencies. Compliance requirements make traceability a necessity. Automation of high-level processes. Development organizations commonly use paper-based approval processes to control handoffs between functional areas. ALM solutions improve efficiency by automating these handoffs and by providing central storage for all associated documentation. Automated and executable process models are used by ALM solutions to ensure process adherence. Reporting to increase visibility. Most managers have limited visibility into the progress of development projects. What visibility they have is typically gleaned from subjective testimonials, and not objective data. The lack of proper reporting also hinders opportunities for process improvement. The ALM reporting functions benefit from integration and automation to provide real-time status information and deep analysis of all activities. Source: Forrester Web site. 4

Providing traceability, automation, and accurate progress tracking has traditionally been very difficult to achieve, in part due to disparate tools that do not integrate well together. ALM has been a convergence point for makers of visualization tools, modeling tools, compilers, integrated development environments, source code managers, project management systems, configuration management systems, and problem tracking systems. A key characteristic of ALM is that all the project stakeholders (from the business and IT functions) share the same pool of up-to-date information. This includes business sponsors, users, project managers, architects, developers, testers, and system administrators. The typical activities supported by ALM include requirements gathering, solutions modeling, visual design, coding, testing, deployment, and issue tracking. ALM tools link together the artifacts that result from these activities. Microsoft and ALM Microsoft Visual Studio Team System (VSTS) provides an integrated set of tooling, process, and guidance to support ALM. The Team Foundation Server (TFS) component provides a centralized repository for all project artifacts such as project work items, workflow settings and status, requirements and design documents, source code with versioning, branching and merging, and test and build results. Reports are driven from a centralized data warehouse. All artifacts are linked to each other where necessary, to achieve high degrees of integration. The result is full traceability across the project life-cycle from requirements to implementation. Functionality is concentrated in the Visual Studio editions used by team members and in Windows SharePoint project sites accessible to business users, managers, and developers alike, subject to access control. Support for Microsoft Office Excel and Microsoft Project provide more integration. VSTS uses project templates that contain guidelines with best practices to help you achieve process consistency and regulatory compliance. VSTS provides two templates based on Microsoft Solutions Framework (MSF), one for an agile style of development and the other based on Capability Maturity Model Integration (CMMI) for process improvement. You can also customize templates to support your own specific processes. For more information about Visual Studio Team System and Visual Studio Team Foundation Server, see http://msdn2.microsoft.com/en-us/teamsystem/bb400737.aspx. 5

Business Benefits of ALM The introduction of ALM within your organization can result in the following business benefits: Increased collaboration between business and IT better alignment of the business with IT. Increased accountability, enabling stricter compliance to governance initiatives. Improved project management, including better estimation, better tracking, and better reporting through a single, unified view of the project. The improved integration stems from the use of tools that work together rather than disparate tools, poor integration, and duplicated data. Quality improvements, so the final application meets the requirements of your customers, and meets quality of service requirements. Shorter development cycles and improved productivity through shared best practice, process learning, and improvement. Increased ability of the IT department to rapidly build and adapt applications to support dynamically changing business requirements. The net result of these benefits is increased synchronization between IT and your business to deliver improved business value to your customers and to provide an additional competitive advantage. Getting Started with ALM Introducing an ALM strategy takes time. Your focus should be on practices, and practice improvement, and not simply tools. You should aim to implement ALM iteratively, for example, by phasing in new practices over time. When drawing up your implementation plan, you should also make sure that it is aligned with your key business drivers. A key requirement when getting started is to first understand your organization s current strengths and weaknesses when it comes to application development and IT delivery. If you know the current strengths and weaknesses, and where your organization is today, you can determine how it needs to adapt in order to realize the true benefits of an ALM approach. The primary objective for ALM is to turn your IT function from a basic cost center that delivers brittle, unconnected applications and platforms to a strategic asset capable of delivering a service oriented application platform that supports your core business functions, helps deliver new services to drive your business forward, is able to rapidly adapt as your business evolves, and to keep your business ahead of the competition. Assess Your Organization To help identify where your organization is today, and to subsequently help you measure progress as you implement process change, you can use the online ALM assessment engine at http://www.microsoft.com/almassessment. For additional support in assessing the current strengths and weaknesses of your organization s IT function, and how it needs to adapt and phase in an ALM approach, you can also contact a partner for an on-site assessment. 6

The process recommended for ALM optimization is as follows: 1. Take the online assessment. This generates a baseline report designed to identify where you are today and help you to identify key areas for improvement. 2. Engage a partner for an on-site assessment. This is a deep discovery process that reveals best practices and identifies gaps and opportunities for improvement. 3. Prioritize areas for improvement. The output of the assessment helps you to identify root causes of problems and to identify and prioritize areas for improvement. 4. Develop a solution road map. This outlines an iterative approach to implement improvement. The online assessment takes only a few minutes per team member and the resulting reports present detailed comparisons between the aggregated data from a set of responses, and industry averages from businesses similar to yours. This will help you to provide a baseline and identify where you are now. The on-site assessment will uncover root causes of identified problem areas, with the final output being a road map that lays out all the recommended process changes in a prioritized, logical sequence. Evaluate Options and Phase in New Practices With an ordered set of improvement goals, you can evaluate options and identify appropriate projects through which you can phase in new practices. The productivity gains associated with those projects will encourage further adoption of ALM throughout your organization. By archiving and comparing reports over time, you can measure progress. Monitoring and reporting will confirm the effectiveness of your changes and promote more process evolution. For more information about the potential ROI gains, see the case studies here: http://www.microsoft.com/casestudies/search.aspx?keywords=roi&protaxid=2671. You should introduce new practices and ALM techniques incrementally. Start with a few small projects. Entrust them to a team that appreciates the value of comprehensive and efficient methodologies. Review the results by performing a new ALM assessment. Continue to fine-tune your methods and practices based on your experience. 7

Conclusion The just develop it attitude to IT systems development is failing to deliver sufficient business benefit and return on investment. IT and business need to be more closely aligned. Your core business and your IT department must coalesce and your software initiatives must deliver measurable business benefits. ALM can help your company fulfill its promise to your customers to deliver the right products with the right service-level guarantees. By ensuring that your business and your IT function have a joint process to set goals, metrics, and priorities, ALM enables your IT department to more closely align with the needs of your business and enables you to make smart, strategic decisions on the use of IT. By integrating business and IT investments, ALM can help you drive your business forward. To get started with ALM, start by assessing where your organization and its IT function is today, identify the main problem areas, prioritize areas for improvement, and then adopt an incremental approach to phase in new processes on a project-by-project basis. To help you start by quickly identifying key areas for improvement, complete the online assessment here: http://www.microsoft.com/almassessment. For More Information For more information about ALM and how to approach ALM see the following resources: http://www.microsoft.com/appplat https://www.microsoft.com/almassessment The information contained in this document represents the current view of Microsoft Corporation on the issues discussed as of the date of publication. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information presented after the date of publication. This White Paper is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED, OR STATUTORY, AS TO THE INFORMATION IN THIS DOCUMENT. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation. 2007 Microsoft Corporation. All rights reserved. Microsoft and Visual Studio are trademarks of the Microsoft group of companies. All other trademarks are property of their respective owners. Microsoft Corporation, One Microsoft Way, Redmond, WA 98052-6399 8