SYS-CON MEDIA Authors: Stackify Blog, Zakia Bouachraoui, Elizabeth White, Pat Romanski, Liz McMillan

Blog Feed Post

Innovating in Disney Land !

Attended the IBM '[email protected]' conference in Orlando last week.

Amazing event of such a large scale - got to hear so many different perspectives on the current business challenges, the whole notion of continuous delivery / engineering and its impact on some of the traditional but important aspects of architecture and planning.

Got to hear some illustrious speakers - Scott Adams, creator of Dilbert - on the importance of failures and the futility of goals & passion and Gene Kim - author of the Phoenix Project - how the simplicity of TOC & Goldratt can be applied to IT delivery and operations.

Devops - this one word seems to have captured the attention of the whole technology community suddenly - possibly as extensively as agile did. But while agile was fairly definite in its scope (software development) and underlying principles (agile manifesto), Devops is far more wider in its applicability and not wedded to very well defined tenets or rules.

Considering that Devops is just about beginning to become mainstream I am taking the risk of penning down my perspectives on it - how it evolved, what it entails and the opportunity it provides to enterprises. This is based on my personal experience in steering companies through their agile journey first and now helping them in taking their first tentative steps towards continuous delivery.
In a way, Devops took off from where Agile left.

Agile was able to speed the development activities - suddenly the erstwhile silos of business analysts, architects / designers, developers, testers was broken and they were able to assemble in short sprints to roll out working software. And the smarter teams also figured out that apart from collaboration, they also needed a more disciplined approach towards continuous integration, refactoring, continous testing and automation to ensure that the working software being churned out had minimal technical debt.

So far so good.

Unfortunately faster working software from scrum teams did not result into faster working software into production. This was because the IT ops teams were never involved in this agile journey. Work was getting stuck at the release gates as they were was no capacity to deal with the sudden peak in supply of working software. Release & Ops were still in one release / quarter mindset & capability.

The business guys were obviously not taking this lying down.

In this whole initiative around agile, business involvement was as much important as it was difficult. Understandably so, business guys were skeptical about this new promise of 'agile' - there were enough broken promises from IT which had dented their trust for good.

However, IT teams were somehow able to bring them onboard. There were direct or proxies from business to play the role of product owners in scrum teams. Business joined the party only because of one promise - their requests for enhanced / modified functionality would result into reality faster.

Unfortunately, that was not happening as the Release & Ops guys weren't onboard.

This is when the realization that unless Dev & Ops come to the party together, faster software delivery will remain a mirage. It still is in majority of organizations inspite of widespread adoption of agile.

To ensure that Devops delivers on its promise, organizations who have matured their agile practices need to now focus their attention on the following, preferably in the same order :

1. TALK - Dev and Ops need to talk regularly and share responsibility. As somebody said in the conference when the Ops guy is called at 2AM on a weekend to be informed of that strange bug as a result of the release which happened on Fri (although releases rarely make it on Fri...usually they make it, if at all, in the wee hours of Mon morning) he better call the Dev guy too to share the fun and the pain. On a more serious note, they should be made aware of their collective responsibility towards continuous delivery.

2. PROVISION - Environment provisioning and deployment of testable builds should become more efficient and (hence) automated. Dev should have access to the right test & staging environments at will - as and when they need it. It's just not the speed but also the quality of the environments which matter - they should resemble the actual prod environment as closely as possible. Release automation tools will help in the provisioning and deployment part while Service Virtualization tools will help in the latter. Cloud ensures that that scalability of the environment is almost infinite at affordable costs.

3. AUTOMATE - Test automation should be significantly enhanced. The regression suite should not focus just on the critical business processes (epics in the agile world) but we should have automation of test cases at a user story and feature level also. In an agile context the lag between the development of a user story and creation of its test automation script should not be more than 2 sprints. A testers job today is to design test scripts and leave the testing to the tools.

