Conceptual Modeling.

Slides:



Advertisements
Similar presentations
1 The Business Modeling Discipline. 2 Purpose of Business Modeling  To understand the structure and dynamics of the organization in which a system is.
Advertisements

OOAD Using the UML - Use-Case Analysis, v 4.2 Copyright  Rational Software, all rights reserved 1/18 Use Case Analysis – continued Control Classes.
UML Class Diagram. UML Class Diagrams2 Agenda What is a Class Diagram? Essential Elements of a UML Class Diagram Tips.
Copyright ©2004 Cezary Z Janikow 1 Domain Model n Visualization of entities and relationships n In UP presented as Class Diagrams – Classes, Relationships,
UML Class Diagram and Packages Written by Zvika Gutterman Adam Carmi.
Finding Analysis Classes Written by Zvika Gutterman Adam Carmi.
1 SWE Introduction to Software Engineering Lecture 15 – System Modeling Using UML.
6/8/991 Analysis Tuesday 09/14/99 Revised: September 11, 2000 (APM)
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
Domain model: visualizing concepts
Systems Analysis & Design Sixth Edition Systems Analysis & Design Sixth Edition Toolkit Part 5.
Use Case Analysis – continued
UML Class Diagrams: Basic Concepts. Objects –The purpose of class modeling is to describe objects. –An object is a concept, abstraction or thing that.
INTROSE Introduction to Software Engineering Raymund Sison, PhD College of Computer Studies De La Salle University Analysis Modeling.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 Detailed Design Overview and Mid-Level Class Modeling.
1 CMPT 275 Software Engineering Requirements Analysis Phase Requirements Analysis Activity (Identifying Objects, Scenarios) Janice Regan,
Fundamentals of Game Design, 2 nd Edition by Ernest Adams Chapter 10: Core Mechanics.
Object-Oriented Analysis and Design Lecture 1 Instructor: John Cole 1Object-Oriented Analysis and Design - Intro.
Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 1 Object Modeling.
Approaching a Problem Where do we start? How do we proceed?
Lecture 3 Uses Cases Topics UML Use Cases pop quiz Readings: Chapter 3 January 24, 2008 CSCE 492 Software Engineering.
CS3773 Software Engineering Lecture 04 UML Class Diagram.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
UML Class Diagram Trisha Cummings. What we will be covering What is a Class Diagram? Essential Elements of a UML Class Diagram UML Packages Logical Distribution.
Part4 Methodology of Database Design Chapter 07- Overview of Conceptual Database Design Lu Wei College of Software and Microelectronics Northwestern Polytechnical.
What is Object-Oriented?  Organization of software as a collection of discreet objects that incorporate both data structure and behavior.
Requirements Engineering for Web Applications. SR: System Vision Document Written by key stakeholders Written by key stakeholders An executive summary.
Domain Classes – Part 1.  Analyze Requirements as per Use Case Model  Domain Model (Conceptual Class Diagram)  Interaction (Sequence) Diagrams  System.
Finding Analysis Classes Analyze Use-cases and other artifacts to obtain Analysis classes, relationships, and behavior diagrams.
Analysis Yaodong Bi. Introduction to Analysis Purposes of Analysis – Resolve issues related to interference, concurrency, and conflicts among use cases.
Syntax- the object study. What is syntax?  Syntax is the study of the structure  of sentences.  Syntax analyzes how words combine to form sentences.
Dillon: CSE470: ANALYSIS1 Requirements l Specify functionality »model objects and resources »model behavior l Specify data interfaces »type, quantity,
Data Modeling Using the Entity- Relationship (ER) Model
Chapter 5 – System Modeling
Chapter 10 Structuring System Requirements: Conceptual Data Modeling
Elaboration popo.
UML Diagrams By Daniel Damaris Novarianto S..
Chapter 9 Domain Models.
Chapter 5 – System Modeling
Analysis and Design with UML: Discovering Classes and Relationships
Introduction to Unified Modeling Language (UML)
Class diagram Description
Domain Models Part 1
Today in OOAD Today in Lab Review EU-Lease Assignment (Vision)
OO Domain Modeling With UML Class Diagrams and CRC Cards
UML Diagrams Jung Woo.
Analysis and Design with UML: Discovering Classes and Relationships
Concept Maps.
OO Domain Modeling With UML Class Diagrams and CRC Cards
Object-Oriented Analysis
UML Class Diagrams: Basic Concepts
Analysis and Design with UML: Discovering Classes and Relationships
Overview of Software Requirements
UML Class Diagram.
Chapter 10 Structuring System Requirements: Conceptual Data Modeling
Appendix A Object-Oriented Analysis and Design
SYS466 Domain Classes – Part 1.
Understand and Use Object Oriented Methods
Software Design Lecture : 15.
Copyright 2007 Oxford Consulting, Ltd
Analysis and Design with UML: Classes and Relationships
Software Architecture
Use Case Analysis – continued
Chapter 10 Structuring System Requirements: Conceptual Data Modeling
Appendix A Object-Oriented Analysis and Design
Appendix A Object-Oriented Analysis and Design
Introduction to OOAD and the UML
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
Lecture 10 Structuring System Requirements: Conceptual Data Modeling
Presentation transcript:

