You are on page 1of 6

Object Oriented System Design

Unit V
2 Mark Questions
1.

List the steps involved in Implementation modeling.


The following are the steps:
Fine-tune classes
Fine-tune generalizations
Realize associations
Prepare for testing

2.

Define Transformation.
Transformation is a mapping from the domain of models to the range of models,
focusing not only on customer requirements, but also take an abstract mathematical
perspective.

3. Give the significance of partitioning and merging classes.


The make the load of classes evenly distributed, we either reduce the load by
partitioning or increase by merging. Thus increasing the performance.
4. What is one way association? How it can be implemented?
If an association is traversed only in one direction, it is called as one-way. It can be
implemented as a pointer in a programming language.
5.

What is two way association? How it can be implemented?


If an association is traversed in both directions, it is called as two-way. It can be
implemented as
A single direction pointer in a programming language One-way
Implementation
Pointers for both the directions Two-way Implementation
Implemented with an association object.

6. What is testing?
Testing is a quality assurance mechanism for catching residual errors. The number
of bugs found after testing is an indicator of software quality.
7.

List the types of testing.


Unit Testing: Testing of small pieces of code to the ultimate application.
Testing each code (classes and methods) individually is called Unit Testing
Integration testing: Grouping the codes together, increasing the scope and
behavior, and then testing the system.
System Testing: Checking the entire application

8. List the various access specifiers that promote encapsulation in C++.

Private, Protected, Public and Friend Also called as access modifiers.


9. What is JVM?
Java source code compiles to an intermediate byte code, which in-turn runs on a
platform specific Java Virtual Machine (JVM)
10. What is autoboxing in Java?
Automatic conversion between primitives and their corresponding wrappers in
common circumstances such as parameter passing and used in collection.
11. How multiple inheritance is supported in Java?
Through the use of Interfaces
12. What is interface in Java?
Interface is a class specification with no implementation. It contains only method
declarations and some constants that are allocated per class (not per object)
13. Give the significance of using packages.
Packages organize classes and provide a scope for identifiers
14. List the advantages of enumerations.
Provides a value domain constraint and symbolic representation of values
15. Give the UML notation for various access controls.
Private  Protected  #
Public  +
Package  ~
16. Differentiate Abstract and concrete class
Abstract  Classes that are described but remain partially or wholly
unimplemented
Concrete  Classes that fully implement the parents specified behavior.
17. Differentiate direct and indirect base classes
Direct base is an immediate parent of a derived class. While an indirect base is the
one which is more remote ancestor
18. How to implement association in programming language?
public class Company {
public class Person {
void get()
Company c = new Company();
{}
c.get();
}
}
19. What are statically allocated objects?

Objects that are created during compile time.


20. What are dynamically allocated objects?
Objects that are persist in memory from time of their creation until they are
explicitly destroyed in C++. Created during run time
21. Give the necessity of using static qualifier.
Static members belong not to an instance of a class. Both static data and methods
can be addresses through a particular object, but neither are instance members of
that object.
22. What is Garbage collection?
The process of explicitly removing objects that are no longer needed or sensible by
the system. The system periodically runs a garbage collector that reclaims tagged
objects space from the memory load.
23. What are the two ways of destroying objects
Calling garbage collector.
Using explicit destructors
24. What are derived attributes?
The values of some attributes can be calculated from independent data at the time of
use. These attributes are called as derived attributes.
25. Define database.
A database is a permanent, self-descriptive store of data that is contained in one or
more files. The database contains data structure or schema (description of data) +
actual data
26. What is DBMS?
Database Management System is the software for managing access to a database. It
provides: Data protection, Efficiency, Sharing between users, sharing between
applications, Data quality, Data distribution and Security.
27. What is RDBMS?
Relational DBMS manages tables of data and associated structures that increase the
functionality and performance of tables.
28. List the three major aspects of RDBMS.
a. Data Structure specifications like number of columns and rows
b. Operators the operators that manipulate tables.
c. Constraints the rules for manipulating tables.
29. Define Primary, Foreign and Candidate keys

