Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a...

21
Software Engineering Teams Group 3 presents:

Transcript of Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a...

Page 1: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Software Engineering Teams

Group 3 presents:

Page 2: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments toward organizational objectives. It is the fuel that allows common people to attain uncommon results. ~Andrew Carnegie

Page 3: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The items we are going to talk about:

1. The Problem

2. The Answer

3. How is it any better?

Page 4: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Topic 1

The Problem

Page 5: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The Problem

Sackman, Erikson, and Grant

•7 years experience

•Coding time was 20 to 1

•Debugging time was 25 to 1

•Program size was 5 to 1

•Program execution speed was about 10 to 1

•The study found no correlation between experience and performance.

Productivity variation between good and poor programmers

Page 6: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The Problem

Critics find some flaws in their study -

low level and high level programming languages

Still a 10 to 1 differenceThere’s ALWAYS a critic!

Page 7: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The ProblemFurther support since the original study -

Curtis 1981

•Mills 1983

•DeMarco and Lister 1985

•Curtis et al. 1986

•Card 1987

•Boehm and Papaccio 1988

•Valett and McGarry 1989

•Boehm et al 2000

I told you so!

Page 8: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The Problem

An anecdotal fact

Project at Boeing

80 programmers on the project

Replace all 80 programmers with 1 guy

Page 9: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The Problem

The question is - Small team or large team??

What's a programming manager to do?

Page 10: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The ProblemThe Large Team

Can managers pull off an amazing coordination of hundred of programmers like the Beijing Opening Ceremony?

Page 11: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The Problem

The Small Team

Managers usually prefer a smaller elite group to get the job done.

Page 12: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Topic 2

The Answer

Page 13: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The Answer Dr. Harlan Mills proposed answer

Surgical Teams

Mill’s proposal

Page 14: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The Answer

Each team has 10 people in the Surgeon Co-pilot method -•The surgeon•The copilot•The administrator•The editor•Two secretaries•The program clerk•The toolsmith•The tester•The language lawyer

Page 15: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The Answer

The surgeon - Chief programmer

- Designs the program

- Codes it

- Tests it

- Writes the documentation

- Highly talented, 10 + years experience

Page 16: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The Answer

The copilot - Alter ego of the surgeon

- Able to do any part of the job

- less experienced

- Researches alternative designs

- Insurance against disaster to the surgeon

Page 17: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The Answer

The administrator

The editor

Two secretaries

The program clerk

The toolsmith

The tester

The language lawyer

Page 18: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Topic 3

How is it any better?

Page 19: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

How is it any better?

In a surgical team…

Scalability…

In a conventional team…

Page 20: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

What we have learned

1. The issues surrounding a small vs large group

2. The different roles in Mill’s proposal

3. How Mill’s proposal compares to a conventional method

Page 21: Software Engineering Teams Group 3 presents: Teamwork is the ability to work together toward a common vision. The ability to direct individual accomplishments.

Teams

The End