The next major waste we will look at in this series is over processing. In manufacturing over processing means doing more than the customer requires. For example: painting areas customers don’t see or producing products with unnecessarily tight tolerances. Over processing increases labor and material time and cost without delivering extra value to customers.
In software development over processing is caused by designing and building more complex applications than users require. For example: rebuilding an application on a new platform when the old platform could have been upgraded for a much lower cost, using a complex middleware product that causes a lot of extra work or building an ideal server platform that can cater for far more users than you expect to have any time soon.
Over engineering is common in traditional software development because design is done upfront by a software architecture team when the requirements are over stated, the solution is uncertain and the costs are unknown. As a result traditional software architects often design big, complex solutions using the latest technology with little consideration of the cost.
In IT Operations over processing occurs when you give customers more than they need sooner than they need it. For example: setting up a new employees PC two weeks before they start or getting new servers into production in one week when most projects won’t use them for two weeks. This happens very rarely.
In Lean manufacturing you minimize over processing by developing acceptance criteria that customer’s value and standard operating procedures to meet them with the minimum time and effort possible.
In software development we can minimize over engineering by moving from big design up front to continuous just in time design that evolves as we learn what we really need to build. We do this making design a role within a cross functional team that develops software from beginning to end in small batches with a short cycle time and a lot of feedback from users. This aligns well with the Agile principle that “Simplicity–the art of maximizing the amount of work not done–is essential”.
In IT Operations we can minimize over processing by asking users what they need and then developing standard services with standard processes and end to measures of customer value to meet those needs. Anything that doesn’t add value to users can be taken out of the process.
Unfortunately many traditional IT Departments apply Lean Principles in a way that cuts IT costs locally at the expense of customer value. For example it’s common for Contract Managers to outsource IT services on a long term contract to the IT provider that promises to meet service level agreements (not user needs) for IT transactions (not end to end services) at the lowest cost (not highest value). To minimize their costs commodity service providers typically apply strict operating procedures that push as much responsibility for the work as possible onto users and other teams. Then they reduce labor costs as much as possible by reducing the team size and skill and sending the work offshore until they just barely meet the minimum transaction requirements. In these arrangements it’s common for new employees to find that they can’t get a PC or login until weeks after they’ve started and for it to take 12 weeks to get a firewall rule changed and 12 months to get new servers in production. This approach is not recommended because it substantially reduces the value of IT to the organization.
The next article will discuss how to reduce inventory waste in IT.