ooad-qb

38
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.

Upload: pshanthi23

Post on 02-Dec-2014

141 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: OOAD-QB

CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGNNOVEMBER / 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 developmentlife 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 approachthan structure approach? If you are a student of Engineering then state theattributes and methods required for getting admission in reputedinstitutions.Or(b) How is software development viewed? What are the various phases of OOSDlife 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 identifythem?(ii) Discuss the relationships and aggregation.

Page 2: OOAD-QB

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 forit.Or(b) What are OODBMS standards? Explain them briefly. When to use objectdatabase? List down atleast four of their advantages and disadvantages overRDBMS.OBJECT ORIENTED SYSTEM ANALYSIS AND DESIGNAPRIL / MAY 2005PART A1. Mention the OOSD life cycle2. 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 B11. Why is object orientation started finding place in system development? What are itsmajor advantages and methodologies? How to design objects, relationships andassociations? How is object persistence helpful and how to store only the persistentattributes?12. (a) (i) Outline OMT functional model. Also give OMT data floe diagram primarysymbols.(ii) What is the strength of Jacobson methodology emphasizing the two keyconcepts in it?Or(b) Why do we need to model a problem? What is UML and describe itsimportance? How is the dynamic behaviors expressed using various diagramsas per Booch?13. (a) Describe the non phrase approach for identify tentative classes in a problemdomain. Why are classes, responsibilities and collaborations useful? Identify the3 steps in CRC process.Or(b) what are the guidelines for defining attributes? How would you identify a super-

Page 3: OOAD-QB

sub class structure?14. (a) What is coupling? While designing software programs, what precautions will onebore in mind. Tabulate types of coupling among objects or components.Or(b) what are some characteristics of a bad design? In a networking environment whatprecautions one has to consider to design associations. If server-clientarchitecture is adapted.15. (a) Describe the different testing strategies. How to develop test plans guided byThomas.Or(b) Sketch the guidelines for developing quality assurance test cases described byFreedman and Thomas adapted for the UA. What are the steps involved to makethe testing successful?CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGNNOVEMBER / DECEMBER 2005PART A1. 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 programminglanguage.9. What is regression testing?10. What is user satisfaction testing? Give any two objectives of user satisfaction test.PART B11. Book section of an engineering college is to be computerized. The importantfunctions 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

Page 4: OOAD-QB

