Designing for Software's Social Complexity. - Fiadeiro, José Luiz (Computer (00189162), 2007)
The article discusses the physiological and social complexity in software engineering and information technology. Physiological complexity involves systems whose size and makeup required decomposition into smaller, manageable and reusable parts that any programmer could assemble while social complexity arises from the number and intricacy of interactions. According to the author, the key solution to the software crisis involves the development of software components that can interact with other components. Development of an adaptive design theory for hybrid systems and design principles and methods based on solid theoretical foundations are also recommended.