understanding the team introduction –software development projects too large. need more people...

35
Understanding the team Introduction Software development projects too large. Need more people Software development is through the efforts of a software development team. Collaborative work is often a key issue in software engineering Definition A team : group of individuals who possess a level of constructive interpersonal skills, and who are dedicated to the achievement of a common goal

Upload: emery-blankenship

Post on 30-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Understanding the team• Introduction

– Software development projects too large. Need more people

– Software development is through the efforts of a software development team.

– Collaborative work is often a key issue in software engineering

• DefinitionA team : group of individuals who possess a

level of constructive interpersonal skills, and who are dedicated to the achievement of a common goal

Challenges of Software Development

Democratic Team

Business Team

Rescue TeamTesterTeam

Challenges

• Larger teams

• Specialization

• Distribution

• Rapid technology change

Chief Programmer Team

Understanding the team

Aspects of Teamwork No optimal team structure , any structure consists of variety of roles :

• Project manager• Architect• Application development• Tool smith• Quality assurance person• Suystem integrator, • build and relaese person• Designer.

Understanding the team

Creating the right team

1. Put the right people together Issues :

Availability of the right personnelCompetitive task to get ”good”people

2. Good team not necessarily composed of all the best ones

Ways that People can Work Together

Individual Improvement Group Sharing Tools

Jelled Team

• Understanding teamsUnderstanding teams

• Structuring team environmentsStructuring team environments–Team management structure

–People structure

–Shared space structure

• Defining teamsDefining teams

• Building a teamBuilding a team

• Supporting team activitiesSupporting team activities

Team Workflow - Outline

Team management structure

• Time needed to be planned and organized efficiently.

• People resources must be structured efficiently

• Shared space must be designed to optimize communication between team members

Shared Space Structure

• Physical

• Communications

• Symbolic shared space :Team members sharing a

Unified modelling language for the modelling of the

solution to be implemented

• Interpersonal sharing

The Concept of Shared Space

UML

Physical: facilitates face to face and interpersonal exchange

Symbolic : Sharing a Unified Modeling Language for the modeling of the solution to be implemented

Communications :new technologies facilitate team activities

Interpersonal : Meeting and workshop can

be used to increase the interpersonal exchange

Team management stucture

• Understanding teamsUnderstanding teams

• Structuring team environmentsStructuring team environments

• Defining teamsDefining teams Distinguishing a group from a team Team fundamentals Team organization and behavior

• Building a teamBuilding a team

• Supporting team activitiesSupporting team activities

Team - OutlineTeam - Outline

Defining the team

Introduction

Dev processes involve several stakeholders, each of has a

different understanding of what needs to be done.

As stakeholders increase their common understanding of the

product to be built, they converge to a common approach on

how the work is to be distributed.

Defining the teamBasic Definition

At least 2 people working toward a common goal/objective/mission, each is assigned a role .The completion of the mission requires some form of dependndecy and collaboration among group members

– Too many stars within the same team could create distractions.

– Alack of stars can leave a team strugling with even the smallest of problems.

– few stars are appropriate

Team # group

• Working together cooperatively can be more productive than

working together less collaboratively on the same problem .

• Interdependence among group members marks the

transition from a group to a team (negotiate decision making).

• Results by team depend on these strong interdependencies

• A team implies superior group performance.

• Team players work together and build contributions from

every team member to a common goal

RequirementsGroup

ArchitectureGroup

Analysis & Design andImplementation Group

Test Group

NewMembers

A Typical Group is a Collection of Individuals

• The same people in The same people in requirements requirements through through implementationimplementation

–Minimize hand-over

• Well-balanced teamsWell-balanced teams

• In general, teams In general, teams should be should be composed of no composed of no more that 5-7 peoplemore that 5-7 people

ImplementationGroup

Consultants

Team fundamentals

• No more than 5 to 7 individuals

• Dedicated to a project , specific goals

• How to form a team ?– Members recruited– Agree om a team goal (goal well defined)– Plan created ( plan for work , team member

roles, )– Common teamwork process– Plan monitored by the project manager– Commitments are made (to the goal , role and

plan)– Physical environment must be supportive and

adapted to the team– Mutual respect and support of all members

Team Behavior within Organizational Structures

Each member adapts to other

Tennis Double

Whole team moves together

Every player has a fixed position

Hockey Team

Baseball team Software development

Difficult to say which team

structure is more appropriate.

• Understanding teamsUnderstanding teams

• Structuring team environmentsStructuring team environments

• Defining teamsDefining teams

• Building a teamBuilding a team

–The four-stage team development model

–The five phases for building team spirit

–The three steps to creating a jelled team

• Supporting team activitiesSupporting team activities

Team Workflow - - Outline

BUILDING A TEAM

• Teams do not just happen

• Teams are developped.

• Development through a series of well-defined steps to learn how to work :

• together cooperatively • with commonly held purposes and goals.

3 models for describing how teams evolve :– Four stage Team dev Model– Five phases for building team spirit– Three steps for creating a jelled team

