white paper integration of perforce software configuration system (scm)

6
Kovair Software, Inc. Copyright © 2000-2008 [email protected] • www.kovair.com INTEGRATION OF PERFORCE SOFTWARE CONFIGURATI ON MANAGEMENT SYSTEM (SCM) WITH KOVAIR GL OBAL LIFECYCLE Introduction SCM tool is one of the most widely used and indispensable tools in a software development organization of any size. However, for a complete Application Lifecycle Management (ALM), SCM is just one of many such tools critical for success. Kovair Global Lifecycle offers a number of such critical built-in ALM applications including Requirements Management, Test Management, Change Management, Issues Management, and Release Management. Integration of a SCM tool with Kovair Global Lifecycle therefore provides an unprecedented ecosystem for a development organization. Perforce is one of the leading SCM tools known for its performance and flexibility. This paper describes the details of the integration between Perforce and Kovair and the benefits the Perforce users and the whole development group get out of this integration. The users of other SCM tools can expect a similar set of benefits from the integration of the particular SCM tool with Kovair Global Lifecycle. Kovair has created the Perforce adapter using its industry leading Omnibus Integration Bus technology. Omnibus ensures a vendor neutral ALM Platform. Significant features of Kovair Omnibus Technology are Bus Architecture, Web Service standards (using SOAP protocol), and toolspecific API. So, any third party tool can be integrated with Kovair Global Lifecycle, by creating an adapter. Kovair Global Lifecycle is a webbased Application Lifecycle Management (ALM) Tool with single repository. It is the flagship product of Kovair Software Inc. The application is enriched with wide array of industry leading features. Major Components are Kovair Lifecycle Application, Process Automation Technology, and Kovair Omnibus Technology Kovair Integration with Perforce The integration has been achieved by creating an Omnibus Adapter specific to Perforce SCM. The adapter maintains two way communications of data between Kovair Global Lifecycle and Perforce SCM. The adapter is a lightweight interface expositing the internal data schema of Perforce. There is no hardcoded business logic in the adapter. This makes the same adapter highly adaptable to various business needs for different organizations. The business rules are defined using the Kovair Service Flow user interface and does not need any coding. The beauty of separating out the data layer (adapter) and the business rule layer (Service Flow) is that the end users e.g. business analysts or the development managers can define and redefine business rules without changing the adapter. The business rules for the transmission of data across the tools are Macro Level Benefits Customizable Service Flow Real Time Communication Total Visibility Forward and Backward Traceability Streamlined Process Quality Improvements

Upload: kovair

Post on 18-Jan-2015

163 views

Category:

Technology


0 download

DESCRIPTION

This paper describes integration between Perforce SCM tools and Kovair ALM Studio and the resulting benefits for Perforce users and development group. Perforce ALM Studio integration is brought about by Kovair’s Perforce adapter using Kovair Omnibus Integration Platform.

TRANSCRIPT

Page 1: White Paper Integration of Perforce Software Configuration System (SCM)

Kovair Software, Inc. Copyright © 2000-2008 [email protected] • www.kovair.com

INTEGRATION OF PERFORCE SOFTWARE CONFIGURATION

MANAGEMENT SYSTEM (SCM) WITH KOVAIR GLOBAL LIFECYCLE

Introduction

SCM tool is one of the most widely used and indispensable tools in a

software development organization of any size. However, for a

complete Application Lifecycle Management (ALM), SCM is just one of

many such tools critical for success. Kovair Global Lifecycle offers a

number of such critical built-in ALM applications including Requirements

Management, Test Management, Change Management, Issues

Management, and Release Management. Integration of a SCM tool with

Kovair Global Lifecycle therefore provides an unprecedented ecosystem

for a development organization.

Perforce is one of the leading SCM tools known for its performance and

flexibility. This paper describes the details of the integration between

Perforce and Kovair and the benefits the Perforce users and the whole

development group get out of this integration. The users of other SCM

tools can expect a similar set of benefits from the integration of the

particular SCM tool with Kovair Global Lifecycle.

Kovair has created the Perforce adapter using its industry leading

Omnibus Integration Bus technology. Omnibus ensures a vendor

neutral ALM Platform. Significant features of Kovair Omnibus

