BTS430 Systems Analysis and Design using UML Domain Model—Part 2A: Attributes.

Slides:



Advertisements
Similar presentations
More Diagramming & Practice with Relationship Modeling
Advertisements

Copyright ©2004 Cezary Z Janikow 1 Domain Model n Visualization of entities and relationships n In UP presented as Class Diagrams – Classes, Relationships,
1 Domain Model: Adding Attributes Chapter 12 Adding Attributes.
6/8/991 Analysis Tuesday 09/14/99 Revised: September 11, 2000 (APM)
Domain model: visualizing concepts
NJIT 1 Domain Model Visualizing Concepts Chapter 9 Applying UML and Patterns Craig Larman.
Systems Analysis and Design in a Changing World, 6th Edition
Chapter 9 Domain Models 1CS6359 Fall 2012 John Cole.
9/18/011 Software Requirements Analysis and Design (Continued)
Domain Modeling Chandan R. Rupakheti and Steve Chenoweth Week 5, Day 1.
Objectives Design Class Diagrams Issues in system design Generalization Review UML papers.
Chapter 9 Domain Models. Domain Model in UML Class Diagram Notation A “visual dictionary”
Object-Oriented Analysis and Design
INFO 355Week #31 Systems Analysis II Domain Modeling INFO 355 Glenn Booker.
What is a domain model? “A domain model captures the most important types of objects in the context of the business. The domain model represents the ‘things’
Last lecture. What is a Use Case Use cases are stories (scenarios) of how actors use (interact with) the system to fulfill his goal. Examples Process.
MIS 301 Information Systems in Organizations Dave Salisbury ( )
MIS 301 Information Systems in Organizations Dave Salisbury ( )
Processing of structured documents Spring 2002, Part 2 Helena Ahonen-Myka.
Information Systems Analysis and Design Class Modeling
DOMAIN MODEL— PART 2: ATTRIBUTES SYS466. Looking For Potential Classes “Know the business”. Ask Questions Identify business concepts; filter nouns (person,
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
TK2023 Object-Oriented Software Engineering CHAPTER 5 DOMAIN MODELLING.
Domain Modelling Presented By Dr. Shazzad Hosain.
Sept Ron McFadyen1 Section 10.1 Domain Models Domain Model: a visual representation of conceptual classes or real-world objects in a domain.
DOMAIN MODE: ASSOCIATIONS, MULTIPLICITY AND ATTRIBUTE-TEXT NOTATION SYS466.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 4 - Domain Classes.
Review ♦ System sequence diagram ♦ Domain model
Lecture 9 Enterprise Systems Development ( CSC447 ) COMSATS Islamabad Muhammad Usman, Assistant Professor.
Jan 21, Ron McFadyen1 Ch 10. Domain Model: Visualizing Concepts Domain model illustrated with a class diagram (with no operations defined)
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 4 Domain Classes.
1 Lecture 6: Operation Contracts. 2 Overview  What is contract ?  The guidelines for writing contracts for the system operations.  Use Case realizations.
Conceptual Modeling Modeling the Problem Domain. Conceptual Modeling Decompose problem space into comprehensible concepts. Clarify the terminology or.
DOMAIN MODEL- VISUALIZING CONCEPTS Identify conceptual classes related to the current iteration requirements. Create an initial domain model. Distinguish.
Lecture 13-17, chitkara university.  Gives a conceptual framework of the things in the problem space  Helps you think – focus on semantics  Provides.
Chapter 9 Applying UML and Patterns -Craig Larman
Domain Model—Part 3: Associations, Multiplicity and Attribute- Text Notation.
SYS466: Analysis and Design Using OO Models Domain Class Diagram.
BTS430 Systems Analysis and Design using UML Domain Model—Part 2: Associations and Attributes.
Domain Model—Part 2: Attributes.  A logical data value of an object  (Text, p. 158)  In a domain model, attributes and their data types should be simple,
Repetition af Domæne model. Artifact influence emphasizing the Domain Model.
DOMAIN MODEL: ADDING ATTRIBUTES Identify attributes in a domain model. Distinguish between correct and incorrect attributes.
Object-Oriented Analysis and Design Feb 2, 2009.
BTS430 Systems Analysis and Design using UML Domain Model—Part 2: Associations and Attributes.
INTRODUCTION TO DATABASE DESIGN. Definitions Database Models: Conceptual, Logical, Physical Conceptual: “big picture” overview of data and relationships.
MIS 301 Information Systems in Organizations Dave Salisbury ( )
Chapter 9: Domain Models.  The problem domain is modelled using a UML domain model: This is the first OO model that we will see (Use Cases are very useful.
Domain Model A representation of real-world conceptual classes in a problem domain. The core of object-oriented analysis They are NOT software objects.
Chapter 16 UML Class Diagrams.
BTS430 Systems Analysis and Design using UML Domain Model—Part 2: Associations and Attributes.
Larman chapter 101 Domain Model: Visualizing concepts Larman chapter 10.
1 Chapter 9: Operation Contracts Chapter 13 in Applying UML and Patterns Book.
1 Object Oriented Analysis and Design Conceptual Model.
BTS430 Systems Analysis and Design using UML Design Class Diagrams (ref=chapter 16 of Applying UML and Patterns)
DOMAIN MODEL—PART 2: ATTRIBUTES BTS430 Systems Analysis and Design using UML.
 DEFINE THE ENTITY  IDENTIFY THE ENTITY TYPES AND SETS OF ENTITY  EXPLAIN THE ATTRIBUTE AND A VALUE SET  EXPLAIN E-R MODEL EXPLAIN THE FOLLOWING RELATIONSHIP.
Comp 1100 Entity-Relationship (ER) Model
Chapter 9 Domain Models.
Domain Model: Visualizing concepts
Chapter 16 UML Class Diagrams.
Conceptual Model.
OO Domain Modeling With UML Class Diagrams and CRC Cards
The Entity-Relationship Model
Seminar 3 UML Class Diagram.
Object Oriented Analysis and Design Conceptual Model.
Software Engineering Lecture # 19
SALES RECEIPT Downloaded from
DELIVERY RECEIPT DELIVERY RECEIPT No : Date : Customer
Domain Model: Visualizing Concepts
Design Model: Creating Design Class Diagrams
Presentation transcript:

BTS430 Systems Analysis and Design using UML Domain Model—Part 2A: Attributes

In these notes: Report Objects Attributes vs. Classes Description Classes Attributes

Report Objects “Report” that some action has taken place, for example as a receipt reports that a sale and payment have occurred Not generally useful since information is derived from other sources

Report Objects But if they have a special role in terms of business rules—e.g. need Receipt in order to get refund—then they should be included The receipt class would be added to the Domain Model when the Manage Returns use case specification was written

Common Mistake with Attributes vs. Classes Represent something as an attribute when it should have been a conceptual class. e.g. a sale is made at a store Sale is a conceptual class Is store an attribute of Sale or is it a conceptual class Store?

Common Mistake with Attributes vs. Classes GUIDELINE: If we DO NOT think of a concept as a number or text in the real world domain then it is probably a class, not an attribute In the real world, a store is not considered a number or text -- it is a legal entity, an organization, and something that occupies space. Store should be a conceptual class.

Description Class Contains information that describes something else. ProductDescription records the price, picture and text description of an Item We can use this to our advantage in writing the Estimate and Order use case specifications and diagramming them

Description Class The need for description classes is common in sales, product and services domains Common in manufacturing, which requires a description of a manufactured thing that is distinct from the thing itself.

Description Class Use when there needs to be a description of an item/service, independent of the current existence of any examples of those items or services e.g. design of a unique piece of furniture The piece cannot be seen in Chip’s showroom reduces redundancy/duplication

Description Classes Use when: Deleting instances of things they describe (for example, an item of furniture) results in a loss of information that needs to be maintained, but was incorrectly associated with the deleted thing.

Attributes A logical data value of an object Should be primitive data types such as numbers and Booleans

Guideline Very common data types include Date or DateTime Number Character String (text) Time

Guideline Other common data types include Address Color Geometrics (Point, Rectangle) Phone Number Social Insurance Number UPC SKU Zip or Postal codes Enumerated Types, e.g, Size ={small, large}

Attributes Show attributes when They are suggested by use cases or imply a need to remember information Sale has date and time Store needs a name and address

Guidelines “Represent what may initially be considered a number or string as a new data type class in the domain model if” it is composed of separate sections Phone number; name of a person has operations associated with it, such as parsing or validation Social insurance number

Guidelines “ Represent what may initially be considered a number or string as a new data type class in the domain model if” it: has other attributes Promotional price could have a start (effective) date and end date is a quantity with a unit Payment amount has a unit of currency

Guidelines “Represent what may initially be considered a number or string as a new data type class in the domain model if” it Is an abstraction of one or more types with some of these qualities Item identifier in the sales domain is a generalization of types such as UPC and EAN (European Article Number)