Publications

Campos JC, Harrison M.  1999.  Using automated reasoning in the design of an audio-visual communication system. Design, Specification and Verification of Interactive Systems - DSV-IS. :167-188. Abstractcamposh99.pdf

Formal reasoning about how usersn and systems interact poses a difficult challenge. Interactive systems design provides a context in which the subjective area of human understanding meets the objectivity of computer systems logic. We present results of a case study in the use of automated reasoning to aid the formal analysis of interactive systems. We show how we can use human-factors issues to generate properties of interest, and how we can use model checking and theorem proving to analyse our specifications against those properties.This is part of ongoing work in the development of a tool to allow the automatic translation of interactor based specifications into SMV, and in the analysis of the role which different verification techniques might have during the development of interactive systems.

Pereira JO, Oliveira R, Sousa AL, Moura F.  1999.  Ardina – Difusão de Informação em Computação Móvel. Actas do Encontro Português de Computação Móvel. Abstractposm99.pdf

Este artigo apresenta o Ardina, uma infra-estrutura modular de suporte à difusão de informação por intermédio de palmatops. A difusão de informação do Ardina reside na exploração da habitual operação de sincronização ponto-a-ponto entre o palmtop e uma estação de suporte ou entre dois palmtops.

Preguiça N, Moreno CB, Martins JL, Moura F, Domingos H, Oliveira R, Pereira JO.  1999.  MobiSnap: Managing Database Snapshots in a Mobile Environment. Actas do Encontro Português de Computação Móvel. Abstractepcm-1999-1.pdf

This paper presents MobiSnap, a research project that aims to support the development of SQL based applications for mobile environments, providing con gurable support for data divergence control and connectivity abstractions. One of the project goals is to assist the migration of legacy SQL based applications into these new operational platforms.

Cunha A, Belo O.  1999.  Integrating Agent Based Information Outsourcing Techniques on Data Warehousing Systems. Proceedings of the IEEE International Conference on Systems, Man, and Cybernetics - SMC. 1:1025–1030. Abstract10.1.1.112.6833.pdf

In the last few years, information outsourcing has been a current activity in large companies. Information has become a regular trading commodity. It is a well-known fact that direct mailing companies acquire databases, or other kind of information sources, from other companies with the names and addresses of potential clients. Also, enterprise managers are frequently concerned with the current status and welfare of their clients and suppliers. Commonly, they appeal to specialized external information providers who may, under certain conditions, provide them with specific profiles about such potential commercial partners. In companies with effective means of information processing, it is very probable that such information needs may be directly satisfied from data stored and managed in the company's data warehouse. In this paper, we propose a protocol, based on economic principles, that enables the automatic negotiation of information transfer between the data warehouse systems of different companies. The protocol is designed to be used by a community of intelligent agents that is responsible for ensuring and supporting all the operational tasks related to information outsourcing among companies.

Barthe G, Frade MJ.  1999.  Constructor Subtyping. Proceedings of 8th European Symposium on Programming Languages and Systems - ESOP. 1576:109-127. Abstractesop99.pdf

Constructor subtyping is a form of subtyping in which an inductive type A is viewed as a subtype of another inductive type B if B has more constructors than A. Its (potential) uses include proof assistants and functional programming languages. In this paper, we introduce and study the properties of a simply typed lambda-calculus with record types and datatypes, and which supports record subtyping and constructor subtyping. In the first part of the paper, we show that the calculus is confluent and strongly normalizing. In the second part of the paper, we show that the calculus admits a well-behaved theory of canonical inhabitants, provided one adopts expansive extensionality rules, including eta-expansion, surjective pairing, and a suitable expansion rule for datatypes. Finally, in the third part of the paper, we extend our calculus with unbounded recursion and show that confluence is preserved.

Barbosa LS.  1999.  Prototyping Processes. Joint Conference on Declarative Programming - AGP. :513-528. Abstract10.1.1.23.4377.pdf

Construction and observation are two basic notions in Computer Science corresponding to precise dual mathematical concepts: those of algebra and coalgebra. This paper introduces a simple coalgebraic model for concurrent processes and discusses its animation in the declarative language Charity. It is argued that the ability to reason in an uniform way about data and behaviour, provides an unifying approach to functional prototyping of software specifications. Keywords: Coalgebraic models, prototyping, higher-order programming.

Campos JC.  1998.  Integrating Automated Verification into Interactive Systems Development. 13th IEEE International Conference: Automated Software Engineering - Doctoral Symposium Proceedings. :13-15. Abstractase98.pdf

Our fieldof researchis the applicationof automatedrea-soning techniques during interactor based interactive sys-tems development. The aim being to ensure that the de-veloped systems embody appropriate properties and princi- ples. In this report we identify some of the pitfalls of current approachesand propose a new way to integrate verificationinto interactive systems development.

Campos JC, Harrison M.  1998.  The role of verification in interactive systems design. Design, Specification and Verification of Interactive Systems - DSV-IS. :155-170. Abstractcamposh98.pdf

In this paper we argue that using verification in interactive systems development is more than just checking whether the specification of the system has all the required properties, and that changing the focus from a global specification into partial, property oriented, specifications can provide a number of advantages and make verification actas an aid to decision making. We also present a compiler that allows for the verification of interactor specifications to be done in SMV, as well as a simple case study where verification is used to inform a design decision.

Doherty G, Campos JC, Harrison M.  1998.  Representational Reasoning and Verification. Proceedings of the BCS-FACS Workshop: Formal Aspects of the Human Computer Interaction. :193-212. Abstract10.1.1.39.3743.pdf

