[Pl-seminar] 12/16: Daniel Jackson, Conceptual design of software

Vincent St-Amour stamourv at ccs.neu.edu
Mon Dec 1 13:01:07 EST 2014

NUPRL Seminar presents

Daniel Jackson

10:30 - 12:00 (non-standard time)
Tuesday, 12/16 (non-standard day)
Room 366 WVH (http://www.ccs.neu.edu/home/wand/directions.html)

Conceptual design of software

What makes a software application usable, robust and effective? Elegant
code, clean user interfaces, comprehensive testing, etc, all matter. But
more important is getting the concepts right. Every software application
is built around a collection of concepts that determine both the
structure of the code and the shape of the user interface. Indeed, a few
critical concepts often characterize an application: layers and masks
for photo editors, for example; paragraphs and styles for word
processors; formulas and relative references for spreadsheets; posts,
tags and friendships for social apps.

Despite their centrality in software design, concepts are often treated
only indirectly, as second class citizens. Interface designers focus on
use cases, wireframes and detailed interactions; programmers on module
structures, datatypes and API specs; architects on scalability and
performance; and so on. What's needed is a design approach in which the
invention and analysis of concepts takes center stage.

This talk outlines my current thinking on designing software with
concepts. Drawing on good and bad examples from a variety of products
(from Adobe, Apple, Dropbox, Google, Microsoft and others), it explains
what concepts are, how they can be represented, and how to analyze
concepts using some simple design criteria.

More information about the pl-seminar mailing list