12.07.2015 Views

DEV475 Mastering Object-Oriented Analysis and Design with UML ...

DEV475 Mastering Object-Oriented Analysis and Design with UML ...

DEV475 Mastering Object-Oriented Analysis and Design with UML ...

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Module 5 - Architectural <strong>Analysis</strong>Patterns <strong>and</strong> FrameworksPatterns <strong>and</strong> Frameworks• Pattern• Provides a common solution to a common problemin a context• <strong>Analysis</strong>/<strong>Design</strong> pattern• Provides a solution to a narrowly-scoped technicalproblem• Provides a fragment of a solution, or a piece of thepuzzle• Framework• Defines the general approach to solving theproblem• Provides a skeletal solution, whosedetails may be <strong>Analysis</strong>/<strong>Design</strong> patterns<strong>Mastering</strong> <strong>Object</strong> <strong>Oriented</strong> <strong>Analysis</strong> <strong>and</strong> <strong>Design</strong> <strong>with</strong> <strong>UML</strong>Copyright © 2003 Rational Software, all rights reserved 11The selection of the upper-level layers may be affected by the choice of anarchitectural pattern or framework. Thus, it is important to define what these termsmean.A pattern codifies specific knowledge collected from experience. Patterns provideexamples of how good modeling solves real problems, whether you come up <strong>with</strong> thepattern yourself or you reuse someone else’s. <strong>Design</strong> patterns are discussed in moredetail on the next slide.Frameworks differ from <strong>Analysis</strong> <strong>and</strong> <strong>Design</strong> patterns in their scale <strong>and</strong> scope.Frameworks describe a skeletal solution to a particular problem that may lack manyof the details, <strong>and</strong> that may be filled in by applying various <strong>Analysis</strong> <strong>and</strong> <strong>Design</strong>patterns.A framework is a micro-architecture that provides an incomplete template forapplications <strong>with</strong>in a specific domain. Architectural frameworks provide the contextin which the components run. They provide the infrastructure (plumbing, if you will)that allows the components to co-exist <strong>and</strong> perform in predictable ways. Theseframeworks may provide communication mechanisms, distribution mechanisms,error processing capabilities, transaction support, <strong>and</strong> so forth.Frameworks may range in scope from persistence frameworks that describe theworkings of a fairly complex but fragmentary part of an application to domain-specificframeworks that are intended to be customized (such as Peoplesoft, SanFransisco,Infinity, <strong>and</strong> SAP). For example, SAP is a framework for manufacturing <strong>and</strong> finance.5 - 11

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!