Vous êtes sur la page 1sur 16

Foundations for the Study of

Software Architecture
by Dewayne Perry &
Alexander Wolf
ACM SIGSOF! Oct" #$$%
Presented by
Charles &eid
%'('%))*

Dewayne +" Perry

,nder-rad de-ree in Philoso.hy


with a M"S" and Ph"D" in
Co/.uter Science

0on- list of acade/ic


e/.loy/ent includin- ,C0A
1.hiloso.hy2! CM,! and
,ni3ersity of exas at Austin

ons of .rofessional research


on software .rocesses and
software en-ineerin-

4oard /e/ber of International


Software Process Association
1ISPA2"

Alexander 0" Wolf

Prof" of Co/.uter Science at the


,ni3ersity of Colorado at 4oulder

Director of Software +n-ineerin-


&esearch 0ab

Chair of the ACM S.ecial Interest


Grou. in Software +n-ineerin-
1SIGSOF2

Se3eral .ublications in se3eral


areas 5 6etwor7in-! Distributed
Syste/s! Software Architecture!
Software Process! Security!
Co/.onent Mana-e/ent! 8

Pur.ose of the Pa.er

he .ur.ose is 9to build the foundation


for software architecture:"

hey loo7 at other architectural


disci.lines to -ain an intuition for
software architecture"

he .a.er .ro.oses a /odel for


software architecture and .ro3ides an
exa/.le

Where Does Architecture Fit;

&e<uire/ents

Deter/ine what infor/ation! .rocessin-! and characteristics


of the infor/ation .rocessin- are needed

Architecture

Deter/ines architectural ele/ents! their interactions! and


the constraints they are sub=ect to

Desi-n

Modulari>ation and detailed interfaces! al-orith/s! and data


ty.es to su..ort the architecture

I/.le/entation

&e.resentations of ele/ents fro/ the desi-n



Why are they doin- this;

he authors ex.ect that disci.lined software


architecture will?

Pro3ide an architectural fra/ewor7 for satisfyin-


re<uire/ents

Pro3ide a basis for desi-n! cost esti/ation! and


.rocess /ana-e/ent

Pro/ote reuse

Pro3ide a basis for consistency and de.endency


analysis

Pro3ide a way to se.arate aesthetics fro/


en-ineerin-

Architectural +rosion and Drift

Architectural +rosion

he syste/ beco/es /ore brittle due to


3iolations of the ori-inal architecture

Architectural Drift

Due to 9insensiti3ity about the architecture:

hey clai/ this leads to inada.tability


which can lead to lac7 of clarity or
coherence

Gainin- the Intuition for
Software Architecture

Co/.uter Architecture

6ot a useful basis for software architecture


due to funda/ental differences

&elati3ely s/all nu/ber of desi-n


ele/ents and scale is achie3ed throu-h
re.lication

6etwor7 Architecture

Also not too useful

Focuses on nodes and connections and


deals with a s/all nu/ber of to.olo-ies

Gainin- the Intuition for
Software Architecture

4uildin- Architecture

Pro3ides useful insi-ht

Multi.le 3iews of sa/e structure

Architectural styles

Style and en-ineerin-

Style and /aterials



he Architectural Model

Software Architecture @ A+le/ents! For/!


&ationaleB

+le/ents can be .rocessin- ele/ents! data


ele/ents! or connectin- ele/ents

For/ consists of wei-hted .ro.erties and


relationshi.s

Wei-htin- indicates i/.ortance or necessity of the


relationshi.

&ationale is the reasonin- behind the architectural


decisions

Co/.iler +xa/.le

Co/.iler with * .hases

Processin- ele/ents @ Alexer! .arser!


se/antor! o.ti/i>er! code -eneratorB

Data ele/ents @ Acharacters! to7ens!


.hrases! annotated .hrases! ob=ect
codeB

Connectin- +le/ents @ A.rocedure


calls! .ara/etersB

Co/.iler +xa/.le cont"

For/ /i-ht dictate that the o.ti/i>er and annotated


.hrases /ust acco/.any each other but they are not
necessary ele/ents

For/ /i-ht also dictate relationshi. between data


ele/ents

Processin- Architectural Ciew

Architectural Data Ciew

Co/.arin- Different Co/.iler
Models

Conclusions

hey belie3e that theyDre /odel and the


use of a..licationEoriented .ro.erties
will?

Ma7e it easier to co/.are architectures

Ma7e it easier to deter/ine which


architectural co/.onents can be reused

4etter illustrate the de.endencies and


consistency between architectural
ele/ents

Vous aimerez peut-être aussi