Overview
Canada's Wealth Management industry has experienced sustained growth for the past few decades, making it a sizeable business. Today, more than two million Canadian households have investment assets of $100,000 or more, according to Boston Consulting Group data.

Growth appears to continue, but the industry may have to work even harder to sustain profitability into the future by investing in technology for research, planning and management. The retention of inherited assets is also essential to future growth; and today's younger generations are demanding improved access to information to bolster investment decisions. In order to ensure success, the technologies that wealth management companies use need to be driven by the highest quality applications, so that their reputation precedes them.

Introduction
Univeris Corporation's expertise in enterprise wealth management solutions, coupled with its proprietary technology, make their product, Univeris EWMS, the most comprehensive wealth management platform in the Canadian marketplace. At the core of Univeris' success is its emphasis placed on both technology innovation and continuous quality improvement. Univeris' wealth platform is a proven technology for 10 plus years, with total and seamless integration using an open and modular architecture.

Univeris has some 23 clients across the credit union, banking, insurance and investment dealer sectors with more than $63 billion CDN in assets under management on the Univeris platform. Because of the magnitude of the assets at stake, the quality of the software in its wealth platform is critical.

Business Challenges
Univeris' biggest challenge—one that most companies only dream of—was how to effectively manage their rapidly growing company. As a result of this rapid growth, the software development team faced a number of critical issues from a lack of necessary tools to challenges with creating and enforcing standards. Development managers had to increase resources spent on coaching new developers and reviewing code once it was submitted. Management overhead was increasing yet overall productivity and quality of development work was declining.

One of Univeris' driving factors for improving efficiency and bug reduction was to focus its resources on software quality. As even the slightest problem within the software application can have serious and lasting financial repercussions. Because client satisfaction is the key to ongoing business viability, there is little or no tolerance for downtime or show-stopping bugs.

First, Univeris experimented with a static code analysis tool to help identify issues. A senior architect would run the tool manually, compile change instructions for compliance infractions and then pass them onto the team. However, it was taking a considerable amount of time to perform the entire test cycle, along with all his other tasks and projects—so it was done infrequently; and the metrics were not being tracked over time.

Implementing an issue tracking system with customized workflows provided visibility into the development process such as issues being worked on and linking related code changes to a specific issue. But they also wanted to be able to identify the quality of code written to address those issues.

With their growing company and the increasing workload handled by remote development teams, Univeris needed to become more agile and efficient with their development processes.

Solution
Univeris was looking for a solution that would help them create and enforce coding standards; and quantify their code quality in order to help developers improve their coding practices. It was then they called on the expertise of Enerjy and its Enerjy CQ2 technology.

Enerjy CQ2's Developer Module met the first need—allowing them to create and enforce coding standards. With Enerjy CQ2, they were able to look at combined metrics from the source code control system, unit testing results and code analysis on projects as a whole, per team of developers and on the individual developer level. This gave Univeris the ability to quantify individual developer output and behavioral trends for complete visibility into their Java development process.
Enerjy CQ2 technology delivered immediate benefits by being proactive with bug fixing because many bugs were caught without any testing; and its ability to decompose larger problems into smaller ones enabled them to be more effectively managed. Enerjy CQ2 also facilitated a dramatic decrease in the demand for customer service, because bugs began being addressed before the customer received the software.

After implementing Enerjy CQ2, Univeris identified 50 bugs before the application even went into production—
bugs that would have resulted in customer problems if found later on down the line. Enerjy also enabled Univeris to look at individual developer behavior and its overall effect on a development project. Enerjy CQ2 encouraged developers to take responsibility for the quality of their code to help reduce rework and improve their overall development processes.

The Enerjy Advantage
With Enerjy CQ2, Univeris received an integrated reporting system that enabled their management team to leverage data from existing systems to measure:

Compliance to coding standards

Developer trends and activities

Unit testing results

Code coverage percentages

According to Derek Schenk, Univeris' System Architect, "Enerjy CQ2 has the unique ability to tie code changes back to a specific developer. Combining unit-testing metrics, a code analyzer, a Web-user interface and services into one package was something no one else offered." (see Figure 1)

Enerjy CQ2 technology (see Figure 1) provided constant performance feedback and helped Univeris to compensate for a deficient code review process. Enerjy CQ2 metrics are provided in an unbiased way, showing the development team exactly what the condition of their code is and how the team is trending. It also helps answer the question—does that code do what it is supposed to do?
The Developer Module helped the developers easily identify simple problems that were able to be corrected before the application went into QA, where bug fixes become more costly to fix.

