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 HumanISE

2012

Towards a framework to evaluate and improve the quality of implementation of CMMI® practices

Autores
Lopes Margarido, I; Pascoal Faria, J; Moreira Vidal, R; Vieira, M;

Publicação
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

Abstract
CMMI practices can be poorly implemented leading to weak performance gain. SCAMPI verifies model compliance but not performance. Hence, a framework to evaluate the quality of implementation of each practice, based on compliance and performance results, will prevent poor implementation, locate and fix problems, and ultimately achieve better results. In this paper we propose such a framework, based on a combination of leading and lagging indicators measuring compliance, efficiency and efficacy. © 2012 Springer-Verlag.

2012

Specification-driven unit test generation for java generic classes

Autores
Rebello De Andrade, F; Faria, JP; Lopes, A; Paiva, ACR;

Publicação
Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

Abstract
Several approaches exist to automatically derive test cases that check the conformance of the implementation of abstract data types (ADTs) with respect to their specification. However, they lack support for the testing of implementations of ADTs defined by generic classes. In this paper, we present a novel technique to automatically derive, from specifications, unit test cases for Java generic classes that, in addition to the usual testing data, encompass implementations for the type parameters. The proposed technique relies on the use of Alloy Analyzer to find model instances for each test goal. JUnit test cases and Java implementations of the parameters are extracted from these model instances. © 2012 Springer-Verlag.

2012

8th International Conference on the Quality of Information and Communications Technology, QUATIC 2012, Lisbon, Portugal, 2-6 September 2012, Proceedings

Autores
Faria, JP; Silva, ARd; Machado, RJ;

Publicação
QUATIC

Abstract

2012

Analysing Tactics in Architectural Patterns

Autores
Sanchez, A; Aguiar, A; Barbosa, LS; Riesco, D;

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

Abstract
This paper presents an approach to analyse the application of tactics in architectural patterns. We define and illustrate the approach using ARCHERY, a language for specifying, analysing and verifying architectural patterns. The approach consists of characterising the design principles of an architectural pattern as constraints, expressed in the language, and then, establishing a refinement relation based on their satisfaction. The application of tactics preserving refinement ensures that the original design principles, expressed themselves as constraints, still hold in the resulting architectural pattern. The paper focuses on fault-tolerance tactics, and identifies a set of requirements for a semantic framework characterising them. The application of tactics represented as model transformations is then discussed and illustrated using two case studies.

2012

Roles as Modular Units of Composition

Autores
Barbosa, FS; Aguiar, A;

Publicação
ENASE 2012 - Proceedings of the 7th International Conference on Evaluation of Novel Approaches to Software Engineering, Wroclaw, Poland, 29-30 June, 2012.

Abstract
Object oriented decomposition is the most successful decomposition strategy used nowadays. But a single decomposition strategy cannot capture all aspects of a concept. Roles have been successfully used to model the different views a concept may provide but, despite this, roles have not been used as building blocks. Roles are mostly used to extend objects at runtime. In this paper we propose roles as a way to compose classes that provides a modular way of capturing and reusing those aspects that fall outside a concept's main purpose, while being close to the OO approach. We present how roles can be made modular and reusable. We also show how we can use roles to compose classes using JavaStage, a java extension that support roles To validate our approach we developed generic and reusable roles for the Gang of Four patterns. We were able to develop reusable roles for 10 out of 23 patterns, which is a good outcome.

2012

Modeling and Programming with Roles: Introducing JavaStage

Autores
Barbosa, FS; Aguiar, A;

Publicação
NEW TRENDS IN SOFTWARE METHODOLOGIES, TOOLS AND TECHNIQUES

Abstract
Roles are not a new concept, but they have been used in two different ways: as modeling concepts in a static view and as instance extensions in a dynamic view. For these views only the dynamic offers supporting languages. The static view, although proving the utility of roles in modeling, does not offer a programming language that allows developers to use roles all the way from modeling to programming. We try to overcome this by presenting our role language JavaStage, based on the Java language. We do this by designing and implementing a simple framework and then compare the results with its OO equivalent. Our results show that static roles are in fact useful when used in code and that JavaStage features expand role reuse.

  • 521
  • 660