4. ORCHESTRATE - Not all systems have the same cadence. The so called systems of engagement (mobile, customer portals) require more frequent updates than the systems of records (mainframes, erps). Having said that, we must remember that most systems are linked and inter-connected. The enterprise release management function should be beefed up to orchestrate this flow - they are at the very cusp of this Dev & Ops collaboration.

5. SUSTAIN - Strengthen and continue the good work done by agile - continuous planning, breaking requirements into manageable chunks determined by business priority, small cross functional development teams working on user stories in time boxed sprints, continuous build & integration, automated unit testing and code quality checks embedded into the build process, regular refactoring of code and the overarching cultural aspects of more authority and creative freedom to innovate to the development teams.

6. INTEGRATE - Integrate all the disconnected pieces of the the ALM lifecycle first and then gradually integrate the Ops monitoring piece into the ALM piece to get end to end traceability and a virtuous cycle of optimization and continuous improvement. Running live applications have to get changed / enhanced / fixed because of user feedback / bugs / performance glitches / outright breakdowns. The different pieces of information pertaining to the same system - features, code commits, builds, tasks, resources, tests, defects, environments - are all stored in different tools. Unless these are all integrated into one common bus / equivalent, flow of value will happen in fits and starts.

At the end, Devops, like agile, is a journey and a circular one at that, which should deliver a higher level of value every iteration.

It is a chain of 4 intertwined functional rings - continuous planning / monitoring, continuous build / integration, continuous testing and continuous deployment / release. Every enterprise needs to identify its weakest ring and strengthen it to strengthen the overall chain. Then move on to the next weakest chain in a virtuous cycle of enhanced business value per iteration.

Read the original blog entry...

More Stories By Sujoy Sen

Sujoy is a TOGAF Certified Enterprise Architect, a Certified Six Sigma Black Belt and Manager of Organizational Excellence from American Society for Quality, a PMP, a CISA, an Agile Coach, a Devops Evangelist and lately, a Digital enthusiast. With over 20 years of professional experience now, he has led multiple consulting engagements with Fortune 500 customers across the globe. He has a Masters Degree in Quality Management and a Bachelors in Electrical Engineering. He is based out of New Jersey.

