Domain Model Classes and Objects Association Structure Requirement Specification Domain Model.

Slides:



Advertisements
Similar presentations
Banking Business Scenario
Advertisements

Exercise 1 Consider the ER diagram below. Assume that an employee may work in up to two departments or may not be assigned to any department. Assume that.
And so to Code. Forward, Reverse, and Round-Trip Engineering Forward Engineering Reverse Engineering Round-Trip Engineering.
Jan 16, Ron McFadyen1 Ch 9. Use-case model: drawing System Sequence Diagrams Iteration 1: a simple cash-only success scenario of Process Sale.
Together and UML Greg Johnson CSE 230 – Software Engineering Spring 2007.
Introduction To System Analysis and Design
Requirements Analysis 1 Use Cases -> Class Diagrams Moving from the user towards the system.
Chapter 14 (Web): Object-Oriented Data Modeling
Lecture Eleven Entity-Relationship Modelling
Systems Analysis and Design in a Changing World, 6th Edition
Modelling classes Drawing a Class Diagram. Class diagram First pick the classes –Choose relevant nouns, which have attributes and operations. Find the.
Chapter 14: Object-Oriented Data Modeling
Chapter 9 Domain Models. Domain Model in UML Class Diagram Notation A “visual dictionary”
Database Systems Lecture # 7 8 th Feb, Conceptual and Logical Design Person buys Product name pricenamessn Conceptual Model: Relational Model: (plus.
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Introduction To System Analysis and Design
Object-Oriented Analysis and Design An Introduction.
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.
Jan 21, Ron McFadyen1 Ch 10. Domain Model: Visualizing Concepts Domain model illustrated with a class diagram (with no operations defined)
Distributed Java Programming Distributed Java Programming Class #2 August 22, 2002.
A little bit of UML Csaba Veres. UML A de facto standard for OO analysis and design Many components class diagrams use cases interaction diagrams...
Conceptual Modeling Modeling the Problem Domain. Conceptual Modeling Decompose problem space into comprehensible concepts. Clarify the terminology or.
Chapter 9 Applying UML and Patterns -Craig Larman
Domain Model—Part 3: Associations, Multiplicity and Attribute- Text Notation.
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.
CS 3630 Database Design and Implementation. Assignment 1 2 What is 3630?
UML Class Diagrams 1 These lecture slides are copyright (C) Marty Stepp, They may not be rehosted, sold, or modified without expressed permission.
SYS466: Analysis and Design Using OO Models Domain Class Diagram.
Domain Model Classes and Objects Association Structure Requirement Specification Domain Model.
2007ACS-3913 Ron McFadyen1 Class Diagram See Schaum’s UML Outline, especially chapters 4, 5, 6, 7.
FEN NOEA/IT - Databases/ODB1 ODB – Object DataBases Object-Oriented – Fundamental Concepts UML and EE/R OO and Relational Databases Introduction.
Design Model Lecture p6 T120B pavasario sem.
Domain Classes – Part 1.  Analyze Requirements as per Use Case Model  Domain Model (Conceptual Class Diagram)  Interaction (Sequence) Diagrams  System.
January Ron McFadyen1 Domain Models Domain Model: a visual representation of conceptual classes or real-world objects in a domain of interest.
1 Database Systems Entity Relationship (E-R) Modeling.
Chapter 16 UML Class Diagrams 1CS6359 Fall 2012 John Cole.
Larman chapter 101 Domain Model: Visualizing concepts Larman chapter 10.
FEN Mapping from Class Diagram (Domain Model) to Relational Model Table Design.
Lecture 5 Entity Relationship Modeling
TK2023 Object-Oriented Software Engineering CHAPTER 11 CLASS DIAGRAMS.
Kyung Hee University Class Diagramming Notation OOSD 담당조교 석사과정 이정환.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
BTS430 Systems Analysis and Design using UML Design Class Diagrams (ref=chapter 16 of Applying UML and Patterns)
Class Diagrams Revisited. Parameterized Classes Parameterized Classes - are used to represent relationships between templates.
Introduction to Unified Modeling Language (UML) By Rick Mercer with help from The Unified Modeling Language User Guide, Grady Booch, James Rumbaugh, Ivar.
DOMAIN CLASSES – PART 1 BTS430 Systems Analysis and Design using UML.
Elaboration popo.
Unified Modeling Language (UML)
Chapter 9 Domain Models.
Entity-Relationship Model
CS 3630 Database Design and Implementation
UML Class Diagrams (more notation)
Chapter 16 UML Class Diagrams.
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Chapter 5: Object Oriented Analysis and Design
Entity-Relationship Model
ER MODEL Lecture 3.
Lecture3: Data Modeling Using the Entity-Relationship Model.
Object Oriented Analysis and Design
Lec 3: Object-Oriented Data Modeling
Entity – Relationship Model
SYS466 Domain Classes – Part 1.
Database Design Chapters 17 and 18.
Software Design Lecture : 15.
Chapter 11: Class Diagram
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Entity Relation Model Tingting Zhang.
Chapter 11: Class Diagram
Presentation transcript:

