0% found this document useful (0 votes)
80 views16 pages

Foundations For The Study of Software Architecture: Presented by Charles Reid 2/7/2005

The document summarizes a presentation by Dewayne Perry and Alexander Wolf on establishing foundations for studying software architecture. They propose a model for software architecture that views it as consisting of elements, form, and rationale. Elements can be processing, data, or connecting. Form specifies weighted properties and relationships. Rationale explains architectural decisions. They provide a compiler example to illustrate their model, showing processing, data, and connecting elements and how their relationships are specified in the architectural form. Their goal is to facilitate comparison and reuse of software architectures.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
80 views16 pages

Foundations For The Study of Software Architecture: Presented by Charles Reid 2/7/2005

The document summarizes a presentation by Dewayne Perry and Alexander Wolf on establishing foundations for studying software architecture. They propose a model for software architecture that views it as consisting of elements, form, and rationale. Elements can be processing, data, or connecting. Form specifies weighted properties and relationships. Rationale explains architectural decisions. They provide a compiler example to illustrate their model, showing processing, data, and connecting elements and how their relationships are specified in the architectural form. Their goal is to facilitate comparison and reuse of software architectures.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 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

You might also like