Latest Stories
The benefits of automated cloud deployments for speed, reliability and security are undeniable. The cornerstone of this approach, immutable deployment, promotes the idea of continuously rolling safe, stable images instead of trying to keep up with managing a fixed pool of virtual or physical machines. In this talk, we'll explore the immutable infrastructure pattern and how to use continuous deployment and continuous integration (CI/CD) process to build and manage server images for any platform....
AI and machine learning disruption for Enterprises started happening in the areas such as IT operations management (ITOPs) and Cloud management and SaaS apps. In 2019 CIOs will see disruptive solutions for Cloud & Devops, AI/ML driven IT Ops and Cloud Ops. Customers want AI-driven multi-cloud operations for monitoring, detection, prevention of disruptions. Disruptions cause revenue loss, unhappy users, impacts brand reputation etc.
Atmosera delivers modern cloud services that maximize the advantages of cloud-based infrastructures. Offering private, hybrid, and public cloud solutions, Atmosera works closely with customers to engineer, deploy, and operate cloud architectures with advanced services that deliver strategic business outcomes. Atmosera's expertise simplifies the process of cloud transformation and our 20+ years of experience managing complex IT environments provides our customers with the confidence and trust tha...
Enterprises are adopting Kubernetes to accelerate the development and the delivery of cloud-native applications. However, sharing a Kubernetes cluster between members of the same team can be challenging. And, sharing clusters across multiple teams is even harder. Kubernetes offers several constructs to help implement segmentation and isolation. However, these primitives can be complex to understand and apply. As a result, it’s becoming common for enterprises to end up with several clusters. This...
Containers and Kubernetes allow for code portability across on-premise VMs, bare metal, or multiple cloud provider environments. Yet, despite this portability promise, developers may include configuration and application definitions that constrain or even eliminate application portability. In this session we'll describe best practices for "configuration as code" in a Kubernetes environment. We will demonstrate how a properly constructed containerized app can be deployed to both Amazon and Azure ...
Is advanced scheduling in Kubernetes achievable?Yes, however, how do you properly accommodate every real-life scenario that a Kubernetes user might encounter? How do you leverage advanced scheduling techniques to shape and describe each scenario in easy-to-use rules and configurations? In his session at @DevOpsSummit at 21st Cloud Expo, Oleg Chunikhin, CTO at Kublr, answered these questions and demonstrated techniques for implementing advanced scheduling. For example, using spot instances and co...
At CloudEXPO Silicon Valley, June 24-26, 2019, Digital Transformation (DX) is a major focus with expanded DevOpsSUMMIT and FinTechEXPO programs within the DXWorldEXPO agenda. Successful transformation requires a laser focus on being data-driven and on using all the tools available that enable transformation if they plan to survive over the long term. A total of 88% of Fortune 500 companies from a generation ago are now out of business. Only 12% still survive. Similar percentages are found throug...
Public clouds dominate IT conversations but the next phase of cloud evolutions are "multi" hybrid cloud environments. The winners in the cloud services industry will be those organizations that understand how to leverage these technologies as complete service solutions for specific customer verticals. In turn, both business and IT actors throughout the enterprise will need to increase their engagement with multi-cloud deployments today while planning a technology strategy that will constitute a ...
Using serverless computing has a number of obvious benefits over traditional application infrastructure - you pay only for what you use, scale up or down immediately to match supply with demand, and avoid operating any server infrastructure at all. However, implementing maintainable and scalable applications using serverless computing services like AWS Lambda poses a number of challenges. The absence of long-lived, user-managed servers means that states cannot be maintained by the service. Lo...
GCP Marketplace is based on a multi-cloud and hybrid-first philosophy, focused on giving Google Cloud partners and enterprise customers flexibility without lock-in. It also helps customers innovate by easily adopting new technologies from ISV partners, such as commercial Kubernetes applications, and allows companies to oversee the full lifecycle of a solution, from discovery through management.
Using serverless computing has a number of obvious benefits over traditional application infrastructure - you pay only for what you use, scale up or down immediately to match supply with demand, and avoid operating any server infrastructure at all. However, implementing maintainable and scalable applications using serverless computing services like AWS Lambda poses a number of challenges. The absence of long-lived, user-managed servers means that states cannot be maintained by the service. Lo...
Today most companies are adopting or evaluating container technology - Docker in particular - to speed up application deployment, drive down cost, ease management and make application delivery more flexible overall. As with most new architectures, this dream takes significant work to become a reality. Even when you do get your application componentized enough and packaged properly, there are still challenges for DevOps teams to making the shift to continuous delivery and achieving that reducti...
At CloudEXPO Silicon Valley, June 24-26, 2019, Digital Transformation (DX) is a major focus with expanded DevOpsSUMMIT and FinTechEXPO programs within the DXWorldEXPO agenda. Successful transformation requires a laser focus on being data-driven and on using all the tools available that enable transformation if they plan to survive over the long term. A total of 88% of Fortune 500 companies from a generation ago are now out of business. Only 12% still survive. Similar percentages are found throug...
Docker and Kubernetes are key elements of modern cloud native deployment automations. After building your microservices, common practice is to create docker images and create YAML files to automate the deployment with Docker and Kubernetes. Writing these YAMLs, Dockerfile descriptors are really painful and error prone.Ballerina is a new cloud-native programing language which understands the architecture around it - the compiler is environment aware of microservices directly deployable into infra...
10ZiG Technology is a leading provider of endpoints for a Virtual Desktop Infrastructure environment. Our fast and reliable hardware is VMware, Citrix and Microsoft ready and designed to handle all ranges of usage - from task-based to sophisticated CAD/CAM users. 10ZiG prides itself in being one of the only companies whose sole focus is in Thin Clients and Zero Clients for VDI. This focus allows us to provide a truly unique level of personal service and customization that is a rare find in th...