0% found this document useful (0 votes)
26 views6 pages

Object Oriented Analysis & Design Question Bank

Uploaded by

samwoker112
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views6 pages

Object Oriented Analysis & Design Question Bank

Uploaded by

samwoker112
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

SYED AMMAL ENGINEERING COLLEGE

(An ISO 9001:2008 Certified Institution)


Dr. E.M. Abdullah Campus, Ramanathapuram – 623502

DEPARTMENT OF INFORMATION TECHNOLOGY

CS6502 – OBJECT ORIENTED ANALYSIS AND DESIGN


Question Bank

UNIT-1 UML DIAGRAMS


PART-A
1. What is Object Oriented Analysis and Design?
2. Mention the four major phases of Unified Process.
3. Write the benefits of iterative Development.
4. What is UML?
5. Define Use Case and Actor.
6. What is Use case Diagram?
7. Mention the Strength and Weakness of the Use case Diagram.
8. What is Elaboration?
9. What is Class Diagram? When to use Class Diagrams?
10. Define Aggregation and Composition.
11. Difference between Generalization and Specialization.
12. Write the Strength and Weakness of sequence and Collaboration Diagram.
13. Comparison between sequence and Collaboration Diagram.
14. What is State Chart Diagram? When to use State Diagram?
15. Define Event, State and Transitions.
16. What is Activity Diagram? Mention the Elements of an Activity Diagram.
17. What is Package Diagram? When to use package Diagram?
18. Differentiate between Component and Deployment Diagram.
19. Where to use Deployment Diagram?
20. What are the Purposes of Interaction Diagram?

PART-B
1. Explain in detail about the Unified process.
2. Write a problem statement for Library management system. Draw the UML Use Case,
Activity diagram, Class diagram, Sequence diagram, State Chart diagram, package
diagram, Component and Deployment diagrams.
3. A Library lends books and magazines to member, who is registered in the system. It also
maintains the purchase of new books and magazines for the Library. A member can
reserve a book or magazine that is not currently available in the library, so that when it is
returned or purchased by the library, that person is notified. The library can easily create,
replace and delete information about the books, members, and reservation in the system.
The books transactions are stored in the database. The fine list while the member returns
the book after the due date must be generated. Analyze the users and actors of this
system, and the interactions between them must be depicted.
SYED AMMAL ENGINEERING COLLEGE
(An ISO 9001:2008 Certified Institution)
Dr. E.M. Abdullah Campus, Ramanathapuram – 623502

DEPARTMENT OF INFORMATION TECHNOLOGY

4. A University conducts examinations and the results are announced. Prepare a report for
the following:
 Print the marks in the register number order semester wise for each department
 Print the Arrear list semester wise.
 Prepare a Rank list for each department.
 Prepare the final aggregate mark list for final year students.
 Identify the problem statement and Design the classes for each sequence. Draw a
detailed flow chart using state chart diagrams. Design this system using Rational
Rose. Draw all the UML diagrams for designing this system.
5. a).What is use case Diagram? Model a use case diagram for a Banking System. State the
business rules you are considering. b) Consider the following use Cases that play a role in
the Banking System you have modeled: 1. Deposit [Link] Model sequence diagrams
for the above two use cases.
6. Explain about Object Oriented Analysis and Design process.
7. Explain in Detail about the interaction Diagrams and also notations
8. Explain in detail about the Class Diagram.
9. Comparison between Activity and State chart Diagram.
10. Explain the Concepts of Component and Deployment Diagram and Draw component
and deployment diagrams for Book bank system.
11. Explain in detail about the package diagram.
SYED AMMAL ENGINEERING COLLEGE
(An ISO 9001:2008 Certified Institution)
Dr. E.M. Abdullah Campus, Ramanathapuram – 623502

DEPARTMENT OF INFORMATION TECHNOLOGY

UNIT-2 DESIGN PATTETRNS


PART-A
1. Define Design Pattern. State the use of design pattern.
2. What is GRASP? How to apply the GRASP patterns?
3. Define Coupling and Cohesion.
4. What is meant by Low Coupling?
5. What is meant by high Cohesion?
6. Define Controller and mention the advantages of Controller.
7. Limitations of Factory pattern.
8. What is Adapter Pattern? Mention the types of adapter pattern.
9. List out the categories of Design patterns.
10. Mention the list of structural patterns used during design phase of software
development.
11. Mention the list of Behavioral patterns used during design phase of software
development.
12. What is Bloated Controllers? How to identify bloating?
13. Define information Expert.
14. What are the advantages of Factory objects?
15. Define Modular Design.
16. List out the benefits of Adapter patterns.
17. What is Observer Pattern?
18. List out the types of Coupling.
19. List out the four main benefits in Design Pattern?
20. What is CRC Cards?

