Cloud Apps – a new way of developing applications
The public cloud is increasingly being adopted to build and running applications, a trend that will not end the near future. According to IDC, in the next four years worldwide public cloud services spending will more than double, and Platform as a Service (PaaS) – used to build cloud applications – will grow at an compound annual growth rate (CAGR) of 29.9%.
To be successful in exploiting the advantages of the cloud computing delivery model, organizations need to consider a radical new way of architecting, building and running applications in the public cloud (Cloud Apps).
A Cloud App must be architected to take advantage of the elasticity and distributed nature provided by modern cloud computing platforms. This means being loosely coupled, based on microservices to easily scale up or down, and stateless (client data is not stored between client sessions) to leverage the use of containers.
One of the big mistakes that should be avoided is to simply lift and shift their legacy on-premises applications to the cloud. Organizations should look instead to the opportunity of breaking up existing monolithic applications, and refactor them using cloud-native principles from the ground up.
Cloud Apps put also a new emphasis in the usage of agile methodologies and DevOps to shorten and reduce the effort of the Cloud Apps delivery cycles (build, test, deploy and release). In the Cloud App delivery cycle, test automation and continuous testing are fundamental elements, that most organizations have yet to master.
Scaling Cloud Apps development
All the previous mentioned technologies and methods provide a unique opportunity for higher industrialization in application development and better alignment between IT and the Business.
To ensure Cloud Apps provide the highest value to the business, development should be Outcome Driven. This requires a strong involvement of the Product Owner (business representative) in selecting the functionality that have the most business impact and that maximizes business outcomes, during in the scoping and planning phases.
But, being outcome driven does not mean velocity and quality (output driven metrics) should be overlooked, as some recent literature may suggest. To scale up Cloud App development organizations have to add IT service partners to the equation and being able to contract based on output (work units delivered) and quality, since simpler models, based on staffing augmentation and daily rates, do not provide the right incentives to third parties. Adopting output base payment requires that work units sizing is well defined, using typically complexity matrices that map user story characteristics (data complexity, functional complexity, etc.) into a work unit size.
Link Consulting your Cloud App partner
Link Consulting have a strong experience in helping large organizations to jumpstart and scale Cloud Applications Development in industries such banking and utilities.
Our Cloud App development practice includes: guidance on how to architect and migrate legacy applications to the public cloud, frameworks on top of existent PaaS offers to automate Cloud Apps delivery cycle (including continuous testing) while reducing cloud vendors lock in, and development services based on Output driven payment models.
Contact us to know more about our Cloud App development practice.