Essence of Software

Regular price €31.99
Regular price €32.50 Sale Sale price €31.99
A01=Daniel Jackson
Abstraction (software engineering)
Age Group_Uncategorized
Age Group_Uncategorized
Agile software development
Application programming interface
Assertion (software development)
Authentication
Author_Daniel Jackson
automatic-update
Axiomatic design
Category1=Non-Fiction
Category=UM
Category=UMZ
Category=UY
Category=UYD
Category=UYZG
Component-based software engineering
Computer-aided design
Concept
Conceptual model
COP=United States
Cursor (user interface)
Data model
Data set
Data type
Delivery_Delivery within 10-20 working days
Design
Design knowledge
Design pattern
Designer
Diagram
Discoverability
Dropbox (service)
Email
Engineering
eq_computing
eq_isMigrated=2
eq_non-fiction
Functional requirement
Gmail
Graphical user interface
HTTPS
Implementation
Information infrastructure
Instance (computer science)
JavaScript
Language_English
Macintosh
Metadata
Motivation
Obfuscation (software)
PA=Available
Paragraph
Pixel
Plug-in (computing)
Price_€20 to €50
Principle
Programmer
Programming idiom
Programming language
Programming style
Programming tool
PS=Active
Requirement
Semantics
Server (computing)
softlaunch
Software
Software architect
Software design
Software development
Software engineer
Software engineering
Software quality
Software requirements
Software system
Stash (software)
Subdomain
Synchronization (computer science)
Turing Award
Twitter
Ubiquity (software)
Usability
Use case
User interface
User interface design
Version control
Widget (GUI)
Workaround
Workstation

Product details

  • ISBN 9780691225388
  • Dimensions: 156 x 235mm
  • Publication Date: 16 Nov 2021
  • Publisher: Princeton University Press
  • Publication City/Country: US
  • Product Form: Hardback
  • Language: English
Delivery/Collection within 10-20 working days

Our Delivery Time Frames Explained
2-4 Working Days: Available in-stock

10-20 Working Days
: On Backorder

Will Deliver When Available
: On Pre-Order or Reprinting

We ship your order once all items have arrived at our warehouse and are processed. Need those 2-4 day shipping items sooner? Just place a separate order for them!

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. He is the author of Software Abstractions and Portraits of Resilience.