Friday, January 2, 2009

ClearCase/ClearQuest UCM vs. Team Foundation Server/Visual Studio 2008

In order to have an intelligent comparison between ClearCase/ClearQuest Unified Change Management (CC/CQ/UCM) and Team Foundation Server/Visual Studio Team System (TFS/VSTS) solutions we should define our terms.   TFS/VSTS constitute an Application Lifecycle Management (ALM) solution that targets Windows platform.   ClearCase and ClearQuest Unified Change Management is a change management solution, i.e. a small subset of ALM domain.  CC/CQ/UCM is available for Windows and UNIX platforms.  While critically important, Configuration Management, Change Management, and Release Management activities account for less than 25% of the total ALM expenditures or effort of a normal software development project.  The table below highlights the area where CC/CQ/UCM and TFS/VSTS comparison applies.

ALM disciplines and tools

ALM Discipline

TFS &

VSTS 2008

IBM: Rational, Tivoli

product lines

Requirements management

TFS/VSTS

IBM Rational RequisitePro

Design

TFS/VSTS

IBM Rational Software Architect, IBM Rational Software Modeler

Project Management

TFS/VSTS*

IBM Rational Method Composer, RUP **

Change management

TFS/VSTS

IBM Rational ClearQuest (CQ) , IBM Rational CC/CQ Unified Change Management (UCM)

Configuration Management

TFS/VSTS

IBM Rational ClearCase, IBM Rational CC/CQ Unified Change Management (UCM)

Build management

TFS/VSTS

BuildForge

Testing

TFS/VSTS

IBM Rational Functional Tester, IBM Rational ClearQuest Test Manager

Release Management

TFS/VSTS

IBM Rational ClearCase, IBM Rational CC/CQ Unified Change Management (UCM); IBM Tivoli Release Process Manager

Software Deployment

TFS/VSTS

Tivoli Provisioning Manager

Software Maintenance/Asset Management

Microsoft SMS

IBM Rational Asset Manager; IBM Tivoli Business Systems Manager; IBM Tivoli Change and Configuration Management Database; IBM Tivoli Composite Application Manager for Applications; IBM Tivoli Composite Application Manager for SOA Platform; IBM Tivoli Composite Application Manager for Transactions; IBM Tivoli Composite Application Manager for WebSphere

* - TFS/VSTS supports Project Management discipline through process guidance, project metrics, reporting, task assignments, and integration with MS Project and MS Project Server

** - IBM Rational supports Project Management discipline through Rational Unified Process guidance and through customizing processes with Method Composer

In 1996 Rational made visionary acquisitions by bringing, among other products, RequisitePro and ClearCase (CC) under its roof.  Rational’s objective was to buy or create best of the breed products and to bundle them into suites that cover software development lifecycle.  Rational released ClearQuest (CQ) in 1998.  ClearCase and ClearQuest products have been integrated to form the Unified Change Management solution.   This solution quickly has become the market leader and won wide spread adoption.  Is there any reason, then, to consider Team Foundation Server (TFS) and Visual Studio Team System (VSTS) as an alternative solution?

In the world where a software product life span rarely exceeds even five years, ClearCase and ClearQuest are true old timers.  Their age is a testament to how great the products have been.  However, their age also shows.  Consider these factoids about ClearCase:

·      ClearCase feature set has not changed since 2002.

·      ClearCase version 7.1 (the latest) defines COM and Perl scripting as its official public interface.  COM API had been a great way to integrate and extend an application in 1997, but today COM is very dated, and .NET supplanted COM as a method of integrating apps years ago.

·      After a number of acquisitions by IBM, there are significant functional overlaps among products from Rational, Telelogic, Tivoli, and the new Jazz Technology Platform products.  More on Jazz later.

MS built Team Foundation Server from the ground up as an integrated ALM solution.  VSTS and TFS define extensibility .NET and Web Service based APIs.  The APIs into the products are consistent and straightforward.   There are no product overlaps: Visual SourceSafe had been replaced by the SCM functionality provided by TFS and VSTS.

