Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Patricia Lago is active.

Publication


Featured researches published by Patricia Lago.


2017 IEEE International Conference on Software Architecture (ICSA) | 2017

Research on Architecting Microservices: Trends, Focus, and Potential for Industrial Adoption

Paolo Di Francesco; Ivano Malavolta; Patricia Lago

Microservices are a new trend rising fast from the enterprise world. Even though the design principles around microservices have been identified, it is difficult to have a clear view of existing research solutions for architecting microservices. In this paper we apply the systematic mapping study methodology to identify, classify, and evaluate the current state of the art on architecting microservices from the following three perspectives: publication trends, focus of research, and potential for industrial adoption. More specifically, we systematically define a classification framework for categorizing the research on architecting microservices and we rigorously apply it to the 71 selected studies. We synthesize the obtained data and produce a clear overview of the state of the art. This gives a solid basis to plan for future research and applications of architecting microservices.


Journal of Systems and Software | 2015

Architectural tactics for cyber-foraging

Grace A. Lewis; Patricia Lago

Cyber-foraging is a technique to extend computing power of mobile devices.We conducted an SLR of architectures for cyber-foraging systems.Common design decisions were codified into architectural tactics for cyber-foraging.Functional tactics are computation offload, data staging, provisioning and discovery.Non-functionals are resource optimization, fault tolerance, scalability and security. Display Omitted Mobile devices have become for many the preferred way of interacting with the Internet, social media and the enterprise. However, mobile devices still do not have the computing power and battery life that will allow them to perform effectively over long periods of time, or for executing applications that require extensive communication, computation, or low latency. Cyber-foraging is a technique to enable mobile devices to extend their computing power and storage by offloading computation or data to more powerful servers located in the cloud or in single-hop proximity. This article presents the results of a systematic literature review (SLR) on architectures that support cyber-foraging. Elements of the identified architectures were codified in the form of Architectural Tactics for Cyber-Foraging. These tactics will help architects extend their design reasoning toward cyber-foraging as a way to support the mobile applications of the present and the future.


Journal of Systems and Software | 2016

Empirical evaluation of two best practices for energy-efficient software development

Giuseppe Procaccianti; Héctor Fernández; Patricia Lago

We empirically studied the energy impact of two best practices for energy-efficient software.We applied the practices on two widely used software applications, MySQL Server and Apache Webserver.Each practice successfully reduced the energy consumption of our test environment.The hardware resource usage of the modified applications is more energy-proportional.Software design and implementation choices significantly affect energy efficiency. Background. Energy efficiency is an increasingly important property of software. A large number of empirical studies have been conducted on the topic. However, current state-of-the-Art does not provide empirically-validated guidelines for developing energy-efficient software.Aim. This study aims at assessing the impact, in terms of energy savings, of best practices for achieving software energy efficiency, elicited from previous work. By doing so, it identifies which resources are affected by the practices and the possible trade-offs with energy consumption.Method. We performed an empirical experiment in a controlled environment, where we applied two different Green Software practices to two software applications, namely query optimization in MySQL Server and usage of sleep instruction in the Apache web server. We then performed a comparison of the energy consumption at system-level and at resource-level, before and after applying the practice.Results. Our results show that both practices are effective in improving software energy efficiency, reducing consumption up to 25%. We observe that after applying the practices, resource usage is more energy-proportional i.e., increasing CPU usage increases energy consumption in an almost linear way. We also provide our reflections on empirical experimentation in software energy efficiency.Conclusions. Our contribution shows that significant improvements in software energy efficiency can be gained by applying best practices during design and development. Future work will be devoted to further validate best practices, and to improve their reusability.


quality of software architectures | 2015

A Catalog of Architectural Tactics for Cyber-Foraging

Grace A. Lewis; Patricia Lago

Mobile devices have become for many the preferred way of interacting with the Internet, social media and the enterprise. However, mobile devices still do not have the computing power or battery life that will allow them to perform effectively over long periods of time or for executing applications that require extensive communication or computation, or low latency. Cyber-foraging is a technique enabling mobile devices to extend their computing power and storage by offloading computation or data to more powerful servers located in the cloud or in single-hop proximity. This paper presents a catalog of architectural tactics for cyber-foraging that was derived from the results of a systematic literature review on architectures for cyber-foraging systems. Elements of the architectures identified in the primary studies were codified in the form of Architectural Tactics for Cyber-Foraging. These tactics will help architects extend their design reasoning towards cyber-foraging as a way to support the mobile applications of the present and the future.


international conference on software engineering | 2016

Software energy profiling: comparing releases of a software product

Erik Jagroep; Jan Martijn E. M. van der Werf; Sjaak Brinkkemper; Giuseppe Procaccianti; Patricia Lago; Leen Blom; Rob van Vliet

In the quest for energy efficiency of Information and Communication Technology, so far research has mostly focused on the role of hardware. However, as hardware technology becomes more sophisticated, the role of software becomes crucial. Recently, the impact of software on energy consumption has been acknowledged as significant by researchers in software engineering. In spite of that, measuring the energy consumption of software has proven to be a challenge, due to the large number of variables that need to be controlled to obtain reliable measurements. Due to cost and time constraints, many software product organizations are unable to effectively measure the energy consumption of software. This prevents them to be in control over the energy efficiency of their products. In this paper, we propose a software energy profiling method to reliably compare the energy consumed by a software product across different releases, from the perspective of a software organization. Our method allows to attribute differences in energy consumption to changes in the software. We validate our profiling method through an empirical experiment on two consecutive releases of a commercial software product. We demonstrate how the method can be applied by organizations and provide an analysis of the software related changes in energy consumption. Our results show that, despite a lack of precise measurements, energy consumption differences between releases of a software product can be quantified down to the level of individual processes. Additionally, the results provide insights on how specific software changes might affect energy consumption.


