SEZ6C/SEE6C/PED2A OBJECT ORIENTED ANALYSIS AND DESIGN. Unit : I -V

Size: px
Start display at page:

Download "SEZ6C/SEE6C/PED2A OBJECT ORIENTED ANALYSIS AND DESIGN. Unit : I -V"

Transcription

1 SEZ6C/SEE6C/PED2A OBJECT ORIENTED ANALYSIS AND DESIGN Unit : I -V

2 UNIT-I System Development Object Basics Development Life Cycle Methodologies Patterns Frameworks Unified Approach UML. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 2 / 75

3 Why an Object Orientation Higher Level of abstraction Seamless transition among different phases of software development. Encouragement of good programming techniques. Promotion of % ooad What kind of language can alleviate difficulties with communication & complexity hopefully well? SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 3

4 WATERFALL APPROACH SEZ6C//SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 4

5 OBJECT BASICS An "object" is anything to which a concept applies, in our awareness Things drawn from the problem domain or solution space. E.g., a living person in the problem domain, a software component in the solution space. A structure that has identity and properties and behavior It is an instance of a collective concept, i.e., a class. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 5

6 What is Object-Orientation - Abstraction and Encapsulation Abstraction Focus on the essential Omits tremendous amount of details Focus on what an object is and does Encapsulation a.k.a. information hiding Objects encapsulate: property behavior as a collection of methods invoked by messages state as a collection of instance variables SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 6

7 What is Object-Orientation? - Class <<instanceof> > <<instanceof> > <<instanceof> > Class Car Attributes Model Location #Wheels = 4 Operations Start Accelerate What is CLASS? a collection of objects that share common properties, attributes, behavior and semantics. A collection of objects with the same data structure (attributes, state variables) and behavior (function/code/operations) in the solution space. Classification Grouping of common objects into a class. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 7

8 What is Object-Orientation - Subclass vs. Superclass A A A B B B C C A A A A B <<instanceof>> B <<instanceof>> B <<instanceof>> B <<instanceof>> c: C c: C SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 8

9 What is Object-Orientation - Polymorphism Objects of different classes respond to the same message differently. Person name SSN paytuition Student std-id level paytuition Employee emp-id In-State Student paytuition Out-of- State Student state paytuition SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 9

10 What is Object-Orientation? -State What is STATE? "State" is a collection of association an object has with other objects and object types. What is STATE CHANGE? A "state change" is the transition of an object from one state to another. What is EVENT? An "event" is a noteworthy change in state [Rumbaugh] SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 10

11 How to Do OOAD Where to Use OO? Software Lifecycle Systems Engineering Requirements Analysis Project Planning Architectural Design Detailed Design Quality Assurance Maintenance Implementation Release Something missing? What s yours like? SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 11

12 How to Do OOAD OMT as Object-Oriented Methodology OMT (Object Modeling Technique) by James Rumbaugh Object Model: describes the static structure of the objects in the system and their relationships -> Object Diagrams. Dynamic Model: describes the interactions among objects in the system -> State Diagrams. Functional Model: describes the data transformation of the system -> DataFlow Diagrams. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 12

13 Booch method Class diagramsdescribe roles and responsibilities of objects Object diagrams describe the desired behavior of the system in terms of scenarios State transition diagrams state of a class based on a stimulus Module diagrams to map out where each class & object should be declared Process diagrams to determine to which processor to allocate a process Interaction diagrams describes behavior of the system in terms of scenarios SEZ6C/SEE6A/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 1 3

14 JACOBSON METHODOLOGIES Use Cases. Object Oriented Software Engineering. Object Oriented Business Engineering. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 1 4

15 OO SOFTWARE DEVELOPMENT LIFE CYCLE SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 1 5

16 UML The UML consists of the following diagrams: SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 1 6

17 UNIT-II Use-Case Models Object Analysis Object relations Attributes Methods Class and Object responsibilities Case Studies. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 17

18 OBJECT ORIENTED ANALYSIS PROCESS Identifying use cases Object Analysis Classification Identifying Object relationships Attributes and Methods. WHAT IS ANALYSIS? Analysis is the process of transforming a problem definition from a fuzzy set of facts and myths into a coherent statement of a system s requirements. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 18

19 Where Should We Start? 1. Examination of existing system documentation. 2. Interviews. 3. Questionnaire. 4. Observation. Requirements Difficulties Three most common sources of requirements difficulties are: 1. Incomplete requirements. 2. Fuzzy descriptions (such as fast response). 3. Unneeded features. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 19

20 The Object-Oriented Analysis (OOA) Process The process consists of the following steps: 1. Identify the actors: Who is using the system? Or, in the case of a new system, who will be using system? 2. Develop a simple business process model using UML activity diagram. 3. Develop the use case: What the users are doing with the system? Or, in the case of a new system, what users will be doing with the system? 4. Prepare interaction diagrams: Determine the sequence. Develop collaboration diagrams. 5. Classification develop a static UML class diagram:. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 20

21 The OOA Process (Con t) 6. Iterate and refine: If needed, repeat the preceding steps. Identify Actors Develop Use- Cases, ADs prototyping Develop Interaction Diagrams Identify Classes, Relationships, Attributes & Methods Refine and iterate USE CASE KEY CONCEPTS O-O Analysis Use case. Use case is a special flow of events through the system. Actors. An actor is a user playing a role with respect to the system. In a system. This simply means that the actors communicate with the system's use case. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 21

22 Extends Associations The extends association is used when you have one use case that is similar to another use case but does a bit more or Is more specialized; in essence, it is like a subclass. Library Borrow books uses Member Checking Library Card extends uses Inter library loan Circulation Clerk Return Books Performing research Reading books Newspaper Purchasing Supplies Supplier SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 22

23 Use case Driven Capture the user s needs (requirements - in users context) - Helps in Project Scheduling Analyse to specify the needs Design to realize the needs Implement to implement the needs Test to verify the needs Implemented by Verified by Test1 Test3 Realized by Test2 Use cases Specified by Design2 Design1 Test Design3 Design4 Implementation Analysis Design SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 23

24 Use Case Diagram Notation Actor Association Use Case Use case with Extension points <<Uses>> <<Extends>> SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 24

25 Documentation An effective document can serve as a communication vehicle among the project's team members, or it can serve as initial understanding of the requirements. All documents should share a common cover sheet that identifies the document, the current version, and the individual responsible for the content. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 25

