Lecture 8: Components and Implementation Flashcards

1
Q

What is an interface?

A
  • Specifies a named set of public features
  • Separates the specification of its functionality from its implementation
  • Defines a contract that classes and subsystem may realise
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What should the contract be conformed to?

A
  • operation
  • attribute
  • association
  • constraint
  • stereotype
  • tagged value
  • protocol
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is a required interface syntax?

A

A required interface indicates that a classifier uses the services defined by the interface

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

What is an assembly connector?

A

You can connect the provided and required interface using an assembly connector

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

What is ports organising interface?

A

• Specifies the interaction point between a classifier and its environment
• A port is typed by its provided and required interfaces:
- May have a name

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

What is the key to interfaces?

A

• Interfaces are key to component based development

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

What is a component?

A
  • Defines the requirements for software deployed to hardware
  • Represents a part of a system that **encapsulates **the contents whose display is replaceable within its environment
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What can a component be (2 kinds)

A

Can be either logical or physical

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

What is a subsystem?

A
  • Acts like a unit of decomposition for larger systems
  • Used to decompose larger systems into manageable chunks
  • Connected to an interface to create a **system architecture **
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

How do you finding interfaces and ports?

A
  • Look for repeating groups of operations and its usefulness elsewhere
  • Possibilities for future expansion
  • Cohesive sets provided and required interfaces and organise to named ports
  • Look for dependencies between subsystem
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How do you design interfaces?

A
  • Designing interfaces based on common sets of operation
  • Designing interfaces based on common roles
  • Designing interfaces based on plug-in features/algorithms
  • The Façade pattern can be used to create “seams” in a system
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is a physical archietecture?

A
  • Subsystems and interfaces comprise the physical architecture of the model
  • Can apply “layering” architectural pattern
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are the advantages of using interfaces?

A
  • Defines** contracts** that classes and subsystem may realise
  • Programming to its interfaces increases **flexibility and extensibility **
  • Programming to interfaces rather to classes reduces dependencies between classes and subsystems
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are the disadvantages of using interfaces?

A
  • Can add flexibility but may lead to complexity
  • Can make it difficult to understand
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What’s the implementation purpose?

A
  • Implements the design classes and components
  • Converts the design model into executable program
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Whats a deployment diagram?

A
  • Is an object model that describes the functionality distributed across the physical nodes
  • Models the physical and software architecture
17
Q

Describe the physical architecture of deployment diagrams

A
  • Nodes = big boxes that represent the physical hardware
  • Artifacts = small box inside the node that represents the physical software file
18
Q

What is an artifact?

A

• An artefact represents a type of a real-world thing, file

19
Q

What does Manifest mean?

A

Manifest means to implement a component

20
Q

Whats the relationship between artifacts?

A
  • Can manifest in one or more components
  • Can contain other artifacts
  • Artifacts deploys nodes
  • Artifact instances deploys on node instances