A Model for Effective Asset Re-use in Software Projects



Similar documents
Background: Business Value of Enterprise Architecture TOGAF Architectures and the Business Services Architecture

JOURNAL OF OBJECT TECHNOLOGY

Repository Management Policy

Defining a Governance Model for Portals

ITRM Guideline CPM Date: January 23, 2006 SECTION 5 PROJECT CLOSEOUT PHASE

EXHIBIT L. Application Development Processes

RFP Attachment C Classifications

Software and Systems Engineering. Software and Systems Engineering Process Improvement at Oerlikon Aerospace

Test Automation Process

Business Analysis Standardization & Maturity

REQUIREMENTS SPECIFICATION AND MANAGEMENT. Requirements Analysis and Specification

A discussion of information integration solutions November Deploying a Center of Excellence for data integration.

NASCIO EA Development Tool-Kit Solution Architecture. Version 3.0

CDC UNIFIED PROCESS JOB AID

Front Metrics Technologies Pvt. Ltd. Capacity Management Policy, Process & Procedures Document

Project Closure. ProPath. Office of Information and Technology

Training Plan CONTOSO, LTD MICROSOFT DYNAMICS AX SOLUTION

Enterprise Data Governance

Software Portfolio Analysis Does your Investment perform adequately? Mary Udeh

Guidelines and Procedures for Project Management

Knowledge Area Inputs, Tools, and Outputs. Knowledge area Process group/process Inputs Tools Outputs

Fundamentals of Measurements

Iterative Project Management 1

QA Engagement Models. Managed / Integrated Test Center A Case Study

Open Group SOA Governance. San Diego 2009

Develop Project Charter. Develop Project Management Plan

Global Headquarters: 5 Speen Street Framingham, MA USA P F

Product Build. ProPath. Office of Information and Technology

Crosswalk Between Current and New PMP Task Classifications

Program Lifecycle Methodology Version 1.7

Measurement Information Model

Project Management Guidelines

Information Technology Project Oversight Framework

Data Management Maturity Model. Overview

ACESS A Comprehensive Enterprise Social Services System

Service Modelling & Service Architecture:

Department of Administration Portfolio Management System 1.3 June 30, 2010

Fermilab Computing Division Service Level Management Process & Procedures Document

Setting up an Effective Enterprise Architecture capability. Simon Townson Principal Enterprise Architect SAP

ájoƒ ùdg á«hô dg áµلªÿg Yesser Overall SDLC Process Definition

Peer Review Process Description

WHITE PAPER. Test data management in software testing life cycle- Business need and benefits in functional, performance, and automation testing

Configuration Management in a Software Product Line

The overall aim for this project is To improve the way that the University currently manages its research publications data

ITIL V3 Sample Questions Page 1 of 15 Sample ITIL version 3 Foundation Examination. Instructions

BMC Software Consulting Services. Fermilab Computing Division Service Catalog & Communications: Process and Procedures

Procurement Programmes & Projects P3M3 v2.1 Self-Assessment Instructions and Questionnaire. P3M3 Project Management Self-Assessment

Project Management Body of Knowledge (PMBOK) (An Overview of the Knowledge Areas)

An Oracle White Paper. December Cloud Computing Maturity Model Guiding Success with Cloud Capabilities

The SharePoint Maturity Model

Enterprise Service Provisioning

Design Specification for IEEE Std 1471 Recommended Practice for Architectural Description IEEE Architecture Working Group 0 Motivation

Data Warehouse (DW) Maturity Assessment Questionnaire

Release Management Policy Aspen Marketing Services Version 1.1

Project Implementation Process (PIP)

A Practical Guide for Creating an Information Management Strategy and Strategic Information Management Roadmap

SERVICE-ORIENTED MODELING FRAMEWORK (SOMF ) SERVICE-ORIENTED SOFTWARE ARCHITECTURE MODEL LANGUAGE SPECIFICATIONS

Cisco Systems, Incorporated: Operationalizing a B-to-B Social Media Center of Excellence

Enterprise Service Specification

IT Financial Management and Cost Recovery

Software Requirements, Third Edition

Business Process Validation: What it is, how to do it, and how to automate it

10426: Large Scale Project Accounting Data Migration in E-Business Suite

Introduction to the ITS Project Management Methodology

PMO Starter Kit. White Paper

Peer Review Process Description

e-training Transition Project

Test Plan (a Real Sample) SoftwareTestingHelp.com Live Project Training - OrangeHRM

Reaching CMM Levels 2 and 3 with the Rational Unified Process

Process Assessment and Improvement Approach

Assessing and implementing a Data Governance program in an organization

SOA: The missing link between Enterprise Architecture and Solution Architecture

The Anatomy of Lead Management

