Software Ate the World, But It Was a Dog’s Breakfast
You would think if the entire world relied on software, we would start to get good at it.
Software suffers from at least three classic problems.
The first is complexity.
Many software systems have gotten larger than any human or even human system can manage, no matter how well intentioned. There are just too many dependencies and too many things that can go wrong. Any organization which relies on the interaction between software, processes, and relationships would do well to study the theory behind High Reliability Organizations.
ECommerce replatforming for most retailers fall into this category. Many retailers have dozens of even a few hundred vendors and don't realize it. What' are the odds that all will transition to the new platform without hiccups? Pretty small.
The second is human relationships.
The classic text 5 Dysfunctions of a Team by Patrick Lencioni is an outstanding proxy for the types of problems you can expect in most companies.
The chief among these problems really is lack of trust. Lack of trust will simply kill any communication or really any other system you might setup. Most teams never even get to the higher level dysfunctions because all of it breaks down here.
The final one is clarity of purpose.
Within any large enough company, there are competing agendas. Which one is right? Is the company being led around by the balance sheet or by a mission to transform the consumer experience? Would most employees be able to identify the mission without using jargon or other nonsense terms like “market leader”?