1st Edition

Software Essentials Design and Construction

By Adair Dingle Copyright 2014
436 Pages
by Chapman & Hall

436 Pages 49 B/W Illustrations
by Chapman & Hall

436 Pages
by Chapman & Hall

Winner of a 2015 Alpha Sigma Nu Book Award, Software Essentials: Design and Construction explicitly defines and illustrates the basic elements of software design and construction, providing a solid understanding of control flow, abstract data types (ADTs), memory, type relationships, and dynamic behavior. This text evaluates the benefits and overhead of object-oriented design (OOD) and analyzes... Read more

Section I: Software Construction. Software Complexity and Modeling. Software Development. Section II: Software Fundamentals. Functionality. Memory. Design and Documentation. Section III: Software Design. Structural Design. Behavioral Design. Design Alternatives and Perspectives. Section IV: Software Durability. Software Correctness. Software Longevity.

Biography

Adair Dingle is a professor of computer science and software engineering at Seattle University, Washington, USA. She holds a B.Sc in mathematics from Duke University, Durham, North Carolina, USA; a M.Sc in computer science from Northwestern University, Evanston, Illinois, USA; and a Ph.D in computer science from the University of Texas at Dallas, USA. She is coauthor of the book, C++: Memory First, and her work has been published in numerous refereed journals and conference proceedings. Her research interests include computer game dynamics, efficient memory management for object-oriented programming languages and applications, and patterns as tools for software engineering education.

Alpha Sigma Nu 2015 Book Award Winner
"Software Essentials covers the material of software design and construction, an area where the field has made very rapid progress in the last few decades. The material is both accessible for disparate audiences and up to date."
—Alpha Sigma Nu Judge

"Dr. Dingle’s Software Essentials: Design and Construction is a superb companion for a pre, concomitant, and post-study of a 100 through 400 level college education in computer science. The principles outlined in her book are language agnostic and find application amongst myriad language choices faced by modern system developers. Her work provides missing discussion about object-oriented design and dynamic programming considerations that are difficult to glean from a strict, detail oriented, programming approach. This higher level discussion is perfect for students and professionals with a modicum of procedural experience to work with the details of what they already know while allowing them to understand a higher level of abstraction and generality to which their skills are transparently and specifically germane."
—Bruce Cresanta, Entrepreneur