Chapter 3 Flashcards
What do you understand by component specification ?
It defines the interface of a component and its dependencies.
What do you understand by component interfaces?
Component interfaces document the capabilities provided by a component and define the intended usage of a particular component.
What do you understand by component dependencies?
They specify the capabilities that a component requires of other components in order to operate properly.
It defines the interfaces that need to be provided by other components.
In an embedded System Domain, what are the communication paradigms that a component interfaces could be based on ?
They are
1. Data-flow-based interfaces: it consists of data inputs that are processed by the component, and yield changed values at data outputs.
- Event-based interfaces: they accept asynchronous events that will be processed by the receiver component.
- Synchronous interfaces define operations that a component offers. These operations are comparable to functions in imperative programming languages.
How does components collaborate with each other?
They do so by using the communication paradigms data-flow-based interfaces, Event-based interfaces and Synchronous interfaces.
Name two different views associated with components
They are
- Static interface and
- Interface semantics specified using the protocol state machine.
What do you understand by the concept of views in component specification?
The concepts of interfaces, contracts and protocol state machines were used for creating component specifications. These concepts define the interface of components from different viewpoint.
Name two classes of views for component specification?
- Functional views for specifying functional component properties. They define the externally visible behaviour of components without providing a detailed realisation.
- Non-functional views that represent non-functional requirements like timeline, safety or reliability.
How does the functional views of component specification implement the basic computer science information hiding?
The specification views explicitly do not provide realisation for the component.
Sequence diagram consists of?
Instances and lifeline.
Instances model the concrete component instances while the lifeline represent the timeline.
Sequence diagrams always document interactions between component instances.
How are events modelled in sequence diagram?
They are modelled with the use of arrows, the arrow denote an event and its parameters; return values are modelled with arrow in the opposite direction.
What is the difference between sequence diagrams and communication diagrams?
Sequence diagrams model event sequences and their timing relations while communication diagrams focus on system architecture.
Communication diagrams model the interaction behaviour between component instances by specifying the event flow between those instances.
NOTE:
Communication diagrams do not define timeline, instead the event ordering is defined by numbering events. Communication diagrams also define a very limited set of language elements.
Name two properties of safety critical embedded systems
Safety analysis and evaluation which are realised with fault trees that provide a safety-centric view of the developed system.
What does required data flow interfaces and provided interfaces model?
They model data inputs and outputs respectively.
What do you understand by data flow interfaces?
Data flow interfaces specify typed data values that are continuously available to components, and that are continuously transformed into output values.