Government // Enterprise Architecture
Commentary
12/18/2013
03:35 PM
Dave West
Dave West
Commentary
Connect Directly
Twitter
LinkedIn
RSS
E-Mail
100%
0%

HealthCare.gov Shows 4 Ways Software Delivery Must Change

Troubled project should encourage you to discard traditional manufacturing processes with their reliance on control, and prioritize information and flexibility.

In my last blog post, I discussed how the launch of the Affordable Care Act's healthcare exchange website illustrated how modern software delivery has reached a point of complexity where the current processes are failing, and management practices must change. These processes have taken their direction from traditional manufacturing and supply chain metaphors, where the mantra has been "When problems occur, add more process and control."

But software today is a complex product that involves a multitude of suppliers and technology platforms. That's why those who manage software development must look to nature and think in terms of ecosystems as a guide to their process models. We must consider discarding traditional manufacturing processes, with their reliance on control and process, and replacing them with information and flexibility.

[What does the HealthCare.gov website reveal about software development? Read Healthcare.gov Shows Need For Modernizing Software Delivery.]

You can never predict what will happen during a software project, but you can determine the measures you need to see as it progresses, and you can connect the software development supply chains to deliver those measures. By putting the right measures in place, the prime contractor and the ultimate customer can see how the project is progressing and react to any missing integration and performance testing phases by changing the deadline or altering the project's scope.

Specifically, the lead software delivery team should do the following:

  • Build out measures and reports that help the project team understand the project's true status. These reports must include development metrics such as quality and progress, as well as customer metrics such as usage and happiness. They should aggregate the results of progress into an overall portfolio view, allowing executives to make investment decisions in real-time.

  • Ensure that the teams have a clear understanding of all the dependencies affecting the project. This includes outsourced testing or external development teams. There are more complex dependencies, such as vendor APIs and open-source projects, which are often known only to the developers and architects involved. However, all dependencies should be visible enough to manage the software project effectively.

  • Manage the entire lifecycle, integrating all dependencies. By automating and integrating information about eternal activities, a software development team can assess the overall development picture more accurately and act proactively, instead of waiting for reports to reach their attention.

For many software development professionals, this approach to project management seems both scary and expensive. After all, it takes organizations years to learn how to integrate, manage, and automate their supply chains. But here's where the very nature of software delivery provides an advantage: With the advent of agile development and engineering improvements such as continuous integration and automated testing, development teams are becoming more disciplined.

Increased discipline, combined with network infrastructure and the changing style of collaborative and task-based development, provides an environment that is ready for a more structured but less enforced approach -- and that approach is neither scary nor expensive.

(Source: Flickr/Drew Stephens)
(Source: Flickr/Drew Stephens)

Here's a call to action for software delivery professionals:

  1. Accept that controlling your own teams is hard enough, and that the reality of modern software is not about control but information. Process has been replaced with observation, and control has been replaced with adaption.

  2. Consider which measures project teams need across the lifecycle. Those measures should focus on internal metrics such as budget and variance, as well as external metrics such as customer feedback.

  3. Map out all lifecycles to reduce development risk and react in the most appropriate way. Not all dependencies and lifecycles are equally important. Some are slow to change or are less critical.

  4. Automate the integration of different lifecycles, focusing on the key measures and metrics required to respond and adapt. For instance, integrate with the defect repository of the open-source project on which the product depends, or with the defect repository of a popular API. For external project dependencies inside the firewall, it might be possible to access the requirements and project plans, allowing a forward-looking view. Even external connections to tools like Stack Overflow or to wikis might be helpful.

By embracing ecosystems, government software project managers can not only improve transparency -- a core goal of the current administration -- but also increase the overall predictability of the software lifecycle. Concentrating on measures that use real data, such as build stability and CI test runs, and bringing end-user feedback into the process quicker will help bring more transparency to the project -- and ensure that the team is aware early if a project is failing.

There's no silver bullet for solving software delivery problems. The ACA website is just one example of a software project failure. But as software development professionals, we can improve our understanding of projects and employ true measures for success, instead of concentrating on rudimentary artifacts and reports that exist solely to manage the process. By combining improved, integrated information and more timely customer feedback, government agencies can follow the proven path of Internet giants like Amazon, Google, and Facebook.

Dave West is chief product officer at Tasktop. He is a frequent speaker at industry conferences and a widely published author of technical articles, including a book on object-oriented analysis and design.

Emerging software tools now make analytics feasible -- and cost effective -- for most companies. Also in the Brave The Big Data Wave issue of InformationWeek: Have doubts about NoSQL consistency? Meet Kyle Kingsbury's Call Me Maybe project (free registration required).

Comment  | 
Print  | 
More Insights
Comments
Oldest First  |  Newest First  |  Threaded View
David F. Carr
100%
0%
David F. Carr,
User Rank: Author
12/18/2013 | 10:12:03 PM
Beta
Is this really as simple as asking What Would Google Do?

A lot of commentators hold them up as the ideal, but Google never had to negotiate a mountain of requirements laid down by bureaucrats and Congress.
anon2302210466
100%
0%
anon2302210466,
User Rank: Apprentice
12/19/2013 | 10:14:31 AM
Software goes out of control
So you admit that nobody is able to control development process.

Nobody is going to try and gain the control - just the contrary: you suggest to admit the fact and wash hand of.
irinakl
50%
50%
irinakl,
User Rank: Apprentice
1/22/2014 | 3:50:44 PM
Re: Software goes out of control
Hei, guys!

You are totally disoriented!

Computer is just machine, nothing more!

Program has nothing in common with ecosystem.

People create it - not nature.

You had fired experienced engineers and now no wonder that you lose the control.

Yes, I know how to create working programs, but I'm out of this system.

Good bye!!

 
irinakl
50%
50%
irinakl,
User Rank: Apprentice
1/23/2014 | 1:26:51 PM
Re: Beta
Google doesn't earn from software.

They earn from ads
Register for InformationWeek Newsletters
White Papers
Current Issue
InformationWeek Tech Digest September 24, 2014
Start improving branch office support by tapping public and private cloud resources to boost performance, increase worker productivity, and cut costs.
Video
Slideshows
Twitter Feed
InformationWeek Radio
Sponsored Live Streaming Video
Everything You've Been Told About Mobility Is Wrong
Attend this video symposium with Sean Wisdom, Global Director of Mobility Solutions, and learn about how you can harness powerful new products to mobilize your business potential.