Chapter 3: Block Definition Diagrams Flashcards

1
Q

What is the most common kind of SysML diagram

A

Block Definition Diagram

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

What is: Elements of Definition

A

Elements that appear on BDD’s - blocks, actors, value types, constraint blocks, flow specifications, and interfaces.

Form the foundation for everything else in your system model

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

T/F: BDD’s should be created often

A

T, BDDs are not tied to any particular stage of the system life cycle or level of design.

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

What is: the diagram kind abbreviation for a block definition diagram

A

bdd

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

What is: Namespace

A

Is simply a model element that’s allowed to contain other model elements; that is, it can have other elements nested under it within the model hierarchy.

Is a concept that have meaning only within your system model; it has no meaning within an instance of your system

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

What is: the most common kind of namespace that appear on BDDs

A

A Package

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

What is: Block

A

The basic unit of structure in SysML

Can be used to model any type of entity within your system of interest or in the system’s external environment

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

What are: The two varieties of Features

A

Structural Features (aka Properties)
Behavioral Features

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

What are: The five kinds of Structural Features (aka Properties)

A

Five Kinds:
Part Properties
Reference Properties
Value Properties
Constraint Properties
Ports

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

What is: Part Property

A

A Feature that represents a structure that’s internal to a block.

Stated differently, a block is composed of these. This relationship conveys ownership.

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

What is: the format of the string for a part property

A

‘part name’ is Modeler defined
‘type’ generally is the name of a block that you’ve created somewhere in the system model

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

What is: Multiplicity

A

A constraint on the number of instances that feature can represent within the composite, expressed as either a single integer or as a range of integers

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

What is: Multiplicity with no constraints

A

0..* OR *

  • = no upper bound

would read as ‘zero or more’

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

What is: Reference Property

A

Feature that represents a structure that’s external to a block

Does not convey ownership

Can roughly be described as a ‘needs’ relationship, a block with this feature needs that external structure for some purpose, either to provide a service or to exchange matter, energy, or data. This implies that some type of connection must exist between them.

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

What is: the format of the string for a reference property

A

‘reference name’ is modeler defined
‘type’ must be the name of a block or actor that you’ve created somewhere in the system model

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

What is: the reference property name contained in the Electrical Power Subsystem block

A

cdhs

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

What is: Value Property

A

A feature that can represent a quantity (of some type), a Boolean, or a string.

Most often, though, this feature is something you can assign a number to.

This feature is particularly useful in conjunction with constraint properties to construct a mathematical model of your system

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

What is: the format of the string for a value property

A

‘value name’ is modeler defined
‘type’ must be the name of a value type that you’ve created somewhere in the system model
‘default value’ is an optional piece of information; it represents the value assigned to the value property when an instance of its owning block first gets created

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

How: to convey that a value property is derived

A

put a forward slash (/) in front of its name.

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

What is: Constraint Property

A

A Feature that generally represents a mathematical relationship (an equation or inequality) that is imposed on a set of value properties.

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

What is: the format of the string for a constraint property

A

‘constraint name’ is modeler defined
‘type’ must be the name of a constraint block that you’ve created somewhere in the system model

Note that you’re not required to use constraint blocks to impose mathematical relationships on value properties. It’s perfectly legal to specify a constraint expression directly in the constraints compartment of a block.

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

What is: Constraint Block

A

This is simply a special kind of block—one that you create to encapsulate a reusable constraint expression.

Most often, a constraint expression is an equation or an inequality.

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

What is: Port

A

A feature that represents a distinct interaction point at the boundary of a structure through which external entities can interact with that structure—either to provide or request a service or to exchange matter, energy, or data.

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

T/F: A port decouples a block’s clients from any particular internal implementation

A

T, When you add a port to a block, you’re modeling a structure as a black box with respect to its environment; the structure’s internal implementation is hidden from its clients. Those clients know only the structure’s interface (the services it provides and requires, and the types of matter, energy, or data that can flow in and out).

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

What are: the two kinds of ports

A

Standard Ports
Flow Ports

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

What is: Standard Port

A

A port that lets you specify an interaction point with a focus on the services that a block provides or requires.

