Channels ▼
RSS

Design

Other Voices: Envisioning a Software Distribution Hub


Jake Sorofman works for rPath, a provider of automated application deployment tools. You can contact Jake at jsorofman@rpath.com.


Modern manufacturing is a direct consequence of a forced transformation -- a transformation resulting from changing economics and massive product and supply chain complexity. The same sort of transformation is taking place today in enterprise IT -- forced by similar challenges and following a very similar arc.

Manufacturing has evolved from manual to automated, ad hoc to repeatable, from art to science. Manufacturing has been forced to "industrialize." Aiding in the effort are product lifecycle and supply chain management tools for streamlining manufacturing process and linking together previously isolated stages in the value chain.

Several factors drive manufacturing complexity:

  • Many inputs. Raw materials and product sub-assemblies are sourced through direct and indirect means. Inputs must be made available for production runs.
  • Many actors. Each phase of the manufacturing process involves many different roles and individuals who must work in harmony to produce the end product.
  • Massive scale. The volume of units shipped and diversity of product lines drive massive scale in the volume of raw materials, work in process and finished goods.
  • Constant change. Changes in the specification and availability of inputs must be communicated and propagated downstream, while changes in demand are communicated and propagated upstream.
  • Frequent specialization. End products must be tweaked, tailored and localized to satisfy diverse market requirements.

Manufacturing is a useful analogy for the transformation taking place in enterprise IT. After all, these same challenges -- many inputs, many actors, massive scale, constant change and frequent specialization -- could just as easily describe the state of IT today.

Manufacturers have addressed manufacturing complexity by creating a centralized infrastructure for controlled reuse of standardized components, collaboration between roles, and automation of key processes. They have created, in effect, a "hub" that automates and streamlines how inputs become outputs in a way that is efficient and scalable and based on principles of standardization and reuse. They have integrated these standardized components all the way back through the supply chain.

IT has no such hub today, relying instead on independent, often duplicative efforts and disconnected, fragmented processes to construct and maintain a system. For IT today, scale and change are compounding at the same time budgets contract and business line expectations increase. IT is undergoing a forced transformation -- from art to science -- much like manufacturing organizations of the past.

The transformation for enterprise IT should follow a similar path, where a centralized hub becomes the control infrastructure for managing IT system construction and change. This hub becomes the basis for managing and reusing standardized system components -- components that are integrated back through the software supply chain.

You may think of this like a Rubik's Cube, where the colored blocks represent reusable software components which -- when combined -- represent a new system. These components are managed centrally and reused liberally to construct new systems. All the components and the systems themselves are deeply modeled and version controlled, ensuring that they’re well-defined and controlled throughout their lifecycle. When updates are made to the components, change is flowed through the hub and cascaded en masse to hundreds or thousands of deployed systems.

With a software distribution hub, key challenges for IT become surmountable:

  • Many inputs. System software components are standardized and versioned, giving IT control over what software is put into production. The software supply chain is fully integrated from the deployed business services all the way back to the original sources of the enabling software -- custom, commercial and open source. Changes to software and configurations flow seamlessly from the sources to the consuming systems.
  • Many actors. Rather than duplicating efforts, working at cross-purposes and creating conflicts in production environments, all contributors to the IT value chain are in perfect coordination. Standardized components are reused, not recreated. Where they're reused is tracked. Changes to these components -- in dev, test or production; by OS, middleware or application teams; or by third party software providers -- are seamlessly propagated from their source, through the hub, and into production.
  • Massive scale. Traditionally, adding systems meant adding people. With the software distribution hub, scale can grow at near zero marginal cost. Reuse of system components means massive leverage on the management of software in production.
  • Constant change. With change flowing through the hub, introducing change at any layer of the stack is simple, free of conflict and reversible. Changes to custom, commercial or open source software -- or to configurations or business service definitions -- seamlessly flow from their source to their destination.
  • Frequent specialization. One-size-fits-all gives way to customized systems, as standardized components are mixed and matched to address diverse business requirements. Because these components are controlled and managed centrally, there’s no added management overhead for this sort of system diversity.

Legacy manufacturing processes were forced to transform under the weight of complexity, scale and changing economic conditions. The same transformation -- by the same forces -- is underway for enterprise IT.

Today's approaches are too slow, costly and chaotic to address modern system complexity and IT budgets. The only viable solution is a new approach -- a distribution hub, with deep integration from the business service back through the software supply chain -- that takes the cost and complexity out of managing IT environments in an age of massive scale, accelerating change, and elusive op ex budgets.


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
 

Video