Written by: Neha Ogale
Companies invest lots of resources to start, run, and grow their businesses. These resources may include land, labor, capital, materials, energy, entrepreneurship, information, technology, expertise, management, time, and more. Maximizing these resources should be the goal of any business to get the most out of the investment, but would you believe that most organizations unintentionally waste 40% or more of their resources? In larger organizations that have compliance requirements to meet, the comparison of productive activities to wasted time and resources is even more prominent. Waste comes in several forms including unnecessary overhead, unnecessary rework, unnecessary features, and building the wrong products. In efforts to minimize financial wastefulness, maximize productivity, deliver great software, and build systems that scale and last, many businesses, including MicroHealth, have opted for a Development and Operations (DevOPs) program. The DevOps program was established around a group of people who believe that the application of a combination of appropriate technology and attitude can revolutionize the world of software development and product delivery. Developers, testers, managers, DBAs, network technicians, and sysadmins all share the same goal of delivering great quality, reliable software that provides value to those who commissioned it. DevOps capabilities can provide better business outcomes through two key advances:
- More effective steering through earlier and continuous feedback.
- More efficient execution through lean transformation.
While the concept of DevOps sounds simple and seems logical on the surface, many companies struggle in the trial and error phase. Successful DevOps initiatives require putting together a full toolset and simultaneously creating a knowledgeable team of developers, testers, and project managers adept in cloud and agile technologies. After a period of experimentation, the project team refines its approach and optimizes resources to achieve its goals. Focus shifts to more mature issues such as creating a fully integrated tools stack, supporting a rich test data environment that doesn’t undermine privacy and security, and determining the best DevOps infrastructure strategy for your company.
DevOps is based on Agile, a technique that supports the software development lifecycle (SDLC) by dividing large tasks into smaller parts while supporting the gated review process. The Agile approach provides flexibility in risk management and accommodates differences in project specifics such as size, scope, complexity, and duration. Like Agile, DevOps is designed to overcome the deficiencies of traditional, long-winded and complex SDLC waterfall approaches. MicroHealth relies on DevOps to help improve service delivery capabilities. MicroHealth’s DevOps approach, known as “shift left”, detects and addresses issues early in the SDLC, saving time and resources later in the process.
Above all, DevOps’s key feature is its rapidity in executing each production phase without compromising control or quality. Because the speedy exchange of information and quick, proactive actions are vital to achieving business objective. The DevOps process begins with the development and quality assurance (QA) teams building and testing against systems that behave like the production system. The teams monitor and validate operational quality as a part of the DevOps process to detect and fix operational issues early in production. DevOps automation tools can be used for iteration, repetition, and reliability of processes. Automation makes processes more efficient and simultaneously reduces the need for manpower. Another key function of DevOps is collaborative development among developers, architects, and functional subject matter experts (SMEs), in which they work as a cohesive unit, incorporating their own unique skills sets. The DevOps framework also allows for continuous integration and validation of software developers’ work. This ability empowers the software team to detect, appraise, and resolve issues early on. DevOps also allows for fast and effective software testing through a test-fix-test approach, which achieves a quicker feedback cycle. Upon successful testing of the software capabilities, DevOps requires continuous delivery relays software to the appropriate environments. Lastly, with amplifying feedback loops, DevOps allows developers to quickly make changes through the transfer and exchange of knowledge.
To modernize healthcare through technology, MicroHealth adopted, redesigned and implemented DevOps on our Interagency Comprehensive Plan for Care Coordination Support (ICPCCS) solution contract. The ICPCCS initiative is a collective effort with Planned Systems International and Attain on behalf of MicroHealth to revamp the Recovery Coordination Program (RCP). The project aims to modernize the RCP by developing an interoperable online tool that automates the Comprehensive Recovery Plan (CRP). Using DevOps, our goal is to unify the DoD and VA with a common system that logs patient information.
DevOps comprises a network of servers and software that provides key functional support for development, testing, operations, and project management activities. Our DevOps builds upon agile and lean principles, reinforcing, extending, and amplifying its benefits and ability to fit customers’ specific needs. MicroHealth used DevOps to pioneer the first time use of the Amazon Gov Cloud in the DHA. We used DevOps to implement the automation of practices previously requiring manual work – the process has resulted in the automation of 80% of such tasks. Some of the advantages are as follows:
- Accelerated time-to-market: Reduces time it takes from when an idea is conceived until it’s in production.
- Building the right product: Developers get faster feedback from users with more frequent releases and live testing of ideas (more on this later on the “A/B Testing” section). The regularly tested builds and traceability eliminates duplicate entries and reduces human entry through automation. Further, monitoring, self-updates, -patches, and -backup reduce the need for repetitive system administration tasks with automated recovery if the system failed.
- Cost reduction: MicroHealth’s implementation of DevOps is significant in its ability to cut costs. DevOps was a quarter of the cost of traditional hosting, maintaining equal performance and security posture.
- Improved productivity: DevOps reduces the amount of manpower needed for repetitive tasks, leaving more manpower available for complex tasks. With continuous delivery, developers and testers save time setting up and fixing their working environments. Also, deployments are significantly faster.
- Reliable Releases: Releases are smaller and more frequent, and therefore, the impact of bugs is less significant and easily corrected.
- Improved product quality: DevOps enables rapid administration of environments, resources, and systems form templates created through the system. It also provides remote access to the development environment by accommodating virtual desktops with all the tools preconfigured for developers, engineers, and project managers connected to the secure environment. Integrating virtual desktops with preconfigured tools enables flexibility and the rapid onboarding of new employees. Automation yields less manpower, making production more, well, productive. The product – in this case, patient care – reaches more people.
- Improved customer satisfaction: DevOps provides end-to-end traceability from requirement to release, which significantly benefitted the DHA through regular builds that were tested with fully automated test reports.
MicroHealth’s experience has shown that DevOps can bring about renewal, retaining some of what made for good software development in the past, while layering on best practices to promote velocity, agility, quality and a focus on maximizing the customer experience. As technology evolves, companies must continue fine tuning DevOps to get the most out of their resources and extend this framework’s capacity to reach new depths and ensure unparalleled efficacy and dexterity in delivering differentiated products and services.