=Paper=
{{Paper
|id=None
|storemode=property
|title=CASE Tools and the Human Computer Interface: Implications for Designers
|pdfUrl=https://ceur-ws.org/Vol-961/paper24.pdf
|volume=Vol-961
|dblpUrl=https://dblp.org/rec/conf/caise/Sutcliffe89
}}
==CASE Tools and the Human Computer Interface: Implications for Designers==
CASE Tools and the Human Computer Interface: Implications for designers. Alistair Sutcliffe Dept of Business Computing Systems, City University Northampton Square, London ECIV OI-lB, ( U.K. Summary Human computer interaction (HC!) is a subject which software developers can ill afford to ignore, yet there is little evidence that software engineers HCl seriously. The paper sets out to describe the software engineering and HCI issues which have to be addressed, in a comparative framework of the development life cycle. From this the necessary conceptual models produced by specification methods are defined. The requirements of CASE tool for constructing conceptual models to support HCI and SE methods are outlined and the ability of CASE environments to address HCI issues is reviewed. The concluding contention is that current CASE tools, combined with HCI training for software developers could deliver results in the short teml, although to encourage HCI expertise in software design in the longer term necessitates development of knowledge based HCI CASE tools. Keywords: Human computer interaction, software engineering, CASE-tools, methods 1. Introduction Awareness of the human computer interface as an issue in software development has increased in recent years, design of interactive software according to human factors principles is still infrequent (Gould 1987). Software developers may criticise the human computer interaction (rICI) community for not producing practical methods and tools for specification and design of interactive software. However, methods have been proposed which integrate HCI with existing software engineering practices, e.g. SSADM (Damodaran et al 1988) and JSD (Sutcliffe 1988a) and the User System Engineering method, a HCI method based on Structured Analysis techniques, does have tool support (Wasserman 1984, Wassemlan et al 1987). To deliver more usable systems, HCI authors need to integrate their findings within software engineering and likewise, CASE tool developers and software development method authors should support HCI principles and practices. This paper sets out to describe the HCI issues which should be addresed dming system development and then reviews how current CASE tools may be used to partially fullfil those requirements. As CASE tools are frequently sold as being configurable to support method ( independent or toolkit type development, it follows that these tools should be a capable of addressing a wide variety of system specification issues, including the human computer interface. 2. Framework of Hel Issues. Human computer interaction embraces many issues, somc of which relate directly to specification of interactive software, while others concern human organisation, operational procedures and workplace ergonomics. A survey of some of these issues and how they related to HCI and SE methods can be found in Sutcliffe (I988b, 1989) and more covcrage of HCI issues is given by Shneiderman (1987). HCI has produced few methods which provide good coverage of softwm-e development (Sutcliffe 1989), although there are a plethora of techniques with nan'O\ver aims, such as theoretical cognitive analysis of interaction, evaluation of the cognitive complexity of user system dialogues, and specifying the user's knowledge necessary to carry out a task (see reviews by Simon 1988, Murray 1987, Whitefield 1987, Johnson and Johnson 1988). In spite of this incoherent picture a consensus of basic requirements of HCI specification and design can be established by examining the commonalities in these different approaches. A comparative framework of software engineeling and human computer interaction is presented in Figure 1. This shows activities in the two disciplines grouped according to the scale of investigation from whole organisations, to part of a system concerning one person and then activities within systems. This classification is intended to draw out the activity phases found in methods. In software engineering the activities mirror the classic life cycle of development. Although this cycle is also present in HCr no comprehensive methods exist, instead techniques have been proposed to address specific topics. Some of these techniques are enumerated in fig 2. Since space precludes a review of these techniques the reader is referred to Sutcliffe (1989), Simon(l988) and Wilson et al(1987) for further descriptions. However, a brief summary of the similarities and differences of HCI techniques and software engineering methods, as embodied in typical examples, e.g. JSD (Jackson 1983, Sutcliffe 1988c), SSADM (Longworth and Nicholls 1987), will be given. Figure 2 illustrates a compm-ison of selected HCI and SE methods, using the softwar-e development life cycle and development issues as dimensions to show coverage by methods. Atthe scale of organisation analysis some software engineering methods espouse strategic planning and enterprise analysis, e.g. Information Engineering (Macdonald 1986). HCI methods follow a similar path in goal oriented analysis of an organisation's activity but more emphasis is placed on people, their abilities, and expectations. Representative methods are Open Systems (Eason 1989), and User Skills-Task Match (Fowler et al 1988). Both methods address the person level of activity analysis. but do not follow specification through into 1 software design. At this level of analysis the Soft Systems method group, SSM (Checkland 1981) and Ethics (Mumford 1983), lies between the SE and HCI communities and both "hard" software engineering methods and HCI methods have borrowed soft system's concepts. Software engineering methods generally do not have the concept of individual users as a unit of analysis, instead requirements analysis focusses on functionality and users' objectives. HCI methods, in contrast, pay more attention to individual users, for three principal reasons. First is matching system functionality, or tasks, to people to ensure that their work has the correct task mix for their abilities. User-task matching employs many heuristics, see for instance Bailey 1982, although more methodical guidance is given in USTM and Open Systems. The second reason is to model human mental processes for task operation to predict human errors and cognitive limitations on task perfonmmce. Typical methods in this class are GOMS and CCT. The third purpose is to obtain a model of the user's characteristics and knowledge about a system. This HCI activity is collectively termed user modelling, and embraces a diverse techniques and objectives, many of which have little relevance to systems development (see Murray 1987, Whitefield 1987 for reviews). The activities more relevant to system ( development are task modelling and analysis of user abilities and characteristics as profiles of user groups. At the scale of activity analysis SE and HCI methods show considerable similarities. SE methods frequently use a goal oriented hierarchical decomposition approach (e.g. SA/AD De Marco 1978), and HCI task analysis methods follow the same approach (Bailey 1982), although it is not always explicit. Some HCI methods add modelling levels to the hierarchical decomposition as in the Command Language Gramm/u' of Moran( 1981), while others take a knowledge based approach creating models of user knowledge about tasks and the system (TKS, Johnson et al 1988). In spite of the similarities in approach, HCI methods differ in attempting to address cognitive issues of human infonnation processing, which are ignored by SE methods. Here the endeavour is to ensure that tasks do not impose demands on users that exceed limitations of memory and mental abilities. HCI methods utilise simple metrics of counting rules and state variables within task sequences to estimate task complexity (Cognitive Complexity Theory -Kieras and Polson 1985), however, techniques are still crude and design deliverables ill defined. More psychologically valid approaches employ knowledge based systems but these are a long way from being practical design advisors (Barnard et al 1988). The follow through of HCI analysis methods to later life cycle stages and the link between analysis and design is poor (Shru'rat 1987, Knowles 1988, Sutcliffe 1989). The more comprehensive examples either produce specifications in I knowledge based formalisms (CLG Moran 1981, TKS-Johnson et a11988) making integration within SE specifications difficult, else transition network diagrams are used to model user-system dialogues but no integration with functional processing is given (Knowles 1988). Clearly, HCI techniques do not exhibit the maturity to become utilisable methods in software engineering, although there is a considerably body of utilisable knowledge and techniques. Software engineering methods can not afford to ignore HCI issues, as many system development problems can be ascribed to lack of human factors input into the software design process (Gould 1987). Much of the HCI input to design in is the form of guidelines (Smith and Mosier 1986) which need to be interpreted in the context of each application. While this knowledge can be employed effectively by software engineers, to automate this support for the development of interface software would require an intelligent HCl designer's assistant. This may realisable when the present HC! knowledge based models of interaction (Barnard et al 1988) are integrated with the next generation of intelligent development SUppOll environments (e.g. Requirements Apprentice Rich et al 1987). However, following the lessons in software engineering, automated support is a prerequisite for practice of structured methods and techniques. HCI specification produces conceptual models, as do software engineering methods, hence it is appropriate to examine how CASE tools could support the development of HCI models. 2 3. Conceptual models and CASE Tools. One of the main functions of CASE tools is to record the conceptual models created by development methods, usually in the form of diagrams or structured texts. CASE environments reflect the origins as either generic tool-sets or method linked support tools. Generic toolsets provide configurable editors which can create diagrams for different methods (e.g. Eclipse-Elliston 1989), whereas method linked tools are tailored to a specific method's notation and sometimes including guidance to help analysts follow the method's recommended development steps, e.g. Speedbuilder, LBMS Automate, IEW, IEF etc. While all SE method ignore development of the human computer interface, apart from simplistic models of screens and interactive dialogues, their tools can be used for HCr purposes. First some explanation is required of the models produced by HCr within the design process. Fig 3 shows a comparison of conceptual models produced by software engineering methods and HCr. Not all SE methods produce all models as found in comparative studies of development methods (Loucopoulos et al 1987, Olle et al 1988). Likewise the complement of HCr models is not complete, and indeed some areas -interface displays- have no f0I1l1alised models at all. However, the more formalised models are amendable to computerised support, and this can be effected by the current generation of CASE tools. The following section examines how both method dependant and open CASE toolsets can support the different model classes. 4. Tool Support for HCI models 4.1 Organisation/Enterprise models Hcr organisation models are generally inf0I1l1al and therefore may not be amenable for automated support. However HCr methods attempt to link analysis of organisations and users with system functionality to specify optimal matching of functionality to people and organisational units (e.g. USTM - Fowler et al 1988). This activity requires list handlers and grid/matrix tools to cross reference variables. Few such tools are provided by either method specific or open CASE environments even though developing such tools is not complex. A further justification for grid/matrix type tools can be found in Soft Systems methodologies which undenake similar cross referencing/trade off type analyses. List handler tools are also required to support user models. While a bewildering number of user models have been propounded in HCI, probably the most relevant to software designers are simple list/grid based models characterising user abilities, knowledge of the system, and expected frequency of usage. Other tools may be required for this level of analysis to support workload planning. For instance job activity analysis, as proposed by Damodaran et al (1988) is a temporal analysis of task effort and the necessary manpower. Here generic time series analysis tools are needed, and Gnatt chart diagrammers could be made confignrable for this sort of activity. While configurable tools could be provided to support the above modelling activities, it is doubtful that such tools would be useful to software engineers without the HCr knowledge necessary to interpret results and make trade off decisions. Consequently HCr methodical guidance would have to be embedded within the CASE environment. Alternatively HCr training should be given to software developers, in which scenario, generic CASE tools could be used for documentation support. 4.2 Task/Function models Task models can be developed with the current generation of CASE diagramming tools. Data flow diagrams can describe task networks in the same way as they are used for functional specification, and a functional/task specification using LBMS's Automate is illustrated in fig 4. However, DFD task descriptions record only the functional aspects of tasks. Tools are also 3 required to support cognitive analysis. One possibility would be to use specification held in data dictionaries to give counts of state variables, data items input and processing mles associated with task actions, these could be used to estimate task complexity following Kieras and Polson's method. Simple analyses list handling tools linked into specification data dictionaries would suffice. Task functionality can be also be recorded in event models such as the Process Structure Diagram of Jackson System Development (JSD), Fig 5 depicts task specification as a Process stTIlcture diagram, created by the PDF tool, which fonned part of an design study integrating HCI specification within JSD (Sutcliffe 1988a), One appeal of the JSD event specification is that it provides an easy o'ansfolmation path from task specification to dialogue and process design; an important advantage if the full potential of CASE tools is to be realised by automatically generating interactive software codc from specifications, This consideration leads to detailed HCI design models. 4.3 Process/Dialogue design models. ( HCI methods have adopted two principal approaches to dialogues specification: adaptations of state transition diagrams (e.g. GTNs-Kieras and Polson 1985) and command granunars, a well known example being the Command Language Grammar of Moran (1981). Some Software Engineering methods do pay cursolY attention to dialogue design in terms of high level dialogue maps (see LBMS-SDM version 3), although their respective CASE tools do not currently SUPP0I1 this specification activity. Several SE methods use state transition models to specify event dependencies in processing (e.g. SA/SD-Ward and Mellor 1986; IE -Macdonald 1986) and these method vendors do supply appropriate CASE tools. Unfortunately these tools assume fairly simple event models and have cumbersome notations unsuitable for complex models with a large number of states and o'ansitions. To be o'actable, interactive dialogues have to be specified in levelled hierarchies, also notations should be able to express concurrency, as in two dialogues in separate windows. Current CASE tools, either method specific or open do not provide adequate tools for dialogue specification, though to be fair most of HCr derived dialogue diagrammers do not support concurrency. Dialogue specification diagrammers based on state transition fomlalisms, are frequently implemented in the nearest HCr equivalent of CASE tools, User Interface Management Systems (UIMS), These software environments aim to specify and in some cases automatically l generate interactive software, which then communicates with the application software via parameters (Cockton 1987), Regrettably creators ofUTMS have ignored mainstream software engineering methods and propound the philosophy that user interface and applications software can, and should, be developed sepmately. This approach has many theoretical difficulties and to date UIMS have had an even worse o'ack record for real-life application than CASE tools, One attempt to synthesise dialogue modelling with standard SE methods and tools which has met with some success is the User System Engineering method of Wasserman (1984). This I combines data flow diagramming techniques of "top down" SA/SD (after De Marco 1978) with state transition modelling of interactive dialogues in an "outside in" specification, Although the method does not detail how these two approaches are reconciled, it does have extensive tool support and automatic code generation from diagrarn specifications (Wassemlan et aI 1987). CASE tool developers could profitably import state transition notation from HCI for the purpose of dialogue specification. Models of screen layout and presentation design, however, are too poorly formed even within HCI to merit tool support in their current state of development. 4 S. Conclusions To be truly effective CASE tools may require methodical guidance to be built in, although this proposition is still a matter of active debate within the software engineering community. Advanced CASE tools encapsulate method and domain knowledge to provide intelligent assistance for the analyst (e.g. Asprs Peitri et al 1987, Analyst Apprentice, Rich et al 1987). Ultimately HCr knowledge should be added to intelligent design environments to guide analyst in Her design procedures and assist with more specialised cognitive aspects of interface design. While this will entail a sophisticated expert designers assistant based on theoretically sound psychological models of human computer interaction, as demonstrated in prototype form by Barnard et al 1988, more modest systems could be developed in the short term to codify HCr guidelines and design expertise. Although it is acknowledged that human computer intelface issues are important, little attention is paid to this aspect of design by software developers. The HCr community are primarily responsible for their own failure by inventing a plethora of fragmented techniques, and not integrating human factors principle and practices wilh those of software engineering. The HUF1T project is building support tools for task analysis based on HClmethods (Talyor 1988, Zeigler 1988), although repeating the mistake of providing stand alone tools rather than integrating HCr specification with standard software engineering specification methods. rndeed the only notable exception to this rule is the USE method of Wasselman (1984) and even this has enjoyed limited success and can be criticised as addressing a minimum of HCr issues. More recently HCr authors have been turning their attention to integrated HCI-SE methods (Damodaran et a11988, Sutcliffe 1988a). Experience in software engineering has taught that tool support is essential for method acceptance. The investigation reported in this paper demonstrates that it is possible to use current CASE tools for a considerable degree of HCr specification; so with successful HC1 method education, HCr design could be practiced by software engineers with current technology. CASE tools, in particular the vendors of open tool sets, should be more aware of the requirements for support tools, not only from HC1, but also from soft systems methods. Clearly there is a need for simple tools such as list handlers and grid/matrix analysers to cover analysis early in the life cycle and for organisational issues. While simple list handlers are provided by some method dependant CASE tools (e.g. Speedbuilder), these are invariably tied into the method's procedure. To be successful the next generation of open toolsets will have to be flexible enough to allow configuration not only of specification recording tools but also knowledge bases holding procedural "how to do it" knowledge, design heuristics and mles. These requirements will be necessary to satisfy the demands of HC1 and non functional aspects of system development. The advice to method authors, and inter alia, method linked toolsets, is that integration of HCr specification is a issue which can not be ignored. Tool support, particularly of dialogue design needs to be provided, before methods can claim to cover all the major issues of systems development. Acknowledgements and Trade marks Speedbuilder is a trademark of Michael Jackson Systems Ltd, London. PDF is copyright of the United Kingdom Atomic Energy Authority. JEF (rnfoffilation engineering facility) is a u'ade mark of James Martin Associates. JEW (Infonnation Engineering Workbench) is a trade mark of Arthur Young Ltd. Automate is a trade mark of LBMS, Learmonth and Burchett Management Systems. 5 References Bailey R.W., (1982); Human performance engineering: A guide to systems designers. Prentice Hall, N.J. Bamard P., Wilson, M. and Maclean A.; (1988); Approximate modelling of cognitive activity with an expert system: A theory-based strategy for developing an interactive design tool. The Computer Journal, Vol 31 (5), pp 445-456 Card, S.K., Moran T.P. and Newell A.; (1983); The Psychology of human computer interaction, Lawrence Erlbaum Associates, Hillsdale, New Jersey. Checkland, P.; (1981); Systems thinking, systems practice J. Wiley. ( Cockton G.; (1987); A new model for separable interactive systems.In Interact-87; Eds Bullinger H-J and Shackel B, pp 1033-1037, North Holland. De Marco 'I., (1978); Structured analysis and system specification. Yourdon press, N.Y. ( Damodaran L., Ip, K and Beck, M.; (1988); Integrating human factors principles into structured design methodology: A case study in the U.K. civil service. In Information technology for organisational systems; Eds Bullinger H.J. et al,pp 235-241; Elsevier. Eason K.D.; (1989); Information technology and organisational change., Taylor and Francis, London. Elliston A.; (1988); Eclipse version 2, functional specification; Software Sciences, Handforth, Cheshire, U.K. Fowler, C, Kirby, M, Macauley, L. and HUll A.; (1988); User skills and task match (USTM): A human factors based methodology for determining product requirements. In Proceedings of the 4th Alvey Conference, Swansea, Wales. Gould J.D.; (1987); How to design usable systems; eds Bullinger H-J and Shackel B.; Proceedings Interact-87; North Holland. Jackson M.A.; (1983); System Development, Prentice Hall, London. Johnson P. and Johnson H.; (1988); Practical and theoretical aspects of human computer interaction. In The World yearbook of fifth generation computing research; Ed Aleksander I.; Kogan Paul, London. Johnson P, Johnson H., Waddington R. and Shouls A.; (1988); Task related knowledge stmclUres: Analysis, modelling and application. In People and Computers IV (HCI-88); Eds Jones D.M. and Winder R.,pp 35-62, Cambridge Univ Press. Kieras D. and Polson P.G.; (1985); An approach to the fonnal analysis of user complexity. Int. J. Man Machine Studies; Vol 22; pp 365-394. Knowles c.; (1988); Can cognitive complexity theory (CCT) produce an adequate measure of system usability? In People and Computers IV (HCI-88); Eds Jones D.M. and Winder R.; pp 291-308; Cambridge Univ Press. 6 Longworth G. and Nicholls, D.; (1987); The SSADM manual, NCC Publications. Loucopoulos P., Black, W.I., Sutcliffe, A.G. and Layzell P.; (1987); Towards a unified view of system development methods. Int J. of Information Management, Vol 7(4) MacDonald I. G.; (1986); Infonnation Engineering - An Improved, Automatable Methodology for the Design of Data Sharing Systems. In Proc IFIP WG 8.1 Working Conference on Comparative Review of Information Systems Design Methodologies: Improving the practice; Eds Olle T.W., Sol, H.G. and Verrijn StUaJ1, A.A.; North Holland. Moran T.P.; (1981); The Command Language GramnlaJ': a representation for the user interface of interactive systems. Int. 1. Man Machine Studies; Vol 15; pp 3-50. Mumford, E.; (1983); Designing paJ1icipatively. Manchester Business School Publications. MUlTay D.M.; (1987); Embedded user models. In Interact-87; Eds Bullinger H-J and Shackel B, pp 229-236 North Holland. Olle T.W., Sol, H.G. and Verrijn Stuart, A.A.; Eds; (1986); ( CRIS-3. IFIP WG 8.1 Working Confereuce on Comparative Review of Infonnation Systems Design Methodologies: Improving the practice. North Holland. Pielri, F, Puncello, P.P., Torrigani, P, Casale, G., Innocenti, M.D., Ferrari, G., Pacini, G, and TW'ini, F.; (1987). ASPIS: A knowledge based environment for software development. In Esprit-87: Achievements and Impact, pp 375-391. Rich C., Waters R.C., and Reubenstein RB.; (1987); Towards a requirements apprentice. In Proceedings 4th Int. Conf. on Software Specification and Design; Monterey, Califomia. Sharrat B.; (1987); Top down interactive system design: some lessons learnt from using command language grammar. In Interact-87; Eds Bullinger H-J and Shackel B, pp 395-402, North Holland. Shneidennan B. (1987); Designing the user interface. Addison Wesley, Reading. Simon T.; (1988); Analysing the scope of cognitive models in human computer interaction: A trade off approach. In People and Computers IV (HCI-88); Eds Jones D.M. and Winder R.,pp 79-96, Cambridge Univ Press. Smith S. and Mosier J.N.; (1986); Design guidelines for user-system interface software. Miu'e Corp, Bedford, MA. Sutcliffe A.G.; (l988a); Some experiences in integrating specification of human computer interaction within a structured system development method. In People and Computers IV (HCI-88); Eds Jones D.M. and Winder R.; pp 145-160, Cambridge Univ Press. Sutcliffe A.G.; (l988b); Human computer intelface design. Macmillan, London. Sutcliffe A.G.; (1988c); Jackson System Development. Prentice Hall, London. 7 Sutcliffe A.G.; (1989); Task analysis, Systems analysis and design: Symbiosis or synthesis? Interacting with Computers, Vol I pp Taylor B.C.; (1988); Tools for Human factors in IT product design. Summary paper Esprit Project 385 HUFIT. Ward P.T. and Mellor S.J. (1986); Structured design for real time systems. Yourdon Press, N.J. Wasserman A.I., Pircher, P.A., Shewmake D.T. and Kersten, M.L. (1987); Developing interactive infonnation system with the User Software Engineering methodology. In Readings in Human Computer Interaction: A multidisciplinary approach; Eds Baecker R.M. and Buxton W.A.S; Morgan Kaufman. Whitefield A; (1987); Models in human computer interaction: a classification with special ( reference to their uses in design. In Interact-87; Eds Bullinger H-J and Shackel B, pp 57-64 North Holland. Wilson M.D., Barnard, P.J., and Maclean, A.; (1986); Task analysis in human computer ( interaction; Bursley Human Factors Laboratory Report HF 122, ffiM (UK) Ltd. Zeigler J.; (1988); Tools for the design of integrated Interfaces. Summary paper, Esprit Project 385 HUFIT. ( 8 Fig 1 Development Issues in Software Engineering and Human Computer Interaction Unit of Software Human-Computer Analysis Engineering Interaction Organisation Strategic Human Activity/ /whole system Planning organisation analysis Individual Requirements Task/job/work analysis person/job/ analysis User modelling sub system Conceptual modelling Activity Functional Task analysis sub-system analysis User modelling Data analysis Procedure Process/data Dialogue/display /Process structure specification specification Classification of issues according to analysis activity is correlated to an extent with the development life cycle, thus organisation analysis occurs in early phases while processes are subject of later analysis/design stages. The data related software engineering activities (Data models, etc) have been omitted as there is no valid comparision in the HCI field. Fig 2. Method analysis by coverage of development life cycle and systems design issues Requirements dofinition Analysis Specification logical Design Physical design USTM Open Systems Ethics ( Solt Systems SSADM JSD GOMS TKS CLG CCT ( Organisation Users Function/Process Objects/data Dialogue Presentation ,, ~ , ,' Cogn~ivo anatyis 101 Social/organisallonal analysis doslgn lor doslgn The life cycle categories are requirements definition, early analysis to decide the scope of investigation and appropriate users; descriptive analysis of the current system and its users; specilication of what the system should do in terms of processes and organisation; design of how the system and its users cary out tasks in logical terms; and finally physical design taking in environmental constraints, budget, hardware, etc. The final stages of implementation, testing and maintenance have been omiltted. Key to methods: USTM· User Skills Task Match (Fowler et aI19SS); Open Systems (Eason 19S9); Ethics (Mumford 19S3); Soft Systems (Checkland 19S1); SSADM . Structured Systems Analysis and Design Method (Longworth and Nicholls 19S7); JSD . Jackson System Development (Jackson 19S3); GOMS· Goals, Operators, Methods, Selection rules (Card et al 19S3); TKS· Task Knowiedge Structures (Johnson et al 19S5); CLG· Command Language Grammar (Moran 19S1); CCT· Cognitive Complexity Theory (Kieras and Polson 19S5). Fig3 Conceptual models produced by Software Engineering and Human Computer Interaction and CASE support tools. (a) Conceptual models in approximate life cycle order. Life cycle phase Software Human-Computer phase Engineering Interaction Early analysis Enterprise Organisation/User strategic planning model model Analysis Functional model Task model Data/object model User profile model Event/object model Logical Process specification Dialogue specification design Data SlIllcture spec Screen dcsigns ( (b) Support tools for conceptual models List handlers; Matrix-grid analysers Enterprise, Organisation/User model; User profile model User-fullctioll matrix.... fi/llctioll lists Diagram editors Functional model, Data/object model, Event/object model, Task model Dataflow .Elltity relatiollship Elltity life history Task-illfo flow .. Dialogue trallsitiolllletwork Structured text editors Process specification, Dialogue specification, Data SlI11cture spec Struclllred Ellglish. .. Dialogue grammars.... Data dictiollary Conceptual models are grouped according to support tool types. Examples of modelling notations are listed in italic. :/ \~ Fig 4. Initial task specification recorded as a Data Flow diagram using LBMS-Automate. 't II I I I, r , Ic...,yr..w-IO I I R.>doro 11 LOb"S I l OV[1 8oc.l..·~::.oc.:" f!L_. i~: j1F,,," " Co I Ie:c:b::d-F i n~ Fig 5. Specification of a computer task support process for loan authorisation recorded by the PDF tool. This specification could be elaborated to directly generate interactive code, although the sophistication of screen handling and dialogue 1·0 is dependant on the implementation environment. Check· Book IBH-PC POI 12,OA 4-JAH-80 01:58:56 Ch,ck - Book ~OOk-ck Body I L,1 [J =:J_~ POSIt Ad.it? GoodID BadID I I I 1nterID Check cod€ r~\I~;:, Code o f;TTor [J Sted 0 error '~t L -__ J L '----__ ---.J ___ I Bad cod/ r J Not ' ~~ib l