26 80 20 Rule 80 percent of the work can be done with 20 percent of the documentation. The trick is to make sure that the 20 percent is easily accessible and the rest (80 percent) is available to those (few) who need to know. FAMILIAR VOCABULARY Use a vocabulary that your readers understand and are comfortable with. The main objective here is to communicate with readers and not impress them with buzz words. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 26

27 Classification The identification of classes and objects is the hardest part of object-oriented design. Booch Discovery recognize key abstractions and mechanisms from problem domain Invention devise generalized abstractions and new mechanisms that specify how objects collaborate SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 27

28 Approaches for Identifying Classes The noun phrase approach. The common class patterns approach. The use-case driven approach. The class responsibilities collaboration (CRC) approach. NOUN PHRASE APPROACH Using this method, you have to read through the Use cases, interviews, and requirements specification carefully, looking for noun phrases. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 28

29 NOUN PHRASE APPROACH All plurals are changed into singular Nouns are listed List divided into three categories Relevant classes Fuzzy classes (those classes that are not sure about) Irrelevant classes SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 29

30 COMMON CLASS PATTERNS APPROACH Concept class Event Class Organizations Class People Class Places Class Tangible things and devicesclass SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 30

31 USE CASE DRIVEN APPROACH SEQUENCE DIAGRAM Actor Class Synchronous message Asynchronous message Focus of Control Return message Termination lifeline SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 31

32 CASE STUDY- EXAMPLE SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 32

33 UNIT-III Design Processes Design Axioms Class Design Object Storage Object Interoperability Case Studies SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 33

34 Object-Oriented Design Process and Design Axioms Analysis Phase Class s attributes, methods and associations are identified Physical entities, players and their cooperation are identified Objects can be individuals, organizations or machines Design Phase Using Implementation language appropriate data types are assigned Elevate the model into logical entities (user interfaces) Focus is on the view and access classes (How to maintain information or best way to interact with a user) C7E07 SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 34

35 COROLLARY Corollary 1 Uncoupled design with less information content Corollary 2 Single process Corollary 3 Large number of simple classes Corollary 4 Strong mapping Corollary 5 Standardization Corollary 6 Design with inheritance SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 35

36 THE ORIGIN OF COROLLARY C7E07&index=2 SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 36

37 Design Patterns: Pattern name Rationale and motivation Classes Advantages/Disadvantages Examples Designing Classes: The Process Apply design axioms to design classes, their attributes, methods, associations, structures and protocols. Refine and complete the static UML class diagram by adding details to that diagram. Refine attributes Design methods and the protocols by utilizing a UML activity diagram to represent the methods s algorithm. Refine the associations between classes Refine the class hierarchy and design with inheritance. Iterate and refine. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 37

38 Class Visibility: Private Protocol Public Protocol Protected protocol Designing classes: Refining Attributes In the design phase, detailed information must be added to the model. The main goal of this activity is to refine existing attributes or add attributes that can elevated the system into implementation. Attributes Types: 1.Single-value attributes 2.Multiplicity or multivalue attributes 3.Reference to another object, or instance connection. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 38

39 UML Attribute Presentation: The following is the attribute presentation suggested by UML: Visibility name:type-expression=initial-value Where visibility is one of the following: + public visibility # protected visibility - private visibility Designing methods and protocols: A class can provide several types of methods: Constructor Destructor Conversion method Copy method Attribute set Attribute get SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 39

40 FIVE RULES FOR A GOOD TM DESIGN 1.If it looks messy, then it s probably a bad design 2.If it is too complex, then it s probably a bad design. 3.If it is too big, then it s probably a bad design. 4.If people don t like it, then it s probably a bad design. 5.If it doesn t work, then it s probably a bad design. Design issues: Avoiding Design pitfalls Keep a careful eye on the class design and make sure that an object s role remains well defined. If an object loses focus, you need to modify the design. Apply corollary 2.(single purpose) Move some functions into new classes that the object would use. Apply corollary1(uncoupled design with less information content) Break up the class into two or more classes. Apply corollary3(large number of simple classes) Rethink the class definition based on experience gained. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 40

41 CORBA SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 41

42 COOPERATIVE PROCESSING SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 42

43 Rules of 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 be computationally complete. Rules make it a DBMS: 1.It must be persistent, able to remember an object state. 2.It must be able to manage very large database. 3.It must accept concurrent users. 4.It must be able to recover from hardware and software failures. 5.Data query must be simple. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 43

44 Object oriented database management systems: SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 44

45 Object Relation mapping: 1.Table-Class mapping 2.Table-multiple classes mapping 3.Table-inherited classes mapping 4.Tables-inherited classes mapping MULTI DATABASE SYSTEMS SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 45

46 Designing access layer classes: 1.Translate the request 2.Translate the results. The Process: 1.For every business class identified, mirror the business class package. 2.Define relationships. 3.Simplify classes and relationships. 1.Redundant classes 2.Method classes 4. Iterate and refine. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 46

47 OBJECT ORIENTED DESIGN PROCESS SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 47

48 REFINING ATTRIBUTES Attributes types 1. Single value attributes 2. Multiplicity or multivalue attributes 3. References to another object Attributes presentation : + public visibility # protected visibility - private visibility SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 48

49 UNIT-IV User Interface Design View layer Classes Micro-Level Processes View Layer Interface Case Studies. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 49

50 USER INTERFACE DESIGN Designing effective interfaces for software systems Objectives To suggest some general design principles for user interface design To explain different interaction styles To introduce styles of information presentation To describe the user support which should be built-in to user interfaces To introduce usability attributes and system approaches to system evaluation SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 50

51 DESIGNING VIEW LAYER CLASSES : 1.Designing View Layer classes 2.Macro level UI design process Micro level UI design activities 2.1 Designing the view layer objects by applying design axioms and corollaries 2.2 Prototyping the view layer interface 3. Testing the usability and user satisfaction 4. Refining and iterating the design SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 51

52 DESIGNING ACCESS LAYER Translate the request Translate the result SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 52

53 UI DESIGN RULES: 1. UI design rule 1: Making the interface simple(application of Corollary 2) 2. UI design rule 2: Making the interface transparent and natural.(application of Corollary 4) 3. UI design rule3:allowing users to be in control of the software(application of Corollary 1) -- Make the interface forgiving. Make the interface visual Provide immediate feedback. Avoid modes. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 53

