Challenge: Meeting an Approaching Deadline
Washington Trust Bank had a development team that was in the process of updating its legacy system for processing commercial loans to a smart application that would automate the labor-intensive process of collating, authorizing, and printing loan documentation. It was a complex project with a deadline that was quickly approaching.
Cliff Conklin, Director of Development at Washington Trust, had decided to take an agile approach to complete the project, rather than the waterfall method that was previously used by the bank.
Agile thinking transforms the fixed waterfall structure of analyzing a problem than designing a result then building the code and then testing it. With agile processes, small chunks of the project are completed in short sprints. Working software is created sooner and can be modified as it’s built. Conklin brought IntelliTect onto the project to provide technical leadership because he knew his team needed a skilled partner to teach the agile approach.
This project, for our organization, has shined a light on how Agile can help. Other departments are considering it because they see how it works and how effective it can be.
Cliff Conklin, Director of Development, Washington Trust Bank
Products & Services Used:
- Functional Test Automation
- Continuous Integration
- Angular 4
- C# Development
Solution: Improving Efficiency through Leadership and Agile Processes
At IntelliTect, engineers have learned that agile methodologies provide skills to improve effectiveness. Instead of completing a task and “throwing it over the wall” to testers or users, hoping that it doesn’t have any problems, the team took the time to define what “done” looks like for the project and for each task along the way. By striving for a “once and done” mentality, IntelliTect improved efficiency in the following ways:
- User stories were rewritten with more details so that engineers could create what was desired and deliver it to production where it could be completed the first time.
- Team Foundation Server (TFS) was configured to improve throughput and prioritize tasking by allowing for the grooming of the backlog of user stories.
- Daily Sprint Standup Meetings and bi-weekly Sprint Planning sessions were introduced to focus project scope and keep the team on the same page.
- Retrospectives were conducted at the end of each sprint to identify improvement areas.
As a result of these changes, the number of user stories completed in a two-week period increased from 18 to 85 (on average). This increase was due not only to the fact that Washington Trust’s original team was increased from four to ten; but also, IntelliTect changing the pattern of the sprint to deploy new features to the product owners sooner, rather than waiting until the following week for a singular deployment. Now, product owners were testing early and often allowing for problems to be identified and corrected almost instantaneously.
The Impact of Agile Processes
Delivering software to production with DevOps:
IntelliTect further improved the Agile process by focusing on DevOps and creating automated deployments for features, bug fixing, and testing. With DevOps, the team expanded the Agile concept of working software as the primary goal to include systems and operations. The widened scope allowed for collaboration and combined skills between software development, IT Systems, and business teams.
With automation, new features are released sooner:
Adding automated deployment of new features and bug fixes resulted in faster results with far fewer errors, saving roughly 20 minutes per deployment. An hour of billable time was saved for every five items deployed. Ten engineers were working on this application; if each of them deployed five items a day then the team had an extra fifty hours a week to create new features that may not have existed without the free time created from automated deployment.
According to Conklin, development at Washington Trust was like the Wild West before functional/unit testing. Before automation, “there was a lot of margin for error. As a bank, we need to know that (automation) takes the developer and the human error out of the mix,” said Conklin. “From a security standpoint, we have a good audit trail we can show regulators. Going forward, all the custom development we do in-house will ease the regulatory burden and increase efficiency.”
Testing starts sooner and runs continuously:
A testing program that once took a programmer 20 hours to run was built and ran in the background while the program was still being designed. The software became stronger because bugs were caught sooner and corrected faster. Washington Trust saved time, money, and aggravation.
IntelliTect knows that working software is the primary measure of success in any project. Agile methods aren’t a silver bullet, but they help engineers create working software in an accelerated timeframe. The software can be adapted to the client’s specifications and changed as the product evolves and more complex features are added. For more information on IntelliTect’s development process, check out our agile development work.
Results: Project Met Deadline and Goals
IntelliTect was able to boil the banking world down to user stories that make sense for a partner and let the agile process take over. It has been fun to watch grow, and I think this is just the start.
Cliff Conklin, Director of Development, Washington Trust Bank
The application was released on time and met with positive reviews from the end-users.
According to Conklin, IntelliTect proved to be a valuable partner for Washington Trust by helping their development team in the following areas:
- Agile Coaching: Training team members on the details of Agile/Scrum methodology.
- Architecture, Standards and Development: Helping with technical architecture decisions, day-to-day development, coding standards and other areas to improve the overall practice.
- Testing Infrastructure: Implementing a testing infrastructure that includes unit testing, functional testing, end-to-end tests, etc.
- Continuous Integration/Deployment: Implementing ongoing integration/deployment for development projects allowing the team to iterate, deliver and show progress quickly.
- Optics: Developing metrics needed to understand the team capacity and velocity, plan releases, show progress, and gauge productivity.
- Environment: Helping build-out development environments that limit technical issues, delays, and other slowdowns, so that team members can work efficiently.
- Resource Needs: Augmenting staff as needed to ensure the team has the required skills to innovate and move forward with vision.
The agile team is actively formulating their next project while continuing to hone and refine this innovative application.
About Washington Trust Bank
As the oldest and largest privately-held commercial bank in the Northwest, with more than 40 financial centers and offices in Washington, Idaho, and Oregon, Washington Trust Bank enjoys an advantage over its publicly-owned competitors. They base their decisions and policies on what’s happening right here in the Northwest—not in distant locales. Being independent, Washington Trust is able to set its sights on long-term goals rather than quarterly results. They stay focused on doing the right things for their clients and communities.