Centralization or Decentralization

 

Introduction.  There are so many issues and implications that one needs to consider when deciding whether to centralize or decentralize certain aspects of a site.  It is even more important to investigate these issues when choosing to change the amount of centralization/decentralization to any great degrees.  Centralization is often motivated by efforts to improve efficiency, make better use of resources and take advantage of any economies of scale.  Decentralization efforts often result due to attempts to become more adaptable, make certain specialized competencies are not canceled out, or increasing local control and execution for some particular reasons.

Decentralization often occurs as a revolt against a prevailing hegemony or existing bureaucratic ways.  The PC revolution has derived much of its motivation from such difficulties.  So has the development of the Internet. 

Centralization usually means pulling groups together to increase order and process.  It should result in reduced costs in many situations by reducing the amount of repeated effort and resources.

All in all, it is difficult to make any huge and simple statements about when or what to centralize and when or what to decentralize.  Obviously, organization cultures have a lot of impact on these sorts of things and many firms are known for particular centralization/decentralization approaches regardless of what everyone else is doing.

Limoncelli develops a set of guiding principles with respect to these issues.  We review them here.

Understand Your Motivation for Making the Change.  Maybe the organization

  • wants to increase speed
  • save money
  • become more flexible
  • protect the boss's empire
  • make a particular group look good
  • enabling someone's personal philosophy
  • improve productivity
  • improve ease of accomplishing tasks
  • etceteras

Know What Specific Problem You Are Solving.  It is almost always essential clearly define what problem you are trying to fix.  Make sure to clarify the issues and objectives as much as reasonable.  Try to make certain these issues are communicated to your team.

Centralize as Much as Makes Sense for Today, with an Eye to the Future.  There is likely to need to be some consideration of the following issues.

  • some sort of balance between centralization and decentralization
  • time considerations with respect to development
  • realistic goal setting
  • etceteras

The More Centralized Something Is, the More Likely It Is that Some Customers Will Need Special Treatment.  There is an old business proverb that states, "All of our customers are the same:  They each have unique requirements."  One size never fits all.  Centralization requires flexibility and it may well be the case that nothing motivates decentralization like poorly executed centralization.  While there are definite advantages to not dealing with everything or everyone as a special case, it is important to remember that at some points in time everyone is a special case.

If It Has Become a Commodity, Consider Centralization.  When a particular technology has developed to the point of becoming a commodity it is likely to be a good time to centralize .  Desktops, printers and even e-mail servers have gotten to this level substitutability.  With commodities, it will usually be the case that you can improve economies of scale with more central control and purchasing.

Be Circumspect About Unrealistic Promises.  You should be thoroughly skeptical of any claims that state you will save money through decentralization or add flexibility through centralization or have an entirely new system without pain.  If a product vendor says you will make certain types of vast improvements after buying the product and increasing centralization/decentralization you need to find some serious evidence before changing.  Maybe the improvements are due to the change in centralization/decentralization and not from the product?

Use Your Best Judgment.  Sometimes you need to rely on experience and hunches rather than purported scientific approaches.

It's Like Rolling Out Any New Service.  Even though there are likely to be more emotional issues involved, increasing centralization or decentralization is going to require a lot of the same sorts of preparation that rolling out a new service requires.

Listen to the Customer's Concerns.  It is almost always very important to keep in touch with end user's needs and expectations. 

You Only Have One Chance to Make A Good First Impression.  New systems are never trusted until validated by use.  User's initial experiences with any system will have a lot of impact on their future interpretation of their experiences.  It is almost always essential to try and get things working as desired the first time for any number of reasons including first impressions.

Listen to Customers.  Remember Management Has Control.  The overall organizational structure is likely to impact the centralization/decentralization views relative to computing.

Now we survey some likely candidates for centralization and decentralization.

Candidates for Centralization.  Very briefly, we review Limoncelli's survey of situations that can typically be improved upon though centralization.

  • Management of Distributed Systems
    • Even though there may be reasons to keep the systems decentralized, centralizing their management is usually beneficial.
  • Consolidate Services onto Fewer Hosts
    • While it is important to retain hosts for larger more commonly used services, many can be consolidated.
  • System Administration
    • Improve interactions and consolidate knowledge while hopefully increasing breadth of reach.
  • Consolidate Expertise
    • More than just system administration, there are all sorts of kinds of expertise that should benefit from cross fertilization and shared working environments.
  • Infrastructure Decisions
    • Improve consistency
    • Improve quantity discounts
    • Improve interactivity of systems
    • etceteras

Candidates for Decentralization.  Now we review Limocelli's survey of situations that can typically be improved through decentralization.

  • Fault Tolerance
    • If something major breaks down centrally then everything that is directly dependent on it is also affected.  With decentralization, this can be improved in many ways.
  • Customization/Adaptability
    • More self reliant working groups can definitely increase breadth of reach if they are quite thoroughly capable of self reliance.
    • Groups such as research groups are much less likely to be held to lower more "least common denominator" standards.
  • Meeting Customer's Needs
    • Unfortunately, centralized bureaucracies can easily get consumed in their own games and lose touch with their basic purposes.

Finally, some issues associated with outsourcing need to be addressed.  Outsourcing is actually a form of centralization and can make an organization very dependent on another organization with which they have limited leverage.  It can also be the case that by outsourcing, internal expertise is lost and the ability to evaluate the outsourcing providers can be greatly diminished.  If certain internal capabilities are actually important to overall organization competitiveness then this can be disastrous.

It is always essential to make sure that outsourcing contracts are very thorough.  Which is harder to do as expertise is more outside the organization.  Organizations also need to make sure they have appropriate exit strategies from outsourcing agreements.