2013
Autores
Madeira, A; Neves, R; Martins, MA; Barbosa, LS;
Publicação
2013 INTERNATIONAL SYMPOSIUM ON THEORETICAL ASPECTS OF SOFTWARE ENGINEERING (TASE)
Abstract
This paper extends the authors' previous work on a formal approach to the specification of reconfigurable systems, introduced in [7], in which configurations are taken as local states in a suitable transition structure. The novelty is the explicit consideration that not only the realisation of a service may change from a configuration to another, but also the set of services provided and even their functionality, may themselves vary. In other words, interfaces may evolve, as well.
2013
Autores
Madeira, A; Martins, MA; Barbosa, LS;
Publicação
PROGRAMMING LANGUAGES, SBLP 2013
Abstract
Boilerplates are simplified, normative English texts, intended to capture software requirements in a controlled way. This paper proposes a pallet of boilerplates as a requirements modelling language for reconfigurable systems, i.e., systems structured in different modes of execution among which they can dynamically commute. The language semantics is given as an hybrid logic, in an institutional setting. The mild use made of the theory of institutions, which, to a large extent, may be hidden from the working software engineer, not only provides a rigorous and generic semantics, but also paves the way to tool-supported validation.
2013
Autores
Martins, MA; Madeira, A; Barbosa, LS;
Publicação
STUDIA LOGICA
Abstract
In Computer Science stepwise refinement of algebraic specifications is a well-known formal methodology for rigorous program development. This paper illustrates how techniques from Algebraic Logic, in particular that of interpretation, understood as a multifunction that preserves and reflects logical consequence, capture a number of relevant transformations in the context of software design, reuse, and adaptation, difficult to deal with in classical approaches. Examples include data encapsulation and the decomposition of operations into atomic transactions. But if interpretations open such a new research avenue in program refinement, (conceptual) tools are needed to reason about them. In this line, the paper's main contribution is a study of the correspondence between logical interpretations and morphisms of a particular kind of coalgebras. This opens way to the use of coalgebraic constructions, such as simulation and bisimulation, in the study of interpretations between (abstract) logics.
2013
Autores
Sánchez, A; Barbosa, LS; Riesco, D;
Publicação
2013 INTERNATIONAL SYMPOSIUM ON THEORETICAL ASPECTS OF SOFTWARE ENGINEERING (TASE)
Abstract
ARCHERY is an architectural description language for modelling and reasoning about distributed, heterogeneous and dynamically reconfigurable systems. This paper proposes a structural semantics for ARCHERY, and a method for deriving labelled transition systems (LTS) in which states and transitions represent configurations and reconfiguration operations, respectively. Architectures are modelled by bigraphs and their dynamics by parametric reaction rules. The resulting LTSs can be regarded as Kripke frames, appropriate for verifying reconfiguration constraints over architectural patterns expressed in a modal logic. The derivation method proposed here applies the approach in [1] twice, and combines the results of each application to obtain a label representing a reconfiguration operation and its actual parameters. Labels obtained in this way are minimal and yield LTSs in which bisimulation is a congruence.
2013
Autores
Fernandes, S; Cerone, A; Barbosa, LS;
Publicação
ITiCSE
Abstract
This poster presents a pilot project on non-conventional learning strategies based on students' active participation in real-life FLOSS projects. The aim of the project is to validate the hypothesis that the peer-production model, which underlies most FLOSS projects, can enhance the learning-teaching process based on extensive and systematic collaborative practices. Consisting of a semester-long experiment with a class of 23 Master Information and Technology (MSc IT) students, organized in small groups, this pilot project aims at exploiting FLOSS communities and the respective FLOSS projects as learning opportunities. This pilot project is part of a course assignment on Teaching Software Engineering in the Master in Informatics taking place during the spring semester of 2013, at the University of Minho, in Portugal. The students participate in real FLOSS projects by choosing one of the following roles: 1) requirement analyst, writing software requirements; 2) programmer, developing source code; or 3) tester, writing bug reports. As a real-life experience conducted with students in Portugal, the project enables the systematic study of the dynamics of peer-to-peer learning and assessment of the didactic value and potential of this kind of non-standard learning experiences. Moreover, as a beneficial side effect, students have the opportunity to experience full immersion in a real FLOSS community and learn about project management and organized participation.
2013
Autores
Oliveira, N; Barbosa, LS;
Publicação
SAC
Abstract
Software connectors encapsulate interaction patterns between services in complex, distributed service-oriented applications. Such patterns evolve over time, in response to faults, changes in the expected QoS levels, emergent requirements or the reassessment of contextual conditions. This paper builds up on a model for connector reconfiguration to introduce notions of reconfiguration equivalence and refinement allowing for reasoning about them. This paves the way towards a (still missing) calculus of connector reconfigurations. Copyright 2013 ACM.
The access to the final selection minute is only available to applicants.
Please check the confirmation e-mail of your application to obtain the access code.