Implementing Agile development is critical to a successful digital transformation
One of the largest banks in Perú is perhaps not the place where you would expect to find a model of innovation and Agile development. However in this case study we will explore how they have created a nimble and agile organization in an industry that often struggles to apply innovation and keep up with a rapidly changing world.
Challenge: How can a large, traditional organization keep up with digital FinTech competition
This large financial organization faced challenges typical of many companies in the sector – constrained by a legacy technology environment, slow decision-making due to bureaucracy, and the need to comply with security and risk compliance measures. The bank however was highly aware of emerging FinTech competition which are able to move faster and provide customers with more innovative, digital-first products and services.
Solution: Become a customer-focused, digital organization by adopting and scaling Agile
Executives at this bank realized that Agile development is no longer just a software methodology. They recognized that adopting Agile would help it become a more responsive organization, and would help its digital transformation. However, lacking expertise in the methodology, Belatrix was brought in to work with their innovation centers. The bank decided to first implement Agile in the innovation center before pushing it out to the rest of the organization.
Belatrix’s involvement encompassed:
- Agile development expertise and training. To help the bank transition to Agile, Belatrix provided guidance and training. Adopting Agile was a key part of its digital transformation effort.
- Mobile and web development and testing expertise. The bank was looking for external help with their development and quality assurance activities.
The bank first adopted Agile in its innovation center, and then scaled it
The bank first decided to implement Agile development in its innovation center. In order to do this, the bank brought in partners with extensive experience in the methodology to guide its implementation and share best practices. This included creating the right physical environment (open spaces for example to foster collaboration), and putting in place whiteboards and notebooks for the team to share progress. The bank invested in Agile tools such as Jira and Bitbucket.
However just as important as putting in place the right environment, the bank understood the need for educating people on the principles of Agile (such as by putting in place a Scrum clinic), and the necessary cultural change that Agile requires.
3 applications to simplify customers´ lives
Belatrix was involved in creating several applications together with the innovation center of the bank. The underlying principle behind them was to make it easier for customers to conduct regular tasks, make it easier to engage with the bank, and ultimately simplify their lives.
The applications include:
- A fun, fast, user friendly app to allow people to make small transfers. Originally this was targeted at young people, to make it possible for young millennials to transfer money when they just knew the phone number of the recipient, rather than their bank account number. As part of the ideation and development process, the innovation team tested the app at a local university. It was during this testing, that another key user group was identified – that of parents or older individuals wanting to send money quickly and easily to their children or friends. The team then decided to amplify the target group and make key changes to the application.
- An instant loan application. This app was designed to help users quickly and easily apply for a loan. Via the app they can select their desired repayment schedule, agree to the terms of the loan, and select which of their accounts they want the loan to be deposited in. The app dramatically reduces the time and effort required to apply for and receive a loan.
- App to open a bank account in an instant. This app uses a mixture of biometrics and governmental databases to enable people to open a new bank account in an instant. It’s no longer necessary to physically go to the bank. In a country like Perú where a large proportion of the population is still “unbanked”, making it easier for people to open an account was critically important to expanding the bank’s customer base. The technology behind the app can be used both from a cell phone, but also in small stores or kiosks, for those people who may not have a smartphone.
What does a digital organization look like? Ideation to a live product in 14 weeks
After reviewing the product and its requirements, the team decided to use 1 week Agile Sprints. Also, in advance of starting development, stakeholders make decisions about the definition of ready, the definition of done, the format of the Agile artefacts that would be used (retrospectives and reviews for example). Stakeholders also decided on which tools they would use, both for the implementation and for project management.
The minimum viable product (MVP) was rolled out in 14 weeks – this timeframe consisted of 1 week to define the MVP (inception), and 1 week of Sprint 0. Following the development Sprints, there were two final Sprints for pilot testing the initial customer satisfaction with the early stage product.
Overcoming challenges of bureaucracy and security concerns
This case study has so far focused on the success of the engagement. However, to get here, the team had to overcome some key challenges. These most likely sound familiar to anyone working in a large financial services organization:
- Security and risk. With regard to security and risk compliance, one of the key challenges was with the back-end rules which made it difficult to develop code and have it ready on the cloud. It was necessary to redesign the software architecture for a cloud model, that would still meet strict security guidelines.
- Bureaucracy. With regard to the bureaucracy, one of the initial challenges was that the bank had implemented Agile development within the innovation centers, but not in the rest of the organization. What this translated to was closed doors and obstacles, for example when information was requested from different business groups. However, by educating the rest of the organization in Agile, and over time and with experience, this challenge largely disappeared.
Many organizations view adopting Agile as a key initiative for their technology departments. However, what this case study demonstrates is that Agile is core to successful digital transformations. The ability to rapidly create and then iteratively improve products based on feedback, is a core characteristic of digital-first organizations. The bank recognized that developing mobile applications would both help serve existing customers better, and also expand its customer base.
Code architecture and functionalities implemented using Angular2, Typescript, Semantic, Node.js for the implementation of unit test and complementary Angular plugins.
Code architecture using Java, Spring, Spring Boot, Docker to implement containers. MariaDB was used as the data repository, Rest Azure for the execution of API tests, Spring repository for database access, Jazmine for integral tests, Spring Web Services for microservice implementation, Spring Security for managing the security of the authentication and authorization processes, and Sonar for validating the integrity of the developed code.
QA tools (testing and automation quality)
Architecture and implementation of code using Ruby, Sinatra for smoke testing, Selenium for stress testing, Sauce Labs for user interface (UI) testing, and Cucumber for regression testing.
Development life-cycle tools
For management and collaborative work, Jira was used to manage iterations and the status of deliverables. Bitbucket was used for code management and version control, IntelliJ or Eclipse as integrated development environments, Bamboo for continuous integration of code between environments, and Amazon Container Services for deploying containers to the cloud.
Find out more about Belatrix’s software development services here.