CI Tools and Best Practices in the Cloud

Continuous Integration

Subscribe to Continuous Integration: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get Continuous Integration: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Continuous Integration Authors: Elizabeth White, Flint Brenton, Liz McMillan, Pat Romanski, Amit Gupta

Related Topics: Virtualization Magazine, AccuRev, Continuous Integration

Virtualization: Article

Alaska Airlines Takes Off with AccuRev

Supporting an Agile development environment

The SCM solution had to meet several key requirements:

  • Most important, the tool had to be flexible and able to adapt to the way each of the 12 development teams worked, and able to facilitate the move to an Agile development environment.
  • It had to show strong performance and the ability to handle large source code libraries.
  • It had to easily facilitate code reuse so that development teams could share code and drive up reuse of .NET code.
  • Teams had to be able to work on groups of source code files and not have to check them out one by one.
In May 2006, the airline selected AccuRev to be at the center of its best-of-breed application life-cycle management (ALM) strategy to provide more agility and order for developers, business analysts, quality assurance (QA) engineers, production services, and business intelligence (BI) staff to manage its Microsoft Windows .NET development activities.

Supporting an Agile Development Environment
Twelve teams are using AccuRev. Among them are those managing the eCommerce Website (alaskaair.com), Flight Operations including dispatching, the Alaska Airlines frequent flyer system, Finance and Corporate Business Intelligence Strategy. In total, nearly 1,000 applications for 80 to 100 projects are managed by AccuRev, providing a secure, centralized repository to increase reuse, auditability, artifact traceability, and reproducibility. In essence, tickets are purchased, planes are kept flying, and customers' flying habits are tracked, which keeps the revenue flowing.

Alaska Airlines employs Agile practices, including an iterative process, and for some teams promotes in AccuRev automatically trigger a build using CruiseControl in the range of hundreds per day.



Multistage Continuous Integration

While most development organizations will perform Continuous Integration only from the mainline due to the limitations of their file-based source control tool, Alaska Air is able to perform multistage Continuous Integration using AccuRev's built-in stream-based hierarchical model.

Two of the 12 development teams are currently employing Continuous Integration, the Architecture group and Flight Operations, one of the most mission-critical applications managed by AccuRev. Teams there will first promote to an integration test stream, where there's an automated build. Once unit testing is completed on that test stream, teams will promote it up to a QA level stream, and there will be another build at that level.

Code Sharing and Reuse
Alaska Air uses the AccuRev cross-stream linking feature and takes advantage of the ability to redefine references in Visual Studio 2005, so that its developers can automatically inherit the latest version of shared DLLs. The architecture team in particular develops a lot of common DLLs, which used to be a manual process. Teams would have to send e-mails to alert everyone that there was a new version of a particular DLL. Developers can now promote it up to the depot level and then crosslink it into all their sub-streams. Whenever there is a new version, they just promote it up and it automatically gets inherited down into all the development teams' streams or the workspaces that use it. Alaska Air can now be 100 percent certain that developers have the latest correct DLLs at compile or build time.

Virtualization
One of the tenets of Continuous Integration is that builds that get released to production do not happen on the developers' machines, but on a build server. Alaska Air is using VMware virtualization software from EMC to create a farm of build servers in which AccuRev and CruiseControl will automatically trigger a build upon each code promotion.

According to Chris Barnes, senior systems analyst and AccuRev administrator, Alaska Airlines, "AccuRev is the foundation of our Continuous Integration methodology. If you don't have a good SCM system, the rest of the process doesn't work." Virtualization is rapidly becoming a standard part of the deployment platform in IT organizations because the technology provides tangible benefits in terms of both capital cost reductions and operational flexibility. This is spurring CIOs to push for more rapid adoption of enterprise applications that fully support server virtualization.

The AccuRev server application, which runs on most Microsoft Windows, Linux, and Unix platforms, does not embed itself into the operating system (OS) kernel and does not require special I/O services, so it does not have to be installed on an isolated server. This improves an organization's strategic initiative to leverage computing resources and makes it much easier to maintain in a modern IT infrastructure than many traditional SCM tools.

Quality Assurance and Testing
Improvements in QA and testing have been huge, according to Chris. AccuRev has vastly improved quality and quadrupled Alaska Air's productivity since moving from the file-based SCM tool, realizing an effective savings of more than $400,000/year. AccuRev provides these teams with a consistent, automated standard process with increased visibility into what code streams are being tested by using Change Packages within the graphical, dynamic StreamBrowser GUI. This allows QA to manage change by issue and provides better visibility into those issues that are in every release or stream. This allows QA to test only what's broken, and to easily pull out any issue that fails the test.

No longer is QA spending valuable time managing a lot of manual merging of code changes, or testing and fixing build problems. Alaska Air has been able to move several existing QA staff who were managing this task to an HP LoadRunner load testing competency center, rather than hire additional staff from outside, saving the company hundreds of thousands in opportunity cost.

Open and Extensible
Alaska Air is currently integrating many vendor packages that will add value to its software development environment. Alaska has integrated AccuRev with the TIBCO Enterprise Application Integration (EAI) engine that is used for building workflows in order to make necessary customizations and keep track of the changes.

AccuRev is also integrated with the airline's Siebel CRM system. AccuRev stores and manages all the customizations to the CRM system used to keep track of customers' frequent flyer miles.

Users and Environment

  • Developers, business analysts, QA engineers, production services and business intelligence staff
  • Between 80 and 100 projects at any one time with nearly 1,000 applications, some running concurrently
  • Twelve teams including eCommerce alaskaair.com, Flight Operations including dispatching, the Alaska Airlines frequent flyer plan, Business Intelligence and Finance
  • Microsoft Windows .NET
  • Visual Studio, CruiseControl, HP LoadRunner, HP Quality Center, VMware, TIBCO, Siebel, PeopleSoft

    AccuRev Success Highlights

  • Savings of more than $200,000/year as a result of moving several QA staff to manage a LoadRunner load testing competency center who were previously responsible for manually merging code changes, testing, and fixing builds
  • Quadrupled QA and testing productivity using AccuRev with AccuWork Change Packages and change managed via issues, not files, realizing an effective savings of over $400,000/year
  • AccuRev enables Alaska Air to support a more efficient Agile release process
  • Support for a Multistage Continuous Integration process has further increased productivity in two of 12 teams to date
  • Crosslinks ensure that developers have the latest and correct DLLs and facilitate proper reuse
  • Support for VMware has increased efficiency in the build process

More Stories By .NETDJ News Desk

.NETDJ News Desk monitors Microsoft .NET and its related technologies, including Silverlight, to present IT professionals with news, updates on technology advances, business trends, new products and standards, and insight.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.