Enterprise Architect for an Enterprise Architecture

Auditing the Software Development Lifecycle ISACA Geek Week. Mike Van Stone Sekou Kamara August 2014

Integrating Project Management and Service Management

Consolidation and outsourcing improves QA process and saves $3.5 million annually for a leading financial services company

Knowledge Infrastructure for Project Management 1

P3M3 Portfolio Management Self-Assessment

Feature. A Higher Level of Governance Monitoring IT Internal Controls. Controls tend to degrade over time and between audits.

Process Description Change Management

Requirements engineering

PROJECT MANAGEMENT PLAN Outline VERSION 0.0 STATUS: OUTLINE DATE:

Evaluating Data Warehousing Methodologies: Objectives and Criteria

TREASURY INSPECTOR GENERAL FOR TAX ADMINISTRATION

US Department of Education Federal Student Aid Integration Leadership Support Contractor January 25, 2007

Project Type Guide. Project Planning and Management (PPM) V2.0. Custom Development Version 1.1 January PPM Project Type Custom Development

HP Service Manager. Software Version: 9.34 For the supported Windows and UNIX operating systems. Processes and Best Practices Guide

TM Forum Frameworx 13.5 Implementation Conformance Certification Report

A DESIGN SCIENCE APPROACH TO DEVELOP A NEW COMPREHENSIVE SOA GOVERNANCE FRAMEWORK

Implementing an Information Governance Program CIGP Installment 2: Building Your IG Roadmap by Rick Wilson, Sherpa Software

Project Scorecard Template

Assessing the Appropriate Level of Project, Program, and PMO Structure

ITIL: Service Design

BUSINESS INTELLIGENCE COMPETENCY CENTER (BICC) HELPING ORGANIZATIONS EFFECTIVELY MANAGE ENTERPRISE DATA

Project Management Office Charter

An Introduction to SharePoint Governance

IBM InfoSphere Information Server Ready to Launch for SAP Applications

UNIVERSITY OF KENT E-LEARNING STRATEGY IMPLEMENTATION PLAN UPDATED MAY 2011

Transcription:

A Model for Effective Asset Re-use in Software Projects Abhay Joshi Abstract Software Asset re-use has the potential to enhance the quality and reduce the time to market of software projects. However, there are many challenges on the road to successful asset re-use. The key to success is discipline. This paper proposes a model for effectively managing the software assets re-use program. It also addresses the challenge of sustaining such initiatives. Nov 2007

Introduction Asset re-use has been a key focus area for improving the productivity of software organizations and the quality of the software delivered. However, managing a re-use program presents many challenges. There are some standard guidelines for re-use, such as the Object Management Group s Reusable Assets Specifications 1 (RAS), which cover the guidelines for the engineering elements of reuse like structure, contents, categories, standard packaging etc. Despite the existence of guidelines, such programs are unable to sustain themselves due to a variety of reasons like lack of support, absence of a well-defined governance structure and processes, lack of sponsorship etc. We also find that such initiatives are repeated quite often in different forms. This paper explains a simple model for implementing and managing asset re-use within software organizations. This model focuses on three key aspects 1. Participants in the model, their roles and responsibilities 2. Activities associated with the management of the re-usable asset repository and project execution 3. A set of metrics for measuring the effectiveness of the program, rewards and recognition to ensure the sustainability of the program An overview of the Asset Re-use model Six key steps (Figure 1) are required to establish a successful, sustainable execution model Define participants roles and responsibilities Define activities Set up a repository and define a management process Identify key considerations for asset re-use Identify knowledge dissemination mechanisms Define metrics & establish a reward and recognition mechanism 1 2 3 4 5 6 Figure 1 1 See Reusable Assets Specification 2 Infosys White Paper

