Believe it or not, the ‘architect’ is a fairly modern concept. In the middle ages, artisans such as stonemasons and carpenters worked together with little outside interference to build new structures. Recent centuries, though, have seen increasingly complex constructions, and this has led to a more mediated process, meticulously planned by a master designer: the architect. The same is true for the digital world. Today, companies across the globe are turning to enterprise architects to lay the right digital foundations – or architecture – to meet the specific needs of the business. The goal of the architect is a simple one: to make sure the business can make the most of new technologies, software development methodologies and business process management (BPM) tools available. In practice, however, the sheer volume of different technologies and pace of technical change means that this can be easier said than done.
Change is constant
Industry analysts at Gartner predict that by 2021, 40 per cent of organisations will employ digital architects to help the business put in place the right underlying infrastructure to take advantage of the latest technical advancements.
Interestingly, some of the foundational technologies in modern computing architectures were almost unheard of twenty years ago. Take the cloud, for instance. It was revolutionary just a couple of decades ago but now it’s almost mundane; it’s rare to have a conversation with anyone working in technology without the word ‘cloud’ appearing at some point. Networks have become much faster, more reliable and more flexible, while application development has drastically changed in recent years. Enterprises are now adopting flexible, object-oriented programming, as opposed to using restrictive relational systems that rely on logic. This allows them to support more complex data structures used in ways never thought of before. There’s also been a surge in the use of containers to significantly reduce overhead, not to mention future-proof app development.
Architecting for digital transformation
Most modern businesses need a digital architecture that is fast, agile and always-on. It will probably rely significantly on the cloud or, at the very least, include some cloud requirements – and it may need to be distributed, depending on where in the world the organisation operates. So with that in mind, how can businesses ensure their architecture is able to support their current and future digital needs?
Enterprise architects should start by asking themselves the following questions:
1. Is the architecture memory and network-centric?
The consumerisation of IT means that businesses and individuals expect zero delay when using applications. For enterprise architects, this means applications need access to this data at record speed. Previously, there wasn’t a pressing enough need for applications to read and access data, meaning disk-based relational databases were enough. Now, to meet modern computing expectations, it’s imperative that architecture can transfer and deliver data quickly through in-memory NoSQL databases.
2. Is data located closest to where it’s needed?
This leads to the second consideration: storing data close to where it’s needed. To ensure the best user experience, it’s paramount that data is stored as close to the end user as possible, whether that’s a customer in China or a delivery driver in the UK. There are always going to be some types of data that cannot be stored outside of the central database for security reasons, but in many cases, businesses can benefit from pushing data towards the edge. This typically applies to applications on devices such as smartphones and tablets. When implementing architecture to enable technological innovations around mobile and ensure responsive applications, businesses must look at where, not just how, their data is stored.
3. Are you making the most of microservices?
A crucial requirement for modern architecture is the ability to ensure applications maintain optimal speed and performance – even when additional capabilities are added to the platform. Investing in microservices-based architecture is the best way to ensure this requirement is met, and it also offers developers the flexibility of configuring specific services to their own database. If, for example, there’s a particular service in need of improvement, it’s far easier to amend a single autonomous process than an entire monolithic system.
4. Is the architecture deployment-unaware?
Finally, by ensuring their digital architectures are deployment-unaware, businesses can run applications in any environment – cloud, multi-cloud, on-premises, in virtualised containers, and so on. Platforms built in the cloud allow greater flexibility for scaling up and down – an essential for any digitally-driven enterprise – whilst their traditional counterparts are limited to vertical scaling. When computing architectures are deployment-unaware, components can operate independently to provide the most flexible solution to businesses.
A foundation for success
Adapting digital architecture to emerging technologies is an essential task for enterprise architects and one that’s importance should not be underestimated. As more and more business processes and offerings become digitalised, architects should keep these four questions in mind to ensure their organisations can build flexible applications that can be implemented anywhere — the edge, public cloud or private cloud — at any scale.
Huw Owen, Head of EMEA & APJ, Couchbase