Free Webinar: The Business Case for Pragmatic ALM - Agility with Governance

December 1, 2008

As an AccuRev blog reader, you’re welcome to attend our upcoming free webinar that will discuss the intersection of Agile development and governance:

As more and more software development teams adopt Agile or other iterative processes it becomes difficult for them to reconcile the current state of their governance practices with a need for greater speed and improved productivity. Developers get frustrated with overbearing compliance regimens that fence them in and stifle creativity, while their managers struggle with the need to balance innovation and speed with predictability and control. In today’s market environment, eliminating waste and fast implementations that demonstrate value quickly are essential.

Join experts from AccuRev and special guest Forrester Senior Analyst Jeffrey Hammond, as they examine the market trends that are driving many organizations to reassess their software development and release processes, and what steps and tools these development teams are taking to best support heterogeneous software development process environments. You will also see a live demonstration of how to implement pragmatic ALM with AccuRev.

Attend this Webinar and learn:

How Agile processes and compliance can coexist in harmony

What pragmatic ALM is and how it can help you solve today’s business challenges

How to manage multiple processes dependent on project requirements (Waterfall, Agile, etc.)

Best practices for optimizing tools and processes for both software development and release management.

When: Thursday, December 4 at 1:00 PM EST

Register: The Business Case for Pragmatic ALM: Agility with Governance


Agile Requirements Traceability with AccuRev and Rally

June 11, 2008

Today, AccuRev and Rally announced our technology partnership. You can read the press release here. Since I was part of the engineering team that did the initial proof-of-concept integration between AccuRev and Rally, I thought I’d spend few moments writing about the integration and how it helps customers connect requirements managed in Rally with code changes managed in AccuRev.

First, for those of you who prefer the movie to the book, you can view a short video demonstration that I recorded here. It highlights the main functionality of the integration.

Now to the details. Rally provides agile project management, including story and defect tracking, to assist customers in managing the rapidly changing flow of requirements and issues that are common in Agile development processes. AccuRev provides innovative stream-based SCM and integrated issue tracking to enable software process automation within the SCM tool. The integration ties AccuRev and Rally together to tighten the loop between requirements and defects, and the code changes that developers perform in order to satisfy those requirements or fix the defects.

The integration, written in Ruby and Perl, consists of three parts.

1. The integration queries AccuWork, the integrated issue tracking system that is available with AccuRev, for all ’New’ defects. It then transfers these defects into Rally, and makes an annotation in a custom Rally field called ‘AccuWork’. This field stores the AccuWork issue ID number.

2. When developers working in AccuRev make a code change, they will promote that code to an AccuWork issue, and place the ID of the Rally defect (created in the first part of the integration) in the promote comment. The AccuRev server_post_promote trigger (written in Perl) then fires and executes another piece of Ruby code that parses the promote transaction and sends relevant information about the code change to the Rally defect specified in the promote comment. This information is entered into Rally automaticaly and shows up as a ‘Discussion’ entry on the defect. Currently the integration posts the names and version identifiers of the AccuRev files that changed, the user id of the developer who did the change, and the timestamp of the change.

3. Finally, when a developer or Product Owner using Rally sees the code change, they can set the status of the defect to ‘Fixed’. Ruby code can then be run automatically that looks for all ‘Fixed’ issues in Rally, and changes their status to ‘Fixed’ in AccuWork. It does this by looking for the custom field ‘AccuWork’ created in the first part of the integration, extracting the issue ID number, and formulating an update XML message to AccuWork instructing AccuWork to update the specified issue.

That’s pretty much it. Working in Ruby and using Rally’s Ruby REST API was very straight-forward, as was working with the AccuRev XML API for querying and updating AccuWork. The end result is an early stage integration that provides basic requirements traceability between issues in AccuWork and Rally, and the coding activities of developers. I hope that if anyone is interested they’ll view the video and let us know what other features they’d like to see, so we can add them to our backlog and to future iterations of this integration in engineering.


Vim plugin for AccuRev - 1.0 Release

January 31, 2008

I’m happy to announce the first gold release of the AccuRev SCM integration for Vim!

