People
Importance of People Most important factor in the quality of software is the quality of the programmers If your life depended on a particular piece of software, what would you want to know about it? That the person who wrote it was “both highly intelligent and possessed by an extremely rigorous, almost fanatical desire to make their program work the way it should.” Terry Bollinger (2001)
Peopleware DeMarco and Lister People are primary Goal-driven human processes are self-healing Rule-driven processes are fragile Public communication Space Cave and Commons Stewart Brand, How Buildings Learn
FUNDAMENTAL CONFLICTS Knowledge Workers … FUNDAMENTAL CONFLICTS prefer closed offices but communicate better in open ones congregate in particular geographical areas move around in the course of their work collaborate concentrate work in the office communicate with people who are close by don't care about facilities gewgaws Davenport, Why Office Design Matters 2005
Tuckman Team Stages Forming - polite but untrusting Storming - testing others Norming - valuing other types Performing - flexibility from trust Adjourning - disengagement Tuckman, Bruce. (1965). Developmental sequence in small groups. Psychological bulletin, 63, 384-399.
People are different
Differences Work Styles Work Approach Skills Personality Conflict Resolution Time Management
Work Styles Work with Others Necessary Work with Others Preferred Self-Motivated Works Better Alone Time of Day Need Large Dedicated Chunks of Time More Effective if Thinking about and Doing Work in Background
Work Approach Spend a lot of time before do anything Produce linearly with regular visible progress Big push at the front; harder to keep going
Skills Big picture Understanding clients Design Documentation Detail Interpreting others Testing Budgeting/scheduling
Personality Acceptance of challenge Acceptance of criticism Feelings easily hurt Humor effective Needs direct talk PC Sensitivity Need for recognition Confrontation Conciliation Non-social
Styles in Conflict Resolution Collaborator Works to find a solution that satisfies all concerns Accommodator Neglects own concerns to satisfy others Compromiser Tries to satisfy others without giving up own concerns Competitor Pursues own concerns at other’s expense Avoider Evades the situation and never addresses
What works
Good Team Member Core Competency: problem-solving ability Personal Attributes Openness Supportiveness Action orientation Positive personal style
Positive Team Relationships Constructive for all team members Productive brings out the best thinking in all team members Mutual Understanding seeking to understand others’ perspectives Self Correcting
Effective Team Problem Solving Focus clear about what you are doing Climate positive inclusive focus on the issue…not the person Open Communication Issues identified, discussed, prioritized and acted on
Eight Characteristics of a Great Team Clear, elevating goal Results-driven structure Competent members Unified commitment Collaborative climate Standards of excellence External support & recognition Principled leadership
trust but verify
Trust doesn’t mean Ignore Don’t micromanage Keep people excited and involved Verify that nothing got lost or misunderstood
Why? Different strengths and weaknesses History drives decisions You don’t know what you don’t know Words have different meanings and interpretations
leadership
Everyone Should be a Leader Know when to lead and when to follow Recognition critical What is most effective?
exercise
Team Turmoil: Forming You are on an 8-person team that has been given the job to complete a web application for a non-profit. They have a major event coming up and need to organize a vast number of volunteers. The team are all members of the organization with computer skills who have volunteered to do the work. The organizers have set up a meeting for you and explained the requirements. It’s now time to get started. What do you do?
Team Turmoil: Storming Finley has committed to get the database up before the next meeting and did but the design was not what the team had agreed on. Now what? Peyton and Kerry were supposed to be working together. The team discovers that Peyton did all of the work but they presented it as if it were done jointly. Should the team call out Kerry? Mentor Peyton? Reese keeps taking the jobs that no one else wants. It is clear that Reese is not enjoying this role but keeps agreeing, if not volunteering for the tasks. There is a concern that Reese is going to burn out. What should the team do?
Additional source
Larson and LaFasto Teamwork: What Must Go Right/What Can Go Wrong When Teams Work Best Accumulated information from 600 teams