Lecture 5: Centre for software reliability Flashcards

1
Q

What are the design artifacts of a metamodel?

A
  • Sybsystems are components that contain **UML elements **
  • There is a <<trace>> </trace>relationship between two models
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What does a design model consists of?

A
  1. Design subsystem
  2. Design class
  3. Interface
  4. Use case realisation design
  5. Deployment model
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are design classes?

A

Captures the required behaviour of the system without worrying about the behaviour that is going to be implemented

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

Where do design classes come from?

A

From analysis classes only

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

What do design analysis classes model?

A
  • The classes captures the problem domain
  • The implementation details
  • The attributes specified: type, visibility and default and values
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What must design classes have?

A
  • Parameter lists
  • Return types
  • Visibility/exceptions
  • SET & GET operations
  • Constructors and destructors
  • Complete set of attributes
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the characteristics of a Well- formed design classes?

A
  • Complete and sufficient
  • Doing something of what a user expects the class to do from its name
    Example: A BankAccount class provides: withdraw()/desposit() operations
  • Primitive
  • Should have a single primitive, never multiple ways of doing multiple things
  • High Cohesion
    -** **Should have a set of operations that support the intent of the class
    Cohesion makes the class more understandable, small set of simple responsibilities such as HotelStay and not HotelCarStay
  • Low Coupling
    -** **Should be associated with enough classes using semantic links
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What does the inheritance feature do in design classes?

A

Inheritance to **INHERITS **implementation

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

What are the two things that must be considered in inheritance?

A
  • *Interface**
  • The public operations of base classes
  • *Implementation**
    • The attributes, relationships, protected and private operations of the base classes
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What does the interface realisation do in the design classes?

A

Interface realisation in an interface has NO implementation but to DEFINE a contract

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

Give an example from the tutorial of what a class diagram should look like:

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

What does multiplicity model?

A
  • Models a collection of things
  • How many objects can participate in a relationship
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What 2 procedures does a design class involve?

A

Refining associations to aggregation or composition relationships

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

What are the 6 associations of the relationships?

A
  1. Implementing one-to-many associations
  2. Implementing many-to-one associations
  3. Implementing many-to-many associations- Stores a collection of objects from the source and target class
  4. Implementing bidirectional associations – reify “make real” into design classes – Resolve from a bidirectional to a unidirectional
  5. Implementing association classes – Refine all to association classes
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What must design classes also have?

A
  • Navigability
  • Multiplicity on both ends
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is aggregation? Give an example

A

loose relationship with objects-

Example: Computer and its peripherals

17
Q

What is composition? Give an example

A

Strong type of relationship

Example: Tree and its leaves- Has ownership of its own parts

18
Q

What are the two main things aggregation consist of?

A
  • Aggregation is a TRANSITIVE AND ASYMMETRIC relationship
19
Q

How is aggregation a model and composition shared in a diagram?

A
  • Aggregation = shared between wholes
  • Composition = shared between one and only one model
20
Q

Describe what the interaction diagrams contain and what it is

A

A collaboration of Design objects and classes that realise a use case

Contains:

  • Design object interaction diagrams
  • Links to class diagram