9 architecture
play

9. Architecture Venkat Subramaniam Arch-1 Whats Architecture? - PDF document

9. Architecture Venkat Subramaniam Arch-1 Whats Architecture? Description of sub-system Components/sub-systems Their interaction Framework for communication Venkat Subramaniam Arch-2 Architectural Design Establishes


  1. 9. Architecture Venkat Subramaniam Arch-1 What’s Architecture? • Description of sub-system – Components/sub-systems – Their interaction • Framework for communication Venkat Subramaniam Arch-2

  2. Architectural Design • Establishes a basic structural framework • Identifies major components of a system • Communication between them Venkat Subramaniam Arch-3 Why do you need it? • Useful for communication • Helps analyze ability to meet requirements • Leads to repeatable, reusable concepts Venkat Subramaniam Arch-4

  3. � � Issues to deal with • Potentially conflicting issues • Performance ✁✄✂☎✂✝✆✟✞✡✠☞☛✌✂✝✂✎✍✟✏✒✑✓✞✔✂✎✕✗✖✙✘✛✚✝✜✢✖✤✣✥✖✦✞✡✂✎✧✩★✪✠✫✧✟✧✟✘✎✑✎✏✬★✦✭✮✞✯✏ ✠✛✑✰✧✟✏✒✑✱✏✒✧✲✘✛✧ ✂✓✵✱✂✎✶✮✠✮✷✄✸✹✕✺✭✛✑✱✘✛✶✬✭✛✕✻✏ ✞✼✣✲✠✮✷✄★✪✠✛✧✟✍✓✠✛✑✮✂✎✑✓✞✔✖ �✴✳ • Security ✭✝★✿✾❀✶ ✭☎✣✥✂✎✕❁✾☎✭✝✖❂✞✡✠✲✆❃✂✮✭✛✶✓❄❅✏ ✞❆✾❇✖✪✂✮★✙✘✛✕✻✏ ✞❈✣ �✴✽ ✂❃✶✒✶✎✍✱✕✺✠✮✞✔✂✮★❋✞✔✂✮✆●✏✒✑✓✷❍✠✛✕✻✧■✭✮✞❏✏ ✠✛✑❀✏✒✑✟✏✒✑✱✑✮✂❃✕❁✶✬✭☎✣✥✂✎✕✺✖ �❊❉ • Safety/validation ✁✄✂☎✂✝✆✟✞✡✠❑✏✬✖✦✠✛✶✬✭✮✞✔✂✰✏✒✑☎✞✡✠▲✠✛✑✮✂❇✠✛✕✗✭▲✷❍✂☎❄▼✖✿✘✛✚✝✜✢✖✤✣✥✖✦✞✔✂✎✧■✖ • Availability/reliability/redundancies ✾☎✭✮✞◆✭✛✚✓✠✎✘✮✞❖✭☎✵✥✭✛✏P✶✬✭✛✚✥✏◗✶◗✏ ✞✼✣✎❘❙✶ ✠✝✭✝✆✫❘❚✷❯✭✛✏◗✶◗✘✎✕✺✂✱❘❚✷❍✭✎✘❃✶ ✞❱✞✔✠✛✶✬✂✎✕✺✭✛✑☎★✪✂ �❊❉ • Maintainability ✧■✭✛✶P✶✬✂✎✕✗✖✙✘✛✚✝✜✢✖❋✣✝✖✦✞✔✂❃✧✩✞✡✠☞✧■✭✛☛✌✂❀✏ ✞❖✂✮✭✝✖✿✏✬✂✎✕❨✞✡✠☞✧❇✭✛✏◗✑☎✞✼✭✛✏✒✑ �❳❲ Venkat Subramaniam Arch-5 Architectural Representation • Block diagrams generally used • Effective to communicate different sub- systems • Not effective to describe sub-system interface • Goal: design so that requirement change does not propagate across several sub- systems Venkat Subramaniam Arch-6

  4. Developing Architectural Design • Very creative process • Job of a system architect • Varies based on system, experience, requirements Venkat Subramaniam Arch-7 General Questions • Questions and considerations • Do we have a template to start with? • Style • System structure • Sub-system decomposition • Measure of quality • Documentation Venkat Subramaniam Arch-8

  5. Models • Client-server model • Layered model • Combined style • Static Structure Model • Dynamic Process Model – Processes at runtime • Interface Model – Sub-system interface • Relationship Model – Dataflow, communication, … • Distribution Model – Distribution across processors, computers Venkat Subramaniam Arch-9 Organization • Decided by • Data • Services • Functional Venkat Subramaniam Arch-10

  6. Repository Central Storage Message Passing • Considerations – Efficiency – Format of data – Data Usage – Change to format – Centralization and maintenance – Force on the sub-systems Venkat Subramaniam Arch-11 Client-Server Model Client Server Different services: File, Printing, Computation, … • May be on one box • May be across machines • May be physical distribution or simply logical Venkat Subramaniam Arch-12

  7. Layering • How do we structure the application in a way that it is maintainable, robust, reliable, secure and robust? • Separate the components into layers • The layers will have loose coupling • Each layer is cohesive • Components in a layer interact with – Components within the layer – Components in layer below it Venkat Subramaniam Arch-13 Layering … • In a strict layering, components do not talk to any layer other than the one below it • In a more relaxed layering, components may bypass one or two layers below Layer n Layer n Layer 3 Layer 2 Layer 1 Venkat Subramaniam Arch-14

  8. Tier Distribution • Layering is more logical • Tier distribution talks about how the application is distributed across different hardware • The physical tiers is composed of different computers that share: – Resources • Like sockets, disc space, etc. – Operational requirements • Security, scalability, – Constraints • Location may be dictated by constraints like security Venkat Subramaniam Arch-15 Three-Tier Distribution Client Tier ASP.NET/ Win Forms/ Web Services Application Tier (Business Tier) Component Libraries Data Tier ADO.NET/Database Access Venkat Subramaniam Arch-16

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend