You are on page 1of 4

CASE STUDY

go

TM

MOODYS ANALYTICS

Agile Release Management

Benefits of Go
With Go*, the entire Moodys Analytics team can easily see the product build process. This visibility helps them solve problems more quickly and deliver a higher quality product in less time.

Increase build visibility

Moodys Analytics Builds High-Quality Software Using Go for CI and Release Management
Executive SummaryMoodys Analytics provides risk management software products to leading financial institutions throughout the world. To maintain its role as the industry leader in risk management, they must quickly meet market demands for product innovation. To answer this need, Moodys Analytics uses Go* vv for continuous integration (CI) and release management to rapidly build and deploy consistently stable, high-quality software products, which helps the company stay ahead in the competitive risk management industry.

The Moodys software product is a complex domain utilizing a vast database of financial information. With Go, the team has reduced code complexities, creating a healthy and a longer- lasting code base for their RiskFrontier product.

Reduce code complexity

The Customer
Moodys Analytics is the worlds leading provider of risk management solutions to lenders, investors and corporations. Moodys Analytics products are based upon a sophisticated application of modern financial theory and statistical analysis. These software products transform vast amounts of financial data and knowledge into applied insight, providing credit risk measurement and modeling capabilities that allow businesses to better manage their credit exposure. Moodys Analytics products are used by more than 2,000 leading commercial and investment banks, insurance companies, money management firms and corporations in over 80 countries.

Ensure quick time to market

Using Go for CI and release management has provided a high level of product development predictability, ensuring that the Moodys Analytics development team delivers a quality, stable product that meets dynamic market demands. Go makes it easy for development teams, testers, operations and project managers to see exactly which builds have passed what stage in the build process, promoting better collaboration among teams.

Collaborate among teams

The Challenge
Moodys Analytics products offer credit risk models of unparalleled breadth and depth for major markets around the globe. The companys development team must maintain Moodys reputation for delivering highquality, stable software while ensuring a rapid response to requests for innovative, new features. There is no room for error in a software product that financial institutions rely upon every day to make investment decisions. Moreover, Moodys Analytics products utilize a rich data set of global financial information. Based on the Analytics database, which contains 30 years of information about more than 60,000 public and 2.8 million private companies worldwide, Moodys products are massively intricate.

For more information about Go please contact: ,


+1-415-273-8499

U.S. and Canadian customers Toll Free


+1-877 624-8467

International customers, ask to speak to a Studios sales rep


+91-80-43233722 studios@thoughtworks.com

EMAIL:

Copyright 2010 ThoughtWorks, Inc. All rights reserved. | www.thoughtworks-studios.com

*Cruise is now Go

CASE STUDY

Moodys Analytics products, which are used by most of the 100 largest financial institutions worldwide, are in high demand, especially in todays challenging global market. To meet the timely needs of their customers, the product development process must be highly predictable and visible. The team needs to know and resolve problems when they happen to keep product development moving forward in a rapid, reliable fashion. Moodys is the industry standard for risk management within the financial services industry, and they are expected to quickly provide solid and innovative products in a dynamic environment. In such a challenging market, the development team at Moodys Analytics relies upon modern Agile software engineering practices, which provide them realtime visibility into product development. As part of their ongoing goals to continuously improve, the team wanted to create a new platform to automate and integrate the process of building, deploying, testing and releasing software product applications. Moodys Analytics had been using a variety of tools for continuous integration (CI) and release management, but needed a standard platform for all their product development to more quickly build and deploy a consistently high-quality product.

complex code, but also continually gain information about overall product health during the development process. Visibility into all aspects of product development also was a primary necessity for the entire Moodys Analytics team. Go automatically provides the data to create a dashboard showing the current status of every project. This information can be seen by everyone on the team, including engineering executive management.

With (...), the whole team has gained insight into the build and deployment process. (...) has made the state of our code base and our builds visible to the whole team. This has helped us deliver high-quality software to our clients faster.
Keith Berry, head of software engineering Moodys Analytics

The Solution
Continuous Integration. Moodys Analytics chose Go, a CI and release management platform from ThoughtWorks Studios, to build and deploy their next major release of RiskFrontier, Moodys popular next-generation risk portfolio management solution to measure and benchmark credit portfolio risk. By using Go, the entire Moodys Analytics team, from developers to business managers, gained visibility into and control over the build, deployment, testing, and release lifecycle for RiskFrontier. Now anyone on the team knows both who is building what portion of the product and what changes have been made. Go gives the Moodys Analytics development team better metrics on the state of the code base. Go elegantly captures unit test coverage by providing a mechanism to store that information every time a build is run, so the team can pull reports on what percentage of code has been unit tested. In addition, Go records cyclomatic complexity statistics, so the team can not only re-factor