Candidate Key  the combination of columns that uniquely identifies each


row in a table. The combination should be minimal and include only required
columns.
Primary Key  A candidate key that is preferentially used to access the
records in a table.
Foreign Key  It is a reference to a candidate key (normally a primary key)
and is the glue that binds tables.

30. Give the significance of Normal Form


It is a guideline for relational database tables that increases data consistency. There
are various levels of normal forms. As higher the level, as lesser the storage of
redundant data.
31. State de-normalization.
Developers can violate normal forms for good cause, such as to increase performance
for a database that is read and seldom updated. Such a relaxation is called denormalization.
32. What are the two approaches for providing identity for table?
Object Identity: An artificial number attribute is added to each class table
and this is made as the primary key
Value-based identity: identify each object with some combination of real
world attributes. The primary key for each association table consists of
primary keys from the related classes.
33. Define index.
An index is a data structure that maps column values into database table rows.
Indexes are used to quickly locate data without having to search every row in a
database table every time a database table is accessed
34. Define Views.
A view is a subset of a database that is generated from a query and stored as a
permanent object. A view is a simplified table that is created for each subclass to
consolidate inherited data and make object access easier.
35. What is a stored procedure?
A stored procedure is a programming code that is stored in a database. Used to
increase efficiency and let applications share general purpose functionality.
36. Give the significance of fourth generation languages.
The 4GL is a framework for database applications that provides screen layout,
simple calculations and reports. They reduce application development time.
37. List some of common data interaction techniques

Preprocessor and post processor, script files, Embedded DBMS commands, Custom
API, Stored procedures, 4GL, Generic layer, Metadata driven

38. What are the key issues in data conversion


Cleansing data, Handling missing data, moving data, merging data, changing data
structure.
39. Define Object Oriented Databases
It is a persistent store of objects that mix data and behavior. The objects persist
beyond the confines of program execution.
40. Give the significance of OO-DBMS. List its motivations
Object Oriented DBMS manages data, programming code and associated structures
that constitute an object-oriented database. 2 motivations are:
Programmer frustration with RDBMS
Need for special features like rich data types, quick access to low level
primitives
41. Give the kinds of reusability. List its advantages.
Kinds of reusability:
Sharing of newly written code within an application.
Reuse of previously written code on new applications.
Some advantages are: Reducing design, coding and testing cost by amortizing effort
over several applications.
42. What are the various rules for reusability
Keep method coherent
Keep method small
Keep method consistent
Separate policy and implementation
Provide uniform coverage
Broaden the method as much as possible
Avoid global information
Avoid methods with state.
43. What are the techniques used for breaking up methods for inheritance:
Factor out commonality
Factor out differences
Delegate
Encapsulate external code
44. List the rules for extensibility
All the rules of Reusability along with:
Encapsulate classes

Specify visibility for methods


Hide data structures
Avoid traversing multiple links or methods.
Avoid case statements on object type
Design for portability

45. What are the measures to handle for robustness


Protect against errors
Optimize after the program runs
Always construct objects in a valid state
Validate arguments
Avoid predefined limits
Instrument the program for debugging and performance monitoring
46. List the guidelines for writing large complex code.
Do not program prematurely
Make methods readable
Keep methods understandable
Use the same names as in the class model
Choose names carefully
Use programming guidelines
Use packages
Document classes and methods
Publish the specification
Avoid duplicated code

Unit V
16 Mark Questions
1. Differentiate the significant features of two powerful object oriented programming
languages.
2. For any ATM example class model, give the procedure for implementing its
structure
3. List the steps involved in implementing functionality of an application.
4. Discuss about various basic principles of RDBMS concepts.
5. Suggest the various methods used for translating a class model into SQL code.
6. What is the significant use of object oriented databases. Give its motivations.
7. Discuss in detail about Object Oriented programming style guidelines. Give
necessary examples for each.