GMAC-RFC Uses Windows DNA to Build an Automated Loan Underwriting System

Using the Microsoft® Windows® DNA architecture with COM components, GMAC-RFC created an automated loan underwriting system that reduces turnaround time from several days to less than a minute! Developed in just eight weeks, the system is easy to maintain, provides flexibility for expansion, and gives GMAC-RFC a host of reusable components that are already reducing development time for other projects.
 

An automated loan underwriting system would make it easier for loan sellers to do business with us, so they wouldn't get discouraged by the large amount of paperwork -- plus it would keep us from wasting our time on non-qualifying loans.

                              Dan Bettenburg
                              Managing Director
                              GMAC-RFC


 
Loan purchasing and reselling is a highly competitive business. It's also one that traditionally requires a lot of time-consuming paperwork on the part of both buyer and seller. Simplifying the application and analysis process through automation would not only increase both buyer's and seller's productivity, but would also provide the buyer with a competitive advantage by making it easier to do business with the company. This was the reasoning that led GMAC-RFC -- a subsidiary of General Motors Acceptance Corporation with headquarters in Minneapolis, MN -- to develop AssetWiseSM, an automated loan underwriting system.

Simplifying the Sales Process Makes Good Business Sense

The market that GMAC-RFC is in consists of purchasing loans that don't meet agency (Fannie Mae and Freddie Mac) lending criteria -- and then reselling these loans in the secondary market. The loans that GMAC-RFC targets include "jumbo loans" (those too large to be handled by the federal agencies), those involving people with lower credit ratings (a growing category in today's economy), and those involving certain types of properties that the federal agencies don't handle.

In the past, to determine whether a loan offered by a prospective seller met its purchase criteria, GMAC-RFC would send the seller a document several hundred pages long outlining its underwriting criteria. The seller would then have to spend an hour or two studying this document to determine if the loan met GMAC-RFC's criteria -- a process that was particularly time-consuming in cases involving questionable credit. Then GMAC-RFC's underwriters would take an hour or two to analyze the seller's response, verifying that the loan met its purchase criteria and determining what grade to apply to the loan, which GMAC-RFC product category it fit into, how to price it, and various other factors related to the purchase process. What with the time required to mail responses back and forth, the entire process could take several days. And, after all that, it still could turn out that the loan was a bad fit -- in which case the time would have been essentially wasted.

Not a Problem, But an Opportunity

In the spring of 1996, Dan Bettenburg, managing director of GMAC-RFC, decided this situation offered GMAC-RFC an opportunity to gain an edge over its competition. He reasoned that if GMAC-RFC had an automated system that could take information straight from the seller's computers and process it to determine whether it met the company's purchase criteria, GMAC-RFC would not only save itself and its customers time, but also be able to give its customers a quicker response -- thereby gaining a competitive advantage. "An automated loan underwriting system would make it easier for loan sellers to do business with us, so they wouldn't get discouraged by the large amount of paperwork -- plus it would keep us from wasting our time on non-qualifying loans," says Bettenburg.

Previously, Bettenburg's group had tried to simplify the process by distributing an AssetWise wheel to loan sellers. The wheel consisted of a series of concentric scales that, when properly aligned, provided an indication of whether a specific loan would meet GMAC-RFC's purchase criteria.

"The wheel helped somewhat, but we figured that automating the wheel would be better yet," says Bettenburg. So in July of 1996, he met with Deb Hutchinson, GMAC-RFC's CIO, and Brad Luther, who became the technical project lead for the AssetWise interface team, to get the project under way.

No Time to Waste

A key factor in selecting the development tools and solution architecture was time. Bettenburg wanted to be the first to bring an automated loan underwriting system to market -- and he wanted to able to demonstrate a pilot at the October conference of the Mortgage Banking Association. By the time the IS group had assembled a team and done some preliminary analysis, it was August, giving them just two months to create the solution.

In the past, GMAC-RFC had been a UNIX shop -- and the developers initially planned to create a UNIX-based proof of concept. But their desire for a component-oriented approach soon led them to abandon UNIX in favor of Windows Distributed interNet Applications (DNA) architecture. To build AssetWise, the developers created a series of Component Object Model (COM) components using the Microsoft Visual C++® development system in Visual Studio™ 97. They chose this approach based on three key advantages:

  • Better tool support. "Choosing Windows NT® over UNIX gave us access to two great tools -- Visual C++ and the ActiveX® Control Wizard," says Craig Andera, system architect for the project. "These tools ended up saving us a significant amount of development time."

  • Accelerated rapid development and deployment. "By allowing the application to be divided up among several developers, the COM approach significantly shortens the development cycle," says Brad Luther, technical project lead for the AssetWise interface team. "With all developers working to the same set of defined interfaces, there's no problem integrating the components at the end."

  • Reusable components. The component-oriented architecture provided GMAC-RFC with reusable components that could be incorporated into other applications, further reducing development time for future projects.

Three-Tier Architecture

AssetWise uses a three-tier architecture to isolate the business logic from the customer interfaces and data storage. The customer interface and data storage tiers consist of pre-existing systems -- so all the development work focused on creating GMAC-RFC's business logic and giving the middle tier the ability to interoperate with these pre-existing systems.

First Tier: Customer's System

To make the loan submission and analysis process as simple as possible for its customers, GMAC-RFC decided not to create a first (or user interface) tier for the solution. Instead, the customer's own system would serve as the first tier. This might seem like a problematical decision, in view of the fact that GMAC-RFC works with hundreds of sellers, each of whom may use any of some 50 commercial loan origination systems -- not to mention any number of home-grown variants. But most sellers sell loans to Fannie Mae and Freddie Mac, so they already have the ability to communicate with the systems used by those agencies. Therefore, GMAC-RFC decided to make these commonly used formats the first tier of the application.

For the October 1996 pilot, the developers used the Fannie Mae FTP (file transfer protocol) desktop underwriter as the first tier. Later, they added support for the newer, proprietary Fannie Mae SBA (service-based architecture) system and the Freddie Mac Socket (TCP/IP) protocol. The developers are currently working on support for the DCOM (distributed component object model) protocol for customers who want to hook up with AssetWise directly.

Middle Tier: Heart of the System

The middle tier contains several layers of COM components, as shown in the accompanying diagram. The first layer, the listener components, runs on one server; all the other layers run on a second server. The use of two servers provides an additional layer of security, keeping customers' systems from directly contacting the server storing the business logic. Both servers run Microsoft Windows NT Server version 4.0. The middle tier layers consist of:

  • Listener components. This layer communicates directly with customers' systems. The listener components receive underwriting requests from customers and forward them to the request handlers on the second server. Then, when the requests have been processed, the listener components receive the results and return them to the customer.

  • Request handlers. The request handlers receive information about the seller, the loan, and the mortgagee's credit rating from the listener components and call the proper input translators to translate this information into the AssetWise format. Once the translation is complete and stored in the briefcase, the request handlers call the AssetWise engine, which initiates the loan underwriting process by calling each of the business components in turn. When the analysis is complete, the AssetWise engine notifies the request handlers, which then reverse the process: they take the results from the briefcase, call the proper output translators, and send the results back to the listener components -- which, in turn, return the results to the customer.

  • Translator components. This layer consists of input translators, which translate data from the seller's format to the AssetWise format; and output translators, which do the reverse. Input translators also refer to the database to determine the seller's identity and any seller-specific criteria to be used in grading the loan (that is, determining its credit rating) or slotting it (determining which GMAC-RFC product it fits). To promote easy reuse, translator components typically are designed to handle a subset of the incoming data (such as a credit report) rather than the entire input stream.

  • AssetWise Engine. The engine has little business logic itself, but is the orchestrator of the entire analytical process. It calls each of the business components in turn to determine whether GMAC-RFC is interested in purchasing the loan and under what conditions.

  • Business components. These components contain all the business logic for performing the underwriting analysis. Each analysis step -- grading, slotting, pricing, and so forth -- is a separate COM component. After each component completes its analysis, it stores the results in the briefcase. Certain components also obtain information from the database.

  • Briefcase. The briefcase is a temporary storage and retrieval device. When the input translators complete a translation, they store the results in the briefcase. When a business component needs information about the loan, it looks in the briefcase. And when each of the components has performed its task, it stores the results in the briefcase.

Third Tier: Data

The third tier is an ORACLE database running on a UNIX-based Sequent system. Like the first tier, this third tier is a pre-existing system that was tied into the middle tier via SQL code and ODBC (open database connectivity) drivers.

About the Development Process

Development of AssetWise began in mid-August 1996 with a team of five. By mid-October -- just eight weeks later -- GMAC-RFC had a functioning pilot.

Adding two more developers and a business analyst, the team continued working on the project and had a second release ready in May 1997. This release added support for a second Fannie Mae format, SBA. It also added additional business functionality, allowing the application both to accept more detailed information from customers and to provide them with a more complete evaluation.

Adding five more people to the team, the developers continued to work on the project, and five months later, in October 1997, had a third release ready. "By this point, we were more familiar with COM and could take better advantage of it, so in this release we concentrated on making the componentization more granular," says Luther. "As a result, it's now easier to make changes to the application -- for example, adding support for new technologies in the first tier -- and to reuse sections of code. We also used the feedback we got from the business side to provide them with more functionality and better support."

How GMAC-RFC Has Benefited

GMAC-RFC's management views AssetWise as a huge success. By automating the loan underwriting process, the company has reduced turnaround time for its customers from several days to less than a minute! In doing so, it has created a major competitive advantage for GMAC-RFC, resulting in a significant increase in loan purchases.

In addition, the application's use of the Windows DNA architecture and COM components provides several significant benefits to GMAC-RFC's development teams, including:

  • Accelerated rapid application development. The component-oriented architecture makes it easy to divide up a complex project among multiple developers, resulting in greatly reduced development time. "We were able to create AssetWise in about a third of the time that a monolithic application would have required," says Luther.

  • Easy integration with existing client and back-end systems. The use of COM components for input and output translation made it easy to integrate the application with customers' existing loan origination systems, resulting both in quicker development (because there was no need to create a user interface tier) and greater convenience on the part of customers (because they didn't have to learn a new system). Similarly, the use of SQL code and ODBC drivers allowed the application to communicate with an existing ORACLE database, eliminating the need to write a third tier.

  • Flexible system that's easy to expand. The Windows DNA architecture makes it easy to integrate new capabilities. For example, if GMAC-RFC wants to add the ability to accept input from a new loan origination system, all the developers have to do is add new listener and translator components.

  • Easy maintenance. Windows DNA makes it easy to modify the code if business rules change because it isolates the business logic. So if GMAC-RFC changes its slotting criteria, for example, only a single component would need to be modified and tested.

  • Reusable components for other applications. Other organizations within GMAC-RFC have already reused several AssetWise components in their applications. By doing so, they not only reduce development time but also ensure that GMAC-RFC's customers receive consistent results. Organizations can also easily change the capabilities of a reusable component by simply adding a new interface. That way, AssetWise can continue to use the component in the old way and the new application can access the new functionality.

Future Plans

GMAC-RFC continues to enhance AssetWise by making its components more robust. The company also views its repository of COM components as a strategic asset and is reusing AssetWise components at every opportunity. In fact, GMAC-RFC has set up a reuse committee that publicizes new components as they are developed, so all developers within the IS organization will be aware of reuse opportunities.

Rick Greenwood, managing director and chief technology officer at GMAC-RFC, has become a big fan of component reuse since the AssetWise experience. "We're pretty impressed with how easy it is to build and use components," he says. "We've found that, by focusing on component reuse, we can significantly improve developer productivity, make our code more consistent and error-free, and bring new products to market more quickly."

GMAC-RFC has even set goals for component reuse to ensure that it takes full advantage of the benefits available from this approach. "For the first year, we're aiming for 20 to 30 percent of our code to consist of reusable components," he says. "Long-term, we'd like to get those numbers up to 60 to 70 percent."

GMAC-RFC Feedback on Building with DNA

Choosing Windows NT over UNIX gave us access to two great tools -- Visual C++ and the ActiveX Control Wizard. These tools ended up saving us a significant amount of development time.

               Craig Andera
               System Architect
               GMAC-RFC
 

By allowing the application to be divided up among several developers, the COM approach significantly shortens the development cycle. With all developers working to the same set of defined interfaces, there's no problem integrating the components at the end.

               Brad Luther
               Technical Project Lead, AssetWise Interface Team
               GMAC-RFC
 

…in this release we concentrated on making the componentization more granular. As a result, it's now easier to make changes to the application -- for example, adding support for new technologies in the first tier -- and to reuse sections of code.

               Brad Luther
               Technical Project Lead, AssetWise Interface Team
               GMAC-RFC
 

We're pretty impressed with how easy it is to build and use components. We've found that, by focusing on component reuse, we can significantly improve developer productivity, make our code more consistent and error-free, and bring new products to market more quickly.

               Rick Greenwood
               Managing Director and Chief Technology Officer
               GMAC-RFC
 

We were able to create AssetWise in about a third of the time that a monolithic application would have required.

               Brad Luther
               Technical Project Lead, AssetWise Interface Team
               GMAC-RFC

For More Information

For more information about Microsoft products, call the Microsoft Sales Information Center at (800) 426-9400. In Canada, call the Microsoft Canada Customer Support Centre at (800)563-9048. If you require text telephone services (TT/TDD), call (800) 892-5234 in the U.S.A. or (905) 568-9641 in Canada. Outside the United States and Canada, please contact your local Microsoft subsidiary.

Microsoft Products Used
  • Microsoft Visual Studio 97
  • Microsoft Windows NT Server 4.0



This case study is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESSED OR IMPLIED, IN THIS SUMMARY. The information contained in this document represents the current view of Microsoft on the issues discussed as of the date of publication.  

⌐ 1999 Microsoft Corporation. All rights reserved. Terms of Use.