(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 andobject oriented approach.(ii) What is dynamic inheritance? What is multiple inheritance? Discussthemerits and demerits of multiple inheritance.Or(b) (i) What is meant prototype? Why is it necessary to create prototype? Discussabout the different categories of prototype.(ii) Describe the process that are involved in unified approach for softwaredevelopment.13. (a) (i) Use the noun phrase approach to identify the objects from the followinggrocery store problem.A store wants to automate its inventory. It has point-of-sale terminals thatcan record all of the items and quantities that a customer purchases.Another terminal is also available for the customer service desk to handlereturns. It has a similar terminal in the loading dock to handle arrivingshipments from suppliers. The meat department and produce departmentshave 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 anapplication.(ii) What is aggregation relationship? Describe the two properties ofaggregation relationship. What guidelines would you use to identifyaggregate relationship?14. (a) State 6 corollaries of O.O.Design. Explain any four of them in detail withsuitable 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 viewlayer 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.

Page 5: OOAD-QB

CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGNMAY / JUNE 2006PART A1. 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 B11. (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 anddisadvantages of prototyping.(ii) Describe the different phase OOSD life cycle.Or(b) (i) What is system development methodology? Discuss the advantages ofobject oriented system development methods.(ii) What is object relationship? Explain different types of relationship with.suitable examples13. (a) Explain with an example how the classes can be identified using non phraseapproach.Or(b) (i) What is CRC? How is it used to identify classes? Explain with anexample.(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 ofseparating these two protocols?Or(b) (i) Describe the necessary characteristics that a system must satisfy to beconsidered 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 orientedtesting? Explain.Or

Page 6: OOAD-QB

(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 2007PART A1. What is an object? Give an example2. What is the main advantage of object oriented development?3. What are the phases of OMT?4. List the difference between patterns and Framework5. 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 B11. (a) (i) Discuss the advantages of Object Oriented Approach.(ii) Briefly explain the elements of object modelOr(b) (i) Briefly explain about Object oriented systems developments life cycle.(ii) Describe state, behaviour, and identity with respect to an object withrelevant 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 Librarymanagement system.13. (a) (i) Describe the basic activities of Object oriented analysis and explain howUse-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 thedifferent 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 LayerOr(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

Page 7: OOAD-QB

(b) (i) Describe the different testing strategies.(ii) Create a User satisfaction test for bank system application.CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGNUNIT – 1 (QUESTION BANK)Part A1. What is dynamic binding?The process of determining at runtime which function to invoke is called asdynamic 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 selfcontainedmodules or objects that can be easily replaced, modified and reuse.4. Distinguish between method and message in objectDifference Message MethodExample: You want totell how to make soupMessage is theinstructionMethod is the way toimplementYour Instruction is themessageThe method soup wasprepared is method5. What is meant by software development methodology?An Object oriented method is based on functions and procedures. It is the wayto develop software by building self-contained modules or objects that can be easilyreplaced, modified and reuse6. Distinguish between encapsulation and information hiding.Information Hiding EncapsulationInformation hiding is concealingthe internal data and procedures Encapsulation means that the user

cannot see inside of the object butcan use the objects by calling theobject methods.

and providing an interface toeach object such a way as toreveal as little as possible for

Page 8: OOAD-QB

inner workings.7. What are the various processes involved in object oriented software developmentlife cycle?8. Define Object.The term Object means a combination of data and logic that represents somereal world entity.9. What is the difference between Object methods and attributes?Object attributes defines the properties of the object and Object methodsdefines the behavior of the object.10. What do you mean by Inheritance?Inheritance is the property of object-oriented systems that allows object tobe built from other objects. Inheritance allows explicitly taking advance of thecommonality of objects when constructing new classes. It is a relationship betweenclasses where one class is the parent class of another (derived) class.11. Define polymorphism.Polymorphism means that the same operation may behave differently ondifferent classes.12. What do you mean by Association and Aggregation?Association is the relationship between objects and classes.What are the usesof the system?ProblemStatementAnalysisDesignImplementationDetailsSystemSoftwareProductTransformation 1Transformation 2Transformation 3Pilot PlanesCan fly Flown byAggregation 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 andStatic binding does this determination earlier at compile time.14.Define Object Persistence.Each object has lifetime. They are created explicitly created and can

Page 9: OOAD-QB

exist for a period of time inside the process, which created it. This characteristic iscalled object persistence.15. Define correspondence and correctnessCorrespondence measures how well the delivered system matches the need ofthe operational environment as described in the original requirements statement.Correctness measures the consistency of the product requirements with respectto the design specification.16. What are the macro development processes involved in SDLC?The macro processes involved in SDLC arei. 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 refersthat “am I building the right product”.18. Why we go for prototyping?Prototype enable us to fully understand how easy or difficult to implementsome of the features of the system. It can define the use cases and it makes use casemodeling much easier.Seat Wheel EngineCAR18. List out the types of prototypes.i. Horizontal prototypeii. Vertical prototypeiii. Analysis prototypeiv. Domain prototype19. 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 techniquesthat can be used to build an application faster. RAD is concerned primarily with reducingthe “time to market” not exclusively the software development time.Analysis DomainAnalysis prototype is an aid forexploring the problem domain.

Page 10: OOAD-QB

Domain prototype is an aid for theincremental development of theultimate software solutionIts used when developing theproduct first timeIts used to add features to thedeveloped project.PART B1. Briefly explain the principles of Object systems?The main principles of object model areMajor elements:1. Abstraction2. Encapsulation3. Modularity4. HierarchyMinor elements:5. Typing6. Concurrency7. Persistence2. Discuss about the basic concepts of object orientation.Basic concepts1. Object2. Class3. Attributes4. Method5. Inheritance6. Interface7. Relation ship3. Explain in detail about various relationships in object model with an example.Types of relation ships1. Association2. Dependency3. Generalization4. Realization4. Briefly discuss about the followinga. The software development processb. Building a high quality software5. Briefly explain object oriented system development life cycle.Key:i. Object oriented analysisii. Object oriented designiii. Object oriented implementation1. Component based development (CBD)2. Rapid application development (RAD)

Page 11: OOAD-QB

6. (a) (i) Discuss the similarities and differences between structured approach andobject oriented approach.(ii) What is dynamic inheritance? What is multiple inheritance? Discussthemerits and demerits of multiple inheritance.7. (i) What is meant prototype? Why is it necessary to create prototype? Discuss aboutthe different categories of prototype.(ii) Describe the process that are involved in unified approach for softwaredevelopment.8. Explain the followinga. How is software development viewed? What are the various phases ofOOSD 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 andobject oriented approach.(ii) What is dynamic inheritance? What is multiple inheritance? Discuss the meritsand demerits of multiple inheritance.10. Discuss in detail on the following.i. What is meant prototype? Why is it necessary to create prototype? Discussabout the different categories of prototype.ii. Describe the process that are involved in unified approach for softwaredevelopment.CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGNUNIT – 2 (QUESTION BANK)PART - A1. 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 andmodeling all the objects making of a system.3. What are the phases of OMT?OMT consists of four phases namelyAnalysisSystem DesignObject DesignImplementation4. What are the different models of OMT?They are three different models of OMT namelyAn Object ModelA Dynamic ModelA Functional Model5. What is an Object Model?

Page 12: OOAD-QB

The object model describes the structure of the object in a system. The objectmodel is represented graphically with an object diagram. The object diagram containsclasses interconnected by association lines.6. Define OMT DFD?The OMT Data Flow Diagram shows the flow of data between different processesin a business. An OMT DFD provides a simple intuitive method for describing businessprocesses without focusing on the details of computer systems.7. Give the four primary symbols used by DFD?ProcessData FlowData StoreExternal Entity8. What is the strength of OMT?OMT methodology provides one of the strongest tool sets for the analysis anddesign of Object Oriented Systems.9. Name the Six Booch Diagrams.Class DiagramObject DiagramState Transition DiagramModule DiagramProcess DiagramInteraction Diagram10. Define Macro development Process.The macro process serves as a controlling framework for the micro process. Theprimary 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. Maintenance12. Define Micro development Process.Each macro development process has its own micro development processes. Themicro process is a description of the day to day activities by a single or small group ofsoftware 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

Page 13: OOAD-QB

1. Identify Classes and Objects2. Identify Class and Object semantics3. Identify Class and Object relationship4. Identify Class and Object interfaces and implementation14. Define Use Case.Use Cases are scenarios for understanding system requirements .A Use Case is aninteraction between users and a system. The use case model captures the goal ofthe 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 byanother use case. Abstract Use cases also are the ones that have uses or extendsrelationship.16.What is Objectory ?It is a method of object-oriented development with a specific aim to fit thedevelopment of large, real-time systems. The development process is called Use-Case driven development.17.Name the models in Objectory?Use Case ModelDomain Object ModelAnalysis Object ModelImplementation ModelTest Model18.Name the phases in OOBE.Analysis Phase.Design and ImplementationTesting Phase19.Define Pattern.A Pattern is[an] instructive information that captures the essential structure andinsight of a successful family of proven solution to a recurring problem that arises withina 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 aProto-Pattern.21.What a Good Pattern does?It solves a problemIt is a proven conceptThe solution is not obviousIt describes a relationshipThe pattern has a significant human component

Page 14: OOAD-QB

22.Differentiate between Generative and Non-Generative Patterns?Generative Patterns describes only a recurring problem, they tell how togenerate something and can be observed in the resulting system architectures they helpedshape Non-Generative patterns are static and passive: they describe recurring phenomenawithout necessarily saying how to reproduce them.23.What is a Framework?A Framework is a reusable design expressed as a set of abstract classes andthe way their instances collaborate.24.Define Unified Approach.A methodology for software development that tries to combine the bestpractices , processes , and guidelines along with the object management group’s unifiedmodeling language for a better understanding.25.What are the process in UA?Use Case Driven developmentObject Oriented AnalysisObject Oriented DesignIncremental Development and PrototypingContinuous Testing26.Define OOA.OOA(Object Oriented Analysis)concerns determining the system requirementsand identifying classes and their relationship to other objects in a given application.27.What are the steps in OOA processes?Identifying the ActorsDevelop a simple business process model using UML ActivityDiagramDevelop the Use CaseDevelop interaction diagramsIdentify classes28. What are the steps in OOD processes?Designing classes, their attributes, methods, associations,structures and protocols, apply design axiomsDesign the Access layerDesign prototype user interfaceUser satisfaction and Usability Tests based on the Usage/UseCasesIterate and refine the Design29. What is the strength of the Jacobson et al.methodology?His methodologies cover the entire lifecycle and stress traceabilitybetween the different phases , both forward and backward .This trace ability enables reuseof analysis and design work.

Page 15: OOAD-QB

30. Name the Layers in Three layered approach.Business LayerUser interface(View) LayerAccess LayerPART-BPART-B1. Explain the Booch methodology.Key:Macro Development ProcessMicro Development process2. Explain the macro and micro development process in detail.Key: MacroConceptualizationAnalysis and development of the modelDesign or create the system architectureEvolution or implementationMaintenanceKey: MicroIdentify Classes and objectsIdentify class and object semanticsIdentify class and object relationshipsIdentify class and object interfaces and implementation.3. Explain the various diagrams used in Booch methodologyKey:Class DiagramsObject DiagramsState Transition DiagramsModule DiagramsProcess DiagramsInteraction Diagrams4. Explain OOSE and OOBE.Key:OOSEUse case modelDomain Object modelAnalysis object modelImplementation modelTest modelKey:OOSEAnalysis PhaseDesign and implementation phasesTesting Phase5. Explaini)Patterns ant its types.Key:It solves a problemIt is a proven concept

Page 16: OOAD-QB

The solution is not obviousDescribes relationshipTypes:Generative andNon Generativeii) FrameworksKey:Way of presenting a generic solution to a problem that can beapplied to all levels of componentDesign patterns are more abstract than frameworksDesign patterns are smaller architectural elements than frameworksDesign patterns are less specialized than frameworks6. Explain the UML Diagrams in detail.Key:Class DiagramUse case diagramBehavior DiagramImplementation Diagram7. Draw the use case diagram and activity diagram for a ATM system.Key: Actor :MemberLibrarianUse Case:LoginSearching BooksChecking BooksRegistering BooksReading Books8. Draw the use case diagram and activity diagram for a Reservation systemKey: Actor:PassengerTicket reserverUse caes:Checking availabilityReserving TicketCancellation9. Draw the use case diagram and activity diagram for a library book lending systemKey: Actor :CustomerCash dispenserUse Case:LoginChange PinCheck BalanceWithdraw money

Page 17: OOAD-QB

CS-1402 OBJECT ORIENTED ANALYSIS AND DESIGNUNIT – 3 (QUESTION BANK)PART - A1. Define Analysis.Analysis is the process of transforming a problem definition from a fuzzy set offacts 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, andconsistent 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. Observation4. Why analysis is a difficult task?Analysis is a creative activity that involves understanding the problem, itsassociated constraints, and methods of overcoming those constraints. Normanexplains 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 eventsthat can be performed. The use case model expresses what the business or application willdo 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 resultsof measurable value to an individual actor of the system.

Page 18: OOAD-QB

8. What are the two types of use cases? Explain about it.Two types of use cases are1. Abstract.2. Concrete.An abstract is not a complete and has no initiation actors but is used by aconcrete use case, which does interact with actors. Abstract use cases also are the usecases 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 groupsneed 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 arescenarios 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 flowsin common. The extends association is used when one use case is similar to another usecase 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 canserve as a communication vehicle among the project’s team members. The main issue indocumentation 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.

Page 19: OOAD-QB

4. Classes, Responsibilities, and Collaborators (CRC) approach.14. Describe the Noun Phrase strategy for identifying tentative classes in a problemdomain.The following are guidelines for selecting classes in an application domain1. 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 toidentify noun phrases. Nouns in the textual description are considered to be classes andverbs to be methods of the classes.All plurals are changed to singular, the nouns are listed, and the list divided intothree categories:Relevant classes, fuzzy classes (the “fuzzy area”, classes we are not sure about), andirrelevant 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 eliminatingredundant, adjectives, attributes, and irrelevant classes17. What criteria would you use to eliminate a class?The process of eliminating the redundant classes and refining the remainingclasses is not sequential. This is an incremental process.18. Why is developing a sequence / collaboration diagram a useful activity in identifyingclasses?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, theprocess of creating sequence or collaboration diagram can assist us in identifying classesor objects of the system.19. What is generalization?Generalization is also known as super – sub relationship. The super – sub classhierarchy is a relationship between classes, where one class is the parent of another class.

Page 20: OOAD-QB

20. What are the two major properties of a – part – of relationship?Two properties of a – part – of relationship are1. Transitivity – the property where, if A is part of B and B is part of C, then A ispart 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 classesReview irrelevant classes Review adjectivesReview attributesPART-B1. Describe the noun phrase approach .why is classes, responsibilities andcollaborations useful? Identify the 3 steps in CRC process.KEY: NOUN PHRASE APPROACH1. Identifying tentative classes2. Selecting classes from the relevant and fuzzy categoriesRedundant classesAdjective classesAttribute classesIrrelevant classesCRC-CLASSES, RESPONSIBILITIES, AND COLLABORATORS1. Introduction2. ProcessIdentifying classes, responsibilitiesAssign responsibilitiesIdentifying collaborators2. What are the guidelines for defining attributes? How would you identify a super-sub class structure?KEY: GUIDELINES FOR DEFINIG ATTRIBUTESSUPER-SUB CLASS RELATIONSHIPS1. Introduction2. Guidelines for identifying super-sub relationship, a generalizationTop-DownBottom-UpReusabilityMultiple Inheritance3. Use the noun phrase approaches to identity the objects from the following grocerystore problem.A store wants to automate its inventory. It has point of sale terminals that canrecord all of the items and quantities that a customer purchases. Another terminal is also

Page 21: OOAD-QB

available for the customer service desk to handle returns. It has a similar terminal in theloading dock to handle arriving shipments from suppliers. The meat department andproduce 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 analysis5. 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 tocontinue.6. Dividing use cases into Packages7. Naming a Use Case.7. What are the guidelines for developing effective documentation?KEY: GUIDELINES FOR DEVELOPING EFFECTIVE DOCUMENTATION1. Common cover2. 80-20 rule3. Familiar vocabulary4. Make the document as short as possible5. Organize the document8. 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 tocontinue.10. Discuss the relationships and aggregation.KEY: A-PART-OF RELATIONSHIPS – AGGREGATION1. IntroductionTransitivityAnti symmetry2. A-part-of relationship patterns

Page 22: OOAD-QB

AssemblyContainerCollection-MemberCS-1402 OBJECT ORIENTED ANALYSIS AND DESIGNUNIT – 4 (QUESTION BANK)

PART - A1. Define corollary.Corollary is defined as a proposition that follows from an axiom or anotherproposition that has been proven.2. Define theorem.A proposition that may not be self evident but can be proven from acceptedaxioms. 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 ofcomponents.Axiom 2: The information axiom. Minimize the information content of thedesign.4. Differentiate cohesion and coupling.. .S.No Coupling Cohesion1 Coupling deals withinteraction betweenobjects or softwarecomponentsInteraction within a single object orsoftware component is calledcohesion2 It reflects relationsbetween the objects.It reflects the single purpose ness ofan object.5. Define design pattern.Design patterns are devices that allow system to share knowledge about theirdesign by describing the commonly requiring structure of communicating componentsthat 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.

Page 23: OOAD-QB

A class that have a set of method that it uses only internally, messages to itselfis 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’sinternal 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 thatcreated 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 datafrom the business layer into the appropriate protocol for data access.b. Translate the results: The access layer must be able to translate the dataretrieved back into the appropriate business objects and pass those objectsback into the business layer.15. What is transaction?A unit of change in which many individual modifications are aggregated into asingle 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

Page 24: OOAD-QB

referred as reverse engineering.Creating a relational scheme of from an existing model is referred as forwardengineering.17. What is DBMS?A set of programs that enables the creation and maintenance of a collection ofrelated data.18. What is DDL?The language used to describe the structure of the relationships betweenobjects 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 valueunambiguously locates each row in a table.A foreign key is a primary key of one table that is embedded into another tableto link the tables.PART – B1. What is coupling? Tabulate types of coupling among objects or components.It is the measure of the strength of association established by a connection fromone object or software component to another. It is a binary relationship.Types:„ X Content coupling.„ X Common coupling.„ X Control coupling.„ X Stamp coupling.„ X 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 forwhich there is no counterexample or exception.A theorem is a proposition that may not be self – evident but can be provenfrom accepted axioms.A corollary is a proposition that follows from an axiom or anotherproposition that has been provenAxiom 1. The independence axiom. Maintain the independence ofcomponentsAxiom 2. The information Axiom. Minimize the information content of thedesign.3. State 6 corollaries of O.O. Design. Explain any four of them in detail with suitableexamples.

Page 25: OOAD-QB

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: StandardizationCorollary 6: Designing with inheritance.4. Explain how objects are mapped with relational systems (tables).Object – Relation MappingTypes:Table – class MappingTable – multiple classes mappingTable –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 objectoriented 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 DESIGNUNIT – 5 (QUESTION BANK)PART - A1.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 yourapplication. 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.

Page 26: OOAD-QB

Output – displaying or printing business objects.3.Name the four major activities of designing view layer classes?The macro level UI design processMicro level UI design activitiesTesting usability and user satisfactionRefining and iterating the design.4.Define Object-Oriented User Interface.(OOUI)A user interface in which user see and manipulate object representations oftheir information and need not be aware of the computer programs and underlyingtechnology.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 TestingWhite Box TestingTop-down TestingBottom-up Testing7. What kinds of error is encountered when a program is run?Language or syntax errorsrun time errorsLogic errors8. Give a brief description : a) error based testingb) Scenario based testingError based testing techniques search a given class’s method for particular clusesof interest, then describes how these clues should be tested.Scenario based testing also called usage based testing concentrates on what theuser does, not what the product does.9. Describe the objective of testing.Testing is the process of executing a program with the intent of findingerrors.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 undiscoverederrors.10. What are the steps are needed to create a test plan?Objective of the test.Development of test caseTest analysis11. Define regression testing.

Page 27: OOAD-QB

All passed testes should be repeated with the revised program calledregression testing, which can discovers errors introduced during debuggingprocess.12. Define a) Beta Testingb) Alpha TestingA Beta testing, popular inexpensive, and efficient way to test software on a select group ofactual 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 theoutcome users expect from any action.14. What are the modes used in user interface?Modal dialogueSpring-loaded modesTool-driven modes15. What are the steps used in UI design rule?Making the interface simpleMaking the interface transparent & naturalAllowing users to be in control of the softwareAvoid modesMake the interface consistent16. What is verification and validation?The term verification refers the quality assurance i.e. the task of determiningcorrectness “Am I building the product right”.The term validation refers the user satisfaction i.e. the task of determiningcorrespondence “Am I building the right product”.17. Define Usability testing.ISO Defines the usability as the effectiveness, efficiency and satisfaction withwhich 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 dowe measure usability18. 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 elaborateiii. All tests need not involve many subjectsiv. Consider user’s experience as a part of your software usabilityv. Apply usability testing early and often19. What do you mean by user satisfaction test?User satisfaction testing is the process of quantifying the usability test with

