Conference Paper

The Role of Linguistic Relativity on the Identification of Sustainability Requirements: An Empirical Study

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... In a recent study, Pham et al. [19] studied the impact of exposing stakeholders to a certain terminology on the resulting requirements. This phenomenon -called the Linguistic Relativity Theory -indicates that the vocabulary used by humans influences their thinking. ...
... We think that this simple idea is crucial for operationalizing Responsible AI in practice. That is, general system qualities like human agency and oversight, transparency, or sustainability, which engineers find rather fuzzy and hard to operationalize in measurable way [19], should be decomposed into dimensions (i.e. the vocabulary) which should then be embedded into various RE activities, templates, and artifacts. ...
Preprint
Requirements Engineering (RE) is the discipline for identifying, analyzing, as well as ensuring the implementation and delivery of user, technical, and societal requirements. Recently reported issues concerning the acceptance of Artificial Intelligence (AI) solutions after deployment, e.g. in the medical, automotive, or scientific domains, stress the importance of RE for designing and delivering Responsible AI systems. In this paper, we argue that RE should not only be carefully conducted but also tailored for Responsible AI. We outline related challenges for research and practice.
... Our ChatGPT-like chatbot did not include any task-specific instructions in the system prompt to elicit certain behavior from the model. Different LLM behaviors could encourage students to think through the problem themselves or "nudge" them towards finding the solution [28], potentially even beyond the model's inherent reasoning capabilities. A follow-up study could present students with a problem that the LLM is unable to generate correct code for, and compare different prompt instructions by whether they can still improve the students' own task-solving performance. ...
Preprint
Programming students have a widespread access to powerful Generative AI tools like ChatGPT. While this can help understand the learning material and assist with exercises, educators are voicing more and more concerns about an over-reliance on generated outputs and lack of critical thinking skills. It is thus important to understand how students actually use generative AI and what impact this could have on their learning behavior. To this end, we conducted a study including an exploratory experiment with 37 programming students, giving them monitored access to ChatGPT while solving a code understanding and improving exercise. While only 23 of the students actually opted to use the chatbot, the majority of those eventually prompted it to simply generate a full solution. We observed two prevalent usage strategies: to seek knowledge about general concepts and to directly generate solutions. Instead of using the bot to comprehend the code and their own mistakes, students often got trapped in a vicious cycle of submitting wrong generated code and then asking the bot for a fix. Those who self-reported using generative AI regularly were more likely to prompt the bot to generate a solution. Our findings indicate that concerns about potential decrease in programmers' agency and productivity with Generative AI are justified. We discuss how researchers and educators can respond to the potential risk of students uncritically over-relying on generative AI. We also discuss potential modifications to our study design for large-scale replications.
... However, these accidental software architectures (Booch, 2006) are underpinned by sub-optimal design decisions that exacerbate complexity, which are the foundation for software decay and death in all software investment (Martin, 2017). As a result, sustainability has emerged as a growing area of interest in the field of software engineering, requirements engineering, and software architecture with a growing body of research, which focuses both on the software system itself and how software systems can be utilised to address sustainability (Alharthi et al., 2018;Condori-Fernández et al., 2018;Mourão et al., 2018;Oyedeji et al., 2018;Seyff et al., 2018;Duboc et al., 2019;Lago et al., 2020;Pham et al., 2020;Andrikopoulos and Lago, 2021;Gupta et al., 2021;Pham et al., 2021;Bischoff et al., 2022;Fatima and Lago, 2023;Funke et al., 2023;McGuire et al., 2023). Its importance as a topic has been further underlined by ongoing initiatives from the US National Science Foundation (NSF, 2022) and the UK Engineering and Physical Sciences Research Council (EPSRC, 2020(EPSRC, , 2021 to help develop research software as a sustainable, first-class, experimental scientific instrument (Goble, 2014). ...
... Several works have been carried out at the boundary of RE and sustainability [4]- [14]. Part of them focus on energymanagement aspects [6], [11]- [13], while others go beyond this perspective, and also consider the socio-economic dimension of sustainability [4], [5], [10], [15]- [17]. ...
Preprint
Full-text available
Designing systems that account for sustainability concerns demands for a better understanding of the \textit{impact} that digital technology interventions can have on a certain socio-technical context. However, limited studies are available about the elicitation of impact-related information from stakeholders, and strategies are particularly needed to elicit possible long-term effects, including \textit{negative} ones, that go beyond the planned system goals. This paper reports a case study about the impact of digitalisation in remote mountain areas, in the context of a system for ordinary land management and hydro-geological risk control. The elicitation process was based on interviews and workshops. In the initial phase, past and present impacts were identified. In a second phase, future impacts were forecasted through the discussion of two alternative scenarios: a dystopic, technology-intensive one, and a technology-balanced one. The approach was particularly effective in identifying negative impacts. Among them, we highlight the higher stress due to the excess of connectivity, the partial reduction of decision-making abilities, and the risk of marginalisation for certain types of stakeholders. The study posits that before the elicitation of system goals, requirements engineers need to identify the socio-economic impacts of ICT technologies included in the system, as negative effects need to be properly mitigated. Our study contributes to the literature with: a set of impacts specific to the case, which can apply to similar contexts; an effective approach for impact elicitation; and a list of lessons learned from the experience.
Article
Full-text available
Various approaches toward the development of sustainable software systems have been proposed by the requirements engineering community over the last decade. We conducted a systematic mapping study, analyzed 55 publications, and identified 29 approaches that have been published since the year 2000. We analyzed how the approaches evolved over time and how the publications and authors are influenced by each other. Furthermore, the approaches are analyzed in terms of their supported requirements engineering activities, along with the evidence provided in the publications. Additionally, we also analyzed which sustainability definitions have been used, if an iterative application of the approaches is discussed, and if the approaches also provide a tool-support for practitioners. We noticed an increase of publications on requirements engineering approaches toward sustainability in the last years, whereas a majority discuss sustainability based on the same multi-dimensional concept. Although different case studies have been already conducted, we noticed a lack of an industrial application. Our main findings concern the need of an evaluation on how the proposed requirements engineering approaches can also be applied in agile software development processes. Additionally, we also promote the development of supporting software tools to support practitioners in adapting the proposed approaches.
Article
Recently reported issues concerning the acceptance of artificial intelligence (AI) solutions after deployment stress the importance of requirements engineering (RE) for designing and delivering responsible AI systems. In this article, we argue that RE should not only be carefully conducted but also tailored for responsible AI.
Article
Full-text available
The relationship between language and thought is controversial. One hypothesis is that language fosters habits of processing information that are retained even in non-linguistic domains. In left-branching (LB) languages, modifiers usually precede the head, and real-time sentence comprehension may more heavily rely on retaining initial information in working memory. Here we presented a battery of working memory and short-term memory tasks to adult native speakers of four LB and four right-branching (RB) languages from Africa, Asia and Europe. In working memory tasks, LB speakers were better than RB speakers at recalling initial stimuli, but worse at recalling final stimuli. Our results show that the practice of parsing sentences in specific directions due to the syntax and word order of our native language not only predicts the way we remember words, but also other non-linguistic stimuli.
Article
Full-text available
Since the 1970s, interest in caring for the environment has gained traction and the environmental education movement has gained momentum. The Talloires Declaration was the first document to incorporate sustainable development into higher education. After that, higher education institutions assumed the social responsibility of training human resources with a sustainable vision. This study aimed to contribute to the design of indicators that could be used to evaluate the efficacy of the sustainability taught at the Universidad Autónoma de Guerrero (Autonomous University of Guerrero) in Mexico. We administered a survey to 63 teachers and 511 students from four academic units in high schools, and undergraduate and postgraduate programs. The answers were analyzed using the F-test and the variable descriptions. For the environmental, social and economic indicators, the satisfaction levels of teachers and students were more positive in graduate and undergraduate programs than in the high school. To determine the efficacy of the teaching function in terms of sustainable education, as well as to fulfill the commitments acquired to achieve sustainability, institutional processes need to be strengthened.
Conference Paper
Full-text available
Sustainability has emerged as a broad concern for society. Many engineering disciplines have been grappling with challenges in how we sustain technical, social and ecological systems. In the software engineering community, for example, maintainability has been a concern for a long time. But too often, these issues are treated in isolation from one another. Misperceptions among practitioners and research communities persist, rooted in a lack of coherent understanding of sustain- ability, and how it relates to software systems research and practice. This article presents a cross-disciplinary initiative to create a common ground and a point of reference for the global community of research and practice in software and sustainability, to be used for effectively communicating key issues, goals, values and principles of sustainability design for software-intensive systems. The centrepiece of this effort is the Karlskrona Manifesto for Sustainability Design, a vehicle for a much needed conversation about sustainability within and beyond the software community, and an articulation of the fundamental principles underpinning design choices that affect sustainability. We describe the motivation for developing this manifesto, including some considerations of the genre of the manifesto as well as the dynamics of its creation. We illustrate the collaborative reflective writing process and present the current edition of the manifesto itself. We assess immediate implications and applications of the articulated principles, compare these to current practice, and suggest future steps.
Article
Full-text available
Requirements Engineering (RE) has received much attention in research and practice due to its importance to software project success. Its inter-disciplinary nature, the dependency to the customer, and its inherent uncertainty still render the discipline dicult to investigate. This results in a lack of empirical data. These are necessary, however, to demonstrate which practically relevant RE problems exist and to what extent they matter. Motivated by this situation, we initiated the Naming the Pain in Requirements Engineering (NaPiRE) initiative which constitutes a globally distributed, bi-yearly replicated family of surveys on the status quo and problems in practical RE. In this article, we report on the qualitative analysis of data obtained from 228 companies working in 10 countries in various domains and we reveal which contemporary problems practitioners encounter. To this end, we analyse 21 problems derived from the literature with respect to their relevance and criticality in dependency to their context, and we complement this picture with a cause-e↵ect analysis showing the causes and e↵ects surrounding the most critical problems. Our results give us a better understanding of which problems exist and how they manifest themselves in practical environments. Thus, we provide a first step to ground contributions to RE on empirical observations which, until now, were dominated by conventional wisdom only.
Conference Paper
Full-text available
Sustainability is now a major concern in society, but there is little understanding of how it is perceived by software engineering professionals and how sustainability design can become an embedded part of software engineering process. This paper presents the results of a qualitative study exploring requirements engineering practitioners' perceptions and attitudes towards sustainability. It identifies obstacles and mitigation strategies regarding the application of sustainability design principles in daily work life. The results of this study reveal several factors that can prevent sustainability design from becoming a first class citizen in software engineering: software practitioners tend to have a narrow understanding of the concept of sustainability; organizations show limited awareness of its potential opportunities and benefits; and the norms in the discipline are not conducive to sustainable outcomes. These findings suggest the need for focused efforts in sustainability education, but also a need to rethink professional norms and practices.
Article
Full-text available
The sustainability analysis framework enables software developers to specifically consider environmental and social dimensions relative to technical and economic dimensions. The framework helps draw a more comprehensive picture of the relevant quality dimensions and, as a result, improve decision making. Sustainability is achievable only when accounting for all dimensions. Connections among the four dimensions involve different dependencies and stakeholders. The framework aims to capture the relevant qualities that characterize sustainability concerns of software systems, helping identify how these qualities influence each other with respect to the different aspects of sustainability. Moreover, interdependent quality requirements may influence one another, as in association/association-class influences among sustainability quality requirements. Integrating our four-dimensional sustainability analysis framework into the engineering processes of long-lived industrial systems provides valuable support to managers and engineers trying to satisfy not only economic and technical but also environmental and social sustainability requirements. The influences among the sustainability quality requirements must be determined by developers and/or stakeholders, as the framework can provide only the means for linking them but not the analysis itself. Constraints and parameters must be chosen by the developers, as it is not possible to list them in a way that is generic enough to be applicable in all circumstances and at the same time specific enough to be useful.
Conference Paper
Full-text available
Motivation: Software systems as we know them often have a economic purpose and/or fulfill human or social needs of their users. The economic purpose is analysed by economy itself; the latter goals are analysed in software engineering by user-centric techniques, such as service orientation. Yet, as software systems have an impact on the environment, environmental sustainability should be supported as a major goal for software development projects. Problem: Without applicable guidance, sustainability remains an untangible ideal. Therefore, we need a definition and a concrete decomposition of sustainability to relate it to software systems development. It is not sufficient to analyse environmental sustainbility on its own, but its interplay with other aspects in order to define appropriate actions and understand their effects. Principal idea: We analyse the dimensions of sustainability, their values with respective indicators, and activities to support them. These elements compose a conceptual model that allows for analysing and constructing actions both for a company or a product point of view. Contribution: We propose a generic sustainability model with instances for companies and projects from various case studies. We thus enable analysis, support and assessment of environmental sustainability in software engineering.
Article
Full-text available
Taking part in an experiment is "a special form of social interaction." The S plays a role and places himself under the control of the E; he may agree "to tolerate a considerable degree of discomfort, boredom, or actual pain, if required to do so." The very high degree of control inherent in the experimental situation itself may lead to difficulties in experimental design. The S "must be recognized as an active participant in any experiment." With understanding of factors intrinsic to experimental context, experimental method in psychology may become a more effective tool in predicting behavior in nonexperimental contexts. (PsycINFO Database Record (c) 2012 APA, all rights reserved)
Article
Full-text available
This article is the fifth installment of our series of articles on survey research. In it, we discuss what we mean by a population and a sample and the implications of each for survey research. We provide examples of correct and incorrect sampling techniques used in software engineering surveys.
Conference Paper
Full-text available
One of the most difficult problems that humanity currently faces is the sustainable development of our society, i.e. how to meet the needs of the present without compromising the ability of future generations to meet their own needs. Solving this challenge requires a multidisciplinary approach where researchers with different backgrounds combine their efforts. As software engineers, we can contribute to these efforts by offering existing software requirements modeling and analysis techniques as a means to integrate sustainability requirements in decision-making processes. In this paper, we use a popular language for modeling early requirements as a way to visualize the impact of alternative options on sustainability goals and to analyze the conflicts between sustainability and other problem-specific objectives. We apply this idea to the decision-making activities pertaining to the organization of the ICSE'09 conference itself.
Conference Paper
Full-text available
Many phenomena related to software development are qualitative in nature. Relevant measures of such phenomena are often collected using semi-structured interviews. Such interviews involve high costs, and the quality of the collected data is related to how the interviews are conducted. Careful planning and conducting of the interviews are therefore necessary, and experiences from interview studies in software engineering should consequently be collected and analyzed to provide advice to other researchers. We have brought together experiences from 12 software engineering studies, in which a total of 280 interviews were conducted. Four areas were particularly challenging when planning and conducting these interviews; estimating the necessary effort, ensuring that the interviewer had the needed skills, ensuring good interaction between interviewer and interviewees, and using the appropriate tools and project artifacts. The paper gives advice on how to handle these areas and suggests what information about the interviews should be included when reporting studies where interviews have been used in data collection. Knowledge from other disciplines is included. By sharing experience, knowledge about the accomplishments of software engineering interviews is increased and hence, measures of high quality can be achieved.
Conference Paper
Requirements activities performed in a software project are fundamental to address sustainable software systems and products. Although several techniques and frameworks have been proposed to describe sustainability requirements, there is a lack of process support for incorporating them in requirements centered processes. The objective of this paper is to understand the extent to which proposals to develop sustainability requirements can be mapped with the activities and tasks of the requirements processes that are part of ISO/IEC 12207. The set of reviewed papers, extracted from a previous systematic mapping study, was classified with respect to processes tasks. As a result, reviewed papers showed a trend to address tasks from the stakeholder requirements definition process, such as stakeholder identification, elicitation of requirements, and requirements analysis. However, activities and tasks within both the system requirements analysis process and software requirements analysis process need methodological support.
Conference Paper
The energy consumption of software is an increasing concern as the use of mobile applications, embedded systems, and data center-based services expands. While research in green software engineering is correspondingly increasing, little is known about the current practices and perspectives of software engineers in the field. This paper describes the first empirical study of how practitioners think about energy when they write requirements, design, construct, test, and maintain their software. We report findings from a quantitative, targeted survey of 464 practitioners from ABB, Google, IBM, and Microsoft, which was motivated by and supported with qualitative data from 18 in-depth interviews with Microsoft employees. The major findings and implications from the collected data contextualize existing green software engineering research and suggest directions for researchers aiming to develop strategies and tools to help practitioners improve the energy usage of their applications.
Conference Paper
Background: Most of the experiments in software engineering (SE) employ students as subjects. This raises concerns about the realism of the results acquired through students and adaptability of the results to software industry. Aim: We compare students and professionals to understand how well students represent professionals as experimental subjects in SE research. Method: The comparison was made in the context of two test-driven development experiments conducted with students in an academic setting and with professionals in a software organization. We measured the code quality of several tasks implemented by both subject groups and checked whether students and professionals perform similarly in terms of code quality metrics. Results: Except for minor differences, neither of the subject groups is better than the other. Professionals produce larger, yet less complex, methods when they use their traditional development approach, whereas both subject groups perform similarly when they apply a new approach for the first time. Conclusion: Given a carefully scoped experiment on a development approach that is new to both students and professionals, similar performances are observed. Further investigation is necessary to analyze the effects of subject demographics and level of experience on the results of SE experiments.
Chapter
The experiment data from the operation is input to the analysis and interpretation. After collecting experimental data in the operation phase, we want to be able to draw conclusions based on this data. To be able to draw valid conclusions, we must interpret the experiment data.
Conference Paper
In light of the looming threats of global climate change and environmental degradation, the software research community has begun to recognize the need to transition toward environmental sustainability. However, the process of detecting, specifying and evaluating requirements related to environmental sustainability within industry is often neglected or at best performed after the system is built. Most software engineering teams do not include any environmental sustainability expertise to account for the broad range of sustainability concerns related to software systems. To overcome the barriers of incorporating environmental sustainability into the requirements engineering process, this paper suggests the use of sustainability requirement patterns (SRPs), which will provide software engineers with guidance on how to write specific types of sustainability requirements. SRPs contain information on the situations in which the pattern should be used, a starting point for developing sustainability requirements, and any other information needed to develop requirements of a specific type. This research is part of an overarching research project on Software Engineering for Sustainability.
Article
The central question in research on linguistic relativity, or the Whorfian hypothesis, is whether people who speak different languages think differently. The recent resurgence of research on this question can be attributed, in part, to new insights about the ways in which language might impact thought. We identify seven categories of hypotheses about the possible effects of language on thought across a wide range of domains, including motion, color, spatial relations, number, and false belief understanding. While we do not find support for the idea that language determines the basic categories of thought or that it overwrites preexisting conceptual distinctions, we do find support for the proposal that language can make some distinctions difficult to avoid, as well as for the proposal that language can augment certain types of thinking. Further, we highlight recent evidence suggesting that language may induce a relatively schematic mode of thinking. Although the literature on linguistic relativity remains contentious, there is growing support for the view that language has a profound effect on thought. WIREs Cogni Sci 2011 2 253-265 DOI: 10.1002/wcs.104 For further resources related to this article, please visit the WIREs website. Copyright © 2010 John Wiley & Sons, Ltd.
Article
Evaluating the reliability of maturity level (ML) ratings is crucial for providing confidence in the results of software process assessments. This study investigates the dimensions underlying the maturity construct in the Capability Maturity Model (CMM) ...
Book
Like other sciences and engineering disciplines, software engineering requires a cycle of model building, experimentation, and learning. Experiments are valuable tools for all software engineers who are involved in evaluating and choosing between different methods, techniques, languages and tools. The purpose of Experimentation in Software Engineering is to introduce students, teachers, researchers, and practitioners to empirical studies in software engineering, using controlled experiments. The introduction to experimentation is provided through a process perspective, and the focus is on the steps that we have to go through to perform an experiment. The book is divided into three parts. The first part provides a background of theories and methods used in experimentation. Part II then devotes one chapter to each of the five experiment steps: scoping, planning, execution, analysis, and result presentation. Part III completes the presentation with two examples. Assignments and statistical material are provided in appendixes. Overall the book provides indispensable information regarding empirical studies in particular for experiments, but also for case studies, systematic literature reviews, and surveys. It is a revision of the authors' book, which was published in 2000. In addition, substantial new material, e.g. concerning systematic literature reviews and case study research, is introduced. The book is self-contained and it is suitable as a course book in undergraduate or graduate studies where the need for empirical studies in software engineering is stressed. Exercises and assignments are included to combine the more theoretical material with practical aspects. Researchers will also benefit from the book, learning more about how to conduct empirical studies, and likewise practitioners may use it as a "cookbook" when evaluating new methods or techniques before implementing them in their organization. © Springer-Verlag Berlin Heidelberg 2012. All rights are reserved.
Article
This paper presents a general statistical methodology for the analysis of multivariate categorical data arising from observer reliability studies. The procedure essentially involves the construction of functions of the observed proportions which are directed at the extent to which the observers agree among themselves and the construction of test statistics for hypotheses involving these functions. Tests for interobserver bias are presented in terms of first-order marginal homogeneity and measures of interobserver agreement are developed as generalized kappa-type statistics. These procedures are illustrated with a clinical diagnosis example from the epidemiological literature.
Article
The probability sampling techniques used for quantitative studies are rarely appropriate when conducting qualitative research. This article considers and explains the differences between the two approaches and describes three broad categories of naturalistic sampling: convenience, judgement and theoretical models. The principles are illustrated with practical examples from the author's own research.
Naming the pain in requirements engineering: Contemporary problems, causes, and effects in practice
  • D Fernández
  • S Wagner
  • M Kalinowski
  • M Felderer
  • P Mafra
  • A Vetró
  • T Conte
  • M.-T Christiansson
  • D Greer
  • C Lassenius
  • T Männistö
  • M Nayabi
  • M Oivo
  • B Penzenstadler
  • D Pfahl
  • R Prikladnicki
  • G Ruhe
  • A Schekelmann
  • S Sen
  • R Spinola
  • A Tuzcu
  • J L De La Vara
  • R Wieringa