Models the services (behaviors) that a block provides or requires at an interaction point on its boundary.

Most often, you display this port as a small square straddling the border of a block.

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

What is: Flow Port

A

A port that lets you specify an interaction point with a focus on the types of matter, energy, or data that can flow in and out of a block.

Most often, you display this port as a small square straddling the border of a block. This port has a symbol shown inside the small square.

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

What is: Interface

A

Like a block, it is an element of definition—one that defines a set of operations and receptions, a behavioral contract that clients and providers will conform to.

You can display an interface on a BDD as a rectangle with the keyword «interface» preceding the name; you can display its operations and receptions in the second and third compartments. Figure 3.10 displays the Power Generation and Status Reporting interfaces using this notation.

29
Q

How: is a provided interface displayed

A

Is displayed using the ball notation, similar to a lollipop symbol

30
Q

How: is a required interface displayed

A

Is displayed using the socket symbol

31
Q

What is: the two types of flow ports

A

Nonatomic Flow Port
Atomic Flow Port

32
Q

How: is a nonatomic port displayed

A
33
Q

What is: Nonataomic Port

A

You add this flow port to a block when you need to model multiple types of items that could flow in or out via that port.

The type of this flow port must be the name of a flow specification that you’ve created somewhere in the system model

34
Q

What is: Flow Specification

A

Like a block, this is an element of definition -one that defines a set of flow properties that can flow in or out of a nonatomic flow port

35
Q

What is: the format of the string for a flow property

A

The ‘direction’ can be in, out, or inout
The ‘name’ is modeler defined
The ‘type’ must be the name of a valuetype, block, or signal that you’ve created somewhere in your model hierarchy

36
Q

What is: Atomic Flow Port

A

You add this flow port to a block when you need to model a single type of item that could flow in or out via that port.

The type of this flow port must be the name of a value type, block, or signal that you’ve created somewhere in your model hierarchy

37
Q

How: is an atomic port displayed

A

The symbol inside the small square is an arrow that conveys the direction of flow

38
Q

What are: the two types of Behavioral Features

A

Operations
Receptions

39
Q

What is: Operation

A

This feature represents a behavior that a block performs when a client calls it. Stated formally it is invoked by a call event.

Represents a synchronous behavior. This means the caller waits for the behavior to complete before continuing with its own execution. However SysML doesn’t require this; you’re free to represent any behavior as an operation - even when the caller doesn’t wait for it to complete.

40
Q

What is: the format of the string for an operation

A

The ‘operation name’ is modeler defined
the ‘parameter list’ is a comma-separated list of zero or more parameters
the ‘return type’ (if any) must be the name of a value type or block that you’ve created somewhere in your system model.
The ‘multiplicity’ is a constraint on the number of instance of the return type that the operation can return to the caller when it completes

40
Q

What is: the format of the string for an operation

A

The ‘operation name’ is modeler defined
the ‘parameter list’ is a comma-separated list of zero or more parameters
the ‘return type’ (if any) must be the name of a value type or block that you’ve created somewhere in your system model.
The ‘multiplicity’ is a constraint on the number of instance of the return type that the operation can return to the caller when it completes

41
Q

What is: the format of the string for a parameter list

A

The ‘direction’ can be in, out, or inout
the ‘parameter name’ is modeler defined
The ‘type’ must be the name of a value type or block that exists somewhere in your model
The ‘multiplicity’ is a constraint on the number of instances of the type that the parameter can represent.
The ‘default value’ is the value assigned to the parameter if no value is specified as an argument when the operation is called.

42
Q

How many commands can a client pass when they call to perform ‘processCommand’ and what will it return once complete

A

one or more commands can be passed
once complete it will return a status value to the caller

43
Q

What is: Reception

A

This feature represents a behavior that a block performs when a client sends a signal that triggers it. Stated formally, this feature is invoked by a signal event

This feature always represents an asynchronous behavior

It does not wait for the feature to complete (or even, necessarily, to begin)

Receptions cannot have return types

44
Q

T/F: A signal is not a model element

A

False, a signal is itself a model element.

You can use a signal to represent any type of matter, energy, or data that one part of a system sends to another part—generally for the purpose of triggering a behavior on the receiving end.

