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...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>DEV475</strong> <strong>Mastering</strong> <strong>Object</strong>-<strong>Oriented</strong> <strong>Analysis</strong> <strong>and</strong> <strong>Design</strong> <strong>with</strong> <strong>UML</strong>What Is Architecture?What Is Architecture?• Software architecture encompasses a set ofsignificant decisions about the organizationof a software system.• Selection of the structural elements <strong>and</strong> theirinterfaces by which a system is composed• Behavior as specified in collaborations amongthose elements• Composition of these structural <strong>and</strong> behavioralelements into larger subsystems• Architectural style that guides this organizationGrady Booch, Philippe Kruchten, Rich Reitman, Kurt Bittner; Rational(derived from Mary Shaw)<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 8Based on extensive research, Rational has established a definition of architecture.“Significant” in this context implies strategic, of major impact.The architecture has a static <strong>and</strong> a dynamic perspective.The architecture for similar systems should be similar (a particular style is used).An equation we have used is:Architecture = Elements + Form + Rationale.Rationale is essential for justifying a good architecture.Patterns are the guidelines for assembling elements in some form. We will discusspatterns in the architecture modules.4 - 8

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

Saved successfully!

Ooh no, something went wrong!