SlideShare una empresa de Scribd logo
1 de 43
Shopping Cart Expedition
Part II – The Logical Model

6 January 2014

2013 copyright Leslie Munday
Universe
Overview






This 2nd part of the Shopping Expedition
demonstrates how the use case model
described in Part I, is detailed as a set of
classes their data and the system
requirements captured by those classes.
The result is a Platform Independent Model
(PIM) of a Shopping Cart system.
The logical model uses the UML notation
and RUP-like process that is described in my
book Analysis Through Pictures.

2013 copyright Leslie Munday Universe

1/7/2014

2
Architecture Diagram

2013 copyright Leslie Munday Universe

1/7/2014

3
Architecture Review


The shopping system communicates with the following
systems:













Store System – to send messages to the store clerk.
Product Database – to obtain information about store
products.
Shopping Cart – to send messages to the shopper.
Shopping Cart – to receive item information.
Customer Database – to communicate information about the
shopper.
Item Detector – to receive information about items leaving
the store.
Cashier – to send information about items in the shopping
cart.
Cashier – to receive information about items that have been
paid for.

2013 copyright Leslie Munday Universe

1/7/2014

4
Use Case Model Review










2013 copyright Leslie Munday Universe

1/7/2014

Assigning Cart To Shopper –
allows a customer to start
their shopping experience.
Releasing Cart From Shopper
– allows the customer to
complete their shopping
experience.
Checking Out Shopper –
allows the customer to remove
items from the store.
Monitoring Shopping Cart –
ensures that the shopping
experience goes as planned.
Shopper Requests Assistance
– allows a customer to to get
help from the store.
5
Identify Objects








The logical model can be derived from the use case
model by adding potential objects (instances of
classes), to use case actions in order to determine
the information that is handled by each use case.
Potential objects are re-organized as the logical
model is built and formalized. The final classes may
look very different.
The following objects are derived for the Shopping
System only.
Similar models may be created for enhancements to
the other systems in the architecture.

2013 copyright Leslie Munday Universe

1/7/2014

6
Assigning Cart To Customer Objects

2013 copyright Leslie Munday Universe

1/7/2014

7
Potential Classes








Reading Card – Creates a system object
named ShopperCard.
Informing Customer They Are Shopping –
Creates a Message to the customer.
Displaying Not A Shopper Message - Creates a
Message to the customer.
Requesting Customer Information From
Customer Database – Creates a Shopper
object.
Displaying Card Read Error - Creates a
Message to the customer.

2013 copyright Leslie Munday Universe

1/7/2014

8
Checking Out Shopper Objects

2013 copyright Leslie Munday Universe

1/7/2014

9
Potential Classes









Informing Customer They May Remove Their Card –
Creates a Message to the customer.
Informing Store Clerk To Assist Shopper – Creates a
Message to the store clerk.
Informing Store Clerk Of Discrepancy – Creates a
Message to the store clerk.
Requesting Total Items From Item Detector – Updates
the Shopping object to verify the cart contents.
Sending Items To Cashier – Creates a list of Items
object.
Sending Message To Insert Card – Creates a Message to
the customer.
Sending Message To Store Display - Creates a Message
to the store clerk.

2013 copyright Leslie Munday Universe

1/7/2014

10
Releasing Cart From Shopper Objects






Informing Shopper That They Have Unpaid Items – Creates a Message to the customer.
Informing Customer Database Shopper No Longer Assigned To Cart – Deletes the
Shopper object.
Sending Cart Usage To Customer Database – Updates the Shopper object.
Displaying Message To Return Cart To Store - Creates a Message to the customer.

2013 copyright Leslie Munday Universe

1/7/2014

11
Shopper Requests Assistance Objects



Sending Message To Store Clerk - Creates a
Message to the store clerk.

2013 copyright Leslie Munday Universe

1/7/2014

12
System Is Monitoring Shopping Cart Objects






Displaying Removed Item – Uses the Items object to display a Message to the
shopper.
Displaying Added Item - Uses the Items object to display a Message to the
shopper.
Displaying Total Cost Of Contents – Uses the Shopping object to display a
Message to the shopper.
Requesting Item Information From Product Database – Updates the Items
object.

2013 copyright Leslie Munday Universe

1/7/2014

13
Build A Class Diagram









From the use case object diagrams, an initial class diagram is
built.
The class diagram captures objects as instances of classes in a
class diagram and shows the relationships between those
classes.
The classes are connected by relationships that show how they
communicate.
Cardinality is added to these relationships to show how many
instances take part in the communication.
Each class has been assigned one or more identifying attributes.
Identifying attributes are propagated across relationships where
appropriate.
Finally, system actors are added to demonstrate external
interfaces (these are not part of the logical model, but added for
consistency checking).

2013 copyright Leslie Munday Universe

1/7/2014

14
Initial Class Diagram

2013 copyright Leslie Munday Universe

1/7/2014

15
Build State Models







Each class is assigned a functional responsibility
from the use case model.
Data associated with functionality is added as
attributes.
The functionality of each instance of a class is
modeled with a state transition diagram (STD).
Each STD begins with a Start state indicating that
the instance does not yet exist.
The instance is created upon some triggering event
occurring.
The instance exists for a period of time and is finally
deleted, ending in a Stop state.

2013 copyright Leslie Munday Universe

1/7/2014

16
ShopperCard






The customer membership card has a card
identifier. This can be used to identify the
shopper.
A card instance is created when it inserted into
the card reader.
It is deleted when it is no longer (or cannot
be) associated with the cart.
The purpose of the ShopperCard is to monitor
when the card is inserted into the cart, identify
the customer that the card belongs to and
recognize when the card is no longer inserted
in the cart.

