In preparation for IBMs OOAD
Test 486, i took the mock exam on their site. I scored a 73 - which is passing (barely). I got 22/30 questions right. However, i would like to know what the 8 questions were that i got wrong!!! I'm posting here the list of questions that appeared, and my answers. Any comments would be greatly appreciated. Thanks

Dan
Also, thanks to JavaRanch for helping me pass the Sun
Java Certified Programmer Exam! Hoping you guys can help me with the OOAD as well
1)
When using OOAD artifacts to organize and assign team responsibilities on a project, it is
BEST to:
a) evenly distribute use cases among team members and have them work as independently
as possible in order to minimize code dependencies
b) designate one team for implementing interaction diagrams related to the "common code
path" and another team for implementing interaction diagrams related to "code path
variations" (for example ? conditional or error paths)
c) divide teams according to package diagram dependencies and utilize use cases to
schedule the work for the individual team members
d) divide teams according to the layers in the software architecture and have them work
as independently as possible in order to minimize dependencies between the layers}
Single Select - Please select the best answer (one and only one choice must be selected).
******* C
2)
To MOST effectively manage teams working on different packages within a large project,
which one of the following should be true?
a) One technical lead should control the project details and communicate decisions to
the different teams.
b) An architecture board of team leads should negotiate and coordinate changes to
inter-package messages.
c) The team leads should focus on quality designs for the internals of their packages,
mentoring their team members.
d) Communications between the teams should be minimized to reduce overhead burdens
while they work on separate, independent use cases for their packages.
Single Select - Please select the best answer (one and only one choice must be selected).
******** B
3)
Which of the following are effective ways to manage an OO project?
a) Organize the scheduled tasks along the lines of the use cases.
b) Organize the test cases along the lines of the use cases.
c) Organize the user's guide along the lines of the use cases.
d) Organize development teams along the lines of the packages.
Multiple Select - Please select all of the correct answers (this question has 4 correct
choices).
********** ABCD
4)
An iterative development process:
a) represents a structured methodology, which includes functional decomposition.
b) is a technique for managing complexity and plans for change during software
development.
c) is a top-down approach without the dataflow diagrams.
d) is equivalent to an incremental development process.
Single Select - Please select the best answer (one and only one choice must be selected).
************ D(?)
5)
When designing the user interface for an application, if it is unclear what skill level the
end user of an application will possess, which of the following is the BEST approach to
take?
a) Define the level of skill that will be required by the end user and make the
necessary arrangements for educating the users.
b) Define the level of skill that will be required by the end user and provide detailed
on-line help that can be accessed by the users when needed.
c) Prototype portions of the user interface and perform some usability tests to
identify any problem areas. Document any issues in the product readme and have the users
read it before using the product.
d) Prototype portions of the user interface and perform some usability tests to
determine the users level of satisfaction. Make any necessary changes and repeat the
process.}
Single Select - Please select the best answer (one and only one choice must be selected).
*********** D
6)
Which one of the following is the BEST set of potential use cases for the "Prepare for an
Event" scenario in Figure ChefScenario?
a) Prepare for party, Display menu, Generate shopping list, Exclude ingredients on
hand, Generate utensil list, Generate to do list
b) Prepare for party, Display menu, Generate shopping list, Generate utensil list, Pack
utensils, Generate to do list
c) Display menu, Generate shopping list, Generate utensil list, Generate to do list
d) Display menu, Generate shopping list, Exclude ingredients on hand, Generate utensil
list, Generate to do list
e) Generate shopping list, Exclude ingredients on hand, Generate utensil list, Generate
to do list, Check utensil list
Single Select - Please select the best answer (one and only one choice must be selected).
http://certify.torolab.ibm.com/figures/test486F4.gif ************ C
7)
Which of the following are true about services resulting from use cases?
a) New requirements in use cases generally result in one or more public methods in a
business domain class.
b) Private methods are required by the system's use cases.
c) Use cases drive the design of interaction diagrams, which in turn define public
methods in model classes.
Multiple Select - Please select all of the correct answers (this question has 2 correct
choices).
********** AC
8)
Referring to the "Book a Party" use case in the Figure Book a Party, which of the following
is the BEST list of candidate interaction diagrams to support the use case?
a) Find available date, Search for client, View client preferences, Book an event,
Calculate cost of event, Generate confirmation letter
b) Find available date, Search for client, View client preferences, Explain menu
alternatives, Book an event, Calculate cost of event, Generate confirmation letter
c) Find available date, Search for client, View client preferences, Book an event,
Calculate cost of event, Request deposit, Generate confirmation letter
d) Find available date, Search for client, View client preferences, Book an event,
Calculate cost of event, Generate confirmation letter, Mail confirmation letter
Single Select - Please select the best answer (one and only one choice must be selected).
http://certify.torolab.ibm.com/figures/test486F6.gif *********** A
9)
What is wrong with the following analysis use case?
a) There are design details intermixed with the requirements.
b) The actor's actions and system responses are not separated.
c) "Sell goods" is too broad to be a use case.
d) There is nothing wrong with this use case.
Single Select - Please select the best answer (one and only one choice must be selected).
http://certify.torolab.ibm.com/figures/test486F3.gif ************* A
10)
Referring to the deployment diagram, Figure Deployment, for a system that manages
mortgages, which of the following are correct?
a) GUI classes should be in the Branch Client process.
b) These components comprise a three-tier architecture, whether they execute on the
same or different computers.
c) For scalability, the business objects should reside in the Financial Apps Server.
d) Client integration is at the Database Server.
Multiple Select - Please select all of the correct answers (this question has 3 correct
choices).
http://certify.torolab.ibm.com/figures/test486F7.gif ************ ABC
11)
Benefits resulting from designing and implementing layered application components include:
a) reduced initial design time.
b) reduced time for initial development cycle.
c) maintainability and reuse of the application components
Single Select - Please select the best answer (one and only one choice must be selected).
********** C
12)
Which of the following are true about software architecture?
a) Two tier software architectures do not scale to as many clients as three+ tier
architectures.
b) Two tier architectures lead to more reuse than three+ tier architectures.
c) Thin clients are restricted to GUI parts
d) Technologies such as CORBA, RMI, DCOM, and
Servlets allow multiple clients to work
with the same server-based business objects.
Single Select - Please select the best answer (one and only one choice must be selected).
********* D
13)
Based on the following CRC card, what methods should Mortgage have?
a) accrue( anAmountOfInterest )
b) calculateInterest( )
c) apply( aPayment )
d) getCollateral( )
Multiple Select - Please select all of the correct answers (this question has 3 correct
choices).
http://certify.torolab.ibm.com/figures/test486F10.gif *********** BCD
14)
Refer to the Figure Sample 1. Consider the scenario that eStore.com sells small appliances
over the Internet. Currently, the store's catalog includes over 50 appliances from 10
different suppliers. A partial class diagram is shown in Figure Sample 1. If there is a new
requirement to restock the warehouse automatically as products are sold, how is the new
requirement BEST handled?
a) Add "reorderLevel" and "reorderQuantity" attributes used by a new deplete() method
in the Inventory class. Use these to generate new orders as InventoryProducts are sold.
b) Add "reorderLevel" and "reorderQuantity" attributes used by a new deplete() method
in the InventoryProduct class. Use these to generate new orders as InventoryProducts are
sold.
c) Add a deliver() method to the Supplier class that uses the InventoryProduct's
amountOnHand attribute to maintain the InventoryProducts in the warehouse.
d) Add "reorderLevel" and "reorderQuantity" to InventoryProduct. Create a Warehouse
class that monitors the InventoryProducts' "amountOnHand", generating an order as levels
drop below a "reorderQuantity".
Single Select - Please select the best answer (one and only one choice must be selected).
http://certify.torolab.ibm.com/figures/test486F9.gif ********** D
15)
Referring to the diagram in Figure Interface, which of the following are true?
a) Classes "X" and "Y" are subclasses of Mortgageable.
b) Instances of "X" and "Y" can be passed as parameters declared as type Mortgageable.
c) "X" and "Y" must implement a getAppraisedValue() method.
d) There are instances of Mortgageable in the production system.
Multiple Select - Please select all of the correct answers (this question has 2 correct
choices).
http://certify.torolab.ibm.com/figures/test486F13.gif ************ BC
16)
Referring to these partial requirements, which of the following is true?
a) The verbs in the requirements become methods in the object model.
b) Some of the verbs in the requirements become methods of the nouns they reference.
E.g., a FinancialInstitution class would have a getFinancialInformationFor( aCustomer )
method.
c) Some of the verbs in the requirements become methods of the concept taking the
action. E.g., a LoanOfficer class would have a getFinancialInformationFor( aCustomer )
method.
d) Some of the verb phrases in the requirements become overriding methods of the
related superclass, due to the specialization of the action.
Single Select - Please select the best answer (one and only one choice must be selected).
http://certify.torolab.ibm.com/figures/test486F11.gif ************* B
17)
In design #1, the Catalog object has a getProducts() method, which returns a collection
object, such as a Dictionary or array, containing all the Products the company sells. In
design #2, the Catalog object has a getProductNumbered(anIdentifier) method, which returns
the Product with the specified unique identifier. Considering the objects returned, which of
the following BEST characterizes the two designs?
a) Both designs maintain the objects' encapsulation and reduce coupling by accessing
state data via methods only and not directly.
b) Both designs break the objects' encapsulation, adding brittle coupling.
c) Design #1 breaks the encapsulation of the Catalog, adding brittle coupling. Design
#2 maintains the encapsulation of the Catalog, making future design changes easier.
Single Select - Please select the best answer (one and only one choice must be selected).
************** C
18)
Referring to the partial class diagram in Figure Qualified Association, which of the
following BEST describes the relationship?
a) Access to SalesLineItems is by Product. A SalesTransaction can have multiple
SalesLineItems for one Product.
b) Access to Products is by SalesLineItem. A SalesTransaction has zero or more
SalesLineItems for one Product.
c) SalesTransactions contain Products, which are listed by one or more SalesLineItems.
d) SalesLineItems are for a quantity of one or more Products for a particular
SalesTransaction.
Single Select - Please select the best answer (one and only one choice must be selected).
http://certify.torolab.ibm.com/figures/test486F12.gif ***************** A
19)
Which of the following are recommended when developing an OO system?
a) Write a description of the concept that a class represents whenever a new class is
declared.
b) Use interfaces for types or roles that objects may play, independent of their
location in the class hierarchy.
c) Apply design
patterns where applicable in the system.
d) Name classes based on their design specifics, such as "array" or "queue".
Multiple Select - Please select all of the correct answers (this question has 3 correct
choices).
*************** ABC
20)
Based on the activity diagram in Figure Activity, which activities can occur concurrently?
a) Generate closing paperwork, Schedule closing
b) Get property appraised, Verify assets, Check credit rating
c) All the activities can occur concurrently
d) None of the activities can occur concurrently
Multiple Select - Please select all of the correct answers (this question has 2 correct
choices).
http://certify.torolab.ibm.com/figures/test486F17.gif ************** AB
21)
In an OO system, it is desirable to assign responsibilities:
a) relatively evenly across the classes.
b) more heavily in a few controlling classes.
c) according to interaction diagram messaging.
Multiple Select - Please select all of the correct answers (this question has 2 correct
choices).
**************** AC
22)
Which of the following is the BEST description of the sequence diagram in Figure
Interaction? When an instance of a:
a) Person is asked for its assets, it sums the balances of each of its asset Accounts.
b) Customer is asked for its assets, it sums the balances of each of its asset
Accounts.
c) Person is asked for its assets, it returns the balance of its asset Account.
d) Customer is asked for its assets, it returns the balance of its asset Account.
Single Select - Please select the best answer (one and only one choice must be selected).
http://certify.torolab.ibm.com/figures/test486F19.gif ************* C
23)
State diagrams:
a) are good at depicting the behavior of an object across multiple use cases.
b) are best used for objects that have multiple interesting states and not for most or
all the objects in the system.
c) are good at depicting interactions among multiple objects.
d) can be used for user interface or control objects.
Multiple Select - Please select all of the correct answers (this question has 3 correct
choices).
************* ABD
24)
Which of the following are true about interaction diagrams?
a) Interaction diagrams are at their best when they deal with one main design flow and
not multiple variants that can happen.
b) Interaction diagrams are good at designing part or all of one use case's
functionality across multiple objects.
c) Interaction diagrams allow the analyst to show iteration and conditional execution
for messaging between objects.
d) Sequence diagrams are logically equivalent to collaboration diagrams, differing
primarily in format of presentation.
Multiple Select - Please select all of the correct answers (this question has 4 correct
choices).
************** ABCD
25)
Which of the following are true about the strengths and weaknesses of activity diagrams?
a) Activity diagrams are good at enumerating object collaborations to accomplish a
task.
b) Activity diagrams are good at exploring the interactions related to one or more use
cases.
c) It is difficult to discern exactly how to map the activity diagram actions to object
model specifics.
d) Since activity diagrams allow parallel behavior modeling, they are good for workflow
modeling.
Multiple Select - Please select all of the correct answers (this question has 3 correct
choices).
*************** BCD
26)
A non-object oriented legacy application which interacts with back end systems exists. It
is now required to redesign this application into an object oriented system, that caters to
high volume of requests. Which of the following need to be considered while modeling the
system?
a) It is not necessary to define classes, such that they represent the data fields in
the back end. The object model should capture the behavior of the legacy system.
b) The object model should consist of classes which match the back end data fields.
This aids the persistence of classes.
c) Draw activity diagrams to understand the behavior of the existing legacy system.
d) The GUI client objects need to be behavioral driven and they directly communicate
with the database.
Multiple Select - Please select all of the correct answers (this question has 2 correct
choices).
************** BC
27)
Which of the following are true about implementing a system based on existing OOAD assets?
a) Due to constraints introduced by the target language, such as C++, Smalltalk, or
Java, as well as physical packaging, the OO analysis model does not carry forward into
detailed design and implementation.
b) The classes, methods, attributes, and relationships identified during the OO
analysis carry forward into detailed design and implementation.
c) The OO analysis model is usually refactored later in the project.
d) The classes from the OO analysis are expanded to add private methods and
collaborations with helper classes.
Multiple Select - Please select all of the correct answers (this question has 3 correct
choices).
************* BCD
28)
Which of the following are good practices to use while designing for reuse?
a) Define a persistence framework that provides services for persisting objects.
b) Use design patterns, wherein complete solutions are already defined.
c) Use controller objects to control the flow of processes in the system.
d) Assign responsibilities to classes such that coupling between them remains low.
e) Design classes with low cohesion.
Multiple Select - Please select all of the correct answers (this question has 2 correct
choices).
*************** BD
29)
A partial class diagram of a college course management application is shown in Figure
studentInstructor. A student knows all of the instructors he is registered with. Similarly,
an instructor also knows all the students who are registered with him. A new requirement is
added which specifies that an instructor can also be a student for some courses. What is the
BEST partial application redesign shown in the Figure?
a) Design 'A'
b) Design 'B'
c) Design 'C'
d) Design 'D'
e) Design 'E'
Single Select - Please select the best answer (one and only one choice must be selected).
http://certify.torolab.ibm.com/figures/test486F22.gif ************** D(?)
30)
An Observer is a design pattern where dependent objects "register" with another "server"
object so that they are notified of changes to the server object. The server object isn't
specifically aware of its dependents, but only knows to notify them of changes to its state.
Which of the following uses an Observer pattern to maintain the correct separation of model
and view in a layered software architecture?
a) GUI components register with business components so that they can update their views
when the underlying model objects change.
b) GUI components register with other GUI components so that can be notified of user
changes to the state of the system.
c) Business components register with GUI components so that the GUI components know who
to ask for updates to their state.
d) Business components register with other business components so that they can enforce
business rules based on state change.
Single Select - Please select the best answer (one and only one choice must be selected).
******************* A
Test Name:
Pre-Assessment/Sample Test for Test 486, Object-Oriented
Analysis and Design with UML Test
Test
Category
Number of
Questions
Number of
Correct
Average
Score
Designs & Implementation Techniques 4 2 50.0
Requirements Modeling 5 5 100.0
Static Modeling 7 5 71.0
Development Process 4 3 75.0
Dynamic Modeling 7 5 71.0
Architecture 3 2 66.0
# Questions: 30 Passing Score: 70.0
Number Correct Needed: 21 Your Score: 73.0
You Answered Correct: 22 Grade: Pass