PART-B
1. Explain in detail about the GRASP pattern and also explain in designing objects with
Responsibilities.
2. Write short notes on adapter, factory method, behavioral and observer pattern.
3. What is coupling? Explain the types of Coupling in detail.
4. Explain in detail about the different categories of Design patterns.
5. Write short notes on Adaptor pattern and Observer Pattern.
6. Explain in detail about the Factory Pattern and mention the Limitations and
applications of Factory pattern.
7. What is Controller? Explain the concepts of Façade, session and bloated controller.
8. Write short notes on Information expert, Creator of GRASP and Cohesion.
9. Explain in detail about the Singleton Pattern.
10. Comparison between different categories of design patterns.
11. Write short notes on Structural and Behavioral Pattern.
SYED AMMAL ENGINEERING COLLEGE
(An ISO 9001:2008 Certified Institution)
Dr. E.M. Abdullah Campus, Ramanathapuram – 623502

DEPARTMENT OF INFORMATION TECHNOLOGY

UNIT-3 CASE STUDY


PART-A
1. List the advantages of Use case Modeling.
2. What is Elaboration? What are the tasks performed in elaboration?
3. What artifacts may start in Elaboration?
4. What is Domain Model?
5. What are Conceptual Classes?
6. Define Association.
7. Define Aggregation and Composition.
8. What are the Components of Domain models?
9. What is POS system? List out the Components of a POS system.
10. Difference between Include and Extend use case relationships.
11. When to use Generalization use case relationship.
12. What are the important deals in Inception of the POS system? Mention the
requirements of Inception phase of the POS system.
13. What are the main goals of establishing conceptual class Hierarchies?
14. Write the Guidelines of Domain Modeling.
15. What is an attribute? List out its types.
16. What are the advantages of Domain Modeling?
17. What are the reasons to use the Domain Model?
18. What are the guidelines to be followed during the elaboration?
19. How to create Domain model?
20. Why call a Domain model a “Visual Dictionary”?

PART-B
1. Explain in Detail about the NextGen POS system and also explain inception of
the POS system.
2. Write short notes on Use case Modeling.
3. Write briefly about the Elaboration and discuss the difference between Elaboration
and Inception with Examples.
4. Describe the Strategies used to identify the Conceptual classes. Describe the steps to
create a Domain model used for representing the Conceptual classes.
5. Discuss about Aggregation and Composition.
6. Explain the guidelines for finding the Conceptual classes with neat diagrams.
7. Write Short notes on Association and attributes.
8. Explain in detail about Use case relationships.
9. Explain in detail about the Finding Conceptual class Hierarchies.
10. Write short notes on Domain model.
SYED AMMAL ENGINEERING COLLEGE
(An ISO 9001:2008 Certified Institution)
Dr. E.M. Abdullah Campus, Ramanathapuram – 623502

DEPARTMENT OF INFORMATION TECHNOLOGY

UNIT-4 APPLYING DESIGN PATTERNS


PART-A
1. What is meant by System Sequence Diagram?
2. What is meant by system Behavior?
3. What is meant by Interaction diagram?
4. Define Logical Architecture.
5. What are the strengths and weakness of Sequence and Collaboration Diagram?
6. Draw the sequence diagram for ATM system.
7. What are the layers of architectural design?
8. What is a package diagram?
9. How a sequence diagram is related to a use case?
10. What are the purposes of Interaction diagram?
11. What are the Relationships in UML?
12. Write the Elements of a sequence Diagram.
13. When and where to use a Sequence Diagrams?
14. Write the benefits of using UML sequence Diagrams.
15. What is class diagram?
16. Mention the Relationship in a class diagram
17. Comparison between sequence and Collaboration diagram.
18. When to use Package Diagrams and Collaboration diagram.
19. When to use class –responsibility-collaboration card.
20. How to create an Instance?

PART-B
1. Illustrate with an example, the relationship between sequence diagram and use cases.
2. Describe the UML notation for class diagram with an example. Explain the concept of
Link, Association and Inheritance.
3. Explain with the example, how interaction diagram are used to model the dynamic
aspects of the system.
4. How to adding a new System sequence diagram and contracts?
5. Explain about Interaction Diagram notation?
6. Explain in detail about the applying GoF design pattern in detail.
7. Explain in detail about Logical Architecture refinement.
8. Write short notes on UML package Diagram.
9. Discuss about the topic of UML class and Interaction Diagrams.
SYED AMMAL ENGINEERING COLLEGE
(An ISO 9001:2008 Certified Institution)
Dr. E.M. Abdullah Campus, Ramanathapuram – 623502

DEPARTMENT OF INFORMATION TECHNOLOGY

UNIT-5 CODING AND TESTING


