Book Description
Get the most out of this foundational reference and improve the productivity of your software teams. This book collects the wisdom of the 2017 "Dagstuhl" seminar on productivity in software engineering, a meeting of community leaders, who came together with the goal of rethinking traditional definitions and measures of productivity.
The results of their work, Rethinking Productivity in Software Engineering, includes chapters covering definitions and core concepts related to productivity, guidelines for measuring productivity in specific contexts, best practices and pitfalls, and theories and open questions on productivity. You'll benefit from the many short chapters, each offering a focused discussion on one aspect of productivity in software engineering.
Readers in many fields and industries will benefit from their collected work. Developers wanting to improve their personal productivity, will learn effective strategies for overcoming common issues that interfere with progress. Organizations thinking about building internal programs for measuring productivity of programmers and teams will learn best practices from industry and researchers in measuring productivity. And researchers can leverage the conceptual frameworks and rich body of literature in the book to effectively pursue new research directions.
What you'll learn: Review the definitions and dimensions of software productivity; See how time management is having the opposite of the intended effect; Develop valuable dashboards; Understand the impact of sensors on productivity; Avoid software development waste; Work with human-centered methods to measure productivity; Look at the intersection of neuroscience and productivity; Manage interruptions and context-switching.
This open book is licensed under a Creative Commons License (CC BY-NC-ND). You can download Rethinking Productivity in Software Engineering ebook for free in PDF format (5.3 MB).
Table of Contents
About the Editors
Acknowledgments
Introduction
Part I
Measuring Productivity: No Silver Bullet
Chapter 1
The Mythical 10x Programmer
Chapter 2
No Single Metric Captures Productivity
Chapter 3
Why We Should Not Measure Productivity
Part II
Introduction to Productivity
Chapter 4
Defining Productivity in Software Engineering
Chapter 5
A Software Development Productivity Framework
Chapter 6
Individual, Team, Organization, and Market: Four Lenses of Productivity
Chapter 7
Software Productivity Through the Lens of Knowledge Work
Part III
The Context of Productivity
Chapter 8
Factors That Influence Productivity: A Checklist
Chapter 9
How Do Interruptions Affect Productivity?
Chapter 10
Happiness and the Productivity of Software Engineers
Chapter 11
Dark Agile: Perceiving People As Assets, Not Humans
Part IV
Measuring Productivity in Practice
Chapter 12
Developers’ Diverging Perceptions of Productivity
Chapter 13
Human-Centered Methods to Boost Productivity
Chapter 14
Using Biometric Sensors to Measure Productivity
Chapter 15
How Team Awareness Influences Perceptions of Developer
Chapter 16
Software Engineering Dashboards: Types, Risks, and Future
Chapter 17
The COSMIC Method for Measuring the Work-Output Component of Productivity
Chapter 18
Benchmarking: Comparing Apples to Apples
Part V
Best Practices for Productivity
Chapter 19
Removing Software Development Waste to Improve Productivity
Chapter 20
Organizational Maturity: The Elephant Affecting Productivity
Chapter 21
Does Pair Programming Pay Off?
Chapter 22
Fitbit for Developers: Self-Monitoring at Work
Chapter 23
Reducing Interruptions at Work with FlowLight
Chapter 24
Enabling Productive Software Development by Improving Information Flow
Chapter 25
Mindfulness as a Potential Tool for Productivity
Index