Question Bank OOAD
Question Bank OOAD
annauniversityedu.blogspot.com
UNIT I
UNIFIED PROCESS AND USE CASE DIAGRAMS
PART- A
1. What is Analysis and Design (May/June 2013) (Remember)
Analysis (do the right thing) emphasizes an investigation of the problem and requirements, rather
than a solution. For example, if a new online trading system is desired, how will it be used? What
are its functions?
Design (do the thing right) emphasizes a conceptual solution (in software and hardware) that
fulfills the requirements, rather than its implementation. For example, a description of a database
schema and software objects. Design ideas often exclude low-level or "obvious" detail.
2. What is object oriented analysis and design?(April/May 2011, Nov/Dec 2013, May/June
2014,Apr/May 2015,Apr/May 2017) (Remember)
Object-oriented analysis is emphasizing on finding and describing the objects or concepts in the
problem domain. For example, in the case of the flight information system, some of the concepts
include Plane, Flight, and Pilot.
Object-oriented design (or simply, object design) is emphasizing on defining software objects and
how they collaborate to fulfill the requirements. For example, a Plane software object may have a
tail Number attribute and a get FlightHistory method.
4. List out any four reasons for the complexity of software? (Nov/Dec 2011) (Remember)
a. High level of abstraction.
b. Seamless transition among different phases of software development.
annauniversityedu.blogspot.com
5. Why do we need object oriented system development? (Nov/Dec 2012) (Remember)
The system created using object oriented methods are easier to adapt changing requirements, easier to
maintain, more robust, promote greater design. The reasons why object orientation works
1. High level of abstraction.
2. Seamless transition among different phases of software development.
3. Encourage of good programming techniques.
4. Promotion of reusability.
8. What are the Perspectives to Apply UML? (Nov/Dec 2015,Nov/Dec 2016,Apr/May 17)
(Remember)
Conceptual perspective
Specification (software) perspective
Implementation (software) perspective
annauniversityedu.blogspot.com
11. What is Unified Approach/ Process? (Remember) (NOV/DEC 2018)
A software development process describes an approach to building, deploying, and possibly
maintaining software. The Unified Process has emerged as a popular iterative software
development process for building object-oriented systems.
The UP combines commonly accepted best practices, such as an iterative lifecycle and risk-
driven development, into a cohesive and well-documented process description.
14. What do you mean by Use cases and actors (Nov /Dec 2011) (Remember) / Define Use case
and Actor (Nov/Dec 2013, Apr 2018)
Use cases are requirements, primarily functional or behavioral requirements that indicate what the
system will do. A related viewpoint is that a use case defines a contract of how a system will
behave.
An actor is anything with behavior, including the system under discussion (SuD) itself when it
calls upon the services of other systems.
annauniversityedu.blogspot.com
Requirements - The Use-Case Model and Supplementary Specification artifacts to capture
functional and non-functional requirements.
Design - The Design Model artifact, to design the software objects.
Use-Case Model s r
Req. Workshop Vision s r
Requirements vision box exercise
Supplementary
dot voting
Specification
s r
Glossary s r
Design Model s r
Agile modeling test- SW Architecture
Design
driven dev. Document s
Data Model s r
19. State the need for Use Cases (Apr/May 2015) (Analyzing)
o Lack of user involvement in software projects is near the top of the list of reasons for project
failure. Use cases are a good way to help keep it simple, and make it possible for domain experts
or requirement donors to themselves write use cases.
annauniversityedu.blogspot.com
o Another value of use cases is that they emphasize the user goals and perspective; we ask the
question "Who is using the system, what are their typical scenarios of use, and what are their
goals?" This is a more user-centric emphasis compared to simply asking for a list of system
features.
20. List out the steps for finding Use cases (Nov /Dec 2012) (Analyze)
Use cases are defined to satisfy the goals of the primary actors. Hence, the basic procedure is:
Choose the system boundary. Is it just a software application, the hardware and application as
a unit, that plus a person using it, or an entire organization?
Identify the primary actors those that have goals fulfilled through using services of the system.
Identify the goals for each primary actor.
Define use cases that satisfy user goals; name them according to their goal. Usually, user-goal
level use cases will be one-to-one with user goals, but there is at least one exception, as will
be examined.
Sample inception artifacts: Vision and Business Case , Use-Case Model , Supplementary
Specification, Glossary , Risk List & Risk Management Plan, Prototypes and proof-of-concepts ,
Iteration Plan , Phase Plan & Software Development Plan , Development Case
Primary actor has user goals fulfilled through using services of the SuD. For example, the
cashier.Why identify? To find user goals, which drive the use cases.
annauniversityedu.blogspot.com
Supporting actor provides a service (for example, information) to the SuD. The automated
payment authorization service is an example. Often a computer system, but could be an
organization or person.Why identify? To clarify external interfaces and protocols.
Offstage actor has an interest in the behavior of the use case, but is not primary or supporting; for
example, a government tax agency.Why identify? To ensure that all necessary interests are
identified and satisfied. Offstage actor interests are sometimes subtle or easy to miss unless these
actors are explicitly named.
25. List the elements of fully dressed Use case Format. (understand)
Use Case Section Comment
Use Case Name Start with a verb.
Scope The system under design.
Level "user-goal" or "subfunction"
Primary Actor Calls on the system to deliver its services.
Stakeholders and Interests Who cares about this use case, and what do they want?
Preconditions What must be true on start, and worth telling the reader?
Success Guarantee What must be true on successful completion, and worth telling the
reader.
Main Success Scenario A typical, unconditional happy path scenario of success.
Extensions Alternate scenarios of success or failure.
Special Requirements Related non-functional requirements.
Technology and Data Varying I/O methods and data formats.
Variations List
Frequency of Occurrence Influences investigation, testing, and timing of implementation.
Miscellaneous Such as open issues.
annauniversityedu.blogspot.com
28. List the relationships used in use cases(May/June 2012) (Remember)
Relationships
1. The include Relationship
2. The extend Relationship
3. The generalize Relationship
29. Define Extend relationship between use cases (Apr/May 2017) (Remember)
The idea is to create an extending or addition use case, and within it, describe where and under
what condition it extends the behavior of some base use case.
This is an example of an extend relationship. The use of an extension point, and that the
extending use case is triggered by some condition. Extension points are labels in the base use case
which the extending use case references as the point of extension, so that the step numbering of
the base use case can change without affecting the extending use case.
30. Define include relationship b/w use cases (Apr/May 2017) (Remember)
use cases use the include relationship when:
They are duplicated in other use cases.
A use case is very complex and long, and separating it into subunits aids comprehension.
Use case include relationship in the Use-Case Model
31. List out the components of POS system (Remember) (Apr 2018)
POS hardware includes display screen, customer display screen, cash drawer, swiping device (for
credit cards), printer, computer and a bar code reader. All of these are components of POS terminal,
the crucial component of POS hardware.
annauniversityedu.blogspot.com
A modeling language is usually associated with a methodology for object-oriented development. The
modeling language defines the elements of the model. E.g., that a model has classes, methods, object
properties, etc.
Ex: the most important object modeling language standards: the Unified Modeling Language (UML).
33. List any two features of object based languages. (Remember) (Nov/Dec 2018)
Object-based language support all the features of OOPs (Classes , Objects , Abstraction,
Encapsulation , message Passing) except Polymorphism and Inheritance.
Object-based language has an in-built object like javascript has a window object.
Ex: Object-based languages are Javascript, VB, etc.
Part-B
1. Briefly explain the different phases of unified process?(April/May 2011, May/June 2012,
May/June 2013, Nov/Dec 2013,Nov/Dec 2015,Nov/Dec 2016) (Understand)
2. List various UML Diagrams and explain the purpose of each diagram(May/June 2014,Apr/May
2017) (Remember)
3. What do you mean by unified process in OOAD? Explain the phases with suitable
diagrams(Nov/Dec 2011, Nov/Dec 2012,Apr/May 2017) (Understand)
4. Explain about Use Case Model for case study for your choice. (Nov/Dec 2015). (Understand)
5. i) What is UML. (2) (Apr/May 2015)
ii) Explain the include, extend and generalization relationship with an example. (6)
6. Draw the Use case for the following specification (8) (Apr/May 2015) (Understand)
A Coffee Vending Machine dispenses coffee to customers. Customers order coffee by selecting a
recipe from a set of recipes. Customers pay for the coffee using coins. Change is given back, if
any to the customers. The ‘Service Staff’ loads ingredients (Coffee
powder,milk,sugar,water,chocolate)into the coffee machine. The ‘Service Staff can also add a
recipe by indicating the name of the coffee, units of coffee powder, milk ,sugar, water and
chocolate to be added as well as the cost of the coffee.
7. What is the Unified process. Is the UP iterative and incremental? Explain. (8) (Apr/May 2015)
(Understand)
8. Present an outline of object oriented analysis and Object Oriented Design.(NOV/DEC 2017)
9. Why the Unified process has emerged as a popular and effective software development process?
(NOV/DEC 2017)
10. Explain about Use Case Model for case study for your choice. (Nov/Dec 2015). (Understand)
11. What is the Unified process. Is the UP iterative and incremental? Explain. (8) (Apr/May 2015)
(Understand)
12. i)Present an outline of object oriented analysis and Object Oriented Design.(NOV/DEC 2017)
ii) Why the Unified process has emerged as a popular and effective software development
process? (NOV/DEC 2017)
13. Explain about NEXTGEN POS SYSTEM? (Understand)
14. Explain the relationship between use cases. (Understand)
15. Explain the various use case formats. (Understand)
16. By considering the library Management system , perform the object oriented system development
and give the use case model for the same(use include, extend and generalization) (Nov/Dec 2011)
(analyze)
17. By considering your own application , perform the object oriented system development and give
the use case model for the same(use include, extend and generalization) (Nov/Dec 2012) (Create)
annauniversityedu.blogspot.com
18. i) Explain with an example concrete use case and abstract use case(5) (Understand)
ii) Explain with an example generalization and specialization and write note on abstract class and
abstract operation.(8) (NOV/DEC 2017) (Understand)
19. i.Explain in detail about use case diagrams.(6) (Understand) (APR /MAY 2018)
ii) Explain the software development lifecycle of object oriented approach.(7) (Understand)
(APR /MAY 2018)
20. Explain briefly the elements of Use Case diagram.(13) (Understand) (NOV /DEC 2018)
21. How do you see the application of UML diagram for Iterative Software Development? Explain.)
(Remember) (NOV /DEC 2018)
22. i) Outline the steps to be followed to identify actors and use cases.
ii) What is inception? Outline the tasks that a project team performs during inception?(Nov/Dec
2019) (Analyse)
23. Let’s say you own a small banking company where you make and design custom cakes for
different occasions. You now wish to take your business online, so that you could cater to a large
customer base. You hire a web development company to build an online cake store for you. This
software product is built on the basis of the Unified Process Model(UPM).Define and explain UPM
and its phases for developing the above online baking company.(Nov/Dec 2019)(Analyze)
PART-C
1. Apply Interactive modeling for Payroll system in UML.(Analyze)
2. Model a use case diagram for the following scenario(Create)
Deepthi super market wants a subsystem to process supply orders via the web. The user will
supply via a form their name, password, account number and a list of supplies along with an
indication of the quantities desired. The subsystem will validate the input, enter the order into a a
database and generate a receipt with the order number, expected ship date and the total cost of the
order. If the validation step fails, the subsystem will generate an error message describing the cause of
the failure.(NOV/DEC 2017)
ASSIGNMENT QUESTIONS
1. Illustrate the Use cases for the following specification (8) (Apr/May 2015)
A Coffee Vending Machine dispenses coffee to customers. Customers order coffee by selecting a
recipe from a set of recipes. Customers pay for the coffee using coins. Change is given back, if any to
the customers. The ‘Service Staff’ loads ingredients (Coffee powder, milk, sugar, water, chocolate)
into the coffee machine. The ‘Service Staff can also add a recipe by indicating the name of the coffee,
units of coffee powder, milk ,sugar, water and chocolate to be added as well as the cost of the coffee.
(Illustrate)
2. By considering your own application, perform the object oriented system development and
Illustrate the use case model for the same (use include, extend and generalization) ( Illustrate)
annauniversityedu.blogspot.com
UNIT – II
STATIC UML DIAGRAMS
PART – A
Base Class
Derived Class
Multiple inheritance : A class derived from more than one base class
2. List the relationship used in class diagram?(April/May 2011, Nov/Dec 2013, May/June 2014)
(Remember)
Association, Generalization , Dependency ,Interface Realization, Composition and aggregation.
annauniversityedu.blogspot.com
5. Define aggregation and composition?(April/May 2011 , May/June 2012, May/June 2013,
Nov/Dec 2013, May/June 2014) (Remember)
Aggregation is a vague kind of association in the UML that loosely suggests whole-part
relationships (as do many ordinary associations). It has no meaningful distinct semantics in the
UML versus a plain association, but the term is defined in the UML.
Composition, also known as composite aggregation, is a strong kind of whole-part aggregation
and is useful to show in some models. A composition relationship implies that 1) an instance of
the part belongs to only one composite instance at a time, 2) the part must always belong to a
composite and 3) the composite is responsible for the creation and deletion of its parts either by
itself creating/deleting the parts, or by collaborating with other objects.
6. What is elaboration ? (or) What are the tasks performed in elaboration(May/June 2012,
May/June 2013, May/june 2014,Nov/Dec 2015 , Apr 2018) (Remember)
Elaboration is the initial series of iterations during which, on a normal project:
The core, risky software architecture is programmed and tested
The majority of requirements are discovered and stabilized
The major risks are mitigated or retired
Sample elaboration artifacts : Domain Model , Design Model , Software Architecture Document,
Data Model, Use-Case Storyboards, UI Prototypes.
annauniversityedu.blogspot.com
Intension the definition of a conceptual class.
Extension the set of examples to which the conceptual class applies.
10. Write the Guidelines to create a domain model. (Nov/Dec 2015) (Remember)
Agile Modeling Sketching a Class Diagram
Agile Modeling Maintain the Model in a Tool?
Report Objects - Include 'Receipt' in the Model?
Use Domain Terms
How to Model the Unreal World
A Common Mistake with Attributes vs. Classes
annauniversityedu.blogspot.com
12. What is Description class? (Remember)
Add a description class (for example, ProductDescription) when:
There needs to be a description about an item or service, independent of the current existence
of any examples of those items or services.
Deleting instances of things they describe (for example, Item) results in a loss of information
that needs to be maintained, but was incorrectly associated with the deleted thing.
It reduces redundant or duplicated information.
In the UML, associations are defined as "the semantic relationship between two or more classifiers
that involve connections among their instances."
annauniversityedu.blogspot.com
16. What is Reflexive Associations? (Remember)
A concept may have an association to itself; this is known as a reflexive association
17. Give the hint to identify the attributes of a class ( Nov/Dec 2011) (Apply)
Focus on Data Type Attributes in the Domain Model-Attributes in a domain model should
preferably be data types
Relate conceptual classes with an association, not with an attribute.
No Attributes Representing Foreign Keys
Modeling Quantities and Units
annauniversityedu.blogspot.com
20. When to define New Data type Classes? (Understand)
Guidelines for modeling data types:
Represent what may initially be considered a number or string as a new data type class in the domain
model if:
It is composed of separate sections.
o phone number, name of person
There are operations associated with it, such as parsing or validation.
o social security number
It has other attributes.
o promotional price could have a start (effective) date and end date
It is a quantity with a unit.
o payment amount has a unit of currency
It is an abstraction of one or more types with some of these qualities.
In the NextGen POS system an itemID attribute is needed; it is probably an attribute of an Item or
ProductDescription. Casually, it seems like just a number or perhaps a string. For example,
itemID:Integer or itemID:String.
annauniversityedu.blogspot.com
23. Define 100% rule, IS a Rule, Correct Conceptual Subclass. (Remember)
100% Rule: 100% of the conceptual super class’s definition should be applicable to the subclass.
The subclass must conform to 100% of the super class’s:
Attributes
associations
Is-a Rule: All the members of a subclass set must be members of their superclass set. In natural
language, this can usually be informally tested by forming the statement: Subclass is a Super
class.
Correct Conceptual Subclass:
A potential subclass should conform to the:
100% Rule (definition conformance)
Is-a Rule (set membership conformance)
28. What is the use of system sequence diagram?(April/May 2011, May/June 2012, May/June
2014,Apr/May 2015) (Remember)
A software system reacts to three things:
1) External events from actors (humans or computers),
annauniversityedu.blogspot.com
2) Timer events,
3) Faults or exceptions (which are often from external sources).
Therefore, it is useful to know what, precisely, are the external input events the system events. They
are an important part of analyzing system behavior. System behavior is a description of what a system
does, without explaining how it does it. One part of that description is a system sequence diagram.
29. What is the relationship between SSD and Use case? (Understand)
An SSD shows system events for one scenario of a use case, therefore it is generated from
inspection of a use case .SSDs are derived from use cases; they show one scenario.
30. What is the Relationship Between the Domain Layer and Domain Model(Understand)
By creating a domain layer with inspiration from the domain model, we achieve a lower
representational gap, between the real-world domain, and our software design
annauniversityedu.blogspot.com
32. What is qualified association? (Remember)
A qualified association has a qualifier that is used to select an object (or objects) from a larger set
of related objects, based upon the qualifier key.
33. How to Show Collection Attributes with Attribute Text and Association Lines? (Remember)
Suppose that a Sale software object holds a List (an interface for a kind of collection) of many
SalesLineItem objects. For example, in Java:
public class Sale
{
private List<SalesLineItem> lineItems = new ArrayList<SalesLineItem>();
// …
}
annauniversityedu.blogspot.com
34. How to Naming System Events and Operations?(Nov/Dec 2016) (Remember)
System events (and their associated system operations) should be expressed at the level of intent
rather than in terms of the physical input medium or interface widget level.
It also improves clarity to start the name of a system event with a verb Thus "enter item" is better
than "scan" (that is, laser scan) because it captures the intent of the operation while remaining
abstract and noncommittal with respect to design choices about what interface is used to capture
the system event.
35. Define System Events and the System Boundary.(Nov/Dec 2016) (Remember)
To identify system events, it is necessary to be clear on the choice of system on use cases. For the
purposes of software development, the system boundary is usually chosen to be the software system
itself; in this context, a system event is an external event that directly stimulates the software.
38. What is the difference between a class and an object? (Understand) (NOV/DEC 2018)
No. Object Class
2) Object is a real world entity such as pen, laptop, Class is a group of similar objects.
mouse, chair etc.
6) Object allocates memory when it is created. Class doesn't allocated memory when it is
created.
annauniversityedu.blogspot.com
39. Define Multiplicity of an Association.(Understand)(Nov/Dec 2019).
Association end multiplicity defines the number of entity type instances that can be at one
end of an association. An association end multiplicity can have one of the following values: ...
many (*): Indicates that zero, one, or more entity type instances exist at the association end
PART-B
1. For the Hospital Management system draw the following UML diagrams(Nov/Dec 2012)
Conceptual Class Diagram (overall system)
2. Explain the following with an example (Nov/Dec 2011) (Understand)
Conceptual class diagram
3. Explain with an example, how use case modeling is used to describe functional requirements.
Identify the actors, scenario and use cases for the example?(Library Management
system)(April/May 2011, May/June 2012, May/June 2013, Nov/Dec 2013, May/june
2014,Nov/Dec 2016) (Understand)
4. Describe the strategies used to identify conceptual classes. Describe the steps to create a domain
model used for representing conceptual classes. ?(April/May 2011, may/june 2012, may/June
2013, Nov/Dec 2013, May/june 2014,Nov/Dec 2016) (Understand)
5. Write briefly about elaboration and discuss the difference between Elaboration and inception
with neat diagram (or) examples/for University Domain.( May/June 2014,Nov/Dec
2015,Apr/May 2017) (Remember)
6. Explain the method of identifying the classes using the common class approach with an
example(Nov/Dec 2012) (Understand)
7. Explain Domain Model Refinement with an example (Apr/May 2015)? (Understand)
8. Explain Associations with Applying UML? (Understand)
9. Explain Attribute with Applying UML? (Understand)
10. Explain the different kinds of relationships between classes (generalization., dependency ,
realization, association, composition, aggregation) (Understand)
11. Construct Design for Library Information System which comprises and Following notations
(Nov/Dec 2015, Nov/Dec 2016). (Creating)
i) Aggregations
ii) Compositions
iii) Associations
12. Differentiate (or) Explain Aggregations and compositions with suitable example (Apr/May
2015, Apr/May 17)(Nov/Dec 2019) (Remember)
13. Discuss about aggregation and composition.(7) (Understand) (APR /MAY 2018)
14. Describe the strategies used to identify the conceptual classes. Describe the steps to create a
domain model used for representing the conceptual classes.(13) (Understand) (APR /MAY
2018)
15. Draw and discuss an analysis model for Banking system.(8) (Remember)(APR /MAY 2018)
16. With an example,Explain the need for Activity Diagram.(13) (Remember) (NOV /DEC 2018)
17. Consider an elevator that has basic functions such as moving up and down open and close doors
and pick up passengers.The elevator is supposed to be used in a building having floors numbered
from 1 to n.There are call buttons in the elevator corresponding to each floor.For every floor
annauniversityedu.blogspot.com
except floors 1 and n,there are two floor call buttons for the passengers to call elevator for going
up and down.There is only one down call button at floor n and one up call button in floor 1.Then
the car stops at a floor,the doors are opened and the elevator light indicating the current direction
the elevator is going is illuminated so that passengers can get to know the current moving
direction of the elevator.When the elevator is moving a music audio is played insider the elevator.
18. Draw class diagram,activity diagram and component diagram for designing this system.(13)
(Apply) (APR /MAY 2018)
19. Explain in detail about the interaction diagrams and also notations.(13) (Understand) (APR /MAY
2018)
20. Illustrate with an example,the relationship between sequence diagram and use cases.(13)
(Understand) (APR /MAY 2018)
21. Explain details about various static and dynamic UML important diagram with suitable
example.(13) (Understand) (APR /MAY 2018)
22. Draw and explain the class diagram for a banking application.(13) (Remember) (NOV /DEC
2018)
23. What is Domain Model Refinement? Explain with suitable examples.(13) (Understand) (NOV
/DEC 2018)
24. How will you find conceptual class hierarchies? Give example. (13) (Remember) (NOV /DEC
2018)
25. Discuss the relationship between sequence diagram and class diagram. (13) (Understand) (NOV
/DEC 2018)
26. Elaborate Generalization and specialization with an example(6)(Understand)(Nov/Dec 2019)
27. Outline the steps in modeling sequence diagram with an example(13)(Remember)(Nov/Dec
2019)
28. Develop a Usecase model for the activities involved in ordering food in a restaurant from the
point when the customer enters the restaurant to the point when he leaves the
restaurant(15)(Create)(Nov/Dec 2019)
29. Model the Class diagram for “Library management System “.State the functional requirements
you are considering.(15)(Nov/Dec 2019)
PART-C
1. Explain the guidelines for finding Conceptual class with neat diagram (10)
(Apr/May17)(Understand)
2. What is multiplicity of an association? Explain with an example the different types of
multiplicities. (7) (Understand)
3. Explain with an example aggregation and composition.(6) (NOV/DEC 2017) (Understand)
4. Explain the relationships that are possible among the classes in the UML representation with
your own example(Nov/Dec 2011)(Understand)
5. Illustrate with an example, the relationship between sequence diagram and use
cases?(April/May 2011, Nov/Dec 2013, May/June 2014,Apr/May 2015,Nov/Dec 2016)
(Understand)
6. With a suitable example explain how to design a class. Give all possible representation in a class
(name, attribute, visibility, methods, responsibilities)(Nov/Dec 2011, Nov/Dec 2012)(Creating)
7. Describe the UML notation for class diagram with an example , Explain the concept of
association, and inheritance ( May / June 2013 )(Create)
8. i) Describe the UML notation for class diagram with an example
ii) Explain the concept of link , association, and inheritance ( May / June 2012 ) (Understand)
9. What are the Concepts involved in Domain Refinement (Nov/Dec 2015)
annauniversityedu.blogspot.com
ASSIGNMENT QUESTIONS
1. Illustrate the Use cases for the following specification (8) (Apr/May 2015)
A Coffee Vending Machine dispenses coffee to customers. Customers order coffee by selecting a
recipe from a set of recipes. Customers pay for the coffee using coins. Change is given back, if any to
the customers. The ‘Service Staff’ loads ingredients (Coffee powder, milk, sugar, water, chocolate)
into the coffee machine. The ‘Service Staff can also add a recipe by indicating the name of the coffee,
units of coffee powder, milk ,sugar, water and chocolate to be added as well as the cost of the coffee.
(Illustrate)
2. Explain the different kinds of relationships between classes (generalization. dependency,
realization, association, composition, aggregation)(Understand)
3. Model a class diagram for a “Banking system” state the functional requirements you are
considering.(NOV/DEC 2017)(Create)
4. Construct Design for Library Information System which comprises and Following notations,
i) Aggregations
ii) Compositions
iii) Associations (Design)
5. Design the UML class diagram with an example; Explain the concept of association, and
inheritance. ( Design)
UNIT – III
DYNAMIC AND IMPLEMENTATION UML DIAGRAMS
PART A
1. What is UML Activity Diagram? Mention the elements of Activity Diagram (Apr 2018)
(Remember)
A UML activity diagram shows sequential and parallel activities in a process. They are useful for
modeling business processes, workflows, data flows, and complex algorithms.
Elements :
Start , End ,activity ,object ,fork ,join,decision , merge,time signal
rake , sub activity ,accept signal , swim lane
4. What is the use of UML Package diagram (Nov/Dec 2013 , Apr 2018) (Remember)
UML package diagrams are often used to illustrate the logical architecture of a system-the layers,
subsystems, packages. A layer can be modeled as a UML package; for example, the UI layer
modeled as a package named UI.
A UML package represents a namespace so that, for example, a Date class may be defined in two
packages. If you need to provide fully-qualified names, the UML notation is, for example,
java::util::Date in the case that there was an outer package named "java" with a nested package
named "util" with a Date class
annauniversityedu.blogspot.com
5. When to use UML Collaboration diagram (Apr 2018) (Remember)
To model collaborations between objects or roles that deliver the functionalities of use cases and
operations
To model mechanisms within the architectural design of the system
To capture interactions that show the messages passing between objects and roles within the
collaboration
To model alternative scenarios within use cases or operations that involve the collaboration of
different objects and interactions
To support the identification of objects (hence classes) that participate in use cases
7. What are interactive diagrams? List out the components involved in interactive diagram(Nov/Dec
2012) (Remember)
The UML includes interaction diagrams to illustrate how objects interact via messages. They are
used for dynamic object modeling. There are two common types: sequence and communication
interaction diagrams.
annauniversityedu.blogspot.com
8. What is the Relationship Between Interaction and Class Diagrams (Understand)
When we draw interaction diagrams, a set of classes and their methods emerge from the creative
design process of dynamic object modeling. For example, if we started with the makePayment
sequence diagram, we see that a Register and Sale class definition in a class diagram can be
obviously derived.
The influence of interaction diagrams on class diagrams.
10. What is the use of component diagram (May/June 2012, May/June 2013) / Define Component
with an example(Nov/Dec 2011, Nov/Dec 2012) (Remember)
The Component Diagram helps to model the physical aspect of an Object-Oriented software
system. It illustrates the architectures of the software components and the dependencies between
them. Those software components including run-time components, executable components are also
the source code components.
annauniversityedu.blogspot.com
11. Define State Diagram.(Nov/Dec 2012) (Remember)
A UML state machine diagram, illustrates the interesting events and states of an object, and the
behavior of an object in reaction to an event.
12. What is state –Independent Object and state –dependent Object (Remember)
If an object always responds the same way to an event, then it is considered state-independent (or
modeless) with respect to that event.
If for all events of interest, an object always reacts the same way, it is a state-independent object.
By contrast, state-dependent objects react differently to events depending on their state or mode.
13. How to apply state Machine diagram? (Applying) / Give the use of UML State Diagram
(May/june 2014)
State machines are applied in two ways:
1. To model the behavior of a complex reactive object in response to events.
2. To model legal sequences of operations protocol or language specifications.
This approach may be considered a specialization of #1, if the "object" is a language, protocol, or
process. A formal grammar for a context-free language is a kind of state machine.
14. What is deployment diagram & draw its representation? (Remember)(Nov/Dec 2019)
A deployment diagram shows the assignment of concrete software artifacts (such as executable files)
to computational nodes (something with processing services). It shows the deployment of software
elements to the physical architecture and the communication (usually on a network) between physical
elements.
annauniversityedu.blogspot.com
15. What is Execution Environment Node , Node (Remember)
Execution environment node (EEN): This is a software computing resource that runs within an
outer node (such as a computer) and which itself provides a service to host and execute other
executable software elements. For example:
a. An operating system (OS) is software that hosts and executes programs
b. A virtual machine (VM, such as the Java or .NET VM) hosts and executes programs
c. A database engine (such as postgresql) receives SQL program requests and executes them,
and hosts/executes internal stored procedures (written in Java or a proprietary language)
d. A Web browser hosts and executes javascript, Java applets, Flash, and other executable
technologies
e. A workflow engine
f. A servlet container or EJB container
Node: A node may contain and show an artifact a concrete physical element, usually a file. This
includes executables such as JARs, assemblies, .exe files, and scripts. It also includes data files such
as XML, HTML, and so forth
16. How do you represent a node in a Deployment diagram? What kind of information can appear in
a node?(Nov/Dec 2013) (Remember)
There are 2 types of nodes : 1) Node 2) EEN
annauniversityedu.blogspot.com
c) A virtual machine (vm, such as the java or .net vm) hosts and executes programs
d) A database engine (such as postgresql) receives sql program requests and executes them, and
hosts/executes internal stored procedures (written in java or a proprietary language)
e) A web browser hosts and executes javascript, java applets, flash, and other executable
technologies
f) A workflow engine
g) A servlet container or EJB container
18. Draw state transition diagram for next gen POS system (Understand)
A sample state machine for legal sequence of use case operations.
19. What are the primary goals in the design of UML?(Nov/Dec 2016) (Remember)
• Provide users a ready – to use expressive visual modeling language so they can develop and
exchange meaningful models.
• Provide extensibility and specialization mechanism to extend the core concepts.
Be independent of particular programming language and development process.
Provide a formal basis for understanding the modeling language.
Encourage the growth of the OO tools market.
Support higher – level development concepts.
Integrate best practices and methodologies.
annauniversityedu.blogspot.com
20. Draw the state machine for Web page navigation modeling. (Understand)
20. Define package and draw the UML notation for package (May/June 2012, May/June
2013) (Remember)
Logical Architecture is as part of the Design Model and also be summarized as a view in the
Software Architecture Document. It defines the packages within which software classes are
defined.
A UML package can group anything: classes, other packages, use cases, and so on. A layer can
be modeled as a UML package; for example, the UI layer modeled as a package named UI.
21. What do you mean by sequence diagram? Mention its use.(Nov/Dec 2011,Apr/May 2015)
(Remember)
The UML includes interaction diagrams to illustrate how objects interact via messages. They are used
for dynamic object modeling. There are two common types: sequence and communication interaction
diagrams.
Uses of Sequence diagram:
Clearly shows sequence or time ordering of messages
Large set of detailed notation options
annauniversityedu.blogspot.com
Frame
Meaning
Operator
loop(i, 1, 10)
Opt Optional fragment that executes if guard is true.
Par Parallel fragments that execute in parallel.
Region Critical region within which only one thread can run.
25. What are the strengths and weaknesses of sequence & communication diagram?(Apr/May
2017) (Remember)
Type Strengths Weaknesses
sequence clearly shows sequence or time forced to extend to the right when adding
ordering of messages new objects; consumes horizontal space
large set of detailed notation options
annauniversityedu.blogspot.com
Type Strengths Weaknesses
communication space economical flexibility to add more difficult to see sequence of messages
new objects in two dimensions fewer notation options
26. What do you mean by sequence number in UML? Where and for what it is used?(Nov /Dec
2011, Nov/Dec 2012) (Remember)
The order of messages is illustrated with sequence numbers.
1. The first message is not numbered. Thus, msg1 is unnumbered.
2. The order and nesting of subsequent messages is shown with a legal numbering scheme in
which nested messages have a number appended to them.
29.How to use the creating methods from Interaction diagrams? (Understand) (Apr 2018) Message
in interaction diagrams gives the operation name in the class diagrams. In the example ,
makePayment message to register class indicates the presence of makePayment() in register
class.
annauniversityedu.blogspot.com
PART-B
1. For the Hospital Management system draw the Activity Diagram (billing)
(Nov/Dec 2012)(create)
2. Explain about activity diagram with an example?(April/May 2011, May/June 2012, may/June
2013, Nov/Dec 2013,nov/Dec 2016,Nov/Dec 2019) (Understand)
3. Discuss about UML deployment and component diagram. Draw deployment diagram for a
banking application. ?(April/May 2011, May/June 2014,Nov/Dec 2019) (Understand)
4. Explain the state chart diagram with a suitable example. Also define its components and use
(Nov /Dec 2011, Nov/Dec 2013, May/June 2014) (Understand)
5. Consider the Hospital Management System application with the following
requirements(Nov/Dec 2011, Nov/Dec 2012)(Creating)
(i) System should handle the in-patient, out-patient information through receptionist.
(ii) Doctors are allowed to view the patient history and give their prescription.
(iii) There should be a information system to provide the required information.
Give the state chart, component and deployment diagrams.
6. Explain the following with an example (Nov/Dec 2011) (Understand)
i) Activity diagram
13. i) What are the constructs (notations) used in activity diagram.(8) (Apr/May
2015)(Remember)
ii) Draw the activity diagram for the following scenario. Booking a Ticket on the Indian
Railways e-Ticket System.(8) (Apr/May 2015)(Creating)
7. Draw and explain the activity diagram for the online purchase system (8) (Apr/May 2015)
(Understand)
8. What is the purpose of Deployment diagram? Explain the basic elements of deployment diagram
through an example (16) (Apr/May 2015) (Understand)
9. Apply Interactive modeling for Payroll system in UML (Nov/Dec 2016)(Analyzing)
10. Design the activity diagram for the following scenario. Booking a Ticket on the Indian Railways
e-Ticket System.(Creating)
11. Design and explain the activity diagram for the online purchase system (Understand)
PART-C
1. For an ATM system, every user has to be validated with a PIN number to make transaction. A
customer is allowed three times to validate the card giving correct pin number. Design the use
case representation for the same and elaborate the ‘Validate User use case’ using a sequence
diagram.(Analyse)
annauniversityedu.blogspot.com
2. Illustrate with an example, the relationship between sequence diagram and use
cases?(Understand)
3. Summarize about Interaction Diagram for Inventory Management System. (Summarize).
4. How will you refine Logical architecture? Give examples. (13) (Remember) (NOV /DEC 2018)
ASSIGNMENT QUESTIONS
1. Design state chart, component and deployment diagrams for the following specifications.
(i) System should handle the in-patient, out-patient information through receptionist.
(ii) Doctors are allowed to view the patient history and give their prescription.
(iii) There should be a information system to provide the required information. (Apply)
2. Explain with an example interaction diagram ?(April/May 2011) (Understand)
3. Explain with a example , how interaction diagrams are used to model the dynamic aspects of a
system (Nov/Dec 2013) (Understand)
4. What do you mean by interaction diagram? Explain them with a suitable example(Nov/Dec 2011,
Nov/Dec 2012)(Remember)
5. Compare sequence versus collaboration diagram with suitable example ( may/June 2012)
6. Briefly explain about UML sequence Diagrams(April/May 2013) (Understand)
7. With suitable example explain the notations used in Sequence Diagram for the foll: Object
Destruction, frames, Conditional Message, Mutually exclusive message, Iterations over a collection.
(8) (Apr/May 2015)(Create)
8. For an ATM system, every user has to be validated with a PIN number to make transaction. A
customer is allowed three times to validate the card giving correct pin number. Show the use case
representation for the same and elaborate the ‘Validate User use case using a sequence diagram(8)
(Apr/May 2015)(Apply)
UNIT-IV
DESIGN PATTERNS
PART- A
annauniversityedu.blogspot.com
Types of coupling
1. Low coupling or weak coupling
2. High coupling or strong coupling
Low coupling: An element if does not depend on too many other elements like classes,
subsystems and systems it is having low coupling.
High coupling: A class with high coupling relies on many other classes.
7. Mention the list of behavioral Patterns used during design phase of software development (Apr
2018)
Interpreter, Template Method , Command, Iterator , Mediator, Memento, Flyweight , Observer ,
State , Strategy, Visitor .
annauniversityedu.blogspot.com
8. Define Object with suitable example (Nov/Dec 2012) (Remember)
Object is instance of class. In the NextGen POS application, who should be responsible for creating a
SalesLineItem instance. Here “Sale “ takes the responsibility of creating ‘SalesLineItem’ instance .
Since sale contains many ‘SalesLineItem’ objects.
11. What first object beyond the UI layer receives and coordinates (“controls”) a system operation?
(Remember)
Assign the responsibility to an object representing one of these choices:
1. Represents the overall “system,” a “root object,” a device that the software is running within,
or a major subsystem (these are all variations of a façade controller).
2. Represents a use case scenario within which the system operation occurs ( a use-case or
session controller)
annauniversityedu.blogspot.com
14. Distinguish between coupling and cohesion(Nov /Dec 2011,Nov/Dec 2015,Nov/Dec
2016,Apr/May 2017,NOV/DEC 2017,Nov/Dec 2019) (Understand)
Cohesion : The responsibilities of a given element are strongly related and highly focused.
Breaking programs into classes and subsystems is an example of activities that increase the
cohesive properties of a system. A good design principle follows High cohesion and low coupling
Coupling: Coupling is a measure of how strongly one element is connected to, has knowledge of,
or relies on other elements. An element with low (or weak) coupling is not dependent on too
many other elements;
Types of coupling
1. Low coupling or weak coupling
2. High coupling or strong coupling
Solution: Create a Pure Fabrication object called a Factory that handles the creation.
(advice)
annauniversityedu.blogspot.com
19. What is Observer pattern? (Remember)
Name: Observer (Publish-Subscribe)
Problem: Different kinds of subscriber objects are interested in the state changes or events of a
publisher object, and want to react in their own unique way when the publisher
generates an event. Moreover, the publisher wants to maintain low coupling to the
subscribers. What to do?
Solution: Define a "subscriber" or "listener" interface. Subscribers implement this interface. The
(advice) publisher can dynamically register subscribers who are interested in an event and notify
them when an event occurs.
annauniversityedu.blogspot.com
A UI layer UI Facade is occasionally used for push-from-below designs.
annauniversityedu.blogspot.com
Part-B
Part-C
1. Consider a system that includes a database client and two redundant database
servers. Both database servers are identical: the first acts as a main server, the
second acts as a hot back-up in case the main server fails. The database client
annauniversityedu.blogspot.com
accesses the servers through a single component called a “gateway,” hence hiding
from the client which server is currently being used. A separate policy object
called a “watchdog” monitors the requests and responses of the main server and,
depending on the responses, tells the gateway whether to switch over to the back-
up server. What do you call this design pattern? Draw a UML class diagram to
justify your choice (Apply)
2. Consider the following design goals. Indicate the candidate patterns(s) you would consider to
satisfy each goal:
a) Given a legacy banking application, encapsulate the existing business logic component.
b) Given a chess program, enable future developers to substitute the planning algorithm that
describes the next move with a better one. .
c) Given a chess program, enable a monitoring component to switch planning algorithms at
runtime, based on the opposing player's style and response time.
d) You are developing a system that stores its data on a Unix file system. You antcipate that
you will port future versions of the system to other operating systems that provide
different file systems. (Apply)
Assignment Questions
1. Explain about low coupling, controller, high cohesion.
2. Illustrate adapter, singleton, factory.
UNIT V
TESTING
PART –A
annauniversityedu.blogspot.com
b) System Design: The results are a structure of the basic architecture of the system along
with high-level strategy decisions.
c) Object Design: The phase produces a detailed design document of all the models.
d) Implementation: This phase produces a comprehensive code for the problem.
8. What is a use case? What are some of the ways that use cases can be described? (Remember)
Use Case is a scenario depicting a user system interaction. It begins with the user of the
system issuing a sequence of interrelated events. Use cases are described as:
a) Nonformal text with no clear flow of events.
b) Text, easy to read but with a clear flow of events.
c) Formal style using pseudo code.
10. What do you mean by difference between patterns and frameworks. (Remember)
A pattern is instructive information that captures the essential structure and insight of a
successfully family of proven solutions to a recurring problem that arises within certain
context and system of forces. Pattern solves a problem, is a proven concept, describes
relationships, and has significant human component.
A framework is a way of presenting a generic solution to a problem that can be applied to all
levels in a development. It represents a set of classes that make up a reusable design for a
annauniversityedu.blogspot.com
specific class of software. It partitions the design into abstract classes and also defines
relationships between them. They emphasize design reuse over code reuse.
annauniversityedu.blogspot.com
Bank
Account#
*
Person
A qualifier is shown as a small rectangle attached to the end of an association path, between
the final path segment and the symbol of the class to which it connects. The qualifier rectangle
is part of the association path, not part of the class. The qualifier rectangle usually is smaller
than the attached class rectangle.
annauniversityedu.blogspot.com
21. What is a meta-model? (Remember)
It is a model of modeling elements. This assures consistency among diagrams. This has made
possible for a team to explore ways to make the modeling language much simpler by in a
sense unifying the elements of the unified modeling language.
24. What are the designing measurable goals assisted for usability? (Remember)
Usability can be assisted by designing measurable goals, such as
95% users should be able to find how to with draw money from the ATM machine
with out error and with no formal training.
70% of all users should experience the new function as "a clear improvement over the
previous one.
90% of consumers should be able to operate the VCR within 30 minutes.
25. What are the objectives of the user satisfaction test? (Remember)
As a communication vehicle between designers, as well as between users and
designers.
To detect and evaluate changes during the design process.
To provide periodic indications of divergence of opinion about the current design.
To enable pin pointing specific areas of dissatisfaction for remedy.
To provide a clear understanding of just how the completed design is to be evaluated.
annauniversityedu.blogspot.com
26. Why quality assurance is needed? (Remember)
It is because computers are information for doing what you tell to do, not necessarily what
you want them to do. To close this gap, the code must be free from errors, that because
unexpected results a process called "Debugging".
27. What are the kinds of errors you might encounter when you run your program?
(Remember)
1. Language Errors: It results from incorrectly constructed code, such as an incorrectly
typed keyword or some necessary punctuation omitted. These are easiest types of errors.
2. Run time errors: They occur and are detected as the program is running, when a statement
attempts an operation that is impossible to carry out.
3. Logic errors: When codes do not perform the way you intended. The code might be
syntactically valid and run without performing any invalid operations and yet produce
incorrect results.
annauniversityedu.blogspot.com
The main idea behind branch testing is to perform enough tests to ensure that every In branch
testing coverage is to perform enough tests to ensure that every branch alternative has been
executed at least once under some test.
35. List the guidelines for developing quality assurance test cases. (Remember)
Freedman and Thomas have developed guidelines that have been adopted for the UA:
Describe which feature or service your test attempts to cover.
If the test case is based on a use case, it is good idea to refer to the use-case name.
Specify what you are testing and which particular feature.
test the normal use of the object methods.
test the abnormal but reasonable use of the objects methods.
test the boundary conditions.
Test objects interactions and the messages sent among them.
Attempting to reach agreement on answers generally will raise other what-if questions.
The internal quality of the software, such as its reusability and extensibility, should be
assessed as well.
37. What are the steps needed to create a test plan? (Remember)
1. Objectives of the test: create the objectives and describes how to achieve them.
2. Development of a text case: develop test case, both input and expected output.
3. Test analysis: This step involves the examination of the test output and the documentations of
the test results.
annauniversityedu.blogspot.com
40. What is Iterative Development and Continuous Testing? (Remember)
The UA encourages the integration of testing plans from day 1 of the project. Usage scenarios
or Use Cases can become test scenarios; therefore, use cases will drive the usability testing. It
must be iterated and reiterate until, satisfied with the system.
PART B
1. Discuss the analysis and the methodology by Booch, Rambaugh compared to booch
briefly.In which aspect Booch analysis is successful. (13) (Create )
2. Define patterns. How do analysis patterns differ from design patterns. Discuss generative, non
generative patterns and anti patterns and list the guidelines on capturing patterns? (13) (
Create )
3. Elaborate are the major differences between a framework and a pattern? (13) ( Create )
4. Analyze the unified methods for the development of the software? (13) (Analyze)
5. Discuss the various design methods and explain in detail the layered method to software
development.(13) ( Create )
6. Discuss the activities involved in Micro and Macro Development process.(8) ( Create )
7. Describe the use of Sequence and collaboration diagrams with the help of example programs(
Create )
8. Explain component diagram and deployment diagram with examples (6)(Evaluate)
9. Elaborate OMT functional model (7) ( Create )
10. What are the primary goals of UML and explain the various class diagrams? (10) (Analyze)
11. What are the various testing strategies and discuss the impact of object orientation on
testing? (7) ( Create )
9. Discuss the issues of software complexity and discuss on test tool? (7) ( Create )
10. Write short notes on the following: (Analyze)
i) Guideline for developing a user satisfaction test.
ii) White box testing
iii) Black box testing
iv) iv)Debugging
11. Discuss inheritance testing with an example. (7) ( Create )
annauniversityedu.blogspot.com
12. What is a test plan? Describe the contents and characteristics of a test plan. (8) ( Create )
13. Describe the different testing strategies. How to develop test plans guided by
Thomas.(Create) (7)
14. Discuss the guidelines for developing quality assurance test cases described by Freedman and
Thomas adapted for the UA. What are the steps involved to make the testing successful? (13)
(Create)
15. i)Explain standards for testing any particularly Quality Assurance (QA)?(Evalaute)
ii) Explain the guidelines adapted for developing QA test cases. (7) (Evalaute)
16. .Give a brief note on issue in Object Oriented Testing. (13) (Understand) (NOV /DEC 2018)
17. Outline the object oriented testing strategies. (Understand) (NOV /DEC 2019)
18. What is a test case?Describe in detail the test case design for OO software. (NOV /DEC
2019)(Remember)
PART C
1. Construct the guidelines for developing test plans. (15) ( Create )
You may have requirements that dictate a specific appearance or format for your test plan.
The test plan should contain a schedule and a list of required resources.
After you have determined what types of testing are necessary, you need to document
specifically what you are going to do.
A configuration control system provides a way of tracking the changes to the code. At a
minimum, every time the code changes, a record should be kept that tracks which module
has been changed, who changed it, and when it was altered.
A well thought out design tends to produce better code and result in more complete testing,
so it is a good idea to try to keep the plan up to date.
At the end of each month or as you reach each milestone, take time to complete routine
updates
2. Develop the test cases for Bank ATM System .Sketch the Class diagram, Object diagram and State
transition diagram based on Booch methodology.(15) ( Create )
3. Design a burglar alarm system with necessary diagrams based on Booch methodology. List down
the micro development process steps for the alarm system.(15) ( Create )
ASSIGNMENT QUESTIONS
1. Draw the OMT DFD model for the ATM System. (Create)
2. List out ten differences between OOA and OOD.(Remember)
3. Draw the necessary Jacobson methodology listed diagrams for Library Management System.
(Create)
annauniversityedu.blogspot.com