Risks Relating to System Compositions. (Communications of the ACM, 2006)
The article discusses the challenge of developing computer systems with complex sets of requirements, and the importance of building trustworthy systems using well-designed components. While this is obvious in theory, in actual practice system compositions are usually improvised and must often compromise system integrity in order to ensure interoperability. In order to create more efficient and effective systems, computer engineers must focus on system architecture, software engineering, scalability, and compatibility.