2013 copyright Leslie Munday Universe

1/7/2014

17
ShopperCard State Diagram

2013 copyright Leslie Munday Universe

1/7/2014

18
ShoppingCart







The shopping cart is identified by an
arbitrary identification number.
The ShoppingCart class is used to maintain
an inventory of available shopping carts in
the store.
A cart is added by the system administrator.
ShoppingCarts are removed by the
administrator, or if the system can no
longer detect the cart.

2013 copyright Leslie Munday Universe

1/7/2014

19
ShoppingCart State Diagram

2013 copyright Leslie Munday Universe

1/7/2014

20
ActiveCart








Each shopper is recognized by a unique customer
identifier in the customer database.
The shopper is either shopping or they are not.
This information can be derived from the card.
Therefore the shopper is associated with an
ActiveCart.
The primary purpose of the ActiveCart class is to
identify when a cart is being used for shopping and
keep the shopper (and store clerk) informed about
their experience.
The ActiveCart monitors the cart through to the
shopper being unassigned from the cart.

2013 copyright Leslie Munday Universe

1/7/2014

21
ActiveCart State Diagram

2013 copyright Leslie Munday Universe

1/7/2014

22
Items






The items class is used to monitor the
scanning of items as they are added to or
removed from an active shopping cart.
A set of items are identified by their
productId.
This class keeps track of how many of each
type of product are in the shopping cart.

2013 copyright Leslie Munday Universe

1/7/2014

23
Items State Diagram

2013 copyright Leslie Munday Universe

1/7/2014

24
Shopping






The shopping class keeps track of items in
the shopping cart.
Its primary purpose is to inform the
shopper of the status of their shopping, by
updating the cart display.
Shopping is created when a cart is assigned
to a store, and deleted when the cart is no
longer assigned to the store.

2013 copyright Leslie Munday Universe

1/7/2014

25
Shopping State Diagram

2013 copyright Leslie Munday Universe

1/7/2014

26
Checkout








The Checkout class monitors the payment for items
in an ActiveCart.
A checkout instance is created when a cart is
detected by the checkout counter and deleted when
the cart is no longer within the checkout area.
Each checkout instance is identified by a unique ID
for the checkout counter, by the cart that arrives at
the checkout and the date and time of arrival.
[The same cart may arrive at the checkout several
times in the same day, and we need to identify each
time this occurs. OTOH, the same cart cannot arrive
at 2 checkouts at the same time.]

2013 copyright Leslie Munday Universe

1/7/2014

27
Checkout State Diagram

2013 copyright Leslie Munday Universe

1/7/2014

28
Message








Messages are identified by the text that
they convey to a display.
A message is for a specific cart or for a
store clerk display or maybe for both.
If the message is for a shopper, the CartId
identified which cart it is sent to.
If the message is for the store clerk, the
cartid identifies which cart the message
came from.

2013 copyright Leslie Munday Universe

1/7/2014

29
Message State Diagram

2013 copyright Leslie Munday Universe

1/7/2014

30
Operations and Events









Each transition is triggered by an event.
Events come from external systems, from other
class instances within the system, or they may be
generated by the class instance as a result of some
action completing within the class.
Each transition triggers an action.
All actions are internal to the class instance and are
captured by the class specification.
The detailed class diagram is updated with class
operations resulting from the state transition
diagrams and the parameters used by those actions.
The Create and Delete actions are omitted from the
diagram.

2013 copyright Leslie Munday Universe

1/7/2014

31
Updated Class Diagram

2013 copyright Leslie Munday Universe

1/7/2014

32
Requirements




Each operation in may be written out as a
set of functional requirements.
The mapping between requirement and
operation may not be exactly 1-1, but
verifying that every operation is covered by
1 or more requirements will ensure that at
least every system function is covered by
the requirements.

2013 copyright Leslie Munday Universe

1/7/2014

33
Message Requirements






SendMessageToDisplay – When (certain events occur)
the Shopping System will send (one of the following
messages) to the (shopping cart of store clerk) display.
[Each event creates a functional requirement, all of
which are captured by this single operation, but in a
real-life situation each should be identified (perhaps
using a table).]
WaitForAcknowledgement – When a message has been
displayed to a shopping cart it will be displayed until an
acknowledgement is received and then the message is
removed.
RemoveMessageFromDisplay – When (after a certain
amount of time or if a user acknowledges the message)
the Shopping System will display TBD (some blank of
logo type display).

2013 copyright Leslie Munday Universe

1/7/2014

34
ShoppingCart Requirements


SendMessageToStoreClerk – When shopper
requests assistance the Shopping System
sends an assistance request message to the
store clerk with shopping cart information
(cart id and may include location in the
store if known).

2013 copyright Leslie Munday Universe

1/7/2014

35
ShopperCard








SendCardIdToCustomerDatabase – When a customer shopping card is
inserted into the card reader and read by the Shopping System it will
send customer information to the customer database with a request
for shopper verification.
ReadCard – When the customer database informs the Shopping
System that a card inserted into the card reader is for a valid shopper
it will send a message to the shopping cart display.
SendMessageToShopper – When a card inserted into the shopping cart
is unable to be read, the Shopping System will send a message to the
shopping cart display that the card is not understood. When a card
inserted into the shopping cart is not recognized as a valid shopper
card, the Shopping System will send a message to the shopping cart
display that the card is not valid for this system.
MonitorCardReader – When a valid shopper card is inserted into the
shopping cart and that card is removed, the Shopping System will
display a message to the shopping cart that the cart is free.

2013 copyright Leslie Munday Universe

1/7/2014