45
Q

What is: the format of the string for a reception

A

The keyword ‘signal’ must always precede the ‘reception name’
The ‘reception name’ must match the name of the signal in your model that triggers it.
You an display as many parameters as necessary in the parameter list

46
Q

What are: the three main kinds of relationships that can exist between blocks

A

Associations
Generalizations
Dependencies

47
Q

What is: Reference Association

A

This association between two blocks means that a connection can exist between instances of those blocks in an operational system. And those instances can access each other for some purpose across the connection.

48
Q

How: is a Reference Association displayed

A

The notation is a solid line between two blocks

the name floating near the middle of the line is the ‘association name’
you can optionally display a role name and multiplicity on either end of the line. The role name corresponds o the name of a reference property - one that belongs to the block at the opposite end and whose type is the block that it’s next to

49
Q

What is: Composite Association

A

This association between two blocks conveys structural decomposition. An instance of the block at the composite end is made up of some number of instances of the block at the part end

50
Q

How: is a Composite Association displayed

A

A solid line between two blocks with a solid diamond on the composite end.

An open arrowhead on the part end of the line conveys unidirectional access from the composite to its part; the absence of an arrowhead conveys bidirectional access

The multiplicity on the part end of a composite association is not restricted; a composite structure can be made up of an arbitrary number of instances of parts-however many a system requires

However the multiplicity on the composite end is restricted. A part- by definition- can belong only to one composite at a time

The default multiplicity on the composite end of is 0..1. On the part end the default multiplicity is the usual case, 1.

51
Q

What is: the DellSat-77 Satellite block composed of

A

One Electrical Power Subsystem
One Attitude and Orbit Control Subsystem
One Environmental Control Subsystem
One Communication and Data Handling Subsystem

52
Q

What is: Generalization

A

This is another kind of relationship you typically display on BDDs.

It conveys inheritance between two elements, a subtype inherits all the features of it’s supertype. In addition a subtype may have other features that its supertype doesn’t have.

Used to created classification trees (type hierarchies) in your system model and to define abstractions in your system design which means a subtype will be accepted wherever its supertype is required.

53
Q

What is: Dependency

A

A kind of relationship you can display on BDDS. One element in the model, the client, depends on another element in the model, the supplier. More precisely, it conveys that when the supplier element changes, the client element may also have to change

Most often, you create this relationship between two model elements solely to establish traceability between them.

54
Q

How: is a Dependency displayed

A

The notations is a dashed line with an open arrowhead, which is drawn from the client to the supplier

55
Q

Who is the supplier

A

the Data Handling interface

56
Q

What is: Actor

A

Represents someone or something that has an external interface with your system

The name of an actor conveys a role played by a person, an organization, or another system when it interacts with your system

57
Q

The key ideas about generalizations and reference/composite associations also apply to when actors are involved in these relationships with what two constraints?

A

You cannot define a generalization between an actor and a block

An actor cannot have parts; that is, it cannot appear at the composite end of a composite association. (We always regard an actor as a “black box. “)

58
Q

What is: Value Type

A

Like a block, it is an element of definition - one that generally defines a type of quantity

59
Q

What are: the three types on value types

A

Primitive
Structured
Enumerated

60
Q

What is: Primitive Value Type

A

This value type has no internal structure (it doesn’t own any value types).

61
Q

How: is a Primitive Value Type displayed

A

A rectangle with the stereotype ‘valueType’ preceding the name

62
Q

What is: Structured Value Type

A

This value type has an internal structure - generally two or more value properties

63
Q

How: is a Structure Value Type displayed

A

A rectangle with the stereotype ‘valueType’ preceding the name

64
Q

What is: Enumerated Value Type

A

This value type defines a set of literals (legal values)

If a parameter of an operation (or some other kind of elements) is typed by an enumeration, then the value it holds at any moment must be on of the literals in the enumeration

65
Q

How: is a Enumerated Value Type displayed

A
66
Q

What is: Constraint Block

A

Like a block, it is an element of definition - one that defines a Boolean constraint expression (an expression that must evaluated to either true or false)

67
Q

What is: Constraint Parameters

A

The variables in a constraint expression