This post is part of my collaborative research with Shinsei Bank on highly-evolvable enterprise software. It is licensed under the Creative Commons Attribution-ShareAlike 3.0 license. I am indebted to Shinsei Bank for supporting this research and to Jay Dvivedi for mentoring me in the art of enterprise systems. All errors are my own.
The fourth edition of Herbert Simon’s Administrative Behavior contains a brief section titled “Applying information technology to organization design”. In the industrial age, Simon says, organization theory was concerned mainly with how to organize for the efficient production of tangible goods. Now, in our post-industrial society, problems of physical production have diminished in importance; the new challenge is how to organize for effective decision-making. Simon characterizes the challenge as follows:
The major problems of organization today are not problems of departmentalization and coordination of operating units. Instead, they are problems of organizing information storage and information processing–not division of labor, but factorization of decision-making. These organizational problems are best attacked, at least to a first approximation, by examining the information system and the system of decisions it supports in abstraction from agency and department structure. (1997, 248-9)
In essence, Simon proposes that we view the organization as a system for storing and processing information–a sort of computer. Extending the computer metaphor, organizations execute software in the form of routines (March and Simon call them performance programs). Department structure, like the configuration of hardware components in a computer, has some relevance to the implementation of decision-making software, but software architects can generally develop algorithms without much concern for the underlying hardware.