PART-A
1. What are Steps for Mapping Designs to Code?
2. List the levels of object oriented testing.
3. Define unit.
4. What is the purpose of unit testing?
5. Define integration testing.
6. Define MM- path.
7. Define GUI testing.
8. What are the difficulties in GUI testing.
9. What is class testing?
10. What is OO integration testing?

PART-B
1. Discuss briefly about Issues in OO Testing.
2. Write short notes on Class Testing.
3. Explain in detail about the OO Integration testing.
4. Explain in detail about GUI testing.
5. Write short notes on OO System testing.
6. Explain in detail about coding and testing in OOAD.
7. Explain in detail about mapping design to code concepts in detail.
8. Comparison between OO integration testing and OO system testing.
9. Explain in detail about the different types of testing in OOAD.
10. Comparison between GUI testing and class testing.

Common questions

Powered by AI

A use case describes a system's behavior as it responds to requests from an external actor, focusing on what the system does . A system sequence diagram (SSD) complements this by detailing how external stimuli trigger messages to the system, showing the interaction sequence over time. SSDs provide a diagrammatic view of scenarios outlined in use cases, mapping out message flow for each step . They are critical in revealing system behavior and aiding in understanding the dynamic interactions between users and the system.

Sequence diagrams are beneficial when the focus is on time ordering of messages, crucial for scenario or event-driven processes like user interactions or transactions. They help in understanding the sequence of operations at a glance . In contrast, collaboration diagrams emphasize object relationships and interactions, which can provide more insights into the structural aspects of an application . Choosing sequence diagrams over collaboration diagrams is preferable in systems where timing and order are critical factors for functionality and performance.

Interaction diagrams in UML are used to model the flow of control and data among system objects, focusing on how objects collaborate dynamically over time. They include sequence and collaboration diagrams which depict sequences of messages and object interactions . State diagrams, however, illustrate the states an object or system can be in and how it transitions from one state to another, driven by events . Interaction diagrams emphasize collaboration and behavior, while state diagrams stress system states and changes, providing a more static view of system functionality.

The Unified Process is a software development process that is iterative and incremental. It breaks down the development into phases: inception, elaboration, construction, and transition, allowing continuous refinement of the system . Its strengths include flexibility, risk management, and focusing on high-value features through iterative cycles which allow early detection of issues . However, it can be criticized for its complexity and resource intensity, which might be impractical for small projects. Additionally, strict adherence can lead to excessive documentation, detracting from agile responsiveness .

UML diagrams provide a standardized way to visualize the design of a system. They aid in understanding, maintaining, and documenting system architecture by providing clear visual representations of components and their interactions. Advantages include improved communication among stakeholders and streamlined development processes . However, UML diagrams can be complex and time-consuming to create, and some diagrams may not capture all aspects of a system, leading to potential misunderstandings or misinterpretations .

Component diagrams depict the organization and dependencies of a software system's physical components, such as files, executables, and libraries, and their interfaces. They are best used when detailing the software's architecture and managing component-based development . Deployment diagrams, on the other hand, show the software's physical distribution across hardware resources, highlighting the nodes and their communication pathways. They are crucial for understanding the system's topology and network dependencies, thus being especially useful during system deployment planning and maintenance .

The transition from design to coding involves mapping the designed classes and relationships into a programming language's constructs. This includes defining the class structures, coding methods, and adhering to interfaces specified during design . Challenges include ensuring the design accurately reflects in code, maintaining abstraction and encapsulation, and managing changes in design requirements during the implementation phase. Additional difficulties could arise from debugging complex interactions or integrating with existing systems .

Domain models are structured representations of the entities within a system's problem domain, capturing their relationships and attributes. They provide a blueprint for identifying key conceptual classes which inform the class hierarchy in a system . By accurately modeling real-world entities and interactions, domain models ensure the class hierarchy is logically organized, facilitates code reuse, and aligns with business logic. This alignment enhances the system's robustness and adaptability by maintaining a clear correspondence between business requirements and software structure .

Design patterns standardize solutions to common design issues, promoting code reuse, flexibility, and maintainability. The Factory pattern abstracts instantiation with a creation interface, allowing decoupled object creation . The Observer pattern facilitates a publish-subscribe model, fostering communication between objects without tight coupling . Despite these advantages, design patterns may introduce complexity and excessive abstraction if overused. For instance, Factory patterns can lead to bloated code with numerous small classes, complicating understanding and debugging .

Low coupling and high cohesion are core principles for effective software design. Low coupling implies minimizing dependencies between modules, making a system more flexible and easier to maintain . High cohesion means that components within a module are closely related in function, enhancing module focus and efficiency. Together, these principles increase modularity and robustness, allowing for easier modifications and scalability of the software . They are the foundation for many design patterns which aim to improve design quality and sustainability.

You might also like