Home > Software Quality News > Measuring code quality provides unexpected benefits for Raymond James
Software Quality News:
EMAIL THIS

Measuring code quality provides unexpected benefits for Raymond James

By Colleen Frye, News Writer
04 Mar 2008 | SearchSoftwareQuality.com

Software quality news and advice
Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google

When financial services firm Raymond James Financial Inc. decided to employ the Application Intelligence Platform (AIP) from CAST, it was an opportunity to improve the quality of its code. But according to Caren Evans, vice president of software engineering, the company discovered some significant synergies between AIP's capabilities and several ongoing initiatives within the software engineering group that helped the company reap some unexpected benefits.

For teams now responsible for maintenance, we see a huge benefit to have transparency into the quality of code, so it will make their lives a lot easier.
Caren Evans
VP of software engineering, Raymond James Financial Inc.

CAST's AIP is an automated code inspection system that analyzes all the tiers and components of an application, from the graphical user interface to the database, to identify technical quality issues, monitor development performance and provide management visibility. CAST measures technical quality and adherence to architectural and coding standards, while providing real-time system blueprints.

Like most organizations, the St. Petersburg, Fla.-based Raymond James has a mix of older and newer applications that run in a heterogeneous environment. Evans said the environment is about 60% Microsoft, with an HP NonStop mainframe platform, and a small amount of Unix and Java. The software engineering organization is made up of about 300 people, mostly located at the headquarters, who are responsible for about 150 applications. Founded in 1962, the company today has 2,200 locations worldwide.

One reason to bring in an automated tool like CAST is help identify opportunities to deploy better maintainable code, Evans said.

"The older [applications] are harder to maintain and enhance, so the longer you go adding little pieces of functionality, the more it becomes like a patchwork quilt. Supporting and maintaining them is challenging," she said. "At the time, we were not having issues we were aware of, but even if you don't think your applications are in very bad shape, there's always an opportunity to improve and do a better job with the quality of code. So, there was a transparency we were looking for that we didn't have. You can look at incidents in the production environment, but without a tool like CAST you can't see under the covers."

AIP helps determine application maintenance needs
Around the same time, Raymond James started an initiative to restructure the software engineering group.

"Previously, we had development teams responsible for certain applications and supporting certain business units. They did new project work as well as maintenance and support," Evans said.
CAST enhances AIP
CAST announced the availability of Application Intelligence Platform (AIP) 6.1, its automated code inspection system. New in this release: a GUI with an underlying role-based approach.

> Read the story

They decided to split the organization into two groups: those who were responsible for support and maintenance teams and those who did project work.

"We found, just as a lot of IT shops have experienced, that when you start working on project work you put a timeline together based on the resources available," Evans said. "But as production problems crop up [with existing applications], people are pulled off project work. We thought if we split this up, the teams would be more successful getting project work done on time, and the people doing maintenance now would have time to do analysis and gather expertise around the day-to-day support of the systems."

In preparation for the restructuring, Evans said they thought it would be interesting to use the CAST AIP to see the state of applications.

"If you're transferring an application to a maintenance team, or the situation is a brand-new application going from project to a maintenance team for support, you can plan better in terms of support requirements by understanding the quality of the code," she said.

For example, the AIP indicated how well the code is commented. "If you have someone on the maintenance team to troubleshoot a bug in production and they've never seen that code before, they're relying on the comments to understand quickly what the program does; that's very valuable," Evans said.

CAST will tell you the ratio of code to comments, and Raymond James can set a standard in the organization that this is what they expect in the code. If something doesn't meet minimum requirements of the comment-to-code ratio, you could do something about that before it gets deployed, she said.

Evans also said that the information they get from the tool allows them to better plan and staff maintenance activities around those applications.

Another initiative that has benefited from the use of the CAST AIP is a reorganization of the company's applications so they could create full application builds when deploying code into production.

"When we loaded them into CAST, it helped us identify some dependencies that weren't clearly known, so the [AIP] has provided quite a bit of support for other initiatives," Evans said.

Catch defects and also educate staff
Lev Lesokhin, vice president of marketing at CAST, said Raymond James' approach with CAST is twofold. Not only is the firm using it to catch defects early and monitor quality throughout the process, but it sees it as investment in its staff, making everyone in the development team aware of what is good quality and how to develop applications with good quality.

"Over time this will improve the quality of their applications so they can be more transferable, freeing up developers from being stuck supporting one application because they're the only one who knows how," Lesokhin said. "Now you can pull your best developers to work on projects that are important rather than handling the issues of the day. That's their view on the long-term value of running CAST."

Bringing in a new tool can sometimes face resistance from staff, but Evans said it doesn't change the workloads of the developers and business analysts. The application lifecycle management group is responsible for owning the product and administering it for the software engineering organization, she explained.

"So there are additional duties for a small, select number of people, but it's providing more valuable information for us to manage the software engineering efforts better," she said.

Evans added, "For teams now responsible for maintenance, we see a huge benefit to have transparency into the quality of code, so it will make their lives a lot easier."



Tags: Software quality managementSoftware maintenance toolsVIEW ALL TAGS

Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google



RELATED CONTENT
Software quality management
VisibleThread aims to boost IT documentation quality, improve processes
Winning responses to "Why is QA always the bottleneck?"
Using virtual lab management tools to stop developer, QA conflicts
VMLogix LabManager adds support for vSphere 4, Hyper-V R2
Surgient 7's self-provisioning promises software testers quick IT resource access
Transitioning from AJAX to .NET what changes to expect in RIA's
The QA team's role in application performance evaluation and management
Adaptation in project management through agile
Budget-friendly Web app performance testing, monitoring tips
New requirements definition tools focus on chronic flaws

Software maintenance tools
Blueprint rolls out Requirements Center 2010
Jazz suite updated at IBM Rational Software Conference
Agile, IBM tools boost Merge Healthcare's software quality
New requirements definition tools focus on chronic flaws
CareGroup solves application performance issues with APM tool
Application performance looms large for today's businesses
APM moves up in the development life cycle
IT operations get help testing software, infrastructure changes
How to maintain, enhance legacy applications
CAST enhances automated code inspection system

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary



Software Development Methods - Extreme Programming, Agile Programming, Scrum
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2006 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts