This first edition book integrates data structures, library design, and software principles into one package. The authors begin with simple software engineering concepts, and repeatedly use them to develop applications throughout the text. The topics covered include fundamental design concepts and principles; object oriented analysis and design; and design for reuse. For computer programmers.