Post-Test for Object-Oriented Software Engineering (CS1), Fall 2000

Total Responses = 10

Mean:

13.5454545454545

St. Dev:

5.0470

Variance:

25.4727272727273

 

Question 1: Multiple Choice

 

Part of the reason the Java programming language is successful is:

%
Responses

It is highly efficient, executing optimized machine code.

0%

It is portable to any platform hosting a Java virtual machine.

100%

It has been optimized for Microsoft Windows.

0%

I don't know.

0%

 

Question 2: Multiple Choice

 

A "waterfall" model:

%
Responses

Encourages a predictable non-cyclical order of development.

70%

Encourages an iterative, incremental approach to development.

10%

Encourages rapid development of working code.

20%

I don't know.

0%

 

Question 3: Multiple Choice

 

A use case is:

%
Responses

A way of specifying the use of a system.

0%

A set of scenarios describing how actors interact with a system.

90%

A method that facilitates the design of classes.

10%

I don't know.

0%

 

Question 4: Multiple Choice

 

Dynamic binding:

%
Responses

Determines the type of a class at compile time.

0%

Determines which function to run at run time.

100%

Overrides a function or method at compile time.

0%

I don't know.

0%

Question 5: Multiple Choice

 

Abstract data types are:

%
Responses

Always built into C++ and other high level languages.

10%

The same thing as classes in C++.

0%

Formal descriptions that one can implement as classes in C++.

90%

I don't know.

0%

 

Question 6: Multiple Choice

 

Information hiding:

%
Responses

Hides implementation details from the supplier of a class.

10%

Keeps all functions or behaviors of a class private.

0%

Separates public interface from private implementation.

90%

I don't know.

0%

 

Question 7: Multiple Choice

 

Inheritance or class derivation:

%
Responses

Usually models subtype relationships.

90%

Usually models whole-part relationships.

10%

Usually models client-supplier relationships.

0%

I don't know.

0%

 

Question 8: Multiple Choice

 

Assertions:

%
Responses

Facilitate compile-time checking for program correctness.

20%

Facilitate run-time enforcement of client-supplier contracts.

70%

Facilitate documentation of user requirements during analysis.

0%

I don't know.

10%

 


 


Question 9: Multiple Choice

 

Object-oriented software engineering:

%
Responses

Relies on top-down decomposition.

0%

Requires the use of the Unified Modeling Language.

0%

Promotes continuity of representation from analysis to design to implementation.

100%

I don't know.

0%

 

Question 10: Multiple Choice

 

UML is usually associated with:

%
Responses

A waterfall life cycle.

0%

An spiral life cycle.

10%

An incremental and iterative life cycle.

90%

I don't know.

0%

 

Question 11: Multiple Choice

 

After creating a set of CRC cards, what is the next step?

%
Responses

You're done.

0%

Implement and test the program.

30%

Run simulations using the cards.

70%

I don't know.

0%

 

Question 12: Multiple Choice

 

The editor with undo/redo problem:

%
Responses

Can be modeled as a finite state machine with inheritance and dynamic binding.

20%

Can be solved using the Command design pattern and dynamic binding.

80%

Can be solved using the Command design pattern without inheritance.

0%

I don't know.

0%

 


 

Question 13: Multiple Choice

 

Virtual inheritance means that:

%
Responses

All the member functions of a class support dynamic binding.

10%

Subclasses share a common base class part for each inheritance path.

60%

Subclasses distinguish the base class part for each inheritance path.

20%

I don't know.

10%

 

Question 14: Multiple Choice

 

What does the signature Digit(N) -/-> D imply?

%
Responses

Given a number N, the constructor will sometimes produce a digit D.

90%

Given a number N, the constructor will always produce a digit D.

10%

The constructor Digit(N) has no preconditions.

0%

I don't know.

0%

 

Question 15: Multiple Choice

 

What does the postcondition front(q) = head(q)imply?

%
Responses

The front of q and the head of q are equal in value.

10%

The head of q gets assigned to the front of q.

40%

The meaning of front(q) is defined by head(q) of ADT List.

50%

I don't know.

0%

 

Question 16: Multiple Choice

 

The Standard Template Library:

%
Responses

Supports the Iterator design pattern.

40%

Supports function templates.

50%

Has been incorporated in the Java Development Kit.

10%

I don't know.

0%

 


 

Question 17: Multiple Choice

 

Casting from one type to another:

%
Responses

Works in C++ but not in Java.

0%

Works the same way in Java and C++.

0%

Works in both Java and C++, both differently.

100%

I don't know.

0%


Question 18: Multiple Choice

 

Down-casting:

%
Responses

Should be made explicit in C++ as a dynamic_cast.

40%

Should be made explicit in C++ as a static_cast.

0%

Is prohibited in Java since it violates strong typing.

50%

I don't know.

10%

           

Question 19: Multiple Choice

 

A Java Bean:

%
Responses

Models persistence by implementing a serializable interface.

30%

Can be implemented without Java programming.

10%

Requires the use of a bean box for implementation.

60%

I don't know.

0%

 

Question 20: Multiple Choice

 

In UML, an association:

%
Responses

Implies navigability from one class to another.

20%

Implies inheritance from one class to another.

30%

Implies a role if there is a label is next to a class at one end.

40%

I don't know.

10%