Article

The Crowd in Requirements Engineering: The Landscape and Challenges

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.

... First: although the basic idea is rather similar, citizen platforms should not be confused with so-called citizen assemblies, which have been increasingly enacted in Europe in recent years [12]. Second: although somewhat similar in terms of technical implementations, citizen platforms are different from requirements engineering platforms designed for crowd-sourcing contexts [5,7]. Importantly, citizens in a society are not a some anonymous crowd in the Internet; they have a right to participate and have their voices heard on public policy matters affecting them. ...
... Finally, it may be that plain voting, while necessary for a democracy, is not particularly well-suited for requirements engineering, despite it sometimes appearing in the literature [7,16]. This point applies to co-design and co-creation as well. ...
... A memorable illustration of the point appeared in the Simpsons cartoon series; in an episode Homer had a chance to design a new car, and, expectedly, it failed miserably because a lot of unneeded and undesirable features were implemented. 7 Due to these and related reasons, it may be that citizen platforms are a poor solution to develop innovative systems. Though, unlike in product development, it must be added that innovativeness is not necessarily a primary or even a top-ranked criterion for the development of large socio-technical systems in the public sector context. ...
Preprint
Participatory citizen platforms are innovative solutions to digitally better engage citizens in policy-making and deliberative democracy in general. Although these platforms have been used also in an engineering context, thus far, there is no existing work for connecting the platforms to requirements engineering. The present paper fills this notable gap. In addition to discussing the platforms in conjunction with requirements engineering, the paper elaborates potential advantages and disadvantages, thus paving the way for a future pilot study in a software engineering context. With these engineering tenets, the paper also contributes to the research of large socio-technical software systems in a public sector context, including their implementation and governance.
... It is an evolving paradigm that helps to gather software requirements, enabling several stakeholders to claim their needs and expectations towards a particular software system (Abdullah et al. 2021). Performing RE activities through crowdsourcing is part of CrowdRE, which includes all approaches that engage a crowd of mostly unknown people to perform RE tasks or provide requirements-relevant information (Groen et al. , 2017. ...
... User feedback is an important resource in modern software development, often containing requirements that help address user concerns and desires for one or more software products (Tizard et al. 2022). This feedback can be provided in several forms, including online forums, social media, and app stores (Groen et al. 2017). In SECO, user feedback is typically used to guide the development of new features, bug fixes, and overall improvements to the product (van Oordt and Guzman 2021). ...
... According to Groen and Ochs (2019) and , considering user feedback about software products is a promising approach in CrowdRE. CrowdRE is an emerging paradigm for RE that promotes the active involvement of a "crowd" of the current and potential users of a software product and applies automated or semi-automated approaches to gather and analyze information from this crowd to derive validated user requirements (Groen et al. 2017). Johnson et al. (2020) highlighted CrowdRE-related challenges that arise in a SECO context, such as the need to motivate feedback across several distinct 'crowds' of users that influence monitoring the entire ecosystem's health. ...
Article
Full-text available
Requirements management is a process that aims to ensure that the needs of stakeholders are met through delivering adequate and quality software products. However, requirements management becomes challenging in open and dynamic environments with multiple stakeholders who belong to different organizations and collaborate over a common technological platform as in software ecosystems (SECO). In SECO, distinct crowds of users provide requirements, change requests, and bug reports through feedback across multiple communication channels. However, user feedback from a crowd is often not considered in requirements management activities in SECO because of its complexity. Our study aims to investigate whether and how user feedback from a crowd is considered in requirements management in SECO. To achieve this goal, we conducted a field study based on interviews with 20 professionals involved in activities in this context. We identified ten mechanisms used to gather user feedback from a crowd in requirements management in SECO and six approaches to analyze this feedback. User feedback from a crowd influences requirements management in SECO, making it more open and collaborative. Moreover, the continuous flow of user feedback makes crowd-based requirements engineering (CrowdRE) possible in SECO.
... Crowd engineering is based on the so-called wisdom of the crowd for product development, and assumes that groups can show an uncommon intelligence which exceeds that of the most intelligent individuals among them [43]. According to [11] the term is defined as "automated or semi-automated approaches to gather and analyze information from a crowd to derive validated user requirements". This term is rooted in the concepts of crowdsourcing and the wisdom of the crowd. ...
... In turn, the authors of [24] proposed a four-stage keyword-based machine approach to semi-automatically classify user requests in crowdsourcing scenarios. In [11] developed a novel crowd based RE approach for collecting user feedback which strongly focuses on a participatory vision. Intrinsically motivated users become crowd members because they benefit from software products that meet their needs. ...
... The approach used in the present work is based on the principle of crowd-based requirements engineering presented by [11]. The dataset we used for the case study was collected considering the rules of the wisdom of the crowd and crowd engineering, thus it represents wide and diverse user requirements. ...
Conference Paper
Full-text available
Crowd-based and data-intensive requirements engineering (RE) strategy is an approach for gathering and analyzing information from the general public or the so-called crowd to derive validated user requirements. This study aims to conceptualize the process of analyzing information from a crowd to achieve the fulfillment of user requirements. The created model is based on the ADO framework (Antecedents-Decisions-Outcomes). In the empirical part, we chose the Instagram mobile app and user feedback on it as a source of data for the validation of our approach. For extracting antecedents from user feedback, we applied the Latent Dirichlet Allocation (LDA), and then sentiment analysis was performed for each topic to prioritize the most urgent tasks delegated by the crowd. The main findings of our study reveal that using the wide spectrum of experience and knowledge of users (the wisdom of the crowd) from user opinions helps uncover different aspects that are helpful during software development. The conceptualization based on the ADO framework reflects and captures this process well. Thus, crowdsourcing is an alternative to traditional methods and techniques for requirements engineering.
... Therefore, this knowledge needs to be augmented by feedback directly obtained from farmers. Farming is an international occupation performed by a diverse group of practitioners who use a common pool of products and services, so farmers can be considered a crowd [4]. For this reason, it is worthwhile considering whether Crowdbased RE (CrowdRE) [4] approaches are suitable to support farmers in communicating their feedback and development companies in using this feedback to further improve their products. ...
... Farming is an international occupation performed by a diverse group of practitioners who use a common pool of products and services, so farmers can be considered a crowd [4]. For this reason, it is worthwhile considering whether Crowdbased RE (CrowdRE) [4] approaches are suitable to support farmers in communicating their feedback and development companies in using this feedback to further improve their products. ...
... Ferrari et al. [11] established that farmers in remote mountain areas benefit from digital technology in terms of efficiency, reduced work, and strengthened social bonds, but that it can also form a distraction, limit problem-solving capability, and impair working conditions. CrowdRE is an umbrella term for (semi-)automated approaches for collecting and analyzing information from a crowd to derive validated user requirements [4]. It presumes a crowd to be a sizable group of current or potential users with a common interest in a (software) product. ...
Preprint
Full-text available
The farming domain has seen a tremendous shift towards digital solutions. However, capturing farmers' requirements regarding Digital Farming (DF) technology remains a difficult task due to domain-specific challenges. Farmers form a diverse and international crowd of practitioners who use a common pool of agricultural products and services, which means we can consider the possibility of applying Crowd-based Requirements Engineering (CrowdRE) for DF: CrowdRE4DF. We found that online user feedback in this domain is limited, necessitating a way of capturing user feedback from farmers in situ. Our solution, the Farmers' Voice application, uses speech-to-text, Machine Learning (ML), and Web 2.0 technology. A preliminary evaluation with five farmers showed good technology acceptance, and accurate transcription and ML analysis even in noisy farm settings. Our findings help to drive the development of DF technology through in-situ requirements elicitation.
... These evolving user expectations result in requirements engineering challenges such as understanding expectations, deriving user requirements, and collecting user requirements. These challenges are difficult to address when users are remotely placed [24], [25]. Owing to rapidly changing technologies and competitive business environments, the expectations and needs of customers are also evolving rapidly [26]. ...
... Software users can convey their problems, needs, and suggestions if feedback channel is provided. From such data, a requirement engineer would extract actual requirements [25]. Currently, several tools dedicated to user feedback have been developed. ...
Article
Full-text available
The elicitation of requirements for systems in use is known as continuous requirements elicitation. Monitoring and feedback data have been used in the literature for the continuous elicitation and prioritization of requirements. Frameworks and techniques are available for gathering usage monitoring and user feedback data but the existing work does not correlate the user feedback and usage monitoring data for continuous requirements elicitation and prioritization, the scope of monitoring is limited and the elicitation and prioritization process involves manual intervention resulting in lower user satisfaction level. To overcome these limitations and achieve higher user satisfaction, our goal is to provide a mechanism to prioritize requirements through a recommender system in a semi-automated manner by correlating usage monitoring and user feedback data granular to the use case level. For this, we introduce a four-step method in which the first step deals with acquiring granular usage monitoring and user feedback data to the use-case level, and the second step performs the correlation of user feedback and usage monitoring data. Based on the correlation found, the requirements priorities are recommended in the third step. In this step, default priority is assigned using a matrix similar to the Eisenhower Decision Matrix. In the fourth step, this default priority is given a priority score according to the frequency of the feedback messages. We performed an evaluation by comparing the requirements prioritization list received from our proposed technique to the requirements prioritized by the requirements engineer. A comparison with existing works also shows the superiority of our approach. These comparisons indicate that requirements prioritization using correlated user feedback and usage monitoring data has resulted in achieving higher user satisfaction level towards requirements prioritization.
... Profit is an essential criterion for crowdsourcing as it helps organizations reduce the day-to-day cost of hiring, training, and supervising the employees. It helps the organization get profit on a project and obtain the desired result by sourcing innovative ideas by crowd participation (Groen et al., 2017). ...
... ,Machado et al. (2016),Qin et al. (2016),Groen et al. (2017) C4Quality Profit rather than an excellent job may regularly propel outsourcing organizations and specialists. That implies the work given by the organizations might return rapidly; however, it will miss the standards and quality that clients generally expect from administrationsSatzger et al. (2011),Olson and Rosacker (2013),Wu et al. (2013),Yang and Saremi (2015) ...
Article
Full-text available
COVID-19 has compelled every sector to shift towards virtualizing, and to curb the spread of this deadly virus, technologies like cloud computing, artificial intelligence, and IoT have played a vital role. Cloud-based crowdsourcing is a sourcing method through which organizations may post application development tasks as a contest, and the crowd may participate to win prizes or earn monetary support through online means. Many IT firms hesitate to adopt this methodology for competitive software development despite its advantages. This study's primary purpose is to discover the inhibitors and criteria restricting IT firms from incorporating cloud-based crowdsourcing in their workflow. An extensive literature review has been conducted to identify the inhibitors and criteria. The authors applied a novel three-phased methodology to the identified inhibitors to analyze them with mixed method approach. Authors have used the m-TISM method to develop a hierarchal model and find the interrelation between the identified inhibitors, which were further analyzed and segmented with the help of MICMAC analysis. The PF-AHP method was used to find the weightage of the identified criteria, and the PF-CoCoSo method was applied to find the ranking of the inhibitors considering the weights of the criteria. The study reveals that Difficulty in Price Fixing, Labor Exploitation, and Risk of Dependency are the critical challenges to adoption. The study reflects how the Contingency Management Theory and the Resource Dependency Theory acts as frameworks for navigating complexity and reducing risks in the ever-changing world of software development. The study concludes with key inputs that may help IT firms adopt and promote cloud-based crowdsourcing methodology for software development. These inputs may help companies to attract experienced developers who prefer working from home and prove worthy even during disruptions caused due to unprecedented situations.
... A number of empirical studies have shown that app store reviews contain valuable feedback and opinions, such as users' requirements and documentation of their experiences using the app and its features (Maalej and Pagano 2011;Seyff et al. 2010). Crowd-Based Requirements Engineering (Crow-dRE) is an approach that automates users' feedback analysis to derive validated requirements (Groen et al. 2017). Using apps reviews as a crowd-based source instead of conventional approaches (e.g., surveys or interviews) overcomes the challenge of engaging a large number of users with different socio-demographics (age, race, ethnicity, geographic area, etc.). ...
... Receiving feedback from various socio-demographics is essential as the apps audiences are mostly global. Utilizing the crowdbased feedback enhances the quality of the decision support process, hence, leading to a better software quality (Groen et al. 2017). ...
Article
Full-text available
Apps reviews hold a huge amount of informative user feedback that may be used to assist software practitioners in better understanding users’ needs, identify issues related to quality, such as privacy concerns and low efficiency, and evaluate the perceived users’ satisfaction with the app features. One way to efficiently extract this information is by using Aspect-Based Sentiment Analysis (ABSA). The role of ABSA of apps reviews is to identify all app’s aspects being reviewed and assign a sentiment polarity towards each aspect. This paper aims to build ABSA models using supervised Machine Learning (ML) and Deep Learning (DL) approaches. Our automated technique is intended to (1) identify the most useful and effective text-representation and task-specific features in both Aspect Category Detection (ACD) and Aspect Category Polarity, (2) empirically investigate the performance of conventional ML models when utilized for ABSA task of apps reviews, and (3) empirically compare the performance of ML models and DL models in the context of ABSA task. We built the models using different algorithms/architectures and performed hyper-parameters tuning. In addition, we extracted a set of relevant features for the ML models and performed an ablation study to analyze their contribution to the performance. Our empirical study showed that the ML model trained using Logistic Regression algorithm and BERT embeddings outperformed the other models. Although ML outperformed DL, DL models do not require hand-crafted features and they allow for a better learning of features when trained with more data.
... Paying attention to the direction of CrowdRE research is critical for companies to improve requirements elicitation [8], [9]. The ability to vastly increase the amount of feedback considered [10] is extremely valuable. ...
... User feedback from the 'crowd' is then transformed into requirements either through manual content analysis [11] or through automated approaches [12]. Groen et al. argue that CrowdRE can address the limitations of traditional RE methods, such as the limited scope and representation of user feedback [9]. By harnessing the collective intelligence of a crowd, organizations can utilize CrowdRE to identify and prioritize user needs and improve user engagement for their product [13]. ...
Preprint
Full-text available
The increasing importance of videos as a medium for engagement, communication, and content creation makes them critical for organizations to consider for user feedback. However, sifting through vast amounts of video content on social media platforms to extract requirements-relevant feedback is challenging. This study delves into the potential of TikTok and YouTube, two widely used social media platforms that focus on video content, in identifying relevant user feedback that may be further refined into requirements using subsequent requirement generation steps. We evaluated the prospect of videos as a source of user feedback by analyzing audio and visual text, and metadata (i.e., description/title) from 6276 videos of 20 popular products across various industries. We employed state-of-the-art deep learning transformer-based models, and classified 3097 videos consisting of requirements relevant information. We then clustered relevant videos and found multiple requirements relevant feedback themes for each of the 20 products. This feedback can later be refined into requirements artifacts. We found that product ratings (feature, design, performance), bug reports, and usage tutorial are persistent themes from the videos. Video-based social media such as TikTok and YouTube can provide valuable user insights, making them a powerful and novel resource for companies to improve customer-centric development.
... Researchers also emphasized the difficulties in eliciting BPAS, including (1) lack of process standardization, (2) process variability, (3) deprecated documents that do not faithfully represent the process performed [6,9,11,40], (4) lack of knowledge of the vocabulary used by participants in the organization [18,[45][46][47][48][49], and (5) lack of engagement of the stakeholders involved in the process [21,45,[49][50][51][52][53][54][55][56][57]. ...
... Ref. [46] introduced some techniques to elicit requirements in the health care domain. Some researchers employed artificial intelligence (AI) techniques such as K-nearest neighbor (KNN) [51,72,73], data mining [74], and natural language processing (NLP) [74][75][76][77][78] to automate or improve the requirement elicitation, especially to support a crowdsourcing technique [56]. Other methods transcribed the domain documentation into requirements [98,103]. ...
Article
Full-text available
Several organizations have invested in business process automation software to improve their processes. Unstandardized processes with high variance and unstructured data encumber the requirements elicitation for business process automation software. This study conducted a systematic literature review to discover methods to understand business processes and elicit requirements for business process automation software. The review revealed many methods used to understand business processes, but only one was employed to elicit requirements for business process automation software. In addition, the review identified some challenges and opportunities. The challenges of developing a business process automation software include dealing with business processes, meeting the needs of the organization, choosing the right approach, and adapting to changes in the process during the development. These challenges open opportunities for proposing specific approaches to elicit requirements in this context.
... With thousands of user reviews and comments on app stores and social media, prioritizing which comments should be analyzed by the development team to capture the requirements is challenging and demands an unreasonable amount of manual effort. The approach of tapping into the relevant information instilled in these reviews and posts on social media has been named Crowd-Based Requirements Engineering (CrowdRE) [6,23]. This approach has been studied before, especially alongside the use of machine learning and natural language processing (NLP) [4,15,24], with a variety of datasets, use-cases, and levels of automation accuracy [12]. ...
Conference Paper
A central challenge for ensuring the success of software projects is to assure the convergence of developers’ and users’ views. While the availability of large amounts of user data from social media, app store reviews, and support channels bears many benefits, it still remains unclear how software development teams can effectively use this data. We present an LLM-powered approach called DeeperMatcher that helps agile teams use crowd-based requirements engineering (CrowdRE) in their issue and task management.We are currently implementing a command-line tool that enables developers to match issues with relevant user reviews. We validated our approach on an existing English dataset from a well-known open-source project. Additionally, to check how well DeeperMatcher works for other languages, we conducted a single-case mechanism experiment alongside developers of a local project that has issues and user feedback in Brazilian Portuguese. Our preliminary analysis indicates that the accuracy of our approach is highly dependent on the text embedding method used. We discuss further refinements needed for reliable crowd-based requirements engineering with multilingual support.
... Previous work found that user feedback is essential for software quality and identifying areas of improvement (Pagano and Bruegge 2013). With the rise of mobile applications and social media, research proposed to elicit feedback from crowds of geographically distributed users (Groen et al. 2017) and called for the mass participation of software users during different stages of software development (Johann and Maalej 2015). Pagano and Maalej (2013), and Hoon (2013) were among the first to study user feedback in app stores. ...
Article
Full-text available
This work analyzes ethical concerns found in users’ app store reviews. We performed this study because ethical concerns in mobile applications (apps) are widespread, pose severe threats to end users and society, and lack systematic analysis and methods for detection and classification. In addition, app store reviews allow practitioners to collect users’ perspectives, crucial for identifying software flaws, from a geographically distributed and large-scale audience. For our analysis, we collected five million user reviews, developed a set of ethical concerns representative of user preferences, and manually labeled a sample of these reviews. We found that (1) users highly report ethical concerns about censorship, identity theft, and safety (2) user reviews with ethical concerns are longer, more popular, and lowly rated, and (3) there is high automation potential for the classification and filtering of these reviews. Our results highlight the relevance of using app store reviews for the systematic consideration of ethical concerns during software evolution.
... With thousands of user reviews and comments on app stores and social media, prioritizing which comments should be analyzed by the development team to capture the requirements is challenging and demands an unreasonable amount of manual effort. The approach of tapping into the relevant information instilled in these reviews and posts on social media has been named Crowd-Based Requirements Engineering (CrowdRE) [6,23]. This approach has been studied before, especially alongside the use of machine learning and natural language processing (NLP) [4,15,24], with a variety of datasets, use-cases, and levels of automation accuracy [12]. ...
Preprint
Full-text available
A central challenge for ensuring the success of software projects is to assure the convergence of developers' and users' views. While the availability of large amounts of user data from social media, app store reviews, and support channels bears many benefits, it still remains unclear how software development teams can effectively use this data. We present an LLM-powered approach called DeeperMatcher that helps agile teams use crowd-based requirements engineering (CrowdRE) in their issue and task management. We are currently implementing a command-line tool that enables developers to match issues with relevant user reviews. We validated our approach on an existing English dataset from a well-known open-source project. Additionally, to check how well DeeperMatcher works for other languages, we conducted a single-case mechanism experiment alongside developers of a local project that has issues and user feedback in Brazilian Portuguese. Our preliminary analysis indicates that the accuracy of our approach is highly dependent on the text embedding method used. We discuss further refinements needed for reliable crowd-based requirements engineering with multilingual support.
... Other studies pointed out the challenges of current RE practices regarding aspects that our results related to PMs, e.g., communication [67] and creativity [68]. Finally, current RE practices still struggle to gather feedback from a large crowd [69], or market-driven contexts [70], the general case of software startups that develop software products for a large pool of users. ...
Article
Full-text available
Context: Defining and designing a software product is not merely a technical endeavor, but also a socio-technical journey. As such, its success is associated with human-related aspects, such as the value users perceive. To handle this issue, the product manager role has become more evident in software-intensive companies. A unique, challenging context for these professionals is constituted by software startups, emerging companies developing novel solutions looking for sustainable and scalable business models. Objective: This study aims to describe the role of product managers in the context of software startups. Method: We performed a Socio-Technical Grounded Theory study using data from blog posts and interviews. Results: The results describe the product manager as a multidisciplinary, general role, not only guiding the product by developing its vision but also as a connector that emerges in a growing company, enabling communication of software development with other areas, mainly business and user experience. The professional performing this role has a background in one of these areas but a broad knowledge and understanding of key concepts of the other areas is needed. We also describe how differences of this role to other lead roles are perceived in practice. Conclusions: Our findings represent several implications for research, such as better understanding of the role transformation in growing software startups, practice, e.g., identifying the points to which a professional migrating to this role should pay attention, and the education of future software developers, by suggesting the inclusion of related topics in the education and training of future software engineers.
... User feedback is an important information source for developers to improve mobile application quality (Groen et al. 2017). Marketplaces such as AppStore and PlayStore allow users to submit feedback in the form of reviews for mobile applications. ...
Article
Mobile device applications are the largest segment of IS with an estimated 5 billion users. Yet despite their widespread and growing use, there is little research examining how these mobile applications evolve with each new release update. To ensure market success, developers need to satisfy their user base by incorporating users’ reviews and feedback on the one hand and exploring new features and content that allow them to stay competitive on the other. Drawing on the organizational learning and innovation literature, the findings of the present study suggest that a mix of these two activities of exploitation and exploration in consequent app updates is likely to result in the app’s success. We further contribute to this body of work by examining the influence of users’ online review characteristics on exploitation and exploration activities in app development. The findings suggest that users’ convergence on similar issues (review concurrence) is likely to favor an orientation prioritizing exploitation over exploration activities, while the number of user reviews (review volume) has a curvilinear relationship with it.
... In these dimensions, S20, S22, and S26 highlight the importance of the CrowdRE paradigm for requirements management in SECO. Crow-dRE refers to an emerging paradigm that promotes the active involvement of a "crowd" of stakeholders, including current and potential users of a software product [36]. ...
Article
Full-text available
Among the activities in requirements engineering (RE), requirements management ensures that requirements are tracked throughout their life cycle, changes are controlled, and inconsistencies are corrected. Requirements management has become increasingly critical in new ways of developing software and emerging contexts such as software ecosystems (SECO). The changing nature of the SECO introduces complexity in requirements management and results in varied flows of emergent requirements, making managing requirements in SECO challenging. Hence, understanding how requirements management is performed in SECO can help requirements managers improve their practices. This work aims to characterize requirements management in SECO. We have conducted a systematic mapping study (SMS) to achieve this goal. We selected 29 studies using a hybrid search strategy (database search and snowballing). We defined nine characteristics of requirements management in SECO that differentiate it from requirements management in traditional software development. We identified four types of approaches to support requirements management in SECO: tool, method, model, and practice. We found that only three selected studies present an assessment of their approaches. Finally, we characterize requirements management in SECO as an open, informal, collaborative, and decentralized process involving multi-party actors susceptible to power relations.
... We focus on the support of stakeholders who look to achieve a shared understanding asynchronously. Specifically, we look to accomplish this support through interaction techniques in a video player that allow stakeholders to discuss the video's contents while keeping the video directly accessible [11]. Our research goal is to find interaction techniques suited to the support of asynchronous discussions of vision videos by crowds. ...
... The identification and categorization of requirement-relevant information within large data sets unifies this and many comparable studies. Furthermore, the majority of studies are based on homogeneous datasets, often Natural Language datasets, which are analyzed using data mining [29,19]. Consequently, these methods can only be used to a limited extent to derive requirements-relevant information within heterogeneous vehicle bus datasets. ...
Chapter
In an environment of steadily increasing competitiveness, data driven product development offers a great opportunity for automotive manufacturers. Vehicle usage data can be used, for example, to optimize technical components for their real-life stress or to develop new customer functions based on real user behavior. With the increasing interconnectedness of modern vehicles, usage data in the form of vehicle bus signals can be used for data-driven development. However, the use of this data often poses a challenge because it was designed for internal communication of the vehicle rather than for later analysis. Accordingly, this paper presents how data mining (DM) methods can be used to extract customer behavior from this data. The central idea of the presented methods is the derivation and enrichment of the vehicle bus signals with metadata of the vehicle usage, for example but not exclusively by applying statistical methods like machine learning. The method of metadata enrichment is embedded in an adapted version of the Cross Industry Standard Process for Data Mining (CRISP-DM). The developed methods are presented based on concrete application examples and finally a general recommendation for action for data-driven product development in the automotive sector is derivedKeywordsData driven developmentData miningConnected car data analytics
... Crowd-based requirements engineering (CrowdRE) refers to automated or semi-automatic ways of obtaining and analysing data from a crowd in order to develop validated user requirements [24,25]. In traditional RE methods, a small number of people are interviewed or gathered in focus groups. ...
Article
Full-text available
Effective software requirement engineering plays a crucial role in bridging the gap between stakeholders and software products. The success of any software project heavily relies on accurately capturing, analysing, and documenting stakeholders' needs and expectations. This article provides a comprehensive review of various software requirement engineering techniques that facilitate the alignment of stakeholder requirements with software product development. Software requirements are extracted from a variety of stakeholders, but the decision of "what to develop" is a difficult one. Stakeholders' lack of clarity about what they want makes requirement elicitation a difficult and vital task. It explores the significance of understanding stakeholders' perspectives, discusses popular requirement engineering approaches, and highlights their strengths and limitations. The article concludes by emphasizing the importance of selecting appropriate requirement engineering techniques based on the project's context and offers recommendations for future research in this domain.
... With the rise of mobile applications and social media, research proposed to elicit feedback from crowds of geographically distributed users [19] and called for the mass participation of software users during different stages of software development [20]. Pagano and Maalej [21], and Hoon [22] were among the first to study user feedback in app stores. ...
Preprint
Full-text available
In this paper, we identified marginalized communities' ethical concerns about social platforms. We performed this identification because recent platform malfeasance indicates that software teams prioritize shareholder concerns over user concerns. Additionally, these platform shortcomings often have devastating effects on marginalized populations. We first scraped 586 marginalized communities' subreddits, aggregated a dataset of their social platform mentions and manually annotated mentions of ethical concerns in these data. We subsequently analyzed trends in the manually annotated data and tested the extent to which ethical concerns can be automatically classified by means of natural language processing (NLP). We found that marginalized communities' ethical concerns predominantly revolve around discrimination and misrepresentation, and reveal deficiencies in current software development practices. As such, researchers and developers could use our work to further investigate these concerns and rectify current software flaws.
... Reviews in app stores are a rich source of user feedback for crowd-based RE [10]. Pagano and Maalej [27] conducted an empirical study on user feedback in app stores, showing that app stores can serve as communication channels between users and developers, allowing to continuously receive bug reports, feature requests, praise, etc. Developers can use reviews to understand new user needs since they provide more insight than plain statistics into how apps are actually used. ...
Preprint
[Context and motivation] Requirements assessment by means of the Kano model is common practice. As suggested by the original authors, these assessments are done by interviewing stakeholders and asking them about the level of satisfaction if a certain feature is well implemented and the level of dissatisfaction if a feature is not or not well implemented. [Question/problem] Assessments via interviews are time-consuming, expensive, and can only capture the opinion of a limited set of stakeholders. [Principal ideas/results] We investigate the possibility to extract Kano model factors (basic needs, performance factors, and delighters) from a large set of user feedback (i.e., app reviews). We implemented, trained, and tested several classifiers on a set of 2,592 reviews. In a 10-fold cross-validation, a BERT-based classifier performed best with an accuracy of 0.928. To assess the classifiers' generalization, we additionally tested them on another independent set of 1,622 app reviews. The accuracy of the best classifier dropped to 0.725. We also show that misclassifications correlate with human disagreement on the labels. [Contribution] Our approach is a lightweight and automated alternative for identifying Kano model factors from a large set of user feedback. The limited accuracy of the approach is an inherent problem of missing information about the context in app reviews compared to comprehensive interviews, which also makes it hard for humans to extract the factors correctly.
Article
For software evolution, user feedback has become a meaningful way to improve applications. Recent studies show a significant increase in analysing end-user feedback from various social media platforms for software evolution. However, less attention has been given to the end-user feedback for low-rating software applications. Also, such approaches are developed mainly on the understanding of human annotators who might have subconsciously tried for a second guess, questioning the validity of the methods. For this purpose, we proposed an approach that analyzes end-user feedback for low-rating applications to identify the end-user opinion types associated with negative reviews(an issue or bug). Also, we utilized Generative Artificial Intelligence (AI), i.e., ChatGPT, as an annotator and negotiator when preparing a truth set for the deep learning (DL) classifiers to identify end-user emotion. For the proposed approach, we first used the ChatGPT Application Programming Interface(API) to identify negative end-user feedback by processing 71853 reviews collected from 45 apps in the Amazon store. Next, a novel grounded theory is developed by manually processing end-user negative feedback to identify frequently associated emotion types, including anger, confusion, disgust, distrust, disappointment, fear, frustration, and sadness. Next, two datasets were developed, one with human annotators using a content analysis approach and the other using ChatGPT API with the identified emotion types. Next, another round is conducted with ChatGPT to negotiate over the conflicts with the human-annotated dataset, resulting in a conflict-free emotion detection dataset. Finally, various DL classifiers, including LSTM, BILSTM, CNN, RNN, GRU, BiGRU and BiRNN, are employed to identify their efficacy in detecting end-users emotions by preprocessing the input data, applying feature engineering, balancing the data set, and then training and testing them using a cross-validation approach. We obtained an average accuracy of 94%, 94%, 93%, 92%, 91%, 91%, and 85%, with LSTM, BILSTM, RNN, CNN, GRU, BiGRU and BiRNN, respectively, showing improved results with the truth set curated with human and ChatGPT. Using ChatGPT as an annotator and negotiator can help automate and validate the annotation process, resulting in better DL performances.
Article
Demonstrating software early and responding to feedback is crucial in agile development. However, it is difficult for stakeholders who are not on‐site customers but end users, marketing people, or designers, and so forth to give feedback in an agile development environment. Successful graphical user interface (GUI) test executions can be documented and then demonstrated for feedback. In our new concept, GUI tests from behavior‐driven development (BDD) are recorded, augmented, and demonstrated as videos. A GUI test is divided into several GUI unit tests, which are specified in Gherkin, a semi‐structured natural language. For each GUI unit test, a video is generated during test execution. Test steps specified in Gherkin are traced and highlighted in the video. Stakeholders review these generated videos and provide feedback, for example, on misunderstandings of requirements or on inconsistencies. To evaluate the impact of videos in identifying inconsistencies, we asked 22 participants to identify inconsistencies between (1) given requirements in regular sentences and (2) demonstrated behaviors from videos with Gherkin specifications or from Gherkin specifications alone. Our results show that participants tend to identify more inconsistencies from demonstrated behaviors, which are not in accordance with given requirements. They tend to recognize inconsistencies more easily through videos than through Gherkin specifications alone. The types of inconsistency are threefold: The mentioned feature can be incorrectly implemented, not implemented, or an unspecified new feature. We use a fictitious example showing how this feedback helps a product owner and her team manage requirements. We conclude that GUI test videos can help stakeholders give feedback more effectively. By obtaining early feedback, inconsistencies can be resolved, thus contributing to higher stakeholder satisfaction.
Article
Online chatrooms serve as vital platforms for information exchange among software developers. With multiple developers engaged in rapid communication and diverse conversation topics, the resulting chat messages often manifest complexity and lack structure. To enhance the efficiency of extracting information from chat threads , automatic mining techniques are introduced for thread classification. However, previous approaches still grapple with unsatisfactory classification accuracy, due to two primary challenges that they struggle to adequately capture long-distance dependencies within chat threads and address the issue of category imbalance in labeled datasets. To surmount these challenges, we present a topic classification approach for chat information types named EAEChat. Specifically, EAEChat comprises three core components: the text feature encoding component captures contextual text features using a multi-head self-attention mechanism-based text feature encoder, and a siamese network is employed to mitigate overfitting caused by limited data; the data augmentation component expands a small number of categories in the training dataset using a technique tailored to developer chat messages, effectively tackling the challenge of imbalanced category distribution; the non-text feature encoding component employs a feature fusion model to integrate deep text features with manually extracted non-text features. Evaluation across three real-world projects demonstrates that EAEChat respectively achieves an average precision, recall, and F1-score of 0.653, 0.651, and 0.644, and it marks a significant 7.60% improvement over the state-of-the-art approachs. These findings confirm the effectiveness of our method in proficiently classifying developer chat messages in online chatrooms.
Article
Full-text available
Capturing users’ engagement is crucial for gathering feedback about the features of a software product. In a market-driven context, current approaches to collecting and analyzing users’ feedback are based on techniques leveraging information extracted from product reviews and social media. These approaches are hardly applicable in contexts where online feedback is limited, as for the majority of apps, and software in general. In such cases, companies need to resort to face-to-face interviews to get feedback on their products. In this paper, we propose to utilize biometric data, in terms of physiological and voice features, to complement product feedback interviews with information about the engagement of the user on product-relevant topics. We evaluate our approach by interviewing users while gathering their physiological data (i.e., biofeedback ) using an Empatica E4 wristband, and capturing their voice through the default audio-recorder of a common laptop. Our results show that we can predict users’ engagement by training supervised machine learning algorithms on biofeedback and voice data, and that voice features alone can be sufficiently effective. The best configurations evaluated achieve an average F1 \(\sim 70\% \) in terms of classification performance, and use voice features only. This work is one of the first studies in requirements engineering in which biometrics are used to identify emotions. Furthermore, this is one of the first studies in software engineering that considers voice analysis. The usage of voice features can be particularly helpful for emotion-aware feedback collection in remote communication, either performed by human analysts or voice-based chatbots, and can also be exploited to support the analysis of meetings in software engineering research.
Article
Full-text available
In the era of big data and ubiquitous internet connectivity, user feedback data plays a crucial role in product development and improvement. However, extracting valuable insights from the vast pool of unstructured text data found in user feedback presents significant challenges. In this paper, we propose an innovative approach to tackle this challenge by combining the Contextualized Topic Model (CTM) and the Masked and Permuted Pre-training for Language Understanding (MPNet) model. Our approach aims to create a more accurate and context-aware topic model that enhances the understanding of user experiences and opinions. To achieve this, we first search for the optimal number of topics, focusing on generating distinguishable, general, and unique topics. Next, we perform hyperparameter optimization to fine-tune the model and maximize coherence metrics. The result is an exceptionally effective model that outperforms established topic modeling methods, including LSI, NMF, LDA, HDP, NeuralLDA, ProdLDA, ETM, and the default CTM, achieving the highest coherence CV score of 0.7091. In this study, the combination of CTM and MPNet has proven highly effective in the context of user feedback topic modeling. This model excels in generating coherent, distinguishable, and highly relevant user feedback topics, capturing the nuanced nature of user feedback data. The topics generated from this model include ’Music and Audio Streaming,’ ’Application Performance,’ ’Banking, Financial Services, and Customer Support,’ ’User Experience,’ ’Other Topics,’ ’Application Content,’ and ’Application Features.’ Our contributions include a powerful tool for developers to gain deeper insights, prioritize actions, and enhance user satisfaction by incorporating feedback into future product iterations. Furthermore, we introduce a new dataset as an open-source resource for further exploration and validation of user feedback analysis techniques and general natural language processing applications. With our proposed approach, we strive to drive business success, improve user experiences, and inform data-driven decision-making processes, ultimately benefiting both developers and users alike.
Chapter
Full-text available
Users should always play a central role in the development of (software) solutions. The human-centered design (HCD) process in the ISO 9241-210 standard proposes a procedure for systematically involving users. However, due to its abstraction level, the HCD process provides little guidance for how it should be implemented in practice. In this chapter, we propose three concrete practical methods that enable the reader to develop usable security and privacy (USP) solutions using the HCD process. This chapter equips the reader with the procedural knowledge and recommendations to: (1) derive mental models with regard to security and privacy, (2) analyze USP needs and privacy-related requirements, and (3) collect user characteristics on privacy and structure them by user group profiles and into privacy personas. Together, these approaches help to design measures for a user-friendly implementation of security and privacy measures based on a firm understanding of the key stakeholders.
Chapter
Requirements Engineering aims at supporting the understanding of the purpose of a software system to be built, and at keeping the whole design and development process aligned with it. Research in Requirements Engineering (RE) provides methods and techniques to support various activities in the requirements life cycle, from requirements elicitation to requirements verification and validation. Artificial Intelligence (AI) techniques are more and more exploited in such methods, including natural language processing techniques, since many RE artefacts are expressed as natural language text; techniques based on optimisation, machine learning, and deep learning with the objective of improving the efficiency of the analysts and decision-makers performing RE activities. In this chapter, we focus on two specific use cases in RE, namely, requirements elicitation from textual user feedback and requirements prioritisation. We present solutions to the two problems based on AI techniques, specifically machine learning, natural language processing, and Genetic Algorithms. The application of the proposed methods in industrial contexts allowed us to validate their usefulness in terms of increased efficiency of organisations during their decision-making processes. Finally, we discuss the use cases in the broader context of the RE management process, highlighting opportunities and limits of the AI approaches and current trends in the use of AI in RE.
Article
In our current day and age, Earth suffers under the human ecological footprint, which influences our health and well-being. Technological solutions, including software-related ones, may help tackle these concerns for humanity. However, the development of such solutions requires special attention and effort to overcome human, public, and social barriers that might prevent them from being effective. The Requirements Engineering for Well-Being, Aging, and Health (REWBAH) workshop gathering in 2021 focused on addressing the challenge of how Requirements Engineering (RE) knowledge and practices can be applied to the development of information systems that support and promote long-lasting, sustained, and healthier behavior and choices by individuals. An interactive discussion among subject matter experts and practitioners participating in the REWBAH’21 revolved around several questions. In a subsequent qualitative analysis, the emerging themes were arranged in the sustainable-health RE (SusHeRE) framework to describe RE processes that address both sustainability and health goals. In this vision paper, we present our framework, which includes four main SusHeRE goals defined according to the changes in RE that we deem necessary for achieving a positive contribution of RE on sustainability and health. These goals involve improved RE Techniques, Multidisciplinary Expertise, Education Agenda, and Public and Social Ecology.
Chapter
[Context/Motivation] In crowd requirements engineering, users are asked specific questions (explicit pull feedback) to elicit requirements. Existing approaches collect explicit pull feedback by asking the same questions to all users. [Problem] Not all questions are meaningful for all users, e.g. regarding a functionality they have not yet used. Furthermore, without knowing the user behaviour giving rise to the feedback, it is difficult to understand the reasons for the feedback. These reasons are important for deriving requirements. [Principal ideas] Our idea is to use the user behaviour (implicit feedback) to adapt the collection of explicit pull feedback and the derivation of requirements. We embed this collection of explicit pull feedback into a novel approach that makes use of a rich palette of discussion elements from crowd-based requirements engineering to motivate user participation and to support requirements derivation. [Contribution]. To our best knowledge, this is the first approach that combines the collection of implicit feedback and explicit feedback with discussion elements from crowd-based requirements engineering. We sketch our approach and our research and evaluation plan regarding the application of the approach in the context of the interdisciplinary and large-scale research project SMART-AGE with around 500 users.KeywordsRequirements engineeringCrowdUser feedbackImplicit feedback
Chapter
[Context and motivation] Requirements assessment by means of the Kano model is common practice. As suggested by the original authors, these assessments are done by interviewing stakeholders and asking them about the level of satisfaction if a certain feature is well implemented and the level of dissatisfaction if a feature is not or not well implemented. [Question/problem] Assessments via interviews are time-consuming, expensive, and can only capture the opinion of a limited set of stakeholders. [Principal ideas/results] We investigate the possibility to extract Kano model factors (basic needs, performance factors, delighters, irrelevant) from a large set of user feedback (i.e., app reviews). We implemented, trained, and tested several classifiers on a set of 2,592 reviews. In a 10-fold cross-validation, a BERT-based classifier performed best with an accuracy of 92.8%. To assess the classifiers’ generalization, we additionally tested them on another independent set of 1,622 app reviews. The accuracy of the best classifier dropped to 72.5%. We also show that misclassifications correlate with human disagreement on the labels. [Contribution] Our approach is a lightweight and automated alternative for identifying Kano model factors from a large set of user feedback. The limited accuracy of the approach is an inherent problem of missing information about the context in app reviews compared to comprehensive interviews, which also makes it hard for humans to extract the factors correctly.KeywordsRequirements AnalysisKano ModelApp Store AnalyticsMachine LearningNLP
Article
Full-text available
App reviews provide a rich source of feature-related information that can support requirement engineering activities. Analysing them manually to find this information, however, is challenging due to their large quantity and noisy nature. To overcome the problem, automated approaches have been proposed for ‘feature-specific analysis’. Unfortunately, the effectiveness of these approaches has been evaluated using different methods and datasets. Replicating these studies to confirm their results and to provide benchmarks of different approaches is a challenging problem. We address the problem by extending previous evaluations and performing a comparison of these approaches. In this paper, we present two empirical studies. In the first study, we evaluate opinion mining approaches; the approaches extract features discussed in app reviews and identify their associated sentiments. In the second study, we evaluate approaches searching for feature-related reviews. The approaches search for users’ feedback pertinent to a particular feature. The results of both studies show these approaches achieve lower effectiveness than reported originally, and raise an important question about their practical use.
Conference Paper
Full-text available
Users of the Twitter microblogging platform share a vast amount of information about various topics through short messages on a daily basis. Some of these so called tweets include information that is relevant for software companies and could, for example, help requirements engineers to identify user needs. Therefore, tweets have the potential to aid in the continuous evolution of software applications. Despite the existence of such relevant tweets, little is known about their number and content. In this paper we report on the results of an exploratory study in which we analyzed the usage characteristics, content and automatic classification potential of tweets about software applications by using descriptive statistics, content analysis and machine learning techniques. Although the manual search of relevant information within the vast stream of tweets can be compared to looking for a needle in a haystack, our analysis shows that tweets provide a valuable input for software companies. Furthermore, our results demonstrate that machine learning techniques have the capacity to identify and harvest relevant information automatically.
Conference Paper
Full-text available
Open-Source Software (OSS) community members report bugs, request features or clarifications by writing messages (in unstructured natural language) to mailing lists. Analysts examine them dealing with an effort demanding and error prone task, which requires reading huge threads of emails. Automated support for retrieving relevant information and particularly for recognizing discussants’ intentions (e.g., suggesting, complaining) can support analysts, and allow them to increase the performance of this task. Online discussions are almost synchronous written conversations that can be analyzed applying computational linguistic techniques that build on the speech act theory. Our approach builds on this observation. We propose to analyze OSS mailing-list discussions in terms of the linguistic and non-linguistic acts expressed by the participants, and provide a tool-supported speech-act analysis method. In this paper we describe this method and discuss how to empirically evaluate it. We discuss the results of the first execution of an empirical study that involved 20 subjects.
Article
Full-text available
Users' feedback is vital to improve software quality and it provides developers with a rich knowledge on how software meets users' requirements in practice. Feedback informs how software should adapt, or be adapted, at runtime and what evolutionary actions to take in the next release. However, studies have noted that accommodating the different preferences of users on how feedback should be requested is a complex task and requires a careful engineering process. This calls for an adaptive feedback acquisition mechanisms to cater for such variability. In this paper, we tackle this problem by employing the concept of Persona to aid software engineers understand the various users' behaviours and improve their ability to design feedback acquisition techniques more efficiently. We create a set of personas based on a mixture of qualitative and quantitative studies and propose PAFA, a Persona-based method for Adaptive Feedback Acquisition.
Conference Paper
Full-text available
App Stores, such as Google Play or the Apple Store, allow users to provide feedback on apps by posting review comments and giving star ratings. These platforms constitute a useful electronic mean in which application developers and users can productively exchange information about apps. Previous research showed that users feedback contains usage scenarios, bug reports and feature requests, that can help app developers to accomplish software maintenance and evolution tasks. However, in the case of the most popular apps, the large amount of received feedback, its unstructured nature and varying quality can make the identification of useful user feedback a very challenging task. In this paper we present a taxonomy to classify app reviews into categories relevant to software maintenance and evolution, as well as an approach that merges three techniques: (1) Natural Language Processing, (2) Text Analysis and (3) Sentiment Analysis to automatically classify app reviews into the proposed categories. We show that the combined use of these techniques allows to achieve better results (a precision of 75% and a recall of 74%) than results obtained using each technique individually (precision of 70% and a recall of 67%).
Article
Full-text available
Social networks have changed our daily life and they have the potential to significantly influence and support Requirements Engineering (RE) activities. Social network-based RE approaches will allow us to overcome limitations of traditional approaches and allow end users to play a more prominent role in RE. They are key stakeholders in many software projects. However, involving end users is challenging, particularly when they are not within organizational reach. The goal of our work is to increase end user involvement in RE. In this paper we present an approach where we harness a social network to perform RE activities such as elicitation, prioritization and negotiation. Our approach was applied in three studies where students used Facebook to actively participate in RE activities of different projects. Although there are limitations, the results show that a popular social network site can support distributed RE.
Conference Paper
Full-text available
Crowdsourcing is an emerging business model where tasks are accomplished by the general public; the crowd. Crowdsourcing has been used in a variety of disciplines, including information systems development, marketing and operationalization. It has been shown to be a successful model in recommendation systems, multimedia design and evaluation, database design, and search engine evaluation. Despite the increasing academic and industrial interest in crowdsourcing, there is still a high degree of diversity in the interpretation and the application of the concept. This paper analyses the literature and deduces a taxonomy of crowdsourcing. The taxonomy is meant to represent the different configurations of crowdsourcing in its main four pillars: the crowdsourcer, the crowd, the crowdsourced task and the crowdsourcing platform. Our outcome will help researchers and developers as a reference model to concretely and precisely state their particular interpretation and configuration of crowdsourcing.
Article
Full-text available
Adaptive systems are characterized by the ability to monitor changes in their volatile world and react to monitored changes when needed. The ultimate goal of adaptation is that users' requirements are always met correctly and efficiently. Adaptation is traditionally driven by the changing state of the system internal and its surrounding environment. Such state should be monitored and analyzed to decide upon a suitable alternative behaviour to adopt. In this paper, we introduce another driver for adaptation which is the users' collective judgement on the alternative behaviors of a system. This judgmenet should be infered from the individual users' feedback given iteratviely during the lifetime of a system. Users' feedback reflects their main interest which is the validity and the quality of a system behaviour as a means to meet their requirements. We propose social adaptation which is a specific kind of adaptation that treats users' feedback, obtained during the software lifetime, as a primary driver in planning and guiding adaptation. We propose a novel requirements engineering modelling and analysis approach meant for systems adopting social adaptation. We evaluate our approach by applying it in practice and report on the results.
Book
Full-text available
Post-deployment user feedback such as feature requests and bug reports have the potential to improve software quality and reveal missing functionality. Nevertheless, in practice software companies often ignore user feedback and simply stick with predefined roadmaps and development plans, because of two main problems. First, in order to benefit from user feedback, developers have to analyze, consolidate, and structure it, which becomes time-consuming when feedback volume is high. Second, in order to prioritize their work, developers need to assess how many users are affected by a particular feedback, by identifying duplicate and similar feedback in a manual way. This thesis describes Portneuf, a framework which tackles both problems. It consolidates user feedback by employing a context-aware, hybrid recommender system. Moreover, it introduces FeedbackRank, an algorithm which allows developers to assess the importance of collected user feedback to the user community. We demonstrate the feasibility and applicability of our approach in two real-world applications. In a quasi-experiment with a large number of users, we showed that Portneuf increases developers' efficiency when working with user feedback. The framework significantly reduces the amount of user feedback duplicates by over 67%, with the recommender system showing a hit-rate of over 82%. Moreover, we obtained an average precision of around 76% for FeedbackRank, which suggests that it provides a valuable estimation of what is important to the user community.
Conference Paper
Full-text available
Crowdsourcing is an emerging and promising approach which involves delegating a variety of tasks to an unknown workforce—the crowd. Crowdsourcing has been applied quite successfully in various contexts from basic tasks on Amazon Mechanical Turk to solving complex industry problems, e.g. InnoCentive. Companies are increasingly using crowdsourcing to accomplish specific software development tasks. However, very little research exists on this specific topic. This paper presents an in-depth industry case study of crowdsourcing software development at a multinational corporation. Our case study highlights a number of challenges that arise when crowdsourcing software development. For example, the crowdsourcing development process is essentially a waterfall model and this must eventually be integrated with the agile approach used by the company. Crowdsourcing works better for specific software development tasks that are less complex and stand-alone without interdependencies. The development cost was much greater than originally expected, overhead in terms of company effort to prepare specifications and answer crowdsourcing community queries was much greater, and the time-scale to complete contests, review submissions and resolve quality issues was significant. Finally, quality issues were pushed later in the lifecycle given the lengthy process necessary to identify and resolve quality issues. Given the emphasis in software engineering on identifying bugs as early as possible, this is quite problematic.
Conference Paper
MyERP is a fictional developer of an Enterprise Resource Planning (ERP) system. Driven by the competition, they face the challenge of losing market share if they fail to de-ploy a Software as a Service (SaaS) ERP system to the European market quickly, but with high quality product. This also means that the requirements engineering (RE) activities will have to be performed efficiently and provide solid results. An additional problem they face is that their (potential) stakeholders are phys-ically distributed, it makes sense to consider them a "crowd". This competition paper suggests a Crowd-based RE approach that first identifies the crowd, then collects and analyzes their feedback to derive wishes and needs, and validate the results through prototyping. For this, techniques are introduced that have so far been rarely employed within RE, but more "traditional" RE techniques, will also be integrated and/or adapted to attain the best possible result in the case of MyERP.
Article
Online user feedback is principally used as an information source for evaluating customers' satisfaction for a given goods, service or software application. The increasing attitude of people towards sharing comments through the social media is making online user feedback a resource containing different types of valuable information. The huge amount of available user feedback has drawn the attention of researchers from different fields. For instance, data mining techniques have been developed to enable information extraction for different purposes, or the use of social techniques for involving users in the innovation of services and processes. Specifically, current research and technological efforts are put into the definition of platforms to gather and/or analyze multi-modal feedback. But we believe that the understanding of the type of concepts instantiated as information contained in user feedback would be beneficial to define new methods for its better exploitation. In our research, we focus on online explicit user feedback that can be considered as a powerful means for user-driven evolution of software services and applications. Up to our knowledge, a conceptualization of user feedback is still missing. With the purpose of contributing to fill up this gap we propose an ontology, for explicit online user feedback that is founded on a foundational ontology and has been proposed to describe artifacts and processes in software engineering. Our contribution in this paper concerns a novel user feedback ontology founded on a Unified Foundational Ontology (UFO) that supports the description of analysis processes of user feedback in software engineering. We describe the ontology together with an evaluation of its quality, and discuss some application scenarios.
Conference Paper
MyERP is a fictional developer of an Enterprise Resource Planning (ERP) system. Driven by the competition, they face the challenge of losing market share if they fail to deploy a Software as a Service (SaaS) ERP system to the European market quickly, but with high quality product. This also means that the requirements engineering (RE) activities will have to be performed efficiently and provide solid results. An additional problem they face is that their (potential) stakeholders are physically distributed, it makes sense to consider them a “crowd”. This competition paper suggests a Crowd-based RE approach that first identifies the crowd, then collects and analyzes their feedback to derive wishes and needs, and validate the results through prototyping. For this, techniques are introduced that have so far been rarely employed within RE, but more “traditional” RE techniques, will also be integrated and/or adapted to attain the best possible result in the case of MyERP.
Conference Paper
Stakeholders who are highly distributed form a large, heterogeneous online group, the so-called “crowd”. The rise of mobile, social and cloud apps has led to a stark increase in crowd-based settings. Traditional requirements engineering (RE) techniques face scalability issues and require the co-presence of stakeholders and engineers, which cannot be realized in a crowd setting. While different approaches have recently been introduced to partially automate RE in this context, a multi-method approach to (semi-)automate all RE activities is still needed. We propose “Crowd-based Requirements Engineering” as an approach that integrates existing elicitation and analysis techniques and fills existing gaps by introducing new concepts. It collects feedback through direct interactions and social collaboration, and by deploying mining techniques. This paper describes the initial state of the art of our approach, and previews our plans for further research.
Article
Mobile platforms and applications are an exciting and important phenomenon in today's software and business world. They are being woven into the fabric of daily life faster than expected. Continuous collection of user feedback enabling the improvement of platforms and applications becomes critical to support the continuous evolution of mobile systems. Particularly user feedback is needed to provide systems that best fit user needs. We have designed a mobile feedback approach, which enables users to document individual feedback on mobile systems in situ. This information can then be evaluated and used as new requirements by developers. Based on this solution we have developed a feedback app for two different mobile platforms. Furthermore, we have conducted a study with smartphone users applying this approach and communicating feedback on a mobile platform and pre-installed apps. The study revealed that users were able to give individual feedback and that a large amount of this feedback was considered to be useful for mobile system improvement by a platform developer.
Conference Paper
The World Wide Web and the services it provides are continually evolving. Even for a single time instant, it is a complex task to methodologically determine the infrastructure over which these services are provided and the corresponding effect on user perceived performance. For such tasks, researchers typically rely on active measurements or large numbers of volunteer users. In this paper, we consider an alternative approach, which we refer to as passive crowd-based monitoring. More specifically, we use passively collected proxy logs from a global enterprise to observe differences in the quality of service (QoS) experienced by users on different continents. We also show how this technique can measure properties of the underlying infrastructures of different Web content providers. While some of these properties have been observed using active measurements, we are the first to show that many of these properties (such as location of servers) can be obtained using passive measurements of actual user activity. Passive crowd-based monitoring has the advantages that it does not add any overhead on Web infrastructure, it does not require any specific software on the clients, but still captures the performance and infrastructure observed by actual Web usage.
Article
This review article discusses various techniques of environmental monitoring (EM) systems and what is required for the variations in hardware implementation and/or algorithmic logic. This review presents an overview of the existing state-of-the-art practices of environmental monitoring systems and is mainly focused on energy-efficient and low-cost environment monitoring systems. The following are some of the major factors that usually rule the development of EM systems, namely, energy efficiency, cost of the overall system, response time of the sensor module, good accuracy of the system, adequate signal-to-noise ratio, radio frequency interference/electromagnetic interference (RFI/EMI) rejection during varying atmospheric conditions and in inhomogeneous environments, a user friendly interface with the computer, and complexity of computation. The above concerns are also recognized by reference to research articles on environmental monitoring systems. Emphasis is on the necessity of robust systems that address all or most of the above mentioned criteria.
Article
An increasing part of software development is devoted to products that are offered to an open market with many customers. Market-driven development imposes special challenges for the requirements engineering process. This chapter provides an overview of the special characteristics of market-driven requirements engineering and describes the most important challenges of the area. Key elements of market-driven requirements engineering processes are presented together with a definition of process quality. Requirements state models and requirements repositories are also described and examples of typical solutions to progress tracking and data management are provided. The difficult problem of release planning is also discussed and an industrial example of a release planning process is given.
Conference Paper
Current requirements engineering practices for gathering user input are characterized by a number of communication gaps between users and engineers, which might lead to wrong requirements. The problem situations and context which underlie user input are either gathered back in time, or submitted with wrong a level of details. We think that making user input a first order concern of both software processes and software systems harbours many innovation opportunities. We propose and discuss a continuous and context-aware approach for communicating user input to engineering teams and other users, by a) instrumenting the problem domain, b) proactively recommending to share feedback and c) annotating graphical interfaces.
Article
In market-driven software development there is a strong need for support to handle congestion in the requirements engineering process, which may occur as the demand for short time-to-market is combined with a rapid arrival of new requirements from many different sources. Automated analysis of the continuous flow of incoming requirements provides an opportunity to increase the efficiency of the requirements engineering process. This paper presents empirical evaluations of the benefit of automated similarity analysis of textual requirements, where existing information retrieval techniques are used to statistically measure requirements similarity. The results show that automated analysis of similarity among textual requirements is a promising technique that may provide effective support in identifying relationships between requirements.
A Novel Method for Large Scale Requirement Elicitation
  • V Dheepa
  • D J Aravindhar
  • C Vijayalakshmi
V. Dheepa, D.J. Aravindhar, and C. Vijayalakshmi, "A Novel Method for Large Scale Requirement Elicitation," Int'l J. Eng. and Innovative Technology, vol. 2, no. 7, 2013, pp. 375-379.
A Novel Method for Large Scale Requirement Elicitation
  • dheepa