Formal approaches to the design of interactive systems, such as the principled design approach rely on reasoning about properties of the system at a very high level of abstraction. Such specifications typically provide little scope for reasoning about presentations and the representation of information in the presentation. Theories of distributed cognition place a strong emphasis on the role of representations in the cognitive process, but it is not clear how such theories can be applied to design. In this paper we show how a formalisation can be used to encapsulate representational aspects, affording us an opportunity to integrate representational reasoning into the design process. We have shown in [3] how properties over the abstract state place requirements on the presentation if the properties are to be valid at the perceptual level, and we have presented a model for such properties. We base our approach on this model, and examine in more detail the issue of verification.

Barbosa MB, Carvalho A, Farsi M.  1998.  A CANopen I/O module: Simple and efficient, system integration. IECON - Proceedings of 24th Annual Conference of the IEEE Industrial Electronics Society. :155-159. Abstract

CANopen is a field level communication protocol for industrial automation distributed applications. CANopen offers a powerful set of higher level application layer services which implement an object-oriented distributed environment for simplified system integration. Often, sensors and actuators have to be placed at geographically remote locations, at considerable distances from the processor(s) running a control application. When this is the case, a possible solution is to use an autonomous I/O module, located close to the sensors and actuators, that provides the application with an interface to these devices. The application must be distributed between the remote I/O module and the local processor(s) using a communication network to allow the different parts to cooperate. This work is centred on the development of an I/O module based on the SAB-C167CR-LM chip from SIEMENS. The I/O module makes sensors and actuators accessible via the CAN bus, using the CANopen protocol. The objective is to show that CANopen can be implemented over new hardware platforms, in minimum time, with satisfactory results. It is shown that CANopen provides a systems-integrator-friendly object-oriented environment and that for this reason, the CANopen Communication Profile greatly simplifies the implementation of distributed applications in CAN based systems. Furthermore, CANopen also provides flexible real-time data transfer mechanisms that are able to meet time-critical constraints and, therefore, make CANopen a good solution for distributed control environments.

Cunha A, Neves J.  1998.  A Game-theoretic Approach to the Socialization of Utility-based Agents. Proceedings of the 3rd International Conference on Multi-agent Systems - AAMAS. 1:413–414. Abstracticmas98.pdf

This paper presents a formal framework in which to study the socialization processes evolving among utility-based agents. These agents are self-interested, being their different social attitudes (cooperativeness, competitiveness or indifference) a consequence of this behavior. The dynamics of the socialization process are captured by a relation that measures the similarities between the desires of two groups of agents. This similitude relation is derived from the system's model, defined as a probabilistic transition system and a set of individual preference relations. Game-theoretic concepts are used in order to determine the rational(or expected) transitions of the system.

Faria J, J.G.Rocha, M.R.Henriques, J.C.Ramalho, J.J.Almeida, P.R.Henriques.  1998.  Adapting Museum Structures for the Web: No Changes Needed!. Abstractartigo_toronto.pdf

This work is being developed under the GEIRA project, an EC supported project, under the INTERREG II program. The goal of the GEIRA project is the development of a service to support the publication of multimedia information, with respect to science and technology, cultural resources and environment protection in the of North of Portugal and Galiza (North-west Spain). In this paper we will focus on part of the work being done to provide the museums of this region with tools for data management and methodologies that enable the publication of their data, preferably on the Web.

Most of the existing museums in this region are small with little or no computer-based information support. Only a few have the opportunity to be assisted by a software engineer. Our goal is to get an information system in each museum, running with the minimal external support. It should be as easy as possible to publish information on the Web from that information system. Each museum will have a presence on the Web, as a stand-alone entity.

The aim of project GEIRA is to provide an additional value to the users searching for information. Instead of iterating through a set of institutions, the user can search and browse in a knowledge level above each particular institution. GEIRA will provide that knowledge level, rather than just aggregate a collection of links
in well organized site.

Campos JC, Harrison M.  1997.  Formally Verifying Interactive Systems: A Review. Design, Specification and Verification of Interactive Systems '97. :109-124. Abstractcamposh97.pdf

Although some progress has been made in the development of principles to guide the designers of ninteractive systems, ultimately the only proven method of checking how usable a particular system is must be based on experiment. However, it is also the case that changes that occurat this late stage are very expensive.The need for early design checking increases as software becomes more complex and is designed to serve volume international markets and also as interactions between operators and automation in safety-critical environments becomes more complex. This paper reviews progress in the area of formal verification of interactive systems and proposes a short agenda for further work.

Pereira JO, Oliveira R.  1997.  Object-oriented open implementation of reliable communication protocols. OOPSLA - Workshop on Dependable Distributed Object Systems. Abstractoopsla97.pdf

his paper presents a novel architecture for communication protocols that takes advantage of object mobility, allowing applications to specify the behavior of protocols for each individual message. This is achieved by opening the implementation of protocols and letting the application program associate a set of possibly customized meta-objects to every message, separately adapting different aspects of the service provided by the protocol.

Pereira JO, Oliveira R.  1997.  On Stacks and Russian Dolls: Mobile Objects in Configurable Communication Protocols. Proceedings of the 3rd Workshop on Mobile Object Systems, 11th European Conference on Object-Oriented Programming - ECOOP. Abstract10.1.1.7.2167.pdf

This paper introduces Groupz, a novel development framework for group communication protocol. Groupz merges advantages of traditional communication protocol support environments with object mobility, proposing multiple nested mobile objects as the natural evolution of layered protocols. By shifting the focus of protocol development from data messages to mobile objects, it makes possible to build configurable and adaptable system software, suited for problematic environments such as world-wide networks and mobile computers, without overlooking efficiency.