13
Architectural Styles, Architectural Styles, Design Patterns, and Design Patterns, and Objects Objects Joe Paulowskey Joe Paulowskey

Architectural Styles, Design Patterns, and Objects Joe Paulowskey

Embed Size (px)

Citation preview

Page 1: Architectural Styles, Design Patterns, and Objects Joe Paulowskey

Architectural Styles, Design Architectural Styles, Design Patterns, and ObjectsPatterns, and Objects

Joe PaulowskeyJoe Paulowskey

Page 2: Architectural Styles, Design Patterns, and Objects Joe Paulowskey

OverviewOverview

Architectural DesignsArchitectural Designs Object-Oriented ParadigmObject-Oriented Paradigm Design PatternsDesign Patterns Architectural StylesArchitectural Styles

Page 3: Architectural Styles, Design Patterns, and Objects Joe Paulowskey

Architectural DesignsArchitectural Designs

Level of AbstractionLevel of Abstraction Architectural DescriptionArchitectural Description

SimpleSimple

““Conscience” for a system as it evolvesConscience” for a system as it evolves Limits of the SoftwareLimits of the Software

Page 4: Architectural Styles, Design Patterns, and Objects Joe Paulowskey

Architectural DescriptionsArchitectural Descriptions

System StructureSystem Structure High-LevelHigh-Level

Rich Abstractions for interactionRich Abstractions for interaction Interactions between componentsInteractions between components Rich ComponentsRich Components

Global PropertiesGlobal Properties

Page 5: Architectural Styles, Design Patterns, and Objects Joe Paulowskey

Architectural StylesArchitectural Styles

Characterizes a family of systemsCharacterizes a family of systems Vocabulary of Design ElementsVocabulary of Design Elements Design RulesDesign Rules Semantic InterpretationSemantic Interpretation AnalysesAnalyses

Page 6: Architectural Styles, Design Patterns, and Objects Joe Paulowskey

Architectural Styles BenefitsArchitectural Styles Benefits

Promotes design reusePromotes design reuse Code reuseCode reuse Cognitive DistanceCognitive Distance Use of Standardized styles supports Use of Standardized styles supports

interoperabilityinteroperability SpecializationSpecialization

Page 7: Architectural Styles, Design Patterns, and Objects Joe Paulowskey

Object-Oriented Design and Object-Oriented Design and Software ArchitectureSoftware Architecture

Encapsulate data and behaviorEncapsulate data and behavior

Page 8: Architectural Styles, Design Patterns, and Objects Joe Paulowskey

Architectural Styles and Object Architectural Styles and Object Oriented Design in Architectural DesignOriented Design in Architectural Design

Architectural StylesArchitectural Styles Describe a broad range of different design Describe a broad range of different design

familiesfamilies

Object Oriented DesignObject Oriented Design ComponentsComponents

Architectural DesignArchitectural Design Rich Collection of AbstractionsRich Collection of Abstractions

Page 9: Architectural Styles, Design Patterns, and Objects Joe Paulowskey

Architectural Styles and Design Architectural Styles and Design PatternsPatterns

Limitations of traditional Object OrientedLimitations of traditional Object Oriented InteractionInteraction Specifying and PackagingSpecifying and Packaging

Design Patterns Design Patterns Repeated in Software DesignsRepeated in Software Designs

Page 10: Architectural Styles, Design Patterns, and Objects Joe Paulowskey

Specifying and Reusing Design Specifying and Reusing Design PatternsPatterns

1.1. Thoroughly understand design domainThoroughly understand design domain

2.2. EncapsulationEncapsulation

3.3. Collection of well-known and proven Collection of well-known and proven design idiomsdesign idioms

Page 11: Architectural Styles, Design Patterns, and Objects Joe Paulowskey

Architectural Styles and Design Architectural Styles and Design PatternsPatterns

RelatedRelated View as kinds of patternsView as kinds of patterns

Design language and vocabularyDesign language and vocabulary Set of Idiomatic usesSet of Idiomatic uses

StylesStyles Building blocksBuilding blocks Higher AbstractionHigher Abstraction

PatternsPatterns More SpecificMore Specific

Page 12: Architectural Styles, Design Patterns, and Objects Joe Paulowskey

Design Patterns & Architectural Design Patterns & Architectural PatternsPatterns

Apply to Architectural designApply to Architectural design Façade, Observer, and StrategyFaçade, Observer, and Strategy

Don’t ApplyDon’t Apply Factory and FlyweightFactory and Flyweight

Page 13: Architectural Styles, Design Patterns, and Objects Joe Paulowskey

Questions?Questions?