For those AccuRev users Vim plugin - File Editingout there that know the true power of the vim editor, life just got even better. Now you can perform over 30 commands directly within vim including keep [\k], promote [\p], update [\u], merge [\m], revert [\rb], diff [\db], status search [\s], and more! The plugin is per-buffer so you can work on multiple files concurrently and perform AccuRev actions on each file Vim plugin - Multiple Buffersindependently. In addition, you can work in either console or GUI (gvim) mode! Here are some additional screenshots of the plugin in action.

This vim plugin has its own site at www.vim4accurev.com for downloads, announcements, documentation and user feedback (ala blog style). You can download the plugin from the download page.

The plugin currently requires Vim 7.x and supports AccuRev 4.5.x and the latest 4.6.x. I developed and tested the plugin on both linux (Ubuntu 7.10) and Windows (XP) platforms.

Important note: While the plugin was developed by an AccuRev employee (me) and vim-user for 10+ years, it is considered a third-party open-source plugin and is not officially supported by the folks @ AccuRev support. That being said, I’m proud of the plugin and welcome feedback and enhancement requests for the next release. You’ll find my contact information on the plugin website.

/happy vimming/ - dave


AccuRev is a Jolt Award 2008 Finalist

December 21, 2007

AccuRev 4.6 for ClearCase, which includes our new ClearCase Coexistence Adapter, has been selected as a Finalist in the 2008 Jolt Product Excellence Awards! James has been sharing with you some of the core new features in AccuRev 4.6 in his previous posts, such as the VersionSlider and viewing work-in-progress at the Issue level, but for a more detailed look, check out the What’s New in 4.6 Web page.

2007 was truly the year of both SCCM conversion, and co-existence (a relatively new concept). While AccuRev added significant new features to its core offering this year, enabling co-existence with leading SCCM solutions is jolting in a number of significant ways.

AccuRev is the glue that allows teams to continue using their existing SCCM infrastructure, while integrating AccuRev into new or existing projects.  This eliminates risk and potential disruption associated with a comprehensive one-time conversion, and provides freedom of choice.

AccuRev 4.6 for ClearCase enables adoption of AccuRev in previously homogenous ClearCase environments, through real-time bi-directional synchronization without rework or porting. Ultimately, these organizations will save time, money, and deliver higher quality software.

Jolt Product Excellence Winners for 2008 will be announced at the SD West conference in March.

Happy Holidays!


QCon’07 San Francisco - Agile Conference

November 9, 2007

For those tracking the movement of luminaries such as Martin Fowler and Kent Beck or looking for scalability advice from the architects at companies like Orbitz, Ebay, and Linked-In… QCon ‘07 in downtown San Francisco is the place to be!

The conference is packed with senior architects, software engineers, and open-source contributors galore — over 400 were rumoredDamon Poole / Cliff Utstein - AccuRev - QCon’07 to be in attendance. With speaker topics ranging from enterprise scalability to Agile practices, the audience was nothing short of being at the top of their game. Huddled together at the entrance to the conference rooms were a David Thomas - AccuRev - QCon’07number of vendors showing off new warez including AccuRev. Here’s a shot of Damon Poole & Cliff Utstein (top-right), Dave Thomas (left), and John Wall (bottom-right). The AccuRev booth had a John Wall - AccuRev - QCon'07constant flow of folks amazed at how the stream-based architecture brings a refreshing approach to managing software configurations and supporting agile practices. We also had some cameo appearances from existing customers like Authorize.Net and Orbitz.com.

Agile development methodologies is a major theme of the conference. For someone looking for advice on agile, just standing in the middle of the exhibit hall is all it takes — everyone is talking about best practices, success stories, and failed attempts.

We had a constant stream of people intrigued by our stream-based architecture and inherent support for agile practices. Here’s a list of common discussion points:

private workspaces: commit-early, commit-often

stream inheritance: merge-early, merge-often and sharing iterations early and automatically with parallel development efforts

issue tracking integration: assign, deliver and track development activity to stories/issues/features

continuous integration: integrations with cruise control, finalbuilder, electric-cloud, and others

refactoring: IDE integrations with eclipse, Intelli-J, Visual Studio support application-wide refactoring with version control

staged workflows: organize distributed teams and isolate integration areas from testing areas for explicit and repeatable access to known configurations.

snapshots: guaranteed reproducibility of labeled configurations for builds known to be ‘good’

reparenting: retarget active development to known good configurations for testing or stable development

If you didn’t have a chance to attend this years QCon, be sure to put next years event on your calendar!

/happy conferencing/ - dave