By-lined to Chris Leigh-Currill, CEO Ospero
Developers can be a funny bunch; not so much ‘funny ha-ha’ as, well, y’know – ‘funny’. But just accept for a moment that, in spite of their hilariously named development languages and preference for acronyms of four letters and above, they are not in fact aliens – and like the rest of us they just want to get on and make a valuable contribution with their work without anyone raining on their parade.
The Software Development Lifecycle, or SDLC (rather than just SDL – see what I mean about acronyms?) is the evolutionary process that governs the invention, creation, testing, launch and ongoing improvement of a piece of software. In an ideal world, these LCs (Ls?) would be so smooth and effortless that perfectly formed software could be brought into production in an afternoon. Then the business could immediately leverage the maximum, risk-free innovation of its developers for commercial advantage, and we could all be in the pub by 5pm.
Unfortunately we do not live in an ideal world, and the process is difficult and resource intensive. In a bid to streamline collaborative development into workflows, methodologies have cropped up like mini-religions with the likes of PRINCE2 representing the bells and smells orthodoxy on the one hand, and eXtreme Programming at the opposite end of the spectrum (the free-love hippie movement). Nutters aside, pretty much everyone can agree on the ‘be nice to each other / go to hell if you’re evil’ centre ground principles of ‘Agile’.
So what does this have to do with cloud IT?
Well you can’t be very agile when – as a developer – you need to deploy your pre-production software into a suitably large and lifelike test environment to understand once and for all that it’s safe to launch. Then you are told by your IT infrastructure colleagues you will have to wait 6 weeks while it’s built! Thankfully, nimble on-demand cloud services like AWS are on hand to give you this environment within an hour or so, and for 50 dollars whacked on the credit card.
If only the story could end there, but sadly this only displaces the pain rather than alleviating it. The whole thing typically ends up being overcomplicated, in breach of governance and security, and the perfect conditions for a pitched battle between the pragmatic requirements of developers on the one side and the needs of the business on the other – with the IT infrastructure guys caught in the crossfire.
I recently read with interest about a methodology called DSDM (sigh) – the Dynamic Systems Development Method – and the fulsome support it is receiving from influential public sector IT think-tank SOCITM. DSDM apparently combines the best of Agile and PRINCE2, enabling the quick delivery associated with the former, and all the governance control beloved of the latter.
That’s lovely, but in the face of an increasingly complex cloud IT muddle, is a little like bringing a dustpan and brush to an earthquake disaster zone.
Rapid development of new applications and customer facing software can give a business true advantage over competitors. Organisations should consider IaaS providers that integrate development methodology into the platform and enable development teams to further streamline and increase the agility of their development process.
Developers are free from the worry and constraint of traditional infrastructure deployment with the ability to deploy the environments they require within minutes, safe in the knowledge that the builds they use are preapproved by the infrastructure team. The infrastructure team can ensure that the environments the developers are deploying are enterprise class with the appropriate resiliency, security, management and support pre-integration. The business can ensure that costs are controlled and within budget by placing limits on the amount of resources that can be consumed.
That’s a recipe for Great Success and Great Teamwork, or GSGT as a developer would call it.