54 GRAPHICAL USER INTERFACES Most users of business systems interact with these systems through graphical interfaces although, in some cases, legacy text-based interfaces are still used ADVANTAGES: They are easy to learn and use. Users without experience can learn to use the system quickly. The user may switch quickly from one task to another and can interact with several different applications. Information remains visible in its own window when attention is switched. Fast, full-screen interaction is possible with immediate access to anywhere on the screen SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 54

55 USER INTERFACE DESIGN PROCESS Analyse and understand user activities Produce paperbased design prototype Evaluate design with end-users Design prototype Produce dynamic design prototype Evaluate design with end-users Executable prototype Implement final user interface SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 55

56 CONTROL PANEL INTERFACE Title JSD. example Grid Busy Method JSD Type Network Units cm OUIT Selection Process Reduce Full PRINT NODE LINKS FONT LABEL EDIT SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 56

57 FORM-BASED INTERFACE NEW BOOK Title ISBN Author Publisher Edition Classification Date of purchase Price Publication date Number of copies Loan status Order status SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 57

58 MULTIPLE USER INTERFACE Gr aphical user interface Command language interface GUI manager Command language interpreter Operating system SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 58

59 INFORMATION PRESENTATION Information to be displayed Presentation software Display SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 59

60 TEXTUAL HIGHLIGHTING! The filename you have chosen has been used. Please choose an other name Ch. 16 User interface design OK Cancel SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 60

61 COLOR USE GUIDELINES Don't use too many colours Use colour coding to support use tasks Allow users to control colour coding Design for monochrome then add colour Use colour coding consistently Avoid colour pairings which clash Use colour change to show status change Be aware that colour displays are usually lower resolution SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 61

62 DESIGN FACTORS IN MESSAGE WORDING Context Exp erien ce Skill level Style Cult ure The user guidance s y stem should be aware of what t he user is doing and should adjust the output message to the current context. As us ers become familiar wit h a sy s tem they become irritated by long, meaningful messages. However, begin ners find it difficult to understand short terse statements of the problem. The user guidance system should provide both types of message and allow the user to control message conciseness. Messages should be tailored to the user s skills as well as their experience. M essages for the different classes of user may be expressed in different ways depending on the t ermino logy which is familiar to the reader. Messages should be positive rather than negative. They should use the active rather than the passive mode of address. They should never be insulting or try to be funny. Wherever p o ssible, t he des igner of mes sages s hould be familiar with the culture of the country where the system is sold. There are dist inct cult ural d ifferences bet ween Europ e, Asia and America. A suitable message for one culture might be unaccep table in an other. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 62

63 Guidelines for designing forms and Data entry windows: Navigating rows in a table, such as moving forward and backward, and going to the first and last record. Adding and deleting rows. Changing data in rows. Saving and abandoning changes We can put controls anywhere on a window. When entering data, users expect to type information from left to right and top to bottom. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 63

64 Guidelines for designing Dialog boxes and Error messages: A dialog box provides an exchange of information or a dialog between the user and application. Your error message should be positive. For eg., instead of displaying you have typed an illegal date format, display the message Enter date format mm/dd/yyyy. Your error message should be constructive. Your error message should be brief and meaningful. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 64

65 UNIT-V Quality Assurance Tests Testing Strategies Object orientation on testing Test Cases test Plans Continuous testing Debugging Principles System Usability Measuring User Satisfaction Case Studies. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 65

66 Quality Assurance Tests To develop and deliver robust systems, we need a high level of confidence that Each component will behave correctly. Collective behavior is correct No incorrect collective behavior will be produced. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 66

67 Types of Errors: Language Errors Run-time Errors Logic Errors SEZ6C-/SEE6C/PED2AOBJECT ORIENTED ANALYSIS AND DESIGN 67

68 QUALITY ASSURANCE TESTS Quality assurance (QA) is a way of preventing mistakes or defects in manufactured products and avoiding problems when delivering solutions or services to customers; which ISO 9000 defines as "part of quality management focused on providing confidence that quality requirements will be fulfilled". SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 68

69 Black Box Testing: Black Box Testing, also known as BehavioralTesting, is a software testing method in which the internal structure/ design/ implementation of the item being tested is not known to the tester SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 69

70 D/F B/W BLACK BOX AND WHITE BOX SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 70

71 TOP-DOWN TESTING Top-down testing is an approach to integratedtesting where the top integrated modules are testedand the branch of the module is tested step by step until the end of the related module SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 71

72 BOTTOM UP TESTING Bottom-up testing is an approach to integrated testing where the lowest level components are tested first, then used to facilitate the testing of higher level components SEZ6C-/SEE6C/PED2AOBJECT ORIENTED ANALYSIS AND DESIGN 72

73 IMPACT OF OBJECT- ORIENTATION ON TESTING Some types of errors could become less plausible. Some types of errors could become more plausible. Some new types of errors might appear. IMPACT OF INHERITANCE IN TESTING The base class contains methods inherited() and redefined() The derived class redefines the redefined()method. The derived::redefined has to be tested afresh since it is a new code. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 73

74 EXAMPLE FOR TEST CASE DOCUMENT SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 74

75 Guidelines for developing Quality Assurance Test Cases: Developing which feature or service your test attempts to cover. If the test case is based on a use case, it is a good idea to refer to the use-case name. Specify what you are testing and which particular methods, then specify what you are going to do to test the feature. Test the abnormal but reasonable use of the object s methods. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 75

76 Steps to create a Test plan: 1.Objectives of the test. 2.Development of a test case 3.Test analysis SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 76

77 Myers s Debugging principles: 1.Bug Locating principles. Think If you reach an impasse, sleep on it. If the impasse remains, describe the problem to someone else. Use debugging tools. Experimentation should be done as a last resort. Debugging Principles Where there is one bug, there is likely to be another. Fix the error, not just the symptom of it. The Probability of the solution being correct drops as the size of the program increases. Beware of the possibility that an error correction will create a new error SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 77

78 Usability Testing. The ISO defines Usability as Effectiveness Efficiency Satisfaction with which a specified set of users can achieve a specified set of tasks in particular environments. The ISO definition requires: Defining tasks. What are the tasks? Defining users. Who are the users? A means for measuring effectiveness, efficiency and satisfaction. SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 78

79 Guidelines for Developing Usability Testing: The usability testing should include all of a software s components. Usability testing need not be very expensive or elaborate. All tests need not involve many subjects. Quick, iterate tests with a small, well-targeted sample of 6 to 10 participants can identify 80-90npercent of most design problems. Apply usability testing early and often. Recording the Usability Test: Record the test results using 1.A portable tape recorder 2.Video camera SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 79

