General_UML Flashcards

Memorize UML basics (based on Karoly Udemy course)

1
Q

Name 5 diagram types in UML

A
Use Case Diagram
Class Diagram
Activity Diagram
Sequence Diagram
Statechart Diagram
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What does a use case diagram do?

A

Describes the functionality of a system, from user’s pov (functional)

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

What does a class diagram do?

A

Describes a system in terms of objects, attributes, operations, relations (Structural)

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

What are the three parts of a Class Diagram and what are their naming conventions?

A

Class Name: singular noun; camel uppercase
Attributes: lower camelcase
Methods: lower camelcase

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

How do we control who can access the attributes and methods of a class?

A
\+ public: can be used by code outside the object
-  private: can only be accessed within the defined class
# protected: accessible from defining and child classes
~  package: available within its enclosing package
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Name the different kinds of relationships that express the relations and dependencies between the objects (+ annotation)

A

Generalization: “is a”; child-parent; line with open arrow head
Association: “interaction”; full line
Aggregation: “has a”; line with hollow diamond at owner’s end (redundant?)
Composition: “part of”; ownership; when owner dies contained objects die too
Dependency: “references”; changes in one class may cause changes in the other; dashed line with arrow at dependency
Realization: “implements behavior”; class implements the behavior specified by another element: dashed line with open arrow at implementor’s end

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

What are possible nodes in an Activity Diagram? + explain + annotation

A

Decision node: one inbound flow, two or more outbound; filled diamond; add guards between [] near outbound flows
Merge node: two or more inbound flows; one outbound; hollow diamond

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

How do you represent concurrent, parallel behavior in an Activity Diagram?

A

Fork: one inbound, two or more outbound; need to be synchronized; thick line
Join: represents synchronization after fork; two or more incoming, one outbound; thick line

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

What are the elements of a Statechart Diagram

A

State: possible conditions; rounded rectangles
Transition: arrow, with trigger event as annotation
Event: event that triggers the transition

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

What are the preliminary steps for Object-Oriented Design?

A
Gather requirements
Describe system pov user
     Use cases
     User stories
Identify classes
Create diagrams
How well did you know this?
1
Not at all
2
3
4
5
Perfectly