Four-Stage Team Development Model• Forming or initial phase of team buildingForming or initial phase of team building

– Individuals usually focus on their own areas of knoledge.

– Groups seek purposes and relevance.– Social relationships are established. – Group begins to work with the leader.

• StormingStorming– Members challenge each other, argue .– Conflicts emerge between members due to differences

in goals and struggle for control and direction. – Members discover differences and learn how to deal

with them(resolve conflicts)– Addressing conflicts constructively results in gaining

confidence in bring up issues without going on the attack and blaming others.

– Learn to listen to other members and Build trust

Four-Stage Team Development Model• Norming Norming

– Commonalities and shared interests are recognized and processes for communications are established.

– Team starts to jell– Team establishes ground rules and its own norms for

acceptable behavior

• Performing Performing – A team identity has formed and members associate

strongly with the group. – Team members are able to diagnose and solve problems

Note : Difficult to reach such maturityVery easy to fall back into the forming stage (leader replaced , new people join)

Team spirit Endorses a Five-Phase Spiral Model

Purpose : Purpose : Create a true bonding of high performance teamCreate a true bonding of high performance team

• InitiatingInitiating – Sharing of personal interests : learn about each other

interests– Short informal social activities : lunches

• Visioning Visioning – Development a shared vision or purpose as a group– Peer reviews of team works

• ClaimingClaiming – Identifying and aligning members with roles and goals in

the team– Democratic team structure

Team spirit Endorses a Five-Phase Spiral Model

• CelebratingCelebrating– Recognition of team and individual accomplishment

: Team members express their appreciation and positive regards toward others.

– Social events outlining project milestones ( small celebration marking the progress)

• Letting goLetting go– Constructive feedback among team members – the whole team acknowledges each task completed

by a team member (member appreciated for having completed it).

– Valuable and trustworthy feeling

Jelled team

All teams in a jelled state have this in common:

– A jelled team has a specific goal, a goal that is shared by all

members.

– All members of a jelled team have a high sense of

responsibility and commitment.

– All members of a jelled team feel they are accomplishing

something of value.

Jelled team

– All members of a jelled team take interest in each others

work, since it’s part of their goal.

– The members are enjoying themselves. They long to get to

work to spend time together while moving the project

forward. Laughter is frequent.

– A jelled team has great communication: with customers,

management and in between members. Once a team begins to jell, the probability of success goes up spectacularly

Strong Cohesion

Jelled Team

Explicit taskClear Goal

Creating a jelled team

• Agree on common goals.

– detailed plan, performance target, quelity objectives,

schedule milestones

• Agree on strategy and plan

• Defining the process , establish the essential artifacts.

• Right skills to the right roles

• Adapting the use of tools with their roles

• Know what , how and when to start and finish their tasks.

• Aware of responsibilities and unique skills.

Team Members are not Interchangeable

• Define rolesDefine roles

• Right skillsRight skills

• Appropriate toolsAppropriate tools

ProjectManager

PerformanceEngineer

ReleaseEngineer

Analyst

Developer

Tester

• Understanding teamsUnderstanding teams

• Structuring team environmentsStructuring team environments

• Defining teamsDefining teams

• Building a teamBuilding a team

• Supporting team activitiesSupporting team activities–Virtual teaming

–VTA Tools for collaborative activities

Team Workflow - Outline

Supporting team activities

Introduction

We Need to unify a team´s effort around a common process, Modelling language and set of artifacts. Each member should share the same understanding of the artifacts and methods used. Open communication is key .

With the advent of the Internet , some team activities are distributed over various time frames and geographic locations

Virtual teaming• Electronic meeting vs face to face meetings

• Support for geographically distributed teams.

• Provides repository for team documents and knowledge (real time shared object)

• Integrates a host of computer communication channels (audio , videos, email , chat …..etc)

• Also used to support collaborative activities using a number of tools.

Virtual Teaming Approach-VTAVirtual Teaming Approach-VTA

CategorizerCategorizer• Encourages team members to converge to key issues

Electronic Brain Storming ToolElectronic Brain Storming Tool• Allows group to diverge from customary thinking for new and

creative ideas

Team outlinerTeam outliner• Allows to create on a multilevel tree of topics.Helps a

team explore issues in depth and details

Virtual Teaming Approach-VTAVirtual Teaming Approach-VTA

Alternative analyzerAlternative analyzerProvides a shared environment for making decision based on many

criteria.

VoterVoter Provides methods to reach a consensus or decision

Conclusion• Team

– Group of people working together– Sharing the same working space and tool

• Before creating a team– Understand the culture of the organization.

• Team do not occur accidentally• Team development passes through many steps• Jelled team : strong cohesion , clear goal ,

explicit task definition.• Various electronic tools can help team members

brainstorm and reach consensus

Questions

• What is needed in order to guarantee the

success of a team

• Explain the expected benefit of a jelled team

• Difference between a group and a team

• Pros and cons of a team composed of ”stars” ?