2/8 - UML Flashcards

1
Q

Unified Modeling Language

A
  1. Describes a system at a high level of abstraction
  2. A model of the system that is used for requirements, specification and design
  3. Designed by many interest groups
  4. Has many features and loosely related styles
  5. Union of all modeling languages
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Structural Models for UML

A
  1. Class diagrams

2. Object diagrams

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

Dynamic Models for UML

A
  1. Sequence diagrams

2. Activity diagrams

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

Class Diagrams

A
  1. Describes classes/entities in object-oriented way
  2. Describes statically what interacts but not what happens
  3. Each box is a class
  4. Relationships are depicted by using many kind of arrows
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Associations

A
  1. Capture n-m relationships
    • “Connected to” relationships
  2. Label endpoints of edge with cardinalities
    • Use * for arbitrary count
  3. Can be directional. So use arrows in that case.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Aggregation

A
  • Depicts inheritance between classes
  • Denoted by an open triangle on superclass
  • All arrows point in the direction of code dependency
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Object Diagram

A
  • Object diagram is an instantiation of a class diagram
  • Represents a static structure of a system at one particular time
  • Can show how several instances of a class relate to each other
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Sequence Diagram

A

• A table

  • Columns are classes (also called actors)
  • Rows are time steps
  • Entries show data flow or control flow (i.e. method invocations or state change)
  • Sequence diagrams refine use cases
  • Give a dynamic behavior of classes
  • Have overlapping functionality with other diagrams
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Pros of UML

A
  1. Widely used. Common for sharing specs and design.
  2. Visual syntax is useful.
  3. UML is precise and thus forces clarity.
  4. Commercial tools support.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Cons of UML

A
  1. Hodge podge of ideas
    • Union of popular modeling languages
  2. Visual syntax does not scale well for large projects
    • Hard to understand for large projects
How well did you know this?
1
Not at all
2
3
4
5
Perfectly