Ita Richardson`s talk slides

advertisement
Improving Global Software
Engineering through Improved
Processes
Dr. Ita Richardson
18th April, 2012
Lero© 2012
Presentation Structure
•
•
•
•
•
Lero© 2012
My background
Global Software Development
Understanding the problems
Providing a solution: Global Teaming Model
Conclusion
2
My Research Background
• Software Quality and Software Process:
– Global software development
– Small software development companies
– Regulated industry
• Medical Device & Hospitals
– Services
• Principal Investigator within Lero
• Research supervision
• Lecture to Undergraduate and Postgraduate Software
Engineering students
Lero© 2012
3
What is
Global
Software
Development?
Casey and Richardson, 2006, Carmel, 1999, Hayes, 2002, Crow and Muthuswamy, 2003
Lero© 2012
4
Global Software Development
• Global Software Development (GSD) is carried out by
teams of knowledge workers located in various parts
of the globe developing commercially viable
software for a company
• Often, centralised software development is moved
from “home” locations to dispersed teams or/and
external organisations in remote locations
• Distributed Software Development and Global
Software Development are similar except that GSD
teams are always global.
Lero© 2012
5
Global Software Development
• Increasing number of people working in global
development teams
• From a process perspective, transferring local
processes to global is not a solution
Lero© 2012
6
What happens in
Global Software Development?
Geographic Distance
Linguistic Distance
Cultural Distance
Temporal Distance
Lero© 2012
Geographic Distance +
Linguistic Distance +
Cultural Distance +
Temporal Distance
=
Global Distance
Lero© 2012
Software Development Teams
• Traditional team
– Social group of individuals collocated
– Tasks are interdependent
– Activities to achieve common goals
• Global Software Development team
–
–
–
–
Usually use virtual teams to develop software
Same goals and objectives as traditional
Affected by Global Distance
Linked by communication technologies
Powell et al., 2004, Lipnack & Stamp, 1997
Lero© 2012
9
Research Problem
• To understand why Global
Software Development was not
working in industry
• To develop a solution to support
the implementation of GSD in
industry
Lero© 2012
10
Empirical Research Methods
Analyse
Software
Engineering
Practice
Implement and
Evaluate
Processes /
Methods
Lero© 2012
Analyse
Published
Research
Develop
Processes /
Methods
GSD problems
Casey,Casey,
2008 2008
Lero© 2012
12
What are the BARRIERS
AND COMPLEXITIES?
There is no one model for Global Software
Development
Lero© 2012
Variety of Collaboration Models
(Šmite, 2007)
19 MODELS
OUT OF
38 SURVEYED
PROJECTS
14
Lero© 2012
Collaboration Models
15
Lero© 2012
Many of which are not software
development / engineering / process factors
What are the BARRIERS
AND COMPLEXITIES?
There are many factors at play in Global
Software Development –
Lero© 2012
Project
Management
Communication
BARRIERS AND
COMPLEXITIES
Culture
Lero© 2012
Fear
17
Project
Management
Defined Roles and Responsibilities
Skills Management
Effective Partitioning
What are the BARRIERS
Technical AND
Support
COMPLEXITIES?
Reporting requirement
Process Management
Team Selection
Visibility
Coordination
Tools
True Cost
Risk
Lero© 2012
18
Project
Management
Cultural Distance
National Culture
What are the BARRIERS
Religious Culture
AND COMPLEXITIES?
Attitude to Authority
Gender Differences
Culture
Lero© 2012
19
Project
Management
Communication
What are the BARRIERS
Language
AND COMPLEXITIES?
Communication
tools
Knowledge Transfer
Temporal Issues
Culture
Lero© 2012
20
Project
Management
Communication
What are the
BARRIERS
Fear
AND COMPLEXITIES?
Motivation
Trust
Culture
Lero© 2012
Fear
21
Project
Management
Communication
BARRIERS AND
Effective Global
COMPLEXITIES
Software
Development
Culture
Lero© 2012
Fear
22
Project
Management
Communication
BARRIERS AND
COMPLEXITIES
Culture
Lero© 2012
Fear of losing jobs
prevents good
communication
between teams
Fear
23
Project
Management
How does the project
manager ensure that
their requirements
are met?
Culture
Lero© 2012
Communication
BARRIERS AND
COMPLEXITIES
Fear
24
Project
Management
Communication
BARRIERS
AND
Effective
Global
COMPLEXITIES
Software
Development
Culture
LERO
Lero© 2012
Fear
25
Empirical Research Methods
Analyse
Software
Engineering
Practice
Implement and
Evaluate
Processes /
Methods
Lero© 2012
Analyse
Published
Research
Develop
Processes /
Methods
Global Teaming Model
Richardson et al, 2010
Lero© 2012
27
Global Teaming Model
• Process for effective Global Software
Engineering
• Structured model:
– Specific Goals
– Specific Practices
– Sub-Practices
• Can and should be used with existing
processes
Lero© 2012
Global Teaming Model
SPECIFIC GOAL 1:
Define Global Project
Determine team and
organisational structure
between locations
Specific Practice SP 1.3
Determine the approach
Global
Management
to task Project
allocation
between locations
Management
Knowledge and Skills
s
al Ta
Glob
Specific Practice SP 1.2
1.1
e SP
c
i
t
t
c
ra
emen
ific P
g
c
a
e
n
p
S
k Ma
Identify business
competencies required
by team members in
each location
Identify cultural
requirements of each
local sub-team
Establish cooperation and Identify communication
skills for GSE
coordination procedures between
Establish relevant criteria
locations
for training
Richardson et al., 2010
Lero© 2012
Spe
Glob cific Prac
t
al Pr
oject ice SP 1.3
Mana
geme
nt
Identify GSE project
management tasks
Assign tasks to
appropriate team
members
Ensure awareness of
cultural profiles by
project managers
Establish cooperation
and coordination
procedures between
locations
Establish reporting
procedures between
locations
Establish a risk
management strategy
Establish cooperation & coordination
procedures between locations
•
•
•
•
•
Provide suitable infrastructure
Define suitable software development processes
Define management procedures
Jointly plan and agree achievable milestones
Identify and monitor project costs, time,
productivity, quality and risk
Lero© 2012
Threats: Global Project
Management not implemented
• Because Project Managers are based remotely
– Cannot ‘see’ contribution from each team member
– May not know skills and knowledge
• Competent people may agree unrealistic
amounts of work
– Serious implications for the individuals and projects
– Only sustainable in the short term
• Lack of recognition and understanding of
cultural needs
Lero© 2012
Global Teaming Model
2.1
P
S
ce ures
i
t
c
d
Pra roce
c
p
fi
eci ting
p
S era
Op
SPECIFIC GOAL 2:
Define Management
Between Locations
Identify common goals, objectives and rewards
Define how conflicts & differences of opinion
between locations are addressed & resolved
Specific Practice SP 2.1
Implement a communication
strategy for theProcedures
Operating
team
Establish communication interface points
between the team members
Implement strategy for conducting meetings
between locations
Lero© 2012
Sp
Co ecific
llab
P
ora ract
ice
ti
loc on b SP
e
2
ati
on twee .2
s
n
Collaboratively establish and maintain work
product ownership boundaries
Collaboratively establish and maintain interfaces
and processes
Implement
strategy for conducting
Collaboratively develop, communicate and
meetings between
locations
distribute work
plans
Implement strategy for conducting
meetings between locations
• Identify and use appropriate global meeting
technology
• Set up procedures to ensure participants can
agree or disagree with points raised
• Provide opportunities for participants to offer
new ideas.
• Circulate agenda prior to meeting
• Clearly minute actions agreed at meeting within
a short time frame
Lero© 2012
Threats: Operating Procedures
not implemented
• Impact due to use of asynchronous tools
– Amount of information between members reduced
• When difficult to communicate
– How and when to contact, when to expect response
– Project inefficiencies, de-motivated team members
• Shared meetings
– Inefficient if people cannot contribute
– Work will not be done unless minutes shared and
actions made clear
Lero© 2012
Empirical Research Methods
Analyse
Software
Engineering
Practice
Implement and
Evaluate
Processes /
Methods
Lero© 2012
Analyse
Published
Research
Currently underway
within Financial
Services company
Develop
Processes /
Methods
Conclusion
Lero© 2012
36
In summary
• Global Software Development is an expanding trend
• Industrialists and academics need to be prepared to
understand and implement GSD
• There are benefits to be gained from GSD if
implemented correctly
• There are difficulties which will arise if not
implemented correctly
• Management need to implement an informed GSD
strategy in their organisation
Lero© 2012
37
A few highlights:
• Not only technical factors have to be taken into account, but
also social and cultural ones
• Social capital is important in GSD – engineering human
relationships
• Psychological factors such as trust, motivation and fear play a
significant role
• There are knowledge-intensive and complex aspects to GSD
• Domain knowledge needs to be preserved
• Use of the Global teaming model adds structure to GSD
efforts
• Problems should be dealt with instead of outsourcing them!
Lero© 2012
38
Acknowledgements
• Research underlying this presentation has been supported by:
– Science Foundation Ireland CSET grant to Lero
– Science Foundation Ireland Investigator Programme, B4-STEP (Building
a Bi-Directional Bridge Between Software ThEory and Practice)
– Science Foundation Ireland cluster project, GSD for SMEs
– Science Foundation Ireland cluster project, socGSD
– Siemens Corporate Research Global Studio Project
– Various Irish companies
Lero© 2012
39
Presentation Structure
•
•
•
•
•
Lero© 2012
My background
Global Software Development
Understanding the problems
Providing a solution: Global Teaming Model
Conclusion
40
Further recommended reading
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Lero© 2012
Deshpande, S., Beecham, S., Richardson, I. (2011), "Global Software Development Coordination Strategies - A Vendor Perspective", Pg. No
153-174, Lecture Notes in Business Information Processing, Volume LNBIP91, New Studies in Global IT and Business Service Outsourcing,
Part 1, Springer-Verlag Berlin Heidelberg 2011, (Edited By: J. Kotlarsky, L.P. Willcocks, and I. Oshri)
Richardson, Ita, Valentine Casey, John Burton, Fergal McCaffery, Global Software Engineering: A Software Process Approach, in
Collaborative Software Engineering, edited by Mistrík, I.; Grundy, J.; Hoek, A. van der; Whitehead, J., 2010, ISBN: 978-3-642-10293-6,
pp35-56.
Richardson, Ita, Daniel Paulish and June Verner, Research Directions for Global Software Engineering – where to next?, Guest Editors’
Introduction, Journal of Software Evolution and Process, Volume 24, Issue 2, March 2012, pp 115-117.
Carmel, E. and Agarwal, R. (2001) Tactical Approaches for Alleviating Distance in Global Software Development, IEEE Software, 1, 2, 22 29.
Casey V and Richardson I, Virtual Software Teams: Overcoming the Obstacles, 3rd World Congress on Software Quality 2005, pp63-70,
Munich, Germany, 2005
Casey, Valentine and Ita Richardson, "Implementation of Global Software Development: A Structured Approach" Software Process
Improvement and Practice, Volume 14, 2009, pp247-262, DOI: 10.1002/spip.422.
Casey, Valentine and Richardson, Ita, The Impact of Fear on the Operation of Virtual Teams, Special issue on Global Software Engineering,
Software Process Improvement and Practice, Volume 13, 2008, pp511-526.
Damian, D. E. and Zowghi, D. (2003), An insight into the interplay between culture, conflict and distance in globally distributed
requirements negotiations, Proceedings of the 36th International Conference on Systems Sciences (HICSS’03). IEEE. 2002., Hawaii, 1 - 10.
Ebert, C. and De Neve, P. (2001) Surviving Global Software Development, IEEE Software, 18, 2, 62 - 69.
Herbsleb, J. D. and Mockus, A. (2003) An Empirical Study of Speed and Communication in Globally Distributed Software Development, IEEE
Transactions on Software Engineering, 29, 6, 481-494.
Herbsleb, J. D. and Moitra, D. (2001) Global Software Development, IEEE Software, 1, 2, 16 - 20.
Herbsleb, J. D., Paulish, D. J. and Bass, M. (2005), Global software development at siemens: experience from nine projects, Proceedings of
the 27th international conference on Software engineering, St. Louis, MO, USA, 524 - 533.
Linnane, Seán and Ita Richardson, Distributed Software Development – difficulties for the SME. In Perspectives in Software Quality,
Proceedings of Software Quality Management Conference, SQM2006, 10th-12th April, 2006, Southampton, U.K. pp 113-128.
Karolak D W, Global Software Development: Managing Virtual Teams and Environments. Wiley-IEEE Computer Society 1998, ISBN 0-81868701-0
41
Further recommended reading
•
•
•
•
•
•
•
•
•
Rad P F and Levin G, Achieving Project Management Success using Virtual Teams. J. Ross Publishing 2003, ISBN 1-932-15903-7
Ebert C and De Neve P (2001). Surviving global software development, Ieee Software. 18, 62-69.
Herbsleb J D and Grinter R E, Splitting the Organisation and Integrating the Code: Conway's Law Revisited, Proceedings of the 21st
international conference on Software engineering 1999, pp85-95, LA, CA, USA, 1999
Herbsleb J D, Paulish D J, Bass M, Global Software Development at Siemens: Experience from Nine Projects, Proceedings of the 27th
International Conference on Software Engineering 2005, pp524-533, St. Louis, MO, USA, 2005
Mistrík, I.; Grundy, J.; Hoek, A. van der; Whitehead, J. (editors), Collaborative Software Engineering, 2010, ISBN: 978-3-642-10293-6
Olson J S and Olson G M (2003). Culture Surprises in Remote Software Development Teams, ACM Queue. 1, 52-59.
Prikladnicki R, Audy J L N, and Evaristo R (2003). Global Software Development in Practice: Lessons Learned, Software Process
Improvement and Practice. 8, 267-281.
Richardson, Ita, Daniel Paulish and June Verner, "Research Directions for Global Software Engineering – where to next?" Guest Editors’
Introduction, Journal of Software Maintenance and Evolution: Research and Practice (forthcoming).
Richardson, Ita, Sarah Moore, Alan Malone, Valentine Casey and Dolores Zage, Globalising Software Development in the Local Classroom
through Virtual Teams in:
–
–
–
•
•
•
Lero© 2012
IT Outsourcing: Concepts, Methodologies, Tools, and Applications (4 Volumes), edited by Kirk St.Amant, Business Science Reference, ISBN 978-1-60566-770-6,
2009.
Software Applications: Concepts, Methodologies, Tools and Applications (6 Volumes), edited by Pierre F. Tiako, Information Science Reference, ISBN 978-160566-060-8, 2009.
Information Systems and Technology Education: From the University to the Workplace, edited by Rod Turner and Glenn Lowry, IGI Global, pp 82-104, ISBN 9781-59904-114-8, 2007.
Sangwan, Raghvinder, Neel Mullick, Matthew Bass, Daniel J. Paulish and Juergen Kazmeier, Global software development handbook
Auerbach Publications, 2006, isbn-10: 0849393841, isbn-13: 9780849393846
Sparrow E A, A Guide to Global Sourcing: Offshore Outsourcing and other Global Delivery Models. BCS 2005, ISBN 1-902-50561-1
Sabherwal R (2003). The Evolution of Coordination in Outsourced Software Development Projects: A Comparison of Client and Vendor
Perspectives, Information and Organisation. 13, 153-202.
42
References
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Carmel E, Global Software Teams: Collaborating Across Borders and Time Zones. Prentice-Hall 1999, ISBN 0-139-24218-X
Casey, Valentine, Software Testing and Global Industry: Future Paradigms, edited by Ita Richardson and Mícheál Ó hAodha, Cambridge
Scholars Publishing, 2008, ISBN: 97801-4438-0109-6.
Casey, Valentine and Ita Richardson, Uncovering the Reality within Virtual Software Teams, International Conference on Global Software
Engineering, ICGSE06, Florianopolis, Florianopolis, Brazil, 16-19 October 2006, IEEE Computer Society, CD Proceedings, ISBN 0-7695-26632.
Crow, G. and Muthuswamy, B. (2003) International Outsourcing in the Information Technology Industry: Trends and Implications.,
Communications of the International Information Management Association, 3, 1, 25 - 34.
Hayes Ian S., Ready or Not: Global Sourcing is in Your IT Future. Cutter IT Journal, 2002. 15(11): p. 5 - 11.
Imsland, Vegar; Sahay, Sundeep- ‘Negotiating Knowledge': The Case of a Russian-Norwegian Software Outsourcing Project, Scandinavian
Journal of Information Systems 2005
Lipnack, J. and Stamp, J. (1997) Virtual Teams: Reaching Across Space, Time And Originating With Technology, John Wiley & Sons.
O'Brien, J. A. (2002) Management Information Systems Managing Information Technology in the Business Enterprise, Mc Graw Hill Irwin.
Ó Conchúir, E., Holmstrom, H., Ågerfalk, P. J. & Fitzgerald, B. (2006) Exploring the Assumed Benefits of Global Software Development.
International Conference on Global Software Engineering (ICGSE). Florianópolis, Brazil.
Powell, A., Piccoli, G. and Ives, B. (2004) Virtual Teams: A Review of Current Literature and Direction for Future Research, The DATA BASE
for Advances in Information Systems, 35, 1, 6 - 36.
Richardson, Ita, Valentine Casey, John Burton, Fergal McCaffery, Global Software Engineering: A Software Process Approach, in
Collaborative Software Engineering, edited by Mistrík, I.; Grundy, J.; Hoek, A. van der; Whitehead, J., 2010, ISBN: 978-3-642-10293-6,
pp35-56.
Rottman, J.W.- Knowledge Transfer within Strategic Alliances, First Information Systems Workshop on Global Sourcing: Val d'Isère, France
13-15 March 2007)
Toaff, S. S. (2002) Don't Play with "Mouths of Fire," and Other Lessons of Global Software Development, Cutter IT Journal, 15, 11, 23 - 28.
Wieandt, Michaela - The Development of Knowledge Transfer and Collaboration in a Nearshore Software Development Project, First
Information Systems Workshop on Global Sourcing: Val d'Isère, France 13-15 March 2007
Lero© 2012
43
Thank You
&
Questions
Lero© 2012
Download