A leading retail bank in India recently revamped its consumer application. Within three days, bank customers downloaded the app 100 million times. Unfortunately, the users began reporting errors in stock account details whenever they restarted the app. In the end, the bank lost customers to a competitor that provided a more seamless user experience on its mobile application.
“Application architecture impacts how well an application can perform in a volatile environment,” says Aashish Gupta, Team Manager, Gartner. “An investment in application architecture competency can yield powerful returns.”
To create a robust application architecture, focus on five key actions.
Communicate business value
A strong, agile application architecture offers your enterprise the ability to adapt quickly to changing user requirements, scale on demand and reduce time to market. However, making a business case to develop application architecture competency can be challenging if the benefits are not articulated in business terms that resonate with senior leadership.
“Map architectural decisions to key business drivers and communicate the changes, as well as the impact, to leadership,” says Gupta.
Engage senior executives in regular briefings to drive home the importance of good application architecture practices.
When activities and boundaries are unclear, business outcomes may suffer in multiple ways — missed deadlines and gaps in expectations and outcomes, etc. Some organizations may have multiple architecture roles, but it is not uncommon to see only one individual sharing multiple responsibilities, such as solution, enterprise and application architecture. This is especially true for smaller organizations, where talent cost optimization is critical.
Have clear definition, responsibilities and deliverables for these roles. Ensure that each role adds value to the overall objective.
Follow emergent architecture
Digital business pressures require applications to change frequently due to changing user expectations and increasing competition. They must have a flexible structure that can accommodate change.
Therefore, a big design upfront (BDUF) approach, which focuses on charting intricate application designs at the beginning, leaves little scope for agility. An emergent architecture gives enough architectural sketch to guide development, but also offers enough room for incorporating just-in-time requirements.
Change development process and culture
Changing application architecture alone cannot give you the desired agility and scalability benefits. In some cases, change in architecture must be accompanied by changes in culture and development processes to support the new architecture. If the processes are bureaucratic, a good design will have little to offer.
For example, moving from monolithic to microservices architecture would require adopting effective DevOps practices and vertically integrated, multidisciplinary teams that are not marred by indefinite hand-offs and long release cycles.
Make best practices pervasive
Development decisions must be a collaborative process between development architects, application developers and the application leader. For a smooth-running application infrastructure, ensure that there are maximum knowledge-sharing platforms and opportunities.
Digital team as a concept is redundant. The traditional structures of centers of excellence (COE) or the architect group is slowly diminishing. The application leader must understand these dynamics and develop communities that disburse knowledge.