Technology are – Bus Architecture, Web Service standards (using SOAP

protocol), and tool–specific API. So, any third party tool can be

integrated with Kovair Global Lifecycle, by creating an adapter.

Kovair Global Lifecycle is a

web–based Application

Lifecycle Management (ALM)

Tool with single repository. It is

the flagship product of Kovair

Software Inc.

The application is enriched

with wide array of industry

leading features. Major

Components are – Kovair

Lifecycle Application, Process

Automation Technology, and

Kovair Omnibus Technology

Kovair Integration with Perforce

The integration has been achieved by creating an Omnibus Adapter –

specific to Perforce SCM. The adapter maintains two way

communications of data between Kovair Global Lifecycle and Perforce

SCM.

The adapter is a lightweight interface expositing the internal data

schema of Perforce. There is no hardcoded business logic in the

adapter. This makes the same adapter highly adaptable to various

business needs for different organizations. The business rules are

defined using the Kovair Service Flow user interface and does not need

any coding. The beauty of separating out the data layer (adapter) and

the business rule layer (Service Flow) is that the end users e.g. business

analysts or the development managers can define and redefine business

rules without changing the adapter.

The business rules for the transmission of data across the tools are

Macro Level Benefits

Customizable Service Flow

Real Time Communication

Total Visibility

Forward and Backward

Traceability

Streamlined Process

Quality Improvements

Page 2: White Paper Integration of Perforce Software Configuration System (SCM)

Kovair Software, Inc. Copyright © 2000-2008 [email protected] • www.kovair.com

defined by the Service Flow. It is the conditional logic of how tools will

behave on real-time events. Service Flows are fully customizable,

according to business needs, and it does not require writing a single line

of code. As and when an event matches with a Service Flow trigger,

data gets replicated from Kovair to Perforce or vice versa.

Kovair’s Omnibus Integration technology can be used with

synchronization or two-way replication between Kovair and Perforce

SCM. For example, by synchronization the Changelists in Perforce can be

synchronized with the Changelists in Kovair - which means a Changelist

added or edited in Kovair is replicate in Perforce SCM and vice versa.

However, for all items, synchronization is not desirable, especially if the

data content is too big in size. Hence, for the source files in Perforce

SCM, a different strategy is used. Only the information about the files

and Not the file content is replicated in Kovair. When the content is

needed Omnibus requests Perforce to get the actual content of the

particular file on-demand. This method allows the actual data to remain

in Perforce SCM’s repository and fetched only when needed. This

method is called Federation.

Role in IT Management Practices

Involvement of many tools from different vendors in operations and

services is a common scenario of today’s Software Development

environment. As a result, demand for an integrated framework is

growing. Kovair integration with Perforce SCM is an aid for development

management practices for Configuration Management, Release

Management, and Test Management. It is a framework that can

accommodate multiple tools, and synchronize them with different ALM

activities.

Configuration Management: For the Configuration Manager it is often a

critical task to trace out ‘right’ source codes for a Requirement, Change

Request or a Defect. With the integrated framework of Kovair Global

Lifecycle, and Perforce SCM, it becomes easy to track source codes for

each item. The Managers do not need to switch between the tools.

Using the traceability feature, Configuration Manager can easily identify

appropriate source codes, linked with Requirements/Change Requests,

which are considered for a Configuration. From Kovair Global Lifecycle,

they can view a complete history of source codes, and verify the

changes made by Developers. The Configuration Manager can answer

the question very easily “what source code files are changed by

implementing/ fixing this requirement/ change request/ bug?”

Release Management: Organizing a Release Package or a Build requires

detail identifications of source codes. Release Managers can find

Kovair’s Traceability feature useful for building a Release Package. For

each Requirement/Change Request, linked source codes get federated

in Kovair from Perforce. The Release manager can answer “What

requirement/ change request/ bug are implemented/ fixed in this

What Kovair assures:

Traceability of ALM Items

with their source code

files: Kovair ensures

Forward and Backward

Traceability of ALM items.

From Kovair, you can easily

trace the source code files

for any Requirement /

Change Request / Defect.

Visibility of Perforce Items:

Kovair ensures complete

Visibility of Perforce items.

From Kovair, you can view

Perforce items – Jobs,

Changelists, Files, Versions,

