Successfully reported this slideshow.
Your SlideShare is downloading. ×

Good Slides on Architecture.ppt

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 16 Ad

More Related Content

Similar to Good Slides on Architecture.ppt (20)

Advertisement

Good Slides on Architecture.ppt

  1. 1. Analysis and Design Discipline • Using the Crystallization Analogy • Understanding the Analysis and Design Discipline • Defining the Analysis and Design Activities • Documenting the Analysis and Design Discipline • Viewing the Model • A Word on Iteration
  2. 2. Process & Life-cycle Viewpoint Project Management Implementation Test Analysis & Design Development Cycle Phases Engineering Disciplines Supporting Disciplines Configuration & Change Mgmt Requirements Elaboration Transition Inception Construction Principal iteration for the discipline
  3. 3. Analysis and Design Activities – The Crystallization Analogy Analysis blends with design Analysis precedes design Analysis mixes with design
  4. 4. Designer Role Use-Case Analysis Designer Architectural Analysis Use-Case Model Design Model Use-Case Realizations (created) Use-Case Realizations (preliminary) Analysis Class (architecturally significant) Supplementary Specifications Glossary Designer
  5. 5. Benefits to a Good Architecture • Architecture lets developers gain and retain intellectual control over a project, to manage its complexity, and to maintain system integrity • Architecture provides an effective basis for large-scale reuse • Architecture provides a basis for project management • Architecture facilitates component-based development • A component fulfills a clear function in the context of a well-defined architecture • A component conforms to and provides the physical realization of a set of interfaces • Components exist relative to a given architecture UPEDU Concept: Software Architecture
  6. 6. Typical Interactions • Parameter interaction • Data passed from one procedure to another • Shared memory interfaces • Block of memory is shared between procedures • Procedural interfaces • Components encapsulate sets of procedures to be called by other components • Message passing interaction • Components request services from others
  7. 7. System’s Reuse and Resilience • Good architectures that meet their requirements, are resilient, and are component-based • A resilient architecture enables • Improved maintainability and extensibility • Economically-significant reuse • Clean division of work among teams of developers • Encapsulation of hardware and system dependencies • A component-based architecture permits • Reuse or customization of existing components • Choice of thousands of commercially-available components • Incremental evolution of existing software • The architecture should be initially constructed with basic boxes and lines • Should be derivable from the class diagram • The resulting UML component diagram will reflect the initial architecture
  8. 8. Class Construction •Definitions and Distinction of OOA, OOD, and OOP •Object-oriented Analysis (OOA) •Processes to understand a system of classes and objects •Creates the vocabulary to describe the system •Object-oriented Design (OOD) •Record sthe vocabulary from OOA to give the model required behavior •Object-oriented Programming (OOP) •Implement sthe model from OOD
  9. 9. Different Processes – Different Concentrations •Waterfall • All OOA, • all OOD, • all OOP •Spiral • OOA, prototype, risk assessment • OOD, prototype, risk assessment • OOP, prototype, risk assessment •Iterative • Some OOA, some OOD, some OOP, • More OOA, more OOD, more OOP • …
  10. 10. 2+1 Complementary Views Implementation View Programmers Software management Logical View Structure Analysts/ Designers Use-Case View End-user Functionality
  11. 11. Use Case View • Describes • an architecturally significant subset of the use-case model. • Concerns • functionality, critical functions, performance • Represents • graphically, on Use Case Diagrams OK Find • Actors • Use Cases UPEDU Concept USE-CASE View
  12. 12. Logical View • Describes • an architectural subset of the design model, (a subset of the classes and use- case realizations). • Concerns • functionality, behavior, use of frameworks, patterns • Represents • graphically, on Class Diagrams, Interaction Diagrams and State Diagrams • Package structure • Interesting classes • Use Case Realizations OK Find UPEDU Concept: Logical View
  13. 13. Implementation View • Describes • the software component organization in the development environment • Concerns • ease of development, team organization, inclusion of existing systems or components, software configuration and management • Represents • graphically on Component Diagrams • Code library structure • Source code Deliverables (.exe , .DLL, Data files) OK Find UPEDU Concept: Implementation View
  14. 14. A Word on Iteration • Risks are mitigated earlier, because elements are integrated progressively. • Changing requirements and tactics are accommodated. • Improving and refining the product is facilitated, resulting in a more robust product. • Organizations can learn from this approach and improve their process. • Reusability is increased.
  15. 15. Iterative Approach -- RUP • The iteration goals and objectives are directly related to the phase objectives, complexities, and risks. An iteration: Phases and associated Iterations:
  16. 16. RUP – Phases and Iteration Objectives • Inception • Iterations focus on management, requirements, and design activities • Elaboration • Iterations focus on defining, validating, and base lining the architecture • Construction • Iterations focus on design, implementation, and testing • ex. Fixing Bugs  iteration includes implementation and testing • Transition • Iterations focus on testing and deployment • ex. User feedback  iteration needed that touches all disciplines

Editor's Notes

  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU
  • Software Engineering Process - with the UPEDU

×