Cookies
O website necessita de alguns cookies e outros recursos semelhantes para funcionar. Caso o permita, o INESC TEC irá utilizar cookies para recolher dados sobre as suas visitas, contribuindo, assim, para estatísticas agregadas que permitem melhorar o nosso serviço. Ver mais
Aceitar Rejeitar
  • Menu
Publicações

Publicações por José Creissac Campos

2011

Test case generation from mutated task models

Autores
Barbosa, A; Paiva, ACR; Campos, JC;

Publicação
Proceedings of the 2011 SIGCHI Symposium on Engineering Interactive Computing Systems, EICS 2011

Abstract
This paper describes an approach to the model-based testing of graphical user interfaces from task models. Starting from a task model of the system under test, oracles are generated whose behaviour is compared with the execution of the running system. The use of task models means that the effort of producing the test oracles is reduced. It does also mean, however, that the oracles are confined to the set of expected user behaviours for the system. The paper focuses on solving this problem. It shows how task mutations can be generated automatically, enabling a broader range of user behaviours to be considered. A tool, based on a classification of user errors, generates these mutations. A number of examples illustrate the approach. Copyright 2011 ACM.

2012

A Patterns based reverse engineering approach for Java source code

Autores
Couto, R; Ribeiro, AN; Campos, JC;

Publicação
PROCEEDINGS OF THE 2012 IEEE 35TH SOFTWARE ENGINEERING WORKSHOP (SEW 2012)

Abstract
The ever increasing number of platforms and languages available to software developers means that the software industry is reaching high levels of complexity. Model Driven Architecture (MDA) presents a solution to the problem of improving software development processes in this changing and complex environment. MDA driven development is based on models definition and transformation. Design patterns provide a means to reuse proven solutions during development. Identifying design patterns in the models of a MDA approach helps their understanding, but also the identification of good practices during analysis. However, when analyzing or maintaining code that has not been developed according to MDA principles, or that has been changed independently from the models, the need arises to reverse engineer the models from the code prior to patterns' identification. The approach presented herein consists in transforming source code into models, and infer design patterns from these models. Erich Gamma's cataloged patterns provide us a starting point for the pattern inference process. MapIt, the tool which implements these functionalities is described.

2009

Advanced engineering tools for next generation substation automation systems: The added value of IEC 61850 and the InPACT project

Autores
Paulo, R; Carrapatoso, A; Lemos, M; Bernardo, R; Campos, J;

Publicação
IET Conference Publications

Abstract
Automation systems according to IEC 61850 are a powerful solution for station automation. Engineering of such distributed systems is however a non-trivial task which requires different approaches and enhanced tool support. In this paper the authors (i) present how IEC 61850 is viewed and is being adopted by a utility and vendor, (ii) discuss its engineering potential and current issues, (iii) point-out global requirements for next generation tools, (iv) present the InPACT project which is tackling some of these concerns and (v) propose key elements of visual languages as one contributing enhancement.

2008

Model-based User Interface Testing With Spec Explorer and ConcurTaskTrees

Autores
Silva, JL; Campos, JC; Paiva, ACR;

Publicação
Electronic Notes in Theoretical Computer Science

Abstract
Analytic usability analysis methods have been proposed as an alternative to user testing in early phases of development due to the cost of the latter approach. By working with models of the systems, analytic models are not capable of identifying implementation related problems that might have an impact on usability. Model-based testing enables the testing of an implemented software artefact against a model of what it should be (the oracle). In the case of model-based user interface testing, the models should be expressed at an adequate level of abstraction, adequately modelling the interaction process. This paper describes an effort to develop tool support enabling the use of task models as oracles for model-based testing of user interfaces.

2007

Towards a Coordination Model for Interactive Systems

Autores
Barbosa, MA; Barbosa, LS; Campos, JC;

Publicação
Electronic Notes in Theoretical Computer Science

Abstract
When modelling complex interactive systems, traditional interactor-based approaches suffer from lack of expressiveness regarding the composition of the different interactors present in the user interface model into a coherent system. In this paper we investigate an alternative approach to the composition of interactors for the specification of complex interactive systems which is based on the coordination paradigm. We layout the fundations for the work and present an illustrative example. Lines for future work are identified.

2010

A Coordination Model for Interactive Components

Autores
Barbosa, MA; Barbosa, LS; Campos, JC;

Publicação
FUNDAMENTALS OF SOFTWARE ENGINEERING

Abstract
Although presented with a variety of 'flavours', the notion of an interactor, as an abstract characterisation of an interactive component, is well-known in the area of formal modelling techniques for interactive systems. Tins paper replaces traditional, hierarchical, 'tree-like' composition of interactors in the specification of complex interactive systems, by their exogenous coordination through general-purpose software connectors which assure the flow of data and the meet of synchronisation constraints. The paper's technical contribution is twofold. First a modal logic is defined to express behavioural properties of both interactors and connectors. The logic is new in the sense that its modalities are indexed by fragments of sets of actions to cater for action co-occurrence. Then, tins logic is used in the specification of both interactors and coordination layers which orchestrate their interconnection.

  • 20
  • 22