Presentation at the 10th IEEE International Conference on Global Software Engineering (ICGSE 2015)
Pre-proceedings available at:http://bit.ly/1MBpxWY
Any global software development project needs to deal with distances – geographical, cultural, time zone, etc. – between the groups of developers engaged in the project. To successfully manage the risks caused by such distances, there is a need to explicate and present the distances in a form suitable for manual or semi-automatic analysis, the goal of which is to detect potential risks and find ways of mitigating them. The paper presents a technique of modeling a global software development project suitable for such analysis. The project is modeled as a complex socio-technical system that consists of functional components connected with each other through output-input relationships. The components do not coincide with the organizational units of the project and can be distributed through the geographical and organizational landscape of the project. The modeling technique helps to explicate and represent various kinds of distances between the functional components to determine which of them constitute risk factors. The technique was developed during two case studies, of which the second is used for presenting and demonstrating the new modeling technique in the paper.
Similar to Modeling a Global Software Development Project as a Complex Socio-Technical System to Facilitate Risk Management and Improve the Project Structure
Does Distributed Development Affect Software Quality? An Empirical Case Study...Daniel Agaba
Similar to Modeling a Global Software Development Project as a Complex Socio-Technical System to Facilitate Risk Management and Improve the Project Structure (20)
Modeling a Global Software Development Project as a Complex Socio-Technical System to Facilitate Risk Management and Improve the Project Structure
1. DSV SU
Modeling a Global Software Development Project as
a Complex Socio-Technical System to Facilitate Risk
Management and Improve the Project Structure?
1
Ilia Bider, Henning Otto
10th IEEE International
Conference on Global
Software Engineering
(ICGSE)
2. DSV SU
The goal of our research project
Propose a technique for modeling a distributed
software development project as a system to be
used for:
• Identifying places in the project with a potential risk
• Discussing and designing the ways of mitigating the
risks
3. DSV SU
Plan of presentation
1. Knowledge base
2. Combining components of knowledge based use
in a new modeling technique
3
4. DSV SU
Knowledge base used
1. Own experience from software development
2. Socio-technical systems theory
3. Functional decomposition of an organization (e.g.
IDEF0)
4. Theory of distances (geographical, temporal, etc.)
5. Step-relationship modeling technique for business
processes
6. Two case studies of GSD projects at a large ICT
provider
5. DSV SU
1. Own experience: about me
• For most of my life: Practitioner + Researcher in IT related fields
• At the end settling down in academia to reflect on and pass to
others my experience
• Experienced in software development projects
– Including requirements engineering, software development,
introducing IT in organizations
– big and small, non-agile and agile, successful and
unsuccessful
– In different capacities, such as a programmer, group leader,
consultant, bug fixer, technical project manager
5
6. DSV SU
1. Own Experience: our team
• Bogumila Rutkowska – a project manager from the ICT provider
and her team
• Thanos Karapantelakis – a researcher and PhD student from the
ICT provider
• Two MS students from SU (Department of Computer and
Systems Sciences)
– Henning Otto (project modeling)
– Saga Willysson (model visualization)
6
7. DSV SU
2. Socio-technical systems
Tasks
TechnologyStructure
People
Social
Technical
Adopted from: R. P. Bostrom and J. S Heinen, "MIS problems and failures: A socio-technical
perspective," MIS Quarterly, vol. 1, no. 3, pp. 17-32, 1977.
8. DSV SU
3. Functional decomposition
IDEF0 – a most popular notation for functional
decomposition
Block diagrams – the simplest
notation
Connecting outputs to inputs: output/input relationships
10. DSV SU
4. Distances
1. Geographical
2. Time zone (in addition to 1)
3. Organizational (independent from 1 & 2)
4. Professional (independent from 1, 2, 3)
5. Cultural (in addition to 1or/and 3 or and 4)
Distances can exists between
• The members of a team
• The teams themselves (even when teams are homogenous)
10
11. DSV SU
5. Step-relationship modeling of
business processes
Goal with the step-relationship modeling technique:
• Discover essential properties of a business process without going
into too many details
• Enough to derive requirements on capabilities of IT-tools that
would provide satisfactory support for people engaged in the
process
11
12. DSV SU
5. Step-relationship modeling
Main notions of modeling technique:
• Step (phase, work package) a unit of work; a model includes a
small number of steps 5-10
• Relationships between the steps of different kinds, e.g.
output/input, parallel execution, etc.
Relationships can be presented
• graphically; easy to understand
• In the form of orthogonal matrixes; these could be manipulated
formally
12
13. DSV SU
6. Two GSD projects
at a large ICT provider
Who has completed a transition from:
• a traditional phase-based development approach with local
software development teams
To
• working in an iterative manner using the Scrum project
management methodology and employing geographically
distributed teams
13
14. DSV SU
6. The second GSD project
• Four different locations distributed across four countries
(Three in Europe and one in Asia)
• Different types of organizations involved
(Main organization, subdivision and subcontractors)
• Different types of professions involved
(Management, technical design staff, test engineers)
14
15. DSV SU
Plan of presentation
1. Knowledge base
2. Combining components of knowledge based use
in a new modeling technique
15
16. DSV SU
Software project – simplified model
Starting with functional decomposition
Is having output/input
relationships enough?
Only if the same team do
the job in all components
17. DSV SU
The work of feedback controller manned by humans
Adding feedback connections
19. DSV SU
Risks in GSD projects
1. Absence or deficiency of
feedback connections
2. Parallel dependencies between
functional components
3. Heterogeneous teams
4. Distances between the teams
20. DSV SU
Mitigating the risks
1. Through social structure, e.g.
intersecting teams
2. Through technical infrastructure,
e.g. systems/tools that support
teams and communication
between them
3. Through a combination of both
Need to represent the risks and ways of mitigating them in the model
26. DSV SU
End of presentation
Additional reading:
1. Proceedings of this conference
2. I. Bider, A. Karapantelakis, and N. Khadka, "Building a High-Level Process Model for
Soliciting Requirements on Software Tools to Support Software Development: Experience
Report," in Short Paper Proceedings of the 6th IFIP WG 8.1 Working Conference on the
Practice of Enterprise Modeling (PoEM 2013). CEUR, Vol. 1023, Riga, Latvia, 2013, pp. 70-
82. http://ceur-ws.org/Vol-1023/paper7.pdf
3. I. Bider and E Perjons, "Design science in action: developing a modeling technique for
eliciting requirements on business process management (BPM) tools," Software & Systems
Modeling, http://link.springer.com/article/10.1007/s10270-014-0412-6, 2014.
26
27. DSV SU
Q & A
Thank you for your patience
Questions and comments
Please
Contact: ilia@{dsv.su|ibissoft}.se
27