80 CUSTOMER FEEDBACK SEZ6C/SEE6C/PED2A-OBJECT ORIENTED ANALYSIS AND DESIGN 80

SEZ6C/SEE6C/PED2A OBJECT ORIENTED ANALYSIS AND DESIGN. Unit : I -V

SEZ6C/SEE6C/PED2A OBJECT ORIENTED ANALYSIS AND DESIGN. Unit : I -V SEZ6C/SEE6C/PED2A OBJECT ORIENTED ANALYSIS AND DESIGN Unit : I -V UNIT-I System Development Object Basics Development Life Cycle Methodologies Patterns Frameworks Unified Approach UML. 2 / 75 Why an Object

More information

SHRI ANGALAMMAN COLLEGE OF ENGINEERING & TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR,TRICHY

SHRI ANGALAMMAN COLLEGE OF ENGINEERING & TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR,TRICHY SHRI ANGALAMMAN COLLEGE OF ENGINEERING & TECHNOLOGY (An ISO 9001:2008 Certified Institution) SIRUGANOOR,TRICHY-621105. DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS 1301-OBJECT ORIENTED ANALYSIS AND

More information

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR 603203 DEPARTMENT OF COMPUTER SCIENCE & APPLICATIONS LESSON PLAN (2017-2018) Course / Branch : BCA Total Hours : 45 Subject Name : OBJECT ORIENTED

More information

Chapter 15. User Interface Design. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 15 Slide 1

Chapter 15. User Interface Design. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 15 Slide 1 Chapter 15 User Interface Design Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 15 Slide 1 Topics covered User interface design principles User interaction Information presentation User

More information

KINGS COLLEGE OF ENGINEERING

KINGS COLLEGE OF ENGINEERING KINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING ACADEMIC YEAR 2011 2012(ODD SEMESTER) QUESTION BANK Subject Code/Name : CS1310-Object Oriented Analysis and Design Year/IV Sem

More information

OBJECT ORIENTED SYSTEM DEVELOPMENT Software Development Dynamic System Development Information system solution Steps in System Development Analysis

OBJECT ORIENTED SYSTEM DEVELOPMENT Software Development Dynamic System Development Information system solution Steps in System Development Analysis UNIT I INTRODUCTION OBJECT ORIENTED SYSTEM DEVELOPMENT Software Development Dynamic System Development Information system solution Steps in System Development Analysis Design Implementation Testing Maintenance

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java

Object-Oriented Software Engineering Practical Software Development using UML and Java Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes Lecture 5 5.1 What is UML? The Unified Modelling Language is a standard graphical

More information

Object-Oriented Systems Development: Using the Unified Modeling Language

Object-Oriented Systems Development: Using the Unified Modeling Language Object-Oriented Systems Development: Using the Unified Modeling Language Chapter 4: Object-Oriented Methodologies Goals Object-Oriented Methodologies The Rumbaugh et al. OMT The Booch methodology Jacobson's

More information

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR 603203 DEPARTMENT OF COMPUTER SCIENCE & APPLICATIONS QUESTION BANK (2017-2018) Course / Branch : M.sc(CST) Semester / Year : VI(EVEN)/III Subject

More information

Object-Oriented Systems Development: Using the Unified Modeling Language. Chapter 1: An Overview of Object- Oriented Systems Development

Object-Oriented Systems Development: Using the Unified Modeling Language. Chapter 1: An Overview of Object- Oriented Systems Development Object-Oriented Systems Development: Using the Unified Modeling Language Chapter 1: An Overview of Object- Oriented Systems Development Goals The object-oriented philosophy and why we need to study it.

More information

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview CHAPTER 1 Topic: UML Overview After studying this Chapter, students should be able to: Describe the goals of UML. Analyze the History of UML. Evaluate the use of UML in an area of interest. CHAPTER 1:

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 5: Modelling with Classes

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 5: Modelling with Classes Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes 5.1 What is UML? The Unified Modelling Language is a standard graphical language

More information

User interface design. Software Engineering Slide 1

User interface design. Software Engineering Slide 1 User interface design Software Engineering Slide 1 The user interface User interfaces should be designed to match the skills, experience and expectations of its anticipated users. System users often judge

More information

CS 1042 OBJECT ORIENTED ANALYSIS AND DESIGN. UNIT 1 INRODUCTION 1.1 An Overview of Object Oriented System and Development

CS 1042 OBJECT ORIENTED ANALYSIS AND DESIGN. UNIT 1 INRODUCTION 1.1 An Overview of Object Oriented System and Development CS 1042 OBJECT ORIENTED ANALYSIS AND DESIGN UNIT 1 INRODUCTION 1.1 An Overview of Object Oriented System and Development 1.2 Object Basic 1.3 Object Oriented Systems Development Life Cycle 1.1 An Overview

More information

CASE TOOLS LAB VIVA QUESTION

CASE TOOLS LAB VIVA QUESTION 1. Define Object Oriented Analysis? VIVA QUESTION Object Oriented Analysis (OOA) is a method of analysis that examines requirements from the perspective of the classes and objects found in the vocabulary

More information

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN NOTES ON OBJECT-ORIENTED MODELING AND DESIGN Stephen W. Clyde Brigham Young University Provo, UT 86402 Abstract: A review of the Object Modeling Technique (OMT) is presented. OMT is an object-oriented

More information

UNIT-V SOFTWARE QUALITY AND USABILITY CHAPTER 12. VIEW LAYER: Designing Interface Objects. At the end of this chapter, students should be able to

UNIT-V SOFTWARE QUALITY AND USABILITY CHAPTER 12. VIEW LAYER: Designing Interface Objects. At the end of this chapter, students should be able to UNIT-V SOFTWARE QUALITY AND USABILITY CHAPTER 12 VIEW LAYER: Designing Interface Objects OBJECTIVES : At the end of this chapter, students should be able to Identifying View (or User interface ) classes

More information

Architectural Blueprint

Architectural Blueprint IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Architectural Blueprint

More information

Software Development Methodologies

Software Development Methodologies Software Development Methodologies Lecturer: Raman Ramsin Lecture 3 Seminal Object-Oriented Methodologies: A Feature-Focused Review 1 Responsibility-Driven Design (RDD) Introduced in 1990; a UML-based

