Chapter 2 Flashcards
What is the role of component specification?
They provide an implementation-independent contract between the users and providers of components.
What do you understand by component models?
Component models determine the common computation, communication, and composition principles and rules underlying a class of components.
What do you understand by platform?
The platform provides the basic functionality on which a software system is built. A platform is a software/hardware system.
Highlight the reasons for making a distinction between a software system and it’s platform
- A platform may be used for several different software systems, hence the need to describe the platform separately and reuse it.
- Separating the platform and software system of interest allows focusing on relevant system parts.
What do you understand by environment of a software system?
It refers to the outside world with which it interacts.
What are the different stages of software system?
- Designed
- Programmed
- Configured
- Deployed/Installed
- Executing
Name the stages for software component
- Component specification
- Component implementation
- Component configuration
- Deployed/Installed components
- Running components
What kinds of composition are explained in the text?
Describe their differences
The kinds of composition are:
1. Hierarchical composition,
2. Heterogeneous composition, and
3. Open composition
Description of their differences:
- Hierarchical composition: The result of the composition of some components C1, …Cn is a new component C following the same model as the sub components Ci.
- Heterogeneous composition: The result of the composition of components C1, …, Cn is a new component C with different characteristics than the sub components Ci.
- Open composition: The result of the composition of components C1, …, Cn is a web of components i.e a set of connected components.
What is interface declaration?
An interface declaration defines a type and a list of method signatures. Interfaces are implemented by components.
What is component declaration?
Component declaration defines which interfaces the component implements and provides the signatures of the component constructors.
What is the difference between the instances of class and component instance?
The instance of a class consists of one object that has to provide the functionality for all interfaces implemented by the class while the instance of a component might consist of several objects such that for every interface implemented by the component there is at least one object providing the needed functionality.
What is state space of a component?
State space of a component consists of all the possible values that the model variables can hold.
The three kinds of types in the context of component based development are?
- Data types
- Interface types, and
- Component types
Data types describes values that can be passed as parameters between components.
Distinguish between data types, interface types and component types on specification level of components
Data types describes the values that are passed between components, interface types declares the communication protocols offered by an object while component types bundles the provided and required interfaces together to form executable entities.
What is the difference between passive and active components?
Passive component provides methods that can be called but it has no thread of its own while active component have at least one thread running “in the component”.
Active component are marked with the stereotype «active» and passive «passive»