Paolo Bottoni, M. Costabile, D. Fogli, S. Levialdi, P. Mussio
Designers of interactive computer-based artefacts need to specify their products with respect to both the artefact's external behaviour and to its internal one. In order to manage the complexity of the design and the implementation process, we introduce a 3D interaction modelling space that takes into account the different levels at which the computer internal activities, the messages on the screen, and the user activities are specified. Multilevel modelling helps to consistently design and implement interactive systems.
{"title":"Multilevel modelling and design of visual interactive systems","authors":"Paolo Bottoni, M. Costabile, D. Fogli, S. Levialdi, P. Mussio","doi":"10.1109/HCC.2001.995272","DOIUrl":"https://doi.org/10.1109/HCC.2001.995272","url":null,"abstract":"Designers of interactive computer-based artefacts need to specify their products with respect to both the artefact's external behaviour and to its internal one. In order to manage the complexity of the design and the implementation process, we introduce a 3D interaction modelling space that takes into account the different levels at which the computer internal activities, the messages on the screen, and the user activities are specified. Multilevel modelling helps to consistently design and implement interactive systems.","PeriodicalId":438014,"journal":{"name":"Proceedings IEEE Symposia on Human-Centric Computing Languages and Environments (Cat. No.01TH8587)","volume":"380 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126726605","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
We present a formalization of diagrammatic systems and transformations in a linear logic framework. We start by showing how to embed Constraint Multiset Grammars, a well-known method for the specification of diagram languages, into a fragment of linear logic in a provably sound and complete way. We then show how this same fragment can express several forms of visual transformations that are commonly used in reasoning with diagrams. By using formal logic as the basis of our framework we gain the significant advantage of an integrated treatment of syntactic and semantic features of diagram languages. Furthermore, since the logic fragment we are using is implemented in linear logic programming languages, the proposed framework is not only formally well-defined, but also allows the verification of the specification via direct execution.
{"title":"On a uniform logical framework for diagrammatic reasoning","authors":"Paolo Bottoni, Bernd Meyer, F. Parisi-Presicce","doi":"10.1109/HCC.2001.995240","DOIUrl":"https://doi.org/10.1109/HCC.2001.995240","url":null,"abstract":"We present a formalization of diagrammatic systems and transformations in a linear logic framework. We start by showing how to embed Constraint Multiset Grammars, a well-known method for the specification of diagram languages, into a fragment of linear logic in a provably sound and complete way. We then show how this same fragment can express several forms of visual transformations that are commonly used in reasoning with diagrams. By using formal logic as the basis of our framework we gain the significant advantage of an integrated treatment of syntactic and semantic features of diagram languages. Furthermore, since the logic fragment we are using is implemented in linear logic programming languages, the proposed framework is not only formally well-defined, but also allows the verification of the specification via direct execution.","PeriodicalId":438014,"journal":{"name":"Proceedings IEEE Symposia on Human-Centric Computing Languages and Environments (Cat. No.01TH8587)","volume":"98 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116103380","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Often the most effective diagrams are those which are very simple. However there is a strong tendency, particularly prevalent in visual formal modelling and specification languages, to take a diagrammatic language which at core is very simple, and then add many extensions and features to make it more expressive - often making it so expressive that the diagrams produced in the language are no longer readable; or at least, the diagrams are no longer obviously a more effective form of representation than a text-based one. Both the design of effective visual formal modelling and specification languages, and the effective formalisation of (the semantics of) such visual languages requires the unification of results from visual language theory, cognitive science, empirical psychology and graphic design. Integrating results from such diverse fields is a non-trivial task, which may be approached through a decomposition of the study of issues of effectiveness in diagrammatic languages according to analogous understandings of (written and spoken) natural languages.
{"title":"Aligning syntax and semantics in formalisations of visual languages","authors":"C. Gurr","doi":"10.1109/HCC.2001.995238","DOIUrl":"https://doi.org/10.1109/HCC.2001.995238","url":null,"abstract":"Often the most effective diagrams are those which are very simple. However there is a strong tendency, particularly prevalent in visual formal modelling and specification languages, to take a diagrammatic language which at core is very simple, and then add many extensions and features to make it more expressive - often making it so expressive that the diagrams produced in the language are no longer readable; or at least, the diagrams are no longer obviously a more effective form of representation than a text-based one. Both the design of effective visual formal modelling and specification languages, and the effective formalisation of (the semantics of) such visual languages requires the unification of results from visual language theory, cognitive science, empirical psychology and graphic design. Integrating results from such diverse fields is a non-trivial task, which may be approached through a decomposition of the study of issues of effectiveness in diagrammatic languages according to analogous understandings of (written and spoken) natural languages.","PeriodicalId":438014,"journal":{"name":"Proceedings IEEE Symposia on Human-Centric Computing Languages and Environments (Cat. No.01TH8587)","volume":"36 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132745345","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Message Sequence Charts (MSC) is a visual language that illustrates the scenarios of system operations, offering user-friendly, easy-to-understand behavioral descriptions. Furthermore, High-level MSC (HMSC) provides composition mechanisms to deal with the complexity of the system. However, for MSC to be used to describe complex reactive systems, there should be ways to deal with reactive behaviors that require the system to respond immediately. In this paper, we propose extensions of MSC to describe complex reactive behaviors in a systematic way. We define the formal semantics of the extended features based on process algebra, as well as the visual and textual syntax. The extensions allow structured, systematic and succinct descriptions of complex reactive behaviors.
{"title":"Extending MSC for reactive systems","authors":"Gwang Sik Yoon, Y. Kwon","doi":"10.1109/HCC.2001.995245","DOIUrl":"https://doi.org/10.1109/HCC.2001.995245","url":null,"abstract":"Message Sequence Charts (MSC) is a visual language that illustrates the scenarios of system operations, offering user-friendly, easy-to-understand behavioral descriptions. Furthermore, High-level MSC (HMSC) provides composition mechanisms to deal with the complexity of the system. However, for MSC to be used to describe complex reactive systems, there should be ways to deal with reactive behaviors that require the system to respond immediately. In this paper, we propose extensions of MSC to describe complex reactive behaviors in a systematic way. We define the formal semantics of the extended features based on process algebra, as well as the visual and textual syntax. The extensions allow structured, systematic and succinct descriptions of complex reactive behaviors.","PeriodicalId":438014,"journal":{"name":"Proceedings IEEE Symposia on Human-Centric Computing Languages and Environments (Cat. No.01TH8587)","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134138041","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The PLATUS simulation environment allows for a modular description of simulation models, clearly separating aspects of behavior, statistics and animation. Each component of a model in PLATUS has its own animation interface, that describes when and which messages will be sent to a corresponding animation module. The GENGED environment was originally developed for the visual definition of visual languages and the generation of language-specific graphical editors. Here we extend GENGED in order to define several animation modules which can be connected via animation interfaces to PLATUS modules, allowing for a visual animation of the application being simulated.
{"title":"Towards a compositional approach to define graphical animation of software applications","authors":"R. Bardohl, L. Ribeiro","doi":"10.1109/HCC.2001.995231","DOIUrl":"https://doi.org/10.1109/HCC.2001.995231","url":null,"abstract":"The PLATUS simulation environment allows for a modular description of simulation models, clearly separating aspects of behavior, statistics and animation. Each component of a model in PLATUS has its own animation interface, that describes when and which messages will be sent to a corresponding animation module. The GENGED environment was originally developed for the visual definition of visual languages and the generation of language-specific graphical editors. Here we extend GENGED in order to define several animation modules which can be connected via animation interfaces to PLATUS modules, allowing for a visual animation of the application being simulated.","PeriodicalId":438014,"journal":{"name":"Proceedings IEEE Symposia on Human-Centric Computing Languages and Environments (Cat. No.01TH8587)","volume":"32 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116008506","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
In this paper, a visual development environment for components is presented. The advantages of this environment are the strict compliance with the component concept, new kinds of component editors, and the ability to write test cases for components.
{"title":"Visual development environment based on component technique","authors":"Ludger Martin","doi":"10.1109/HCC.2001.995289","DOIUrl":"https://doi.org/10.1109/HCC.2001.995289","url":null,"abstract":"In this paper, a visual development environment for components is presented. The advantages of this environment are the strict compliance with the component concept, new kinds of component editors, and the ability to write test cases for components.","PeriodicalId":438014,"journal":{"name":"Proceedings IEEE Symposia on Human-Centric Computing Languages and Environments (Cat. No.01TH8587)","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125330050","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
We describe the Design Pattern Modelling Language, a notation supporting the specification of design pattern solutions and their instantiation into UML (Unified Modeling Language) design models.
{"title":"A visual language for design pattern modelling and instantiation","authors":"D. Maplesden, J. Hosking, J. Grundy","doi":"10.1109/HCC.2001.995285","DOIUrl":"https://doi.org/10.1109/HCC.2001.995285","url":null,"abstract":"We describe the Design Pattern Modelling Language, a notation supporting the specification of design pattern solutions and their instantiation into UML (Unified Modeling Language) design models.","PeriodicalId":438014,"journal":{"name":"Proceedings IEEE Symposia on Human-Centric Computing Languages and Environments (Cat. No.01TH8587)","volume":"108 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124060295","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Formal modeling notations and visual modeling notations can complement each other when developing software models. The most frequently adopted approach is to define transformations between the visual and formal models. However, a significant problem with the currently suggested approaches is that the transformation itself is often described imprecisely, with the result that the overall transformation task may be imprecise, incomplete and inconsistent. This paper presents a metamodel-based transformation between UML and Object-Z. In the paper, the two languages are defined in terms of their metamodels, and a systematic transformation between the models is provided at the meta-level. As a consequence, we can provide a precise, consistent and complete transformation between a visual model in UML and a formal model in Object-Z. In a case study, we illustrate how the metamodel-based transformation enables us to create a UML visual representation of an Object-Z specification.
{"title":"A metamodel-based transformation between UML and Object-Z","authors":"Soon-Kyeong Kim, D. Carrington, R. Duke","doi":"10.1109/HCC.2001.995246","DOIUrl":"https://doi.org/10.1109/HCC.2001.995246","url":null,"abstract":"Formal modeling notations and visual modeling notations can complement each other when developing software models. The most frequently adopted approach is to define transformations between the visual and formal models. However, a significant problem with the currently suggested approaches is that the transformation itself is often described imprecisely, with the result that the overall transformation task may be imprecise, incomplete and inconsistent. This paper presents a metamodel-based transformation between UML and Object-Z. In the paper, the two languages are defined in terms of their metamodels, and a systematic transformation between the models is provided at the meta-level. As a consequence, we can provide a precise, consistent and complete transformation between a visual model in UML and a formal model in Object-Z. In a case study, we illustrate how the metamodel-based transformation enables us to create a UML visual representation of an Object-Z specification.","PeriodicalId":438014,"journal":{"name":"Proceedings IEEE Symposia on Human-Centric Computing Languages and Environments (Cat. No.01TH8587)","volume":"20 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127745610","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The object-oriented paradigm is very used in CAD systems. It permits users to create objects and to interrogate their attributes to use them in other processes. While some CAD or drawing systems support end-user programming in order to abstract building functions, none of them permit creating classes where several functions (constructor and selectors) share the same data. A data model that permits to abstract a class from one of its instances built by the end-user is described in this paper. The proposed technique permits the user not only to describe interactively the class constructor, but also to build the class selectors without any programming knowledge. The created class can be used directly thanks to a specific interpretation mechanism, or the corresponding code can be generated and compiled to have persistent classes. This technique has been used in a CAD system that permitting end-user specialization.
{"title":"End-user class definition in CAD systems","authors":"G. Texier, Fabrice Depaulis, L. Guittet","doi":"10.1109/HCC.2001.995257","DOIUrl":"https://doi.org/10.1109/HCC.2001.995257","url":null,"abstract":"The object-oriented paradigm is very used in CAD systems. It permits users to create objects and to interrogate their attributes to use them in other processes. While some CAD or drawing systems support end-user programming in order to abstract building functions, none of them permit creating classes where several functions (constructor and selectors) share the same data. A data model that permits to abstract a class from one of its instances built by the end-user is described in this paper. The proposed technique permits the user not only to describe interactively the class constructor, but also to build the class selectors without any programming knowledge. The created class can be used directly thanks to a specific interpretation mechanism, or the corresponding code can be generated and compiled to have persistent classes. This technique has been used in a CAD system that permitting end-user specialization.","PeriodicalId":438014,"journal":{"name":"Proceedings IEEE Symposia on Human-Centric Computing Languages and Environments (Cat. No.01TH8587)","volume":"178 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132291777","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Debugging of parallel programs is essentially a twofold task, since it involves debugging both the internal logic of the processes and the interactions between those processes. For the most part, the former can be tackled using conventional sequential debuggers, but the latter are more problematical. It is contended that visualization techniques can be invaluable in this regard, and to this end the concept of a Parallel Execution Graph (PEG) has been devised. For the Java language, which places much of the burden of thread synchronization on the shoulders of the programmer, execution visualization via a PEG can give enormous insight into program behavior, and can highlight hazards such as indeterminacy and deadlock. Among the other advantages to be gained from the use of PEGs are fine control over what information to include in a graph, and the ability to focus on relevant events via a viewpoint switching mechanism.
{"title":"Visual debugging of multithreaded Java programs","authors":"D. Jackson","doi":"10.1109/HCC.2001.995286","DOIUrl":"https://doi.org/10.1109/HCC.2001.995286","url":null,"abstract":"Debugging of parallel programs is essentially a twofold task, since it involves debugging both the internal logic of the processes and the interactions between those processes. For the most part, the former can be tackled using conventional sequential debuggers, but the latter are more problematical. It is contended that visualization techniques can be invaluable in this regard, and to this end the concept of a Parallel Execution Graph (PEG) has been devised. For the Java language, which places much of the burden of thread synchronization on the shoulders of the programmer, execution visualization via a PEG can give enormous insight into program behavior, and can highlight hazards such as indeterminacy and deadlock. Among the other advantages to be gained from the use of PEGs are fine control over what information to include in a graph, and the ability to focus on relevant events via a viewpoint switching mechanism.","PeriodicalId":438014,"journal":{"name":"Proceedings IEEE Symposia on Human-Centric Computing Languages and Environments (Cat. No.01TH8587)","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2001-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134315355","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}