working ieee/ifip conference on software architecture | 2016

A Decision Model for Cyber-Foraging Systems

Grace A. Lewis; Patricia Lago; Paris Avgeriou

Cyber-foraging is a technique to enable mobile devices to extend their computing power and storage by offloading computation or data to more powerful servers located in the cloud or in single-hop proximity. While there is a large amount of research in this area, the reality is that there are not many deployed, operational cyber-foraging systems. As these systems become more prevalent due to their proven benefits, combined with the emergence of micro data centers and edge clouds, a need will arise for guidance on their architecture and development. To provide this guidance, we present a decision model based on a mapping of functional and non-functional requirements for cyber-foraging systems to a set of architectural tactics. The decision model was validated by developers to obtain an expert opinion on its correctness and usefulness for guiding the architecture, design, and evolution of cyber-foraging systems that meet their intended functional and non-functional requirements, while understanding the effects of decisions.


IEEE Software | 2016

Feminine Expertise in Architecting Teams

Maryam Razavian; Patricia Lago

A well-known adage is diversity brings innovation. Diversity can be in culture, thinking, discipline, gender, and many more aspects. The result is the same: the chances for creating innovation in a given context increase when diversity is involved. To some extent, this principle should also hold for gender diversity in software teams. Achieving gender diversity in IT-related fields has been a goal for decades, but still, too few women choose such a career. But what skills or traits assigned to the feminine role bring concrete advantages to software teams? Researchers addressed this important and, strangely enough, mostly unexplored problem, specifically for software-architecting teams. They interviewed male and female software architects at four major IT companies in the Netherlands and then interviewed a panel of experts. They identified seven feminine expertise flavors--traits and skills linked to the feminine role in architecting teams. Much of such expertise relates to the skills required to successfully deal with software architectings human aspects.


international conference on software engineering | 2017

Awakening awareness on energy consumption in software engineering

Erik Jagroep; Jordy Broekman; Jan Martijn E. M. van der Werf; Patricia Lago; Sjaak Brinkkemper; Leen Blom; Rob van Vliet

Software producing organizations have the ability to address the energy impact of their ICT solutions during the development process. However, while industry is convinced of the energy impact of hardware, the role of software has mostly been acknowledged by researchers in software engineering. Strengthened by the limited practical knowledge to reduce the energy consumption, organizations have less control over the energy impact of their products and lose the contribution of software towards energy related strategies. Consequently, industry risks not being able to meet customer requirements or even fulfillcorporate sustainability goals. In this paper we perform an exploratory case study on how to create and maintain awareness on an energy consumption perspective for software among stakeholders involved with the development of software products. During the study, we followed the development process of two commercial software products and provided direct feedback to the stakeholders on the effects of their development efforts, specifically concerning energy consumption and performance, using an energy dashboard. Multiple awareness measurements allowed us to keep track of changes over time on specific aspects affecting software development. Our results show that, despite a mixed sentiment towards the dashboard, changed awareness has triggered discussion on the energy consumption of software.


Journal of Systems and Software | 2017

Characterizing the contribution of quality requirements to software sustainability

Nelly Condori-Fernandez; Patricia Lago

Abstract Background Since sustainability became a challenge in software engineering, researchers mainly from requirements engineering and software architecture communities have contributed to defining the basis of the notion of sustainability-aware software. Problem Despite these valuable efforts, the assessment and design based on the notion of sustainability as a software quality is still poorly understood. There is no consensus on which sustainability requirements should be considered. Aim and Method To fill this gap, a survey was designed with a double objective: i) determine to which extent quality requirements contribute to the sustainability of software-intensive systems; and ii) identify direct dependencies among the sustainability dimensions. The survey involved different target audiences (e.g. software architects, ICT practitioners with expertise in Sustainability). We evaluated the perceived importance/relevance of each sustainability dimension, and the perceived usefulness of exploiting a sustainability model in different software engineering activities. Results Most respondents considered modifiability as relevant for addressing both technical and environmental sustainability. Functional correctness, availability, modifiability, interoperability and recoverability favor positively the endurability of software systems. This study has also identified security, satisfaction, and freedom from risk as very good contributors to social sustainability. Satisfaction was also considered by the respondents as a good contributor to economic sustainability.


2016 Qualitative Reasoning about Software Architectures (QRASA) | 2016

Architectural Patterns and Quality Attributes Interaction

Gianantonio Me; Coral Calero; Patricia Lago

Architectural patterns and styles represent common solutions to recurrent problems. They encompass architectural knowledge about how to achieve holistic system quality. The relation between patterns (or styles) and quality attributes has been regularly addressed in the literature. However, there is a lack of a consolidated and systematically built reference capturing this relation and eventually making it available for reuse in the form of patterns-quality attributes knowledge. If captured, this knowledge can be used as an architectural decision framework where solutions (patterns) are strongly intertwined with quality (attributes). Such a framework should also contemplate variants and combinations of patterns. In order to create the framework, we first proposed a lightweight theory on the interaction of patterns/styles and quality attributes. That framework has been built by starting from a key study on the interaction between architectural patterns and quality attributes. We then challenged the theory against the systematic survey of a pilot set of primary studies. This paper presents the preliminary results of this survey on architectural patterns and styles, and their interaction with quality attributes. The preliminary results show that the initial theory can work as a platform for integrating the body of knowledge gathered through the analysis.

Collaboration


Dive into the Patricia Lago's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Grace A. Lewis

Software Engineering Institute

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Rafael Capilla

King Juan Carlos University

View shared research outputs
Researchain Logo
Decentralizing Knowledge