ooad
Post on 14-Nov-2014
19 Views
Preview:
DESCRIPTION
TRANSCRIPT
CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGN
NOVEMBER / DECEMBER 2004
PART A
1. Why does one go for object oriented system analysis design?
2. What are the various processes involved in object oriented software development
life cycle?
3. What is OMT?
4. List at least four graphical diagrams defined in UML.
5. What is the application of use-case model?
6. What is meant by generalization hierarchy?
7. State the OO design axioms.
8. What are the various attribute types?
9. What is scenario based testing?
10. What are the principal objectives of the user satisfaction test?
PART B
11. (i) Why do we follow standards for testing any particularly Quality Assurance
(QA)?
(ii) What are the guideline adapted for developing QA test cases.
12. (a) Compare the salient features that make object orientation a better approach than structure approach? If you are a student of Engineering then state the attributes and methods required for getting admission in reputed
institutions.
Or
(b) How is software development viewed? What are the various phases of OOSD life cycle?
What is waterfall approach? List out its limitations.
13. (a) What are the components of Booch method? Explain with examples.
Or
(b) (i) Give an example of UML Collaboration diagram.
(ii) How does a complex system is modeled?
14. (a) (i) What are the guidelines for developing effective documentation?
(ii) Describe the activity diagram for Banking System.
Or
(b) (i) What is the difference between users and actors? How would you identify
them?
(ii) Discuss the relationships and aggregation.
15. (a) (i) What are the activities of designing view for layer classes?
(ii) Why does refinement of attributes is a must? Give a suitable example for
it.
Or
(b) What are OODBMS standards? Explain them briefly. When to use object database? List down atleast four of their advantages and disadvantages over RDBMS.
OBJECT ORIENTED SYSTEM ANALYSIS AND DESIGN
APRIL / MAY 2005
PART A
1. Mention the OOSD life cycle
2. What is dynamic binding? When does one go for it?
3. What is unified approach? Does it specify a methodology?
4. What is meant by dynamic modeling?
5. Define aggregation.
6. Name few diagrams in Booch Methodology.
7. What is meant by Database interface? Give an example.
8. What is a protocol and its function?
9. Discuss the impact on object orientation on testing.
10. Continuous testing cured the last minute crunch comment on it.
PART B
11. Why is object orientation started finding place in system development? What are its major advantages and methodologies? How to design objects, relationships and associations? How is object persistence helpful and how to store only the persistent attributes?
12. (a) (i) Outline OMT functional model. Also give OMT data floe diagram primary symbols.
(ii) What is the strength of Jacobson methodology emphasizing the two key concepts in it?
Or
(b) Why do we need to model a problem? What is UML and describe its importance? How is the dynamic behaviors expressed using various diagrams as per Booch?
13. (a) Describe the non phrase approach for identify tentative classes in a problem domain. Why are classes, responsibilities and collaborations useful? Identify the 3 steps in CRC process.
Or
(b) what are the guidelines for defining attributes? How would you identify a super- sub class structure?
14. (a) What is coupling? While designing software programs, what precautions will one bore in mind. Tabulate types of coupling among objects or components.
Or (b) what are some characteristics of a bad design? In a networking environment what precautions one has to consider to design associations. If server-client architecture is adapted.
15. (a) Describe the different testing strategies. How to develop test plans guided by Thomas.
Or (b) Sketch 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?
CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGN
NOVEMBER / DECEMBER 2005
PART A
1. What is meant by software development methodology?
2. Distinguish between encapsulation and information hiding.
3. Why do we need to model a problem?
4. What is an association class? How is it represented in UML?
5. What is a use case model?
6. What is the basic principle of CRC method?
7. What is meant by an axiom? List the two design axioms of object oriented design.
8. List any two differences between OODBMS and object oriented programming
language.
9. What is regression testing?
10. What is user satisfaction testing? Give any two objectives of user satisfaction test.
PART B
11. Book section of an engineering college is to be computerized. The important functions of a book section are
(i) Addition, deletion and modification of membership details
(ii) Issuing books to members and returning
(iii) Computing fine at the time of returning the books
(iv) Creation of defaulters list.
For the above problem, draw the following UML diagram:
(1) Use case diagram
(2) Class diagram
(3) Sequence or collaboration diagram of any two use cases
(4) Activity diagram for any two classes.
12. (a) (i) Discuss the similarities and differences between structured approach and
object oriented approach.
(ii) What is dynamic inheritance? What is multiple inheritance? Discuss
the
merits and demerits of multiple inheritance.
Or
(b) (i) What is meant prototype? Why is it necessary to create prototype? Discuss
about the different categories of prototype.
(ii) Describe the process that are involved in unified approach for software
development.
13. (a) (i) Use the noun phrase approach to identify the objects from the following
grocery store problem.
A store wants to automate its inventory. It has point-of-sale terminals that can record all of the items and quantities that a customer purchases. Another terminal is also available for the customer service desk to handle returns. It has a similar terminal in the loading dock to handle arriving shipments from suppliers. The meat department and produce departments have terminals to enter losses/discounts due to spoilage.
(ii) Discuss the guidelines for finding use cases.
Or
(b) (i) Explain the guidelines for identifying super-sub relationship in an
application.
(ii) What is aggregation relationship? Describe the two properties of
aggregation relationship. What guidelines would you use to identify
aggregate relationship?
14. (a) State 6 corollaries of O.O.Design. Explain any four of them in detail with
suitable examples.
Or
(b) (i) Explain how objects are mapped with relational systems (tables).
(ii) Briefly describe the four major activities in the design process of view
layer classes.
15. (a) (i) Discuss inheritance testing with an example.
(ii) What is a test plan? Describe the content and characteristics of a test plan.
Or
(b) Write short notes on the following :
(i) Guideline for developing a user satisfaction test
(ii) White box testing
(iii) Black box testing
(iv) Debugging.
CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGNMAY / JUNE 2006
PART A
1. What is object oriented system development methodology?
2. Distinguish between method and message in object.
3. What is an object model? What are the order OMT model?
4. What is UML called as modeling language?
5. What are the three relationship that can be shown in UML diagram? Define them.
6. List the guidelines for identifying tentative classes using non phrase approach.
7. What are few characteristics of bad design?
8. What is OODBMS?
9. What is meant by quality assurance?
10. What is impact object orientation in testing?
PART B
11. (i) Briefly describe the Booch system development process.
(ii) Define pattern and frame works. How do they differ from one another?
12. (a) (i) What is prototyping? How is it useful? State the advantages and
disadvantages of prototyping.
(ii) Describe the different phase OOSD life cycle.
Or
(b) (i) What is system development methodology? Discuss the advantages of
object oriented system development methods.
(ii) What is object relationship? Explain different types of relationship with.
suitable examples
13. (a) Explain with an example how the classes can be identified using non phrase
approach.
Or
(b) (i) What is CRC? How is it used to identify classes? Explain with an
example.
(ii) How is super-subclass identified? Explain with an example.
14. (a) (i) What is meant by axioms? Explain two object oriented design axioms.
(ii) What are public and private protocols? What is the significance of
separating these two protocols?
Or
(b) (i) Describe the necessary characteristics that a system must satisfy to be
considered an object oriented system.
(ii) Write notes on class mapping view layer.
15. (a) (i) State the guidelines for developing quality assurance test cases.
(ii) What are statement and branch testing coverage in object oriented
testing? Explain.
Or
(b) (i) What is meant by usability tests? How are they carried out?
(ii) What is user satisfaction test? State the objectives of it.
MAY / JUNE 2007 PART A
1. What is an object? Give an example
2. What is the main advantage of object oriented development?
3. What are the phases of OMT?
4. List the difference between patterns and Framework
5. Mention the elements used in the Use-case model.
6. When to use CRC cards?
7. How do you distinguish transient data from persistent data?
8. What is Design Axiom?
9. Describe UI design rules.
10. What is Quality assurance?
PART B
11. (a) (i) Discuss the advantages of Object Oriented Approach.(ii) Briefly explain the elements of object model
Or(b) (i) Briefly explain about Object oriented systems developments life cycle.
(ii) Describe state, behaviour, and identity with respect to an object with relevant example.
12. (a) (i) Compare and contrast the Object oriented methodology of Booch, Rumbaugh and Jacobson.
(ii) Write short notes on Unified approach.Or
(b) Draw the class diagram, use-case diagram, interaction diagram for Library management system.
13. (a) (i) Describe the basic activities of Object oriented analysis and explain how Use-Case modeling is useful in analysis.
(ii) Draw the Use-Case model for ATM Bank operationOr
(b) (i) Discuss the importance of proper classification. Briefly explain the different approaches used for identifying classes and objects.
(iii) Explain the relationship exit among objects.
14. (a) Write short notes on the following :(i) Object interoperability(ii) Access Layer
Or (b) (i) Briefly explain, how design axioms help to avoid design pitfalls.
(ii) Explain the principles and metrics of good Object oriented design.
15. (a) (i) Explain the macro and micro process of a view layer design.(ii) How do you develop a custom form for a user satisfaction test?
Or(b) (i) Describe the different testing strategies. (ii) Create a User satisfaction test for bank system application.
CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGN
UNIT – 1 (QUESTION BANK)
Part A1. What is dynamic binding? The process of determining at runtime which function to invoke is called as dynamic binding.
2. What are the two orthogonal views of software?a. Procedure oriented viewb. Object oriented view.
3. What is object oriented system development methodology? Object an oriented system is the way to develop software by building self-contained modules or objects that can be easily replaced, modified and reuse.
4. Distinguish between method and message in object
Difference Message Method
Example: You want to tell how to make soup
Message is the instruction
Method is the way to implement
Your Instruction is the message
The method soup was prepared is method
5. What is meant by software development methodology?
An Object oriented method is based on functions and procedures. It is the way to develop software by building self-contained modules or objects that can be easily replaced, modified and reuse
6. Distinguish between encapsulation and information hiding.
Information Hiding Encapsulation
Information hiding is concealing the internal data and procedures and providing an interface to each object such a way as to reveal as little as possible for inner workings.
Encapsulation means that the user cannot see inside of the object but can use the objects by calling the object methods.
7. What are the various processes involved in object oriented software development life cycle?
8. Define Object. The term Object means a combination of data and logic that represents some real world entity.
9. What is the difference between Object methods and attributes? Object attributes defines the properties of the object and Object methods defines the behavior of the object. 10. What do you mean by Inheritance? Inheritance is the property of object-oriented systems that allows object to be built from other objects. Inheritance allows explicitly taking advance of the commonality of objects when constructing new classes. It is a relationship between classes where one class is the parent class of another (derived) class.
11. Define polymorphism. Polymorphism means that the same operation may behave differently on different classes.
12. What do you mean by Association and Aggregation? Association is the relationship between objects and classes.
What are the uses of the system?
Problem Statement Analysis
Design Implementation Details
System Software Product
Transformation 1
Transformation 2
Transformation 3
Pilot Planes
Can fly Flown by
Aggregation is the relationship between a class and a part of that class.
13.Distinguish Static and Dynamic binding. Dynamic binding determines at run time which functions to invoke and Static binding does this determination earlier at compile time.
14.Define Object Persistence. Each object has lifetime. They are created explicitly created and can exist for a period of time inside the process, which created it. This characteristic is called object persistence.
15. Define correspondence and correctness Correspondence measures how well the delivered system matches the need of the operational environment as described in the original requirements statement. Correctness measures the consistency of the product requirements with respect to the design specification.
16. What are the macro development processes involved in SDLC? The macro processes involved in SDLC are
i. Object oriented Analysisii. Object oriented Designiii. Implementation.
17. How does verification differs from validation? Verification refers that “am I doing the product right” and validation refers that “am I building the right product”.
18. Why we go for prototyping? Prototype enable us to fully understand how easy or difficult to implement some of the features of the system. It can define the use cases and it makes use case modeling much easier.
Seat WheelEngine
CAR
18. List out the types of prototypes. i. Horizontal prototype
ii. Vertical prototypeiii. Analysis prototypeiv. Domain prototype
19. Distinguish Analysis prototype and Domain Prototype.
20. What is the need of reusability? Need of reusability:
a. Increased reliabilityb. Reduced time and costc. Improved consistencyd. Time and cost reduced.
21. What ism RAD? Random Application Development (RAD) is a set of tools and techniques that can be used to build an application faster. RAD is concerned primarily with reducing the “time to market” not exclusively the software development time.
Analysis DomainAnalysis prototype is an aid for exploring the problem domain.
Domain prototype is an aid for the incremental development of the ultimate software solution
Its used when developing the product first time
Its used to add features to the developed project.
PART B
1. Briefly explain the principles of Object systems? The main principles of object model are Major elements:
1. Abstraction 2. Encapsulation3. Modularity4. Hierarchy
Minor elements:5. Typing6. Concurrency7. Persistence
2. Discuss about the basic concepts of object orientation.Basic concepts1. Object 2. Class3. Attributes4. Method5. Inheritance6. Interface7. Relation ship
3. Explain in detail about various relationships in object model with an example. Types of relation ships
1. Association2. Dependency3. Generalization4. Realization
4. Briefly discuss about the followinga. The software development processb. Building a high quality software
5. Briefly explain object oriented system development life cycle.Key:
i. Object oriented analysisii. Object oriented design
iii. Object oriented implementation1. Component based development (CBD)2. Rapid application development (RAD)
6. (a) (i) Discuss the similarities and differences between structured approach and
object oriented approach.
(ii) What is dynamic inheritance? What is multiple inheritance? Discuss
the
merits and demerits of multiple inheritance.
7. (i) What is meant prototype? Why is it necessary to create prototype? Discuss about
the different categories of prototype.
(ii) Describe the process that are involved in unified approach for software development.
8. Explain the followinga. How is software development viewed? What are the various phases of
OOSD life cycle?b. What is waterfall approach? List out its limitations.
9. Write briefly on the following (i) Discuss the similarities and differences between structured approach and
object oriented approach.(ii) What is dynamic inheritance? What is multiple inheritance? Discuss the merits
and demerits of multiple inheritance.
10. Discuss in detail on the following.i. What is meant prototype? Why is it necessary to create prototype? Discuss
about the different categories of prototype.ii. Describe the process that are involved in unified approach for software development.
CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGN
UNIT – 2 (QUESTION BANK)
PART - A
1. What is method?The behavior of an object is called method.
2. What is OMT?Object Modeling Technique is a fast, intuitive approach for identifying and
modeling all the objects making of a system.
3. What are the phases of OMT?OMT consists of four phases namely
• Analysis• System Design• Object Design• Implementation
4. What are the different models of OMT?They are three different models of OMT namely
• An Object Model• A Dynamic Model• A Functional Model
5. What is an Object Model?The object model describes the structure of the object in a system. The object
model is represented graphically with an object diagram. The object diagram contains classes interconnected by association lines.
6. Define OMT DFD?The OMT Data Flow Diagram shows the flow of data between different processes
in a business. An OMT DFD provides a simple intuitive method for describing business processes without focusing on the details of computer systems.
7. Give the four primary symbols used by DFD?• Process• Data Flow• Data Store• External Entity
8. What is the strength of OMT?OMT methodology provides one of the strongest tool sets for the analysis and
design of Object Oriented Systems.
9. Name the Six Booch Diagrams.• Class Diagram• Object Diagram• State Transition Diagram• Module Diagram• Process Diagram• Interaction Diagram
10. Define Macro development Process.The macro process serves as a controlling framework for the micro process. The
primary concern of micro process is technical management of the system.
11. What are the steps involved in macro development process?They are five steps involved namely,
1. Conceptualization2. Analysis and development of the model3. Design or Create the system architecture4. Evolution or Implementation5. Maintenance
12. Define Micro development Process.Each macro development process has its own micro development processes. The
micro process is a description of the day to day activities by a single or small group of software developers. The analysis and design phases are not clearly defined.
13. What are steps involved in Micro development Process?The micro development process consists of following steps
1. Identify Classes and Objects2. Identify Class and Object semantics3. Identify Class and Object relationship4. Identify Class and Object interfaces and implementation
14. Define Use Case. Use Cases are scenarios for understanding system requirements .A Use Case is an
interaction between users and a system. The use case model captures the goal of the user and the responsibility of the system to its users.
15.What is an Abstract Use Case? An Abstract Use Case is not complete and has no actors that initiate it but is used by
another use case. Abstract Use cases also are the ones that have uses or extends relationship.
16.What is Objectory ? It is a method of object-oriented development with a specific aim to fit the
development of large, real-time systems. The development process is called Use-Case driven development.
17.Name the models in Objectory?
• Use Case Model• Domain Object Model • Analysis Object Model• Implementation Model• Test Model
18.Name the phases in OOBE.• Analysis Phase.• Design and Implementation• Testing Phase
19.Define Pattern. A Pattern is[an] instructive information that captures the essential structure and insight of a successful family of proven solution to a recurring problem that arises within a certain context and system of forces.
20.What is Proto-Pattern? A “Pattern in waiting”, which is not yet known to recur, sometimes is called a Proto-Pattern.
21.What a Good Pattern does?• It solves a problem• It is a proven concept • The solution is not obvious• It describes a relationship• The pattern has a significant human component
22.Differentiate between Generative and Non-Generative Patterns? Generative Patterns describes only a recurring problem, they tell how to generate something and can be observed in the resulting system architectures they helped shape Non-Generative patterns are static and passive: they describe recurring phenomena without necessarily saying how to reproduce them.
23.What is a Framework? A Framework is a reusable design expressed as a set of abstract classes and the way their instances collaborate.
24.Define Unified Approach. A methodology for software development that tries to combine the best practices , processes , and guidelines along with the object management group’s unified modeling language for a better understanding.
25.What are the process in UA?• Use Case Driven development• Object Oriented Analysis
• Object Oriented Design• Incremental Development and Prototyping• Continuous Testing
26.Define OOA. OOA(Object Oriented Analysis)concerns determining the system requirements and identifying classes and their relationship to other objects in a given application.
27.What are the steps in OOA processes?• Identifying the Actors• Develop a simple business process model using UML Activity
Diagram• Develop the Use Case• Develop interaction diagrams• Identify classes
28. What are the steps in OOD processes?• Designing classes, their attributes, methods, associations,
structures and protocols, apply design axioms• Design the Access layer• Design prototype user interface• User satisfaction and Usability Tests based on the Usage/Use
Cases• Iterate and refine the Design
29. What is the strength of the Jacobson et al.methodology? His methodologies cover the entire lifecycle and stress traceability between the different phases , both forward and backward .This trace ability enables reuse of analysis and design work.
30. Name the Layers in Three layered approach.• Business Layer• User interface(View) Layer• Access Layer
PART-B
PART-B
1. Explain the Booch methodology.Key:
• Macro Development Process• Micro Development process
2. Explain the macro and micro development process in detail.Key: Macro
• Conceptualization• Analysis and development of the model• Design or create the system architecture• Evolution or implementation• Maintenance
Key: Micro• Identify Classes and objects• Identify class and object semantics• Identify class and object relationships• Identify class and object interfaces and implementation.
3. Explain the various diagrams used in Booch methodologyKey:
• Class Diagrams• Object Diagrams• State Transition Diagrams• Module Diagrams• Process Diagrams• Interaction Diagrams
4. Explain OOSE and OOBE.Key:OOSE
• Use case model• Domain Object model• Analysis object model• Implementation model• Test model
Key:OOSE• Analysis Phase• Design and implementation phases• Testing Phase
5. Explain
i)Patterns ant its types.Key:
• It solves a problem• It is a proven concept• The solution is not obvious• Describes relationshipTypes:
• Generative and• Non Generative
ii) FrameworksKey:
• Way of presenting a generic solution to a problem that can be applied to all levels of component
• Design patterns are more abstract than frameworks• Design patterns are smaller architectural elements than frameworks• Design patterns are less specialized than frameworks
6. Explain the UML Diagrams in detail.Key:
• Class Diagram• Use case diagram• Behavior Diagram• Implementation Diagram
7. Draw the use case diagram and activity diagram for a ATM system.Key: Actor :
• Member • Librarian
Use Case:• Login• Searching Books• Checking Books• Registering Books• Reading Books
8. Draw the use case diagram and activity diagram for a Reservation systemKey: Actor:
• Passenger• Ticket reserver
Use caes:• Checking availability• Reserving Ticket• Cancellation
9. Draw the use case diagram and activity diagram for a library book lending systemKey: Actor :
• Customer• Cash dispenser
Use Case:• Login• Change Pin• Check Balance• Withdraw money
CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGN
UNIT – 3 (QUESTION BANK)
PART - A
1. Define Analysis.Analysis is the process of transforming a problem definition from a fuzzy set of
facts and myths into a coherent statement of systems’ requirements.
2. What is the purpose of Analysis? The main objective of analysis is to capture complete, unambiguous, and
consistent requirements of the system and what the system must do to satisfy the users’ requirements and needs.
3. List out the tools involved in Analysis.The analyst has four major tools for extracting information about a system:
1. Examination of existing system documentation.2. Interviews3. Questionnaire4. Observation
4. Why analysis is a difficult task?Analysis is a creative activity that involves understanding the problem, its
associated constraints, and methods of overcoming those constraints. Norman explains the three most common sources of requirement difficulties:
1. Fuzzy descriptions.2. Incomplete requirements.3. Unnecessary features.
5. Describe the basic activities in Object Oriented Analysis?The OOA process consists of the following steps.
1. Identify the actors.2. Develop a simple business process model using UML activity diagram.3. Develop a use case.4. Prepare interaction diagrams.5. Classification – develop a static UML class diagram.6. Iterate and refine: If needed, repeat the preceding steps.
6. What is a Use Case Model? How it is useful in analysis?Use Case Model describes the uses of the system and shows the courses of events
that can be performed. The use case model expresses what the business or application will do and not how.In the analysis phase, it is used to discover classes, responsibilities, and its relationships.
7. Define Use Case.A use case is a sequence of transactions in a system whose task is to yield results
of measurable value to an individual actor of the system.
8. What are the two types of use cases? Explain about it.Two types of use cases are
1. Abstract.2. Concrete.
An abstract is not a complete and has no initiation actors but is used by a concrete use case, which does interact with actors. Abstract use cases also are the use cases that have uses or extend associations.
9. Who are Actors? How would you identify actors?An actor is a user playing a role with respect to the system. When dealing with actors,
it is important to think about roles rather than just people and their job titles.Candidates for actors can be found through the answers to the following questions:
1. Who is using the system? Or, who is affected by the system? Or, which groups need help from the system to perform a task?
2. Who affects the system?3. Which external hardware or other systems use the system to perform tasks?4. What problems does this application solve?5. How do users use the system? What are they doing with the system?
10. What is the difference between Users and Actors?The actors are external factors that interact with the system; Use cases are
scenarios that describe how actors use the system.
11. Why are Uses and Extends Associations useful in use case modeling?The uses association occurs while describing use cases that have some sub flows
in common. The extends association is used when one use case is similar to another use case but does a bit more.
12. Why documentation is is an important part of an Analysis? What is 80 – 20 rule?A document can serve as an initial understanding of the requirements or it can
serve as a communication vehicle among the project’s team members. The main issue in documentation during the analysis base is to determine what the system must do.The 80 percent of the work can be done with 20 percent of the documentation.
13. What are the various approaches for identifying the classes?Various approaches are:
1. Noun Phrase approach.2. Common Class Patterns approach.3. Use case Driven approach.4. Classes, Responsibilities, and Collaborators (CRC) approach.
14. Describe the Noun Phrase strategy for identifying tentative classes in a problem domain.The following are guidelines for selecting classes in an application domain
1. Look for nouns and noun phrases in the use cases.2. Some classes are implicit are taken from general knowledge.3. All classes must make sense in the application domain.4. Carefully choose and define class names.
15. Describe relevant, fuzzy, and irrelevant classes.In noun phrase approach, we have read through the requirements or use cases to
identify noun phrases. Nouns in the textual description are considered to be classes and verbs to be methods of the classes.
All plurals are changed to singular, the nouns are listed, and the list divided into three categories:
Relevant classes, fuzzy classes (the “fuzzy area”, classes we are not sure about), and irrelevant classes (which either have no purpose or will be unnecessary).
16. How do you select candidate classes for the list of relevant and fuzzy classes?Candidate classes are selected from relevant and fuzzy classes by eliminating
redundant, adjectives, attributes, and irrelevant classes
17. What criteria would you use to eliminate a class?
The process of eliminating the redundant classes and refining the remaining classes is not sequential. This is an incremental process.
18. Why is developing a sequence / collaboration diagram a useful activity in identifying classes?
Sequence and Collaboration diagrams represent the order in which things occur, and how the objects in the system send messages to one another. By following the order, we can determine what objects are necessary for those steps to take place. Therefore, the process of creating sequence or collaboration diagram can assist us in identifying classes or objects of the system.
19. What is generalization?Generalization is also known as super – sub relationship. The super – sub class
hierarchy is a relationship between classes, where one class is the parent of another class.
20. What are the two major properties of a – part – of relationship?Two properties of a – part – of relationship are
1. Transitivity – the property where, if A is part of B and B is part of C, then A is part of C.
2. Anti symmetry – the property of a – part – of relation where, if A is part of B, then B is not part of A.
Review Redundant classes
Review irrelevant classesReview adjectives
Review attributes
PART-B
1. Describe the noun phrase approach .why is classes, responsibilities and collaborations useful? Identify the 3 steps in CRC process.
KEY: NOUN PHRASE APPROACH
1. Identifying tentative classes
2. Selecting classes from the relevant and fuzzy categories
• Redundant classes
• Adjective classes
• Attribute classes
• Irrelevant classes
CRC-CLASSES, RESPONSIBILITIES, AND COLLABORATORS
1. Introduction2. Process
• Identifying classes, responsibilities• Assign responsibilities• Identifying collaborators
2. What are the guidelines for defining attributes? How would you identify a super- sub class structure?
KEY: GUIDELINES FOR DEFINIG ATTRIBUTES
SUPER-SUB CLASS RELATIONSHIPS
1. Introduction2. Guidelines for identifying super-sub relationship, a generalization
• Top-Down • Bottom-Up• Reusability• Multiple Inheritance
3. Use the noun phrase approaches to identity the objects from the following grocery store problem.
A store wants to automate its inventory. It has point of sale terminals that can record all of the items and quantities that a customer purchases. Another terminal is also available for the customer service desk to handle returns. It has a similar terminal in the
loading dock to handle arriving shipments from suppliers. The meat department and produce departments have terminals to enter losses/discounts due to spoilage.
4. Discuss the guidelines for finding use cases.
KEY:
1. Identifying classes and the behavior through sequence/collaboration modeling2. Implementation of scenarios3. Object Behavior analysis
5. Give an example of UML collaboration diagram.
6. How does a complex system is modeled?
KEY:
1. Use Cases under the Microscope2. Uses and Extends Associations3. Identifying the Actors4. Guidelines for Finding Use Cases.5. How detailed must a use case be? When to stop Decomposing and When to
continue.6. Dividing use cases into Packages7. Naming a Use Case.
7. What are the guidelines for developing effective documentation?
KEY: GUIDELINES FOR DEVELOPING EFFECTIVE DOCUMENTATION
1. Common cover2. 80-20 rule3. Familiar vocabulary4. Make the document as short as possible5. Organize the document
8. Describe the activity diagram for a banking system.
9. What is the difference between users and actors? How would you identify them?
KEY:1. Identifying the Actors2. Guidelines for Finding Use Cases.
3. How detailed must a use case be? When to stop Decomposing and When to continue.
10. Discuss the relationships and aggregation.
KEY: A-PART-OF RELATIONSHIPS – AGGREGATION
1. Introduction
• Transitivity• Anti symmetry
2. A-part-of relationship patterns• Assembly • Container• Collection-Member
CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGN
UNIT – 4 (QUESTION BANK)
PART - A
1. Define corollary.Corollary is defined as a proposition that follows from an axiom or another
proposition that has been proven.
2. Define theorem.A proposition that may not be self evident but can be proven from accepted
axioms. It is equivalent to a law or principle.
3. What do you mean by axiom 1 and axiom 2.Axiom 1: The independence axiom. Maintain the independence of
components.Axiom 2: The information axiom. Minimize the information content of the
design.
4. Differentiate cohesion and coupling.. .
S.No Coupling Cohesion
1 Coupling deals with interaction between objects or software components
Interaction within a single object or software component is called cohesion
2 It reflects relations between the objects.
It reflects the single purpose ness of an object.
5. Define design pattern.
Design patterns are devices that allow system to share knowledge about their design by describing the commonly requiring structure of communicating components that solves a general design problem within a particular context.
6. List the object oriented design corollaries.Corollary 1: Uncoupled design with less information content.Corollary 2: Single purpose.Corollary 3: Large number of simple classes.Corollary 4: Strong mapping.Corollary 5: Standardization.Corollary 6: Design with inheritance.
7. Define public protocol and private protocol.A class that have a set of method that it uses only internally, messages to itself
is called private protocol.A class which is accessible to all other classes is called a public protocol.
8. When does encapsulation leakage occurs?The problem of encapsulation leakage occurs when details about a class’s
internal implementation are disclosed through the interface.
9. List out the basic types of attributes.• Single value attributes.• Multiplicity for multiple attributes.• Reference to another objects or instance connection.
10. What are the methods provided by a class?a. Constructor.b. Destructor.c. Conversion method.d. Copy method.e. Attribute set.f. Attribute get.g. I/O methods.h. Domain specific.
11. How do design axiom help to avoid design pitfalls?a. Break up the classes into two or more classes.b. Move some functions into new classes that the object would use.c. Rethink the class definition based on experience gained.
12. Define persistence.Persistence refers to the ability of some objects to outlive the programs that
created them. i.e. it defines the life time of the object.
13. What are the categories describe the life time of data?a. Transient result to the evaluation of expressions.b. Variables involved in procedure activation.c. Global variables and variables that are dynamically allocated.d. Data that exist between the executions of the program.e. Data that exist between the versions of the program.f. Data that outlive a program.
14. What are the major tasks of the access layer?a. Translate the request: The access layer must be able to translate any data
from the business layer into the appropriate protocol for data access.b. Translate the results: The access layer must be able to translate the data
retrieved back into the appropriate business objects and pass those objects back into the business layer.
15. What is transaction?A unit of change in which many individual modifications are aggregated into a
single modification that occurs in its entirety or not at all.
16. Distinguish reverse engineering and forward engineering.Creating an object model from an existing relational data base layout is
referred as reverse engineering.Creating a relational scheme of from an existing model is referred as forward
engineering.
17. What is DBMS?A set of programs that enables the creation and maintenance of a collection of
related data.
18. What is DDL?The language used to describe the structure of the relationships between
objects stored in the database is called Data Definition Language.
19. What is DML?The language that allows users to access and manipulate such as create, save,
or destroy in a data organization is called Data Manipulation Language.
20. Define primary key and foreign key.A primary key is a combination of one or more attributes whose value
unambiguously locates each row in a table.A foreign key is a primary key of one table that is embedded into another table
to link the tables.
PART – B
1. What is coupling? Tabulate types of coupling among objects or components.It is the measure of the strength of association established by a connection from
one object or software component to another. It is a binary relationship.Types:
Content coupling. Common coupling. Control coupling. Stamp coupling. Data coupling.
2. What is meant by axioms? Explain two object oriented design axioms.
An axiom is a fundamental truth that always is observed to be valid and for
which there is no counterexample or exception.
A theorem is a proposition that may not be self – evident but can be proven
from accepted axioms.
A corollary is a proposition that follows from an axiom or another
proposition that has been proven
Axiom 1. The independence axiom. Maintain the independence of
components
Axiom 2. The information Axiom. Minimize the information content of the
design.
3. State 6 corollaries of O.O. Design. Explain any four of them in detail with suitable
examples.
Corollary 1: Uncoupled design with less information content.
Corollary 2: Single purpose.
Corollary 3: Large of simpler classes, reusability.
Corollary 4: Strong mapping.
Corollary 5: Standardization
Corollary 6: Designing with inheritance.
4. Explain how objects are mapped with relational systems (tables).
Object – Relation Mapping
Types:
Table – class Mapping
Table – multiple classes mapping
Table –inherited classes mapping.
Tables – inherited classes mapping.
5. What are OODBMS standards? Explain them briefly. When to use object database?
The Object Oriented Database Management system is a combination of object
oriented programming and database technology.
Rules:
(Object oriented System)
1. The system must support complex objects.
2. Object identity must be supported.
3. Object must be encapsulated.
4. The system must support types or classes.
5. The system must support inheritance.
6. The system must avoid premature binding.
7. The system must computationally complete.
8. The system must be extensible.
(Database system)
9. It must be persistent and able to remember an object state.
10. It must be able to manage very large databases.
11. It must accept concurrent users.
12. It must be able to recover from hardware and software failures.
13. Data query must be simple.
CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGN
UNIT – 5 (QUESTION BANK)
PART - A
1.Why is user interface one of the most important components of any software? User Interface is used to display and obtain needed information in an accessible, efficient manner. A well-designed UI has visual appeal that motivates users to use your application. In addition, it should use the limited screen space efficient.
2.What are the two major aspects that view layer objects responsible?• Input - responding to user interaction.• Output – displaying or printing business objects.
3.Name the four major activities of designing view layer classes?• The macro level UI design process• Micro level UI design activities• Testing usability and user satisfaction• Refining and iterating the design.
4.Define Object-Oriented User Interface.(OOUI) A user interface in which user see and manipulate object representations of their information and need not be aware of the computer programs and underlying technology.
5.What are the two steps involved in view layer macro process?1. For every class identified ,determine if the class interacts with human actor.
1.1 Identify the view (interface) objects for the class. 1.2 Define the relationships among the view (interface) objects.
2. Iterate and refine.
6. List the testing strategies.• Block Box Testing• White Box Testing• Top-down Testing• Bottom-up Testing
7. What kinds of error is encountered when a program is run?• Language or syntax errors • run time errors• Logic errors
8. Give a brief description : a) error based testing b) Scenario based testing
Error based testing techniques search a given class’s method for particular cluses of interest, then describes how these clues should be tested.
Scenario based testing also called usage based testing concentrates on what the user does, not what the product does.
9. Describe the objective 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 errors.
• A successful test case is the one that detects an as – yet undiscovered errors.
10. What are the steps are needed to create a test plan?
• Objective of the test.• Development of test case• Test analysis
11. Define regression testing.
All passed testes should be repeated with the revised program called regression testing, which can discovers errors introduced during debugging process.
12. Define a) Beta Testingb) Alpha Testing
A Beta testing, popular inexpensive, and efficient way to test software on a select group of actual users of the system.
A alpha testing is done by in house testers, such as software engineers, programmers and internal users.
13. Define user-centered interface.
It is the one that replicates the users view of doing things by providing the outcome users expect from any action.
14. What are the modes used in user interface?
• Modal dialogue• Spring-loaded modes• Tool-driven modes
15. What are the steps used in UI design rule?
• Making the interface simple• Making the interface transparent & natural• Allowing users to be in control of the software• Avoid modes• Make the interface consistent
16. What is verification and validation?The term verification refers the quality assurance i.e. the task of determining
correctness “Am I building the product right”.The term validation refers the user satisfaction i.e. the task of determining
correspondence “Am I building the right product”.
17. Define Usability testing.ISO Defines the usability as the effectiveness, efficiency and satisfaction with
which a specified set of users to can achieve a specified set of tasksISO Definition requires
Defining tasks – What are the tasks Defining users – who are the users A means for measuring effectiveness, efficiency and satisfaction – how do
we measure usability
18. What are the guidelines for developing usability testingGuidelines are:
i. The usability testing should involve all software componentsii. Usability need not be more expensive or elaborate
iii. All tests need not involve many subjectsiv. Consider user’s experience as a part of your software usabilityv. Apply usability testing early and often
19. What do you mean by user satisfaction test?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.
20. What are the objectives of user satisfaction test?The objectives are:
• To act as a communication vehicle between users and designers.• To detect and evaluate changes during the design process.• To provide a periodic indication of divergence of opinion about the current
design.• To enable pinpointing specific areas of dissatisfaction for remedy.• To provide a clear understanding of just how the completed design is to be
evaluated
PART-B
1. Discuss about designing view layer classesKey:
a. Major aspects of view layerb. 4 major activitiesc. Macro level processd. Micro level process
2. Briefly explain about User Interface design rulesKey:
a. Rule 1: Make the interface simpleb. Rule 2: Making the interface transparentc. Rule 3: Allow users to be in control
i. Make the interface forgivingii. Make the interface visual
iii. Provide immediate feedbackiv. Avoid modesv. Make the interface consistent
3. Explain Quality assurance tests in detail
Key:I. Define- debugging
II. Types of errorsa. Language errorb. Runtime errorc. Logic error
III. Error based testingIV. Scenario based testing
4. Briefly explain testing strategies and impact of object orientation of testingKey:a. Testing strategies
i. Black box testingii. White box testing
iii. Top down testingiv. Bottom up testing
b. Impact of orientation testingi. Impact of inheritance in testing
ii. Reusability of tests
5. Write notes on the followinga. Test casesb. Test planc. Mayor’s debugging principlesKey:
i. Test cases1. Myers objectives of testing2. Guidelines for developing quality assurance tests
ii. Test plan1. Needed steps to create a test plan2. Regression testing3. Beta testing4. Alpha testing5. Guidelines for developing test plans
iii. Mayor’s debugging principles1. Bug locating principles2. Debugging principles
6. Explain the followinga. Usability testingb. User satisfaction testingKey:
i. Usability testing1. Define usability testing2. Guidelines for developing usability testing3. Recording the usability testing
ii. User satisfaction testing1. Definition2. Guidelines for developing a user satisfaction testing.
7. Develop usability test plans and test cases for via net bank ATM system.
top related