Date post: | 14-Dec-2015 |
Category: |
Documents |
Upload: | brent-haston |
View: | 220 times |
Download: | 1 times |
Motivating software developers
Dr Tracy HallAdjunct Professor, University of Oslo
Reader, Brunel University, UK
2/35
Something about me…
Reader in Software Engineering Based in Information Systems Department
Brunel University, London, UK Large, highly rated research department
BSc in Social Science; MSc in IT; PhD in Software Metrics Main research topics:
The motivation of software engineers The quality of software
Published: many international journal and conference papers.
Lead and have led several large research council funded research projects
Taught many software engineering topics to BSc and MSc students
3/35
Objectives of today…
To be able to: Appreciate the importance that developer
motivation plays in project management Understand the historical context of current
thinking on developer motivation Evaluate the impact of modern software
engineering approaches on contemporary understanding of developer motivation
Accommodate developer motivation in a project plan
4/35
Schedule
Section 1: Introduction and background Defining motivation Why is motivating developers important? Classic motivation theories
Section 2: Historical understanding of software developer motivation Are software developers different from other professionals? Software developer characteristics Software developer motivators A model of software developer motivation
Section 3: Towards a contemporary understanding of software developer motivation A recent survey Developing a motivating project plan
5/35
S1: Defining motivation
Difficult to define as fairly intangible. Includes notions of:
Initiation, direction, intensity and persistence of behaviour
How do you know when you are motivated? How do you know when others are? How can this be measured?
Section 1: Introduction and background
6/35
S1: Why is motivating developers important? Human rather than technical problems
known to impact most on project outcomesWhat human factors are important?
Motivation reported as a key human factor in developer performance
Human factors and motivation in software projects difficult to manageWhy?
Section 1: Introduction and background
7/35
S1: What studies report…
McConnell (1998) points out, “Motivation is a soft factor: It is difficult to quantify, and it often takes a back seat to other factors that might be less important but are easier to measure. Every organisation knows that motivation is important, but only a few organizations do anything about it. Many common management practices are pennywise and pound-foolish, trading huge losses in motivation and morale for minor methodology improvements or dubious budget savings.”
Section 1: Introduction and background
8/35
DeMarco and Lister’s (1999) survey:motivation was found to be one of the most
frequently cited causes of software development project failure.
The Standish report (1995) having access to competent, hard working
and focused staff is one of ten success criteria for software projects.
Section 1: Introduction and background
9/35
S1: What does developer motivation impact on?
What do you think??
Section 1: Introduction and background
10/35
S1: Motivation impacts on…
External signs Retention Project delivery time Productivity Budgets Absenteeism Project Success
Figure 2. Signs of poor motivation reported in previous studies
Section 1: Introduction and background
11/35
S1: Classic motivation theories
Theory Process Content 1 Equity theory * 2 Stimulus Response Theory * 3 Job Characteristics Theory * 4 Goal setting theory * 5 Expectancy Theory * 6 Need theory - Maslow * 7 Need theory - McClelland * 8 Motivation-Hygiene Theory *
Section 1: Introduction and background
12/35
The process theories…
Equity theory (Adams 1963) Stimulus Response Theory (Skinner 1976) Job Characteristics Theory (Hackman and
Oldman 1976) Goal setting theory (Locke 1968) Expectancy Theory (Vroom 1964)
Section 1: Introduction and background
13/35
Job Characteristics Theory Job characteristics
Psychological states
Personal and work outcomes
Skill variety
Task identity Influence Meaningfulness of work High internal work motivation Task significance High quality work Autonomy Influences Responsibility of outcomes High satisfaction with work Feedback Influences Knowledge of actual results
Low absenteeism and turnover
└── Growth Need Strength ───┘
JCT model of motivation (Couger and Zawacki 1980)
Section 1: Introduction and background
14/35
The content theories…
Needs theory (Maslow 1954) McClelland’s Needs Theory (1961) Motivation-Hygiene Theory (Herzberg et
al. 1959)
Section 1: Introduction and background
15/35
Needs theory (Maslow 1954)
Self actualisation
Personal esteem
Social acceptance
Security
Physical comfort
Section 1: Introduction and background
16/35
Motivation-Hygiene Theory (Herzberg et al. 1959)
Extrinsic factors
Intrinsic factors
Pay Achievement
Interpersonal relations, subordinate Recognition
Status The work itself
Interpersonal relations with superior Responsibility
Interpersonal relation with peers Possibility of growth
Technical supervision Advancement
Company policy and administration
Work conditions
Personal life
Job security
Section 1: Introduction and background
17/35
S2: Current understanding of software developer motivation 92 studies of motivating software
developers published from 1980-2006 Some of these have basis in classic theory Increasing interest in motivating software
developers…
Section 2: Historical understanding of software developer motivation
18/35
Number of papers published on developer motivation by five year intervals
0
5
10
15
20
25
30
35
40
45
1980-84 1985-1989 1990-1994 1995-1999 2000-2005/6
Number of papers (Total 92)
Section 2: Historical understanding of software developer motivation
19/35
Geographical distribution of studies on developer motivation
0
10
20
30
40
50
60
Global
Austra
lia
Austri
a
Canada
Egypt
Greec
e
Hong K
ongIsr
ael
Japa
n
Mex
ico
Niger
ia
Norway
China
Singap
ore
South
Afri
ca
Taiwan
UKUSA
Nu
mb
er
of
stu
die
s
Section 2: Historical understanding of software developer motivation
20/35
S2: Are software developers different to other professionals?
YES54%
NO24%
YES&NO (depending on context)
22%
Figure 1. Results from 92 published studies
What do you think?
22/35
S2: Software developer characteristicsSoftware Engineer Characteristics Need for stability Technically competent Achievement orientated (e.g. seeks promotion) Growth orientated (e.g. challenge, learn new skills) Need for competent supervising (e.g. needs respect and appreciation, given a clear job to do and goals) Introverted (low need for social interaction) Need for involvement in personal goal setting Need for feedback (needs recognition) Need to make a contribution (needs worthwhile/ meaningful job) Autonomous (need for independence) Need for variety Marketable Need for challenge Creative Need to be sociable/identify with group/organisation/supportive relationships
23/35
S2: Software developer motivators
Motivators come from three different sources: the organisational context, the specific job being undertaken (intrinsic
motivators), a sub-set of intrinsic motivators which are
inherent to software engineering as a profession.
25/35
S2: Software developer de-motivators
De-Motivators Risk Stress Inequity (e.g. recognition based on management intuition or personal preference) Interesting work going to other parties (e.g. outsourcing) Unfair reward system (e.g. Management rewarded for organisational performance; company benefits based on company rank not merit) Lack of promotion opportunities/stagnation/career plateau/boring work/poor job fit Poor communication (Feedback deficiency/loss of direct contact with all levels of management) Uncompetitive pay/poor pay/unpaid overtime Unrealistic goals/ phoney deadlines Bad relationship with users and colleagues Poor working environment (e.g., wrong staffing levels/unstable/insecure/lacking in investment and resources; being physically separated from team) Poor management (e.g. poorly conducted meetings that are a waste of time) Producing poor quality software (no sense of accomplishment) Poor cultural fit/stereotyping/role ambiguity Lack of influence/not involved in decision making/no voice
27/35
S2: How does this fit with you?
Use this model and score your partner according to each of these criteria on a scale of 1-10
28/35
S3: Towards a contemporary understanding of software developer motivation
The job of software development has moved on Globally distributed teams Agile approaches More demanding users etc
The role of the developer has evolved The stereotypical ‘introverted solitary
programmer’ is no longer viable Old paradigms of motivation increasingly
outdated
29/35
Question 1: what aspects of your job do you get most satisfaction from?
Question 1 what aspects of your job do you get most satisfaction from?
0
2
4
6
8
10
12
14
Nu
mb
er
of
tim
es m
en
tio
ned
30/35
Question 2: what are the features of a
project that make you stay in your job?
Question 2 What are the features of a project that make you stay in your job?
0
1
2
3
4
5
6
7
8
9
Nu
mb
er
of
tim
es m
en
tio
ned
31/35
Question 3: what factors keep you in
software engineering?
Question 3 answers
02468
101214161820
Nu
mb
er
of
tim
es m
en
tio
ned
32/35
Question 4: what makes developing
software worthwhile to you?
Question 4 What makes developing software worthwhile to you?
0
1
2
3
4
5
6
7
Nu
mb
er
of
tim
es m
en
tio
ned
33/35
S3: Developing a motivating project plan1. What are the key elements of a project that you need to
understand before you can assign appropriate developers to tasks?
- How can you find out this information?
2. What do you need to know about developers before you can assign them to the most appropriate tasks for them?
- How can you find out this information?
3. What are the benefits of accounting for motivation in a project plan?
34/35
References
[1] Hall T, Baddoo, N., Beecham, S, Robinson H, Sharp H (in press) ‘A Systematic Review of Theory Use in Studies Investigating the Motivations of Software Engineers’, ACM Transactions on Software Engineering and Methodology (TOSEM), to appear
[2] Hall T, Sharp H, Beecham S, Baddoo N., Robinson H (in press) ‘What do we know about software developer motivation?, IEEE Software, July/Aug 2008, to appear
[3] Sharp H, Baddoo, N, Beecham, S, Hall T, Robinson H (in press) ‘Models of motivation in software engineering’, Information and Software Technology Journal, to appear
[4] Beecham, S, Baddoo, N., Hall T, Robinson H, Sharp H (in press) ‘Motivation in Software Engineering: A Systematic Literature Review’, Information and Software Technology Journal, to appear
[5] Sharp H, Hall T, Baddoo, N., Beecham, S (2007). Exploring Motivational Differences between Software Developers and Project Managers, ACM SIGSOFT Symposium on the Foundations of Software Engineering, Sept 2007, Croatia, ACM Press
35/35
Contact details…
Dr Tracy Hall
Department of Information Systems & Computing
Brunel University
London, UK