Think you’re ready for DevOps? Take the quiz
- By Kathleen Hickey
- Jul 10, 2015
Government IT managers struggling with implementing a DevOps culture and workflow may get some insight from a new online DevOps self-assessment tool from Microsoft that assesses an organization’s readiness then provides guidance on which areas to focus on next.
DevOps is the practice that encourages developers and operations staff to work closely together in moving applications from conception to implementation as a way to reduce waste and build quality. However, communication issues, departmental silos, different policies and programs among departments, lack of understanding and a general fear of change have all contributed to low implementation rates.
Within the federal government, both 18F, a team of software developers within the General Services Administration, and the Office of Management and Budget-based U.S. Digital Service are championing DevOps as a best practice.
Microsoft’s self-assessment quiz identifies seven areas that can help organizations can be more effective with their DevOps practice.
Production. Best-in-class organizations have cross-functional teams to track software production status, fix root cause problems and analyze their performance in finding and fixing production bottlenecks. The most effective teams proactively monitor usage data to prioritize issues, extend issue monitoring to real users metrics and autoscale server resources to optimize usage and control costs.
Backlog. Organizations should have a single backlog system accessible to all parties. A single system allows teams to prioritize issues and track day-to-day progress. The system should monitor projects in small work packets, rather than track the whole, large project.
Evidence. A successful DevOps practice focuses on tracking and analyzing data from every aspect of the product life cycle. Top performers measure all aspects of the product lifecycle and use this information to improve their future decision-making process and customer service levels.
Flow of customer value. Software production should involve as few reworks as possible, leading to the shortest time to release. Combining usage data with performance data and validating production tests with real-world results allows the software development team to understand and react to unplanned usage issues. Visual storyboards can help ensure that stakeholders’ expectations are in line with what can be achieved with the software, reducing change requests and rework.
Team and enterprise alignment. Best-in-class organizations have multi-disciplinary teams that include staff from business, development, testing and IT operations departments. A collaborative approach enables a better understanding of timelines and deliverables while supporting innovation.
Managing technical debt. Organizations must strategically manage the impact of technology changes. Using a common cloud service across different hardware platforms allows a company to keep as little unique logic as possible tied to the device itself.
Cloud software structure. Using a cloud-based software infrastructure allows for scalability and easier feedback from usage monitoring. Furthermore, an on-demand system is less expensive than a traditional system install. After testing software using dedicated labs and virtualized environments, the next step is using an infrastructure-as-code, or programmable infrastructure, strategy. An infrastructure-as-code strategy means code can be written once, and then consistently changed/updated throughout the system.
Kathleen Hickey is a freelance writer for GCN.