Documenting Implementation Flashcards

1
Q

What is an abstract class?

A

Class so general cant create direct instance of it

  • contains common attriutes & sevices shared by concrete subclasses
  • typically has abstract operations that cant be described
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is an interface?

A
Abstract class that has only abstract operations; no attributes
(may have class constants)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is meant in UML when a class name is:
italic?
underlined?
normal?

A
italic; abstract class
underline; specific instance
normal; concrete class
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Describe 3 different kinds of generalisation

A
normal; relates specific class to general class
abstract class; superclass is abstract
realisation; relates concrete class to abstract interace
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Describe 4 different kinds of association

A

+normal; undirected conceptual relationship
+directed; structural relationship with sense of direction
+aggregation; whole/parts relationship; parts coordianted by whole
+composition; whole/parts exclusive relationship; parts owned by whole

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

Describe 4 different kinds of navigation

A

+undirected; says nothing about navigation
+navigable; may navigate in direction; says nothing about reverse
+non-navigable; may not travel in direction; says nothing about reverse
+directed; one way navigation

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

Describe 3 different kinds of end-role ownership

A

Default; association owns both end-roles-
One owner; x owns reference to y
Strongly-coupled; both classes own reference to each other

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

Describe 3 styles of association

A

Standard; wth end roles & multiplicities
Named; helps reading of association (not for navigation)
Class; stores extra attributes belonging to association as a whole

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

What is encapsulation?

A

fundamental principle fo object-oriented programming:

  • information hiding
  • modular protection
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q
What UML symbol is used to indicate the visibility of a class is:
public? private? protected? package?
A

+ public
- private
# protected
~ package

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

What is the default visibilty of a package?

A

public

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

what is the difference between import and access?

A

import; imported thing is treated as public

access; accessed thing is treated as private

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

What is the difference between a class, an object and a role?

A
Class: models required structure and behaviour
Object; models a specifici occurence of data during an execution; an instance of a class
Role; models a typical object/refernce to an object
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is a UML sequence diagram used for?

A

Illustrates flow of messages between object roles (rather than specific instances)
while a method is being executed, role has focus of control

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

IN a UML sequence diagram; what is the difference between using a filled arrowhead and an open arrowhead with a dashed shaft?

A

Filled for method

open for constructor

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

What is a synchronous flow?

A

Every call has to wait to be returned until the next thing happens

17
Q

What is the difference in arrows for synchronous and asynchronous flows?

A

sync: filled arrowhead
async: open arrowhead