sponsored by the u.s. department of defense © 2007 by carnegie mellon university 1 pittsburgh, pa...

13
Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software Architects Paul Clements, Rick Kazman, Mark Klein Software Engineering Institute, Carnegie Mellon University Divya Devesh Indian Institute of Technology Guwahati Shivani Reddy, Prageti Verma Symbiosis Center for Information Technology

Upload: clinton-phelps

Post on 16-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software

Sponsored by the U.S. Department of Defense© 2007 by Carnegie Mellon University

1

Pittsburgh, PA 15213-3890

The Duties, Skills, and Knowledge of Software Architects

Paul Clements, Rick Kazman, Mark KleinSoftware Engineering Institute, Carnegie Mellon University

Divya DeveshIndian Institute of Technology Guwahati

Shivani Reddy, Prageti VermaSymbiosis Center for Information Technology

Page 2: Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software

© 2005 by Carnegie Mellon University 2

Introduction

Our interest:

• What does it mean to be a competent architect?

Our goal:

• To measure and improve competence

An important step along the way:

• What do architects do, know, and have?

Page 3: Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software

© 2005 by Carnegie Mellon University 3

Architects do more than architect

It is well known that architects do much more than merely design architectures.

We wanted to understand these lesser-understood aspects of an architect’s job.

Page 4: Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software

© 2005 by Carnegie Mellon University 4

A Survey

It is possible to gather a large sample of what contributes to being an architect• Duties: What an architect must do• Skills: What traits characterize an architect• Knowledge: What an architect must know

Large body of material aimed at architects

We conducted a survey of over 200 information sources and cataloged over 400 duties, skills, and knowledge area

Page 5: Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software

© 2005 by Carnegie Mellon University 5

Information sources

“Broadcast sources” -- written by self-styled experts, anonymous targets• Web sites related to software architecture (16)• Blogs and essays related to software architecture (16)• Books on software architecture (25 best-sellers)

Training and education sources• University courses listed on web (29)• Industrial courses (22)• Certificate / certification programs (7)

“Architecture for a living” sources• Job descriptions (60 from Fortune 150 companies)• Resume’s (12)

Page 6: Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software

© 2005 by Carnegie Mellon University 6

Method

Search for sources

Glean duties, skills, and knowledge from sources

Perform an affinity exercise to group the data• “Document the architecture”• “Produce an architecture description”

Tally amount of “bandwidth” each source category spends touting each data group

Page 7: Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software

© 2005 by Carnegie Mellon University 7

Duties: Sub-categories

0.00%

2.00%

4.00%

6.00%

8.00%

10.00%

12.00%

14.00%

16.00%

18.00%

20.00%

Cre

atin

g a

rch

itectu

re

Arc

hite

ctu

re E

va

lua

tion

an

d A

na

lysis

Do

cu

me

nta

tion

Exis

ting

syste

m a

nd

tra

nsfo

rma

tion

Ove

rall

Re

qu

ire

me

nts

Co

din

g a

nd

de

ve

lop

me

nt

Te

stin

g

Fu

ture

te

ch

no

log

ies

To

ols

an

d te

ch

no

log

y s

ele

ctio

n

Ove

rall

Clie

nts

De

ve

lop

ers

Pro

ject m

an

ag

em

en

t

Pe

op

le m

an

ag

em

en

t

Su

pp

ort

fo

r m

an

ag

em

en

t

Org

an

iza

tion

Bu

sin

ess

Te

ch

nic

al L

ea

de

rsh

ip

Te

am

Bu

ildin

g

Overall for Training & EducationalOverall for Architecting For LivingOverall for BroadcastedOVERALL

Page 8: Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software

© 2005 by Carnegie Mellon University 8

Duties: Major categories

0.0%5.0%

10.0%15.0%20.0%25.0%30.0%35.0%40.0%45.0%50.0%

Arc

hite

ctin

g

Life

cyc

le p

ha

ses

oth

er

tha

na

rch

