• Home
  • SINTEF
  • Department of Software Engineering, Safety and Security
  • Tore Dybå
Tore Dybå

Tore Dybå
SINTEF | Stiftelsen for industriell og teknisk forskning · Department of Software Engineering, Safety and Security

Dr. Ing.

About

102
Publications
313,681
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
14,019
Citations
Introduction
My research interests are related to organizational and socio-technical aspects of software development and how software development can be improved. I am particularly concerned with providing rigorous research results on topics of importance to the software industry.
Additional affiliations
January 2010 - June 2015
University of Oslo
Position
  • Adjunct Full Professor
Description
  • Classes and guest lectures in MSc and PhD courses in software process improvement, agile software development, agile project management, evidence-based software engineering, and empirical research methods.
January 2010 - June 2015
University of Oslo
Position
  • Adjunct Full Professor
January 2002 - December 2009
Simula Research Laboratory
Position
  • Adjunct Scientist
Education
September 1997 - December 2001
Norwegian University of Science and Technology
Field of study
  • Computer and Information Science
September 1982 - June 1987
Norwegian Institute of Technology
Field of study
  • Electrical Engineering and Computer Science

Publications

Publications (102)
Chapter
Full-text available
Agile software development represents a new approach for planning and managing software projects. It puts less emphasis on up-front plans and strict control and relies more on informal collaboration, coordination, and learning. This chapter provides a characterization and definition of agile project management based on extensive studies of industri...
Article
Full-text available
Agile software development represents a major departure from traditional, plan-based approaches to software engineering. A systematic review of empirical studies of agile software development up to and including 2005 was conducted. The search strategy identified 1996 studies, of which 36 were identified as empirical studies. The studies were groupe...
Article
Full-text available
Software managers and practitioners often must make decisions about what technologies to employ on their projects. They might be aware of problems with their current development practices (for example, production bottlenecks or numerous defect reports from customers) and want to resolve them. Or, they might have read about a new technology and want...
Conference Paper
Full-text available
Context: The authors wanted to assess whether the quality of published human-centric software engineering experiments was improving. This required a reliable means of assessing the quality of such experiments. Aims: The aims of the study were to confirm the usability of a quality evaluation checklist, determine how many reviewers were needed per pa...
Conference Paper
Full-text available
Our objective is to perform an empirical investigation on factors affecting software developer acceptance and utilization of electronic process guides (EPGs) and to discuss the implications of the findings. The potential benefits of EPGs can only be realized when key capabilities are not only adopted, but also infused across the organization. We co...
Article
Full-text available
The authors provide advice from one of the largest development programs in Norway, where 12 scrum teams combined agile practices with traditional project management. The Perform program delivered 12 releases over a four-year period, finishing on budget and on time. The authors summarize 10 key lessons on five crucial topics that are relevant to oth...
Preprint
We describe advice derived from one of the largest development programs in Norway, where twelve Scrum teams combined agile practices with traditional project management. The Perform program delivered 12 releases over a four-year period, and finished on budget and on time. In this article, we summarize 12 key lessons on five crucial topics, relevant...
Article
To celebrate the 200th issue of IEEE Software, Voice of Evidence uses data to examine whether it has helped bridge the gap between research and practice by extracting actionable lessons from the body of research.
Chapter
Full-text available
It is relatively easy to generate and acquire much data from software engineering activities. The challenge is to obtain meaning from the data that represents something true, rather than spurious. To increase knowledge and insight, more theories should be built and used.
Chapter
Full-text available
A decade ago, Kitchenham, Dybå and Jørgensen coined the term and provided the foundations for evidence-based software engineering (EBSE). A trilogy of papers was written for researchers, practitioners, and educators. They suggested that practitioners consider EBSE as a mechanism to support and improve their technology adoption decisions, and that r...
Article
Full-text available
Small, self-directed teams are central in agile development. This article investigates the effect of teamwork quality on team performance, learning and work satisfaction in agile software teams, and whether this effect differs from that of traditional software teams. A survey was administered to 477 respondents from 71 agile software teams in 26 co...
Article
Team performance has been studied in many disciplines, from management science and organizational psychology to information systems. Key findings from research in these disciplines have included the importance of establishing a common mental model in a team. Many studies in other disciplines have investigated software development teams because they...
Article
Full-text available
Case studies are largely used for investigating software engineering practices. They are characterized by their flexible nature, multiple forms of data collection, and are mostly informed by qualitative data. Synthesis of case studies is necessary to build a body of knowledge from individual cases. There are many methods for such synthe- sis, but t...
Conference Paper
Full-text available
In globally distributed software projects the testing expertise may be scattered across multiple locations. We describe and discuss a globally distributed agile project at DNV GL Software, a multinational provider of software for a safer, smarter and greener future in the energy, process and maritime industries. DNV GL Software is headquartered in...
Conference Paper
Full-text available
Abstract— Virtual teams, with a high level of interdependence and cooperation among team members, are the building block of successful global software organizations. While becoming agile helps on communication and collaboration, such teams meet several challenges in the form of cultural differences, language barriers, national traditions, different...
Article
Context: The trustworthiness of research results is a growing concern in many empirical disciplines. Aim: The goals of this paper are to assess how much the trustworthiness of results reported in software engineering experiments is affected by researcher and publication bias, given typical statistical power and significance levels, and to suggest i...
Article
Full-text available
Skilled workers are crucial to the success of software development. The current practice in research and industry for assessing programming skills is mostly to use proxy variables of skill, such as education, experience, and multiple-choice knowledge tests. There is as yet no valid and efficient way to measure programming skill. The aim of this res...
Article
Full-text available
The capacity to reflect on past practice is important for continuous learning in software development. Reflection often takes place in cycles of experience followed by conscious application of learning from that experience, during which a software developer might explore comparisons, ponder alternatives, take diverse perspectives, and draw inferenc...
Article
Full-text available
Context: Code smells are assumed to indicate bad design that leads to less maintainable code. However, this assumption has not been investigated in controlled studies with professional software developers. Aim: This paper investigates the relationship between code smells and maintenance effort. Method: Six developers were hired to perform three mai...
Article
Full-text available
Context: Several text books and papers published between 2000 and 2002 have attempted to introduce experimental design and statistical methods to software engineers undertaking empirical studies. Objective: This paper investigates whether there has been an increase in the quality of human-centric experimental and quasi-experimental journal papers o...
Conference Paper
Full-text available
Empirical research is starting to be more used in the area of requirements elicitation. It mostly focuses on the effects of techniques in the final product of the elicitation process in laboratory experiments. Our argument is that future advances in requirements elicitation practice are unlikely to come from such studies. Requirements elicitation r...
Article
Full-text available
What works for whom, where, when, and why is the ultimate question of evidence-based software engineering. Still, the empirical research seems mostly concerned with identifying universal relationships that are independent of how work settings and other contexts interact with the processes important to software practice. Questions of “What is best?”...
Conference Paper
Full-text available
Ethnography is about the adoption of a cultural lens to observe and interpret events, actions, and behaviors, ensuring that they are placed in a relevant and meaningful context. Using this approach, it is possible to capture and analyze software development practices. Our aims are to illustrate the use of an ethnographic approach in a case study of...
Conference Paper
Full-text available
Context is a central concept in empirical software engineering. It is one of the distinctive features of the discipline and it is an indispensable part of software practice. It is likely responsible for one of the most challenging methodological and theoretical problems: study-to-study variation in research findings. Still, empirical software engin...
Article
Full-text available
A close look at the evidence underpinning the original concept of lean production and its popular interpretation reveals the inherent challenges of measuring and interpreting evidence for performance differences.
Article
ContextAgile software development changes the nature of collaboration, coordination, and communication in software projects.Objective Our objective was to understand the challenges of shared decision-making in agile software development teams.Method We designed a multiple case study consisting of four projects in two software product companies that...
Article
ContextDuring systematic literature reviews it is necessary to assess the quality of empirical papers. Current guidelines suggest that two researchers should independently apply a quality checklist and any disagreements must be resolved. However, there is little empirical evidence concerning the effectiveness of these guidelines.AimsThis paper inve...
Conference Paper
Full-text available
Software development is most often done in teams, where human and cooperative aspects are vital for team effectiveness. This has been the topic of study in several disciplines, and in this article we describe three team effectiveness models from other fields. We discuss priorities for future studies on software teams, and ask: Do we need our own ef...
Conference Paper
Full-text available
Escalating commitment is a common and costly phenomenon in software projects in which decision-makers continue to invest resources to a failing course of action. We conducted a longitudinal case study exploring the effect of daily meetings on escalating commitment. This was done in an agile project building software for the oil and gas industry. By...
Article
Full-text available
Software ecosystems have become a defined and active field of research based on the recent emergence of new open business models leading to new roles and patterns for collaboration, innovation, and value proposition. In this paper we look into the theoretical foundations of this new research field. We review recent publications to describe the pres...
Conference Paper
Full-text available
Thematic analysis is an approach that is often used for identifying, analyzing, and reporting patterns (themes) within data in primary qualitative research. 'Thematic synthesis' draws on the principles of thematic analysis and identifies the recurring themes or issues from multiple studies, interprets and explains these themes, and draws conclusion...
Conference Paper
Full-text available
The skills of software developers are important to the success of software projects. Also, when studying the general effect of a tool or method, it is important to control for individual differences in skill. However, the way skill is assessed is often ad hoc, or based on unvalidated methods. According to established test theory, validated tests of...
Conference Paper
Full-text available
Synthesis of case studies is different from synthesis of purely quantitative studies, for example, in that sampling and analysis in primary studies have been carried out differently, and that primary results are of a different nature. The objective of this research is to identify what challenges should be considered when choosing and using a method...
Article
Context: In software development, Testing is an important mechanism both to identify defects and assure that completed products work as specified. This is a common practice in single-system development, and continues to hold in Software Product Lines ...
Article
ContextComparing and contrasting evidence from multiple studies is necessary to build knowledge and reach conclusions about the empirical support for a phenomenon. Therefore, research synthesis is at the center of the scientific enterprise in the software engineering discipline.ObjectiveThe objective of this article is to contribute to a better und...
Article
ContextJob rotation is a widely known approach to increase knowledge redundancy but empirical evidence regarding introduction and adoption in software development is scant. A lack of knowledge redundancy is a limiting factor for collaboration, flexibility, and coordination within teams and within the organization.ObjectiveThe scientific objective o...
Conference Paper
Full-text available
Although Scrum is an important topic in software engineering and information systems, few longitudinal industrial studies have investigated the effects of Scrum on software quality, in terms of defects and defect density, and the quality assurance process. In this paper we report on a longitudinal study in which we have followed a project over a th...
Conference Paper
Full-text available
Synthesizing the evidence from a set of studies that spans many countries and years, and that incorporates a wide variety of research methods and theoretical perspectives, is probably the single most challenging task of performing a systematic review. In this paper, we perform a tertiary review to assess the types and methods of research synthesis...
Article
Context Software development depends significantly on team performance, as does any process that involves human interaction Objective Most current development methods argue that teams should self-manage Our objective is thus to provide a better understanding of the nature of self-managing agile teams, and the teamwork challenges that arise when int...
Article
Full-text available
Agile software development is an important topic in software engineering and information systems. This chapter provides a characterization and definition of agile software development, an overview of research through a summary of existing overview studies, an analysis of the research literature so far, and an introduction to the main themes of this...
Article
Full-text available
The basic work unit in innovative software organizations is the team rather than the individual. Such teams consist of "a small number of people with complementary skills who are committed to a common purpose, set of performance goals, and approach for which they hold themselves mutually accountable". Work teams have many advantages, such as increa...
Book
Full-text available
Agile software development has become an umbrella term for a number of changes in how software developers plan and coordinate their work, how they communicate with customers and external stakeholders, and how software development is organized in small, medium, and large companies, from the telecom and healthcare sectors to games and interactive med...
Article
Full-text available
Agile software development has had a huge impact on how software is developed worldwide. We can view agile methods such as Extreme Programming (XP) and Scrum as a reaction to plan-based or traditional methods, which emphasize a "rationalized, engineering-based approach, incorporating extensive planning, codified processes, and rigorous reuse. In co...
Article
Full-text available
Several experiments on the effects of pair versus solo programming have been reported in the literature. We present a meta-analysis of these studies. The analysis shows a small significant positive overall effect of pair programming on quality, a medium significant positive overall effect on duration, and a medium significant negative overall effec...
Conference Paper
Full-text available
In the agile approach, the self-organizing team itself decides how work is coordinated. For individuals in a team to be motivated and satisfied with their job they need to have control over their work and over the scheduling and implementation of their own tasks. However, individual and team level autonomy may conflict, and reduce the effectiveness...
Article
Background: Experiments in which study units are assigned to experimental groups nonrandomly are called quasi-experiments. They allow investigations of cause-effect relations in settings in which randomization is inappropriate, impractical, or too costly. Problem outline: The procedure by which the nonrandom assignments are made might result in sel...
Conference Paper
Full-text available
Systematic reviews are only as good as the evidence they are based on. It is important, therefore, that users of systematic reviews know how much confidence they can place in the conclusions and recommendations arising from such reviews. In this paper we present an overview of some of the most influential systems for assessing the quality of indivi...
Conference Paper
Full-text available
Some claim that especially in the field of agile software development the research lags years behind of the practice. In this paper, we characterize the status and main challenges for research on agile software development, and propose a preliminary roadmap, focusing on providing more empirical research, primarily on experienced agile teams and org...
Conference Paper
Full-text available
Traditional software teams consist of independently focused self-managing professionals with high individual but low team autonomy. A challenge with introducing agile software development is that it requires a high level of both individual and team autonomy. This paper studies the barriers with introducing self-organizing teams in agile software de...
Chapter
Full-text available
In mature sciences, building theories is the principal method of acquiring and accumulating knowledge that may be used in a wide range of settings. In software engineering, there is relatively little focus on theories. In particular, there is little use and development of empirically-based theories. We propose, and illustrate with examples, an init...
Article
Full-text available
Pair programming is a collaborative approach that makes working in pairs rather than individually the primary work style for code development. Because PP is a radically different approach than many developers are used to, it can be hard to predict the effects when a team switches to PP. Because projects focus on different things, this article conce...
Article
Full-text available
An effect size quantifies the effects of an experimental treatment. Conclusions drawn from hypothesis testing results might be erroneous if effect sizes are not judged in addition to statistical significance. This paper reports a systematic review of 92 controlled experiments published in 12 major software engineering journals and conference procee...
Conference Paper
Full-text available
Systematic reviews are one of the key building blocks of evidence-based software engineering. Current guidelines for such reviews are, for a large part, based on standard meta-analytic techniques. However, such quantitative techniques have only limited applicability to software engineering research. In this paper, therefore, we describe our experie...
Conference Paper
Full-text available
We present the vision that for all fields of software engineering (SE), empirical research methods should enable the development of scientific knowledge about how useful different SE technologies are for different kinds of actors, performing different kinds of activities, on different kinds of systems. It is part of the vision that such scientific...
Article
Full-text available
A total of 295 junior, intermediate, and senior professional Java consultants (99 individuals and 98 pairs) from 29 international consultancy companies in Norway, Sweden, and the UK were hired for one day to participate in a controlled experiment on pair programming. The subjects used professional Java tools to perform several change tasks on two a...
Article
Full-text available
Empirically based theories are generally perceived as foundational to science. However, in many disciplines, the nature, role and even the necessity of theories remain matters for debate, particularly in young or practical disciplines such as software engineering. This article reports a systematic review of the explicit use of theory in a comprehen...
Conference Paper
Full-text available
Special interest groups or communities of practice are seen as important mechanisms for knowledge sharing in the knowledge management literature. However, there are few empirical studies of communities of practice in the software engineering field. This article presents an action research project in a small size software consulting company, where t...
Conference Paper
Full-text available
In an action research study, we describe the application of the scrum software development process in a small cross-organizational development project. The stakeholders in the project report many of the benefits we have found in previous studies, such as increased overview of the project, flexibility and motivation. In addition, we have found that...
Conference Paper
Full-text available
One way of implementing Software Process Improvement (SPI) is to empower employees to carry out decisions made by management. An alternative way is to invite developers and project leaders to participate in all phases of planning and implementing SPI projects. Such participation has always been a central goal and one of the pillars of organization...
Article
Statistical power is an inherent part of empirical studies that employ significance testing and is essential for the planning of studies, for the interpretation of study results, and for the validity of study conclusions. This paper reports a quantitative assessment of the statistical power of empirical software engineering research based on the 10...
Chapter
Full-text available
We introduce electronic process guides, and discuss their role in software engineering projects. We then present existing methods for constructing electronic process guides by defining a set of common processes for a company. Different approaches from the software engineering and management science are presented. We then go on to propose a new way...
Article
For process models to be useful, more and more software companies not only tailor their process models to the specific needs of the company, but also make them available on the company's intranet. In this article, we try to understand what characterizes the use of an electronic process guide (EPG) among developers in a medium-sized software company...
Conference Paper
Full-text available
Much experimental SE research involves testing a hypothesis regarding a relationship or difference between two variables. Typically, a null hypothesis (H0) of a zero correlation or no difference between the means of the two populations is posited. The standard way of reporting results from such statistical hypothesis testing is by presenting p-valu...
Conference Paper
Full-text available
Most software engineering research implicitly assumes that development methodologies are useful and that there is a direct relationship between software methodologies and their effects on organizational performance. However, a methodology cannot have an impact if it is not used. The purpose of this paper is, thus, to raise a number of challenges re...
Conference Paper
Full-text available
Evidence-based software engineering (EBSE) describes a process of identifying, understanding and evaluating findings from research and practice-based experience. This process aims at improving software engineering decisions. For the last three years, EBSE has been taught to university students at Hedmark University College, Rena, Norway. The motiva...
Article
Full-text available
Understanding how to implement software process improvement (SPI) successfully is arguably the most challenging issue facing the SPI field today. The SPI literature contains many case studies of successful companies and descriptions of their SPI programs. However, the research efforts to date are limited and inconclusive and without adequate theore...
Conference Paper
Full-text available
For process models to be useful, increasingly more software companies not only tailor their process models to the specific needs of the company, but also make them available on the company’s intranet. In this paper, we try to understand what characterizes the use of an electronic process guide among developers in a medium sized Software House. We d...
Conference Paper
Full-text available
Our objective is to describe how software engineering might benefit from an evidence-based approach and to identify the potential difficulties associated with the approach. We compared the organisation and technical infrastructure supporting evidence-based medicine (EBM) with the situation in software engineering. We considered the impact that fact...
Article
Full-text available
We introduce electronic process guides, and discuss their role in software engineering projects. We then present existing methods for constructing electronic process guides by defining a set of common processes for a company. Different approaches from the software engineering and management science are presented. We then go on to propose a new way...
Book
Full-text available
Faster, better and cheaper are challenges that IT-companies face every day. The customer's expectations shall be met in a world where constant change in environment, organization and technology are the rule rather that the exception. A solution for meeting these challenges is to share knowledge and experience - use the company's own experience, and...