A pragmatic approach to the formal specification of interactive systems

In the thesis an approach to the formal specification of interactive systems which embodies a number of pragmatic criteria is presented. The criteria we use for pragmatism are that any proposed approach to specification should directly support usability reasoning, that the specifications should be expressive, and that they should be reusable. We examine the concept of usability reasoning, and use a model of reasoning which includes as components representation, input, observation, system behaviour and object structuring. Frameworks for reasoning about these components, and syntheses of these components are proposed. Expressiveness and reuse issues are examined in an object-oriented context, and two models of object interaction examined with respect to a number of criteria. Based on the understanding gained from exploration of these issues of reasoning, expressiveness and reuse, we develop an approach to the specification of interactive systems. We build on the existing notation of Object Z, but present a new schema calculus to allow interactive behaviour to be described more conveniently. To demonstrate its pragmatism, we apply this approach to a substantial case study.

[1]  Friederike Nickl,et al.  (Objects + Concurrency) & Reusability - A Proposal to Circumvent the Inheritance Anomaly , 1996, ECOOP.

[2]  Philippe A. Palanque,et al.  Formal Methods in Human-Computer Interaction , 1997, Formal Approaches to Computing and Information Technology (FACIT).

[3]  Michael D. Harrison,et al.  A Review of Formalisms for Describing Interactive Behaviour , 1994, ICSE Workshop on SE-HCI.

[4]  Kim J. Vicente,et al.  Coping with Human Errors through System Design: Implications for Ecological Interface Design , 1989, Int. J. Man Mach. Stud..

[5]  Bob Fields,et al.  Distributed information resources: a new approach to interaction modelling , 1996 .

[6]  Panos Markopoulos,et al.  On the composition of interactor specifications , 1996 .

[7]  James E. Rumbaugh,et al.  Relations as semantic constructs in an object-oriented language , 1987, OOPSLA '87.

[8]  Panagiotis Markopoulos,et al.  A compositional model for the formal specification of user interface software , 2013 .

[9]  Panos Markopoulos On the Expression of Interaction Properties within an Interactor Model , 1995, DSV-IS.

[10]  Andrew Hussey Object-oriented specification and design of user-interfaces , 1996, Proceedings Sixth Australian Conference on Computer-Human Interaction.

[11]  Edwin Hutchins,et al.  How a Cockpit Remembers Its Speeds , 1995, Cogn. Sci..

[12]  Jiajie Zhang,et al.  Representations in Distributed Cognitive Tasks , 1994, Cogn. Sci..

[13]  Thomas P. Moran,et al.  Questions, Options, and Criteria: Elements of Design Space Analysis , 1991, Hum. Comput. Interact..

[14]  Adele Goldberg,et al.  Smalltalk-80 - the interactive programming environment , 1984 .

[15]  Wendy Johnston A Type Checker for Object-Z , 1996 .

[16]  Carroll Morgan,et al.  Programming from specifications , 1990, Prentice Hall International Series in computer science.

[17]  Yvonne Rogers,et al.  External cognition: how do graphical representations work? , 1996, Int. J. Hum. Comput. Stud..

[18]  Alena Griffiths Object-oriented operations have two parts , 1997, FME 1997.

[19]  Thomas R. G. Green,et al.  Cognitive dimensions of notations , 1990 .

[20]  S S Stevens,et al.  On the Theory of Scales of Measurement. , 1946, Science.

[21]  Ralph E. Johnson,et al.  Components, frameworks, patterns , 1997, SSR '97.

[22]  A. Hussey,et al.  Using Object-Z to specify a web browser interface , 1996, Proceedings Sixth Australian Conference on Computer-Human Interaction.

[23]  David Woods,et al.  Behind human error : cognitive systems, computers, and hindsight : state-of-the-art report , 1994 .

[24]  Fabio Paternò,et al.  On the use of LOTOS to describe graphical interaction , 1993 .

[25]  J. Michael Spivey,et al.  Understanding Z : A specification language and its formal semantics , 1985, Cambridge tracts in theoretical computer science.

[26]  Ralph E. Johnson,et al.  Surveying current research in object-oriented design , 1990, CACM.

[27]  José Luiz Fiadeiro,et al.  Sharing Actions and Attributes in Modal Action Logic , 1991, TACS.

[28]  John A. McDermid,et al.  A summary of domain analysis experience by way of heuristics , 1997, SSR '97.

[29]  Jock D. Mackinlay,et al.  Automating the design of graphical presentations of relational information , 1986, TOGS.

[30]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[31]  Yuh-Jzer Joung,et al.  A comprehensive study of the complexity of multiparty interaction , 1992, POPL '92.

[32]  Roger Kenton Took,et al.  Surface interaction : separating direct manipulation interfaces from their applications , 1991 .

[33]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[34]  Anthony Hall,et al.  Seven myths of formal methods , 1990, IEEE Software.

[35]  Paul A. Johnson,et al.  Reusability through fine‐grain inheritance , 1992, Softw. Pract. Exp..

[36]  Bent Bruun Kristensen,et al.  Activities: Abstractions for Collective Behavior , 1996, ECOOP.

[37]  Antonio C. Siochi,et al.  The UAN: a user-oriented representation for direct manipulation interface designs , 1990, TOIS.

[38]  John Nicholls,et al.  Z notation , 1994 .

[39]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[40]  Rob Pike,et al.  The implementation of Newsqueak , 1990, Softw. Pract. Exp..

[41]  Fabio Paternò Definition of Properties of User Interfaces Using Action-Based Temporal Logic , 1993, SEKE.

[42]  E KrasnerGlenn,et al.  A cookbook for using the model-view controller user interface paradigm in Smalltalk-80 , 1988 .

[43]  Dave Raggett,et al.  HTML 4.0 Specification , 1998 .

[44]  Philippe A. Palanque,et al.  Design, specification, and verification of interactive systems , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[45]  Erik Hollnagel,et al.  The Phenotype of Erroneous Actions , 1993, Int. J. Man Mach. Stud..

[46]  Panos Markopoulos Comparing non-deterministic models of tasks and de- vices , 2000 .

[47]  Herbert A. Simon,et al.  Why a Diagram is (Sometimes) Worth Ten Thousand Words , 1987, Cogn. Sci..

[48]  Ali Mili,et al.  Reusing Software: Issues and Research Directions , 1995, IEEE Trans. Software Eng..

[49]  Satoshi Matsuoka,et al.  Analysis of inheritance anomaly in object-oriented concurrent programming languages , 1993 .

[50]  José Meseguer,et al.  A logical theory of concurrent objects and its realization in the Maude language , 1993 .

[51]  Mark Green,et al.  A survey of three dialogue models , 1986, TOGS.

[52]  W. Wayt Gibbs,et al.  Software's Chronic Crisis , 1994 .

[53]  Jiajie Zhang,et al.  A representational analysis of relational information displays , 1996, Int. J. Hum. Comput. Stud..

[54]  John Rushby,et al.  User guide for the pvs specification and verification system (beta release) , 1991 .

[55]  Anthony I. Wasserman,et al.  Rapid prototyping of interactive information systems , 1982 .

[56]  Fabio Paternò A method for formal specification and verification of interactive systems , 1995 .

[57]  Hafedh Mili,et al.  An object-oriented model based on relations , 1990, J. Syst. Softw..

[58]  Christopher Richard Roast Executing models in human computer interaction , 1993 .