162x Filetype PDF File size 2.49 MB Source: www.dre.vanderbilt.edu
Mo 2 January 21-25, 2008, Munich, Germany ICM - International Congress Centre Munich Pattern-Oriented Software Architecture Frank Buschmann Kevlin Henney E R U T E C T Pattern-Oriented R C H I A Software Architecture R E A W T O F O F S F T A H E C R T Kevlin Henney Frank Buschmann Kevlin Henney Frank Buschmann Curbralan Limited Siemens AG Curbralan Limited Siemens AG kevlin@curbralan.com frank.buschmann@siemens.com kevlin@curbralan.com frank.buschmann@siemens.com E Agenda C H I T E C T U R R Introduction R E A W A Stand-Alone Patterns E D S O F T Pattern Complements / Pattern Compounds R I E N T Pattern Stories / Pattern Sequences O Pattern Languages T T T E R N – Outroduction P A References Pattern-Oriented Software Architecture 2 ©Frank Buschmann, Kevlin Henney, all rights reserved 1 E Where we are C H I T E C T U R R Introduction R E A W A Stand-Alone Patterns E D S O F T Pattern Complements / Pattern Compounds R I E N T Pattern Stories / Pattern Sequences O Pattern Languages T T T E R N – Outroduction P A References Pattern-Oriented Software Architecture 3 ©Frank Buschmann, Kevlin Henney, all rights reserved E On Designing with Patterns (1) C H I T E C T U R R Patterns have become a popular tool in software design … R E A They have changed the way software developers W A think about and practice software design E D S O F T They provide us with a software design vocabulary They help us to resolve recurring problems R I E N T constructively and based on proven solutions O They support us in understanding the architecture of a given software system T T T E R N – ... P A But: applying patterns in software design is not necessarily designing with patterns! Pattern-Oriented Software Architecture 4 ©Frank Buschmann, Kevlin Henney, all rights reserved 2 E On Designing with Patterns (2) C H I T E C T U R R Patterns applied in isolation and as modular building blocks do R E A not create sustainable designs. Command W A Processor Solutions Client Command Logging Logging E D S O F T Fail to consider the surrounding Processor Context Strategy problems and their solutions. Component * Concrete Have at best only local effects. Logging R I E N T Strategy O Do not complement one another Composite Strategy Leaf Composite or mutually reinforce their n ig s e T T T E R N – beneficial properties. or D P A Po Memento Create complex architectures Command Caretaker that lack useful operational and developmental qualities. Concrete Concrete Command Command Memento Command Application Pattern-Oriented Software Architecture 5 ©Frank Buschmann, Kevlin Henney, all rights reserved E On Designing with Patterns (3) C H I T E C T U R R There are two fundamental ways of integrating patterns: R E A Refinement: One pattern refines the structure and behavior of another W A pattern to address a specific sub-problem or implementation detail. E D S O F T Combination: Two or more patterns arranged to form a larger structure that addresses a more complex problem. R I E N T O There are also relationships regarding choice: T T T E R N – Alternatives: Some patterns describe alternatives to one another. They P A address the same or a similar problem, but each pattern considers a slightly different set of forces. Thus, the patterns provide different solutions and have different consequences. Cooperation: Some patterns nicely complement one another, mutually reinforcing their structural and behavioral properties. Pattern-Oriented Software Architecture 6 ©Frank Buschmann, Kevlin Henney, all rights reserved 3
no reviews yet
Please Login to review.