1 / 12

CPSC 875

CPSC 875. John D. McGregor Time & Abstraction. One way to slice it. dynamic. static. Connections that Use “applies in” f or specific modes. Ports and structures. definitional. Events. operational. properties. And another. dynamic. static. Flows, states a nd events, threads

tex
Download Presentation

CPSC 875

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CPSC 875 John D. McGregor Time & Abstraction

  2. One way to slice it dynamic static Connections that Use “applies in” for specific modes Ports and structures definitional Events operational properties

  3. And another dynamic static Flows, states and events, threads and properties like latency Ports, structures, Unconditional connections conceptual Conditional connections, Subprograms, etc Actually bound Structures and] resources concrete

  4. Static • Non-executable • Unchanging • Usually the runtime structure is a copy of the static structure • Static allows analysis to determine exact values for properties of the system

  5. Dynamic • Can change during execution • Transitioning from one state to another is a dynamic action during execution • Whether the transition is feasible may change if an “applies to” clause is used • but that transitioning only occurs because a transition was defined during the definitional phase

  6. Definitional • New structures and relationships must be defined before being used • Traditional architectures usually only do new definitions statically but they will do instantiations dynamically • Newer architectures such as the Java runtime use a reflective architecture to create new classes and relationships on the fly

  7. Operational • During the operation of the program • Runtime structures, checks and constraints • The values stored in memory locations are changing • Discoverable services can be added to a product during operation

  8. Conceptual • Data types • Shows form but not specifics • For example, ports can be defined in terms of direction but not the type of data that will pass through • Processes and threads can be partially defined without which specific subprograms will be called

  9. Concrete • Abstract definitions are reified, i.e. transformed, into specific runtime structures • Specific values are given to ports, variables, etc • Multiplicities are resolved for the particular scenario • Structures are mapped to specific memories and processors

  10. Architectures • The service oriented style is a good one to illustrate this with. • The computation performed by a service is defined statically and abstractly • During the execution of a program using the style, a new service implementation can be obtained by asking a registry for the url of the new service. The service is made available and populated with current data

  11. Design Level • In inheritance there are two static, conceptual definitions • Dynamic instantiation of B combines these definitions results in a single concrete object that combines the 2. • There are no dynamic interactions between A and B. There is a static combing of A and B to get AB A AB B

  12. Architecture level • A layered architecture is a static definition in which the concrete members of one layer have a calling relationship with some of the concrete members of a lower level. A C B

More Related