AccuRev is a Profitable Transition for Financial Software Developers

Executive Summary
We are a large financial software company that prides itself on our ongoing product development efforts. In our field, we need to integrate constantly changing modes of analysis with our management systems. Our multifaceted, highly skilled development team works with client-driven suggestions and the demands of the marketplace to continually enhance our financial and economic systems. AccuRev's convenient stream-based architecture has enabled us to deliver results to our clients quickly and efficiently in order to meet our annual new-release deadlines.
Background
Having limped along for years with SourceSafe, we knew we needed to get an enterprise-strength SCM solution in place. We are at the top of our game, and we recognize that the success factors for our next phase of business have changed: we need to emphasize efficiency, repeatability, and robustness of our development process. Several of us had experience with numerous other SCM solutions, including RCS, SCCS, CVS, and ClearCase. AccuRev software presented several unique advantages over these products, including fast snapshots, atomic transactions, simple yet powerful usage, and the stream-based architecture and interface. After summarizing the benefits of moving to AccuRev, the business case was surprisingly easy to make, and senior management approved it enthusiastically.
Improved developer efficiency gave us a soft-dollar break even point within a few months. But the more important measurement is risk reduction: we replaced an ad hoc, clumsy, and error-prone patching process with a simple and robust process. Because of our huge client base, we support up to several dozen minor releases for clients. Now we are finally able to stop worrying so much about whether some of these patches are actually built correctly! Since we are currently ahead of our competition, we have everything to lose from reputation risk, and we need to be sure that each patch release contains exactly the changes our clients expect -- no more, no less.
"Our company chose to replace Microsoft Visual SourceSafe with AccuRev."
With SourceSafe, we had to create an ad hoc, error-prone manual process by which a patch baseline was assembled from individual files. Missteps along the way often caused confusion and even resulted in patch releases that were impossible for us to rebuild! Using streams in AccuRev, we now create a separate patch stream for each minor release that is shipped to a client. This patch stream is based on a release snapshot and provides an easy way for developers to start, work on, and finish patches without any confusion.
"We achieved a fast return on our investment with AccuRev."
We've also derived a lot of value from AccuRev's support for forward-fitting and back-fitting changes. Again, due to our high number of client releases, we often need to sync up several releases and/or streams with the same changes. Rather than type them in manually each time, or cut and paste and hope for the best, we use AccuRev's "merge from" and "patch from" capabilities.
"AccuRev has a host of features that we really love."
AccuRev software can even track changes across file space changes such as renaming or moving files and merge them with smaller in-file bug fix modifications. We use this feature all the time to sync up our maintenance and refactoring streams.
Another central feature is the ability to do private check-ins. It's hard to measure the negative impact of being afraid to check in files, until you are finally free of it. With a system like Source-
Safe, where every check-in means other people are immediately exposed to your changes, developers often hold off checking in for a variety of artificial reasons, such as these: they aren't sure whether it'll break the integration build, or they heard that we're doing a release build today. This invariably leads to a lack of communication, more cumbersome merges, lost work, and confusion.
"The main feature which enabled us to clean up our patch process is the ability to create streams."
With AccuRev software, developers can do a private check-in (called a "keep" in AccuRev terminology), and this has zero cost: no impact on other developers, and virtually no time to execute. Some of us do a keep after every successful coding step, just to ensure our valuable changes are always in the system. This single feature has changed the way we code and think about our projects, allowing us to be a more agile development shop.
AccuRev’s stream-based architecture allows groups of developers to work collaboratively on longer term tasks.
Since it's so easy to create intermediate shared streams for smaller team efforts, groups of two to four developers often use shared streams for longer-term tasks. They can promote code to the shared stream for group integration and code reviews, and finally promote up the line when the task is complete. This kind of flexibility is categorically absent in other SCM systems that don't support streams. Even ones that have branching don't provide the ease of use and clarity that AccuRev streams do, so shared branches are often avoided in these systems.
"The revert capability in the AccuRev software is one to be commended."
We recently got a huge win from AccuRev "revert" capability. We had applied a large-scale refactoring to several hundred files, only to discover a few days later that it happened to introduce a subtle bug. In order to return the code to normal behavior, we needed to undo this large-scale change. AccuRev allows an entire transaction comprising many files to be reverted in one step; since our whole refactoring was one transaction, we just reverted it and were done. How is that for a silver bullet? Few of us care to think about how difficult that would have been in SourceSafe.