Page 28: OOAD-QB

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 currentdesign.To enable pinpointing specific areas of dissatisfaction for remedy.To provide a clear understanding of just how the completed design is to beevaluated

PART-B1. Discuss about designing view layer classesKey:a. Major aspects of view layerb. 4 major activitiesc. Macro level processd. Micro level process2. 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 controli. Make the interface forgivingii. Make the interface visualiii. Provide immediate feedbackiv. Avoid modesv. Make the interface consistent3. Explain Quality assurance tests in detailKey:I. Define- debuggingII. Types of errorsa. Language errorb. Runtime errorc. Logic errorIII. Error based testingIV. Scenario based testing4. Briefly explain testing strategies and impact of object orientation of testingKey:a. Testing strategiesi. Black box testingii. White box testingiii. Top down testingiv. Bottom up testing

Page 29: OOAD-QB

b. Impact of orientation testingi. Impact of inheritance in testingii. Reusability of tests5. 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 testsii. Test plan1. Needed steps to create a test plan2. Regression testing3. Beta testing4. Alpha testing5. Guidelines for developing test plansiii. Mayor’s debugging principles1. Bug locating principles2. Debugging principles6. Explain the followinga. Usability testingb. User satisfaction testingKey:i. Usability testing1. Define usability testing2. Guidelines for developing usability testing3. Recording the usability testingii. 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.