225,633 research outputs found
Using Meta-Ethnography to Synthesize Research: A Worked Example of the Relations between Personality on Software Team Processes
Context: The increase in the number of qualitative and mixed-methods research published in software engineering has created an opportunity for further knowledge generation through the synthesis of studies with similar aims. This is particularly true in the research on human aspects because the phenomena of interest are often better understood using qualitative research. However, the use of qualitative synthesis methods is not widespread and worked examples of their consistent application in software engineering are needed. Objective: To explore the use of meta-ethnography in the synthesis of empirical studies in software engineering through an example using studies about the relations between personality and software team processes. Methods: We applied the seven phases of meta-ethnography on a set of articles selected from a previously developed systematic review, to assess the appropriateness of meta-ethnography in this domain with respect to ease of use, and usefulness and reliability of results. Results: Common concepts were identified through reading and interpreting the studies. Then, second order translations were built and used to synthesize a model of the relationships between personality and software team processes. Conclusions: Meta-ethnography is adequate in the synthesis of empirical studies even in the context of mixed-methods studies. However, we believe that the method should not be used to synthesize studies that are too disparate to avoid the development of gross generalizations, which tend to be fruitless and are contrary to the central tenets of interpretive research
Preliminary Survey on Empirical Research Practices in Requirements Engineering
Context and Motivation:\ud
Based on published output in the premium RE conferences and journals, we observe a growing body of research using both quantitative and qualitative research methods to help understand which RE technique, process or tool work better in which context. Also, more and more empirical studies in RE aim at comparing and evaluating alternative techniques that are solutions to common problems. However, until now there have been few meta studies of the current state of knowledge about common practices carried out by researchers and practitioners in empirical RE. Also, surprisingly little has been published on how RE researchers perceive the usefulness of these best practices.\ud
\ud
Objective:\ud
The goal of our study is to improve our understanding of what empirical practices are performed by researchers and practitioners in RE, for the purpose of understanding the extent to which the research methods of empirical software engineering are adopted in the RE community.\ud
\ud
Method:\ud
We surveyed the practices that participants of the REFSQ conference have been using in their empirical research projects. The survey was part of the REFSQ 2012 Empirical Track.\ud
\ud
Conclusions:\ud
We found that there are 15 commonly used practices out of a set of 27. The study has two implications: first it presents a list of practices that are commonly used in the RE community, and a list of practices that still remain to be practiced. Researchers may now make an informed decision on how to extend the practices they use in producing and executing their research designs, so that their designs get better. Second, we found that senior researchers and PhD students do not always converge in their perceptions about the usefulness of research practices. Whether this is all right and whether something needs to be done in the face of this finding remains an open question
Requirements Engineering that Balances Agility of Teams and System-level Information Needs at Scale
Context: Motivated by their success in software development, large-scale systems development companies are increasingly adopting agile methods and their practices. Such companies need to accommodate different development cycles of hardware and software and are usually subject to regulation and safety concerns. Also, for such companies, requirements engineering is an essential activity that involves upfront and detailed analysis which can be at odds with agile development methods. Objective: The overall aim of this thesis is to investigate the challenges and solution candidates of performing effective requirements engineering in an agile environment, based on empirical evidence. Illustrated with studies on safety and system-level information needs, we explore RE challenges and solutions in large-scale agile development, both in general and from the teams’ perspectives. Method: To meet our aim, we performed a secondary study and a series of empirical studies based on case studies. We collected qualitative data using interviews, focus groups and workshops to derive challenges and potential solutions from industry. Findings: Our findings show that there are numerous challenges of conducting requirements engineering in agile development especially where systems development is concerned. The challenges discovered sprout from an integration problem of working with agile methods while relying on established plan-driven processes for the overall system. We highlight the communication challenge of crossing the boundary of agile methods and system-level (or plan-driven) development, which also proves the coexistence of both methods. Conclusions: Our results highlight the painful areas of requirements engineering in agile development and propose solutions that can be explored further. This thesis contributes to future research, by establishing a holistic map of challenges and candidate solutions that can be further developed to make RE more efficient within agile environments
Understanding and supporting large-scale requirements management
Large market-driven software companies face new challenges in requirements engineering and management that emerged due to their recent extensive growth. At the same time, the pressure generated by competitors’ and users’ expectations demands being more competitive, creative and flexible to more quickly respond to a rapidly changing market situation. In the pursuit of staying competitive in this context, new ideas on how to improve the current software engineering practice are requested to help maintaining the engineering efficiency while coping with growing size and complexity of requirements engineering processes and their products. This thesis focuses on understanding and supporting large-scale requirements management for developing software products to open markets. In particular, this thesis focuses on the following requirements management activities in the mentioned context, namely: scope management, variability management and requirements consolidation. The goals of the research effort in this thesis are to provide effective methods in supporting mentioned requirements management activities in a situation when the size of them and their complexity require large time and skills efforts. Based on empirical research, where both quantitative and qualitative approaches were utilized, this thesis reports on possible improvements for managing variability and presents visualization techniques to assist scope management for large-scale software product development contexts. Both reported ideas are empirically evaluated in case studies in a large-scale context. Additionally, the benefits of using linguistic methods for requirements consolidation are investigated in a replicated experimental study based on a relevant industry scenario
Recommended from our members
Error Detection and Recovery in Software Development
Software rarely works as intended when it is first written. Software engineering research has long been concerned with assessing why software fails and who is to blame, or why a piece of software is flawed and how to prevent such faults in the future. Errors are examined in the context of bugs, elements of source code that produce undesirable, unexpected and unintended deviations in behaviour. Though error is a prevalent, mature topic within software engineering, error detection and recovery are less well understood. This research uses rich qualitative methods to study error detection and recovery in professional software development practice.
It has considered conceptual representations of error in software engineering research and trade literature. Using ethnographic principles, it has gathered accounts given by professional developers in interviews and in video-recorded paired interaction. Developers performing a range of tasks were observed, and findings were compared to theories of human error formed in psychology and safety science.
Three empirical studies investigated error from the perspective of developers, recon- structing the view they hold when errors arise, to build a catalogue of active encounters with error in conceptual design, at the desk and after the fact. Analyses were structured to consider development holistically over time, rather than in terms of discrete tasks. By placing emphasis on “local rationality”, analytical focus was redirected from outcomes toward factors that influence performance. The resultant observations are assembled in an account of error handling in software development as personal and situated (in time and the developer’s environment), with implications for the changing nature of expertise
Qualitative software engineering research -- reflections and guidelines
Researchers are increasingly recognizing the importance of human aspects in
software development and since qualitative methods are used to, in-depth,
explore human behavior, we believe that studies using such techniques will
become more common.
Existing qualitative software engineering guidelines do not cover the full
breadth of qualitative methods and knowledge on using them found in the social
sciences. The aim of this study was thus to extend the software engineering
research community's current body of knowledge regarding available qualitative
methods and provide recommendations and guidelines for their use.
With the support of an epistemological argument and a literature review, we
suggest that future research would benefit from (1) utilizing a broader set of
research methods, (2) more strongly emphasizing reflexivity, and (3) employing
qualitative guidelines and quality criteria.
We present an overview of three qualitative methods commonly used in social
sciences but rarely seen in software engineering research, namely
interpretative phenomenological analysis, narrative analysis, and discourse
analysis. Furthermore, we discuss the meaning of reflexivity in relation to the
software engineering context and suggest means of fostering it.
Our paper will help software engineering researchers better select and then
guide the application of a broader set of qualitative research methods.Comment: 30 page
Case Studies in Industry: What We Have Learnt
Case study research has become an important research methodology for
exploring phenomena in their natural contexts. Case studies have earned a
distinct role in the empirical analysis of software engineering phenomena which
are difficult to capture in isolation. Such phenomena often appear in the
context of methods and development processes for which it is difficult to run
large, controlled experiments as they usually have to reduce the scale in
several respects and, hence, are detached from the reality of industrial
software development. The other side of the medal is that the realistic
socio-economic environments where we conduct case studies -- with real-life
cases and realistic conditions -- also pose a plethora of practical challenges
to planning and conducting case studies. In this experience report, we discuss
such practical challenges and the lessons we learnt in conducting case studies
in industry. Our goal is to help especially inexperienced researchers facing
their first case studies in industry by increasing their awareness for typical
obstacles they might face and practical ways to deal with those obstacles.Comment: Proceedings of the 4th International Workshop on Conducting Empirical
Studies in Industry, co-located with ICSE, 201
- …