Skip to content
Responsive image
Vendor
Fritz Agency
Christian Dittus
Original language
English

THE ESSENCE OF SOFTWARE

Daniel Jackson

Why Concepts Matter for Great Design

A revolutionary concept-based approach to thinking about, designing, and interacting with software

As our dependence on technology increases, the design of software matters more than ever before. Why then is so much software flawed? Why hasn't there been a systematic and scalable way to create software that is easy to use, robust, and secure?

Examining these issues in depth, The Essence of Software introduces a theory of software design that gives new answers to old questions. Daniel Jackson explains that a software system should be viewed as a collection of interacting concepts, breaking the functionality into manageable parts and providing a new framework for thinking about design. Through this radical and original perspective, Jackson lays out a practical and coherent path, accessible to anyone—from strategist and marketer to UX designer, architect, or programmer—for making software that is empowering, dependable, and a delight to use.

Jackson explores every aspect of concepts—what they are and aren't, how to identify them, how to define them, and more—and offers prescriptive principles and practical tips that can be applied cost-effectively in a wide range of domains. He applies these ideas to contemporary software designs, drawing examples from leading software manufacturers such as Adobe, Apple, Dropbox, Facebook, Google, Microsoft, Twitter, and others. Jackson shows how concepts let designers preserve and reuse design knowledge, rather than starting from scratch in every project.

An argument against the status quo and a guide to improvement for both working designers and novices to the field, The Essence of Software brings a fresh approach to software and its creation.

Daniel Jackson is professor of computer science at the Massachusetts Institute of Technology, and an associate director of the MIT Computer Science and Artificial Intelligence Laboratory.
Available products
Book

Published 2021-11-01 by Princeton University Press

Comments

“A provocative rethinking of software development as a design discipline. Too often software embodies confusing and inconsistent mental models. Taking a truly human-centered approach, with many rich examples, Jackson offers us the tools to rethink how we design software to be more usable and useful.” —Elizabeth Churchill, Director of User Experience, Google “Daniel Jackson's The Essence of Software is a monumental work. It provides a new structure for thinking about software in terms of concepts. Wide-ranging, it uses modern examples the reader will know. And because the book (and its copious endnotes) is designed to be read along different paths, every software engineer will find something valuable in it.” —Frederick P. Brooks, Jr., author of The Mythical Man-Month: Essays on Software Engineering “I cannot say enough good things about this book. The Essence of Software is essential reading for anyone concerned with making software that is responsive to human needs and purposes. Its profound, practical framework offers a broadly useful, enormously empowering way to think about and do software design.” —Mitchell Kapor, founder, Lotus Development Corporation “Daniel Jackson's The Essence of Software will join Fred Brooks's The Mythical Man-Month as an influential guide to making great software products and tools. Designers will come to their work with more open minds, clearer thoughts, and the capacity to build excellent software.” —Ben Shneiderman, University of Maryland “The Essence of Software won't just give you new ideas: Daniel Jackson's novel and thoroughly worked-out software concepts will transform how you think about design, software, and programming—whatever systems or languages you use, whether you are a new programmer, professional programmer, or researcher. This is a landmark book that will make the digital world a better place.” —Harold Thimbleby, author of Fix IT: See and Solve the Problems of Digital Healthcare