More information

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802 UNIT-II Lecture Notes On UML IMPORTANCE OF MODELING, BRIEF OVERVIEW OF OBJECT MODELING TECHNOLOGY (OMT) BY RAMBAUGH, BOOCH METHODOLOGY, USE CASE DRIVE APPROACH (OOSE) BY JACKOBSON. KHALID AMIN AKHOON 1

More information

Chapter 7: Interface Design

Chapter 7: Interface Design 1 Chapter 7: Interface Design 2 Objectives Understand key user interface design principles. Understand the different interaction styles and understand when these styles are most appropriate. Understand

More information

Chapter 1: Principles of Programming and Software Engineering

Chapter 1: Principles of Programming and Software Engineering Chapter 1: Principles of Programming and Software Engineering Data Abstraction & Problem Solving with C++ Fifth Edition by Frank M. Carrano Software Engineering and Object-Oriented Design Coding without

More information

THE OBJECT-ORIENTED DESIGN PROCESS AND DESIGN AXIOMS (CH -9)

THE OBJECT-ORIENTED DESIGN PROCESS AND DESIGN AXIOMS (CH -9) THE OBJECT-ORIENTED DESIGN PROCESS AND DESIGN AXIOMS (CH -9) By: Mr.Prachet Bhuyan Assistant Professor, School of Computer Engineering, KIIT Topics to be Discussed 9.1 INTRODUCTION 9.2 THE O-O DESIGN PROCESS

More information

User interface design

User interface design User interface design Objectives To suggest some general design principles for user interface design To explain different interaction styles and their use To explain when to use graphical and textual information

More information

Object Oriented Software Development CIS Today: Object Oriented Analysis

Object Oriented Software Development CIS Today: Object Oriented Analysis Object Oriented Software Development CIS 50-3 Marc Conrad D104 (Park Square Building) Marc.Conrad@luton.ac.uk Today: Object Oriented Analysis The most single important ability in object oriented analysis

More information

Object-Oriented Systems Development: Using the Unified Modeling Language

Object-Oriented Systems Development: Using the Unified Modeling Language Object-Oriented Systems Development: Using the Unified Modeling Language Chapter 9: The Object-Oriented Design Process and Design Axioms Goals The object-oriented design process. Object-oriented design

More information

Software Design Patterns. Background 1. Background 2. Jonathan I. Maletic, Ph.D.

Software Design Patterns. Background 1. Background 2. Jonathan I. Maletic, Ph.D. Software Design Patterns Jonathan I. Maletic, Ph.D. Department of Computer Science Kent State University J. Maletic 1 Background 1 Search for recurring successful designs emergent designs from practice

More information

Chapter 1: Programming Principles

Chapter 1: Programming Principles Chapter 1: Programming Principles Object Oriented Analysis and Design Abstraction and information hiding Object oriented programming principles Unified Modeling Language Software life-cycle models Key

More information

Object-Oriented Systems. Development: Using the Unified Modeling Language

Object-Oriented Systems. Development: Using the Unified Modeling Language Object-Oriented Systems Development: Using the Unified Modeling Language Chapter 3: Object-Oriented Systems Development Life Cycle Goals The software development process Building high-quality software

More information

UNIT-I Introduction of Object Oriented Modeling

UNIT-I Introduction of Object Oriented Modeling UNIT-I Introduction of Object Oriented Modeling - Prasad Mahale Object Oriented Modeling and Reference Books: Design 1. Grady Booch, James Rumbaugh, Ivar Jacobson Unified Modeling Language User Guide,

More information

Object-Oriented Systems Analysis and Design Using UML

Object-Oriented Systems Analysis and Design Using UML 10 Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design, 8e Kendall & Kendall Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall Learning Objectives Understand

More information

CHAPTER 9 DESIGN ENGINEERING. Overview

CHAPTER 9 DESIGN ENGINEERING. Overview CHAPTER 9 DESIGN ENGINEERING Overview A software design is a meaningful engineering representation of some software product that is to be built. Designers must strive to acquire a repertoire of alternative

More information

Chapter 5: Structural Modeling

Chapter 5: Structural Modeling Chapter 5: Structural Modeling Objectives Understand the rules and style guidelines for creating CRC cards, class diagrams, and object diagrams. Understand the processes used to create CRC cards, class

More information

NOORUL ISLAM COLLEGE OF ENGINEERING, KUMARACOIL DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING SEVENTH SEMESTER

NOORUL ISLAM COLLEGE OF ENGINEERING, KUMARACOIL DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING SEVENTH SEMESTER NOORUL ISLAM COLLEGE OF ENGINEERING, KUMARACOIL DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING SEVENTH SEMESTER CS 1402 OBJECT ORIENTED ANALYSIS AND DESIGN TWO MARK AND SIXTEEN MARK Q & A Prepared By,

More information

Appendix A - Glossary(of OO software term s)

Appendix A - Glossary(of OO software term s) Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component

More information

MechEng SE3 Lecture 7 Domain Modelling

MechEng SE3 Lecture 7 Domain Modelling MechEng SE3 Lecture 7 Domain Modelling Simon Gay (slides by Phil Gray) 17 February 2010 1 This week s supplementary reading Zero Balances and Zero Responsibility Michael Bolton http://www.developsense.com/essays/zero.html

More information

Analysis and Design with UML

Analysis and Design with UML Analysis and Design with UML Page 1 Agenda Benefits of Visual Modeling History of the UML Visual Modeling with UML The Rational Iterative Development Process Page 2 What is Visual Modeling? Item Order

More information

Object Oriented Analysis and Design: An Overview

Object Oriented Analysis and Design: An Overview Object Oriented Analysis and Design: An Overview Balaji Rajagopalan Credits: Material for the slides is drawn from a variety of sources including Object Oriented Analysis and Design using UML by Ali Bahrami.

More information

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin Chapter 10 Object-Oriented Analysis and Modeling Using the UML McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives 10-2 Define object modeling and explain

More information

Basic Structural Modeling. Copyright Joey Paquet,

Basic Structural Modeling. Copyright Joey Paquet, Basic Structural Modeling Copyright Joey Paquet, 2000 1 Part I Classes Copyright Joey Paquet, 2000 2 Classes Description of a set of objects sharing the same attributes, operations and semantics Abstraction

More information

A - 1. CS 494 Object-Oriented Analysis & Design. UML Class Models. Overview. Class Model Perspectives (cont d) Developing Class Models

