Question Bank
CS2353 – Object Oriented Analysis and Design
Department of CSE
2 Marks (with answers)
1. Define Object Oriented Analysis?
Object
Oriented Analysis (OOA) is a method of analysis that examines
requirements
from the perspective of the classes and objects found in the
vocabulary
of the problem domain.
2. What is meant by Object Oriented?
Object
Oriented means we organize the software as a collection of discrete
objects
that incorporate both data structure and behavior.
3. Write the characteristics of an object.
Identity,
classification, polymorphism, and inheritance.
4. What is a class?
A
class is a set of objects that share a common structure and a common
behavior.
5. Name two types of object diagram.
Class
diagram and instance diagram.
6. What is an attribute? Give example.
An
attribute is a data value held by the objects in a class .Example: name,
age
and weight are attributes of Person class.
7. What is multiple inheritance?
When
one class inherits its state (attributes) and behavior from more than
one
super class, it is referred to as multiple inheritances.
8. What is dynamic binding?
The
process of determining (dynamically) at run time which functions to
invoke
is termed dynamic binding.
9. What is static binding?
The
process of determining at compile time which functions to invoke is
termed
static binding.
10. Write the four quality measures for
software development?
Correspondence,
correctness, verification, and validation.
11. What is object persistence?
Objects
have life time. They are created and can exist for a period of time.
A
file or a database can provide support for objects having a longer life
timelonger
than
the duration of the process for which they were created. This
characteristic
is called object persistence.
12. What is polymorphism? Give an example.
Polymorphism
means that the same operation may behave differently on
different
classes. Ex. Move operation. (Behave differently on the window class
and
chess Piece class).
13. What is cardinality?
Cardinality
specifies how many instances of one class may relate to a
single
instance of an associated class.
14. What is a formal class or abstract class?
Formal
or abstract classes have no instances but define the common
behaviors
that can be inherited by more specific classes.
15. What is a meta-class?
A
meta-class is a class about a class. They are normally used to provide
instance
variables and operations.
16. Define Encapsulation?
Encapsulation
is the process of compartmentalizing the elements of an
abstraction
that constitute its structure and behavior.
17. What is the need of an Object diagram?
An
object diagram is used to show the existence of objects and their
relationships
in the logical design of a system.
18. What is state of an object?
The
state of an object encompasses all of the properties of the object plus
the
current values of each of these properties.
19. Write some applications of object model?
They
include Air traffic control, Animation, Avionics, Database, Robotics
etc.
20. Define Concurrency.
Concurrency
is the property that distinguishes an active object from one
that
is not active.
21. Name the three general approaches for
classification?
They
are Classical categorization, Conceptual clustering and Prototype
theory.
22. Name the five levels of process maturity
in OOD?
They
are Initial, Repeatable, Defined, Managed and Optimized.
23. Name the two process used by Grady BOOCH
in his OO software development?
They
are Macro and Micro development process.
24. Name the four steps in Micro development
process?
They
are Identify the classes and objects, Give semantics to the classes,
Identify
class and object relationships, Identify class and object interfaces and
implementation.
25. What are the steps followed in macro
development process?
Conceptualization,
analysis and development of the model, Design or
create
the system architecture, evolution or implementation, maintenance.
26. Short notes on OMT functional model.
OMT
functional model uses dataflow diagram that shows the flow of data
between
different processes in a business .Data flow diagrams use four primary
symbols.
They are process, data flow, data store, external entity.
27. Names the diagrams of Booch Methodology.
Class
diagram, object diagram, state transition diagram, module diagram,
process
diagram, interaction diagram.
28. Name the models in objectory.
Use
case model, domain object model, analysis object model,
implementation
model, test model.
29. What is unified modeling language?
Unified
modeling language is a language for specifying, conducting,
visualizing
and documenting the software system and its components.
30. Name the available layers of the three
layered approach to software development.
Business
layer, access layer, view (user interface) layer.
31. Write the two responsibilities of access
layer?
Translate
Request, Translate result.
32. Write any two advantages of modeling?
The
main reason for modeling is the reduction of complexity. The cost of the
modeling
analysis is much lower than the cost of similar experimentation conducted
with
real time.
33. What is Objectory?
Objectory,
is a method or object-oriented development with the specific
aim
to fit the development of large, real-time systems
34. Define Static model?
It
can be viewed as a snapshot of a system’s parameters at rest or a
specific
point in time. They are needed to represent the structural or static aspect
of a
system.
35. Define Dynamic model?
It
can be viewed as a collection of procedures or behaviors that taken
together
reflect the behavior of a system over time. Dynamic modeling is the most
useful
during the design and implementation phases of the system development.
36. What is an association? Give one example.
An
association is the relationship between the classes.
Ex
person and company are the classes, works-for is the association name.
Works_for
37. What is a qualifier? Give one example.
A
qualifier is an association attribute. The qualifier rectangle is part of the
association
path, not part of the class.
Give
one example.
38. What is a method?
A
method is the implementation of an operation for a class.
39. What is a use case?
Use
cases are scenarios for understanding system requirements. A use case
is
an interaction between users and a system.
40. Name the three types of relationships in
a use case diagram.
Communication,
Uses, extends.
41. Write the two types of Implementation
diagram?
Component
diagram, deployment diagram.
42. What is an activity?
An
activity is a set of operations that is executing during the entire period
an
object is in a state.
43. Write the guidelines for preparing the
Documentation.
Common
cover, 80-20 rule, Familiar vocabulary, make the document as
short
as possible, organize the document.
Bank
Account Person
Company
Person
44. Name the types of relationships among the
objects.
Association,
super-sub structure, aggregation.
45. Write the guidelines for identifying the
associations
A
dependency between two or more classes may be association
A
reference from one class to another is an association.
46. Name the two properties of a part of
relationship.
Transitivity,
Anti symmetry.
47. Write the Guidelines for identifying part
of relationship.
Assembly,
container, collection member
48. Define Prototype?
A
prototype is a version of a software product developed in the early
stages
of the product’s life cycle for specific, experimental purposes. A prototype
enables
you to fully understand how easy or difficult it will be to implement some
of
the features of the system.
49. Define pattern mining?
The
process of looking for patterns to document is called pattern mining
Some
times called reverse architecture.
50. Define anti-patterns?
An
anti-pattern represents a worst practice while a pattern represents a
best
Practice. Anti-patterns come in two varieties. Those describing a bad solution
to a
problem that resulted in a bad situation and Those describing how to get out
of a
bad situation.
51. Define patterns template?
Every
pattern must be expressed in the form of a rule which is called as a
Template.
It should establish a relationship between a context, a system of forces
which
arises in the context, and a configuration.
52. Define proto-patterns?
If
something appears to have all the requisite pattern components, it
should
not be considered a pattern until it has been verified to be a recurring
phenomenon
.A proto-pattern is the “pattern in waiting” which is not yet known
to
recur.
53. Name the two categories of Quality
assurance testing.
Error
based testing, scenario based testing.
54. Define debugging.
Debugging
is the process of finding out where something went wrong and
correcting
the code to eliminate the errors or bugs that cause unexpected results.
55. Write the two types of path testing.
Statement
testing coverage and Branch testing coverage.
56. What is a meta-model?
A
meta-model is a model of modeling elements. UML graphic notations
can
be used not only to describe the system’s components but also to describe a
model
itself.
57. Define a Framework?
A
frame work is a collection of classes that provide a set of services for a
particular
domain.
58. Write the differences between design
patterns and frameworks
· Design
patterns are more abstract than frameworks.
· Design
patterns are smaller architectural elements than frameworks.
· Design
patterns are less specialized than frameworks.
59. Define SQA?
SQA
stands for Software Quality Assurance. This is the measure of
assuring
the quality of the software products. The major activity done here is
testing.
The assurance process also follows the quality model called the QAIMODEL
(Quality
Assurance Institute Model).
60. What is V Testing?
‘V’
testing stands for Verification and Validation testing.
61. What is a quality?
Quality
refers to the ability of products to meet the user’s needs and
expectations.
62. Name the two issues for software quality.
Validation
or user satisfaction, and verification or quality assurance.
63. Define user satisfaction testing.
User
satisfaction testing is the process of quantifying the usability test
with
some measurable attributes of the test, such as functionality, cost or ease of
use.
64. Define test plan.
A
test plan is developed to detect and identify potential problems before
delivering
the software to its users.
65. Write the objectives of testing.
Testing
is the process of executing a program with the intent of finding
errors.
A
good test case is the one that has a high probability of detecting an as
yet
undiscovered error.
A
successful test case is the one that detects an as yet undiscovered error.
66. What is cyclomatic complexity?
Cyclomatic
complexity is software metric that provides a quantitative
measure
of the logical complexity of a program. The value computed for
cyclomatic
complexity defines the number of independent paths in the basis set of
program.
67. Define corollary?
Corollary
is a proposition that follows from an axiom or another
proposition
that has been proven.
68. Name the two axioms.
Axiom1:
The independence axiom. Maintain the independence of
components.
Axiom2:
The information axiom. Minimize the information content of the
design.
69. Define coupling.
Coupling
is a measure of the strength of association established by a
connection
from one object or software component to another. Coupling is a
binary
relationship. Coupling deals with interactions between objects or software
components.
70. Name the two types of coupling in the
object oriented design.
Interaction
coupling and inheritance coupling.
71. Define cohesion.
Cohesion
means the interactions within a single object or software
component.
72. Name the types of attributes.
Single
value attribute, Multiplicity or multivalue attributes, Reference to
another
object or instance connection.
73. Write the syntax for presenting the
attribute that was suggested by UML.
visibility
name : type_expression = initial _value
Where
visibility is one of the following
+
public visibility
# protected
visibility
-
private visibility
type_expression
- type of an attribute
Initial_value
is a language dependent expression for the initial value of a newly
created
object.
74. Write the syntax for presenting the
operation that was suggested by UML
visibility name : (parameter_list): return
_type_expression
Where
visibility is one of the following
+
public visibility
#
protected visibility
-
private visibility
parameter-
is a list of parameters.
Return_type_expression:
is a language _dependent specification of the
Implementation
of the value returned by the method.
75. What is a Façade?
Facade
classes are the public classes in a package for public behavior.
76. Define DBMS?
A
database management system (DBMS) is a program that enables the
creation
and maintenance of a collection of related data.
77. What is database model?
Database
model is a collection of logical constructs used to represent the
data
structure and data relationships within the database.
78. Name the two categories of database
model?
Conceptual
model and Implementation model.
79. Write the six categories for the life
time of data
Transient
results to the evaluation of expressions, variables involves in
procedure
activation, global variables and variables that are dynamically
allocated,
data that exist between the execution of a program, data that exist
between
the versions of a program, data that outlive a program.
80. What is schema or metadata?
The
fundamental characteristic of the database is that the DBMS contains
not
only the data but the complete definition of the data formats such as data
structures,
types and constraints, it manages. This description is known as the
schema
or metadata
81. Name the three types of data base model?
Hierarchical
model, network model, relational model.
82. Define data definition language.
Data
definition language (DDL) is a language used to describe the
structure
of and relationships between objects stored in a database .This structure
of
information are termed as database schema.
83. Define data manipulation language.
Data
manipulation language (DML) is a language that allows users to
access
and manipulate (such as create, save, or destroy) data organization.
84. When the transaction is said to commit.
The
transaction is said to commit if all changes can be made successfully
to
the database.
85. When the transaction is said to abort.
The
transaction is said to abort if all changes to the database can not be
made
successfully.
86. What is conservative or pessimistic
policy?
The
most conservative way to enforce serialization is to allow a user to
lock
all objects or records when they are accessed and to release the locks only
after
a transaction commits. This approach is known as conservative or
pessimistic
policy.
87. Describe client server computing.
The
client is a process (program) that sends a message to a server process
(program)
requesting that the server perform a task (service).
88. Name the types of object relation
mapping.
Table
class mapping, Table –multiple classes mapping, Table-Inherited
classes
mapping, Tables-Inherited classes mapping.
89. Write the need of middleware.
The
client is a process (program) that sends a message to a server process
(program)
requesting that the server perform a task (service). The key element of
connectivity
is the network operating system (NOS), also known as middleware.
90. Mention the different forms of server.
File
server, database server, transaction server, application server.
91. What is the use of application web
server?
In a
two-tier architecture, a client talks directly to a server, no intervening
server.
Three_ tier architecture introduces a server that is application web server
between
the client and the server to send and receive the messages.
92. Write the components of client server
application.
User
interface, business processing, database processing.
93. What is Object Oriented Database
management system?
Object
Oriented Database management system is a marriage of Object
Oriented
programming and Database management system.
94. Define ODBC?
The
Open Database connectivity is an application programming interface
that
provides solutions to the multidatabase programming interface.
95. What is the need of an Interaction
diagram?
An
Interaction diagram is used to trace the exception of a scenario in the
same
context of an object diagram.
96. What is the need of a Class diagram?
A
class diagram is used to show the existence of classes and their
relationships
in the logical view of a system.
97. What is Behavior of an object?
Behavior
is how an object acts and reacts in terms of its state changes and
message
passing.
98. What are the characteristic features of
an Interaction diagram?
They
include the representation of objects with its name and class
name.
Each object has a life line. The order of messaging between objects is well
defined.
99. Define forward engineering and revere
engineering.
Forward
engineering means creating a relational schema from an existing
object
model
Reverse
engineering means creating an object model from an existing
relational
database layout (schema).
100. What is Object request broker (ORB)?
Object
request broker (ORB) –Middle ware that implements a
communication
channel through which applications can access object interfaces
and
request data and services.
101. What is distributed database?
In
distributed database, different portions of the database reside on
different
nodes (computers) and disk drives in the network. Each portions of the
database
is managed by a server, a process responsible for controlling access and
retrieval
of data from the database portion.
102. What does RAD stands for?
Rapid
application development (RAD) is a set of tools and techniques that
can
be used to build an application faster than typically possible with traditional
methods.
103. What are the traditional software
development methodologies?
Most
traditional development methodologies are either algorithm centric
or
data centric.
16
Marks Questions(with key)
1. Briefly explain about object oriented
system development (OOSD) life cycle.
Explain
about object oriented system development life cycle
Object
Oriented Analysis
Object
Oriented Design
Object
Oriented Implementation
Activities
Object
Oriented Analysis
Object
Oriented Design
Prototyping
Component
based development
Incremental
Testing
2. Explain the following
(i).
Class hierarchy (8)
(ii).
Object relationships and associations (8)
Explain
the following
(i).
Class hierarchy –super class and sub class, inheritance, multiple
inheritance,
examples.
(ii).
Object relationships and associations-link and association, examples.
3. Briefly explain about the characteristics
of an object and software
development processes?
Characteristics
of an object- Identity, classification, polymorphism,
inheritance.
software
development processes- analysis, design, implementation, testing
4. Briefly explain about Rumbaugh methodology
Explain
about Rumbaugh methodology
4
phases- analysis, system design, object design, implementation
3
models- object model, dynamic model, functional model-explain with
examples
5. Explain about Booch methodology
Explain
about Booch methodology
It
consists the following diagrams
Class
diagram
Object
diagram
State
Transition diagram
Module
diagram
Process
diagram
Interaction
diagram
Explain-
Macro process, micro process.
6. Explain the following
(i). Class diagram (5)
(ii). Aggregation (3)
(iii).Inheritance (8)
Class
diagram-definition for class, need of the class diagram, explains
with
examples.
(ii).
Aggregation –Definition, explain with example
(iii).
Inheritance-definition, explain with example, multiple inheritance
7. Briefly explain about UML Dynamic
Modeling.
Behavior
diagrams (dynamic)
Interaction
diagram
a.
Sequence diagram
b.
Collaboration diagram
State
chart diagram
Activity
diagram
-Explain
in details.
8. Briefly explain about use case model with
one example.
-Explain
about use case model with one example.
-Draw
the use case diagram for the library and explain it.
Explain-
actor, use case, relationships of the use case model.
9. Explain the following.
(i). Guidelines for identifying part of relationship
(5)
(ii). Note (5)
(iii). Documentation (6)
(i). Guidelines for identifying part of
relationship
-assembly,
container, collection member
(ii).
Note-Definition, example
(iii).
Documentation-uses, guidelines for developing documentation
10. Explain the following.
(i). Test plan (8)
(ii). Test cases (8)
Explain
the following
(i).
Test plan-Definition, Guidelines
(ii).
Test cases- Definition, Guidelines, example
11. Briefly explain about design patterns and
frameworks.
Explain
about pattern- definition, characteristics of good design,
Generative
and non-generative pattern, pattern template.
Framework-
definition, differences between design patterns and
frameworks.
12. Briefly explain about association.
Association-
definition, types of association, role name
-Explain
with example.
13. Write a comparative study on Booch and
Rumbaugh Methodologies?
Booch
methodology has the following
· It
has two process like the following
· The
Micro development process
· Second
is the macro development process
· It
acts as the controlling architecture for the micro development process
· It
make use of the following diagrams
· Class
diagram, object diagram, Interaction diagram
· State
chart diagram, activity diagram etc
Rumbaugh
Methodology is mainly called the OMT
· OMT
stands for Object Modeling Technique
· It
consist of the following three models
· Object
Model
· Dynamic
model
· Functional
model
· Object
model describes the objects in the system
· Dynamic
model contains the dynamic diagrams and transitions
· The
functional model shows the flow of data with diagrams
· OMT
consists of four phases like
· Analysis,
System design
· Object
design and Implementation
14. Write about the four phases in OMT?
OMT
consists of four phases. They are
· Analysis-The
results are objects and dynamic & functional models.
· System
design-The results are a structure of the basic architecture of the
system
along with high-level strategy decisions.
· Object
Design-Produces a design document, consisting of detailed objects
static,
dynamic and functional models
· Implementation-This
activity produces reusable, extendible, robust code.
15. Explain in detail about Macro Development
process?
Macro
Development process consists of the following phases
· Conceptualization
· Analysis
· Design
· Implementation
· Maintenance
· It
acts as the controlling architecture for the micro development process
· It
explains the overall life cycle of the development
· Each
phase of the macro process can be supplemented by the micro
process
16. Explain in detail about Micro Development
process wit neat diagram?
Micro
Development process consists of 4 phases they are the following
· Identify
classes and objects
· Add
semantics to classes and objects
· Create
the interface and implementation for the classes
· Implement
the classes with the language perspective
· It
explains the day to day work done by the developers
· It
is supplemented with the macro development process
· It
is an iterative and incremental process
17. Create analysis and design diagrams for
the problem Scenario Banking?
Analysis
and design diagrams for the problem Scenario Banking must
contain
the following
· Use
case Analysis diagrams
· Different
scenarios
· Design
diagrams the include
· Class
diagram, Activity diagram, Sequence diagram etc
· The
relationship between different entities must be finite
· Inheritance
must be practiced etc
18. What are the advantages of Modeling?
Good
models are essential for communication among project
teams.
As the complexity of systems increases, so does the importance of
good
modeling techniques. Some of the advantages are as follows:
· Models
make it easier to express complex ideas.
· The
main reason for modeling is to reduction of complexity.
· Models
enhance and reinforce learning and training.
· The
cost of modeling analysis is much lower than the cost of similar
experimentation
conducted in real system.
· Manipulation
of the model is much easier.
19. Briefly explain about object oriented
design process and corollaries.
Steps for OOD process
(i).
Apply design axioms to design classes, their attributes, methods,
association,
structures, and protocols.
(ii).
Design the access layer
(iii).
Design the view layer classes.
(iv).
Iterate and refine the whole design.
-Name
the types of corollaries and explain.
20. Explain the following
(i).UML operation presentation (8)
(ii). Data base model (8)
Explain
the following
(i).UML
operation presentation- syntax, example
(ii).
Data base model-Explain Hierarchical model, network model,
relational
model with examples.
21. Explain the following.
(i). Database Interface (8)
(ii). Multidatabase system (8)
Explain
the following
(i).
Database Interface -DDL, DML, query
(ii).
Multidatabase system-definition, ODBC
22. Briefly explain about testing strategies
Explain-
Black box testing, white box testing, top down testing, bottom up
testing.
23. Draw the sequence diagram for the
withdraw checking use case and draw the
activity diagram for Account class with draw
method.
-Draw
the sequence diagram and activity diagram as mentioned above.
24. Explain usability testing and user
satisfaction testing.
Explain
usability testing and user satisfaction testing.
-
Usability testing- Definition, Guidelines, example.
-
User satisfaction testing- Definition, Guidelines, example.
25. Briefly explain about object relational
system?
Explain-
reverse engineering and forward engineering,
-
Table class mapping, Table-multiple classes mapping, Table-Inherited
classes
mapping, Tables-Inherited classes mapping.
No comments:
Post a Comment