Structural Modeling. Objectives O Understand the rules and style guidelines for creating CRC cards, class diagrams, and object diagrams. O Understand.

Slides:



Advertisements
Similar presentations
Systems Analysis and Design with UML Version 2.0, Second Edition
Advertisements

PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
Chapter 6: Behavioral Modeling
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design Copyright 2000 © John Wiley & Sons, Inc. All rights reserved. Slide 1 The.
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design Copyright 2000 © John Wiley & Sons, Inc. All rights reserved. Slide 1 The.
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
Slide 1 Chapter 7 Structural Modeling. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
Object-Orientated Design Unit 3: Objects and Classes Jin Sa.
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
Systems Analysis and Design
Systems Analysis and Design
Chapter 13 (Online): Object-Oriented Databases
CMIS 470 Structured Systems Design
PowerPoint Presentation for Dennis, Wixom, & Roth Systems Analysis and Design, 3rd Edition Copyright 2006 © John Wiley & Sons, Inc. All rights reserved..
Chapter 1: Introduction to Systems Analysis and Design
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Haley Wixom, and David Tegarden Chapter 10: Class and Method.
Intro to UML - OO Class Diagrams Week 5 CMIS570. Plan for Tonight Object terms Unified Modeling Language history Class Diagrams Intro to Oracle Oracle.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Slide 1 UML Review Chapter 2: Introduction to Object-Oriented Systems Analysis and Design with the Unified Modeling Language, Version 2.0 Alan Dennis,
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 4th Edition Copyright © 2012 John Wiley & Sons, Inc. All rights.
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Structural Modeling Chapter 7
Slide 1 Structural Modeling Chapter 7. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 8: Behavioral Modeling.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Haley Wixom, and David Tegarden Chapter 7: Structural Modeling.
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2 nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Lecture 6: Structural Modeling
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
Structural Modeling Chapter 7. Key Ideas A structural or conceptual model describes the structure of the data that supports the business processes in.
1 Structural Modeling Chapter 7. 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business processes.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 8: Behavioral Modeling.
PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Design Model Lecture p6 T120B pavasario sem.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 9: Moving on to Design.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 6: Functional Modeling.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
PowerPoint Presentation for Dennis, Wixom & Tegardem Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Haley Wixom, and David Tegarden Chapter 7: Structural Modeling.
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2 nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Structural Modeling. Introduction A Structural model is a formal way of representating the objects that are used and created by a business system One.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
OO DomainModeling With UML Class Diagrams and CRC Cards Chapter 6 Princess Nourah bint Abdulrahman University College of Computer and Information Sciences.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Haley Wixom, and David Tegarden Chapter 7: Structural Modeling.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 8: Behavioral Modeling.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 6: Functional Modeling.
Chapter 5: Structural Modeling
Systems Analysis and Design
Roberta Roth, Alan Dennis, and Barbara Haley Wixom
Systems Analysis and Design
Chapter 5: Structural Modeling
OO Domain Modeling With UML Class Diagrams and CRC Cards
Systems Analysis and Design With UML 2
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Presentation transcript:

Structural Modeling

Objectives O Understand the rules and style guidelines for creating CRC cards, class diagrams, and object diagrams. O Understand the processes used to create CRC cards, class diagrams, and object diagrams. O Be able to create CRC cards, class diagrams, and object diagrams. O Understand the relationship between the structural and use case models.

Structural Model O A formal way of representing the objects that are used and created by a business system O People O Places O Things O Drawn using an iterative process O First drawn in a conceptual, business-centric way O Then refined in a technology-centric way describing the actual databases and files

Structural Models

O Main goal: to discover the key data contained in the problem domain and to build a structural model of the objects Problem Domain Solution Domain Structural Modeling

A Common Language O Structural models create a well-defined vocabulary shared by users and analysts O Classes created during analysis are not the classes that programmers develop during implementation O This refinement comes later O Typical structural models: O CRC cards O Class (and Object) diagrams

Classes, Attributes, & Operations O Classes O Templates for instances of people, places, or things O Attributes O Properties that describe the state of an instance of a class (an object) O Operations O Actions or functions that a class can perform

Relationships O Describe how classes relate to one another O Three basic types in UML O Generalization O Enables inheritance of attributes and operations O Aggregation O Relates parts to wholes O Association O Miscellaneous relationships between classes