"The Enerjy CQ2 solution combines expert services with critical technology," said Dima Stelmakh, Vice President of Technology & Architecture at Univeris. "An unexpected benefit for Univeris was that the Enerjy installation team came on site and spent a few days installing and configuring the software. When they left, it just worked. You can't ask for more than that."

"We were unable to find any other product on the market that provided the same functionality with comparable ease and skill of delivery," said Schenk. "It was especially useful in that it integrated with existing tools and procedures."

The Results
Enerjy CQ2 has given Univeris the opportunity, not only to improve their code quality, but also to improve their processes. With Univeris' continued focus on code quality, the implementation of Enerjy CQ2 made sense as they began to outsource software development.

Immediate Visibility
On the first day of the implementation, Enerjy CQ2 immediately identified 30 high priority violations that Univeris was unaware of. Over a three-month period, 50 violations have been detected and corrected at the development level. It is extremely unlikely that those bugs would have been found through existing test methods. Had those bugs made it into QA, it would have taken at least one developer and one QA person, one day to find and fix each of the bugs. That's a savings of 100-person-days in three months or $42,000 [100/236 person days per year] at a $100,000 fully loaded average salary.

Improved Processes
Enerjy CQ2, by providing a detailed view of code quality, has enabled Univeris to change behaviors, practices and culture while helping to reduce developer rework and improve their overall development processes.

This is especially true in the area of unit testing. Implementing unit testing practices has been a challenge; and Enerjy CQ2 helped them define a process from which they can implement this practice successfully. In the past, developer's unit testing efforts were primarily manual and could not be easily quantified. Unit test coverage was subject to individual developer judgment, often leaving it for the QA department to catch.

Developers have now begun taking more responsibility for their code quality, by striving for 100 percent unit test coverage and demonstrating enthusiasm to learn how to test properly. A rapidly growing library of unit tests runs continuously providing early problem detection especially for "fix one break the other" scenarios.

Enerjy CQ2 provides a constant reminder of what needs to improve, which has driven the team to improve their software build process as well as their overall unit testing coverage. They have also created their own rules, which has led to even further quality controls being imposed that ensure a better quality product for their customer.

HighlightsBusiness Challenges

High rate of corporate expansion and outsourcing, and increased management of code quality, drove a need to focus on defining process

Identified fifty bugs right at the start—bugs that would have resulted in customer problems

Immediate saving of 100 person-days of development work ($42K)

Decreased bug count, improving customer perception

Improved developer willingness to take responsibility for the quality of his or her code

A more efficient, test driven development process

"Organizations that have no repeatable and consistent measures have no solid basis for decision making. Where this occurs, many mistakes will be made, because there will be varying opinions on what should be done and the results of change. Consistent measures give the context to decide what must be changed, and what the outcomes of those changes are."

"Set Up an AD Development metrics Dashboard, "Matthew Hotle, Gartner Research, May 2005

About Univeris
Univeris, a privately held company headquartered in Toronto, Canada, is the leader in enterprise wealth management for the Canadian market. Founded in 1991 by Carmine Tullio, president and chief executive officer, Univeris has twenty-three financial services provider clients managing over $63 billion CDN in assets across some 15,000 advisors. It offers the most comprehensive enterprise wealth management platform, Univeris EWMS, with fully integrated manufacturing, product distribution, plan administration, compliance, channel management and practice management for financial advisors in the credit union, banking, insurance and investment industries. More information regarding Univeris can be found at www.univeris.com.

About Enerjy
Enerjy develops Java™ software integrity solutions for development teams to continuously improve the quality of their application development projects. Enerjy CQ2 technology provides visibility into a quality-driven development process to aid development teams in delivering projects to specification with reduced coding errors by the required target date.

Development teams can now optimize their performance by minimizing time wasted on avoidable rework, on tracking down bugs, and in lengthy or ineffective code reviews.

Enerjy Software is a division of Teamstudio, Inc. With headquarters in Beverly, Massachusetts, Teamstudio also has offices in the UK, France, and Japan. To learn more about software integrity solutions designed to improve application quality and enhance developer productivity, please visit Enerjy's Web site at: www.enerjy.com.

About Java News DeskJDJ News Desk monitors the world of Java to present IT professionals with updates on technology advances, business trends, new products and standards in the Java and i-technology space.