The Elements of Computing Systems
by Noam Nisan, Shimon Schocken
Publisher: MIT Press 2005
Number of pages: 267
The book exposes students to a significant body of computer science knowledge, gained through a series of hardware and software construction tasks. These tasks demonstrate how theoretical and applied techniques taught in other computer science courses are used in practice.
Download or read it online for free here:
(multiple PDF files)
by Ivan Marsic - Rutgers University
This book reviews some important technologies for software development with a focus on Web applications. Emphasis is on underlying principles and basic concepts. Written for upper-division undergraduate and graduate courses in software engineering.
by Ruqian Lu - Polimetrica
This book proposes to separate knowledge from software and to make it a commodity that is called knowware. The architecture, representation and function of Knowware are discussed. The principles of knowware engineering are analyzed.
by Linda Landis, et al.
Guidelines for an organized approach to software development, based on studies conducted by the Software Engineering Laboratory, an organization sponsored by the NASA/GSFC. It describes methods for each phase of a software development life cycle.
by Leslie Lamport - Addison-Wesley Professional
This book shows how to write unambiguous specifications of complex computer systems. It provides a complete reference manual for the TLA+, the language developed by the author for writing simple and elegant specifications of algorithms and protocols.