Chapter 3 Flashcards

1
Q

What do you understand by component specification ?

A

It defines the interface of a component and its dependencies.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What do you understand by component interfaces?

A

Component interfaces document the capabilities provided by a component and define the intended usage of a particular component.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What do you understand by component dependencies?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

In an embedded System Domain, what are the communication paradigms that a component interfaces could be based on ?

A

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.

  1. Event-based interfaces: they accept asynchronous events that will be processed by the receiver component.
  2. Synchronous interfaces define operations that a component offers. These operations are comparable to functions in imperative programming languages.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

How does components collaborate with each other?

A

They do so by using the communication paradigms data-flow-based interfaces, Event-based interfaces and Synchronous interfaces.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Name two different views associated with components

A

They are
- Static interface and
- Interface semantics specified using the protocol state machine.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What do you understand by the concept of views in component specification?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Name two classes of views for component specification?

A
  1. Functional views for specifying functional component properties. They define the externally visible behaviour of components without providing a detailed realisation.
  2. Non-functional views that represent non-functional requirements like timeline, safety or reliability.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

How does the functional views of component specification implement the basic computer science information hiding?

A

The specification views explicitly do not provide realisation for the component.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Sequence diagram consists of?

A

Instances and lifeline.
Instances model the concrete component instances while the lifeline represent the timeline.

Sequence diagrams always document interactions between component instances.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How are events modelled in sequence diagram?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the difference between sequence diagrams and communication diagrams?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Name two properties of safety critical embedded systems

A

Safety analysis and evaluation which are realised with fault trees that provide a safety-centric view of the developed system.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What does required data flow interfaces and provided interfaces model?

A

They model data inputs and outputs respectively.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What do you understand by data flow interfaces?

A

Data flow interfaces specify typed data values that are continuously available to components, and that are continuously transformed into output values.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What do you understand by event-based interfaces?

A

Here events are transmitted from a sender to receiver components to trigger a specific processing, they do not model continuously available data values.

They implement asynchronous communication semantics.

17
Q

Explain provided interface and required interface in event based interface

A

Provided interface define signals that are understood by their component and maybe sent to that component by other components.

Required interface define signals that are sent by their associated component to other components.

18
Q

Control-flow interfaces

A

define operations that are provided or required by a component.

Operations define synchronous semantics.

Invocation of an operation results in control flow transfer from the caller to the called component.

19
Q

Explain provided and required interfaces in control flow interfaces

A

Components providing interfaces add the respective interfaces as provided interfaces, while components that require operations of other components add the respective interfaces as required interfaces.

20
Q

Why is strong types particularly important in embedded systems?

A

It is important because of domain-specific requirements for reliability and safety.

The benefit of using specialised types are type safety and documentation.

21
Q

What is the benefit of using different views in specifying a software component?

A

It reduces the complexity of a component descriptions by separating them into multiple well-focused and self contained entities.

22
Q

Highlight three different types of branching operators for modelling alternatives in sequence diagram

A

They are
1. Alt: Define a set of alternatives that are protected by guards, they need not be mutually exclusive. It may define an else clause which contains a sequence of events that describe the components behaviour if no guard is valid.

  1. Opt: Defines a sequence of events that appear optionally if a guard holds.
  2. Break: specialisation of the opt operator that supports exception handling.
23
Q

Where is sequence diagram more suitable in component modelling?

A

It is more suitable for creating those parts of component specifications that cover the externally visible behaviour of components or interaction scenarios of component substructures.

24
Q

What are the benefits of type system?

A
  1. Optimisation
  2. Safety
  3. Documentation and maintainability
  4. Abstraction
25
Q

5 Parts of MARTE

A
  1. Non-functional properties
  2. The time profile
  3. General Resource Management
  4. Allocation part of MARTE
  5. General Component Model

For the definition of non-functional properties, the non-functional properties and timing profile of MARTE are relevant.

26
Q

Three notation of time provided by MARTE are?

A
  1. Chronometric time
  2. Logical time
  3. Synchronous time