Jazz Hands – Administration and Cost of Ownership

I get inspiration from a lot of sources.  My latest came from my customers, and my daughter.  I was relaxing last weekend, sitting around a campfire with my wife and my daughter.  It was one of those times when you talk and exchange ideas with your kid.  I was thinking about how nice things were, but thoughts of work crept into my head, and I was thinking about the many customer requests for “typical” administrative headcounts that I have seen in the past few weeks.  Right about this time, my daughter pipes in with the final piece of her story about her skating program (she figure skates), “..and we decided that we needed to be more visual, you know, have more Jazz hands”.  It seemed like the perfect title for a blog entry on administration of Jazz based technology, and specifically Rational Team Concert (RTC).

Jazz is a centrally based repository, which relies on a simple architecture to provide software development services to it’s users.  The details of this architecture are not particularly important for the purposes of this discussion, what is important is how Jazz manages the way it is configured, and how it holds data.  At the core of Jazz is the concept of a process template.  This is an XML file which describes in detail how a process works within the Jazz framework, what roles exist, the permissions that the roles established will have, the types of objects (work items) that exist, their associated workflows, and approval processes.  Modification of this XML file can be done via text editor, or by using the GUI in Rational Team Concert.  It is much more than a state engine, it helps define a process, and it allows that process to be applied to individual projects in a uniform manner.  The key point here is that the process is just another piece of data that lives within a Jazz based repository.

Why is this important?  Most tools allow you to configure how they will work (where files are stored, how records are kept, etc.), and they also let you enforce workflows and process.  The key difference is that in order to modify the process, you need to have some understanding of how the tool works, and then you need to interact with the tool to implement these process features.  ClearCase used triggers, which could be implemented through the writing of scripts that were attached to the repository environment in a very tool specific manner.  ClearQuest used hook code (specific implementation of Visual Basic or Perl which interacted with the API to effect specific business rules), or it’s own interface for defining records, workflows, fields and so on.  Other tools all follow a similar paradigm.

With a Jazz based implementation, the process can be manipulated with a GUI, and can be done without specialized knowledge of the tool API, or the tool inner workings.  I know what you are thinking, what in the world does this have to do with tool administration?  The subtle difference manifests itself in some significant ways in the real world.

  1. Tool Administrators no longer need to know some programming or scripting language.  Everything is GUI driven, and it all happens on a centrally located server, not some distributed set of resources that need to be managed and coordinated.  Tool administrators can support users from around the world, without leaving the data center.
  2. Database Administrators no longer have to perform tool specific steps to do backup and recovery operations on the repository databases.  They do not need to have ANY tool knowledge.  Tool administrators do not need to have any specialized database knowledge.  Each can live safely within their own area of expertise.
  3. Process engineers, Subject Matter Experts (SMEs), and project leaders can now modify individual project processes on their own (assuming that their roles permit them to) without having to get tool administrators involved.  They can modify the processes used for a project, without impacting the processes used by the organization as a whole.
  4. Jazz based solution architectures are more simple and straightforward, enabling easier understanding of the architecture, easier configuration, and reduced maintenance.

While this may not seem significant, the impacts on cost of ownership, and the number of “Jazz Hands” that an organization needs to support their software development infrastructure are significant.  In the past, the ratio of users to administrators usually had these types of typical values:

  • ClearCase (complex deployment) – 100 : 1
  • ClearCase (simple deployment) – 350 : 1
  • ClearQuest (complex deployment) – 200 : 1
  • ClearQuest (simple deployment) – 500 : 1
  • Subversion (complex deployment) – 200 : 1
  • Subversion (simple deployment) – 400 : 1

Now with Jazz, IBM is hosting an internal deployment of almost 20000 users, with a staff of 5 administrators.  This is a ratio of roughly 4000 : 1.  Granted, the administrators that we have internally are a pretty sharp bunch, and they do have a responsive support channel to our product development teams (grin).  Even if I assumed that a “regular” Jazz administrator was only half as effective, that still leaves us with a gaudy ratio of 2000 : 1.  This represents an enormous cost savings for our customers deploying Jazz technologies.  In addition, these administrative resources no longer need to know and understand tools, software development processes, and scripting languages.  They just need to know a little bit about Jazz, which is pretty easy to pick up, and easier to become enabled with than any of the other ALM tools out in the marketplace.  The cost savings are big, and the reduced complexity is an additional benefit.

So let’s bring it back to administrative costs.  If I have an organization of 200 people in software development, the only gain I will realize is that my overall environment is simpler and easier to understand.  It means less complexity.  If my organization is larger, say 2000 people, then I begin to realize some impressive savings.  For 2000 developers, a ClearCase/ClearQuest environment may have used 3 ClearQuest administrators, and 5 ClearCase administrators worldwide.  If I were to assume a relatively cheap fully burdened engineer rate of $60000 per person, this would cost me roughly $480,000 a year.  With some other less functional tools, I might need 4 or 5 overall administrators, for a cost of $240,000 per year.  With a Jazz based infrastructure, an RTC implementation would need a single administrator, for a cost of $50000 per year.  This represents a significant cost savings, and when coupled with the reduced hardware footprint needed for Jazz based offerings, it can quickly add up.

12 thoughts on “Jazz Hands – Administration and Cost of Ownership

  1. I won’t argue that Jazz/RTC will beat CC/CQ hands down on admin, however I can’t believe the claims about subversion.

    I have certainly seen deployments of subversion which had practically zero administration (completely self-service) for very large distributed teams in the 1000s. Using similar dodgy maths to the above, assuming we only had 1000 active users and it required 2 hours per week operational support for subversion we’re talking a ratio around 20000:1.

    The only support required for these installations was operational around disk space usage, backups, etc, which I’m assuming would still be required for Jazz (with additional DBA operational maintenance as well I’m guessing)?

    1. dtoczala

      Lets be honest here, and identify all of the support. “Completely self service” means that instead of having one or two people doing administrative duties, the load is spread out to about 100 “fractional” people. Setting up branches, doing merges, setting up new user accounts, and setting up governance and process controls does not just magically happen. Someone needs to put in the effort to do this. The lion’s share of administration is in setting up new projects and user training, which would be the same with any toolset. Established Jazz efforts need practically no administration, and are similar to your Subversion “self service” example.

      Someone also needs to do the “care and feeding” of the backend database, backups, and other associated maintenance. I strongly believe that once an RTC environment has been established, a similar Subversion environment (with some process and access controls) would require the same, if not more, administration.

      So if I look at this objectively, I can say that it is roughly equal. Some teams may find one approach easier than the other. With that being said, the scalability and additional capability provided by RTC (and by extension, Jazz), make it quite attractive for a number of reasons.

  2. Pingback: Jazz CLM and Open Source – Comparison and Strategy « Dan Toczala's Blog

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.