Below is the high level solutions comparison by categories, adapted from Microsoft’s marketing analysis for the previous TFS 2005 version.

TFS vs CQ Comparison, original table for TFS2005 (https://partner.microsoft.com/download/global/40055452)

Microsoft Visual Studio® 2008 Team Foundation Server

IBM CC/CQ v7

Platform and Languages

 

By default, only Microsoft Windows®

 

TeamPrise third-party partner solution enables cross-platform (i.e. Eclipse) clients.

 

 

UNIX views can see Windows VOBs, and vice versa.

 

Transparent file access between platforms.

 

Additional product such as Samba needed for cross-platform authentication.

 

Extensibility

 

.NET object model. 

TFS Server web services based API

 

 

Mixed object models, e.g. Java, C, scripting (batch, perl, vbscript), etc.

 

Traceability

Supports Work Item traceability out of the box

Limited degree of traceability out of the box, based on CQ schema used*;

Generally CC/CQ/UCM requires a separate product, RequisitePro to support full traceability to requirements, and other types of items outside of CQ;

Parallel Development

 

Supported through branches/merging and workspaces.

 

 

Supported through streams and baselines.

 

User Interaction (UI)

 

By default, only Windows and Microsoft Office solutions.

Team System Web Access by default; in addition, a separate Work Item Web Access (WIWA) client is available (free).

TFS Eclipse plug-in by TeamPrise

 

 

Windows rich-clients; Eclipse IDE plug-ins;

Web and email clients by default

 

Distributed Development

 

No offline support.

 

No multi-site replication; proxy and stand-by are estimated to provide as much as ~80% equivalency in some cases.

 

 

Offline support through the use of snapshot views.

 

Multi-site replication through the MultiSite option (not supported by CC LT).

 

Developer Workspaces

 

Private workspaces on local disk that must be updated manually.

 

 

Dynamic views enable private workspaces that can be updated automatically (not supported by CC LT).

 

Snapshot views enable private workspaces that can be updated manually.

 

Scalability Limits

 

500 Team Projects is the maximum that one TFS server can support.

Up to 3600 TFS users

 

 

No known limits

 

* - Items defined within CQ are relatable and, thus, traceable.  Requirements, design models, etc. are outside of CQ.  Enabling traceability with non-CQ items would normally require integration with RequisitePro.

There are several key points in this comparison to emphasize.  TFS targets .NET platform development.  Even with the third party Eclipse based extensions, TFS is not yet in the position to take over the universe.  CC/CQ supports both LINUX and Microsoft .NET platforms.  If the bulk of development in an organization takes place outside of .NET, trying to configure TFS and convert processes and people to use it would likely present more challenges than value. 

Traceability conceptually is a super index relating high level ideas about what software should be and should do to the actual software assets by way of linking requirements to models and design assets, then to code, and so forth.  The purpose of having traceability is to be able to assess impact of a change as efficiently and as accurately as possible by finding interrelated pieces of information and assets.  The need for traceability from requirements to design to implementation to test varies from project to project. 

For small projects, little or no traceability may not be an issue.  Going up the scale in size and complexity of a project and/or of an organization without appropriate traceability implementation incurs increasing and significant overhead costs.  In other words, when a change to the product, due to a defect or new requirement, repeatedly demands developers to dig through requirements, design artifacts, and code to assess potential impact, the associated time and costs add up.  Even worse, such a manual assessment process often misses one or more related pieces and leads to more defects, and the cycle repeats.  CC/CQ supports traceability between CQ records and CC controlled assets.  More flexible options of relating requirements and/or design elements to CQ records or CC assets are part of the RequisitePro product, not the CC/CQ solution itself.  TFS/VSTS defines a common Work Item record underlying all types of records.  Work Item types can be customized in TFS, similarly to what RequisitePro allows, and with a better UI.  Consequently, any records can be related to each other and to the software assets under the source control.  In other words, the TFS solution has all the flexibility of what the CC/CQ solution can achieve by integrating with the RequisitePro tool for greater traceability.

On that same note, without integration with other Rational products, the scope of CC/CQ workflow only covers the records maintained by CQ.  TFS work items of all types can be included in TFS workflows.  CQ workflow design UI is based on VB (not VB.NET) forms.  A workflow is represented as a state transition matrix.  In addition, the CQ workflow actions can be extended with custom Perl scripting.  TFS workflow design UI is based on a graphical flow diagram representation of work item states and transitions that, in turn, have attributes of their own.  There are a large number of actions that one can associate with a state or a transition in TFS.  However, TFS does not provide as flexible a way to extend the state transition actions as CQ Perl triggers, unless one is willing to create VSTS IDE plug-in components.  On the flip side, CC/CQ extensions based on Perl scripting often do not justify the effort to create them: such scripts require unique Perl skills and are a costly burden to maintain and deploy to all CC/CQ clients to teams larger than “an army of one”.

CC/CQ solution is best applied in the context of other products and tools that address requirements, design, and development.  In the case of Rational, CC/CQ is often deployed as part of a Team Unifying Platform (TUP) suite.  In TUP scenario, RequisitePro and Rational Application Developer tools augment CC/CQ in terms of supporting traceability outside of CQ.

In December of 2008, IBM released several key new products: Jazz Technology Platform, Team Concert, Rational Requirements Composer, and Rational Quality Manager.  With Jazz and related products IBM is targeting the entire ALM domain, rather than following “a product per discipline” approach.  Based on the posted Rational product roadmap, IBM will replace the RequisitePro product with the combined functionality of Requirements Composer and Team Concert.  However, CC and CQ are supposed to survive the upheaval and “plug” into the Jazz platform.  Nonetheless, there are apparent overlaps between what CC/CQ and what Jazz and Team Concert do.  Organizations planning on continued investment in CC/CQ solution should prepare for the shift to the new product set based on the roadmap (see references section below).

And lastly, the pricing. Below are the TFS/VSTS prices vs. CC/CQ + either RSA or RAD or TUP suite + RSA or RAD prices without special discounts (MSRP) from IBM and Microsoft respectively.

Product

Price

IBM Rational ClearCase Change Management Solution Floating User License + SW Subscription & Support 12 Months

$6,990

 

IBM Rational Software Architect Standard Edition Authorized User License + SW Subscription & Support 12 Months (D053ALL)

$2,650

IBM Rational Software Architect Standard Edition Floating User License + SW Subscription & Support 12 Months (D052NLL)           

$4,640

IBM Rational Software Architect for WebSphere Floating User License + SW Subscription & Support 12 Months (D54LALL)

$10,210

IBM Rational Software Architect for WebSphere Authorized User License + SW Subscription & Support 12 Months (D54LILL)

$5840

IBM Rational Application Developer for WebSphere Software Floating User License + SW Subscription & Support 12 Months (D54NBLL)

$7,430

IBM Rational Application Developer for WebSphere Software Authorized User License + SW Subscription & Support 12 Months (D54N4LL)

$4,240

 

 

IBM Rational Team Unifying Platform Authorized User License + SW Subscription & Support 12 Months (D53NHLL)

$4,370

IBM Rational Team Unifying Platform Floating User License + SW Subscription & Support 12 Months (D532ELL)

$8,460

 

 

IBM Rational Team Concert Contributor Client Access Authorized User License + SW Subscription & Support 12 Months (D041ILL)

$600

IBM Rational Team Concert Standard Edition Developer Client Access Authorized User License + SW Subscription & Support 12 Months (D041ULL)         

$3,900

IBM Rational Team Concert Standard Edition Server Install with 3 Authorized Users License + SW Subscription & Support 12 Months (D041TLL)           

$50,000

IBM Rational Team Concert Standard Edition Floating Developer Client Access Floating User License + SW Subscription & Support 12 Months (D06F4LL)         

$7,180

IBM Rational Team Concert Standard Edition Floating Contributor Client Access Floating User License + SW Subscription & Support 12 Months (D06F9LL)                

$1,760

 

 

IBM Rational Requirements Composer Server 3 Authorized Users License + SW Subscription & Support 12 Months (D079SLL)

$35,000

IBM Rational Requirements Composer Author Client Access Authorized User License + SW Subscription & Support 12 Months (D06WBLL)

$5,500

IBM Rational Requirements Composer Reviewer Client Access Authorized User License + SW Subscription & Support 12 Months (D079WLL)

$1,380

 

 

IBM Rational Quality Manager Standard Edition 3 Authorized Users License + SW Subscription & Support 12 Months (D062FLL)

$20,000

IBM Rational Quality Manager Standard Edition 3 Authorized Users Initial Fixed Term License + SW Subscription & Support 12 Months (D062PLL)

$10,800

IBM Rational Quality Manager Client Authorized User License + SW Subscription & Support 12 Months (D05T5LL)

$5,000

IBM Rational Quality Manager Viewer Client Authorized User License + SW Subscription & Support 12 Months (D05T9LL)

$1,500

IBM Rational Quality Manager Viewer Client for System z Authorized User License + SW Subscription & Support 12 Months (D05TBLL)

$1,500

 

 

Visual Studio Team System 2008 Team Foundation Server

$2,799

Visual Studio Team System 2008 Team Foundation Server Client Access License (CAL)

$499

Visual Studio Team System 2008 Team Suite (feature superset of all VSTS editions)

 

$10,939

Visual Studio Team System 2008 Architecture, Database, Development, or Test Edition

 

$5,469

 

ClearCase and ClearQuest have been great tools, and they managed to survive to this day without a lot of feature changes.  The advent of Microsoft TFS/VSTS solution, followed up with IBM’s own Jazz ALM platform highlights the age of CC/CQ.  The discussion about Microsoft and IBM solutions seems to have shifted into the ALM product space rather than about individual products for a given ALM discipline.  The next logical step is to compare Jazz based products and TFS, which will be the topic of a future article.

References

Outdated, but useful, CQ vs. TFS analysis by Microsoft. Its comparison table was adapted for this article.

https://partner.microsoft.com/download/global/40055452

ClearCase clients and features

http://www-01.ibm.com/support/docview.wss?uid=swg21233090

https://publib.boulder.ibm.com/infocenter/cchelp/v7r1m0/index.jsp

http://www-01.ibm.com/support/docview.wss?rs=984&uid=swg21207634

Change, Configuration, and Release Management

http://www-01.ibm.com/software/rational/offerings/crm/

IBM ALM products roadmap

http://www-01.ibm.com/software/rational/jazz/roadmap/

IBM Rational Team Concert Editions Comparison

http://www-142.ibm.com/software/dre/hmc/compare.wss?HMC02=Q312982B67194Y87

VSTS & TFS 2008

VSTS Product comparison

http://msdn.microsoft.com/en-us/vsts2008/products/cc149003.aspx

TFS 2008

http://msdn.microsoft.com/en-us/tfs2008/default.aspx

CQ migration

http://msdn.microsoft.com/en-us/library/ms181248(VS.80).aspx

TFS Work Item Migration and Synchronization toolkit

http://www.codeplex.com/MigrationSyncToolkit/Wiki/View.aspx?title=Capabilities%20and%20Limitations&referringTitle=Home

http://blogs.msdn.com/tfs_migration/

VSTS 2008 pricing

http://msdn.microsoft.com/en-us/vsts2008/products/cc263908.aspx

Miscellaneous somewhat related links

TeamPrise Eclipse TFS plug-ins

http://www.teamprise.com/products/

History of Rational Software and its acquisitions

http://en.wikipedia.org/wiki/Rational_Software

History of IBM acquisitions

http://en.wikipedia.org/wiki/List_of_IBM_acquisitions_and_spinoffs

A comparison of several PM tools

http://blog.newagesolution.net/2008/09/choosing-thoughtworks-mingle-version.html

1 comment: