US Bank is a diversified financial services company with headquarters in Minneapolis, Minnesota. US Bank offers a comprehensive range of financial solutions to meet the needs of individuals, businesses, institutions and government entities. With assets of $207 billion, it is the 6th largest financial services holding company in the United States. The company operates 2,411 banking offices and 4,999 ATMs providing a full line of banking, brokerage, insurance, investment, mortgage, trust and payment services products to consumers, businesses and institutions. Their premier Five Star Service Guarantee assures customers of key valuable banking benefits and services or customers will be paid for their inconvenience. U.S. Bancorp is the parent company of U.S. Bank.
The U.S. Bank treasury department had been relying on several Microsoft Access databases (97 version) and applications to manage accounting, payments, and reporting for a large portion of their derivative and debt transactions. These transactions represent billions of dollars in securities. The MS Access databases and applications had evolved over 10 years time as new transaction types were added, new accounting demands arose, and regulatory reporting requirements multiplied. The applications have been in constant flux, and that situation is expected to continue.
The applications and data required constant maintenance, and the IT support team was being overwhelmed trying to meet the support needs as well as trying to implement new features requested by the users. Business logic and processes had become increasingly complex and intertwined while spread over many objects (code modules, code behind forms and code behind reports, Access queries, stored procedures, and user documentation). This evolution created a system that was difficult to understand, easily broken, and time consuming (i.e. costly) to troubleshoot and extend. In addition, these critical business applications did not meet the basic security and audit requirements implemented by the bank’s regulatory teams.
Alto recommended that the debt and derivatives systems undergo detailed analysis in preparation for a redesign in a .NET platform against a set of SQL Server 2000 databases. A planned upgrade to Access 2003 would not alleviate the support and maintenance problems discussed above. Many of these problems were exacerbated by using Access as the platform. The detailed analysis was also necessary to untangle the complex web of dependencies that made the old systems so fragile and hard to change. Once the current system was fully understood, a new application could be built from the ground up to meet the following requirements:
Consolidate business logic and documentation into discrete processes that can be more easily changed, added, or removed with a minimal impact on the system as a whole.
Design these processes so they have at least a minimal awareness of their own dependencies (i.e. a process knows it can’t run if it depends on another process that has not completed successfully).