Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
SENG%403%–%Software%Development%in%Teams%&%Organizations
Working(in(TeamsSoftware(Development(in(Teams(&(Organizations
288 SENG%403%–%Software%Development%in%Teams%&%Organizations
Working(in(Teams
A(team(is(a(number(of(people(working(
together(to(achieve(a(common(goal.
Teamwork(contributes(considerably(to(
improved(productivity(and(quality.
( ( ( ( ( BUT Only(when(done(properly!(
289
SENG%403%–%Software%Development%in%Teams%&%Organizations
Effective(Teams
An(effective(team(is(a(small(number(of(people,(
with(complementary(skills,(who(are(committed(to(a(common(purpose,(performance(goals,(and(approach(for(which(they(are(mutually(
accountable.((Katzenbach(and(Smith,(1993)(
Successful(software(development(is(all(about(
effective(teams.(
290 SENG%403%–%Software%Development%in%Teams%&%Organizations
Team(Size
Not(too(small.
Why?
Not(too(large.
Why?
Scrum(recommends(7(+/T(2((between(5(and(9)(
291
SENG%403%–%Software%Development%in%Teams%&%Organizations
Team(Skills
Team(should(have(diverse(skills. Coding,(design,(testing,(tools,(databases,(hardware,(performance,(GUI…(
Specialists(vs.(generalists?( Generalist:(knows(something(about(everything.
▪ A(team(of(generalists(can(easily(flounder(because(none(of(them(have(the(skills(to(get(things(done
Specialist:(knows(everything(about(something.
▪ Specialists(will(often(be(blind(to(the(issues(which(other(specialists(focus(on.
http://www.agilemodeling.com/essays/generalizingSpecialists.htm
292 SENG%403%–%Software%Development%in%Teams%&%Organizations
Team(Skills
http://www.agilemodeling.com/essays/generalizingSpecialists.htm
Traditional,Team,(Specialists) Agile,Team,(Generalists)
293
SENG%403%–%Software%Development%in%Teams%&%Organizations
"A(human(being(should(be(able(to(change(a(diaper,(plan(an(invasion,(butcher(a(hog,(con(a(ship,(design(a(building,(write(a(sonnet,(balance(accounts,(build(a(wall,(set(a(bone,(comfort(the(dying,(take(orders,(give(orders,(cooperate,(act(alone,(solve(equations,(analyze(a(new(problem,(pitch(manure,(program(a(computer,(cook(a(tasty(meal,(fight(efficiently,(die(gallantly.(Specialization(is(for(insects.“( Robert(A.(Heinlein(
http://www.agilemodeling.com/essays/generalizingSpecialists.htm
294 SENG%403%–%Software%Development%in%Teams%&%Organizations
Team(Skills
“A(generalizing(specialist”(is(someone(who: Has(at(least(a(general(knowledge(of(software(development.
Has(at(least(a(general(knowledge(of(the(business(domain(in(which(they(work.
Has(one(or(more(technical(specialties((e.g.(Java(programming,(testing(,(databases).
Actively(seeks(to(gain(new(skills(in(both(their(existing(specialties(as(well(as(in(other(areas,(including(both(technical(and(domain(areas.
http://www.agilemodeling.com/essays/generalizingSpecialists.htm
295
SENG%403%–%Software%Development%in%Teams%&%Organizations
Stages(of(Team(Formation
Tuckman’s(model:
Forming Storming Norming Performing
http://www.slideshare.net/ganis/creatingTeffectiveTteamsTfinalTv4
296 SENG%403%–%Software%Development%in%Teams%&%Organizations
Stage(1:(Forming
Lots(of(discussions(on(the(purpose(and(how(
the(team(will(work. Members(are(positive(and(polite. Some(members(get(anxious. Some(members(get(excited. Does(not(last(for(long((maybe(one(meeting) Can(be(frustrating(for(some(people((Why?)
http://www.slideshare.net/ganis/creatingTeffectiveTteamsTfinalTv4
297
SENG%403%–%Software%Development%in%Teams%&%Organizations
Stage(2:(Storming
More(clarity(on(the(purpose,(but(differences(
start(to(play(a(role. Decisions(don’t(come(easily(within(the(group. Competition(arises(when(some(team(
members(try(to(establish(themselves. Cliques(form(–(there(may(be(power(struggles.(
http://www.slideshare.net/ganis/creatingTeffectiveTteamsTfinalTv4
298 SENG%403%–%Software%Development%in%Teams%&%Organizations
Stage(2:(Storming
As(roles(are(clarified,(and(the(ways(of(working(are(defined:( authority(of(the(leader(may(be(challenged.
some(may(feel(overwhelmed(by(how(much(they(need(to(learn(and(achieve.(
some(may(oppose(the(approach(being(used.(
some(may(resist(taking(on(tasks.
some(may(even(question(the(purpose(of(the(team. Team(can(get(distracted(by(social(problems(
http://www.slideshare.net/ganis/creatingTeffectiveTteamsTfinalTv4
299
SENG%403%–%Software%Development%in%Teams%&%Organizations
Stage(3:(Norming
Good(leadership(and(commitment(will(move(the(team(on(to(this(stage.
Agreement(and(consensus(is(largely(formed(within(the(team.
Roles(and(responsibilities(are(clear(and(accepted.( Big(decisions(are(made(by(group(agreement. Smaller(decisions(may(be(delegated(to(individuals(or(
subTteams.( The(team(discusses(and(improves(its(processes(and(
working(style.( Leadership(is(shared(by(the(teams,(and(there(is(
general(respect(for(the(authority.( The(team(starts(to(engage(in(fun(and(social(activities.
http://www.slideshare.net/ganis/creatingTeffectiveTteamsTfinalTv4
300 SENG%403%–%Software%Development%in%Teams%&%Organizations
Stage(4:(Performing(
The(team(is(more(strategically(aware(–(they(know(clearly(what(they(are(doing(and(why.
The(team(has(a(shared(vision. The(team(has(a(high(degree(of(autonomy.(
Disagreements(will(occur(but(they(are(resolved(positively(within(the(team.
The(team(becomes(independent(of(external(management.
Necessary(changes(to(processes(and(structure(are(regularly(made(by(the(team.
http://www.slideshare.net/ganis/creatingTeffectiveTteamsTfinalTv4
301
SENG%403%–%Software%Development%in%Teams%&%Organizations
Stage(4:(Performing(
The(team(is(no(longer(distracted(by(social(and(
emotional(issues(–(they(deal(with(them(along(
the(way. The(team(is(focused(on(achieving(the(goal. Team(members(feel(comfortable(about(asking(
for(assistance.( Team(members(look(after(one(another.
http://www.slideshare.net/ganis/creatingTeffectiveTteamsTfinalTv4302 SENG%403%–%Software%Development%in%Teams%&%Organizations
Apollo(Syndrome
A(condition(where(teams(of(highly(capable(individuals(can,(collectively,(perform(badly.(
Individuals(were(hired(to(work(in(a(team(based(on(high(standards.( Ability(and(aptitude(tests(to(select(those(with(high(analytical(skills.(
The(initial(perception(of(Apollo(teams(was(that(they(were(bound(to(win(in(competitions.(
The(Apollo(teams(often(finished(near(the(bottom(of(eight(teams.
http://www.slideshare.net/ganis/creatingTeffectiveTteamsTfinalTv4
303
SENG%403%–%Software%Development%in%Teams%&%Organizations
Reasons(for(Failure
Teams(spent(excessive(time(in(abortive(or(destructive(debate.
They(had(difficulties(in(their(decision(making,(with(little(coherence(in(the(decisions(reached.
Team(members(tended(to(act(along(their(own(favorite(lines
Teams(recognized(what(was(happening(but(overcompensated( they(avoided(confrontation,(which(equally(led(to(problems(in(decision(making.
http://www.slideshare.net/ganis/creatingTeffectiveTteamsTfinalTv4
304 SENG%403%–%Software%Development%in%Teams%&%Organizations
Successful(Teams
The(successful(Apollo(teams(were(characterized(by:▪ The(absence(of(highly(dominant(individuals,(and
▪ A(particular(style(of(leadership.
Successful(leaders(were(skeptical(people(who(sought(to(impose(some(shape(or(pattern(on(group(discussion,(and(on(the(outcome(of(group(activities.
They(focused(attention(on(the(setting(of(objectives(and(priorities,(and(shaping(the(way(team(effort(was(applied.(
The(successful(leaders(were(tough,(discriminating(people(who(could(both(hold(their(ground(in(any(company,(yet(not(dominate(the(group.
http://www.slideshare.net/ganis/creatingTeffectiveTteamsTfinalTv4
305
SENG%403%–%Software%Development%in%Teams%&%Organizations
Remarks(on(Effective(Teams
Have(trust(and(confidence(in(each(other. Maintain(open(and(honest(communication. Provide(and(accept(feedback(on(performance. Accept(responsibility(and(don’t(blame(one(another(for(mistakes.
(Look(upon(first(time(mistakes(as(opportunities(for(learning,(rather(than(criticism(and(punishment.(
Are(tough(on(repetitive(errors,(just(as(they(encourage(appropriate(risk(and(innovation.
http://www.slideshare.net/ganis/creatingTeffectiveTteamsTfinalTv4
306 SENG%403%–%Software%Development%in%Teams%&%Organizations
Remarks(on(Effective(Teams
Have(prideful(humility:(pride(in(the(outcomes(of(the(team(and(a(humility(that(assumes(that(other(team(members(have(a(level(of(expertise(that(add(value(to(the(outcome.
Honor(the(contribution(that(each(member(makes(to(the(total(work(of(the(team.(
Recognize(that(each(member(is(as(important(as(the(other(in(the(application(of(their(expertise.
Celebrate(their(successes(together.http://www.slideshare.net/ganis/creatingTeffectiveTteamsTfinalTv4
307
SENG%403%–%Software%Development%in%Teams%&%Organizations
How(To(Be(An(Effective(Member?
Communicate. Don’t(blame(others. Support(the(team. No(bragging. Listen(actively. Get(involved.
http://www.slideshare.net/ganis/creatingTeffectiveTteamsTfinalTv4
308 SENG%403%–%Software%Development%in%Teams%&%Organizations
Communication
http://www.agilemodeling.com/essays/communication.htm
309
SENG%403%–%Software%Development%in%Teams%&%Organizations
Exercise.
310 SENG%403%–%Software%Development%in%Teams%&%Organizations
Factors(Affecting(Communication
Physical,proximity:(The(closer(people(are(to(one(another,(the(greater(the(opportunities(to(
communicate.(
http://www.agilemodeling.com/essays/communication.htmhttp://www.informativeworkspace.org/desks.php
311
SENG%403%–%Software%Development%in%Teams%&%Organizations
Factors(Affecting(Communication
Temporal,proximity:((Whether(or(not(two(
people(are(working(at(the(same(time.((
http://www.agilemodeling.com/essays/communication.htm
http://en.ideas4all.com/ideas/0000/1164/Tricks_to_sleep_in_office3.jpghttp://images.businessweek.com/ss/08/12/1230_queens_school_tour/7.htm
312 SENG%403%–%Software%Development%in%Teams%&%Organizations
Factors(Affecting(Communication
Amicability:((The(willingness(of(someone(to(hear(the(
thoughts(of(another(person(with(good(will(and(to(
speak(without(malice.
http://www.agilemodeling.com/essays/communication.htm
http://www.cartoonstock.com/newscartoons/cartoonists/mfl/lowres/mfln11l.jpg
313
SENG%403%–%Software%Development%in%Teams%&%Organizations
Osmotic(Communication
Indirect(information(transfer(through(
overhearing(conversations(or(simply(noticing(
things(happening(around(you.
http://www.agilemodeling.com/essays/communication.htm
314 SENG%403%–%Software%Development%in%Teams%&%Organizations
Improving(Communication
Follow(the(most(effective(communication(
technique(possible. Be(prepared(to(change(your(approach(when(
needed. Always(ask(if(communication(is(effective.
http://www.agilemodeling.com/essays/communication.htm
315
SENG%403%–%Software%Development%in%Teams%&%Organizations
Improving(Communication
Stand(up(meetings:(Short(meetings(held(at(
the(beginning((or(end)(of(every(day. They(are(meant(to(be(short((~15(minutes) Go(around(the(“table”
What(did(you(do(yesterday?
What(do(you(plan(to(accomplish(today?
Is(there(something(preventing(you(from(getting(
your(task(done(?
316 SENG%403%–%Software%Development%in%Teams%&%Organizations
Symptoms(of(Poor(Communication
Not(knowing(the(current(status(of(the(project. Schedule:(E.g.(Are(we(done(with(this(iteration?
Progress:(E.g.(What(is(our(current(test(coverage? Not(knowing(critical(information(about(other(members. E.g.(Why(hasn’t(Tom(been(coming(to(work?
Not(knowing(what(tools(the(team(is(using. E.g.(What(are(we(using(for(source(code(control?
E.g.(I(thought(we(were(supposed(to(use(version(3(not(2.
317
SENG%403%–%Software%Development%in%Teams%&%Organizations
Symptoms(of(Poor(Communication
Not(knowing(where(to(find(things. E.g.(Where(is(the(code(for(feature(Y?
Not(knowing(how(to(run(the(software. E.g.(I(don’t(know(how(to(make(it(work.(Let(me(get(Sarah.
E.g.(Honestly,(I(can’t(run(the(tests,(but(I(know(someone(who(can.
Too(many(conflicts/build(failures. E.g.(I(didn’t(know(this(class(was(gone.
E.g.(I(thought(the(order(was(B(then(A(not(A(then(B.( Duplication(of(work.
E.g.(Come(on..(I(thought(I(was(supposed(to(work(on(this(task.
318 SENG%403%–%Software%Development%in%Teams%&%Organizations
Symptoms(of(Poor(Communication
If(anyone(of(the(team(cannot(answer(such(
questions,(then(raise(the(flag!
What(are(we(using(for(CI?
Who(is(supposed(to(be(working(on(task(X?
When(is(this(iteration(over?
Where(is(the(code(for(feature(Y?
What(is(our(current(test(coverage?
319
SENG%403%–%Software%Development%in%Teams%&%Organizations
Quick(Review
Symptoms(of(bad(communication?( Which(of(the(following(statements(is(incorrect:
A. Communicating(through(videoTconferencing(is(valuable(because(it(helps(distributed(teams(to(have(faceTtoTface(conversations.
B. Whenever(videoTconferencing(is(possible,(there(is(no(justification(for(not(using(it.(
C. Using(videoTconferencing(can(sometimes(be(disruptive.
D. VideoTconferencing(is(effective,(but(does(not(solve(the(issue(of(temporal(proximity.(
320