Re: Conceptual, Semantic, Syntactic and Lexical Design

Gilbert Cockton <[email protected]> Tue, 18 Nov 2003 12:35:17 +0000
Newsgroups gmane.comp.web.ucd
Message-ID <[email protected]>
> Gilbert -
>
> Thanks for your note. Your comment that conceptual applies to
> users and everything else to the system seems dismiss the approach out of hand.
> Don't we need to design these other levels? As Frank mentioned,
> there is a strong correspondence with language, which of course is partly what
> makes it an attractive model. If you are building something like a new
> handheld device, for example, then I think it would be in order to
> consider the problem at the lexical, syntactic and semantic
> levels. Do you disagree? Is there a better model for this kind of design?

William
You are looking at a 20 year old approach.  We've moved on.
I wasn't dismissing the language model - I covered a lot of ground on this in my thesis and it's
not a simple question of accept/reject.

For a summary of the issues and an argument for a domain/application dependent approach see

Cockton G., "The Architectural Bases of Design Re-use" in User Interface Management and Design, eds. D.A. Duce, M.R. Gomes, F.R.A. Hopgood and J.R. Lee, Springer-Verlag, 15 34, 1991.

for an update of this in the context of contemporary approaches see

Cockton, G., "How to not reinvent some wheels: lessons from interactive system architecture," in Architectural Approaches To Software Engineering: Components, Architectures, Frameworks, Patterns, eds. Barrocca, L., Hall, J. and Hall. P., Springer-Verlag, ISBN 1-85233-636-6 191-212, 2000.

The language model had serious flaws as an implementation architecture - see 1980s work by
Buxton and Hill in particular.  As a design architecture, it may have more going for it, but you end
up in deep water over lexical/syntactic and syntactic/semantic boundaries.  These make sense
in compiler design, but not in interactive systems design (how for example do you parse interrupts?
or real-time constructs like double click intervals?).

The common sense approach was expressed by Yigal Hoffner when at ANSA.  You can have
as many layers as you want, just be sure you know what each layer is for.  Each interface between
layers constitutes a language.  Nick Graham at York (Canada) has provided a potential rescue route whereby a clean (and naive) design architecture can be compiled down (under control of various preferences) to a realistic implementation architecture.

Now, where Lucille Ball comes in is 'do-fors' - she used these when taking shorthand - if she didn't
know what to write, she put a 'do-for' which would "do for now and I'll fill it in later".

Conceptual models from the 1980s
from Moran, Newman, Sproull, Foley and others are essentially 'do-fors'.  They 'do-for' the context of
use until we work out how to properly specify it.  They acknowledged "users' conceptual knowledge" as
dinstinct and separate from the system constructs, and thus Moran's Command Language Grammar
had this separate layer (equivalent to Unit Tasks in GOMS).

So to be clear, language based layered architectures have some merit, more so at design level than
implementation level, hence their disappearance in the UIMS world after the mid 1980s.  What has
close to no merit is the 1980s approach to conceptual modelling.  Newman moved forwards taking
approaches from cognitive psychology (mental models literature) and ethnography (representations of
work and human activity).  Moran turned to Design Rationale and forgot about all the formal layered
stuff.  Sproull and Foley are originally/primarily graphics researchers who again left this material
behind (Foley experimented with bottom up *inference* of high level models from concrete designs).

However, conceptual modelling has been replaced by a whole set of contextual approaches that
can be combined on a mix and match basis.  The Johnsons' TKS approach is the one survivor
from the 1980s and is one place to look for a better grasp on conceptual modelling.  Otherwise
it's some combination of personas, scenarios, activities, domain models and context models
(Beyer and Holtblatt).  The aim is to model the intended context of use so that a (layered) system
can be designed that 'fits' this context.  You can't assess fit without representations of both human
context and system, so Foley et al were on the right track in the 1980s.  They just didn't have the
right tools to hand.  We're getting closer, but we've still some way to go in coming up with a practical
and comprehensive set of tools for modelling contexts of use.

In summary - use language models for systems with caution, but stay in the 21st century when
it comes to modelling "human concepts"

I hope this is clearer!

Cheers
Gilbert

    --------------------------------------------------------------
     POSTINGS (in plain text): [email protected]
           SUBSCRIPTION CHANGES:  http://lists.syntagm.co.uk
            (or send email to mailto:[email protected])
    --------------------------------------------------------------