36
ActiveCart Requirements










MonitorCart – When shopper is assigned to a cart and the active
cart is no detected by a checkout the Shopping System will
update the cart display with items and costs of those items.
CheckoutCart – When the active cart is detected by a
checkout, the Shopping System will send the items and their
costs to the checkout with a request to checkout the active cart.
MonitorAssignment – When a cart that has been checked out is
no longer assigned to a shopper is is made available for
assignment to a shopper.
UpdateTotalCartCost – When an item is added to or removed
from the active cart, the total cost of items is updated on the
cart display.
InformStoreClerk – When cart is checking out and the total cost
of items in the cart changes, the store clerk is informed to assist
the shopper. (By now you get the idea that it is the Shopping
System that does this.)

2013 copyright Leslie Munday Universe

1/7/2014

37
Shopping Requirements






MonitorShoppingCart – When a cart is
assigned to the store the Shopping System
continuously keeps track of items in the cart
until it is no longer assigned to the store.
SubtractFromPaymentTotal – When an item is
removed from the cart, the display is updated
to reflect the cost of items in the cart.
AddToPaymentTotal - When an item is added
to the cart, the display is updated to reflect the
cost of items in the cart.

2013 copyright Leslie Munday Universe

1/7/2014

38
Items Requirements


UpdateItemsTotal – When product type is
added to the cart the number of items of
that product type is sent to the shopping
cart display.

2013 copyright Leslie Munday Universe

1/7/2014

39
Checkout Requirements










RequestUserPayForCart – When the active cart is detected by a
checkout, the shopper is sent a message requesting payment
for the items in the cart.
TakePayment – When the shopper confirms that they want to
pay for the items, the checkout is sent information about the
items in the cart.
CheckPaymentAgainstDetectedItems – When payment has been
accepted by the checkout the Shopping System compares the
items paid for against the items at the Item Detector and
informs the store clerk if there is an inconsistency.
WaitForCartToMove – When the cart leaves the Checkout area
the customer is informed that they may remove their card from
the cart.
InformStoreClerk – If the Cashier informs the Shopping System
that payment was not accepted, or if the items detected are not
consistent with the items paid for, the store clerk is informed.

2013 copyright Leslie Munday Universe

1/7/2014

40
Summary











The logical model takes the use case model and assigns it to the architecture which will be
used to host the use cases.
The architecture includes several systems over which the use cases are distributed.
An independent logical model is built for each system.
Potential objects are identified for each action described by the use case.
Potential objects are combined into an initial class model for a specific system (the Shopping
System, for example).
Classes in the model are assigned identifying attributes.
Relationships are defined between classes in terms of cardinality, a direction and foreign key
attributes that are passed between the classes.
The class model is normalized to 3NF (not discussed here).
Each class is modeled by a state transition diagram. The state transition diagram adds
dynamic behavior to the class.
A state transition diagram describes the externally visible properties that an instance of the
class may take.






Each instance begins by not existing (or in the ‘start’ state).
When an instance is required, it is created and the instance initializes into its first observable state.
Once the instance has completed its work, it is deleted, ending in a non-existent (‘stop’) state.

The actions arising from the state transition diagrams are added to the respective classes as
operations, and the class attributes are updated, as necessary, to handle the data required by
those operations.

2013 copyright Leslie Munday Universe

1/7/2014

41
Consistency




Part III will examine the logical model for
consistency with the use case model.
It maps the use case scenarios to the
classes in the logical model to create use
case realizations.

2013 copyright Leslie Munday Universe

1/7/2014

42
Credits And References






Visual Paradigm – used to draw
diagrams, model the business and systems
analysis.
Microsoft Office – Used for publishing this
article.
Analysis Through Pictures http://www.lulu.com/product/ebook/analysi
s-throughpictures/18335194?productTrackingContext
=search_results/search_shelf/center/2

2013 copyright Leslie Munday Universe

1/7/2014

43

Más contenido relacionado

Destacado

Online shopping presentation
Online shopping presentationOnline shopping presentation
Online shopping presentationpobr0702
 
Java Online Job Portal Presentation
Java Online Job Portal PresentationJava Online Job Portal Presentation
Java Online Job Portal Presentationtanmanrai
 
Deals made easy| Online Shopping Kart |Java,Jsp,JDBC
Deals made easy| Online Shopping Kart |Java,Jsp,JDBCDeals made easy| Online Shopping Kart |Java,Jsp,JDBC
Deals made easy| Online Shopping Kart |Java,Jsp,JDBCSaikiranReddy Sama
 
physical and logical data independence
physical and logical data independencephysical and logical data independence
physical and logical data independenceapoorva_upadhyay
 
Online shop system use case diagram report
Online shop system use case diagram reportOnline shop system use case diagram report
Online shop system use case diagram reportMahan Gheib Khah Mashak
 
Online Job Portal ppt presentation
Online Job Portal ppt presentationOnline Job Portal ppt presentation
Online Job Portal ppt presentationPrateek Kulshrestha
 
Online shopping portal: Software Project Plan
Online shopping portal: Software Project PlanOnline shopping portal: Software Project Plan
Online shopping portal: Software Project Planpiyushree nagrale
 
E commerce website Project Presentation
E commerce website Project PresentationE commerce website Project Presentation
E commerce website Project PresentationZT MESH
 
Online job portal
Online job portal Online job portal
Online job portal Aj Maurya
 
Project report on mobile shop management
Project report on mobile shop managementProject report on mobile shop management
Project report on mobile shop managementDinesh Jogdand
 
Student result mamagement
Student result mamagementStudent result mamagement
Student result mamagementMickey
 
