adapting cooperative learning to teach software architecture in multiple-role teams steve chenoweth,...

15
Adapting Cooperative Learning to Teach Software Architecture in Multiple- Role Teams Steve Chenoweth, Mark Ardis and Cheryl Dugas

Upload: abigail-francis

Post on 02-Jan-2016

219 views

Category:

Documents


1 download

TRANSCRIPT

Adapting Cooperative Learning to Teach Software

Architecture in Multiple-Role Teams

Steve Chenoweth, Mark Ardis and Cheryl Dugas

2

Outline

• Challenges teaching software architecture

• Cooperative learning• Experience at Rose-Hulman and

RIT

3

Architect in the Middle

Maintainer Easy toMaintain

User Easy toUse

Developer Easy toDevelop

Customer Cheap toBuild

Architect

4

Cooperative Learning

• Small teams of students• Positive interdependence• Face-to-face interaction• Individual accountability and

personal responsibility• Interpersonal and small-group

skills• Group processing

5

Course at Rose-Hulman

• Junior-level course in Software Architecture and Design for BSSE

• Students:– Invented projects– Designed architecture– Implemented skeleton of system

6

Small Teams

Sally SarahSam

Alan Alex Alice

Mark MaxMaryMaggie

Ben BethBertBecky

7

Projects - Teams of Teams

P1:

P2:

P3:

P4:

Customer

Customer

Customer

Customer

Architect

Architect

Architect

Architect

Developer

Developer

Developer

Developer

8

Meetings - 1st 20 min

Customer

Ben

Customer

Beth

Customer

Becky

Architect

Mark

Architect

Mary

Architect

Max

Architect

Sam

Architect

Sally

Architect

Sarah

Customer

Alan

Customer

Alex

Customer

Alice

9

Meetings - 2nd 20 min

Architect

Ben

Architect

Beth

Architect

Becky

Customer

Mark

Customer

Mary

Customer

Max

Customer

Sam

Customer

Sally

Customer

Sarah

Architect

Alan

Architect

Alex

Architect

Alice

10

Course at RIT

• Senior-level course in Software Architecture for BSSE

• Students:– Invented projects– Designed architecture

• Special meeting rooms used

11

RIT Meetings - 1st 15 MinutesRoom 1 Room 2

Customer

Ben

Customer

BethDeveloper

Bert

Developer

Becky

Architect

Mark

Architect

Mary

Architect

Max

Architect

Maggie

12

RIT Meetings - 2nd 15 MinutesRoom 1 Room 2

Architect

Ben

Architect

Beth Architect

Bert

Architect

Becky

Customer

Mark

Customer

Mary

Developer

Max

Developer

Maggie

13

RIT Meetings - 3rd 15 MinutesRoom 1 Room 2

Architect

Ben

Architect

Beth

Architect

Bert

Architect

Becky

Architect

Mark

Architect

Mary

Architect

Max

Architect

Maggie

14

Results

• Role playing is essential for software architecture courses

• Cooperative learning is effective at individual and team levels

• Participation on multiple projects is important

15

Slides Available

http://www.se.rit.edu/~ardis/pubs.html