![Page 1: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/1.jpg)
Last lecture
![Page 2: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/2.jpg)
What is a Use Case Use cases are stories (scenarios) of how actors
use (interact with) the system to fulfill his goal.
• Examples• Process sale
• Place Order
• Loan book
![Page 3: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/3.jpg)
How to document use cases ? Verbal description
oDescribes the content of each use case
oTypically uses a pre-defined template
Use Case diagrams
oGive an overview of visible use scenarios in the system
oDescribes what actors that interact with the system
oDescribes any linkages between use cases
![Page 4: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/4.jpg)
Defining system´s scope
Boundary of the system(1)
Actor (2)
Use case(3)
Linkage between use cases(4)
![Page 5: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/5.jpg)
Who are Actors – stakeholders ?
Three kind of Actors - StakeholdersPrimary actor has user goals fulfilled through using
services. (e.g., the cashier).
Supporting actor provides a service (e.g., the automated payment authorization service ). Often a computer system, but could be an organization or person (external interfaces)
(e.g. : tax calculation )Offstage actor has an interest in the behavior of the use case,
but is not primary or supporting (e.g., a government tax agency).
![Page 6: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/6.jpg)
How to find Use Cases ?
6
As a primary actor , what are your goals ?
I should be able to ……..I should be able to ……..I should be able to ……..I should be able to ……..I should be able to ……..I should be able to ……..
![Page 7: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/7.jpg)
04/19/23 CPSC-4360-01, CPSC-5360-01, Lecture 3
7
Use case example – Restaurant case
UC1 : Record Booking
Receptionist enters date of requested reservation; System displays bookings for that date; There is a suitable table available: Receptionist enters
details (customer’s name, phone number, time of booking, number of covers, table number);
System records and displays new booking.
![Page 8: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/8.jpg)
Use case diagram- POS systemNextGen
Manage Users
. . .
Cashier
SystemAdministrator
actor
use case
communicationsystem boundary
Handle ReturnsPayment
AuthorizationService
«actor»Tax Calculator
«actor»Accounting
System
alternatenotation fora computersystem actor
Process Rental
«actor»HR System
Cash In
Process Sale
«actor»Sales Activity
System
Manage Security
Analyze Activity
Actor (person)
use case
Actor (system)
![Page 9: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/9.jpg)
04/19/23 9
Use case rearrangement: Restaurant case
System
![Page 10: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/10.jpg)
Adding a Use Case Extension
Customer
Rent Automobile
Book Trip
Agent
«extend»Customer requestsa rental auto
![Page 11: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/11.jpg)
Cancel Trip Use Case Diagram
Customer
Cancel Trip
Agent
Cancel HotelCancel Flight
«include»«include»
![Page 12: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/12.jpg)
Domain Model
Chapter 9
Applying UML and Patterns
-Craig Larman
![Page 13: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/13.jpg)
Introduction
Reminder: Use cases are not object-oriented
requirement analysis , but they emphasize an
activity view (illustrate user activities on the system)
A domain model is the most important and
classic-model in Object Oriented Analysis
13
![Page 14: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/14.jpg)
Your attention please
14
![Page 15: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/15.jpg)
What is a Domain Model? Problem domain : area (scope)of application that
needed to be investigated to solve the problem
Domain Model : Illustrates meaningful conceptual
objects in problem domain.
So domain model are conceptual objects of the area
of application to be inestigated
![Page 16: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/16.jpg)
Domain model representation? A domain model is a visual representation of real world
concepts (real-situation objects ), that could be : idea, thing , event or object…..etc . Business objects - represent things that are
manipulated in the business e.g. Order.Real world objects – things that the business keeps
track of e.g. Contact , book.Events that transpire - e.g. sale, loan and payment.
Not of software objects Is part of business Model artifact (document)
![Page 17: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/17.jpg)
Domain Model may contain :
Domain objects (conceptual classes)
Attributes of domain objects
Associations between domain objects
Multiplicity
17
Domain model representation?
![Page 18: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/18.jpg)
18
Domain Model - UML Notation
Illustrated using a set of domain objects (conceptual classes) with no operations ( no responsibility assigned yet , this will be assigned during design).
![Page 19: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/19.jpg)
A Domain Model is not a Software document
Sale
Date
Time
Print()
Object responsibilities is not part of the domain model. (But to consider during Design)
![Page 20: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/20.jpg)
Symbol, intension and extension.
Sale
datetime
concept's symbol
"A sale represents the event of a purchase transaction. It has a date and time."
concept's intension
sale-1
sale-3sale-2
sale-4
concept's extension
Fig 9.5
All the examples of sales called instances
![Page 21: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/21.jpg)
Question : Why create Domain model ?
Answer : Get inspiration to create software classes
We assign
responsibilities
during design
![Page 22: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/22.jpg)
How to find these conceptual classes and
attributes ?
![Page 23: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/23.jpg)
23
Method1: Noun Phrase Identification
Identify Nouns and Noun Phrases in textual
descriptions of the domain that could be :
• The fully dressed Use Cases
• The problem definition.
But not strictly a mechanical process. Why ?
• Words may be ambiguous ( such as : System )
• Different phrases may represent the same concepts.
![Page 24: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/24.jpg)
Main Success Scenario (or Basic Flow):
• 1. Customer arrives at POS checkout with goods and/or services to purchase.
• 2. Cashier starts a new sale.
• 3. Cashier enters item identifier.
• 4. System records sale line item and presents item description, price, and running total.
• Price calculated from a set of price rules.
• Cashier repeats steps 3-4 until indicates done.
• 5. System presents total with taxes calculated.
• 6. Cashier tells Customer the total, and asks for payment.
• 7. Customer pays and System handles payment.
24
![Page 25: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/25.jpg)
8. System logs completed sale and sends sale and payment information to the external
accounting system (for accounting and commissions) and Inventory system (to update inventory).
9. System presents receipt.
10. Customer leaves with receipt and goods (if any).
Extensions (or alternative Flows)
7a. Paying by cash:
• 1. Cashier enters the cash amount tendered.
• 2. System presents the balance due, and releases the cash drawer.
• 3. Cashier deposits cash tendered and returns balance in cash to Customer.
• 4. System records the cash payment.
25
![Page 26: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/26.jpg)
Fig. 9.7
StoreRegister SaleItem
CashPayment
SalesLineItem
Cashier Customer
ProductCatalog
ProductDescription
Ledger
Important : There is no such things as a correct list . Brainstorm what you consider noteworthy to be a candidate. But in general , different modelers will find similar lists.
![Page 27: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/27.jpg)
Identification of conceptual classes
27
• Identify candidate conceptual classes
• Go through them and : Exclude irrelevant features and duplications
Do not add things that are outside the scope
( outside the application area of investigation)
![Page 28: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/28.jpg)
28
Method2 : By Category List (read p 140-141)
Common Candidates for classes include:
• Descriptions , Roles , Places , Transactions
• Containers , Systems , abstract nouns , Rules
• Organizations, Events, Processes, catalogs , Records , services.
![Page 29: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/29.jpg)
Suppose all the items (ObjectBurgers) are sold out and then deleted.Someone ask you : How much do ObjectBurgers cost ?
When to model Specification/Description Conceptual Classes?
![Page 30: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/30.jpg)
Item
descriptionpriceserial numberitemID
ProductDescription
descriptionpriceitemID
Item
serial number
Describes Better
Worse
1 *
How to model Specification/Description
• ProductDescription is a class that records information about an item
• It avoids duplication of recording the descriptive information with each
instance of the item.
![Page 31: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/31.jpg)
Attributes
A logical data value of an object. Imply a need to remember information.
• Sale needs a dateTime attributte
• Store needs a name and address
• Cashier needs an ID
Use case scenarios are examined to discover also attributes
31
![Page 32: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/32.jpg)
Fig. 9.19
Sale
dateTime/ total : Money
attributes
derived attribute
![Page 33: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/33.jpg)
Fig. 9.20
Sale
- dateTime : Date- / total : Money
Private visibility attributes
Math
+ pi : Real = 3.14 {readOnly}
Public visibility readonly attribute with initialization
Person
firstNamemiddleName : [0..1]lastName
Optional value
![Page 34: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/34.jpg)
34
A Common Mistake when modeling the domain- Classes or Attributes?
RuleIf we do not think of a thing as a number or text in the real world, then it is probably a conceptual class.If it takes up space, then it is likely a conceptual class.
Examples:Is a store an attribute of a Sale ? Is a destination an attribute of a flight ?
![Page 35: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/35.jpg)
Represent waht may be considered as primitive data type as a non primitive class if :
• It is composed of separate sections Phone number ,name of person
• There are operations usually associated with it, such as validation
Social security number
• It has other attributes Promotional price could have a strat date and end date
• It has a quantity with a unit Payment of an amount with currency
35
![Page 36: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/36.jpg)
Should the “ItemID” class be shown as a separate class ?
It depends on how the domain model is being used.
OK
OK
ProductDescription
ProductDescription
itemId : ItemID
1Store
Store
address : Address
11 1
ItemID
idmanufacturerCodecountryCode
Address
street1street2cityName...
Fig. 9.24 ItemID are primitive types(number, boolean, character, string…etc)
ItemID is a new type with its own attributes
![Page 37: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/37.jpg)
Case study : Restaurant part (1)
37
![Page 38: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/38.jpg)
How to find these associations and multiplicities?
![Page 39: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/39.jpg)
Fig. 9.12
SaleRegister Records-current 0..11
association name multiplicity
-"reading direction arrow"-it has no meaning except to indicate direction of reading the association label-often excluded
Association:
Relationship between classes (more precisely, between instances of those
classes)indicating some meaningful and interesting connection
![Page 40: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/40.jpg)
Common association list
A is a physical part of B .
• Wing - Airplane
A is a logical part of B
• SalesLineItem - Sale
A physical contained in B
• Register-Sale
40
![Page 41: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/41.jpg)
Common association list
A is a logical contained in B
• ItemDescription - Catalog
A is a description of B .
• ItemDescription - Item
A is a member of B
• Cashier – Store
A uses or manage B
• Cashier-Register41
![Page 42: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/42.jpg)
Common association list
A is recorded in B
• SaleI-Register
A is an organization subunit of B .
• Departement - Store
A communicate with B
• Customer - Cashier
42
![Page 43: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/43.jpg)
Common association list
A is related to a transaction B
• Customer - Payment
A is a transaction related to another transaction B .
• Payment - Sale
A is owned by B
• Register - Store
A is an event related to B
• Sale- Customer43
![Page 44: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/44.jpg)
High priority association
• A is a physical or logical part of B
• A is physically or logically contained in/on B
• A is recorded in B
NB:
• Avoid showing redundant or derivable associations
• Do not overwhelm the domain model with associations not strongly
required44
![Page 45: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/45.jpg)
Association or attribute ?
Cashier
namecurrentRegister
Cashier
name
Register
number
Uses
Worse
Better
not a "data type" attribute
1 1
Most attribute type should be “primitive” data type, such as: numbers , string or boolean (true or false)
Attribute should not be a complex domain concept(Sale , Airport) CurrentRegister is of type “Register”, so expressed with an association
Most attribute type should be “primitive” data type, such as: numbers , string or boolean (true or false)
Attribute should not be a complex domain concept(Sale , Airport) CurrentRegister is of type “Register”, so expressed with an association
![Page 46: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/46.jpg)
Flight
Flight
destinationWorse
BetterFlies-to Airport1 1
destination is a complex concept
A destination airport is not a string, it is a complex thing that occupies many square kilometers of space. So “Airport” should be related to “Flight” via an association , not with attribute
Association or attribute ?
![Page 47: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/47.jpg)
ItemStore Stocks
*
multiplicity of the role
1
“many” ( 0 or more )
Multiplicity indicates how many instances can be validly associated with another instance, at a particular moment, rather than over a span of time.
Example : monogamy
Multiplicity
![Page 48: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/48.jpg)
ItemStore Stocks
*
multiplicity of the role
1
“many” ( 0 or more )
Ask these 2 questions : 1 store may stock how many item ?
1 item may be stocked in how many stores ?
How to determine multiplicity ?
![Page 49: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/49.jpg)
Person Companyworks for
Association Name
0..* 1
How to determine multiplicity ?
![Page 50: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/50.jpg)
zero or more; "many"
one or more
one to 40
exactly 5
T
T
T
T
*
1..*
1..40
5
T3, 5, 8
exactly 3, 5, or 8
Multiplicity
![Page 51: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/51.jpg)
How to create a domain model
Identify candidate conceptual classes Go through them
• Exclude irrelevant features and duplications
• Do not add things that are outside the scope Draw them as classes in a UML class diagram Add associations necessary to record the relationship
that must be retained Add attributes necessary for information to be
preserved
![Page 52: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/52.jpg)
But remember
There is no such thing as a single correct domain
model. All models are approximations of the domain
we are attempting to understand.
We incrementally evolve a domain model over
several iterations on attempts to capture all possible
conceptual classes and relationsships.
![Page 53: 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](https://reader036.vdocument.in/reader036/viewer/2022062422/56649e885503460f94b8d3b3/html5/thumbnails/53.jpg)
Case study : Restaurant part (2)
53