The model in action Figure 2 below depicts the model in action Steering Committee Industry trends & other external inputs (freeware/forums Inputs from alliances Time-based triggers Governance, Guidance and Sponsorship Subject Matter Experts Group [SMEG] Define criteria, search and extract potential assets Reuse Assets Management Group [RAMG] 1Analysis and re-work on assets with potential for re-use 2 Submit the assets to a repository, publish and spread awareness Organization - wide project assets Partners and subsidiaries Project Development / Maintenance Team 4 Extract new assets / submit assets to the repository 3 Measure re-use effectiveness at project milestones 2 Identify the potential for reuse of project assets 1 Initiate project, plan for re-use from the repository Domain-specific business components Re-usable utilities and tools Architecture / design artifacts, reference implementations Issues & enhancement tracking mechanism Re-usable technology components Re-usable Asset Repository Test data/ test Scripts Application components Standards, guidelines, templates, best practices Configuration management Figure 2 Note: Asset types in the repository are indicative in nature and are not limited to these categories Infosys White Paper 3

Defining the participants roles and responsibilities The participants in the Asset Re-use model can be broadly grouped into the four roles shown in Table 1 # Participant Role Participating Groups Remarks 1 Steering Committee Architecture Board or equivalent Responsible for governance, guidance entity and sponsorship 2 Subject Matter Experts Group (SMEG) 3 Reuse Asset Management Group (RAMG) R&D, technology focus groups Core members driving the asset re-use program, quality teams and technical leads from participating projects Owners of the repository Responsible for analysis of assets and maintaining the repository 4 Project teams Participating project teams Repository users and contributors Note: See Appendix A for a detailed explanation of the activities of the four roles outlined in Table 1. Defining activities in the Asset Re-use model (RACI matrix) Table 2 provides a RACI matrix for the Asset Re-use model by mapping the key activities (Figure 2) to the key roles (Table 1). RACI stands for - R: Responsible, A: Accountable, C: Consulted, I: For Information # Activities Steering SMEG RAMG Project Committee Team 1 Governance, guidance and sponsorship A, R R R I 2 Define criteria, search and extract potential assets I A, R C C 3 Analysis and re-work on assets with potential for re-use I C A, R C, I 4 Submit the Assets to a repository, publish and spread awareness I C A, R I 5 Initiate project, plan for re-use from the repository I C R A, R 6 Measure re-use effectiveness at project milestones and elicit feedback I C R A, R Note: Time-based triggers on assets in the repository will also trigger analysis and rework of assets (step 3 above). Appendix A details the activities with the required inputs and expected outputs. Setting up and maintaining the asset repository To ensure the success of the model, it is important to maintain the correct and up-to-date versions of the assets in the repository, with details of the necessary infrastructure and adherence to standards. A few steps (outlined below) are essential to maintain the integrity of the repository Configuration and change management: The asset repository should have a well-defined configuration and change management plan. The plan should clearly establish guidelines for access control, ownership of assets, use of assets, submissions etc. Issues & enhancement tracking: Issues reported by project team when using assets, suggested enhancements to assets and other issues should be tracked to closure to ensure the success of the model. This requires a well defined tracking mechanism. The RAMG should be responsible for tracking and follow-up actions Project feedback tracking: Customizations to assets based on specific project requirements should be documented and communicated across projects and should be available for future reference. Projects should also submit a report on the variations from standard guidelines, approaches and components, as well as identify new assets with potential for reuse. The RAMG should analyze such reports and make necessary changes to the respective artifacts. 4 Infosys White Paper

Identifying key considerations for asset re-use Some of the important considerations for asset re-use are Revalidation date: Assets should be re-validated for suitability of usage after a pre-determined expiry date. If the asset is found to be unsuitable, it should be retired and archived along with the related documentation IPR: It is important to respect Intellectual Property Rights. The validation of assets, on submission to the repository, should include IPR checks to guard against IPR violation. It is equally important to create and protect the IP of reusable assets with due declarations during project usage Dependency tree: Assets may have dependencies on other assets. Therefore, any changes in the underlying assets should be reflected in the dependencies to ensure consistent behavior. In some cases, if the changes are too many and complex, then it may make sense to change the dependencies and update the dependency tree accordingly Qualifying criteria: It is essential to define appropriate criteria to qualify the potential for re-use. An example is - If an asset can be used in projects (other than the originating project) with less than 50% modification, then the asset can be considered for re-use The above discussed considerations can be used as attributes or meta-data for re-use. Identifying knowledge dissemination mechanisms To benefit from re-use, it is important to spread awareness about re-use among project teams. Some of the following ways (explained below) can be used to do this effectively 1. A website: Publishing the asset repository on a website which acts as a single point of reference. The website can use provide features like Wikis, blogs etc to capture usage details, constraints, suggested improvements etc. 2. A training kit: A starter kit with collateral for quizzes, e-learning, training presentations, classroom training capsules will be handy 3. Project reviews: As part of reviews at project milestones, re-use statistics can be verified. A detailed review checklist document covering re-use expectations will help in knowledge dissemination. Feedback from projects on re-use should be captured and tracked. Defining a metrics plan for measuring effectiveness of asset re-use It is important to measure the effectiveness of re-use to unequivocally demonstrate the benefits to the organization, to get a buy-in support from the organization for the re-use initiative and to govern the initiative effectively, Metrics that can be used to gauge the impact of the asset re-use program are listed below Asset usage ratio Total effort savings due to re-use Time to market improvement due to re-use See Appendix B for an explanation of the metrics. Establishing a rewards and recognition mechanism It is important to institute a rewards and recognition program to ensure the success and sustainability of the re-use initiative. It is also important to publicly recognize the teams that contribute to the success of the repository by contributing assets, as well as by using assets. Some of the criteria that can be used to identify winners are Number of assets re-used Number of assets contributed to the repository Effort savings due to asset re-use (other than contributor) For example, rewarding the top 5 projects in terms of effort savings from asset re-use or the top 5 (projects/ individuals) in terms of contributing re-usable assets to the repository Infosys White Paper 5

Benefits A well-executed re-use program can provide several benefits like 1. Reduced effort in project execution 2. Consistent quality and reduction in defects across projects 3. Improved time to market 4. Enhanced predictability of future projects Infosys research indicates effort savings to the tune of 10~15% (in some cases, even up to 25%) of total project life cycle for typical Java / J2EE application development projects in that specific context. Industry references have indicated higher savings in many cases. Conclusion The success of the re-use program hinges on the disciplined implementation of the proposed model. The effectiveness can be enhanced by putting in places a proper metrics plan to quantify improvement, a governance mechanism for course corrections and offering suitable incentives to maximize and institutionalize re-use. About the Author Abhay Joshi is a Senior Technical Architect with Infosys. He has 14 years of experience spanning industrial automation and information technology. He has anchored technology initiatives and provided consultancy for large technology programs in Financial Services, Transportation and Logistics domains Abhay is TOGAF 8 certified practitioner 6 Infosys White Paper

Appendix A Overview of activities in the Asset Re-use model # Activities Input Output Search and extract potential assets for re-use Responsibility: SMEG 1 Build a questionnaire to extract information about project assets Define qualifying criteria for asset re-use Knowledge about existing projects Questionnaire 2 Conduct workshops for project teams Questionnaire Information for analysis 3 Search for re-usable assets from external forums, subject to IP considerations 4 Get inputs from alliance partners Additional data and information 5 Track industry trends List of potential assets based on industry trends 1 Analyze projects and identify potential assets. Analysis and re-work on assets with potential for re-use Responsibility: RAMG, SMEG Data from projects. List of potential assets Analyze suggestions for enhancement of existing assets Prioritize these enhancements 2 Categorize potential assets appropriately Assign /update attributes Criteria for qualifying assets. Suggestions for enhancements List of assets 3 Plan for enhancement of assets Availability of resources for rework 4 Rework on asset to incorporate suggestions, test assets and prepare documentation 1 Submit the tested assets with required documentation. Tag the assets with keywords to enable search 2 Publish and conduct training programs (ongoing activity) 1 As a part of project initiation, define a plan to identify re-usable assets that can be incorporated into the project. 2 Identify project assets that can be contributed to the repository Plan Submit the assets to the repository and publish them Responsibility: RAMG Tested assets Project Initiation: Plan for re-use Responsibility: Project Team, RAMG Functional specifications Project asset list Categorized list of assets A plan for rework Tested assets ready for submission into the repository Assets available to all Project Training kit and awareness program A re-use plan with list of assets intended for use in the project List of potential Re- assets to be delivered to the repository Infosys White Paper 7

# Activities Input Output Project Feedback on assets Responsibility: Project Team, RAMG 1 Measure the effectiveness of re-use at project milestones 2 Extract assets from projects and submit to the enhancement group to analyze and publish into the repository 3 Gather suggestions and feedback on enhancements in existing assets based on project experience Appendix B Metrics for tracking effectiveness of re-use Re-use data from projects Re-use data and list of project assets Suggestions Re-use effectiveness metrics and future projection for re-use Details of new assets Action plan for enhancements Metrics Name Unit of Measure How to Measure When to measure Remarks Asset usage ratio % Ratio = (# of assets actively used across projects) / (# of assets in repository) * 100% Before scheduled status updates A higher ratio indicates greater effectiveness Effort savings due to re-use Time to market improvement due to re-use Person days Total effort savings = [Effort savings per asset for all projects] * (# of actively used assets) Calendar days Additional program-level metrics can include Total elapsed days saved (project timeline) = (Total elapsed days estimated for developing from scratch Total elapsed days required due to asset re-use) 1. Usage count of assets and an associated ranking of assets Before scheduled status updates Before scheduled status updates 2. Running list of effort saved (by project) due to asset re-use (and a ranking of top projects) 3. Defect reduction due to asset re-use Measurements details 1) Effort savings per Asset [EffSavAsset] = ((Efforts invested in creating asset) * 0.75) (customization efforts needed for re-use)) *Assuming that 75% of total effort invested in creation will be saved for each re-use 2) Efforts saving per asset for all projects [EffSavAssetAllPrj] = (EffSavAsset) * (# of projects using asset) Total days saved (project timeline) can be captured as the difference in timelines between developing from scratch versus judicious re-use 8 Infosys White Paper