Architectural Control and the Strategy of Design:
Agent-Based Approaches to Modeling the Software Industry
C. Jason Woodard
jwoodard@hbs.edu
Traditional wisdom in the software industry has held
that the key to success lies in creating and capturing architectural “control
points,” proprietary interfaces and protocols made valuable by their adoption
as de facto standards. But today, largely in response to Microsoft’s successful
application of this principle, firms (including Microsoft) are often seen
to give away architectural assets, if only to prevent a competitor from gaining
proprietary control. Existing research has shown both types of behavior to
be rational in certain circumstances, but falls short of explaining shifts
from one type to the other.
I will present three short pieces of work related to
this puzzle, drawn from the early stages of my dissertation research. The
first paper outlines a class of models appropriate for the software industry,
whose primitives include not only the agents and the market, but the artifacts
themselves—the modular structure of their design, and the rules that operate
on them. The second paper explores a simple member of this class, a market
entry game in which reinforcement-learning agents are used to investigate
analytically intractable mixed equilibria. The third paper specifies a more
complex model in which agents build competing products whose design is endogenous.
In this model, agents evaluate alternative design choices using automated
reasoning techniques.
This work is informed by several streams of research
in the social sciences. Game theory has served as a foundation for a rich
economic literature on oligopoly, including the role of network externalities
in the adoption of standards, the attainment of architectural lock-in, and
the practice of giving away goods to stimulate demand in complementary markets.
The literature on complex adaptive systems acknowledges that agents in reality
face vast strategy spaces, necessitating evolutionary mechanisms or bounded-rational
search as a substitute for exhaustive backward induction. Complexity theory
also provides a framework for analyzing the design of modular artifacts like
software products. Social network analysis draws attention to the structure
of ties among agents, and provides measures of power and dependence that
can be applied analogously to the ties among modules and products.