Publisher's Synopsis
This is a guide for software engineers, intended to provide building blocks for the design of highly complex software. The authors have devised a small, integrated set of software design principles, along with practical models of the principles at work applicable to most popular software systems and specifically designed for distributed network systems and concurrent operations. Modular principles as stepping stones to large systems are provided and solutions for simultaneous execution in different configurations and operating systems are included.;The authors' experience in theoretical and practical software development includes service in IBM's Air Traffic Control and New York Times Information Bank projects, and on the faculty at the Johns Hopkins University. Throughout the book, the focus is on practical applications of core principles, rather than theoretical musings. This should be a useful reference for designers working in the world of large software systems.