Architecture Views

From Suhrid.net Wiki
Revision as of 08:50, 7 April 2012 by Suhridk (talk | contribs) (Created page with "= Intro = * A view is a representation of a coherent set of architectural elements as written by and read by system stakeholders. = Architectural Structures = * A structure is...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Intro

  • A view is a representation of a coherent set of architectural elements as written by and read by system stakeholders.

Architectural Structures

  • A structure is the set of elements itself, as they exist in software or hardware.
  • Arch structures can be divided into three groups.

Module structures

  • Elements are modules which are units of implementation. Assigned areas of functional responsibility.
  • Less emphasis on how software works at runtime.
  • Allows to understand primary responsibility of each module, other modules a module can use, related modules.

Decomposition

  • Units are modules related to by "is a submodule of" relation.
  • Shows how larger modules are decomposed into smaller ones.

Uses

  • Units are related to by the uses relation

Layers

  • When uses relation is controlled - a system of layers emerges.

Class

  • Modules are classes. Relations are "inherits-from" or "is-an-instance-of".
  • Here, elements are runtime components and connectors.

Component and connector structures

  • Allows understanding of major executing components and how they interact.
  • How data flow through system, what parts of system run in parallel.

Communicating Processes

Concurrency

Shared data/Repository

Client Server

Allocation structures

  • Shows relationship between software elements and elements in the external environments.
  • Allows understanding on which processor does software element execute on. Files in which each element during development during testing.