CRC Cards

Responsibilities & Collaborations O Responsibilities O Knowing O Doing O Collaboration O Objects working together to service a request

Front-Side of a CRC Card

Back-Side of a CRC Card

Class Diagrams

Elements of a Class Diagram

Attribute Visibility O Attribute visibility can be specified in the class diagram O Public attributes (+) are visible to all classes O Private attributes (-) are visible only to an instance of the class in which they are defined O Protected attributes (#) are like private attributes, but are also visible to descendant classes O Visibility helps restrict access to the attributes and thus ensure consistency and integrity

Operations O Constructor O Creates object O Query O Makes information about state available O Update O Changes values of some or all attributes

More Elements of Class Diagrams

Multiplicities DepartmentBossEmployeeChildBossEmployee * 11..* Exactly one: A department has one and only one boss Zero or more: An employee has zero to many children One or more: A boss is responsible for one or more employees

More Multiplicities EmployeeSpouseEmployeeVacationEmployeeCommittee , 5 Zero or one: An employee can be married to 0 or 1 spouse Specified range: An employee can take 2 to 4 vacations each year Multiple disjoint ranges: An employee can be in 1 to 3 or 5 committees

Sample Class Diagram

Domain Model : visualizing concept

PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Object modeling might support a reduced “semantic gap” in models at different stages. But an exact 1-1 mapping is not always present or desirable.

Not A Diagram of Software Components O Conceptual models represent ideas, things, and objects in the real-world problem domain. O A conceptual model is not a picture of: O Software components. O Classes in an object-oriented programming language. O It illustrates real-world concepts.

4 Steps to Domain Model O Make a list of candidate concepts O Create CRC Cards O Create the class diagram (Domain Model) O Review the class diagram

STEP 1 Make a list of candidate concepts

Strategies to Identify Conceptual Classes O Use a conceptual class category list O Make a list of candidate concepts O Use noun phrase identification O Identify noun ( and noun phrases) in textual descriptions of the problem domain, and consider them as concepts or attributes. O Use Cases are excellent description to draw for this analysis.

Object Identification O Textual analysis of use-case information O Creates a rough first cut O Common object list O Incidents O Roles

Textual analysis of use-case information O A Noun O A common or improper noun implies a class of objects. O A proper noun or direct reference implies an instance of a class. O A collective noun implies a class of objects made up of groups of instances of another class. O An adjective implies an attribute of an object. O A verb O A verb doing verb implies an operation. O A being verb implies a classification relationship between an object and its class. O A having verb implies an aggregation or association relationship. O A transitive verb implies an operation. O An intransitive verb implies an exception. O A predicate or descriptive verb phrase implies an operation. O An adverb implies an attribute of a relationship or an operation.

Step 2 Create CRC cards

Designing with CRC cards O CRC Cards—Classes, Responsibilities, Collaboration Cards. O OO design is about assigning Responsibilities to Classes for how they Collaborate to accomplish a use case O Usually a manual process done in a brainstorming session O 3 X 5 note cards O One card per class O Front has responsibilities and collaborations O Back has attributes needed 33

Detailed Design with CRC cards O Design process O Identify class with primary responsibility O Identify other classes that collaborate with primary class (become requests for service to other classes) ‏ O Identify responsibilities within each class (these become methods) ‏ 34

CRC Card Notation 35

CRC Card Results 36

Step 3 Create Domain Model

O Using the CRC card you can identify the following: O Attributes related to each classes. O Association between classes.

Association Category O A is recorded in B O A uses or manages B O A is related to a transaction of B O A communicates with B O A is a transaction related to another transaction B O A is next to B O A is related to B via a transaction O A is recorded in B O A uses or manages B O A is related to a transaction of B O A communicates with B O A is a transaction related to another transaction B O A is next to B O A is related to B via a transaction

Summary O Structural Models O CRC Cards O Class Diagrams O Creating CRC cards and domain model

Reference O Alan R. Dennis, Barbara Haley Wixom, and David Tegarden Systems Analysis and Design with UML Version 2.0: An Object- Oriented Approach (3rd ed.). John Wiley & Sons, Inc., New York, NY, USA.