A - 1. CS 494 Object-Oriented Analysis & Design. UML Class Models. Overview. Class Model Perspectives (cont d) Developing Class Models CS 494 Object-Oriented Analysis & Design UML Class Models Overview How class models are used? Perspectives Classes: attributes and operations Associations Multiplicity Generalization and Inheritance Aggregation

More information

Chapter 4. Sahaj Computer Solutions Object Oriented Systems Development 1

Chapter 4. Sahaj Computer Solutions Object Oriented Systems Development 1 Object Oriented Methodologies Chapter 4 Sahaj Computer Solutions Object Oriented Systems Development 1 Chapter Objectives Object Oriented Methodologies The Rumbaugh et al. OMT The Booch Methodology Jacobson

More information

OBJECT ORIENTED ANALYSIS AND DESIGN

OBJECT ORIENTED ANALYSIS AND DESIGN UNIT 1I OBJECT ORIENTED METHODOLOGIES Contents Rumbaugh Methodology Booch Methodology Jacobson Methodology Patterns Frameworks Unified Approach Unified Modeling Language Use case Class diagram Interactive

More information

ACRONYMS AND GLOSSARY

ACRONYMS AND GLOSSARY Appendix A ACRONYMS AND GLOSSARY SYS-ED/ COMPUTER EDUCATION TECHNIQUES, INC. 1 Acronyms Acronym 1NF 1ONF 2NF 2ONF 2ONF 3NF 3ONF API CASE CORBA CRUD DFD FLOOT IDL Java VM ODMG OMG OODBMS OOUI OQL ODBC OOCRUD

More information

06. Analysis Modeling

06. Analysis Modeling 06. Analysis Modeling Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Overview of Analysis Modeling 1 Requirement Analysis 2 Analysis Modeling Approaches

More information

Chapter : Analysis Modeling

Chapter : Analysis Modeling Chapter : Analysis Modeling Requirements Analysis Requirements analysis Specifies software s operational characteristics Indicates software's interface with other system elements Establishes constraints

More information

Object-Oriented Analysis and Design Using UML (OO-226)

Object-Oriented Analysis and Design Using UML (OO-226) Object-Oriented Analysis and Design Using UML (OO-226) The Object-Oriented Analysis and Design Using UML course effectively combines instruction on the software development processes, objectoriented technologies,

More information

E.G.S.PILLAY ENGINEERING COLLEGE NAGAPATTINAM DEPARTMENT OF MCA

E.G.S.PILLAY ENGINEERING COLLEGE NAGAPATTINAM DEPARTMENT OF MCA E.G.S.PILLAY ENGINEERING COLLEGE NAGAPATTINAM DEPARTMENT OF MCA MC7402 OBJECT ORIENTED ANALYSIS AND DESIGN TWO MARK AND SIXTEEN MARK Q & A Part - A Questions and Answers UNIT-I 1. Write about the traditional

More information

Software Architectures. Lecture 6 (part 1)

Software Architectures. Lecture 6 (part 1) Software Architectures Lecture 6 (part 1) 2 Roadmap of the course What is software architecture? Designing Software Architecture Requirements: quality attributes or qualities How to achieve requirements

More information

SE 2730 Final Review

SE 2730 Final Review SE 2730 Final Review 1. Introduction 1) What is software: programs, associated documentations and data 2) Three types of software products: generic, custom, semi-custom Why is semi-custom product more

More information

CSC Advanced Object Oriented Programming, Spring Overview

CSC Advanced Object Oriented Programming, Spring Overview CSC 520 - Advanced Object Oriented Programming, Spring 2018 Overview Brief History 1960: Simula first object oriented language developed by researchers at the Norwegian Computing Center. 1970: Alan Kay

More information

User interface design. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 16 Slide 1

User interface design. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 16 Slide 1 User interface design Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 16 Slide 1 The user interface Should be designed to match: Skills, experience and expectations of its anticipated users.

More information

Unit Wise Questions. Unit-1 Concepts

Unit Wise Questions. Unit-1 Concepts Unit Wise Questions Unit-1 Concepts Q1. What is UML? Ans. Unified Modelling Language. It is a Industry standard graphical language for modelling and hence visualizing a blue print of all the aspects of

More information

Lecture 5 STRUCTURED ANALYSIS. PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall Bühnová, Sochor, Ráček

