Complex systems are no longer mysterious.Complex systems are no longer mysterious. We have a broad consensus aboutWe have a broad consensus about –what we mean by a complex system, –what their properties are, and –(broadly) how they work. It’s time to put complex systems to work.It’s time to put complex systems to work.
Multi-scalar, i.e., multiple levels of abstraction –IT systems involve quantum physics, solid-state electronics, gates & logic, software (often many levels), strategies, CONOPs, users, … –Prone to phase transitions/chaos: small change → big effect. –Each level illustrates emergence. If the system involves real physical stuff, –No feasibly simulatable bottom level. Quarks? Strings? E.g., an evolutionary arms race. –The different levels cannot be completely isolated from each other or we would have magic except when implemented in software. Allows for creative new uses, “emergence.” Includes “loosely coupled” components with a certain degree of autonomy, e.g., agents.
Entangled with its environment. –Built to act on its environment—to do something in the world. –Can often be controlled/manipulated by modifying its environment. Often a multi-sided platform. –An operating system, a browser, a shopping center, a standard. –Whoever owns it controls it! (See governance below.) Boundaries are deliberately permeable and indistinct. –Exchanges energy and materials with its environment: eats & excretes. –Must extract energy from its environment to persist. (Far from equilibrium.) –System of systems; the operator goes home; a new president is elected. Must adapt to a continually changing environment. –Always under development/evolving, e.g., version x.y. –Is simultaneously deployed and under development, e.g., Wikipedia. –Must be understood more broadly than as “a deliverable.” –A “social entity” that also includes its users and its developers. –Requires a well thought out governance structure.
To refine, clarify, and formalize these concepts. To make them intuitive, commonplace, and everyday. To make them operational. –To adapt them to practice in building real systems. –To define development processes based on these perspectives. –To build tools to allow anyone to use them.