Presentation is loading. Please wait.

Presentation is loading. Please wait.

Teamwork in Software Engineering. Main problems in teamwork Suggest problems of (general) teamwork. Suggest problems of software teams. Suggest solutions.

Similar presentations


Presentation on theme: "Teamwork in Software Engineering. Main problems in teamwork Suggest problems of (general) teamwork. Suggest problems of software teams. Suggest solutions."— Presentation transcript:

1 Teamwork in Software Engineering

2 Main problems in teamwork Suggest problems of (general) teamwork. Suggest problems of software teams. Suggest solutions to the problems you mentioned.

3 Dilemmas in Teamwork One of the team members does not work on his/her task.  What are you doing? Suggest additional dilemmas from your own experience.

4 Bonuses How this option will influence the collaboration of the team members? Team Bonus (% of the total bonus) Personal Bonus (% of the total bonus) 1000a 8020b 50 c 2080d 0100e X% personal, Y% team means that X% of the total bonus is divided on a personal basis and Y% is divided equally between the team members. 1.

5 Bonuses Individual answers – Group I Phase 3 (Teamwork- based incentive) Phase 2 (Individual- based incentive) Phase 1 (Neutral) Team Bonus (% of the total bonus) Personal Bonus (% of the total bonus) 8121000a 710158020b 22650 c 12080d 40100e Note: Other values (such as 30%) are not included in table.

6 Bonuses Individual answers – Group II Phase 3 (Teamwork- based incentive) Phase 2 (Individual- based incentive) Phase 1 (Neutral) Team Bonus (% of the total bonus) Personal Bonus (% of the total bonus) 41000a 3778020b 2350 c 7122080d 0100e

7 Bonuses Individual answers – Group II Phase 3 (Teamwork- based incentive) Phase 2 (Individual- based incentive) Phase 1 (Neutral) Team Bonus (% of the total bonus) Personal Bonus (% of the total bonus) 1000 8020 50 2080 0100

8 Cooperation in Software Development What does it mean to cooperate in software projects? What does it mean to compete in software projects? What does one gain from cooperation? When does one gain from competition? Do people tend to cooperate/compete in software projects? Why?

9 Cooperation in Software Development Variations:  What happens if one team members competes and the others cooperate?  What happens if one team members cooperates and the others compete? TRUST is a key word!

10 Trust in Software Teamwork

11 B competesB cooperates -10 +5 A cooperates 0 +10 A competes The Prisoner’s Dilemma: A’s perspective

12 The Prisoner’s Dilemma: The case of software development – A’s perspective, Bonus B competesB cooperates 20%50%A cooperates 0%80%A competes

13 B competesB cooperates -10+5A cooperates -20 +10A competes The Prisoner’s Dilemma: The case of software development – A’s perspective, Bonus

14 The Prisoner’s Dilemma: The case of software engineering Usually, team members are asked to cooperate. Team members can’t verify that their cooperation will reciprocate. According to the Prisoner’s Dilemma: All team members will compete. In software development: Such behavior leads to the worst results to all team members.

15 How cooperation and trust can be achieved? Define a set of specific and clear activities that all team members are committed to apply. Extreme programming (2000) has this attribute.  This attribute may explain Extreme Programming (2000) success.

16 Extreme Programming 12 practices Note: nothing is new; gathering the practices together is XP uniqueness Source: Beck, K. (2000). eXtreme Programming explained, Addison Wesley.

17 The Prisoner’s Dilemma: The case of eXtreme Programming Team member’s commitment to work according to XP ensures that:  all work according to these practices  all know that all the others also work according to these practices  the dilemma inherent at the prisoner’s dilemma vanishes  all be in the cooperation cell  all rip the benefit from such a cooperation

18 The Prisoner’s Dilemma: The case of Extreme Programming – A and B’s perspective B cooperates +5 A cooperates

19 The Prisoner’s Dilemma: Extreme Programming - Courage Cooperation: e.g., alarm when a problem emerges, admit when you need to learn something new. Competition: find ways to hide such info. All team members are committed to work according to XP in general and this value in particular. Team members do not face the dilemma of whether to cooperate or not. Team members cooperate (in the above sense) and get the rip from the value of courage.

20 Kent Beck: Kent Beck explains when XP is not appropriate: "[i]t's more the social or business environment. If your organization punishes honest communications and you start to communicate honestly, you'll be destroyed." An interview with Kent Beck, June 17, 2003, Working smarter, not harder, IBM website: http://www-106.ibm.com/developerworks/library/j-beck/ http://www-106.ibm.com/developerworks/library/j-beck/

21 The Prisoner’s Dilemma Prisoners' Dilemma Simulation The Prisoners' Dilemma – Explanation The Prisoner's Dilemma in several areas

22 Summary Bonus allocation in software teams. The prisoner dilemma and software development.


Download ppt "Teamwork in Software Engineering. Main problems in teamwork Suggest problems of (general) teamwork. Suggest problems of software teams. Suggest solutions."

Similar presentations


Ads by Google