Vítor Estêvão Silva Souza
Universidade Federal do Espírito Santo
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Vítor Estêvão Silva Souza.
software engineering for adaptive and self managing systems | 2011
Vítor Estêvão Silva Souza; Alexei Lapouchnian; William N. Robinson; John Mylopoulos
Recently, there has been a growing interest in self-adaptive systems. Roadmap papers in this area point to feedback loops as a promising way of operationalizing adaptivity in such systems. In this paper, we define a new type of requirement - called Awareness Requirement - that can refer to other requirements and their success/failures. We propose a way to elicit and formalize such requirements and offer a requirements monitoring framework to support them.
international conference on conceptual modeling | 2011
Vítor Estêvão Silva Souza; Alexei Lapouchnian; John Mylopoulos
Control Theory and feedback control in particular have been steadily gaining momentum in software engineering for adaptive systems. Feedback controllers work by continuously measuring system outputs, comparing them with reference targets and adjusting control inputs if there is a mismatch. In Control Theory, quantifying the effects of control input on measured output is a process known as system identification. This process usually relies either on detailed and complex system models or on system observation. In this paper, we adopt a Requirements Engineering perspective and ideas from Qualitative Reasoning to propose a language and a systematic system identification method for adaptive software systems that can be applied at the requirements level, with the system not yet developed and its behavior not completely known.
2011 2nd International Workshop on [email protected] | 2011
Vítor Estêvão Silva Souza; John Mylopoulos
Several proposals for the design of adaptive systems rely on some kind of feedback loop that monitors the system output and adapts in case of failure. Roadmap papers in the area advocate the need to make such feedback loops first class entities in adaptive systems design. We go further by adopting a Requirements Engineering perspective that is not only based on feedback loops but also applies other concepts from Control Theory to the design of adaptive systems. Our plans include a framework that reasons over requirements at runtime to provide adaptivity to a system proper. In this position paper, we argue for a control-theoretic view for adaptive systems and outline our long-term research agenda, briefly presenting work that we have already accomplished and discussing our plans for the future.
software engineering for adaptive and self managing systems | 2013
Konstantinos Angelopoulos; Vítor Estêvão Silva Souza; João Pimentel
The growing interest in adaptive software systems has resulted in a number of different proposals for the design of adaptive systems. Some approaches adopt architectural models, whereas others model adaptation options, at the level of requirements. This dichotomy has motivated us to perform a comparative study between two proposals for the design of adaptive systems: the Rainbow Framework (architecture-based) and our own proposal, Zanshin (requirements-based). This evaluation paper reports on our methodology and results. It also provides a comparison between the use of architectural and requirements models as centrepieces of adaptation, offering guidelines for the future research in the field of adaptive systems.
OTM Confederated International Conferences "On the Move to Meaningful Internet Systems" | 2012
Vítor Estêvão Silva Souza; Alexei Lapouchnian; John Mylopoulos
Coping with run-time uncertainty pose an ever-present threat to the fulfillment of requirements for most software systems (embedded, robotic, socio-technical, etc.). This is particularly true for large-scale, cooperative information systems. Adaptation mechanisms constitute a general solution to this problem, consisting of a feedback loop that monitors the environment and compensates for deviating system behavior. In our research, we apply a requirements engineering perspective to the problem of designing adaptive systems, focusing on developing a qualitative software-centric, feedback loop mechanism as the architecture that operationalizes adaptivity. In this paper, we propose a framework that provides qualitative adaptation to target systems based on information from their requirements models. The key characteristc of this framework is extensibility, allowing for it to cope with qualitative information about the impact of control (input) variables on indicators (output variables) in different levels of precision. Our proposal is evaluated with a variant of the London Ambulance System case study.
acm symposium on applied computing | 2012
Vítor Estêvão Silva Souza; Jose-Norberto Mazón; Irene Garrigós; Juan Trujillo; John Mylopoulos
A data warehouse (DW) system stores data from multiple data sources in integrated form and provides capabilities for monitoring business operations to ensure compliance to strategic goals. As such, DWs constitute a fundamental building block for Business Intelligence (BI) operations. In this paper, we introduce the notion of Awareness Requirements (AwReqs) in the requirements analysis and elicitation phase for DWs. In this context, AwReqs provide analysts with the means for eliciting and modeling requirements over performance measures (indicators) to appraise the success or failure of strategic goals. To demonstrate the benefit of our approach, we present a typical business example throughout the paper and show how we can establish in the early stages of DW design the adequacy of the design for BI operations.
software engineering for adaptive and self managing systems | 2016
Konstantinos Angelopoulos; Alessandro Vittorio Papadopoulos; Vítor Estêvão Silva Souza; John Mylopoulos
Self-adaptive software systems monitor their operation and adapt when their requirements fail due to unexpected phenomena in their environment. This paper examines the case where the environment changes dynamically over time and the chosen adaptation has to take into account such changes. In control theory, this type of adaptation is known as Model Predictive Control and comes with a well-developed theory and myriads of successful applications. The paper focuses on modelling the dynamic relationship between requirements and possible adaptations. It then proposes a controller that exploits this relationship to optimize the satisfaction of requirements relative to a cost-function. This is accomplished through a model-based framework for designing self- adaptive software systems that can guarantee a certain level of requirements satisfaction over time, by dynamically composing adaptation strategies when necessary. The proposed framework is illustrated and evaluated through a simulation of the Meeting-Scheduling System exemplar.
software engineering for adaptive and self managing systems | 2013
Genci Tallabaci; Vítor Estêvão Silva Souza
The Zanshin framework adopts a Requirements Engineering perspective to the design of adaptive systems and is centered around the idea of feedback loops. Evaluation experiments conducted so far have used simulations, limiting the strength of our conclusions on the viability of our proposal. In this paper, we report on the experience of applying Zanshin to an existing base system, a software that simulates an Automated Teller Machine (ATM), available online, drawing conclusions on the applicability of the frameworks potential in real-life situations.
exploring modeling methods for systems analysis and design | 2011
Raian Ali; Fabiano Dalpiaz; Paolo Giorgini; Vítor Estêvão Silva Souza
Requirements evolution is a main driver for systems evolution. Traditionally, requirements evolution is associated to changes in the users’ needs and environments. In this paper, we explore another cause for requirements evolution: assumptions. Requirements engineers often make assumptions stating, for example, that satisfying certain sub-requirements and/or correctly executing certain system functionalities would lead to reach a certain requirement. However, assumptions might be, or eventually become, invalid. We outline an approach to monitor, at runtime, the assumptions in a requirements model and to evolve the model to reflect the validity level of such assumptions. We introduce two types of requirements evolution: autonomic (which evolves the priorities of system alternatives based on their success/failure in meeting requirements) and designer-supported (which detects loci in the requirements model containing invalid assumptions and recommends designers to take evolutionary actions).
acm symposium on applied computing | 2014
João Pimentel; Jaelson Castro; John Mylopoulos; Konstantinos Angelopoulos; Vítor Estêvão Silva Souza
The derivation of statecharts from requirements has been addressed from many perspectives. All of them assume that the derivation process is a linear series of refinements resulting in a single statechart, thereby missing the opportunity to explore alternatives in the design space. We propose a multi-dimensional approach that exploits inherent variability of the design space, where alternative refinements are considered for the same intermediate problem, resulting in multiple solutions (statecharts) from a single initial problem (requirements). In order to accomplish this, we propose an extended form of goal model where architects can incrementally refine the original requirements by considering behavioral alternatives leading to design solutions. The proposed refinement process is illustrated through an example from the literature. Experimentation with randomly generated models suggests that the proposal is scalable.