itect

ure

Tech

nolo

gy

rela

ted

Inte

ract

ing

with

th

est

ake

ho

lde

rs

Man

ag

em

ent

Org

an

iza

tion

& B

usi

ne

ssre

late

d

Lea

de

rsh

ip &

te

am

bu

ildin

g

Overall for Training & Educational

Overall for Architecting For Living

Overall for Broadcasted

OVERALL

Page 9: Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software

© 2005 by Carnegie Mellon University 9

Skills: Sub-categories

0.00%

5.00%

10.00%

15.00%

20.00%

25.00%C

om

munic

ation(O

ut)

Com

munic

ation(B

oth

)

Com

munic

ation(I

n)

Inte

r-pers

onal

skills

(within

team

)

Inte

r-pers

onal

skills

(with o

ther

people

)

Leaders

hip

skills

Eff

ectively

Managin

g

Work

load

Skills

to E

xcel in

corp

ora

te e

nvir

onm

ent

Skills

for

handling

Info

rmation

Pers

onal Q

ualities

Skills

for

Handling

Unknow

n

Skills

for

Handling

Unexpecte

d

Learn

ing

Educational and training

Architecting for a living

Broadcasted

Overall Skills

Page 10: Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software

© 2005 by Carnegie Mellon University 10

Skills: Major categories

0.00%

5.00%

10.00%

15.00%

20.00%

25.00%

30.00%

35.00%

40.00%

45.00%

Co

mm

un

ica

tion

Inte

r-P

ers

on

al

skill

s

Wo

rk s

kills

Pe

rso

na

l ski

lls

Overall for Training & Educational

Overall for Architecting For Living

Overall for Broadcasted

OVERALL

Page 11: Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software

© 2005 by Carnegie Mellon University 11

Knowledge: Sub-categories

0.00%

5.00%

10.00%

15.00%

20.00%

25.00%

30.00%

35.00%

40.00%

45.00%

50.00%

Kn

ow

led

ge

of a

rch

itectu

re

co

nce

pts

Kn

ow

led

ge

of so

ftw

are

en

gin

ee

rin

g

De

sig

n K

no

wle

dg

e

Pro

gra

mm

ing

Kn

ow

led

ge

Sp

ecifi

c (

tech

no

log

ies a

nd

pla

tfo

rms)

Pla

tfo

rms

Ge

ne

ral (

tech

no

log

ies a

nd

pla

tfo

rms)

Do

ma

in K

no

wle

dg

e

Ind

ustr

y K

no

wle

dg

e

En

terp

rise

Kn

ow

led

ge

Le

ad

ers

hip

an

d m

an

ag

em

en

t

Overall for Training & Educational

Overall for Architecting For Living

Overall for Broadcasted

OVERALL

Page 12: Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software

© 2005 by Carnegie Mellon University 12

Knowledge: Major categories

0.0%

10.0%

20.0%

30.0%

40.0%

50.0%

60.0%

70.0%

80.0%

90.0%

Co

mp

ute

rS

cie

nce

Kn

ow

led

ge

Kn

ow

led

ge

of

tech

no

log

ies

an

d p

latf

orm

s

Kn

ow

led

ge

ab

ou

t yo

ur

org

an

iza

tion

’sco

nte

xt a

nd

ma

na

ge

me

nt

Overall for Training & Educational

Overall for Architecting For Living

Overall for Broadcasted

OVERALL

Page 13: Sponsored by the U.S. Department of Defense © 2007 by Carnegie Mellon University 1 Pittsburgh, PA 15213-3890 The Duties, Skills, and Knowledge of Software

© 2005 by Carnegie Mellon University 13

Conclusions

Next: Architect questionnaires

Idea is strongly reinforced that architects do much more than simply design architectures

Largest discrepancy between education-and-training sources and architecture-for-a-living sources

Community-wide set of duties, skills, and knowledge may form basis for • what an aspiring architect has to study• measurement of competence• Improvement strategies