and changes done in codes.

Synchronization of ALM

Processes with Perforce

events/activities: Kovair

Omniprocess Technology

ensures the synchronization

of Perforce related user-

activities with Requirement

Management / Release

Management / Test

Management process

Page 3: White Paper Integration of Perforce Software Configuration System (SCM)

Kovair Software, Inc. Copyright © 2000-2008 [email protected] • www.kovair.com

Release?”

Test Management: The integration of Kovair Global Lifecycle and

Perforce SCM has significant value in Software Test Management.

Modifications in source codes are done during ‘defect tracking and

resolution’ stage. The integrated platform ensures that Developers can

easily trace the appropriate source codes for code level modifications,

and Test Manager can verify that a ‘right’ source code is modified for a

defect. The QA Manager can also answer the question “Do we have test

cases to test these source codes and if so what are the status of these

tests so far?”

(defined in Kovair).

Value Additions in Business Process

Strict Process Enforcement:

Manual enforcement of a process and disrupted workflow across the

tools pose significant challenges in multi-tool development

environment. The integration of Kovair with Perforce SCM is able to

enforce strict process in application development using Kovair’s

Omniprocess Technology. The integration ensures Perforce items (Job,

Changelist, and File) to get replicated automatically in Kovair, and

Kovair items (Requirements, Change Request, Defect) in Perforce. In

addition, cross-tool synchronization of events can be implemented

through Kovair’s built-in Process Engine. By virtue of Kovair’s

Omniprocess Technology, ‘Creating a Job/Changelist’ or ‘Modifying

Source Code’ in Perforce can be synchronized with events/user-

activities of Kovair.

Quality Improvement:

The quality of development process gets affected due to several factors

including inefficient Issue/Defect Resolution approach, or inappropriate

source code in Release Package. Selection of ‘right’ source codes for

the selected Requirements and Issues is quite significant in this regard.

In Perforce SCM, it is hard to trace appropriate source code for an Issue

or Requirement manually – unless there are automated ways for source

code to trace back to an Issue or a Requirement. Kovair’s inbuilt

Traceability feature is an aid for identifying the ‘right’ source code for

an Issue or Requirement. It ensures accuracy in source code selection,

and reduces time and human effort of implementation and release

processes.

Total Visibility:

The integration of Kovair and Perforce ensures cross-tool replication of

data in real-time. The replicated data get visible through Kovair’s

common interface from different geographical locations. The replicated

items of Perforce (Changelist and Job) can be used with Kovair items

(Requirements, Change Request, and Issue) to generate graphical and

tabular reports.

Highlighted Value Additions

Automated data replication

across integrated tools to

eliminate expensive manual

processes and human errors.

Creating and managing

business rules by the end

users rather than

developers.

Immediate visibility across

groups, management levels

and geographies.

User preferred tool

environment for individual

functions but in a totally

integrated environment.

Page 4: White Paper Integration of Perforce Software Configuration System (SCM)

Kovair Software, Inc. Copyright © 2000-2008 [email protected] • www.kovair.com

Complete Traceability:

Forward and backward Traceability is an effective feature of Kovair

Global Lifecycle that provides total visibility of development lifecycle at

any point of time. From an Issue/Defect, using the backward

traceability, linked Requirement can be identified. Similarly, by virtue

of forward traceability source codes (federated from Perforce) link with

an Issue/Defect can be traced.

Two-way Communications

Frequently Asked Questions

As a Project Manager how do I figure out which source code files got added/ modified to

implement a Customer Requirement or to fix a Bug?

The integration setup of Kovair and Perforce SCM, and Kovair’s built-in Traceability feature,

together ensure easy access of source code files for Customer Requirement or Bug. By virtue of

Omnibus Technology, whenever a source code file gets added/modified in Perforce repository

(known as ‘Depot’), it automatically gets federated in Kovair. Also, the linkage between

Page 5: White Paper Integration of Perforce Software Configuration System (SCM)

Kovair Software, Inc. Copyright © 2000-2008 [email protected] • www.kovair.com

Requirement/Bug and the federated file is automatically setup in Kovair. So, from the

Traceability page of a Requirement/Bug, a Project Manager can view associated source codes.

How do I enforce/automate source code Review and Approval processes?

You can enforce/automate source code review/approval process in the integration environment

of Kovair Global Lifecycle, and Perforce SCM. Kovair’s built-in Process Engine Omniprocess

enables you to design any complex process for Perforce items (Job, Changelist, and File), which

get replicated in Kovair. For example, against ‘File check in’ activity in Perforce, you can

implement source code Review and Approval process in Kovair. In the process you can involve

users of different Roles (e.g. Project Manager, Developer, Testers, and Test Manager) and

assign them to appropriate process activities. You can also implement processes for activities

like – ‘Changelist Creation’, ‘Changelist Submission’.

How to create an integrated environment for Change Management and Configuration

Management?

The integration setup of Kovair and Perforce SCM ensures a common platform for Configuration

Management and Change Management. For each Change Request, Developers can figure out the

Development Package, and using Kovair’s Traceability, existing source codes can be traced.

Whenever any source code is added/modified and submitted in Perforce SCM by a Developer,

the information about the file (including its version) gets federated in Kovair through Omnibus

under the same Development Package. Members of Change Approval Board (CAB) / Change

Review Board (CRB), using Kovair’s Traceability can find out the federated source codes for a

Change Request. They can view – all versions of source code, changes in source code, and other

file history details.

How to create an integrated environment for Build/Release Management and Configuration

Management?

The integration setup of Kovair and Perforce SCM provides a common platform for

Configuration Management and Build/Release Management. For each Release/Build, the

Release Manager can figure out appropriate Development Package, and from there using

Kovair’s Traceability, existing source codes can be traced. Whenever any source code is

added/modified and submitted in Perforce SCM by a Developer, that file gets federated in

Kovair through Omnibus under the same Development Package. Release Manager can view the

latest version of all federated source code files and can prepare the Build/Release Package.

How to enforce compliance processes in SCM?

The integrated platform of Kovair Global Lifecycle and Perforce SCM allows you to implement

process oriented SCM solutions. With Kovair’s built-in features like – Process Automation,

Traceability, Visibility, Consolidated Reporting, and Omnibus Technology, the Software

Configuration Management solutions can be configured compliant to CMMi, and Sarbanes-Oxley

framework.

How to pinpoint source code quality problems?

Using the integration with Perforce SCM, supported by Kovair’s built-in Traceability feature, it

is possible to figure out the source code files, which are generating maximum Defects. Figuring

out the right source codes is possible with minimum human effort, and in an optimized

timeframe, which is a plus for any quality enhancement process.

How to do Root-Cause Analysis?

Page 6: White Paper Integration of Perforce Software Configuration System (SCM)

Kovair Software, Inc. Copyright © 2000-2008 [email protected] • www.kovair.com

Unless you establish proper linkages among ALM items (e.g., Requirement, Change Request,

Use Case, Test Case, Defects, and Release) and source codes, it is hard to perform Root–Cause

Analysis. Source codes are federated from Perforce to Kovair, and linked with a Defect – using

Kovair’s Omnibus. The integration setup of Kovair and Perforce SCM ensures quick

identification of source codes (as root). By virtue of Kovair’s Traceability, you can trace out

the codes following the path, say Requirement Use Case Test Case Defect Source

Codes.

How to estimate change impact for any modification in source code files?

Implementation of one Requirement might be spread over multiple source code files, similarly

one source code file might be linked with multiple Requirements. In the integration setup,

source code files get federated from Perforce to Kovair. In addition, links get established

among source codes and Requirements. By means of Kovair’s built-in Traceability you can

estimate change impact of a source code (when linked with too many requirements) or

Requirement (when linked with too many source codes).

How to ensure change propagation through source code files by impacting linked files?

In Configuration Management, modification in source code and/or Requirement is a common

occurrence. The integration ensures automated replication of modified source codes for

Requirements. So, using the forward and backward traceability you can identify ‘what are the

Requirements to be modified due to any change in source code’ or ‘what are the source codes

that need to be modified due to any change in a Requirement’.

Notes: Kovair has the Perforce Adapter available off the shelf for those who wish to consider

integration between Perforce and Kovair Global Lifecycle product. Kovair is a full fledged ALM

Partner of Perforce as indicated on the Perforce Corporate website www.Perforce.com.