Our prez

442 views

Published on

Published in: Education, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
442
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Our prez

  1. 1. MINISTRY OF HIGHER EDUCATION AND SCIENTIFIC RESEARCH UNIVERSITY OF MANNOUBA NATIONAL SCHOOL OF COMPUTER SCIENCEMOBILE SHOPPING ASSISTANT ELABORATED BY: Meriem HARZALLAH & Rihab BEN RHOUMA SUPERVISED BY: Mrs Leila JEMNI BEN AYED DESIGN AND DEVELOPMENT PROJECT 2011-2012
  2. 2. O UTLINE▲ Overview▲ General Concepts▲ Requirements Specification▲ Design▲ Implementation▲ Conclusion 2
  3. 3. O VERVIEW▲ Mobility ▲ Movement and motion ▲ Mobile devices, Smartphones▲ Shopping ▲ Select and/or purchase articles  Mobile Shopping 3
  4. 4. O VERVIEW ▲ Restrictions▲ Existing applications ▲ Expensive▲ Previous problem encountered ▲ Necessity to include a hardware ▲ Indoor positioning ▲ Weak signal▲ Available solutions GPS, 3G, RFID, Bluetooth, Wifi, … ▲ Wifi Access Points 4
  5. 5. OVERVIEW▲ Advantages of using Wifi Access Points ▲ Reachable over 40 meters ▲ Mature and widely spread technology ▲ Low cost ▲ Offers useful localisation information 5
  6. 6. O UTLINE▲ Overview▲ General Concepts▲ Requirements Specification▲ Design▲ Implementation▲ Conclusion 6
  7. 7. GENERAL CONCEPTSAndroid ▲ Advantages of Android 18%IOS 6% mobile development 18% 58% ▲ Free and open source (SDKWindows Phone and source code)Others(Symbian, Blackberry, …) ▲ Marketshare in quick rise ▲ Light and easy Marketshare of mobile OS - 2012 Source: Digitimes. http://www.globalnerdy.com/ ▲ Intuitive GUI 7
  8. 8. GENERAL CONCEPTS▲ Assets of web services ▲ Remotely processing ▲ Interoperability between softwares working on different platform ▲ Based on HTTP protocol 8
  9. 9. O UTLINE▲ Overview▲ General Concepts▲ Requirements Specification▲ Design▲ Implementation▲ Conclusion 9
  10. 10. REQUIREMENTS SPECIFICATION Functionnal Requirements <<include>> Add a manager Get authenticatedDB Administrator <<include>> Delete a manager Insert product info <<include>> into the DB 1
  11. 11. REQUIREMENTS SPECIFICATION Functionnal Requirements <<include>> Add a product Get authenticatedShopping Mall <<include>> Manager Delete a product <<include>> Update product info 1
  12. 12. REQUIREMENTS SPECIFICATION Functionnal Requirements <<extend>> Search product info Rate product <<extend>>Customer View nearby products <<extend>> Scan product’s barcode View shopping mall map 1
  13. 13. REQUIREMENTS SPECIFICATION Non Functionnal Requirements Security Deployment Usability MSA Supportability Reliability Performance 1
  14. 14. REQUIREMENTS SPECIFICATION Principal scenarios System Admin Add a manager request Form to fill in Enter parameters Check Add successful Add a manager (administrator) 1
  15. 15. REQUIREMENTS SPECIFICATION Principal scenarios System Supermarket Manager Request to add a product Form to fill in Enter products informations Check Product added sucessfully Add a product (manager) 1
  16. 16. REQUIREMENTS SPECIFICATION Principal scenarios System Customer Search product request Form to fill in Specify preferences List of products Select a product Check Show product information Look up product information (customer) 1
  17. 17. O UTLINE▲ Overview▲ General Concepts▲ Requirements Specification▲ Design▲ Implementation▲ Conclusion 1
  18. 18. D ESIGN Architecture▲ Architecture choice for the mobile client : SOA 1
  19. 19. D ESIGN Architecture▲ Architecture choice for the web client : 3-tier 1
  20. 20. D ESIGNGlobal Architecture Pattern : MVC 2
  21. 21. D ESIGN Database Schema : Entity-Relationship Model Aisle < contains add/delete/view/update info Manager . Shopping mall . is located inadd/delete/view . . . . put discount is composed of . navigates around . . Wifi AP Administrator . using Discount . . < has a . < has a Product . . . store information in DB Map view on smartphone . Relation_22 Customer show mall map . . < buy 2
  22. 22. D ESIGN Database Design : Relational Schema customer FK_CUSTOMER_REFERENCE_SHOPPING cid VARCHAR(10) <pk> mall_id VARCHAR(10) <fk> position FLOAT ... shopping mall FK_MANAGER_REFERENCE_SHOPPING mall_id VARCHAR(10) <pk> FK_MAP_REFERENCE_SHOPPING mid VARCHAR(10) <fk> name_mall VARCHAR(30) adress VARCHAR(255) manager ... mid VARCHAR(10) <pk> mall_id VARCHAR(10) <fk> FK_SHOPPING_REFERENCE_MANAGER login VARCHAR(25) email VARCHAR(45) FK_PRODUCT_REFERENCE_SHOPPING password VARCHAR(15) ... Product Map pid VARCHAR(10) <pk>mall_id VARCHAR(10) <fk1> mall_id VARCHAR(10) <fk1>ssid VARCHAR(255) <fk2> aisle_id VARCHAR(10) <fk2>id INT aid VARCHAR(10) <fk3> FK_PRODUCT_REFERENCE_ADMINISTurl VARCHAR(255) barcode BLOB... administrator manufacturer VARCHAR(255) price DOUBLE PRECISION aid VARCHAR(10) <pk> specifications LONG VARCHAR login VARCHAR(25) FK_MAP_REFERENCE_WIFI rating INT email VARCHAR(45) image BLOB password VARCHAR(15) ... ... wifi FK_DISCOUNT_REFERENCE_PRODUCT ssid VARCHAR(255) <pk> rssi INT bssid VARCHAR(10) FK_PRODUCT_REFERENCE_AISLE discount lat FLOAT percentage INT lng FLOAT begin_ DATE <pk> ... end_ DATE <pk> pid VARCHAR(10) <pk,fk> aisle ... aisle_id VARCHAR(10) <pk> tag VARCHAR(40) FK_AISLE_REFERENCE_WIFI 2 ssid VARCHAR(255) <fk> ...
  23. 23. DESIGN Class Diagram: mobile client Customer 0..1 0..* # position : Map Menu + navigate () : Menu + product : Product Map + customer : Customer + <<Getter>> getPosition () : Map- latittude : double + <<Setter>> setPosition (Map newPosition) : void + showMap : ShowMap- longitude : double ... + showNearbyProd : ShowNearbyProds 1..1 + showProd : ShowProd+ show () : ShowMap 0..* ... + scanBarcode : ScanBarcode Product + <<Getter>> getCustomer () : Customer 0..1 1..1 1..1 # product name : String + <<Getter>> getProduct () : Product ... show nearby prods + Price : Double Shopping Mall + product : Product # manufacturer : String 0..* + map : Map # barcode : byte # name : String + specifications : String + ap : WifiAp # aisle : String + customer : Customer # aisle : String 1..1 # ssid : int + search () : ShowProd # map : Map Show prod + <<Getter>> getProduct () : Product # customer : Customer + <<Getter>> getMap () : Map + scan () : ScanBarcode + product : Product + view () : ShowProd # product : Product + <<Getter>> getAp () : WifiAp + <<Getter>> getProduct () : Product ... + show_nearby () : ShowNearbyProds ... ... 0..1 showMap scan barcode * 0..* + map : Map + product : int + customer : Customer + <<Getter>> getProduct () : int classShow + ap : WifiAp wifi_ap ... - product : Product + product : Product - ssid : String - customer : Customer + <<Getter>> getCustomer () : Customer - rssi : int - map : Map + <<Getter>> getMap () : Map - bssid : String - ap : WifiAp + <<Getter>> getAp () : WifiAp - lat : Float + <<Getter>> getProduct () : Product + <<Getter>> getProduct () : Product - lng : Float ... + <<Setter>> setProduct (Product newProduct) : void + <<Getter>> getSsid () : String + <<Getter>> getCustomer () : Customer + <<Setter>> setSsid (String newSsid) : void + <<Setter>> setCustomer (Customer newCustomer) : void + <<Getter>> getRssi () : int + <<Getter>> getMap () : Map classShowMap + <<Setter>> setRssi (int newRssi) : void + <<Setter>> setMap (Map newMap) : void + <<Getter>> getBssid () : String - product : Product + <<Getter>> getAp () : WifiAp + <<Setter>> setBssid (String newBssid) : void - customer : Customer + <<Setter>> setAp (WifiAp newAp) : void + <<Getter>> getLat () : Float - map : Map ... + <<Setter>> setLat (Float newLat) : void - ap : WifiAp classScan + <<Getter>> getLng () : Float + <<Getter>> getCustomer () : Customer + <<Setter>> setLng (Float newLng) : void + <<Setter>> setCustomer (Customer newCustomer) : void - product : Product ... + <<Getter>> getProduct () : Product + <<Getter>> getProduct () : Product 2 + <<Setter>> setProduct (Product newProduct) : void + <<Setter>> setProduct (Product newProduct) : void + <<Getter>> getMap () : Map ... + <<Setter>> setMap (Map newMap) : void + <<Getter>> getAp () : WifiAp + <<Setter>> setAp (WifiAp newAp) : void
  24. 24. DESIGN Class Diagram: web client Menu + product : Product Delete + manager : Manager Product Shopping Mall + product : Product + <<Getter>> getManager () : Manager + manager : Manager # product name : String # name : String + <<Getter>> getProduct () : Product + Price : Double # aisle : String ... + <<Getter>> getProduct () : Product # manufacturer : String 1..1 # ssid : int + <<Getter>> getManager () : Manager 0..* ... # barcode : byte # map : Map + specifications : String # manager : Manager # aisle : String # product : Product + update () : Update + add () : String + delete () : Delete View 1..1 1..1 Update + view () : View + product : Product ... + product : Product + manager : Manager + manager : Manager 0..* + <<Getter>> getManager () : Manager Map + <<Getter>> getManager () : Manager + <<Getter>> getProduct () : Product classDelete - latittude : double + <<Getter>> getProduct () : Product ... 1..1 - longitude : double ... - product : Product + show () : void - manager : Manager 0..1 ... + <<Getter>> getProduct () : Product + <<Setter>> setProduct (Product newProduct) : void classUpdate + <<Getter>> getManager () : Manager Admin + <<Setter>> setManager (Manager newManager) : void - product : Product+ username : String ... - manager : Manager+ email : String- password : String + <<Getter>> getManager () : Manager + <<Setter>> setManager (Manager newManager) : void+ admin () : Admin + <<Getter>> getProduct () : Product classView+ login () : Login + <<Setter>> setProduct (Product newProduct) : void+ navigate () : Menu - product : Product ... - manager : Manager+ <<Getter>> getPassword () : String Add Login+ <<Setter>> setPassword (String newPassword) : void + product : int + <<Getter>> getManager () : Manager+ <<Getter>> getUsername () : String + username : String + <<Setter>> setManager (Manager newManager) : void + manager : int+ <<Setter>> setUsername (String newUsername) : void + password : String + <<Getter>> getProduct () : Product ... + <<Getter>> getProduct () : int + <<Setter>> setProduct (Product newProduct) : void + get_username () : String + <<Getter>> getManager () : int + get_password () : String ... 1..1 ... ... 0..* 1..1 Manager # username : String classLogin classAdd # email : String - username : string - product : Product - password : String - manager : Manager - password : string + manager () : Manager + <<Getter>> getUsername () : string + <<Getter>> getProduct () : Product + login () : Login + <<Setter>> setUsername (string newUsername) : void + <<Setter>> setProduct (Product newProduct) : void 2 + navigate () : Menu + <<Getter>> getManager () : Manager + <<Getter>> getPassword () : string + <<Getter>> getUsername () : String + <<Setter>> setManager (Manager newManager) : void + <<Setter>> setPassword (string newPassword) : void + <<Setter>> setUsername (String newUsername) : void ... ... + <<Getter>> getPassword () : String + <<Setter>> setPassword (String newPassword) : void
  25. 25. O UTLINE▲ Overview▲ General Concepts▲ Requirements Specification▲ Design▲ Implementation▲ Conclusion 2
  26. 26. I MPLEMENTATION Hardware Environment Asus • Processor Intel® Core™ i5-2450M CPU @ 2.50GHz 2.50GHz • RAM 4.00 Go • Operating System: Windows 7 Ultimate, SP1, 32bits • Hard Disk: 500 Go Qosmio • Processor Intel® Core™2 Duo CPU P8700 @2.53Ghz 2,53 Ghz • RAM 4.00 Go • Operating System: Windows 7 Ultimate, SP1, 32bits • Hard Disk: 300 Go 2
  27. 27. I MPLEMENTATION Software Environment Eclipse IDE WAMP server MySQL Android SDK 2
  28. 28. I MPLEMENTATION Architectural Design 2
  29. 29. I MPLEMENTATIONMain Screen Captures of the Mobile Application 2 Product Manual List Products Show Map Search Product Information
  30. 30. I MPLEMENTATIONMain Screen captures of the Web Application Welcome screen 3
  31. 31. I MPLEMENTATIONMain Screen captures of the Web Application Login 3
  32. 32. I MPLEMENTATIONMain Screen captures of the Web Application DB Administrator Profile 3
  33. 33. I MPLEMENTATIONMain Screen captures of the Web Application Supermarket Manager Profile 3
  34. 34. I MPLEMENTATIONMain Screen captures of the Web Application View Products 3
  35. 35. I MPLEMENTATIONMain Screen captures of the Web Application Add a product (manager) 3
  36. 36. I MPLEMENTATIONMain Screen captures of the Web Application View list of managers 3
  37. 37. I MPLEMENTATIONGenerating the Shopping Mall Map with Ericsson Labs Map Studio 3
  38. 38. O UTLINE▲ Overview▲ General Concepts▲ Requirements Specification▲ Design▲ Implementation▲ Conclusion 3
  39. 39. C ONCLUSION▲ Needed requirements successfully implemented▲ Sample likely be sold to hypermarkets as a prototype▲ Possibility of improvements ▲ More features ▲ Security level ▲ Implementation on other mobile phone operating systems 3
  40. 40. 4

×