Lecture 5 STRUCTURED ANALYSIS. PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall Bühnová, Sochor, Ráček Lecture 5 STRUCTURED ANALYSIS PB007 So(ware Engineering I Faculty of Informa:cs, Masaryk University Fall 2015 1 Outline ² Yourdon Modern Structured Analysis (YMSA) Context diagram (CD) Data flow diagram

More information

UML & OO FUNDAMENTALS CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 3 08/30/2011

UML & OO FUNDAMENTALS CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 3 08/30/2011 UML & OO FUNDAMENTALS CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 3 08/30/2011 1 Goals of the Lecture Review the material in Chapter 2 of the Textbook Cover key parts of the UML notation

More information

5 Object Oriented Analysis

5 Object Oriented Analysis 5 Object Oriented Analysis 5.1 What is OOA? 5.2 Analysis Techniques 5.3 Booch's Criteria for Quality Classes 5.4 Project Management and Iterative OOAD 1 5.1 What is OOA? How to get understanding of what

More information

History of object-oriented approaches

History of object-oriented approaches Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr http://www.yildiz.edu.tr/~naydin Object-Oriented Oriented Systems Analysis and Design with the UML Objectives: Understand the basic characteristics of object-oriented

More information

SOFTWARE ENGINEERING DECEMBER. Q2a. What are the key challenges being faced by software engineering?

SOFTWARE ENGINEERING DECEMBER. Q2a. What are the key challenges being faced by software engineering? Q2a. What are the key challenges being faced by software engineering? Ans 2a. The key challenges facing software engineering are: 1. Coping with legacy systems, coping with increasing diversity and coping

More information

Interaction Modelling: Sequence Diagrams

Interaction Modelling: Sequence Diagrams Interaction Modelling: Sequence Diagrams Fabrizio Maria Maggi Institute of Computer Science (these slides are derived from the book Object-oriented modeling and design with UML ) Interaction Modelling

More information

CS 160: Evaluation. Professor John Canny Spring /15/2006 1

CS 160: Evaluation. Professor John Canny Spring /15/2006 1 CS 160: Evaluation Professor John Canny Spring 2006 2/15/2006 1 Outline User testing process Severity and Cost ratings Discount usability methods Heuristic evaluation HE vs. user testing 2/15/2006 2 Outline

More information

CS 160: Evaluation. Outline. Outline. Iterative Design. Preparing for a User Test. User Test

CS 160: Evaluation. Outline. Outline. Iterative Design. Preparing for a User Test. User Test CS 160: Evaluation Professor John Canny Spring 2006 2/15/2006 1 2/15/2006 2 Iterative Design Prototype low-fi paper, DENIM Design task analysis contextual inquiry scenarios sketching 2/15/2006 3 Evaluate

More information

Object Oriented Processes. R.K.Joshi Dept of Computer Science and Engg. IIT Bombay

Object Oriented Processes. R.K.Joshi Dept of Computer Science and Engg. IIT Bombay Object Oriented Processes R.K.Joshi Dept of Computer Science and Engg. IIT Bombay Life Cycle Models Waterfall Spiral Fountain Extreme Model Driven Phases and their relations with object orientation requirements

More information

Goal: build an object-oriented model of the realworld system (or imaginary world) Slicing the soup: OOA vs. OOD

Goal: build an object-oriented model of the realworld system (or imaginary world) Slicing the soup: OOA vs. OOD Domain analysis Goal: build an object-oriented model of the realworld system (or imaginary world) Slicing the soup: OOA vs. OOD OOA concerned with what, not how OOA activities focus on the domain layer

More information

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization OBJECT ORIENTED DESIGN with the Unified Process Use Case Realization Objectives Explain the purpose and objectives of objectoriented design Develop design class diagrams Develop detailed sequence diagrams

More information

Object-Oriented Analysis and Design. Pre-UML Situation. The Unified Modeling Language. Unification Efforts

Object-Oriented Analysis and Design. Pre-UML Situation. The Unified Modeling Language. Unification Efforts Object-Oriented Analysis and Design Analysis vs. Design Analysis Activities Finding the Objects/ Classes An Analysis Example The Unified Modeling Language Pre-UML Situation Early 90s Explosion of OO methods/notations

More information

Objectives. Explain the purpose and objectives of objectoriented. Develop design class diagrams

Objectives. Explain the purpose and objectives of objectoriented. Develop design class diagrams Objectives Explain the purpose and objectives of objectoriented design Develop design class diagrams Develop interaction diagrams based on the principles of object responsibility and use case controllers

More information

Heuristic evaluation is a usability inspection technique developed by Jakob Nielsen. The original set of heuristics was derived empirically from an

Heuristic evaluation is a usability inspection technique developed by Jakob Nielsen. The original set of heuristics was derived empirically from an Heuristic evaluation is a usability inspection technique developed by Jakob Nielsen. The original set of heuristics was derived empirically from an analysis of 249 usability problems (Nielsen, 1994). -Preece

More information

Object- Oriented Design with UML and Java Part I: Fundamentals

Object- Oriented Design with UML and Java Part I: Fundamentals Object- Oriented Design with UML and Java Part I: Fundamentals University of Colorado 1999-2002 CSCI-4448 - Object-Oriented Programming and Design These notes as free PDF files: http://www.softwarefederation.com/cs4448.html

More information

Ch 11 Software Development

Ch 11 Software Development COSC 1P03 Ch 11 Software Development Introduction to Data Structures 9-10.1 COSC 1P03 Software Development Phases Analysis problem statement requirements specification system analysts inputs and outputs

More information

Lecture 2: Software Engineering (a review)

Lecture 2: Software Engineering (a review) Lecture 2: Software Engineering (a review) Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 6448 - Spring Semester, 2003 Credit where Credit is Due Some material presented in this lecture is

More information

*ANSWERS * **********************************

*ANSWERS * ********************************** CS/183/17/SS07 UNIVERSITY OF SURREY BSc Programmes in Computing Level 1 Examination CS183: Systems Analysis and Design Time allowed: 2 hours Spring Semester 2007 Answer ALL questions in Section A and TWO

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecture 14: Design Workflow Department of Computer Engineering Sharif University of Technology 1 UP iterations and workflow Workflows Requirements Analysis Phases Inception Elaboration

More information

OBJECT-ORIENTED MODELING AND DESIGN. Introduction

OBJECT-ORIENTED MODELING AND DESIGN. Introduction OBJECT-ORIENTED MODELING AND DESIGN Introduction Contents: Introduction. Course Relevance Learning Outcomes Overview of the syllabus Introduction to Object Orientation Introduction Object Oriented Approach

More information

OO Analysis and Design with UML 2 and UP

OO Analysis and Design with UML 2 and UP OO Analysis and Design with UML 2 and UP Dr. Jim Arlow, Zuhlke Engineering Limited Clear View Training 2008 v2.5 1 UML principles Clear View Training 2008 v2.5 2 1.2 What is UML? Unified Modelling Language

More information

UML diagrams. Software artifacts include: SRS, SDS, test cases, source code, technical/user manual, software architecture, etc.

UML diagrams. Software artifacts include: SRS, SDS, test cases, source code, technical/user manual, software architecture, etc. UML Modeling UML diagrams UML (Unified Modeling Language) is a general purpose visual modeling language that provides different types of diagrammatic techniques and notations to specify, visualize, analyze,

More information

22/09/2012 INFO2110. Copyright Warning. Revision of class diagram. Overview. Purpose of class diagram. Generalization Relationship

22/09/2012 INFO2110. Copyright Warning. Revision of class diagram. Overview. Purpose of class diagram. Generalization Relationship 22/09/202 INFO20 Copyright Warning System Analysis and Modelling Semester 2, 202 Lecture 8, Structural Modelling (II) COMMONWEALTH OF AUSTRALIA Copyright Regulations 969 WARNING This material has been

More information

Object-Oriented Analysis and Design Using UML

Object-Oriented Analysis and Design Using UML Object-Oriented Analysis and Design Using UML An Introduction to Unified Process and Design Patterns Mahesh P. Matha Object-Oriented Analysis and Design Using UML Object-Oriented Analysis and Design Using

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 2: Review of Object Orientation

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 2: Review of Object Orientation Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 2: Review of Object Orientation 2.1 What is Object Orientation? Procedural paradigm: Software is organized

More information

Object Oriented Programming

Object Oriented Programming Binnur Kurt kurt@ce.itu.edu.tr Istanbul Technical University Computer Engineering Department 1 Version 0.1.2 About the Lecturer BSc İTÜ, Computer Engineering Department, 1995 MSc İTÜ, Computer Engineering

More information

SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A

SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A 1. What is an object? An object is a combination of data and logic; the representation of some realworld

More information

LABORATORY 1 REVISION

LABORATORY 1 REVISION UTCN Computer Science Department Software Design 2012/2013 LABORATORY 1 REVISION ================================================================== I. UML Revision This section focuses on reviewing the

More information

AADL Graphical Editor Design

AADL Graphical Editor Design AADL Graphical Editor Design Peter Feiler Software Engineering Institute phf@sei.cmu.edu Introduction An AADL specification is a set of component type and implementation declarations. They are organized

More information

Object Oriented System Development

Object Oriented System Development Object Oriented System Development Ratna Wardani Semester Genap, 2012 2/26/2012 Ratna W/PSBO2012 1 About This Course It shows how to apply OOAD technique to analyze and develop systems.. It gives you an

More information

S T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A

S T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A S T R U C T U R A L M O D E L I N G ( M O D E L I N G A S Y S T E M ' S L O G I C A L S T R U C T U R E U S I N G C L A S S E S A N D C L A S S D I A G R A M S ) WHAT IS CLASS DIAGRAM? A class diagram

More information

Design of Embedded Systems

Design of Embedded Systems Design of Embedded Systems José Costa Software for Embedded Systems Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2015-01-02 José Costa (DEI/IST) Design of Embedded Systems 1

More information

What are the characteristics of Object Oriented programming language?

What are the characteristics of Object Oriented programming language? What are the various elements of OOP? Following are the various elements of OOP:- Class:- A class is a collection of data and the various operations that can be performed on that data. Object- This is

More information

cs465 principles of user interface design, implementation and evaluation

cs465 principles of user interface design, implementation and evaluation cs465 principles of user interface design, implementation and evaluation Karrie G. Karahalios 24. September 2008 1. Heuristic Evaluation 2. Cognitive Walkthrough 3. Discuss Homework 3 4. Discuss Projects

More information

Object-oriented development. Object-oriented Design. Objectives. Characteristics of OOD. Interacting objects. Topics covered

Object-oriented development. Object-oriented Design. Objectives. Characteristics of OOD. Interacting objects. Topics covered Object-oriented development Object-oriented Design Object-oriented analysis, design and programming are related but distinct. OOA is concerned with developing an object model of the application domain.

More information

1: Introduction to Object (1)

1: Introduction to Object (1) 1: Introduction to Object (1) 김동원 2003.01.20 Overview (1) The progress of abstraction Smalltalk Class & Object Interface The hidden implementation Reusing the implementation Inheritance: Reusing the interface

More information

SE 1: Software Requirements Specification and Analysis

SE 1: Software Requirements Specification and Analysis SE 1: Software Requirements Specification and Analysis Lecture 9: UML Class (Concept), Object, Communication Diagrams Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445

More information

The Analysis and Design of the Object-oriented System Li Xin 1, a

The Analysis and Design of the Object-oriented System Li Xin 1, a International Conference on Materials Engineering and Information Technology Applications (MEITA 2015) The Analysis and Design of the Object-oriented System Li Xin 1, a 1 Shijiazhuang Vocational Technology

More information

Understanding the Object Paradigm

Understanding the Object Paradigm 2 Understanding the Object Paradigm M MAJOR A J O R T TOPICSO P I C S Objectives... 18 Pre-Test Questions... 18 Introduction... 19 Classes... 19 Classes and Functions... 20 Abstraction... 25 Adding and

More information

UML Primer. -Elango Sundaram

UML Primer. -Elango Sundaram UML Primer -Elango Sundaram About UML UML Can be thought of as a blue print for Software Graphical notation for expressing underlying OOA&D ideas Can be used to design any type of application, hardware,

More information

MC9244 OBJECT ORIENTED ANALYSIS AND DESIGN L T P C UNIT I INTRODUCTION

MC9244 OBJECT ORIENTED ANALYSIS AND DESIGN L T P C UNIT I INTRODUCTION MC9244 OBJECT ORIENTED ANALYSIS AND DESIGN L T P C 3 1 0 4 UNIT I INTRODUCTION 12 An overview Object basics Object state and properties Behavior Methods Messages Information hiding Class hierarchy Relationships

More information

MCQS for Midterm cs504 Combined by Anees Ahmad

MCQS for Midterm cs504 Combined by Anees Ahmad MCQS for Midterm cs504 Combined by Anees Ahmad The best way to conduct a requirements validation review is to examine the system model for errors have the customer look over the requirements send them

More information

Architectural Blueprint The 4+1 View Model of Software Architecture. Philippe Kruchten

Architectural Blueprint The 4+1 View Model of Software Architecture. Philippe Kruchten Architectural Blueprint The 4+1 View Model of Software Architecture Philippe Kruchten Model What is a model? simplified abstract representation information exchange standardization principals (involved)

More information

University of Calgary Department of Electrical and Computer Engineering. SENG : Object Oriented Analysis and Design Behrouz Homayoun Far

University of Calgary Department of Electrical and Computer Engineering. SENG : Object Oriented Analysis and Design Behrouz Homayoun Far University of Calgary Department of Electrical and Computer Engineering SENG 609.23: Object Oriented Analysis and Design Behrouz Homayoun Far Evaluation Test () 20:00 20:30 PM Instructions: 1. This booklet

More information

UNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach?

UNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach? Department: Information Technology Questions Bank Class: B.E. (I.T) Prof. Bhujbal Dnyaneshwar K. Subject: Object Oriented Modeling & Design dnyanesh.bhujbal11@gmail.com ------------------------------------------------------------------------------------------------------------

More information

Objectives. Object-Oriented Analysis and Design with the Unified Process 2

Objectives. Object-Oriented Analysis and Design with the Unified Process 2 Objectives Understand the differences between user interfaces and system interfaces Explain why the user interface is the system to the users Discuss the importance of the three principles of user-centered

More information

BDSA Introduction to OOAD. Jakob E. Bardram

BDSA Introduction to OOAD. Jakob E. Bardram BDSA Introduction to OOAD Jakob E. Bardram Programming is Fun Developing Quality Software is Hard. Craig Larman in [OOAD] book 2 Object-Oriented Analysis & Design (OOAD) This Lecture Unified Modeling Language

More information