Refinement and resolution of just-in-time requirements in open source software and a closer look into non-functional requirements

Published on Jun 1, 2019in Journal of Industrial Information Integration
· DOI :10.1016/J.JII.2018.03.001
Tanmay Bhowmik6
Estimated H-index: 6
(MSU: Mississippi State University),
Anh Quoc Do2
Estimated H-index: 2
(MSU: Mississippi State University)
Abstract Just-in-time (JIT) requirements are characterized as not following the traditional requirement engineering approach, instead focusing on elaboration when the implementation begins. In this experience report, which is an invited extension of a recently published work [1], we first analyze both functional and non-functional JIT requirements from three successful open source software (OSS) projects, including Firefox, Lucene, and Mylyn, to explore the common activities that shaped those requirements. We identify a novel refinement and resolution process that all studied requirements followed from their inception to complete realization and subsequent release. Noticing some interesting phenomena more specific to non-functional requirements (NFRs), we conduct a second study examining 50 NFRs from the aforementioned three subject systems. This study reveals a slightly different process followed in the refinement and resolution of NFRs. It also provides further evidence that NFR refinement and resolution activities focus more on implementation refinement rather than requirement elaboration in the studied systems. Our research provides new insights into how OSS project teams create quality features from simple initial descriptions of JIT requirements, uncovers activities more particular to JIT requirements engineering (RE) for NFRs, and opens new avenues for further research in the emerging JIT RE field.
  • References (30)
  • Citations (4)
📖 Papers frequently viewed together
3 Citations
3 Authors (John Mylopoulos, ..., Neil A. Ernst)
4 Citations
2011IWPSE: International Workshop on Principles of Software Evolution
3 Authors (Neil A. Ernst, ..., J. Mylopolous)
6 Citations
78% of Scinapse members use related papers. After signing in, all features are FREE.
Cited By4
#1Yong Chen (TAMIU: Texas A&M International University)H-Index: 1
Industrial information integration engineering (IIIE) is a set of foundational concepts and techniques that facilitate the industrial information integration process. In recent years, many applicat...
12 CitationsSource
#1Naina Handa (LPU: Lovely Professional University)
#2Anil Sharma (LPU: Lovely Professional University)H-Index: 2
Last. Amardeep Gupta (DAV College, Chandigarh)
view all 3 authors...
Requirement Engineering is a critical area in the arena of Software Engineering. Non Functional Requirements (NFRs) are very important as Functional Requirements but often ignored. Especially the automated correct prediction and prioritization of Non Functional Requirements (NFRs) is highly needed. Non Functional Requirements can be predicted with the help of machine learning models. The Machine Learning models have shown more promising output than Natural Language Processing. In this paper, the...
#1Johan Linåker (Lund University)H-Index: 6
#2Björn Regnell (Lund University)H-Index: 35
Last. Daniela Damian (UVic: University of Victoria)H-Index: 34
view all 3 authors...
Abstract Context: In the Requirements Engineering (RE) process of an Open Source Software (OSS) community, an involved firm is a stakeholder among many. Conflicting agendas may create miss-alignment with the firm’s internal requirements strategy. In communities with meritocratic governance or with aspects thereof, a firm has the opportunity to affect the RE process in line with their own agenda by gaining influence through active and symbiotic engagements. Objective: The focus of this study has ...
#1Nan Niu (UC: University of Cincinnati)H-Index: 23
#2Daniel Méndez Fernández (TUM: Technische Universität München)H-Index: 16
Abstract This special issue tackles specific challenges of requirements engineering (RE) in agile and interconnected settings. Compared to traditional upfront RE, the practices in agile or open-source software projects tend to be just-in-time, characterized by lightweight representation and continuous refinement of requirements. The special issue features six articles, ranging from conceptual views through analytic reasonings to empirical studies. Altogether, the collection offers important and ...