Monday, November 11, 2019

The differences in manufacturing of Physical assets and development of Digital assets


“Software factory” word is still in use with lots of organizations and especially with IT consulting organizations. This word essentially depicts that lots of people still do not understand the difference between the manufacturing of the Physical and development of Digital assets. Usage of "factory" in the context of software development and maintenance always irritates me. This post is just to clarify the difference in the manufacturing of physical assets and the development of digital assets.

  1. Physical assets and manufactured or assembled while digital assets are developed.
  2. Physical assets design and manufacturing are two distinct phases of its life cycle. In the case of Digital assets, there are no two separate phases of design and manufacturing, there is only one - software development.
  3. In the case of Physical assets, you build the “same thing” again and again once the design and manufacturing process has achieved an acceptable level of quality, efficiency, and productivity. In the case of Digital assets, you build only “one thing” and keep on improving it over a time period.
  4. There is no finished good inventory for Digital assets but for Physical assets you need one.
  5. Digital assets are malleable in nature. Digital assets acquire new capabilities, improve existing capabilities, shed the not required capabilities during its lifetime which is extremely difficult, if possible, in case of Physical assets
  6. The pace of technological changes in infrastructure pertaining to Digital assets is tremendous. For example transformation from Assembly to Procedural to Object-oriented to Functional languages, separation of hardware from software (virtualization and containerization), automation of repetitive tasks, computing infrastructure changes (big monolithic to distributed to cloud-based systems) and many more in a short span of a couple of decades.
  7. Digital assets’ development & maintenance has three distinct types of works – Writing the code, triaging the defects, and assembly of components. In Digital assets first two types of works consume most of the resources while in third is a prime candidate for automation. Physical assets also have three types of work – Designing, manufacturing, and deployment/distribution. Here manufacturing step is a prime candidate. Depending upon the nature of Physical asset cost distribution occur among all three types of work.
  8. Manufacturing of Physical assets has a long history so improvement in the manufacturing process led to the current state of a high level of efficiency, productivity, and efficiency. Few of the big jumps in improving efficiency and productivity in Physical assets manufacturing are - Craftsmanship – Journeyman & Apprentice, Interchangeable Parts, Assembly Line, Time in motion studies, Process Control, Just in time inventory, Cost accounting, Theory of constraint - Drum Buffer Rope, Toyota Production System, Kanban, Kaizen, Kata, Sig Sigma, Lean, DFX (Design for XXX), etc. Digital asset development has a relatively short history. Few of the big jumps in improving efficiency and productivity in Digital assets development are Waterfall (inspired by the manufacturing of Physical assets), defining of SDLC (manifestation of phase gate R&D of Physical assets), Design pattern (manifestation of time in motion studies), CMMI, ITIL, COBIT, V model, Lean software development (borrowed from Lean approach of Physical assets’ manufacturing), Extreme Programming, Scrum, Craftsmanship manifesto (manifestation of Journeyman & Apprentice approach), Agile manifesto, Kanban (adoption from Physical assets manufacturing), DevOps, emergent architecture, vitalization of hardware, cloud, Lean Startup, continuous delivery, Shift Left, the arrival of various scaling frameworks for Agile, etc.

I hope, proponents of the "software factory" model for digital assets pay attention to the differences in the creation of Physical and Digital assets.



No comments:

Post a Comment