Faculty publications - Faculty of Information
Permanent URI for this collectionhttps://hdl.handle.net/1807/18289
Faculty at the iSchool are participating in groundbreaking, interdisciplinary research that investigates information in its many manifestations.
Browse
Browsing Faculty publications - Faculty of Information by Author "Betz, Stefanie"
Now showing 1 - 9 of 9
- Results Per Page
- Sort Options
Item Characterising Sustainability Requirements: A New Species, Red Herring, or Just an Odd Fish?(ACM Association for Computing Machinery, 2017-05) Venters, Colin C.; Seyff, Norbert; Becker, Christoph; Betz, Stefanie; Chitchyan, Ruzanna; Duboc, Leticia; McIntyre, Dan; Penzenstadler, BirgitRequirements articulating the needs of stakeholders are critical to successful system development and key to influencing their long-term effects. As the concept of sustainability has entered the discourse of a number of software-related computing fields, so has the term ‘sustainability requirement’. However, it is unclear whether sustainability requirements are and should be different from how we already understand software requirements. This paper presents the results of a corpus-assisted discourse analysis study that explored the concept of sustainability requirements in order to understand how the term is being used in software and requirements engineering and related fields. The results of this study reveal that the term ‘sustainability requirement’ is generally used ambiguously and reveals significant segmentation across different fields. Our detailed analysis of selected influential papers highlights the segmented use of the term and suggests key focus questions that need to be addressed to establish a shared operative understanding of the term.Item Crowd-Focused Semi-Automated Requirements Engineering for Evolution Towards Sustainability(IEE Press, 2018-08) Seyff, Norbert; Betz, Stefanie; Groher, Iris; Stade, Melanie; Chitchyan, Ruzanna; Duboc, Letícia; Penzenstadler, Birgit; Venters, Colin; Becker, ChristophContinuous requirements elicitation is an essential aspect of software product evolution to keep systems aligned with changing user needs. However, current requirements engineering approaches do not explicitly address sustainability in the evolu-tion of systems. Reasons include a lack of awareness and a lack of shared understanding of the concept of sustainability in the RE community. Identifying and analysing the effects of requirements regarding sustainability is challenging, as these effects can have an impact on multiple stakeholders and manifest themselves in one or more sustainability dimensions at different points in time. We argue that crowd-focused semi-automated requirements en-gineering allows the engagement of a large number of stakehold-ers (including users and domain experts) in a continuous cycle of negotiation regarding the potential effects of requirements on sustainability. Based on a motivating scenario, we introduce the idea of a platform for crowd-focused requirements engineering that supports the evolution towards sustainability. For the three key aspects of this platform, we present our ongoing work and discuss early results. We outline how the platform can be utilised to improve the broader awareness and understanding of sustain-ability, not only for the involved crowd but also for researchers and society in general.Item Everything is interrelated: Teaching Software Engineering for Sustainability(Proceedings of the 40th International Conference on Software Engineering, 2018-06) Penzenstadler, Birgit; Betz, Stefanie; Venters, Colin C.; Chitchyan, Ruzanna; Porras, Jari; Seyff, Norbert; Duboc, Leticia; Becker, ChristophSustainability has become an important concern across many disciplines, and software systems play an increasingly central role in addressing it. However, teaching students from software engineering and related disciplines to effectively act in this space requires interdisciplinary courses that combines the concept of sustainability with software engineering practice and principles. Yet, presently little guidance exist on which subjects and materials to cover in such courses and how, combined with a lack of reusable learning objects. This paper describes a summer school course on Software Engineering for Sustainability (SE4S). We provide a blueprint for this course, in the hope that it can help the community develop a shared approach and methods to teaching SE4S. Practical lessons learned from delivery of this course are also reported here, and could help iterate over the course materials, structure, and guidance for future improvements. The course blueprint, availability of used materials and report of the study results make this course viable for replication and further improvement.Item Requirements: The Key to Sustainability(2016) Becker, Christoph; Betz, Stefanie; Chitchyan, Ruzanna; Duboc, Leticia; Easterbrook, Steve M.; Penzenstadler, Birgit; Seyff, Norbet; Venters, Colin C.Software's critical role in society demands a paradigm shift in the software engineering mind-set. This shift's focus begins in requirements engineering. This article is part of a special issue on the Future of Software Engineering.Item Software Engineering for Sustainability: Find the Leverage Points!(Institute of Electrical and Electronics Engineers, 2018-01-11) Penzenstadler, Birgit; Duboc, Leticia; Venters, Colin; Betz, Stefanie; Seyff, Norbert; Wnuk, Krzysztof; Chitchyan, Ruzanna; Easterbrook, Steve; Becker, ChristophWe as software engineers are responsible for the long-term consequences of the systems we design - including impacts on the wider environmental and societal sustainability. However, field lacks analytical tools for understanding these potential impacts while designing a system, nor for identifying opportunities for how to use software to bring about broader societal transformations. In this article we explore how the concept of leverage points can be used to make sustainability issues more tangible in systems design. Using the example of software for transportation systems, we illustrate how leverage points can help software engineers map out and investigate the wider system in which the software resides, such that we can use software as an effective tool for engineering a more sustainable world.Item Software sustainability: Research and practice from a software architecture viewpoint(Elsevier, 2017-12-20) Venters, Colin C.; Capilla, Rafael; Betz, Stefanie; Penzenstadler, Birgit; Crick, Tom; Crouch, Steve; Nakagawa, Elisa Yumi; Becker, Christoph; Carrillo, CarlosContext: Modern societies are highly dependent on complex, large-scale, software-intensive systems that increasingly operate within an environment of continuous availability, which is challenging to maintain and evolve in response to the inevitable changes in stakeholder goals and requirements of the system. Software architectures are the foundation of any software system and provide a mechanism for reasoning about core software quality requirements. Their sustainability -- the capacity to endure in changing environments -- is a critical concern for software architecture research and practice. Problem: Accidental software complexity accrues both naturally and gradually over time as part of the overall software design and development process. From a software architecture perspective, this allows several issues to overlap including, but not limited to: the accumulation of technical debt design decisions of individual components and systems leading to coupling and cohesion issues; the application of tacit architectural knowledge resulting in unsystematic and undocumented design decisions; architectural knowledge vaporization of design choices and the continued ability of the organization to understand the architecture of its systems; sustainability debt and the broader cumulative effects of flawed architectural design choices over time resulting in code smells, architectural brittleness, erosion, and drift, which ultimately lead to decay and software death. Sustainable software architectures are required to evolve over the entire lifecycle of the system from initial design inception to end-of-life to achieve efficient and effective maintenance and evolutionary change. Method: This article outlines general principles and perspectives on sustainability with regards to software systems to provide a context and terminology for framing the discourse on software architectures and sustainability. Focusing on the capacity of software architectures and architectural design choices to endure over time, it highlights some of the recent research trends and approaches with regards to explicitly addressing sustainability in the context of software architectures. Contribution: The principal aim of this article is to provide a foundation and roadmap of emerging research themes in the area of sustainable software architectures highlighting recent trends, and open issues and research challenges.Item Sustainability Design in Requirements Engineering: State of Practice(2016-05) Chitchyan, Ruzanna; Becker, Christoph; Betz, Stefanie; Duboc, Leticia; Penzenstadler, Birgit; Seyff, Norbert; Venters, Colin C.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.Item Tailoring Requirements Negotiation to Sustainability(IEE Press, 2018-08) Seyff, Norbert; Betz, Stefanie; Duboc, Leticia; Venters, Colin C.; Becker, Christoph; Chitchyan, Ruzanna; Penzenstadler, Birgit; Noebauer, MarkusRequirements Engineering (RE) plays a critical role in software system development and is argued to be the key leverage point for practitioners who want to design sustainable software-intensive systems. However, existing RE methods and tools do not explicitly facilitate the discussion and negotiation of sustainability-related concerns. This leads to insufficient or onedimensional perceptions of sustainability. In this paper, we discuss our understanding of sustainability and its relationship with requirements. Based on the outcomes of this discussion, we have extended the WinWin Negotiation Model by incorporating sustainability concepts so that the negotiation also includes the ability to consider the impact of requirements on sustainability. Applying this negotiation method in an exploratory industrial case study, we have learned that this approach stimulates the discussion on sustainability and its multiple dimensions. It also allows practitioners to reflect on requirements and their effects on sustainability. However, we have also observed that further in-depth requirements analysis is needed to analyse the long-term effects of requirements regarding sustainability.Item Trade-off Decisions Across Time in Technical Debt Management:A Systematic Literature Review(Association for Computing Machinery, 2018) Becker, Christoph; Chitchyan, Ruzanna; Betz, Stefanie; McCord, CurtisTechnical Debt arises from decisions that favour short-term outcomes at the cost of longer-term disadvantages. They may be taken knowingly or based on missing or incomplete awareness of the costs; they are taken in different roles, situations, stages and ways. Whatever technical or business factor motivate such decisions, they always imply a trade-off in time, a ‘now vs. later’. How exactly are such decisions made, and how have they been studied? This paper analyzes how decisions on technical debt are studied in software engineering via a systematic literature review. It examines the presently published Software Engineering research on Technical Debt, with a particular focus on decisions involving time. The findings reveal surprising gaps in published work on empirical research in decision making. We observe that research has rarely studied how decisions are made, even in papers that focus on the decision process. Instead, most attention is focused on engineering measures and feeding them into an idealized decision making process. These findings lead to a set of recommendations for future empirical research on Technical Debt.