Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Software Architecture Session3

421 vues

Publié le

Software Architecture

Publié dans : Logiciels
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Software Architecture Session3

  1. 1. A-7E AVIONICS SYSTEM Session - 3
  2. 2. A-7E Avionics System • Architecture is focused on three structures: – Decomposition into modules – Uses : • how the modules relate – Process • components and connectors 9:33 AM SEPS ZG651 Software Architectures 2
  3. 3. Decomposition • Information hiding: – Also foundation to OO design, – Except information hiding modules are derived by identifying expected changes over the system’s lifecycle – A module may have sub modules 9:33 AM SEPS ZG651 Software Architectures 3
  4. 4. Specific goals • Simple enough to understand fully • Change one module without knowing or impacting others • Most likely changes should be easiest • Possible to make major changes as a set of independent changes to individual modules • If the interfaces are not changed, any combination of old and new should run 9:33 AM SEPS ZG651 Software Architectures 4
  5. 5. A-7E Module Decomposition Structure • Architects observed that, in similar systems, changes tend to come from three areas: – Hardware – Required externally visible behavior – Decisions controlled by the developer 9:33 AM SEPS ZG651 Software Architectures 5
  6. 6. Uses Structure • Runtime execution information – the authoritative picture of how the software interacts • Uses relation: – Procedure A is said to use procedure B if a correctly functioning procedure B must be present in order for A to meet its requirements. 9:33 AM SEPS ZG651 Software Architectures 6
  7. 7. Uses Relation • Allows rapid identification of functional subsets • The uses (allowed-to-use) structure is documented in a table – see Table 3.4 for an example 9:33 AM SEPS ZG651 Software Architectures 7
  8. 8. Process Structure • Implemented as a set of cooperating sequential processes that synchronize with each other to cooperatively use shared resources • Pre-runtime scheduling produced a single executable thread 9:33 AM SEPS ZG651 Software Architectures 8
  9. 9. Processes • A set of programming steps that are repeated in response to a triggering event or to a timing constraint • It has its own thread of control, and can suspend by waiting for an event 9:33 AM SEPS ZG651 Software Architectures 9
  10. 10. A-7E Processes • Written for two main purposes 1. For the functional drivers to compute the output values of the avionics software 2. Less frequently, they can implement expensive access procedures – continuously compute in the background, returning the most recent value when called – See their conceptual structures on pp 63-64 9:33 AM SEPS ZG651 Software Architectures 10
  11. 11. Processes • Contains the “synchronizes-with” relation • Based on events that one process signals and one or more processes await • Used as the primary input to the scheduling activity, which includes deadlock avoidance • Process structure has two types of information: – What procedures are included in each process, identifying threads and re-entrant requirements – Which processes cannot execute simultaneously 9:33 AM SEPS ZG651 Software Architectures 11
  12. 12. Summary 9:33 AM SEPS ZG651 Software Architectures 12
  13. 13. 9:33 AM SEPS ZG651 Software Architectures 13

×