CPET 565/CPET 499 Mobile Computing Systems

Lecture Note

UML Diagrams

2012/11/19

 

Use Cases (Inventory Tracking Example)

 

 

 

 

 

 

 

 

 

Use Cases (ATM Machine Example)

 

 

 

Use Case Specification (An Example)

·         Use Case Name: Withdraw Cash

·         Use Case Purpose: This use case provides the function for a customer to withdraw cash from an ATM machine.

·         Optimistic flow:

a)      Customer slides the bank card, enters the pin#.

b)      Customer chooses either Checking account or Saving account for withdrawing.

c)      Customer makes a choice, enter the desired amount, and the ATM machine checks if the fund is sufficient for withdrawing.

d)       ATM counts and dispenses the bills.

e)      ATM asks if a printed receipt is needed.

f)       ATM exits and redisplay welcome message.

·         Pragmatic flows

o   Conditions triggering alternative flow

§  Condition 1: Customer slides the bank card, but enter an incorrect pin#

§  ….

§  Condition 2: There is insufficient fund in the account

§  ….

§  Condition 2:

 

 

 

 

 

 

 

 

 

 

Sequence Diagram (Client Order Process)

 

Example Classes for Inventory App

 

Source: [9][10]

InventoryItem class (collaborators: NONE)

·         itemNumber

·         name

·         description

·         unitPrice

·         totalPrice

 

Order class  (responsibility; collaborators: OrderItem class, Cutromer class)

·         orderID: string

·         orderDate: String

·         dateShipped

·         orderItems

·         orderedTotals

·         orderDate:  String

·         costRange:  float

·         priceRange: float

·         tax: float

·         priorityCode: int

·         completionProgress: float

·         rawMaterialIssued: Boolean

·         customerInfo: String

·         deliveryInfo: String

·         printInvoice()

·         cancel()

 

Customer class (collaborators: Order class, CustomerAddress class)

·         name

·         phoneNumber

·         customerID

·         makeOrder()

·         cancelOrder()

·         makePayment()

 

OrderItem class (collaborators: InventoryItem class)

·         quantity

·         inventoryItem()

·         calculateTotal()

 

References

[ 1  ]             OMG Specifications, http://www.omg.org/spec/index.htm

[ 2  ]             OMG Unified Modeling Language (UML) Infrastructure Specification  and Superstructure Specification, Version 2.4.1, 2011/8/6, http://www.omg.org/spec/UML/2.4.1/  

[ 3  ]             Object-Oriented Analysis and Design with Applications, 3rd edition, by Grady Booch, Robert A. Marsimchuk, Michael W. Engle, Bobbi J. Young, Jim Conallen, and Kelli A. Houston, 2007, Addison-Wesley

[ 4  ]             “Supply Chain Management Use Case Model,” Final Specification, Web Services Interoperability Organization, 2003/12/1, http://www.ws-i.org/sampleapplications/supplychainmanagement/2003-12/scmusecases1.0.pdf

[ 5  ]             UML Use Case Diagrams: Tips and FAQ, http://www.andrew.cmu.edu/course/90-754/umlucdfaq.html

[ 6  ]             Use Case Tutorial, by Joseph Lewis Aguirre, http://www.atwebo.com/Use%20Case%20Tutorial.pdf

[ 7  ]             Case Study: Design and Implementation of an Ordering System using UML, Formal Specification, and Java Builder, by A. Tchantchane, SETIT 2005 Conference,  http://www.setit.rnu.tn/last_edition/setit2005/applications/374.pdf

[ 8  ]             Inventory Management, http://creately.com/diagram/example/gz0v7rar/Inventory+Management

[ 9  ]             “Automated Inventory Tracking System,” Ben Standish and Steve Sullivan; faculty advisors: Mark Austin and John Baras, Sept 2002 to Dec. 2003, http://www.isr.umd.edu/~austin/ense621.d/projects04.d/project-tracking-system.html

[ 10  ]             “Preliminary Models using UML for Reverse Logistics Systems,” R. Srinon, S. Ramakrishnan, and C. H. Gagli, http://sse.stevens.edu/fileadmin/cser/2004/papers/121-Paper114.pdf

[ 11  ]             Class Responsibility Collaborator Cards (CRC) Modeling, 1998 copyright by Scott W. Ambler, http://www.uml.org.cn/umlapplication/pdf/crcmodeling.pdf

[ 12  ]             Business Use Case for Inventory Management – WMS, SAP Community Network, http://wiki.sdn.sap.com/wiki/display/CK/Business+Use+case+for+inventory+management+-+WMS

[ 13  ]             Class Diagram for Inventory Management, IBM DeveloperWorks, http://www.ibm.com/developerworks/topics/class%20diagram%20for%20inventory%20management/

[ 14  ]             A Unified Modeling Language for Describing Supply Chain Management in Retail Sector, by Zhu Haibo, http://www.seiofbluemountain.com/upload/product/201002/1265261580ibwql255.pdf

[ 15  ]             Workflow in UML,by Peter Rittgen, Idea Group Publishing, http://www.irma-international.org/viewtitle/32473/

[ 16  ]             Modeling Mobile Agent Applications in UML 2.0 Activity Diagrams, by Miao Kang, Lan Wang and Kenji Taguchi, http://www.imamu.edu.sa/DContent/IT_topics/Modelling%20Mobile%20Agent%20Applications%20in%20UML2.0%20Activity%20Diagrams.pdf

[ 17  ]             Extending Activity Diagrams to Model Mobile Systems, by H. Baumeister, N. Koch, P. Kosiuczenko, and M. Wirsing, http://www.pst.informatik.uni-muenchen.de/projekte/agile/papers/netobjectdays2002.pdf

[ 18  ]             Using UML Sequence Diagrams for Requirement Analysis of Mobile Distributed Systems, thesis, Aron G. Hamvas,  2010/5/12, http://home.mit.bme.hu/~micskeiz/education/onlab/hamvas_aron/hamvas_aron_diploma.pdf

[ 19  ]             A Mobile Application for Smart House Remote Control System, by A. Rajabzadeh, A. R. Manashty, and Z. F. Jahromi, World Academy of Science, Engineering and Technology 62 2010, http://arxiv.org/ftp/arxiv/papers/1009/1009.5557.pdf

[ 20  ]             Using the UML 2.0 Activity Diagram to Model Agent Plans and Actions, by V. T. da Silva, R. C. Noya, and C. J. de Lucena, 2004, ftp://ftp.inf.puc-rio.br/pub/docs/techreports/04_48_silva.pdf