What’s a fully staffed project? One that never waits for a team member to become available. Limit the number of concurrent projects to the number that can be fully staffed and team members won’t have to multitask.
The outcome: Not only will each project complete faster, but the whole project portfolio will complete faster.
Bottleneck No. 3: Projects
Traditionally, organizations make new technology happen through projects. The more complex the design, the bigger the project. But as projects get bigger the risk of failure increases geometrically while the likelihood of substantial delay approaches certainty.
Consider organizing your efforts into releases instead. Releases bundle discrete enhancements for regression, stress testing, and deployment. Relying on releases instead of projects lets you take advantage of one of the most reliable heuristics of IT management: Enhancements succeed, projects fail.
By the way, if you go this route you don’t have to describe it as anything radical. You can call it scrum and enjoy all the company.
Don’t stop there. Organizing development work into releases still creates delay. Typical scrum sprints are a month in duration, which establishes a monthly pace for business change, not including having to wait for a Change Advisory Board (CAB) meeting (another governance committee).
So go all the way to continuous integration and deployment -- in a word, devops. Automate testing, subject each software change to continuous integration, and put each small change into production immediately. With changes this small, the CAB is superfluous.
We are, after all, long past the time when a misplaced comma will cause something to explode.
Bottleneck No. 4: Manual provisioning
Development teams can provision a complete environment in the cloud in a matter of minutes -- or they can ask IT operations for the same environment and get it in a matter of months.
This isn’t an intrinsic limitation. It’s a choice. As minutes are shorter than months, and as public cloud providers have already perfected the technology, the better choice is clear.
Start automating, and empower your developers to handle provisioning for themselves.
Bottleneck No. 5: Favoring interfaces over integration
New functionality creates new value. But in most IT shops, new functionality takes a backseat to making sure a software change doesn’t break the company’s spider web (or hairball) of custom-programmed point-to-point batch interfaces.
Clean up the interface tangle with a well-engineered integration system, and project teams speed up, testing takes less time, and deployments go more smoothly.
Then take it a step further: Turn “Information Technology” into “Integration Systems,” whose job is to deliver reliable access to the company’s core applications portfolio through standard APIs that expose data and functionality as secure, well-defined services.
Sign up for Computerworld eNewsletters.