Go captures and records the history of product code metrics, which were previously unavailable to Moodys Analytics. With this detailed level of real-time information, management can see the overall quality of the internal code and respond more quickly to potential problems. Release Management. With Go, the Moodys Analytics team developed a customized deployment pipeline, or a sequential set of development and deployment stages, that modelled their build, deploy, test and release process. This pipeline tracked their code from its initial check-in to Perforce, Moodys configuration management solution, through its release. The pipeline allowed the team to see individual builds at various stages and enables team members to self-service the operations they need. The result is that the entire development and release process now works more smoothly, and the team is able to collaborate more effectively.

Copyright 2010 ThoughtWorks, Inc. All rights reserved. | www.thoughtworks-studios.com

*Cruise is now Go

CASE STUDY

The Go Server executes the build, deploy, test and release workflow using a grid of computers, allowing the central management of resources and providing visibility and control of the entire build process to various teams.

As the team built the RiskFrontier application, Go ran automated tests to ensure that new changes did not break any existing code. If any test failed, the team immediately fixed the code and resubmitted it. Using this deployment pipeline, a feature found only in Go, Moodys Analytics development team controlled the promotion of their code changes and could see at a glance which test suites had been run against those changes and their results. By quickly getting feedback on the health of their software development and fixing problems as soon as they occur, Moodys Analytics can deliver reliable and repeatable product releases more quickly. Also, the quality of the product release has remained consistently high throughout the development cycle. Pipeline visibility also has helped to reduce the build run time because the pipeline includes a system of record for release management. The Moodys Analytics team analyzed this data and made appropriate changes to optimize the pipeline, significantly decreasing the cycle time from code commit to release. Because the cycle time was reduced, the team could execute more builds and perform more testing, which in turn improved product quality and predictability. Go also supports a virtual server environment, a powerful feature which Moodys Analytics used to deploy RiskFrontier throughout the product development process. As part of the deployment of each build, Go instantiated a virtual server instance to deploy and test RiskFrontier. Go also allowed

the RiskFrontier product to be tested on both a 32-bit and 64-bit operating system, as Moodys clients use different environments. This automated process has saved Moodys Analytics a significant amount of time and operational expense.

The Results
By using Go for both CI and release management, the entire team at Moodys Analytics development department now enjoys increased visibility into their development and product release process. This transparency into the code base helps managers ensure the delivery of a high-quality, stable RiskFrontier product. The team also can address and effectively manage their product complexity with Go. Keeping the code as simple as possible for such as complicated domain was a critical issue for the development team. With Go, the development process has become an automated, repeatable and measurable exercise. Combined with real-time monitoring of the entire build and deployment process, the team now can more accurately predict product availability for its customers. By using Go to build and deploy RiskFrontier, the development team at Moodys Analytics can successfully answer the demands of the marketto quickly and consistently develop and deploy a high-quality product without compromising the integrity of the software architecture.

Copyright 2010 ThoughtWorks, Inc. All rights reserved. | www.thoughtworks-studios.com

*Cruise is now Go

CASE STUDY

About ThoughtWorks Studios


ThoughtWorks Studios is a global leader in Agile software development tools, and its products can be found in development organizations seeking sustainable Agile adoption. The companys Adaptive Application Lifecycle Management (ALM) solution provides a platform for managing all aspects of software development, from requirements definition and project management to test automation, quality assurance, and release management. Adaptive ALM consists of the integration of three products: Mingle (project management), Twist (test automation), and Go (release management). Each tool is available as part of a complete lifecycle solution or as a stand-alone product. Backed by more than 16 years of experience in Agile delivery, ThoughtWorks Studios is the product division of the ThoughtWorks, Inc., the pioneering leader in Agile development. ThoughtWorks Studios has 200 customers in more than 20 countries. The company headquarters is co-located in San Francisco and Bangalore, with offices in London and select cities in Europe, Asia and Australia. For more information, visit www.thoughtworks-studios.com.
TM TM

Mingle, an Agile management and collaboration tool, provides a common workspace for all team members and an automated system of record for all projects. Mingle can adapt any existing workflow process and easily manages daily development activities. Offering true-to-life visibility into the entire development process for all stakeholders, Mingle helps development teams become more open and collaborative.

Twist, an automated testing solution, provides English-like constructs, making the testing process more productive for all team members. As applications grow in complexity, Twist helps to more easily maintain complex test suites. These suites keep pace with application development and are held as long-living assets.

go
ThoughtWorks Studios

TM

Agile Release Management

Go provides both continuous integration and release management and can drive development and IT operations to collectively plan continuous product releases. Go offers deployment pipelines and a zero-configuration build grid, which simplify the release management process. Unlike open-source tools, Go scales to meet the needs of a complex development project with numerous dependencies.

CALL: +1-415-273-8499 | U.S. and Canadian customers +1-877 624-8467 | Toll Free +91-80-43233722 | International customers
(ask for a Studios sale representative)

EMAIL: studios@thoughtworks.com WEB: www.thoughtworks-studios.com

SAN FRANCISCO | CHICAGO | LONDON | BANGALORE | BEIJING | MELBOURNE

Copyright 2010 ThoughtWorks, Inc. All rights reserved. | www.thoughtworks-studios.com

*Cruise is now Go