Organisations increasingly need to scale application development, transform traditional development to become agile and DevOps-oriented, and reduce the cost of services on public clouds. Three new development approaches are helping organisations achieve these goals:
- Microservices architecture-based applications are an excellent fit with agile and DevOps styles of working, and are ideal for implementing continuous delivery.
- Containers offer a simplified way to get applications up and running, with minimal fanfare.
- Server-less computing (or architecture) is a newer style of event-based programming that public cloud providers, including Amazon, IBM, Google, and Microsoft, are offering developers.
Microservices, containers, and server-less computing are new to most organisations
Organisations need to assess their strategy for developing software in the wake of the new software development paradigms that are sweeping through IT. The influence of digital transformation on businesses has turned the attention of C-level executives to agile and DevOps adoption as a way of delivering better business value. With so much commerce now conducted digitally, organisations understand that they need senior executive initiatives to bring about agility and DevOps-style application delivery, recognising that these approaches can bring products to market faster, and with this, superior customer satisfaction.
Emerging approaches are meeting the needs of application developers
The new development paradigms of microservices, containers, and server-less computing are transforming application development. This transformation is driven by two main needs: scaling the development of a project across teams becomes progressively more difficult, and simply adding more developers does not result in an increase in productivity; second, agile and DevOps adoption brings with it the desire to enable changes in code and see these run in production with minimal delay. Implementing continuous delivery (CD) can achieve this goal, but not if the application architecture is monolithic and needs to be shut down every time a change is made. For example, with microservices, a change can be implemented in live production, and a microservice can be replaced rapidly while other services that need to connect to it are designed to be resilient while an update takes place. Microservices also offer advantages in scaling development and in scaling workloads in production. Ovum has recently published a strategy guide for working with microservices, Strategy Guide to the Microservices Architecture IT Wave, and the topic is on our research “hot list” for 2017.