Conceptual Modeling

Objectives To explain what conceptual modeling is To list the uses of conceptual modeling To present a process for conceptual modeling To present heuristics for conceptual modeling

Topics Conceptual models Uses of conceptual models Conceptual Modeling Process How to do conceptual modeling

Conceptual Models A conceptual model is a static model of the important entities in a problem, their responsibilities or attributes, the important relationships among them, and perhaps their behaviors. Conceptual models are about real-world entities in the problem domain and not about software.

Uses of Conceptual Models In product design Understanding the problem domain Setting data requirements Validating requirements In engineering design Understanding a product design Providing a basis for engineering design modeling

Conceptual Modeling Process

Identifying Classes—Brainstorming Study the product design (SRS, use case models, other models) Look for nouns and noun phrases for Physical entities Individuals, roles, groups, organizations Real things managed, tracked, recorded, or represented in the product People, devices, or systems that interact with the product (actors)

Identifying Classes-Rationalizing 1 Remove noun phrases designating properties (they may be attributes). Remove noun phrases designating behaviors (they may be operations). Combine different names for the same thing.

Identifying Classes-Rationalizing 2 Remove entities that do not directly interact with the product. Clarify vague nouns or noun phrases. Remove irrelevant or implementation entities.

Caldera Example, Draft 1

Adding Attributes 1 Study the SRS and product design models looking for adjectives and other modifiers. Use names from the problem domain. Include only those types, multiplicities, and initial values specified in the problem.

Adding Attributes 2 Don’t add object identifiers unless they are important in the problem. Don’t add implementation attributes. Add operations sparingly.

Caldera Example, Draft 2

Adding Associations-Brainstorming Study the SRS and product design models looking for verbs and prepositions describing relationships between model entities. Look for relationships such as Physical or organizational proximity; Control, coordination, or influence; Creation, destruction, or modification; Communication; and Ownership or containment.

Adding Associations—Rationalizing 1 Limit the number of associations to at most one between any pair of classes. Combine different names for the same association. Break associations among three or more classes into binary associations.

Adding Associations—Rationalizing 2 Make association names descriptive and precise. Add rolenames where they are needed.

Caldera Example, Draft 3

Adding Multiplicities Take pairs of associated entities in turn. Make one class the target, the other the source. Determine how many instances of the target class can be related to a single instance of the source class. Reverse the target and source and determine the other multiplicity. Consult the product design. Add only multiplicities important in the problem.

Caldera Example, Final Draft

Summary 1 A conceptual model represents the important entities in a design problem along with their properties and relationships. Conceptual models represent the design problem, not the software solution. Conceptual models are useful throughout product design and in engineering design analysis.

Summary 2 There is a process for conceptual modeling. Process steps can be done by analyzing the text of product design artifacts. Several heuristics guide designers in conceptual modeling.