Domain Model Classes and Objects Association Structure Requirement Specification Domain Model

Information Need in the IT System Information need are found by analysing the problem- domain for the IT system Ask the question: What information should be registered by the IT system ? The building blocks are objects binds requirements, design and program together Result: A model showing the problem-domain – we call it Domain Model ” The most important model in OO analysis” 2

Requirement Functional Use case: find customer 1.A sales person wants to find information about customer 2.The sales person types the customers id 3.The system returns information about the customer Non functional The system has to be user friendly Clarify information Customer: id, name, address Objects binds requirements, design and programming together 3 3 Design Design of architecture Design of GUI Design of classes Design database Implementation Writing the code public class Customer { private int id, private String name; private String address; public Customer(int id) { this.id = id; } public String getName() { return name; } ….. Test idnameaddress Customer Domain object of class Customer

Domain model A domain model is the visual representation of conceptual classes We illustrate it by drawing a UML class diagram: 1.Domain objects or conceptual classes 2.Associations between the objects 3.Each objects attributes A conceptual class is described by: name (symbol) Definition – the purpose in problem domain (intension) Examples given on objects created from class (extension) 4

5 Example of a conceptual class Class: Definition: The customer class is used to describe the company's customers. An example: Hans Andersen, Eventyrvej 2, 5000 Odense, phone , …… Attributes: Name, adress, phone, Customer Name Adress Phone Customer

Requirement specification. 6 Try to create this one in UMLet

"Multiplicity" - Diversity or cardinality 7

Association Relation between a number of objects. Association A customer can have more orders at once – an order belongs to one customer only. Drawn as a simple line like this: 8 UML Association with multiplicity UML class

Associations names 9

Multiple associations 10

A pattern in a domain model Called the agreement pattern A customer makes an agreement with regard to some item Car rental Customer, rentcontract, the car Education student, class, subjects Library borrower, loan, book copy 11

Relateringsmønstret (relational pattern) En associering har selv nogle egenskaber (data) 12 Den nederste er den vi typisk anvender. Er også bedre at bruge i forbindelse med databaser

Aggregation Used when there is a stronger relation between two classes than association can express Here we have the Item-Descriptor pattern 13

Generalisation Used when there are some common attributes shared by several classes (it is implemented as inheritance) 14

Domain model: Role Pattern I 15 Generalization: A Person is either a Student or a Lecturer

Domain model: Role Pattern II 16 Role pattern: A Person can be Student as well as Lecturer at the same time

Composite Pattern – the problem A major building market 1.Items has different measurement units -> generalisation 2.An item can be composed of other items i.e. a kitchen -> reflexive aggregation (recursion) 17 How to model the fact that an item can be composed of other items with different measurement units?

Composite pattern General implementation and example Problem How to treat composite objects the same way as atomic (simple) objects? Solution Define classes for both composite and atomic (simple) objects so they implement the same interface 18