Title: Communications in Software Development Projects
1Communications in SoftwareDevelopment Projects
- by Frank Tsui
- Southern Polytechnic State University
- Presented to Atlanta SPIN
- December 12, 2007
2Why Interested in Communications?
3An Interesting Quote
- - - an idea, no matter how great, is useless
until it is transmitted and understood by others
- - -
4Many Attributes Affect A Project
Management Leadership
Organizational structure
Schedule
Development Process
Clarity of Goals
Technology Tools
Team Experience
COMMUNICATION - is an attribute that touches on
many of these other attributes
5Increase in Software Project Size and Complexity
size
complexity
6Teamwork and Communications
- As the size and complexity of software increases,
teamwork is becoming a necessity - Interaction with multiple users
- Interaction among different project specialists
- Requirements Analysts
- System Architects
- Application Designers
- UI Specialists
- Test Script Developers
- etc.
- An important aspect of teamwork is communications
among the members of the team.
But there are relatively few formal studies on
aspects of communications in software projects
7Some Sample Past Studies
- Dutoit, H.A and Bruegge, B., Communications
Metrics for software Development, IEEE
Transactions on Software Engineering, (1998) - Damien,D., et al, Using Different Communications
Media in requirements Negotiation, IEEE
Software, (2000) - Suchan, J, and Hayzak, G., The Communication
Characteristics of Virtual Teams A Case Study,
IEEE Transactions on Professional Communications,
(2001) - Kaushik, S., A Study of Attributes of
Communications as They relate to Software
Development, MS Thesis, Southern Poly, (2001) - Patrashkova-Volzdoska,R.R., McComb,S.A. and
Green, S.G., Examining a Curvilinear
Relationship Between Communication Frequency and
Team Performance in Cross-functional Project
Teams, IEEE Transactions on Engineering
Management, (2003) - Herbsleb, J.D. and Mockus, A., An Empirical
Study of Speed and Communication in Globally
Distributed Software Development, IEEE
Transactions on Software Engineering, June,
(2003)
- - - - - - - - - - - - - - - - - - - - - -
- Ambler, S. W. Communication on Agile Software
Projects, -
www.agilemodeling.com/essays/communication.htm
(2007)
8What is Communications?
How about a simple definition? --- Exchanging
of information between or among individuals.
9Aspects of Communications
- Channels of communications
- Structure or Style of communications
- Amount of communications
10Channels of Communications
- Face-to-Face (synchronous)
- Physically next to each other
- Video conference
- Telephone (synchronous)
- e-mail / e-group / etc. (asynchronous)
- Document Exchange / Memos (asynchronous)
11Structure or Style of Communications
All-member direct member-member
Wheel - central conduit
Chained - formal hierarchical
Informal subset of all-member
12Volume of Communications
- Number of exchanges
- Size of each exchange (e.g. number of words)
- Volume of exchange
- ? (exchange x size of exchange)
Sometimes volume is simply measured by
person-minutes or person-hours
13An Initial Thought/Conjecture
- More communications is better than less
communications in software projects (error on the
more side) - The distribution of communications would look
like a double hump camel curve
Req.
Des
Test
Code
14Studies of Communications
- Student Projects 3 Teams
- Student Projects 9 teams
- Industry Projects 16 companies
15Student Project- 3 Teams
- Teams 1 was the most successful team followed by
team 3 - Team 1 had a very experienced and strong leader
from the beginning along with a strong build
control - Team 3 had a team leader who was designated by
other members -
- Team 2 was the least successful team
- Project floundered until a late emergence of a
team leader
16Student Project 3 TeamsCommunications
Structure/ Channel/Volume
Teams Structure/Style
Channel Volume
17Student Project 3 TeamsCommunications Volume
by Team
Relative Volume Of Comm.
7
652
6
5
397
4
3
248
2
1
Least successful
most successful
successful
(Team3)
(Team2)
(Team1)
18Student Project 3 Teams of communications
volume by task
50
40.2
40
of Total Comm.
31.1
30
18.4
20
10.3
10
Req.
Test
Design/Code
Proj. Mgmt
19Student Project 3 Teams Distribution of
Communications by Teams
50
45
40
35
30
of Total Comm.
25
Team1
20
Team3
15
10
Team2
5
Req.
Des/code
Test
Proj. Mgmt
20 Student Project 9 TeamsProject Teams by
Success and Amount of Communications
100
95
Group A 10.5 k
Success
90
Group B 11.0k
85
80
Group C 2.6k
75
1 k
2 k
3 k
4 k
5 k
6 k
7 k
8 k
Communications in person-minutes
21Student Project 9 TeamsDistribution of
Communications
39.7
40
of Total Comm.
26.5
30
23.1
20
10.7
10
Req.
Des/code
Test
Proj. Mgmt
Similar Result
Much less
22Student Project 9 Teams Distribution of
Communications by Groups
45
40
35
B
30
9 teams overall
of Total Comm.
25
20
15
A
10
C
5
Req.
Des/code
Test
Proj. Mgmt
23What about the 16 Professional Companies?
24Communications Structure /Style Usage in 16
Companies
Usage in different tasks and activities
Style
Note this
Wheel
Used in 93 of the activities
All-member
88
Informal
69
50
Chain
Note different and more than one style may be
used for the same activity or task
25Rating of Communications Styles by Activity Types
Rated by Employees
Activity Type
Most Effective Style
Least Effective Style
Informal
Wheel
Requirement
Informal
Design
All-member
Informal
All-member
Code
Informal
Unit test
Wheel
Informal
Functional test
Wheel
Informal
System test
Wheel All-member
26Relating Amount of Communicationsto Different
Project Results
Volume of Communications is normalized as
of person-hours of comm. / of persons
Relative Volume Of Comm.
6
5
4.23
4
3
2
1.83
.8
1
successful
average
not-successful
(9 teams)
(5 teams)
(2 teams)
27 Distribution of Communications by Groups
1.0
2 successful teams
.9
.8
.7
.6
Amt of Comm.
.5
9 average teams
.4
.3
.2
5 not-successful teams
.
.1
.
.
.
.
.
Req.
Des
UT
FT
Code
ST
28Concluding Remarks
- Structure/Style of communications seem to matter
- Wheel seems to be preferred and usually shows
existence of some project leadership - Volume of communications shows strong correlation
with successful teams - Matches the initial conjecture
- Pattern of communications did not resemble a
double humped camel as initially thought - Most teams communicated more during design and
code, rather than requirements and (sometimes
more in testing)