Onward! 2015
Sun 25 - Fri 30 October 2015 Pittsburgh, Pennsylvania, United States
co-located with SPLASH 2015
Thu 29 Oct 2015 10:30 - 11:15 at Grand Station 3-5 - Session 2 Chair(s): Stephen Kell

Concepts are the building blocks of software systems. They are not just subjective mental constructs, but are objective features of a system's design: increments of functionality that were consciously introduced by a designer to serve particular purposes. This essay argues for viewing the design of software in terms of concepts, with their invention (or adoption) and refinement as the central activity of software design. A family of products can be characterized by arranging concepts in a dependence graph from which coherent concept subsets can be extracted. Just as bugs can be found in the code of a function prior to testing by reviewing the programmer's argument for its correctness, so flaws can be found in a software design by reviewing an argument by the designer. This argument consists of providing, for each concept, a single compelling purpose, and demonstrating how the concept fulfills the purpose with an archetypal scenario called an 'operational principle'. Some simple conditions (primarily in the relationship between concepts and their purposes) can then be applied to reveal flaws in the conceptual design.

Thu 29 Oct

Displayed time zone: Eastern Time (US & Canada) change

10:30 - 12:00
Session 2Onward! Essays at Grand Station 3-5
Chair(s): Stephen Kell University of Cambridge
10:30
45m
Talk
Towards a Theory of Conceptual Design for Software
Onward! Essays
Daniel Jackson Massachusetts Institute of Technology, USA
DOI
11:15
45m
Talk
The Cuneiform Tablets of 2015
Onward! Essays
Long Tien Nguyen University of California at Los Angeles, USA, Alan Kay University of California at Los Angeles, USA
DOI