Avoiding digital transformation failures in government
Nearly 4 out of 5 digital transformation efforts fail. When they do, organizations wonder why their technology investments did little to improve outcomes.
If a government digital transformation project is unsuccessful, it is often because technology was prioritized without devoting equal attention to people and process. We identified elements of successful digital transformation programs: leadership, product, development, architecture, and operations. Weakness in even one of these areas can reduce the value of transformation or derail the effort entirely. Planning government investments with these elements in mind helps prevent common failures and produce demonstrable mission outcomes (Table 1).
Table 1. Elements of a successful digital transformation
|Capability||What failure looks like|
|Leadership||Actively support new ways of working||Teams are afraid to try something new|
|Product||Have a strategy to define the right thing (software that users need, want, and can easily use)||Software does not support the mission|
|Development||Build the right thing||Software does not meet defined mission requirements|
|Architecture||Build the thing right||Software is inflexible and does
|Operations||Keep the thing running||Ongoing outages and incidents|
Governments that build competencies in each of these areas can more quickly adapt to evolving mission needs and increase user satisfaction. These same competencies help accelerate authority to operate (ATO) by discouraging behaviors that can slow the process.
Elements of a successful digital transformation for government agencies
LeadershipPromote a culture of experimentation and collaboration. Encourage transparent and honest communications and make the shared mission everyone’s goal.
Model and reward good behaviors. Attempts to create a new culture through meetings, memos, or retreats will not work without the right incentives. Reward behaviors that support the new culture, such as:
- Creating common purpose and vision.
- Pushing decisions down the chain of command to the people doing the work.
- Breaking down unnecessary barriers between departments.
- Investing in and encouraging continuous learning.
ProductShift the focus from projects to products. Projects are planned upfront, development stops when the plan is completed, and ongoing maintenance might not be funded. In contrast, products evolve continuously as missions or user needs change. The product plan includes ongoing development and operations.
Treat the product as an experiment. Formulate a hypothesis and then build a prototype to test it. The experiment succeeds when it proves or disproves the hypothesis. A civilian agency might experiment with a new interface to improve the user experience. Special Operations Command might test a new machine learning model to predict an adversary’s plan more accurately. Product plans rarely remain intact after user testing.
Do not hesitate to discontinue failed experiments. If the product does not do what users want—or is too difficult to use—try a different experiment. The idea is to fail fast, fail often, and learn always.
DevelopmentDevelop empathy for other teams and users. Product teams tend to specify excessive details (including implementation), while operations teams often want to slow down to avoid problems. In a culture without trust, this dynamic leads to duplicated work and friction. To build trust, encourage frequent communications between teams so developers understand the consequences of coding decisions. Automate checklists for policy and acceptance criteria.
Aim for rapid feedback. Get the minimum viable product (MVP) out quickly and resist the impulse to over-analyze or over-engineer. An MVP delivers value and can immediately be deployed to production. With short feedback loops, product managers and developers know sooner if they are off course and can swiftly make corrections. MVPs also allow teams to demonstrate new capabilities to get funding.
Foster a culture of curiosity and inquiry. Talented developers thrive when given the freedom to solve hard problems creatively. Creating an environment where people can develop their skills builds better talent and helps improve outcomes, recruiting, and retention.
Commit to technical excellence, testing, and continuous integration. When developers are freed from repetitive work, they can focus on innovation and quality. Automate testing and deployment pipelines to improve code quality and throughput. Encourage developer creativity while holding everyone to high standards.
Remove friction from software delivery
- Make the right way the easy way with service automation.
- Authorize the right people to do the right things with policy automation.
- Show people the consequences of actions with short feedback loops.
Start on the path toward site reliability engineering (SRE)In the SRE model, the operations team and the business give developers free rein to deploy new code—but only until the error budget is exceeded. At that point, development stops and all efforts are redirected to technical debt. SRE is practical only if development and operations function as one team (DevSecOps). This approach is not an option if you outsource either or both functions to third parties.
Consider trade-offs. Every decision involves balancing cost, performance, and failure characteristics. Make these choices deliberately.
Create an event-driven architecture. With loosely coupled components, services that produce event notifications do not need to know which services are listening for the notification and the event does not need to know its consequences. Develop skills in microservices techniques such as service mesh, circuit breaker patterns, caching, and service discovery—or work with a skilled partner.
Enforce architecture with standardized services. When the platform enforces standards, developers can focus on domain logic instead of design patterns. Standardized application architectures also use standardized instrumentation to report real-time performance metrics and simplify troubleshooting.
OperationsDevelop empathy for developers and product managers. Rather than saying “no” to projects or timelines that operations cannot support, work closely with development and product teams to come up with acceptable solutions. Aim to deploy new features at the fastest pace that can be managed.
Implement mechanisms for fault detection and fault determination. Monitoring is the foundation of reliability. The goal is to improve understanding of the system and respond appropriately to changes.
Develop the technical understanding to remediate and prevent incidents. Operational excellence requires the capabilities and judgment to respond to incidents in a live system while minimizing service disruption. Conduct post-incident analysis to discover contributing factors and make changes to prevent future incidents of the same type.
Enabling the right behaviors with a trusted software supply chain (TSSC)Knowing the behaviors required for successful transformation is one thing, but making them happen is another. Imagine a development team leader who issues standing end-of-day orders for team members to check in code, test, send the test report, and deploy code to the shared environment if the test succeeds. But what if a team member checks in and deploys code, skipping the steps in between? Most agencies lack the guardrails to enable, accelerate, and enforce the right behaviors.
A TSSC enables and accelerates recommended behaviors to lead digital transformation efforts and produce positive outcomes. A TSSC can automatically enforce policy requirements for testing, vulnerabilities, architecture, and instrumentation. Development and deployment become repeatable and reliable. At the same time, a TSSC accelerates the ATO process by giving all teams confidence that the product complies with quality and security requirements.
Learn moreRed Hat Consulting can work with you to build a TSSC and develop capabilities in each of the elements of a successful digital transformation. Contact Red Hat Consulting to get started.
Everest Group, 78% of Enterprises Fail to Scale and Sustain Their Digital Transformation Initiatives, August 6, 2018