Data Mining and Business Intelligence Tools
Data Mining and Business Intelligence ToolsData Mining and Business Intelligence Tools
Data Mining and Business Intelligence ToolsMotaz Saad
 
Job Portal
Job PortalJob Portal
Job Portalbijendra
 
Business Process Design
Business Process DesignBusiness Process Design
Business Process DesignSandy Kemsley
 
online job portal system
online job portal systemonline job portal system
online job portal systemKrishna Ranjan
 
Online shopping cart system file
Online shopping cart system fileOnline shopping cart system file
Online shopping cart system fileSunil Jaiswal
 

Destacado (20)

Online shopping presentation
Online shopping presentationOnline shopping presentation
Online shopping presentation
 
Emall
EmallEmall
Emall
 
Java Online Job Portal Presentation
Java Online Job Portal PresentationJava Online Job Portal Presentation
Java Online Job Portal Presentation
 
Deals made easy| Online Shopping Kart |Java,Jsp,JDBC
Deals made easy| Online Shopping Kart |Java,Jsp,JDBCDeals made easy| Online Shopping Kart |Java,Jsp,JDBC
Deals made easy| Online Shopping Kart |Java,Jsp,JDBC
 
physical and logical data independence
physical and logical data independencephysical and logical data independence
physical and logical data independence
 
Online shop system use case diagram report
Online shop system use case diagram reportOnline shop system use case diagram report
Online shop system use case diagram report
 
Online Job Portal ppt presentation
Online Job Portal ppt presentationOnline Job Portal ppt presentation
Online Job Portal ppt presentation
 
Online food court
Online food courtOnline food court
Online food court
 
Online shopping portal: Software Project Plan
Online shopping portal: Software Project PlanOnline shopping portal: Software Project Plan
Online shopping portal: Software Project Plan
 
E commerce website Project Presentation
E commerce website Project PresentationE commerce website Project Presentation
E commerce website Project Presentation
 
Online job portal
Online job portal Online job portal
Online job portal
 
Use case-diagrams
Use case-diagramsUse case-diagrams
Use case-diagrams
 
Project report on mobile shop management
Project report on mobile shop managementProject report on mobile shop management
Project report on mobile shop management
 
Student result mamagement
Student result mamagementStudent result mamagement
Student result mamagement
 
Onlineshopping
OnlineshoppingOnlineshopping
Onlineshopping
 
Data Mining and Business Intelligence Tools
Data Mining and Business Intelligence ToolsData Mining and Business Intelligence Tools
Data Mining and Business Intelligence Tools
 
Job Portal
Job PortalJob Portal
Job Portal
 
Business Process Design
Business Process DesignBusiness Process Design
Business Process Design
 
online job portal system
online job portal systemonline job portal system
online job portal system
 
Online shopping cart system file
Online shopping cart system fileOnline shopping cart system file
Online shopping cart system file
 

Similar a Analysis Of A Shopping Expedition Part II

Data Modeling in Looker
Data Modeling in LookerData Modeling in Looker
Data Modeling in LookerLooker
 
bigmartsalespridictionproject-220813050638-8e9c4c31 (1).pptx
bigmartsalespridictionproject-220813050638-8e9c4c31 (1).pptxbigmartsalespridictionproject-220813050638-8e9c4c31 (1).pptx
bigmartsalespridictionproject-220813050638-8e9c4c31 (1).pptxHarshavardhan851231
 
smart shopping cart
smart shopping cart smart shopping cart
smart shopping cart Superhii
 
WholesaleNet specific user manual
WholesaleNet specific user manualWholesaleNet specific user manual
WholesaleNet specific user manualibuyer.hk eddie
 
Grocery store-project
Grocery store-projectGrocery store-project
Grocery store-projectKenis Gelani
 
Project Super market billing system
Project Super market billing systemProject Super market billing system
Project Super market billing systemVickey Mahant
 
Whitepaper on Customer Experience Management (CEM) perspectives in Retail (De...
Whitepaper on Customer Experience Management (CEM) perspectives in Retail (De...Whitepaper on Customer Experience Management (CEM) perspectives in Retail (De...
Whitepaper on Customer Experience Management (CEM) perspectives in Retail (De...priyadarshinim.r
 
Use case diagram abc supermarket workshop
Use case diagram abc supermarket workshopUse case diagram abc supermarket workshop
Use case diagram abc supermarket workshopskanduri
 
Flipkart Software requirements specification SRS
Flipkart Software requirements specification SRSFlipkart Software requirements specification SRS
Flipkart Software requirements specification SRSAman Goel
 
Running head TECHNICAL PAPER FINAL PROJECT PLAN1TECHNICAL P.docx
Running head TECHNICAL PAPER FINAL PROJECT PLAN1TECHNICAL P.docxRunning head TECHNICAL PAPER FINAL PROJECT PLAN1TECHNICAL P.docx
Running head TECHNICAL PAPER FINAL PROJECT PLAN1TECHNICAL P.docxtoltonkendal
 
herd behavior consumer behavior
herd behavior consumer behaviorherd behavior consumer behavior
herd behavior consumer behaviorgauravpassy
 
Self pay intro cmpto dec 2 2013
Self pay intro   cmpto dec 2 2013Self pay intro   cmpto dec 2 2013
Self pay intro cmpto dec 2 2013BookNet Canada
 
Scope of e retailing in india
Scope of e   retailing in indiaScope of e   retailing in india
Scope of e retailing in indiaaman gupta
 

Similar a Analysis Of A Shopping Expedition Part II (20)

Data Modeling in Looker
Data Modeling in LookerData Modeling in Looker
Data Modeling in Looker
 
bigmartsalespridictionproject-220813050638-8e9c4c31 (1).pptx
bigmartsalespridictionproject-220813050638-8e9c4c31 (1).pptxbigmartsalespridictionproject-220813050638-8e9c4c31 (1).pptx
bigmartsalespridictionproject-220813050638-8e9c4c31 (1).pptx
 
smart shopping cart
smart shopping cart smart shopping cart
smart shopping cart
 
IPCOM000247132D
IPCOM000247132DIPCOM000247132D
IPCOM000247132D
 
WholesaleNet specific user manual
WholesaleNet specific user manualWholesaleNet specific user manual
WholesaleNet specific user manual
 
Grocery store-project
Grocery store-projectGrocery store-project
Grocery store-project
 
Project Super market billing system
Project Super market billing systemProject Super market billing system
Project Super market billing system
 
Ad4301161166
Ad4301161166Ad4301161166
Ad4301161166
 
Srm issues
Srm issuesSrm issues
Srm issues
 
Whitepaper on Customer Experience Management (CEM) perspectives in Retail (De...
Whitepaper on Customer Experience Management (CEM) perspectives in Retail (De...Whitepaper on Customer Experience Management (CEM) perspectives in Retail (De...
Whitepaper on Customer Experience Management (CEM) perspectives in Retail (De...
 
Use case diagram abc supermarket workshop
Use case diagram abc supermarket workshopUse case diagram abc supermarket workshop
Use case diagram abc supermarket workshop
 
Flipkart Software requirements specification SRS
Flipkart Software requirements specification SRSFlipkart Software requirements specification SRS
Flipkart Software requirements specification SRS
 
Running head TECHNICAL PAPER FINAL PROJECT PLAN1TECHNICAL P.docx
Running head TECHNICAL PAPER FINAL PROJECT PLAN1TECHNICAL P.docxRunning head TECHNICAL PAPER FINAL PROJECT PLAN1TECHNICAL P.docx
Running head TECHNICAL PAPER FINAL PROJECT PLAN1TECHNICAL P.docx
 
herd behavior consumer behavior
herd behavior consumer behaviorherd behavior consumer behavior
herd behavior consumer behavior
 
Etailing introduction
Etailing introductionEtailing introduction
Etailing introduction
 
Self pay intro cmpto dec 2 2013
Self pay intro   cmpto dec 2 2013Self pay intro   cmpto dec 2 2013
Self pay intro cmpto dec 2 2013
 
Scope of e retailing in india
Scope of e   retailing in indiaScope of e   retailing in india
Scope of e retailing in india
 
Ao33238242
Ao33238242Ao33238242
Ao33238242
 
Ao33238242
Ao33238242Ao33238242
Ao33238242
 
report
reportreport
report
 

Más de Leslie Munday

Using Agile In A Quality Driven Environment
Using Agile In A Quality Driven EnvironmentUsing Agile In A Quality Driven Environment
Using Agile In A Quality Driven EnvironmentLeslie Munday
 
Requirements and Traceability With Pictures
Requirements and Traceability With PicturesRequirements and Traceability With Pictures
Requirements and Traceability With PicturesLeslie Munday
 
Using Styles and Properties with MS Word
Using Styles and Properties with MS WordUsing Styles and Properties with MS Word
Using Styles and Properties with MS WordLeslie Munday
 
Use Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling NotationUse Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling NotationLeslie Munday
 
An Analysis Of A Jigsaw Puzzle
An Analysis Of A Jigsaw PuzzleAn Analysis Of A Jigsaw Puzzle
An Analysis Of A Jigsaw PuzzleLeslie Munday
 
Realizing an Application Use Case
Realizing an Application Use CaseRealizing an Application Use Case
Realizing an Application Use CaseLeslie Munday
 
How to Complete a Use Case Templlate with MS Word
How to Complete a Use Case Templlate with MS WordHow to Complete a Use Case Templlate with MS Word
How to Complete a Use Case Templlate with MS WordLeslie Munday
 
Create A Use Case Document with ReqPro
Create A Use Case Document with ReqProCreate A Use Case Document with ReqPro
Create A Use Case Document with ReqProLeslie Munday
 
An Analysis of the BABOK
An Analysis of the BABOKAn Analysis of the BABOK
An Analysis of the BABOKLeslie Munday
 
Requirements management and traceability for IIBA
Requirements management and traceability for IIBARequirements management and traceability for IIBA
Requirements management and traceability for IIBALeslie Munday
 
Use Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling NotationUse Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling NotationLeslie Munday
 
Working With Styles And Properties
Working With Styles And PropertiesWorking With Styles And Properties
Working With Styles And PropertiesLeslie Munday
 
Administrating Req Pro
Administrating Req ProAdministrating Req Pro
Administrating Req ProLeslie Munday
 
Managing Requirement With A Rmp
Managing Requirement With A RmpManaging Requirement With A Rmp
Managing Requirement With A RmpLeslie Munday
 
Capture A Common Vocabulary
Capture A Common VocabularyCapture A Common Vocabulary
Capture A Common VocabularyLeslie Munday
 
Introduction To ReqPro
Introduction To ReqProIntroduction To ReqPro
Introduction To ReqProLeslie Munday
 

Más de Leslie Munday (17)

Using Agile In A Quality Driven Environment
Using Agile In A Quality Driven EnvironmentUsing Agile In A Quality Driven Environment
Using Agile In A Quality Driven Environment
 
Models vs Diagrams
Models vs DiagramsModels vs Diagrams
Models vs Diagrams
 
Requirements and Traceability With Pictures
Requirements and Traceability With PicturesRequirements and Traceability With Pictures
Requirements and Traceability With Pictures
 
Using Styles and Properties with MS Word
Using Styles and Properties with MS WordUsing Styles and Properties with MS Word
Using Styles and Properties with MS Word
 
Use Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling NotationUse Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling Notation
 
An Analysis Of A Jigsaw Puzzle
An Analysis Of A Jigsaw PuzzleAn Analysis Of A Jigsaw Puzzle
An Analysis Of A Jigsaw Puzzle
 
Realizing an Application Use Case
Realizing an Application Use CaseRealizing an Application Use Case
Realizing an Application Use Case
 
How to Complete a Use Case Templlate with MS Word
How to Complete a Use Case Templlate with MS WordHow to Complete a Use Case Templlate with MS Word
How to Complete a Use Case Templlate with MS Word
 
Create A Use Case Document with ReqPro
Create A Use Case Document with ReqProCreate A Use Case Document with ReqPro
Create A Use Case Document with ReqPro
 
An Analysis of the BABOK
An Analysis of the BABOKAn Analysis of the BABOK
An Analysis of the BABOK
 
Requirements management and traceability for IIBA
Requirements management and traceability for IIBARequirements management and traceability for IIBA
Requirements management and traceability for IIBA
 
Use Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling NotationUse Case and Activity Diagrams Modeling Notation
Use Case and Activity Diagrams Modeling Notation
 
Working With Styles And Properties
Working With Styles And PropertiesWorking With Styles And Properties
Working With Styles And Properties
 
Administrating Req Pro
Administrating Req ProAdministrating Req Pro
Administrating Req Pro
 
Managing Requirement With A Rmp
Managing Requirement With A RmpManaging Requirement With A Rmp
Managing Requirement With A Rmp
 
Capture A Common Vocabulary
Capture A Common VocabularyCapture A Common Vocabulary
Capture A Common Vocabulary
 
Introduction To ReqPro
Introduction To ReqProIntroduction To ReqPro
Introduction To ReqPro
 

Último

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 

Último (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

Analysis Of A Shopping Expedition Part II

  • 1. Shopping Cart Expedition Part II – The Logical Model 6 January 2014 2013 copyright Leslie Munday Universe
  • 2. Overview    This 2nd part of the Shopping Expedition demonstrates how the use case model described in Part I, is detailed as a set of classes their data and the system requirements captured by those classes. The result is a Platform Independent Model (PIM) of a Shopping Cart system. The logical model uses the UML notation and RUP-like process that is described in my book Analysis Through Pictures. 2013 copyright Leslie Munday Universe 1/7/2014 2
  • 3. Architecture Diagram 2013 copyright Leslie Munday Universe 1/7/2014 3
  • 4. Architecture Review  The shopping system communicates with the following systems:         Store System – to send messages to the store clerk. Product Database – to obtain information about store products. Shopping Cart – to send messages to the shopper. Shopping Cart – to receive item information. Customer Database – to communicate information about the shopper. Item Detector – to receive information about items leaving the store. Cashier – to send information about items in the shopping cart. Cashier – to receive information about items that have been paid for. 2013 copyright Leslie Munday Universe 1/7/2014 4
  • 5. Use Case Model Review      2013 copyright Leslie Munday Universe 1/7/2014 Assigning Cart To Shopper – allows a customer to start their shopping experience. Releasing Cart From Shopper – allows the customer to complete their shopping experience. Checking Out Shopper – allows the customer to remove items from the store. Monitoring Shopping Cart – ensures that the shopping experience goes as planned. Shopper Requests Assistance – allows a customer to to get help from the store. 5
  • 6. Identify Objects     The logical model can be derived from the use case model by adding potential objects (instances of classes), to use case actions in order to determine the information that is handled by each use case. Potential objects are re-organized as the logical model is built and formalized. The final classes may look very different. The following objects are derived for the Shopping System only. Similar models may be created for enhancements to the other systems in the architecture. 2013 copyright Leslie Munday Universe 1/7/2014 6
  • 7. Assigning Cart To Customer Objects 2013 copyright Leslie Munday Universe 1/7/2014 7
  • 8. Potential Classes      Reading Card – Creates a system object named ShopperCard. Informing Customer They Are Shopping – Creates a Message to the customer. Displaying Not A Shopper Message - Creates a Message to the customer. Requesting Customer Information From Customer Database – Creates a Shopper object. Displaying Card Read Error - Creates a Message to the customer. 2013 copyright Leslie Munday Universe 1/7/2014 8
  • 9. Checking Out Shopper Objects 2013 copyright Leslie Munday Universe 1/7/2014 9
  • 10. Potential Classes        Informing Customer They May Remove Their Card – Creates a Message to the customer. Informing Store Clerk To Assist Shopper – Creates a Message to the store clerk. Informing Store Clerk Of Discrepancy – Creates a Message to the store clerk. Requesting Total Items From Item Detector – Updates the Shopping object to verify the cart contents. Sending Items To Cashier – Creates a list of Items object. Sending Message To Insert Card – Creates a Message to the customer. Sending Message To Store Display - Creates a Message to the store clerk. 2013 copyright Leslie Munday Universe 1/7/2014 10
  • 11. Releasing Cart From Shopper Objects     Informing Shopper That They Have Unpaid Items – Creates a Message to the customer. Informing Customer Database Shopper No Longer Assigned To Cart – Deletes the Shopper object. Sending Cart Usage To Customer Database – Updates the Shopper object. Displaying Message To Return Cart To Store - Creates a Message to the customer. 2013 copyright Leslie Munday Universe 1/7/2014 11
  • 12. Shopper Requests Assistance Objects  Sending Message To Store Clerk - Creates a Message to the store clerk. 2013 copyright Leslie Munday Universe 1/7/2014 12
  • 13. System Is Monitoring Shopping Cart Objects     Displaying Removed Item – Uses the Items object to display a Message to the shopper. Displaying Added Item - Uses the Items object to display a Message to the shopper. Displaying Total Cost Of Contents – Uses the Shopping object to display a Message to the shopper. Requesting Item Information From Product Database – Updates the Items object. 2013 copyright Leslie Munday Universe 1/7/2014 13
  • 14. Build A Class Diagram        From the use case object diagrams, an initial class diagram is built. The class diagram captures objects as instances of classes in a class diagram and shows the relationships between those classes. The classes are connected by relationships that show how they communicate. Cardinality is added to these relationships to show how many instances take part in the communication. Each class has been assigned one or more identifying attributes. Identifying attributes are propagated across relationships where appropriate. Finally, system actors are added to demonstrate external interfaces (these are not part of the logical model, but added for consistency checking). 2013 copyright Leslie Munday Universe 1/7/2014 14
  • 15. Initial Class Diagram 2013 copyright Leslie Munday Universe 1/7/2014 15
  • 16. Build State Models       Each class is assigned a functional responsibility from the use case model. Data associated with functionality is added as attributes. The functionality of each instance of a class is modeled with a state transition diagram (STD). Each STD begins with a Start state indicating that the instance does not yet exist. The instance is created upon some triggering event occurring. The instance exists for a period of time and is finally deleted, ending in a Stop state. 2013 copyright Leslie Munday Universe 1/7/2014 16
  • 17. ShopperCard     The customer membership card has a card identifier. This can be used to identify the shopper. A card instance is created when it inserted into the card reader. It is deleted when it is no longer (or cannot be) associated with the cart. The purpose of the ShopperCard is to monitor when the card is inserted into the cart, identify the customer that the card belongs to and recognize when the card is no longer inserted in the cart. 2013 copyright Leslie Munday Universe 1/7/2014 17
  • 18. ShopperCard State Diagram 2013 copyright Leslie Munday Universe 1/7/2014 18
  • 19. ShoppingCart     The shopping cart is identified by an arbitrary identification number. The ShoppingCart class is used to maintain an inventory of available shopping carts in the store. A cart is added by the system administrator. ShoppingCarts are removed by the administrator, or if the system can no longer detect the cart. 2013 copyright Leslie Munday Universe 1/7/2014 19
  • 20. ShoppingCart State Diagram 2013 copyright Leslie Munday Universe 1/7/2014 20
  • 21. ActiveCart      Each shopper is recognized by a unique customer identifier in the customer database. The shopper is either shopping or they are not. This information can be derived from the card. Therefore the shopper is associated with an ActiveCart. The primary purpose of the ActiveCart class is to identify when a cart is being used for shopping and keep the shopper (and store clerk) informed about their experience. The ActiveCart monitors the cart through to the shopper being unassigned from the cart. 2013 copyright Leslie Munday Universe 1/7/2014 21
  • 22. ActiveCart State Diagram 2013 copyright Leslie Munday Universe 1/7/2014 22
  • 23. Items    The items class is used to monitor the scanning of items as they are added to or removed from an active shopping cart. A set of items are identified by their productId. This class keeps track of how many of each type of product are in the shopping cart. 2013 copyright Leslie Munday Universe 1/7/2014 23
  • 24. Items State Diagram 2013 copyright Leslie Munday Universe 1/7/2014 24
  • 25. Shopping    The shopping class keeps track of items in the shopping cart. Its primary purpose is to inform the shopper of the status of their shopping, by updating the cart display. Shopping is created when a cart is assigned to a store, and deleted when the cart is no longer assigned to the store. 2013 copyright Leslie Munday Universe 1/7/2014 25
  • 26. Shopping State Diagram 2013 copyright Leslie Munday Universe 1/7/2014 26
  • 27. Checkout     The Checkout class monitors the payment for items in an ActiveCart. A checkout instance is created when a cart is detected by the checkout counter and deleted when the cart is no longer within the checkout area. Each checkout instance is identified by a unique ID for the checkout counter, by the cart that arrives at the checkout and the date and time of arrival. [The same cart may arrive at the checkout several times in the same day, and we need to identify each time this occurs. OTOH, the same cart cannot arrive at 2 checkouts at the same time.] 2013 copyright Leslie Munday Universe 1/7/2014 27
  • 28. Checkout State Diagram 2013 copyright Leslie Munday Universe 1/7/2014 28
  • 29. Message     Messages are identified by the text that they convey to a display. A message is for a specific cart or for a store clerk display or maybe for both. If the message is for a shopper, the CartId identified which cart it is sent to. If the message is for the store clerk, the cartid identifies which cart the message came from. 2013 copyright Leslie Munday Universe 1/7/2014 29
  • 30. Message State Diagram 2013 copyright Leslie Munday Universe 1/7/2014 30
  • 31. Operations and Events       Each transition is triggered by an event. Events come from external systems, from other class instances within the system, or they may be generated by the class instance as a result of some action completing within the class. Each transition triggers an action. All actions are internal to the class instance and are captured by the class specification. The detailed class diagram is updated with class operations resulting from the state transition diagrams and the parameters used by those actions. The Create and Delete actions are omitted from the diagram. 2013 copyright Leslie Munday Universe 1/7/2014 31
  • 32. Updated Class Diagram 2013 copyright Leslie Munday Universe 1/7/2014 32
  • 33. Requirements   Each operation in may be written out as a set of functional requirements. The mapping between requirement and operation may not be exactly 1-1, but verifying that every operation is covered by 1 or more requirements will ensure that at least every system function is covered by the requirements. 2013 copyright Leslie Munday Universe 1/7/2014 33
  • 34. Message Requirements    SendMessageToDisplay – When (certain events occur) the Shopping System will send (one of the following messages) to the (shopping cart of store clerk) display. [Each event creates a functional requirement, all of which are captured by this single operation, but in a real-life situation each should be identified (perhaps using a table).] WaitForAcknowledgement – When a message has been displayed to a shopping cart it will be displayed until an acknowledgement is received and then the message is removed. RemoveMessageFromDisplay – When (after a certain amount of time or if a user acknowledges the message) the Shopping System will display TBD (some blank of logo type display). 2013 copyright Leslie Munday Universe 1/7/2014 34
  • 35. ShoppingCart Requirements  SendMessageToStoreClerk – When shopper requests assistance the Shopping System sends an assistance request message to the store clerk with shopping cart information (cart id and may include location in the store if known). 2013 copyright Leslie Munday Universe 1/7/2014 35
  • 36. ShopperCard     SendCardIdToCustomerDatabase – When a customer shopping card is inserted into the card reader and read by the Shopping System it will send customer information to the customer database with a request for shopper verification. ReadCard – When the customer database informs the Shopping System that a card inserted into the card reader is for a valid shopper it will send a message to the shopping cart display. SendMessageToShopper – When a card inserted into the shopping cart is unable to be read, the Shopping System will send a message to the shopping cart display that the card is not understood. When a card inserted into the shopping cart is not recognized as a valid shopper card, the Shopping System will send a message to the shopping cart display that the card is not valid for this system. MonitorCardReader – When a valid shopper card is inserted into the shopping cart and that card is removed, the Shopping System will display a message to the shopping cart that the cart is free. 2013 copyright Leslie Munday Universe 1/7/2014 36
  • 37. ActiveCart Requirements      MonitorCart – When shopper is assigned to a cart and the active cart is no detected by a checkout the Shopping System will update the cart display with items and costs of those items. CheckoutCart – When the active cart is detected by a checkout, the Shopping System will send the items and their costs to the checkout with a request to checkout the active cart. MonitorAssignment – When a cart that has been checked out is no longer assigned to a shopper is is made available for assignment to a shopper. UpdateTotalCartCost – When an item is added to or removed from the active cart, the total cost of items is updated on the cart display. InformStoreClerk – When cart is checking out and the total cost of items in the cart changes, the store clerk is informed to assist the shopper. (By now you get the idea that it is the Shopping System that does this.) 2013 copyright Leslie Munday Universe 1/7/2014 37
  • 38. Shopping Requirements    MonitorShoppingCart – When a cart is assigned to the store the Shopping System continuously keeps track of items in the cart until it is no longer assigned to the store. SubtractFromPaymentTotal – When an item is removed from the cart, the display is updated to reflect the cost of items in the cart. AddToPaymentTotal - When an item is added to the cart, the display is updated to reflect the cost of items in the cart. 2013 copyright Leslie Munday Universe 1/7/2014 38
  • 39. Items Requirements  UpdateItemsTotal – When product type is added to the cart the number of items of that product type is sent to the shopping cart display. 2013 copyright Leslie Munday Universe 1/7/2014 39
  • 40. Checkout Requirements      RequestUserPayForCart – When the active cart is detected by a checkout, the shopper is sent a message requesting payment for the items in the cart. TakePayment – When the shopper confirms that they want to pay for the items, the checkout is sent information about the items in the cart. CheckPaymentAgainstDetectedItems – When payment has been accepted by the checkout the Shopping System compares the items paid for against the items at the Item Detector and informs the store clerk if there is an inconsistency. WaitForCartToMove – When the cart leaves the Checkout area the customer is informed that they may remove their card from the cart. InformStoreClerk – If the Cashier informs the Shopping System that payment was not accepted, or if the items detected are not consistent with the items paid for, the store clerk is informed. 2013 copyright Leslie Munday Universe 1/7/2014 40
  • 41. Summary           The logical model takes the use case model and assigns it to the architecture which will be used to host the use cases. The architecture includes several systems over which the use cases are distributed. An independent logical model is built for each system. Potential objects are identified for each action described by the use case. Potential objects are combined into an initial class model for a specific system (the Shopping System, for example). Classes in the model are assigned identifying attributes. Relationships are defined between classes in terms of cardinality, a direction and foreign key attributes that are passed between the classes. The class model is normalized to 3NF (not discussed here). Each class is modeled by a state transition diagram. The state transition diagram adds dynamic behavior to the class. A state transition diagram describes the externally visible properties that an instance of the class may take.     Each instance begins by not existing (or in the ‘start’ state). When an instance is required, it is created and the instance initializes into its first observable state. Once the instance has completed its work, it is deleted, ending in a non-existent (‘stop’) state. The actions arising from the state transition diagrams are added to the respective classes as operations, and the class attributes are updated, as necessary, to handle the data required by those operations. 2013 copyright Leslie Munday Universe 1/7/2014 41
  • 42. Consistency   Part III will examine the logical model for consistency with the use case model. It maps the use case scenarios to the classes in the logical model to create use case realizations. 2013 copyright Leslie Munday Universe 1/7/2014 42
  • 43. Credits And References    Visual Paradigm – used to draw diagrams, model the business and systems analysis. Microsoft Office – Used for publishing this article. Analysis Through Pictures http://www.lulu.com/product/ebook/analysi s-throughpictures/18335194?productTrackingContext =search_results/search_shelf/center/2 2013 copyright Leslie Munday Universe 1/7/2014 43