TY - JOUR AU - Andreev, Rumen, Dimov AB - Abstract This paper considers user interface design world (UIDW) as a system of communication lines. It necessitates the adoption of a UI design method, centered on language application. For that reason, this approach to UI design is called linguistic approach. The basic characteristics of communication require the presence of a balanced model of UIDW. The integration approach applied to the proposed balanced model submits for analyzing the following issues: the possibilities of object-oriented (OO) approach for providing a homogeneous platform for UI designing; the potential of OO approach for language implementation. The use of formal description provides a basis for the consideration of these issues. As a result of these considerations, the following conclusions are drawn. A technology can be used for language implementation if it ensures all abstract forms reflected to the language structure: concept – this is the essence of the word; forms based on individual abstraction reflect static relations of one description; forms based on group abstraction provide context description. At present, the OO technology covers a part of the language structure. It ensures the forms of concept and the forms based on individual abstraction. The OO paradigm can be regarded as a foundation of a linguistic approach to UI design when new OO forms are developed. They have to cover the forms of group abstraction. 1 Introduction User interface design world (UIDW) is a framework within which we can view the UI design activities (Harmelen et al., 1997). Since the designing is carried out in abstract space, two issues are of interest: the structure of UIDW; the various descriptions of an application in the UIDW and their abstract forms. The structure of UIDW is determined by the applied approach to software design. There are two fundamental approaches used in software engineering: user centered and technology oriented. Usually, the user-centered approach is considered as a new phase of the process of computer product development (Winograd, 1995). It is based on the concept that computer systems grew out of the application cognition. The concepts of technology-oriented approach are evaluated primarily in the context of cost-effectiveness. As a result, the software engineering techniques are geared to the principle of ‘portability’. This includes aspects, such as device, platform and application independence of software design, reusability of software modules and standardization. The implementation of the principle of portability is based on the methods of abstraction. They are fundamental for the object-oriented (OO) approach. These are needed to bridge between the two kinds of designer work models. In this paper, it is proposed to consider the two design approaches as complementary. None of them proceeds to the center stage of the design process. The various participants in the design process make use of more than one description of application system. The basic question in the determination of UI design method is how the designer can effectively use information in one description space to inform the design process in another description space. This requirement raises the problem of traceability. The solution to this problem determines among other things the UI design approach. This paper proposes a new viewpoint on the solution to the problem of traceability. The information exchange between the different description spaces of UIDW is considered as intercomponent communication in the system of UI design. As a result, the solution to the problem of traceability is centered on language application in the communications, i.e. a linguistic approach to UI design. The design of a linguistic approach depends on some important characteristics of the communication: without commonality, a pair of components would not be able to exchange information; communication is contextual: the existence of specialized, shared language provides context in which specialized exchange of information can occur; communication is purposive: motivational bases of communication are important; communication is bidirectional; close intercomponent communication (relationship) requires a balance. The above-mentioned communication characteristics require the use of a balanced and completed model of UI design system, which can provide homogeneity for the system. In this way, a specialized language can be developed, that is shared by the communications in the whole system. The OO technology can be a base for modeling the language implementation. The paper considers the possibilities of OO paradigm in this aspect in the following sections. In this manner, the extent, to which UI implementation facilities affect the UI design model, is presented. 2 User interface design world The key issue of UIDW development is to address it as an aggregation of interacting elements, i.e. system. Each system is examined from two vantage points: separation and integration. Separation is a concept to handle the complexity of a heterogeneous world like UIDW. As a result, an underlying structure is determined. It supports the consistency of the world. Integration is a concept to ensure the system coherence, i.e. the system continuity. It raises the problem of communication and interrelations between the system components. The argument for the integrated treatment of different system components is the realization of system control by means of techniques, which support an efficient intercomponent communication. The analysis of the design task and generalization across designer's activities determine the separation of UIDW into components. The generalization process is applied to facilitate the identification of several activities that share a common underlying logic and goal. In this way, ‘generic’ components, which can be called designer's workspaces as well, are defined. The fundamental designer goals and the type of design problems characterize the components. The designer has the following fundamental goals during the UI design process. Provide a user's cognitive model of application domain and user's characteristics (User component). Analyze and present the user's cognitive model in a form suitable for computer usage: the designer should ensure an appropriate design accommodation of application domain (Application (Task) Analysis component). Create a software system solution model: the solution model has two parts, a UI model and a system model. They are described separately and interdependently. This is a result of the fact that the basic function of UI is to provide the user system functionality. Here, we can distinguish two components: User Interface Design (UID) and Application System Design (ASD). Transform abstract information in its physical equivalent: this is the implementation of solution model in conformity with the available computer platform and software technologies (Implementation component). The focus of different UI design approaches is on different components of UIDW. Technology-oriented approach is an attempt to shift the focus from the task analysis to the design and implementation of UI ‘from scratch’. Various studies concerning this approach concentrated mainly on the User Interface Design and Implementation components and their relationships (Fig. 1). As a result, various development platforms have been created, wherein the initial application specification guides the creation of the first approximation UI description. From then on, the goal is to iterate between UI specification and implementation, and refine each. A prototype of UI is created at a very early stage of the development process. This approach provides high-level tools for automating UI implementation. For lack of separation of UI design and development, there is no automated UI design. Fig. 1 Open in new tabDownload slide UI development platform. Fig. 1 Open in new tabDownload slide UI development platform. The UI development platforms exist in two forms: UI toolkit and user interface management system (UIMS). The UI toolkits provide a library of common UI elements called widgets. The tools' main contribution is providing abstraction above the level of hardware, operating systems, windowing system, i.e. above the implementation process. This UI development platform realizes the style ‘look and feel’, thus enabling a limited end-user adaptation. More UI toolkits use an object-based or OO approach. They have several well-known deficiencies: focus on presentation rather than on more important semantic design; weak integration of toolkit objects with semantic objects. Some of UI toolkits are platform independent. They provide an application programmer interface to produce UI code for multiple platforms (Guthrie, 1992). In this case, the problem is how to handle the varying properties of target platforms. Another toolkit provides different abstract levels on which UIs may be constructed and modified by UI designers and even end users (Herczeg, 1994). The link User–Implementation of Fig. 1 presents end-user modification of UI. This is a form of user-adapted interaction design. The UIMS denotes tools that support the UI development separately from the underlying applications. The motivation is to improve adaptability, portability and separation of concerns of interactive software (Edmonds, 1992). Many examples of UIMS are based on the OO concepts. The most famous of them realize the following paradigms: Model–View–Controller (Goldberg, 1990; Krasner and Pope, 1988); Presentation–Abstraction–Control (PAC) (Coutaz, 1987); PAC-Amadeus (Coutaz et al., 1995), where the PAC model is implemented in an adaptation of Seeheim model of UI design (Olsen, 1992). UIMSs implement an interpretation approach to UI design. The organization of the interactive system is presented in advance. The UI design is limited by a proposed OO model. Some of the UI development platforms are integrated with the User component of UIDW (Fig. 1). The goal is the implementation of supporting user-adapted interactive design. It is carried out at the lexical level of UI design (Akoumanakis and Stephanidis, 1997; Shider-Hushmids, 1994; Gellersen, 1995). In this way, the relationships between the User, User Interface Design and Implementation components are put for analyzation. The analysis is completed when the communication between these components is considered as bidirectional. The user-centric design approach is known as model-based approach, task-based approach, top-down approach. It uses the initial problem statement to guide subsequent iterations of solution and problem specification refinement. In sharp contrast to the UI development platforms, the focus is on Application Analysis component. Sometimes, this approach is implemented in UIDW consisting of the following components: User, Application Analysis, User Interface Design and Application System Design (Fig. 2) (Lim, 1996; Stary et al., 1997). But there are UI design systems including all components of UIDW, i.e. listed components plus Implementation (Artim, 1997; Beck et al., 1995). Fig. 2 Open in new tabDownload slide Model-based UI design. Fig. 2 Open in new tabDownload slide Model-based UI design. The model-based UI design approaches use an explicit, largely declarative representation, capturing application semantics and other knowledge needed to specify the appearance and behavior of an interactive system. It is user-adapted at the semantic level. As in user-centric design approach, the Application Analysis is the most important and necessary component of UIDW, the main problems concern the ways of task analysis and UI generation from application specification. The application specification is a result of the way of analyzing. The prevailing opinion is that only partial automation can be provided in the generation of dialogue model from the task model (Kovacevic, 1998; Bomsdorf and Szwillus, 1998). The research in this area is now more focused onto an ‘assistance-oriented’ way of UI design. It can be realized by using OO description. The latter captures the structure of application analyzing and allows attachment of object-based semantics to the application description. This description provides a powerful way of UI specification for a later implementation phase (Harmelen et al., 1997). There are propositions of OO language for dialogue specification from static description of task model (Bomsdorf and Szwillus, 1999). The structures of existing UI design systems display their shortcomings. The systems are incomplete. The incompleteness has two forms: the system does not involve all components of UIDW; the second form concerns systems, which do not support all relationships between the components. As a result, the solutions for UI design are partial. The UI design systems are not in balance. When a system is incomplete, it cannot be in balance. A completed system is not in balance if the relations between the components are not bidirectional. A relation is bidirectional if the two components participate in their communication. The priorities of a balanced system over an unbalanced one are the following: The balanced links between the system components ensure stability in the intercomponent relations; The balanced system fulfills the pursuit of system continuity, i.e. homogeneity; The balanced system serves as a basis of creating a shared language for carrying out all intercomponent communications. The existing UI design systems raise the problem of traceability: how we can effectively use collected information in a component of UIDW to inform the design process in another component. This problem is relevant to the one of automatic generation of user interface. It can be solved by formulating an overall purpose in the investigation of UIDW (Van Welie et al., 1999). The viewpoint of the present investigation is that the UIDW is not an environment for UI implementation. It is an environment for gathering all necessary information for designing a useful user interface. The dialogue has to be described on the basis of this information. This purpose can be achieved if we research the UIDW as a system first of all. This system has to be homogeneous. Thus, the intercomponent communications can be balanced. They can be realized with the help of language as a solution to the problem of traceability. The language has to be designed with reference to concrete implementation. In this way, the focus is shifted to the structure of a design world. The main requirements are The system has to be integrated, i.e. completed and in balance. In this case, the theoretical study of UI design is directed at the relationships between the components. The analysis of UIDW has as a starting point the structural model of the system. In this way, the problem of traceability can be solved. Shifting the designer's focus onto the design aspects of a design/development environment. The advantages are the following: 2.1. the model of design world has to include the basic set of activities producing a UI description; 2.2. this is an opportunity to create a completed UI description taking into consideration all factors of UIDW; 2.3. supporting automate generation of UI descriptions; 2.4. the development process based on the build–test–break–rebuild cycle could be included at any point of the design process . Creating a technology-independent description of UIDW: The designer's activities are not considered in the context of some software technology. Our attention focuses only on the problems of the design process. A model of UIDW in conformity with the above requirements is shown in Fig. 3. It has a regular and balanced form. The UI design component holds fundamental position in this structure of UI design system. Hence, it can ensure the control over all system communications. This important position could be realized if we design a language on the basis of these component elements. This language would reflect all relations in the system. The links between the User component and Application Analysis, User Interface Design or Implementation components correspondingly provide the cognitive model of application domain, user's characteristics and end-user modification of UI for UI design process. Fig. 3 Open in new tabDownload slide Balanced structure of UI design system. Fig. 3 Open in new tabDownload slide Balanced structure of UI design system. The task to realize a homogeneous UI design system on the basis of OO technology raises the following issues: The nature of close binding between the application analysis and object extraction and definition; The possibilities of OO approach for providing a homogeneous platform for UI designing; The potential of OO approach for language implementation. In the following sections, it is argued that the close binding between the UI design and OO approach is due to the analogy between human cognition and OO approach. The search of this analogy is based on the following observations: the task model is a result of human cognition since the computer systems grew as a result of cognition; the claims of OO approach are cognitive in nature. At the same time, the OO approach can serve as an instrument for the formalization of the information. So, it can play a fundamental role in language implementation. In the consideration of the above issues, formal notations are used as the most conceptual frameworks for designing computer systems are formal. The formal descriptions provide the following advantages: In the abstract space, the objects with similar logical form carry out analogous tasks. If we want to prove the analogy between two things, it is necessary to prove that they have the same logical forms, i.e. they express the same relations. The formal description permits to carry out transformations in the abstract space. They can facilitate the considerations and enable the use of equivalent expressions. The formal descriptions state universal abstract forms. The latter have communication characteristics. The abstract form gives possibilities for describing different approaches used in the solution of some problem. Under the formal description, the world has sharp edges. 3 Human cognition A starting point in considering the cognition process is Schopenhauer's (1911–1912) and Russel's (1984) understanding of the matter. They present a systematized analysis of this problem. Everything existing, the whole world is only an object (O) for cognition with respect to the subject (S). Therefore, the cognition is a relation, which is determined by two factors — object and subject — Rc(O,S). The one that cognates everything is the subject. It is entirely and indivisibly present in every human being. Each one of these two factors has validity and existence only through the other and for the other. The human cognition process is realized if there are simultaneously an object and a subject, i.e. if O=1 and S=1, Rc=1. Since this process is determined only by object and subject, it is a symmetrical process. Hence, Rc=1, when O=0 and S=0. The object is the only necessary condition for a cognition process, i.e. Rc=0, when O=1 and S=0. The subject is a sufficient condition, i.e. Rc=1 when O=0 and S=1. The subject implements the relationship “cognition”. As a result of the above considerations, the truth table of an implication is obtained: The cognition process does not ensure equivalence between an object and the notions of subject concerning this object. But, it is a condition for the searching of equivalence. This is a result of the cognition process symmetry. It is possible to carry out two processes, The cognition is a two-phase process. It is a result of human being's properties. At first, the subject participates in the cognition process by means of its perceptive faculties (Sp). The relationship between object and human perception Rn (O, Sp) provides the first form of human cognition – intuitive notion (sense notion). This phase of cognition process can be expressed by Apart from the perceptive faculty, another cognitive ability is characteristic for humans – a totally different consciousness called reflection (Sr). It is reflected matter, derivative of the intuitive cognition, which does not, however, inherit its nature and properties. Thus from the intuitive notion, we proceed to reflection, toward abstracts of mind. They are the result of the second phase of cognition; they obtain their content from the sense cognition and correlate with it. The abstraction is only a relation, which substantiates products of the first phase of cognition process. The second phase is expressed by the relation At the rear of abstraction, there is a function, not some essence. The intuitive notion comprises the total visible world or the whole ‘sum total’ of experience together with the environment which enables it. It is based on the principle that the object's being is its action. It is not possible to think of another form of existence. The intuitive notion emerges from an object's influence exerted upon our senses (they are the immediate objects for the subject) and on other objects. Hence, cause and effect form the total essence of objects for the subject. Everything about intuitive notion could be systematized in the following way: first, object and notion are one and the same thing; the being of the contemplated objects is just their activity; to consider an object's being out of the subject's notion or to consider a real object aside and separate from its activity has no sense and is contradictory; knowledge of the contemplated object's activity exhausts the very object, i.e. the notion about the object since nothing more is left in it to be known. Every natural law, every form of its manifestation, should be in the first place directly deciphered in a sense notion before it enters in abstracto the mind, the reflective consciousness. The philosophers are unanimous about the cognitive functions of mind, whose manifestation is the ability to derive general principles, to deduce, etc. Its product of cognition can be only abstract. Every abstract product of second cognition phase, i.e. cognition through mind, is called knowledge. The latter does not expand human cognition, but only gives it another form. Thus, everything that we intuitively know could be known abstractly and in a general form. This is important since it steadies storage of the known, the possibility to transfer it. Its stable and progressive implementation in practice is determined by the fact that it has become knowledge. Using the already obtained general abstract knowledge is simpler than dealing with the empirical study of the particular. The abstractions form a specific class of notions. We could never reach the real evident cognition of their essence by mere contemplation. They could only be thought of, but not contemplated. Only activities that the human being performs through them are objects of the real experience. Although the abstractions are basically different from the intuitive notions, they still correspond to them. This is necessary since they are nothing without the sense notions. Therefore, this correlation forms abstraction's essence and being. The entire essence of abstract notion is contained in its relation with another notion, which is the basis for its cognition. The latter could also be an abstraction. However, this chain cannot continue to infinity. In the final analysis, the series of cognition bases ends with an abstraction, whose basis is in the sense cognition since the total world of reflection is based on the visible world. The supreme value of abstract cognition product is the possibility to transfer it to other people and to store it, once fixed. In this way, the products of intuitive cognition could be conveyed. However, the abstractions with their firmness and sharp outlines could not reach the precise variations of the contemplated, no matter how thin we divide them by means of more and more exact definitions. The lack of coincidence of abstractions with reality, their generality and strict definiteness not allowing to catch the thin nuances and multiple modifications of reality set traps for those, who want to fully devote themselves to abstractions. The complete cognition process includes the two phases: The relationship Rn is connected with the ‘how’ area of human cognition, i.e. the description of object activity. The other part of cognition world is the ‘what’ area, i.e. the area of Ra relations. The features of the implication permit one to simplify the considerations on the cognition process The examination of this simpler form of human cognition (O⇒Sr) shifts our focus to abstract cognition. In this case, the nature of cognition is of no interest to us. In this way, a partial analysis of cognition is carried out since S=Sr only. The description of various abstract forms is based on this form of human cognition. 3.1 Human cognition and computer science The main task of computer application is to build ‘computer reality’ as real world reflection. With the aid of computer, one should get sense notion for the objects he is dealing with. The goal of computer science is to develop methods for simulation of real objects with the help of computer. As a result, simulating objects (Osim) have to be created. The simulating object has to be equivalent to real object (O), i.e. O⇔Osim. As a result of the identity, the logical form of equivalence can be substituted by the following logical form: In the latter form, the relation O⇒Osim presents the development process of object simulation in computer. The relationship Osim⇒O is an evaluation process of object simulation. The equivalence is achieved by iteration between these two processes. The process of Osim development O⇒Osim can be implemented in a system consisting of real object (O), subject (S) and simulating object (Osim). The implementation system provides relations, which are reflected by O⇒Osim. The following identity presents this transformation The cognition process (O⇒S) is an important part of the realization of simulating objects, i.e. computer system development. It ensures the knowledge of application domain. The latter is the basis for realization of simulating objects. The process of software system design and implementation is presented by the relationship S⇒Osim. It determines the structure of design activities in computer system design. This process is a posteriori. Its basis is the available general knowledge of the application. The way followed here is from the general towards the particular, step by step, through intermediate concepts and subdivisions. The search for the necessary Osim is usually carried out by building hypothesis. The veracity of the hypothesis is confirmed by multiple tests. The leading role of cognition in computer system development explains why the computer science is under the impact of human cognition principles. 3.2 Abstract forms The cognition is a process of abstraction. The analysis of this process identifies various forms (kinds) of abstraction, which are used in the structuring of human knowledge. The abstract cognition exists as concrete abstraction and general abstraction. Their connection is described by the relation between the individual abstraction and the multitude abstraction. The individual abstraction is presented by the cognition relation O⇒S, where S=Sr. The forms of general abstraction are obtained by means of individual abstraction and different logical multitude structures. The forms of general abstraction have role in simplifying the relation between an abstraction and its implementation. Two kinds of generalization are distinguished: particular and universal. The particular abstraction is a structural generalization, which is worked out by single subject (human being). The universal abstraction is based on concepts, common for all people or some group of people, i.e. common for some multitude of subjects. This is abstraction by formalism. The universal abstractions have communicative characteristics. The key mechanism in understanding the relation between individual abstraction and abstraction by formalism is concept (class) inference. The particular abstraction has two forms. The first of them is called specialization. It can be presented in the following way: Sometimes, this form is known as inheritance. The other form of particular abstraction is aggregation: The universal abstractions are the result of human cognition common to a multitude of subjects. The key form of universal abstraction is concept: where The concept is derived from individual abstractions of one and the same object. The concept is a form of class, where the class of objects can represent similar objects or various manifestations of one and the same object. This form of abstraction ensures parametric polymorphism. From an implementation point of view, the class determines an equivalence form for realization of abstractions belonging to this class. The concept is the foundation for construction of other universal abstractions. The following kind of universal abstraction can be named universal specialization. It can be presented by This is an inheritance structure grounding on classes. Another widespread form of universal abstraction is universal aggregation: This kind of abstraction describes a set of classes, i.e. a system of self-substituted parts. Hence, the universal aggregation is a model of system. Two important characteristics of abstraction stand out from the above considerations: Abstraction is a base for formalizing; Abstraction is a context framing of equivalent associations. 4 OO paradigm as an analog of abstract cognition There are two techniques for software development. The first one is known as procedure-oriented paradigm, and the second, OO paradigm. They are often compared (Bailin, 1989; Eckert and Golder, 1994; Henderson-Sellers and Edwards, 1990). In some of the cases, the two paradigms are contrasted. Sometimes, the OO technique is considered as the next logical step in a progression that has led from a purely procedural paradigm. But, it is correct to think of them as mutually complementary. They represent the two basic phases of the cognitive process, to which the computer science has twofold relationship. On the one hand, the development of computer science is a process of computer systems cognition. On the other hand, the software systems aim at embedding products of human cognition in computer. The procedure-oriented technique is implemented in the so-called functional world (Fig. 4). Its basic element used for the description of the system, program, is activity. On the other hand, the activity is the foundation in building the intuitive notion of objects’ being. The procedural paradigm utilises functional approach to specify the tasks to be completed in order to solve a problem. Structured analysis is the method most widely used for understanding the problem domain that is computerized in the functional world. This analysis is based on an ‘input–process–output’ plan that summarizes the basic functional needs of the problem and that then serves to organize subsequent decomposition activities. Functional decomposition techniques used to achieve this are based on the problem interpretation as an interdependent set of functions or procedures. Therefore, functional decomposition is well supported by procedural languages. Fig. 4 Open in new tabDownload slide Process of abstraction in computer science. Fig. 4 Open in new tabDownload slide Process of abstraction in computer science. The transition from the functional world to the OO one is based on developing a technique that could be called abstraction analysis. It is aimed at obtaining separate units that can exist by themselves from descriptions made in the functional world. This pursuit of abstraction is partially achieved by some instruments of the procedure languages as subroutines and definition of data types. But, this aim is regarded as achieved by introduction of OO paradigm. A generalized and exact characteristic of the OO paradigm is provided by (Rosson and Alpert, 1990). In this paradigm, the focus is on what rather than how: what objects exist, what behavior they should exhibit, what interactions between these objects comprise a model of the program system, rather than how the objects implement their behavior. This transition from the ‘how’ area to ‘what’ area is in fact a search for definiteness and a shift from the field of intuitive notion to the field of abstractions. The OO paradigm focuses on identifying and encapsulating commonality in higher level abstraction (Booch, 1991; Fenves, 1990; Korson and McGregor, 1990). Abstraction is the process of focusing on the essential characteristics of an object. The goal in designing individual software component (object) is to represent a concept of what will eventually be the executable form. The paradigm sprang from program languages, and has matured into design and analysis. Therefore, the basic attention has been directed towards the introduction of the necessary level of abstraction in program languages by means of objects. The development of object model in program languages is carried out in the following way. First, the objects to be identified should provide tighter than traditional coupling of data and functionality. The bundling of data and procedures guarantees the enforcement of abstraction barriers known as encapsulation. This is the process of hiding all the details of an object. Otherwise, the object construct supports information hiding through the separation of the object interface and the object implementation. The separation allows the object interface (i.e. specification) to be mapped to several different implementations. The interrelation between objects is a result of massage sending. As there are concrete and general abstractions, there exist concrete and general (abstract) objects (Rubin and Goldberg, 1992; Wirfs-Brock and Johnson, 1990). The concrete objects are those referring to existing objects from the real world and reflecting them in a maximum natural way. They are also called tangible objects, physical objects, primitive objects or real-world objects. These objects and their classes are usually not designed to be reusable by inheritance but as components. The abstract objects provide higher level of abstraction since they represent a result of inferences based on concrete objects and/or other abstract objects. In almost all publications, special attention is paid to structural relationships between objects as something characteristic for the world of abstractions (Gibbs et al., 1990; Losavio et al., 1994; Papazoglou and Marios, 1990; Seidewitz, 1989; Iiavari, 1995). The first group of relationships provides classification. This concept can be perceived as a form of abstractions in which a collection of objects with common properties are considered as a higher level object type, called class. This is an ‘instance of’ relationship. It coincides with abstract form3, which is the foundation of abstraction by formalism. The second group of relationships is known as specialization. The abstract object is obtained as a result of mutual overlapping of several concrete or abstract objects. The result is an object comprising the common of several objects designed to be inherited. This type of object is too fine grained. It supports the exploration of commonality between classes or individual objects. This kind of relationships corresponds to the abstract form1 and abstract form4. They are also known as ‘is-a’, ‘superclass/subclass’, ‘inheritance association’. The third kind of used relationships is called aggregation. It is defined between the higher level object (aggregate object) and the collection of its components (constituent objects). When considering the aggregate object, specific details of the constituent objects can be suppressed. In general, aggregation establishes ‘a-part-of’, ‘depends on’, ‘client of’ relationships. These relationships implement abstract form2. The relationships of the fourth type create a form of abstraction known as association. It is an aggregation of classes, which is considered to be a higher level set object. This collection is called ensemble. It provides a framework (pattern) of general objects and can interact with other objects or ensembles. Its main purpose is to hide details of a set of objects that are irrelevant outside the ensemble. The ensembles attain different forms as subsystems (Iiavari, 1995), design patterns (Schmidt, 1995) and frameworks. They represent abstract form5. Since abstract cognition=concrete abstraction+general abstraction, it is possible to present OO paradigm as OO paradigm=concrete objects+abstract objects.The OO paradigm covers forms of abstract cognition. The objects possess all abstraction features. As a result, the application domain can be analyzed by the techniques of OO paradigm. Therefore, the OO approach could be a common style for UI designing. The considerations on human cognition indicate that this is an evolutionary process. Hence, the OO paradigm could be implemented in the UI design world without special difficulties, i.e. in a natural way. 5 An application of linguistic approach to user interface design The common OO designing style cannot provide homogeneity (continuity) for the design world automatically. On the basis of problem domain knowledge, entities are identified as objects but they are not useful in UI modeling. The mapping between the problem domain objects and the interaction objects of UI domain is not straightforward. It is due to the unbalanced relation between the components Application Analysis and User Interface Design. The unbalanced relationships produce some instability during the design of human–computer dialogue. This instability is the result of using only the separation approach to the design of UIDW. The application of this approach predetermines the use of these possibilities of OO paradigm, which cover only the forms of individual abstraction. The components of the UIDW use proper individual objects in the description of application system. They provide independent system descriptions in each one of design world components. For attaining system continuity of UIDW, it is necessary to apply an integration approach to its examination in addition. The OO paradigm can ensure this continuity if it can cover the forms of group abstraction. In terms of balanced system cognition, the system objects are examined as a group of objects with balanced relationships. The goal of the subject is to catch the general prerequisite, which is a ground of system existence. This cognition lays the foundation of system control. So the abstract form of system cognition can be called a form of group abstraction as well. The basic kind of group abstraction has the following form: The abstract form6 presents the cognition of precondition for homogeneity. This form of group abstraction presenting the homogeneity can be transformed in a form of abstract cognition presenting a balanced system. This transformation is a result of the commutative feature of conjunction and the following identity The balanced system is a form of implementation of system homogeneity The universal generalization of group abstraction gives the following form of abstraction which is well known as context: Context is the common in a given situation (group of objects) for multitude of subjects, i.e. the sense of situation. An integration view of system model can be obtained by the contextual form of abstraction, if the objects are substituted by universal abstractions, i.e. O=OUA. This second-order form of group abstraction can be called integrate model: In keeping with the parallel between the OO approach and human cognition, it is clear that class of objects (abstract form3) can be apprehended as concept. By means of the forms of abstraction by formalism, the objects can be a foundation of language because the concept is the essence of word. The second fundamental linguistic element is the phrase. The words and phrases are considered on two levels. The first level is the level of necessity. This is the necessity of word existence. The other level is the level of excess. The initiation of multitude of senses in a concrete word characterizes this level. It is necessary to make reference to the distinction between sense and referent of word described by Frege (1952). The sense is the word function in the phrase. The referent is that on which the sense is expressed, i.e. what the word represents. This is an object that provokes concept appearance. The sense is building in the word, the least linguistic entity which is above the semantic threshold. The context, which is determined by a group of objects and events arising together under some conditions, specifies the sense of word. Therefore, each word (class of objects) in a language based on the OO approach has to reflect not only its referent, but also the context of whole system. The sense construction of an word depends on ‘a system of associated common fields’ (Black, 1962). A community of people with identical professional interests, which use the given language in its description activities, builds this system. This system is integrated with the literal use of words and reflects the contexts admitted by the community for a given word. In this way the sense completeness of word is built. The integration (continuity) of UIDW and control of UI design predetermines the implementation of a general language for UI description, based on the OO approach. It has to satisfy the following requirements: Be sensitive to the context of UIDW; Fulfillment of the integration principle for UI design system working, which enables the translation of information from a UI description created in a certain design stage to a description of another design stage; The language has to be conformable to the description activity of the designer. Natural implementation of created UI descriptions. The model of UI design world consists of four primary components: Designer (D), Application Analysis (AA), User (U) and Implementation (I). They are universal abstractions. The integration of design world and insuring of designer's control require the determination of UIDW contextU∧AA∧I⇒∧i=1mDi.This context can be presented in the following way: where the relationship (I⇒∧i=1mDi) defines two secondary components of UIDW. They substitute Designer in the UIDW: User Interface Design and Application System Design. It is clear from the originated relationship that the two secondary components are composed by designer's concepts with respect to the system implementation. Their referents are objects from the implementation component. The User Interface Design component consists of classes of interactive objects. In this way, the interactive objects, which represent interactive techniques of user interface, constitute the semantic kernel of UI design language, i.e. the words of language. There is a multitude of interactive techniques, which are created for various interactive tasks. If the Designer component of UIDW is substituted by the two secondary components, the context of UI design will assume the following form: This is a description of the balanced system model of UIDW presented in Fig. 3. The relationship between UID and ASD components is reflected by conjunction. It provides the semantic feedback of application system. This description of the design world suggests that the UI design process has relative independence in relation to the Application System Design. Since the focus of our research is on the UI design, the following considerations stem from the relationship U⇒(AA⇒UID). The words of UI design language are in the UID component. Their concepts are classes of interactive objects. The referents of words are provided by the implementation component. The sense construction of word ensures the integrating features of language. In UI design language it depends on UI design context (1) There are two ways for the sense construction of design language words. In the first approach, the relation between the UID component and AA component has a priority. This is the case presented by Eq. (1). This point of view is used partially by Jonson et al. (1993). His research is only on the relation (AA⇒UID). The other approach is based on the following UI context description: Here, the relation between the User and User Interface Design components has priority. The first step along this path belongs to Akoumanakis and Stephanidis (1997). Their research is on the relationship (U⇒UID) only. 6 Conclusion This paper presents the possibilities of application of a linguistic approach to UI design. Its substantiation is a result of considerations with the following starting point: the problem of traceability in UIDW can be solved if the realization of intercomponent relations is carried out on the basis of communications. The presented investigation involves the following reference points: Necessity of homogeneity in the UI design system; The homogeneity is achieved by a balanced model of the system; The balanced system requires integration approach to design of UIDW. As a result of the researcher's considerations the following conclusions are drawn: The formal notation of integrated approach is an expression of a logical form of group abstraction; The abstract form of group abstraction is an expression of context; The technology covering the forms of group abstraction can be a foundation for creating a language, which can be used for the realization of system communications; The use of linguistic approach is a condition for developing of automation system for UI design (CADUI). A technology can be used for language implementation if it ensures all abstract forms that ground the language structure: concept — this is the essence of the word; forms based on individual abstraction reflect static relations of one description; forms based on group abstraction provide context description. At present, the OO technology covers a part of the language structure. It ensures the forms of concept and the forms based on individual abstraction. The OO paradigm can be a foundation of a linguistic approach to UI design when new OO forms are developed. They have to cover the forms of group abstraction. Acknowledgements The author would like to express his thanks to the reviewers who made a number of suggestions that improved the quality of this paper. References Akoumanakis and Stephanidis, 1997 Akoumanakis D. Stephanidis C. , Supporting user-adapted interface design: the USE-IT system , Interaction with Computers 9 ( 1 ) 1997 ) 73 – 104 Google Scholar Crossref Search ADS WorldCat Artim, 1997 Artim, J.M., 1997. Integrating user interface design and object-oriented development through task analysis and use cases. In: Proceedings of Workshop at CHI’97 Object-Oriented User Interfaces, April 23–24. Bailin, 1989 Bailin S.C. , An object-oriented requirements specification method , Communications of the ACM 32 ( 1989 ) 608 – 623 Google Scholar Crossref Search ADS WorldCat Beck et al., 1995 Beck A. Jansen Chr. Weisbecker A. Ziegler J. , Integrating object-orienting analysis and graphical user interface design Taylor K.N. Coutaz J. Software Engineering and Human–Computer Interaction vol. 896 1995 Springer , Berlin 127 – 140 OpenURL Placeholder Text WorldCat Black, 1962 Black M. , Models and Metaphors 1962 Cornel University Press , Ithaca Bomsdorf and Szwillus, 1998 Bomsdorf, B., Szwillus, G., 1998. Coherent Modeling and Prototyping to Support Task-Based User Interface Design. In: Proceedings of Workshop at CHI’98: Tool Support for Task-Based User Interface Design. Bomsdorf and Szwillus, 1999 Bomsdorf, B., Szwillus, G., 1999. From task to dialogue model-based and tool supported framework. In: Proceedings of Workshop at CHI’99: Tool Support for Task-Based User Interface Design. Booch, 1991 Booch G. , Object-Oriented Design with Applications 1991 Benjamin/Cummings , Menlo Park CA Coutaz, 1987 Coutaz J. , An object-oriented model for dialogue design Bullinger J. Shaced B. Proceedings of Interacts’87 Human Computer Interaction 1987 Elsevier , Amsterdam 431 – 436 OpenURL Placeholder Text WorldCat Coutaz et al., 1995 Coutaz J. Nigay L. Salber D. , Agent-based architecture modeling for interactive systems Planque P. Benyon D. User interface Engineering 1995 Springer , Berlin 191 – 209 OpenURL Placeholder Text WorldCat Eckert and Golder, 1994 Eckert G. Golder P. , Improving object-oriented analysis , Information and Software Technology 36 ( 2 ) 1994 ) 67 – 86 Google Scholar Crossref Search ADS WorldCat Edmonds, 1992 Edmonds E. , The emergence at the separable user interface Edmonds E. The Separable User Interface 1992 Academic Press , New York 5 – 18 OpenURL Placeholder Text WorldCat Fenves, 1990 Fenves G.r.L. , Object-oriented programming for engineering software development , Engineering with. Computers 6 ( 1 ) 1990 ) 1 – 15 Google Scholar Crossref Search ADS WorldCat Frege, 1952 Frege G. , On sense and reference Philosophical Writings of Gotlob Frege 1952 Blackwell , Oxford OpenURL Placeholder Text WorldCat Gellersen, 1995 Gellersen H.-W. , Support of user interface design aspects in a framework for distributed cooperative application Taylor K.N. Coutaz J. Software Engineering and Human–Computer Interaction 1995 Springer , Berlin 196 – 209 OpenURL Placeholder Text WorldCat Gibbs et al., 1990 Gibbs S. Tsichritzis D. Casis E. , Class management for software communities , Communications of the ACM 33 ( 9 ) 1990 ) 90 – 103 Google Scholar Crossref Search ADS WorldCat Goldberg, 1990 Goldberg A. , Information models, views and controllers , Dr. Dobb's Journal July ( 1990 ) 54 – 61 OpenURL Placeholder Text WorldCat Guthrie, 1992 Guthrie W. , An overview of portable GUI software , ACM SIGCHI Bulletin 27 ( 1 ) 1992 ) 55 – 69 Google Scholar Crossref Search ADS WorldCat Harmelen et al., 1997 Van Harmelen Artim M.J. Butter K. Handerson A. Roberts D. Rosson M.B. Tarby J.C. Wilson S. , Object models in user interface design: a CHI’97 workshop summary , SIGCHI Bulletin 29 ( 1997 ) 4 OpenURL Placeholder Text WorldCat Henderson-Sellers and Edwards, 1990 Henderson-Sellers B.r. Edwards J.M. , The object-oriented systems life cycle , Communications of the ACM 33 ( 9 ) 1990 ) 142 – 159 Google Scholar Crossref Search ADS WorldCat Herczeg, 1994 Herczeg J. , A design environment for graphical user interfaces Gilmore J. Winder R.L. Detienne Fr. User-Centered Requirements for Software Engineering Environments NATO ASI Series F vol. 123 1994 Springer 213 – 223 OpenURL Placeholder Text WorldCat Iiavari, 1995 Iiavari J. , Object-orientation as structural, functional and behavioural modelling: a comparison of six methods for object-oriented analysis , Information and Software Technology 37 ( 3 ) 1995 ) 155 – 163 Google Scholar Crossref Search ADS WorldCat Jonson et al., 1993 Jonson J.A. Nardi B.A. Zarmer C.r.L. Miller J.R. , ACE: building interactive graphical applications , Communications of the ACM 36 ( 4 ) 1993 ) 41 – 53 OpenURL Placeholder Text WorldCat Korson and McGregor, 1990 Korson T. McGregor J.D. , Understanding object-oriented: a unifying paradigm , Communications of the ACM 33 ( 9 ) 1990 ) 40 – 60 Google Scholar Crossref Search ADS WorldCat Kovacevic, 1998 Kovacevic, Sr., 1998. Model-based user interfaces — ready for the real world. In: Proceedings of Workshop 3 at CHI98 Incorporating Work, Process and Task Analysis into Industrial Object-oriented Systems. Krasner and Pope, 1988 Krasner G.E. Pope S.T. , A cook book for using the model-view-controller user interface paradigm in smaltalk-80 , Journal of Object-Oriented Programming August/September ( 1988 ) 40 – 43 OpenURL Placeholder Text WorldCat Lim, 1996 Lim K.Y. , Structural task analysis: an instantiation of the MUSE method for usability engineering , Interaction with Computers 8 ( 1 ) 1996 ) 31 – 50 Google Scholar Crossref Search ADS WorldCat Losavio et al., 1994 Losavio F. Matteo A. Schleger F. , Object-oriented methodologies of Coad and Yourdan, and Booch: comparison of graphical notations , Information and Software Technology 36 ( 8 ) 1994 ) 503 – 514 Google Scholar Crossref Search ADS WorldCat Olsen, 1992 Olsen D.R. , User Interface Management Systems 1992 Morgan-Kaufman , Los Altos. CA Papazoglou and Marios, 1990 Papazoglou M.P. Marios L. , An object-oriented approach to distributed data management , The Journal of Systems and Software 11 ( 2 ) 1990 ) 95 – 109 Google Scholar Crossref Search ADS WorldCat Rosson and Alpert, 1990 Rosson M.B. Alpert Sh.R. , The cognitive consequences of object-oriented design , Human–Computer Interaction 5 ( 1990 ) 345 – 379 Google Scholar Crossref Search ADS WorldCat Rubin and Goldberg, 1992 Rubin K.S. Goldberg A. , Object behavior analysis , Communications of the ACM 35 ( 9 ) 1992 ) 48 – 62 Google Scholar Crossref Search ADS WorldCat Russel, 1984 Russel B. , Theory of Knowledge 1984 George Allen and Unwin , London Schmidt, 1995 Schmidt D.G. , Using design patterns to develop reusable object-oriented communication software , Communications of the ACM 38 ( 10 ) 1995 ) 65 – 74 Google Scholar Crossref Search ADS WorldCat Schnaider-Hufschmidt, 1994 Schnaider-Hufschmidt M. , Designing user interfaces by direct composition: prototyping appearance and behavior of user interfaces Gilmore J. Winder R.L. Detienne Fr. User-Centered Requirements for Software Engineering Environments NATO ASI Series F vol. 123 1994 Springer , Berlin 236 – 251 OpenURL Placeholder Text WorldCat Schopenhauers, 1911–1912 Schopenhauers, A., 1911–1912. Die Welt als Wille und Vorstellung. Dritte verbesserte und betrachtlich vermehrt Auflage, Munchen Bd1–3. Seidewitz, 1989 Seidewitz E. , General object-oriented software development: background and experience , The Journal of Systems and Software 9 ( 2 ) 1989 ) 95 – 108 Google Scholar Crossref Search ADS WorldCat Stary et al., 1997 Stary, C., Vadvis, N. Mochacsi, St., Nagelholz, 1997. M. Workflow-oriented prototyping of interactive systems. In: Proceedings of IEEE Conpsac’97. Van Welie et al., 1999 Van Welie, M., van der Veer, G.C., Ediens, A., 1999. The quest for matching models. In: Proceedings of Workshop at CHI’99: Tool Support for Task-Based User Interface Design. Winograd, 1995 Winograd T. , From programming environments to environments for designing , Communications of the ACM 38 ( 6 ) 1995 ) 65 – 74 Google Scholar Crossref Search ADS WorldCat Wirfs-Brock and Johnson, 1990 Wirfs-Brock R.J. Johnson R.E. , Surveying current research in object-oriented design , Communication of the ACM 33 ( 9 ) 1990 ) 104 – 124 Google Scholar Crossref Search ADS WorldCat © 2001 Elsevier Science B.V. All rights reserved. TI - A linguistic approach to user interface design JO - Interacting with Computers DO - 10.1016/S0953-5438(01)00033-9 DA - 2001-05-01 UR - https://www.deepdyve.com/lp/oxford-university-press/a-linguistic-approach-to-user-interface-design-bwkQdzupqO SP - 581 EP - 599 VL - 13 IS - 5 DP - DeepDyve ER -