tesina-electronic shelf labels (muhamad asim nazir) (751695) · prices" on electronic...

66
1| Page Electronic Shelf Labels POLITECNICO DI MILANO Facoltà di Ingegneria dell’Informazione Polo Regionale Di COMO Master of Science in Computer Enigneering “ELECTRONIC SHELF LABELSSupervised by: Professor Sara Comai Tesina by: Muhammad Asim Nazir Student Id: 751695

Upload: lethien

Post on 18-Feb-2019

216 views

Category:

Documents


0 download

TRANSCRIPT

1  |  P a g e  Electronic  Shelf  Labels  

POLITECNICO  DI  MILANO  Facoltà  di  Ingegneria  dell’Informazione  

 

   

Polo  Regionale  Di  COMO      

Master  of  Science  in  Computer  Enigneering    

 “ELECTRONIC  SHELF  LABELS”  

     

Supervised  by:    Professor  Sara  Comai    

Tesina  by:    Muhammad  Asim  Nazir    

Student  Id:          751695    

             

2  |  P a g e  Electronic  Shelf  Labels  

CONTENTS  

 1.   Introduction  ..................................................................................................................  6  1.1.   Company  &  Objective  .........................................................................................................  6  1.2.   ESL  (Electronic  Shelf  Label)  ............................................................................................  6  1.3.   Transmission  System  .........................................................................................................  7  1.4.   Operational  Software  .........................................................................................................  8  1.4.1.   Web  application  ...........................................................................................................  9  1.4.2.   PDA  application  .........................................................................................................  10  1.4.3.   Data  Import  Application  ........................................................................................  10  

1.5.   Advantages  ...........................................................................................................................  10    2.   Business  Requirements:  .........................................................................................  12  2.1.   Target  Customers  ..............................................................................................................  12  2.2.   Functional  Requirements  ...............................................................................................  12  2.2.1.   Web  Application  ........................................................................................................  12  2.2.1.1.   Advanced  Mode  .................................................................................................  13  2.2.1.2.   Standard  Mode  ..................................................................................................  28  

2.2.2.   PDA  Application  .........................................................................................................  34  2.2.3.   Data  Import  .................................................................................................................  38  

 3.   Design  ...........................................................................................................................  43  3.1.   Application  Flow  ................................................................................................................  43  3.2.   Web  Application  Architecture  .....................................................................................  44  3.3.   Database  Design  .................................................................................................................  45  3.4.   Page  Layout  ..........................................................................................................................  49  3.4.1.   Advanced  Mode  Page  Layout  ...............................................................................  49  3.4.1.1.   Main  Content  Area  (Content  Area  Level  1)  ...........................................  50  3.4.1.2.   Detailed  Content  Area  (Content  Area  Level  2)  ....................................  51  

3.4.2.   Standard  Mode  Page  Layout  ................................................................................  53  3.4.2.1.   Main  Page  .............................................................................................................  53  3.4.2.2.   Detailed  Operation  Page  ................................................................................  54  

3.4.3.   Web  Application  Navigation  ................................................................................  55    4.   Implementation  ........................................................................................................  58  4.1.   Web  Application  .................................................................................................................  58  4.1.1.   Master  Page  .................................................................................................................  58  4.1.2.   Code  Behind  ................................................................................................................  59  4.1.3.   Database  /  Database  connectivity  .....................................................................  60  4.1.4.   Internet  Information  Server  (IIS)  ......................................................................  60  

4.2.   XML  ..........................................................................................................................................  61  4.2.1.   ESL  Status  Request  XML  ........................................................................................  61  4.2.2.   ESL  Status  Response  ................................................................................................  62  4.2.3.   ESL  night  mode  Request  XML  ..............................................................................  62  

3  |  P a g e  Electronic  Shelf  Labels  

4.2.4.   ESL  Enter  night  mode  (for  all  ESLs)  XML  .......................................................  62  4.2.5.   ESL  Acknowledge  Night  mode  Response  XML  .............................................  63  4.2.6.   ESL  Price  update  Request  XML  ...........................................................................  63  4.2.7.   ESL  Acknowledge  Price  update  Response  XML  ...........................................  63  

 5.   Future  Work  ...............................................................................................................  64  5.1.   Responsive  design  of  Web  application  .....................................................................  64  5.2.   Graphical  ESL  display  ......................................................................................................  64  

 6.   References  ..................................................................................................................  66  

 

4  |  P a g e  Electronic  Shelf  Labels  

LIST  OF  FIGURES  

 Figure  1:  Electronic  Shelf  Label  ...........................................................................................................  7  Figure  2:  System  Overview  ....................................................................................................................  8  Figure  3:  Login  ..........................................................................................................................................  12  Figure  4:  Mode  Selection  ......................................................................................................................  13  Figure  5:  Product  Search  ......................................................................................................................  14  Figure  6:  ESL  Import  ..............................................................................................................................  14  Figure  7:  Delete  ESL  ...............................................................................................................................  15  Figure  8:  ESL  Status  /Acknowledgment  ........................................................................................  15  Figure  9:  ESL  Search  ...............................................................................................................................  16  Figure  10:  ESL  Master  data  .................................................................................................................  17  Figure  11:  ESL  Master  data  modify  ..................................................................................................  18  Figure  12:  ESL  Firmware  Management  .........................................................................................  18  Figure  13:  Upload  Firmware  ..............................................................................................................  19  Figure  14:  Product  ESL  Join  ................................................................................................................  20  Figure  15:  Product  /  ESL  bulk  join  ...................................................................................................  20  Figure  16:  Product  /  ESL  association  List  .....................................................................................  21  Figure  17:  ESL  /  Product  Association  List  Filter  ........................................................................  21  Figure  18:  ESL  Template  ......................................................................................................................  22  Figure  19:  ESL  Template  Preview  ....................................................................................................  22  Figure  20:  ESL  /  Template  Association  List  .................................................................................  23  Figure  21:  Change  Product  Price  ......................................................................................................  24  Figure  22:  Set  Night  Mode  ...................................................................................................................  24  Figure  23:  System  Health  .....................................................................................................................  25  Figure  24:  Coordinator  Health  Overview  ......................................................................................  25  Figure  25:  Coordinator  Health  Detail  .............................................................................................  26  Figure  26:  ESL  Health  ............................................................................................................................  26  Figure  27:  Users  List  ..............................................................................................................................  27  Figure  28:  New  User  Creation  ............................................................................................................  27  Figure  29:  Application  Settings  .........................................................................................................  28  Figure  30:  Mail  Notification  ................................................................................................................  28  Figure  31:  Change  Product  Price  (Standard  Mode)  ..................................................................  29  Figure  32:  New  Price  (Standard  Mode)  .........................................................................................  29  Figure  33:Product  Offers  (Standard  Mode)  .................................................................................  30  Figure  34:  Price  change  summary  (Standard  Mode)  ...............................................................  30  Figure  35:  Product  Detail  1(Standard  Mode)  ..............................................................................  31  Figure  36:Product  Detail  2(Standard  Mode)  ...............................................................................  32  Figure  37:  Product  /  ESL  association  (Standard  Mode)  .........................................................  32  Figure  38:  Remove  Product  /  ESL  Join  ...........................................................................................  33  Figure  39:  Motorola  MC55A0  .............................................................................................................  34  Figure  40:  PDA  Login  .............................................................................................................................  35  Figure  41:  PDA  configuration  .............................................................................................................  35  Figure  42:  PDA  product  /  ESL  association  ....................................................................................  36  

5  |  P a g e  Electronic  Shelf  Labels  

Figure  43:  Product  /  ESL  association  ..............................................................................................  36  Figure  44:  Product  /  ESL  disassociation  .......................................................................................  37  Figure  45:  Application  Flow  ................................................................................................................  43  Figure  46:  Web  Application  Three  tier  Architecture  ...............................................................  44  Figure  47:  DB  Users  ................................................................................................................................  45  Figure  48:  DB  Coordinators  ................................................................................................................  46  Figure  49:  DB  Hubs  .................................................................................................................................  47  Figure  50:Db  ESLs  ...................................................................................................................................  48  Figure  51:Db  Products  ..........................................................................................................................  49  Figure  52:  Content  Area  Level  1  ........................................................................................................  51  Figure  53:  Content  Area  Level  2  ........................................................................................................  52  Figure  54:  Main  Page  (Standard  Mode)  .........................................................................................  53  Figure  55:  Detailed  Operation  Page  (Standard  Mode)  ............................................................  54  Figure  56:  Login  to  Mode  Selection  Navigation  .........................................................................  55  Figure  57:  Standard  Mode  Navigation  ............................................................................................  56  Figure  58:  Advanced  Mode  Navigation  ..........................................................................................  57  Figure  59:  Master  Page  .........................................................................................................................  59  Figure  60:  Code  behind  .........................................................................................................................  59  Figure  61:  Data  provider  (SqlClient)  ...............................................................................................  60  Figure  62:  IIS  /  Asp.Net  page  life  cycle  ...........................................................................................  61  Figure  63:  Graphical  ESL  display  ......................................................................................................  65        

6  |  P a g e  Electronic  Shelf  Labels  

1. INTRODUCTION    This  work  addresses  the  problem  of  price  changes,  promotion  add-­‐on  and  central  'real-­‐time'  pricing  control  of  the  products  in  super  markets  by  introducing  the  wirelessly  controlled  Electronic  shelf  labels,  which  provide  flexibility  to  change  the  product  prices  and  introduction  of  promotions  from  the  central  system  which  is  integrated  with  store  POS  system,  thus  guarantees  that  the  prices  are  always  up-­‐to-­‐date  and  accurate.  The  work  has  been  carried  out  at  S5  Tech  SpA  where  I  am  working  as  a  software  developer  and  most  of  my  work  is  related  to  the  operation  software.  

1.1. Company  &  Objective    S5   Tech   SpA   [1]   was   founded   in   2009   by   a   group   of   entrepreneurs   with   the  objective  of  offering  a  completely  innovative  in-­‐store  information  system  capable  to  overcome   all   limits   of   the   solutions   available   today   through   a   powerful,   light,  versatile,  non-­‐invasive  network.  Since   the   date   of   its   incorporation   until   April   2011   the   Company   developed   and  tested  at   length  an  advanced  architecture,   that   supports  present  and   future  needs  through   a   scalable   and  wireless   radio   frequency   platform   able,   not   only   to   obtain  cost   efficiency,   error   reduction,   and   innovative   pricing   opportunities,   but   also   to  provide   the   store   and   its   clients   with   new   communication   tools   and   applications  that  includes  web,  PDA  and  smartphone  interfaces  to  centrally  control  the  product  prices   on   Electronic   shelf   labels   thus   reducing   the   store   labor   cost   of   changing  prices,  adding  promotions  and  guarantees  the  accurate  price  of  the  product.    Roles  and  Responsibilities:    I  was  involved  in  the  project,  right  from  its  initial  stage,  so  I  get  a  chance  to  involve  in   complete   life   cycle   of   the   development   of   the   system.   My   roles   and  responsibilities  are  primarily  focused  on  the  operation  software  and  I  was  involved  in    

• Web  and  PDA  application  architecture  • Database  design  of  the  system  • PDA  and  web  application  development  • Integration  strategy  of  ESL  backend  system  with  store  POS  • Provided   technical   assistance   to   other   team  members   in   developing   other  

modules  of  WEB  and  PDA  applications    

1.2. ESL  (Electronic  Shelf  Label)    ESL,   is   a   system   used   by   retailers   for   displaying   product   pricing   on   shelves   [2].  Typically,   electronic   display   modules   are   attached   to   the   front   edge   of   retail  

7  |  P a g e  Electronic  Shelf  Labels  

shelving.  These  modules  use  Liquid  Crystal  Display  (LCD)  (see  Figure  1:  Electronic  Shelf   Label)   to   show   the   current  product  price   to   the   customer.  A   communication  network  allows  the  price  display   to  be  automatically  updated  whenever  a  product  price  is  changed.  This   communication   network   is   based   on   radio   communication.   Automated   ESL  systems  reduce  pricing  management  labor  costs  and  improve  pricing  accuracy.    S5  Tech’s  electronic  carries  inside  a  powerful  and  reliable  processor  as  of  today  it  is  available   as   Electronic   LCD   labels   in   7   segments   in   2   sizes.   Fast,   secure   and  protected  communication   is   insured  due   to  a  2.4  GHz  band  and   its  own  protected  channels   according   to   802.15.4   protocol.   Each   label   carries   temperature   sensors,  and  NFC  (Near  Field  Communication).  Every   15   seconds   all   ESLs   communicate   with   the   transmission   system,   thus  guaranteeing  a   constant   feedback  on   its  performance  and   the   success  of   the  price  updating.  Each  ESL  has  a  sticker  on  it,  which  contains  the  product  description  &  barcode  for  the  product  that  specifies  to  which  product  this  specific  ESL  is  associated.    ESL  has  different  digital  sections  and  some  predefined  icons  that  can  be  mapped  to  different  database  fields  to  display  different   information  (e-­‐g:  Price,  price  per  unit,  promotion,  discount,  promotion  end  date,  etc..).    

 Figure  1:  Electronic  Shelf  Label  

 

1.3. Transmission  System    The   communication   system   (see   Figure   2:   System   Overview)   is   based   on  widespread  and  powerful  Wi-­‐Fi   technologies  optimized   so   as   to  work   in   an  ultra-­‐low  power  mode.  Transmission  works  with  a  USB  Coordinator  equipment,  which  can  manage   up   to   3500   electronic   labels.   In   small   stores   the   Coordinator   can   be  directly  managed  with  a  PC.  Otherwise  in  large  stores,  concentrators,  called  HUBs,  manage   up   to   6   Coordinators.   This   architecture   can   operate   in   stores   of   any   size  with  just  two  kinds  of  peripherals  without  any  size  limit.  

8  |  P a g e  Electronic  Shelf  Labels  

Each  coordinator  has  an  individual  integral  and  rechargeable  battery,  which,  in  the  event  of  temporary  absence  of  power  carries  on  efficiently  for  up  to  24  hours.  In   the  case  of  middle  size  or  major  stores  Hubs  may  operate   in  mesh  topology  [3]  either  by  using  net  cables  or  Wi-­‐Fi  at  2.4  or  5  GHz.  Clients  may  choose  connections  or  bands  to  be  used  according  to  their  policies.    The   transmission   system   dialogs   with   the   HUBs   using   a   2.4   or   5   GHz   band   on  protocol   802.11a/b/g/n/s   and   can   adopt   with   minor   modifications   any   future  communication  protocol.  The  Coordinators  dialog  with  the  electronic  labels  on  a  2.4  GHz  band  using  protocol  802.15.4  thus  guaranteeing  a  band  sufficient  for  operating  any  future  graphic  color  label  in  a  1000  square  meter  store.    

 Figure  2:  System  Overview  

 

1.4. Operational  Software    The   software   is   the   core   of   the   entire   system,   the   complex   technology   remains  hidden  to  the  advantage  of  an  extremely  simple  interface,  capable  of  returning  only  pertinent  feedback.  Integration  with  the  client’s  back  office  is  planned  in  such  a  way  as   to   minimize   the   necessary   time   for   the   start-­‐up   in   the   store.   Single   modular  software   has   been   designed   to   serve   all   purposes:   in   this  way,   all   clients   big   and  small  can  benefit  from  every  future  improvement  of  the  product.  Software  package  includes:  

9  |  P a g e  Electronic  Shelf  Labels  

• Web  application  • PDA  application  • Data  Import  Application  

 

1.4.1. Web  application    Web  application  is  available  in  English,  Italian  and  French  languages,  and  provides  two   modes   of   operations   for   end   user   (store   manager,   Administrator).     (List   of  operations  in  each  mode  can  be  limit  by  the  administrator)    

• Standard  Mode  • Advanced  Mode  

 Standard  Mode:    Standard  Mode  is  used  for  quick  daily  operations  which  includes:    

• Product  Searching  based  on  barcode  • Product  Price  Change  • Product  Offer  activation  • Daily   import   report   from   supper   market   “back   office”   to   “ESL   backend  

system”  • Re-­‐printing  of  ESL  stickers  for  which  there  is  some  change  in  the  description  

of  the  product.  • Product  &  ESL  association  • Product  &  ESL  disassociation  

 Advanced  Mode:    Advanced  mode  is  used  to  perform  more  detailed  operations,  which  includes:    

• Product   Searching   based   on   different   filters   (barcode,   description,   internal  reference  etc..)  

• Sticker   printing   for   the   product   (Sticker   includes   product   description,  barcode  and  internal  reference  in  a  specific  format)  

• ESL  mac  addition  in  the  system  (Each  ESL  has  its  unique  MAC  address  which  need  to  be  added  in  the  system  in-­‐order  to  associate  it  to  a  product)  

• Bulk  ESL  Mac  addition  (In-­‐order  to  add  MAC  address   in  bulk  a   file  of  MACs  needs  to  be  provided  in  a  specific  format)  

• ESL  &  product  association  • ESL  &  product  massive  association  (In-­‐order  to  associate  ESLs  and  products  

in  bulk  a  file  needs  to  be  provided  in  a  specific  format)  • ESL  &  product  disassociation.  • Reporting    

10  |  P a g e  Electronic  Shelf  Labels  

o ESL  status  report  o Coordinator  status  report  o Price  change  report  

• ESL  Template  mapping   (ESL  has   different   digital   sections   and   each   section  can  be  mapped  to  show  different  information)  

 

1.4.2. PDA  application    PDA   application   is   available   in   English,   Italian   and   French   languages.   PDA   is  connected   wirelessly   to   the   local   hub   and   can   be   used   by   the   store   manager   to  perform   different   operations   right   at   the   shelf.   Features   offered   by   the   PDA  application  includes:    

• Product  Information  (Using  PDA  built-­‐in  barcode  scanned,  store  manager  can  scan  the  product  barcode  and  can  get  its  complete  detail)  

• Product  price  change    • Product  &  ESL  association  • Product  &  ESL  disassociation  • Recent  price  change  information  

   

1.4.3. Data  Import  Application    Data  import  application  runs  as  a  backend  service  and  looks  for  any  updated  files  from  client  side  in  a  specific  folder.  The  files  from  the  client  are  in  a  predefined  specific  format.  As  soon  as  the  service  finds  the  new  file  in  the  specific  folder  it  import  that  data  in  the  backend  database  and  create  a  backup  of  client’s  file  for  future  reference.  File  name  format,  File  location,  backup  path  are  configurable.  

1.5. Advantages    The  proposed  work  has  many  advantages;  the  main  advantages  can  be  summarized  as  follows:        Reduction  in  price  change  labor  and  costs    

• Reduces  in  store  labor  cost  of  changing  prices  • Reduce  ticket  printing  and  paper  costs  • Redeploy  labor  to  value-­‐adding  tasks  such  as  customer  service  or  store  

merchandising    

Low  Cost  of  Ownership    

11  |  P a g e  Electronic  Shelf  Labels  

• Integrates  with  current  store  POS  system  • Affordable  and  easy  installation  does  not  require  any  store  infrastructure  

changes  or  major  installations.  • No  operational  interference  

 Pricing  accuracy,  flexibility  and  responsiveness    

• Provides  central  or  Head  Office  'real-­‐time'  pricing  control  and  flexibility  • Confidence  in  knowing  that  the  prices  are  always  up-­‐to-­‐date,  accurate  and  

compliant    

Increased  shopper  interaction,  merchandising  and  sell-­‐through    

• Recapturing  lost  sales  through  incorrect  shelf  pricing  • Increase  sell  through  of  short  sales  life  or  perishable  items  through  

automatic  price-­‐change  programs  aimed  at  price  reductions  in  line  with  diminishing  sales  life  

• Improve  interaction  with  shoppers  with  greater  product  pricing  and  promotional  information    

Opportunistic  pricing  strategies  and  margin  maximization    

• Take  advantage  of  trading  fluctuations  or  events  to  maximize  Gross  Profit  through  strategic  pricing  

• Implement  'time  of  day'  pricing  for  extended  hours  trading,  lunch  hour  or  happy  hour  specials  

• No  longer  and  opportunity  cost  of  time  and  resource  to  implement  strategic  or  event  based  pricing    

Improved  stock  control  and  retail  operations    

• Assist  with  improved  ordering,  stock  control  and  store  operations  • Improve  store  staff  productivity  and  job  satisfaction  at  eliminating  repetitive  

non-­‐value  adding  tasks  • Improved  register  productivity  through  elimination  of  price  checks  

 

   

12  |  P a g e  Electronic  Shelf  Labels  

2. BUSINESS  REQUIREMENTS:    

2.1. Target  Customers    Targeted  customers  are    

• Supermarkets  • Pharmacy  

2.2. Functional  Requirements    Following  are  the  detailed  requirements  for    

• Web  application  • PDA  application  • Data  Import  Application  

 

2.2.1. Web  Application    

R.1.  Website  should  be  accessible  only  to  authorized  users.    

 Figure  3:  Login  

 R.2.  Website  should  provide  separate  modes  for    

• Advanced  operations  • Standard  daily  operations    

 

13  |  P a g e  Electronic  Shelf  Labels  

 Figure  4:  Mode  Selection  

 

 2.2.1.1. Advanced  Mode  

 R.3.  Website  should  provide  Product  Searching  based  on    

• Barcode    • Description    • Internal  reference    • Product  Id  

Search  result  should  show  the    • Product  ID    • Product  description  • Barcode  • ESLType  to  which  this  product  is  associated  • Actual  price  of  the  product  • Actual  price  per  unit  of  the  product    

 

14  |  P a g e  Electronic  Shelf  Labels  

 Figure  5:  Product  Search  

 R.4.  Ability  to  add  ESLs  in  bulk  by  providing  the  plain  text  file  in  the  format  (“ESLMac,  ESLType”)    

 

 Figure  6:  ESL  Import  

 R.5.  Ability  to  delete  existing  ESLs  from  the  system.    

 

15  |  P a g e  Electronic  Shelf  Labels  

 Figure  7:  Delete  ESL  

   

R.6.  Functionality  to  determine  the  status  of  the  ESL  (i-­‐e  to  determine  if  the  ESL  is  working  or  not).  The  log  should  provide  the  following  information:  

• Acknowledgement  Date  • Message  ID  • Acknowledgement  Command  • Acknowledgment  Result  • Acknowledgement  Description  • Acknowledgement  Hash  code  

 

 Figure  8:  ESL  Status  /Acknowledgment  

 R.7.  Functionality  to  search  ESLs  based  on    

• ESL  Mac    • ESL  Type    • ESL  signal  level  

16  |  P a g e  Electronic  Shelf  Labels  

• Product  Associated  to  ESL.    • Associated  Product  ID  • ESL  Battery  Level  • Product  Description  • Free  text  search  

 The  result  should  be  shown  in  the  list  with  following  information:  

• ESL  MAC  • ESL  Type  • Product  ID  • Product  Description  • Actual  Price  • Actual  Price  per  unit  

   

 Figure  9:  ESL  Search  

   

R.8.  Functionality   to   search   for   ESL   master   data,   that   provides   the   list   of   ESL   types   with   following  information:  

• ESL  Type  Code  • ESL  Type  Description  • ESL  Display  

The  list  should  be  filterable  based  on    

17  |  P a g e  Electronic  Shelf  Labels  

• ESL  type  code  • ESL  type  description  

   

 Figure  10:  ESL  Master  data  

   

 R.9.  Functionality  to  Modify  the  following  ESL  master  data  details  

• ESL  Type  description  • Set  to  Null  info  (the  code  to  switch  on  all  segments  of  the  ESL  of  particular  type)  

 

 

18  |  P a g e  Electronic  Shelf  Labels  

Figure  11:  ESL  Master  data  modify  

   

R.10.  Functionality  to  update  ESL  firmware,  provide  the  list  of  ESL  types  with  current  firmware  version  installed  and  additional  following  information:  

• ESL  Type  Code  • ESL  Type  Description  • ESL  Display  Technology  • Firmware  Version  • Last  Firmware  Update  date  • Number  of  ESLs  updated  • Firmware  upload  user  name  

 The  list  should  be  possible  to  filter  based  on  :  

• ESL  Type  Code  • ESL  Type  Description  • Last  Firmware  update  date  

   

 Figure  12:  ESL  Firmware  Management  

   

R.11.  Functionality  to  upload  the  new  ESL  firmware  by  providing  following  information  

19  |  P a g e  Electronic  Shelf  Labels  

• Firmware  Version  • Firmware  Description  • Firmware  File  

 

 Figure  13:  Upload  Firmware  

   

R.12.  Ability   to  associate  new  ESL  with  existing  product  and  print   the   stickers   in  medium  /   large   size  once  the  product  is  associated  to  the  ESL.    

 

20  |  P a g e  Electronic  Shelf  Labels  

Figure  14:  Product  ESL  Join  

   

R.13.  Ability   to   associate   ESLs   with   products   in   bulk   mode   by   providing   the   plain   text   file   (“ESL  Mac”,”ProductId”)    Show  following  information  once  the  bulk  association  is  complete:  

• Total  number  of  records  • Number  of  correct  records  • Number  of  incorrect  records  • Incorrect  record  details  

 

 Figure  15:  Product  /  ESL  bulk  join  

 R.14.  Provide  the  list  of  Product  &  ESL  Association,  with  following  information  

• Product  ID  • Product  Description  • ESL  MAC  

 

21  |  P a g e  Electronic  Shelf  Labels  

 Figure  16:  Product  /  ESL  association  List  

   

R.15.  Provide  the  criteria  to  filter  the  list  of  Product  &  ESL  association  based  on    • Product  ID  • Product  Description  • ESL  ID    • Free  text  search.  

 

 Figure  17:  ESL  /  Product  Association  List  Filter  

   

R.16.  ESL  Template   to  map   the  different  segments  of  ESL  with  different  dynamic   fields   (administrator  should  be  able   to  decide  which   fields   to  map  to  which  segment).  Separate  template   for  each  ESL  type  based  on  the  segments  available  for  that  specific  ESL  type.  Administrator  should  also  be  able  to  bind  the  static  information  to  the  ESL  segment.  

22  |  P a g e  Electronic  Shelf  Labels  

 Figure  18:  ESL  Template  

 Once  the  Field  mapping  is  done  provide  the  preview  of  the  mapping    

 Figure  19:  ESL  Template  Preview  

23  |  P a g e  Electronic  Shelf  Labels  

R.17.  Provide  the  list  of  templates  associated  with  the  different  type  of  ESLs  with  following  information:  • ESL  Type  • ESL  Type  description  • Template  description  

 Provide  filtering  criteria  to  filter  the  list  of  templates  and  ESL  type  association  based  on    

• ESL  Type  • ESL  Description  • ESL  Template.  

 

 Figure  20:  ESL  /  Template  Association  List  

 R.18.  Ability  to  change  product  price  &  price  per  unit  and  Provide  the  history  of  previous  changes  in  the  

price  of  the  product  with  following  information:  • Product  ID  • Product  Description  • Associated  ESL  • Price  sent  to  ESL  • Piece  per  unit  sent  to  ESL  • Product  Creation  Date  • Price  Sent  date  • Date  when  the  price  is  published  on  the  ESL  • Acknowledge  date  of  ESL  to  receive  the  price.  

     

24  |  P a g e  Electronic  Shelf  Labels  

 Figure  21:  Change  Product  Price  

 R.19.  Ability  to  set  night  mode  timing  of  the  ESLs  so  that  ESLs  switched  off  automatically  during  specific  

time  period  in  the  night.      

 Figure  22:  Set  Night  Mode  

 R.20.  Website  should  provide  the  details  about  system  health.  That  should  show:  

• The  total  number  of  coordinators  present  • Total  number  of  ESLs  associated  • ESLs  not  responding  since  the  date  of  installation  of  the  system.  

 

25  |  P a g e  Electronic  Shelf  Labels  

 Figure  23:  System  Health  

   

R.21.  Website  should  provide  the  health  of  the  coordinators  graphically,  based  on  specified  interval  of  dates.      

 Figure  24:  Coordinator  Health  Overview  

 

26  |  P a g e  Electronic  Shelf  Labels  

 Figure  25:  Coordinator  Health  Detail  

 R.22.  Website  should  provide  graphically  the  health  of  each  ESL  with  following  information:  

• Associate  product    • Linked  coordinator  • The  time  of  the  last  pending  request  for  that  ESL  which  is  not  processed.    

 

 Figure  26:  ESL  Health  

 R.23.  Ability  to  search,  Add,  Modify  and  delete  Users  of  the  website;  Users  could  be  assigned  the  roles  of    

• Store  manager  • Administrator  

Provide  the  feature  to  filter  the  list  of  users  based  on    • Name  • Surname  • User  ID    • Level  of  administration.  

27  |  P a g e  Electronic  Shelf  Labels  

 Figure  27:  Users  List  

 

 Figure  28:  New  User  Creation  

   

R.24.  Functionality  to  add  the  Application  settings  where  administrator  can  configure  following  settings  • ESL  Firmware  folder  • Hub  Firmware  folder  • Mail  Server  configuration  

 

28  |  P a g e  Electronic  Shelf  Labels  

 Figure  29:  Application  Settings  

 R.25.  Products  import  report  should  be  sent  in  the  via  email  ,  Administrator  should  be  able  to  register  

the  mail  server  by  providing  following  information      

 Figure  30:  Mail  Notification  

 2.2.1.2. Standard  Mode    

R.26.  Provide  the  feature  to  change  the  product  Price  by  providing  the  product  bar  code.    

29  |  P a g e  Electronic  Shelf  Labels  

 Figure  31:  Change  Product  Price  (Standard  Mode)  

 Figure  32:  New  Price  (Standard  Mode)  

 R.27.  Provide  feature  to  set  the  following  promotions:  

• Discount  %  • Highlight  segment  on  ESL  to  indicate  that  the  product  is  in  offer.  • Highlight  Offer  and  3X2  segments  on  ESL  

 

30  |  P a g e  Electronic  Shelf  Labels  

 Figure  33:Product  Offers  (Standard  Mode)  

 Provide  the  product  price  change/  promotion  summary  before  publishing    

 Figure  34:  Price  change  summary  (Standard  Mode)  

 R.28.  Provide  following  product  information  based  on  product  bar  code:  

• Product  ID  • Product  Barcode  • Product  Description  

31  |  P a g e  Electronic  Shelf  Labels  

• Category  •  Actual  Price  • Actual  price  per  unit  • Previous  Price  • Previous  price  per  unit  • Price  publishing  date  &  time  • Base  price  (price  before  any  the  promotion)  

 

 Figure  35:  Product  Detail  1(Standard  Mode)  

 

32  |  P a g e  Electronic  Shelf  Labels  

 Figure  36:Product  Detail  2(Standard  Mode)  

 R.29.  Provide  feature  to  associate  product  with  ESL  based  on  product  ID  or  barcode  and  ESL  MAC  

address.    

 Figure  37:  Product  /  ESL  association  (Standard  Mode)  

 

33  |  P a g e  Electronic  Shelf  Labels  

R.30.  Ability  to  remove  the  product  and  ESL  association  based  on  ESL  Mac  address.    

 Figure  38:  Remove  Product  /  ESL  Join  

       

34  |  P a g e  Electronic  Shelf  Labels  

2.2.2. PDA  Application    

R.1.  PDA   application   should   be   incompliant   with  Windows   Mobile   6.5   or   higher.   The   application   UI  should  be  compliant  with  Motorola  MC55A0  [16]  screen  resolution  i-­‐e  480  x  640    

 Figure  39:  Motorola  MC55A0  

R.2.  Only   the   authorized   User   should   be   able   to   access   the   PDA   application.   User   can   be   either   an  administrator  or  a  store  manager.    

 

35  |  P a g e  Electronic  Shelf  Labels  

Figure  40:  PDA  Login  

     

R.3.  Administrator   should   be   able   to   configure   the   PDA.   Administrator   should   provide   the   following  information:    

• SQL  server  IP  • Database  instance  name  • Database  User  Name  • Database  Password  • Language  selection  (It,  English)  • Administrator  password  • Store  manager  password  

   

 Figure  41:  PDA  configuration  

R.4.  User  should  be  able  to  Associate  the  product  to  the  ESL  by  providing  following  information  • ProductID  /  BarCode  • ESL  Mac    

User  should  be  able  to  provide  the  above  information  either  by  typing  through  built-­‐in  keyboard  or  via  built-­‐in  barcode  scanner    

36  |  P a g e  Electronic  Shelf  Labels  

 Figure  42:  PDA  product  /  ESL  association  

R.5.  If   the  product   is   already  associated   to   some  other  ESL   then  provide   the  warning  message   to   the  user   that   product   is   already   associated   to   another   ESL   &   provide   the   option   to   change   the  association  to  the  newly  provided  ESL  mac.   If  user  confirms  the  new  association  then  change  the  association  otherwise  keep  the  existing  association.    

 Figure  43:  Product  /  ESL  association  

37  |  P a g e  Electronic  Shelf  Labels  

R.6.  Feature  to  disassociate  the  product  &  ESL  join  by  providing  the  MAC  address  of  the  ESL    

 Figure  44:  Product  /  ESL  disassociation  

R.7.  User  should  be  able  to  go  to  the  main  menu  from  any  screen  and  should  be  able  to  logout  and  close  the  application  from  main  menu.  

 

38  |  P a g e  Electronic  Shelf  Labels  

2.2.3. Data  Import  

 This  system  integration  involves  sending  one  or  more  files  with  data  on  products  and  prices  to  publish  on  the  electronic  labels.  There  are  two  methods  to  send  data:  via  FTP  or  plugged  directly  into  a  conventional  folder.  For  the  ftp  transfer  the  standard  user  and  password  are:  s5techftp/ftps5tech.  The  name  of  the  shared  folder  is  \\<machine  name>\ftp  that  can  be  accessed  using  the  same  user  and  password  as  the  ftp  method  (in  the  <machine  name>  domain).  The  format  is  the  standard  CSV  without  string  delimiters  and  the  default  character  to  separate  fields  is  "|"  (pipe).  The  record  of  the  file  may  vary  depending  on  needs,  but  you  must  submit  a  minimum  set  of  information  specified  below.      Naming  convention:  S5_FTPINT_AAAAMMGGHHMMSS.s5  where:  S5_FTPINT  =  fixed  prefix  YYYYMMDDHHMMSS  =  creation  date  and  time  of  file  (four  digits  for  year,  two  digits  for  month,  day,  hour,  minutes  and  seconds)  s5  =  fixed  file  extension      

39  |  P a g e  Electronic  Shelf  Labels  

Description  of  mandatory  fields:    

Pos.   Which  data  contains  Type  of  data  expected  

Maximum  length  or  permitted  values   Notes  

1  Product  code  (the  internal  reference)  

Alphanumeric   20  

It’s  possible  to  use  this  value  to  print  the  barcode.  In  this  case  the  value  must  be  numeric  and  13  characters  length.  

2   Product  category   Alphanumeric   20  

Information  not  mandatory,  the  field  must  be  present  also  when  empty.  

3   Product  description   Alphanumeric   100    

4   Price   Numeric   Between  0.00  and  1999.99    

5   Price  per  unit   Numeric   Between  0.00  and  1999.99    

6   Barcode  number   Numeric   13    

7  First  line  of  the  paper  label  

Alphanumeric   60  

The  full  print  of  this  line  depends  from  the  used  font  and  the  label’s  dimensions  

8  Second  line  of  the  paper  label  

Alphanumeric   60  

The  full  print  of  this  line  depends  from  the  used  font  and  the  label’s  dimensions  

9  Third  line  of  the  paper  label  

Alphanumeric   60  

The  full  print  of  this  line  depends  from  the  used  font  and  the  label’s  dimensions  

10  Date  and  time  to  publish  the  price  

Numeric  Date  and  time  in  YYYYMMDDHHMMSS  format  

Information  is  not  mandatory  at  present,  this  field  is  not  used  but  it  is  reserved  for  future  use.  

11   Department   Alphanumeric   20  

Information  not  mandatory,  the  field  must  be  present  also  when  empty.  

12   Aisle   Alphanumeric   20   Information  not  

40  |  P a g e  Electronic  Shelf  Labels  

mandatory,  the  field  must  be  present  also  when  empty.  

13   Shelf   Numeric   Between  0  and  9  

Information  not  mandatory,  the  field  must  be  present  also  when  empty.  

14   Position   Alphanumeric   20  

Information  not  mandatory,  the  field  must  be  present  also  when  empty.  

15   Unit  of  measure   Alphanumeric   Allowed  values:  KG,  LT  and  MT    

16   Product  cancellation   Numeric  

0  or  nothing  =  no  action;  different  from  zero  =  eliminates  the  barcode  of  the  product  from  'list  of  multiple  references  (if  it’s  not  the  only  reference)  

 

17  Code  used  in  barcode  printing  

Alphanumeric   30  

This  is  the  field  used  to  print  the  barcode  on  the  sticker.  The  content  of  this  field  must  be  in  accordance  with  the  type  of  barcode  selected,  for  example,  must  be  of  thirteen  digits  (including  check  digit)  in  the  case  of  standard  EAN-­‐13.  As  you  can  guess  this  field  can  have  a  value  different  from  the  field  "INTERNAL  PRODUCT  CODE”  which  represents  the  internal  reference.  

18   Base  Price   Numeric   Between  0.00  and  1999.99  

The  price  before  promotion.  

19   Promotion  start  date   Numeric   Date  in  DDMMYY  

format  The  promotion  will  start  at  01.00  o’clock  

41  |  P a g e  Electronic  Shelf  Labels  

on  the  day  specified.  The  icons  PROMO,  FINO  AL,  SCONTO,  OFFERTA  and  PUNTI  will  be  switched  on  automatically  in  relation  to  the  content  of  the  fields  Discount,  Promotion  Text  and  Points.  

20   Promotion  end  date   Numeric   Date  in  DDMMYY  

format  

Information  not  mandatory,  the  field  must  be  present  also  when  empty.  If  mentioned  the  promotion  will  end  at  01.00  o’clock  on  the  next  day  to  the  day  specified.  After  this  time  all  the  icons  PROMO,  FINO  AL,  SCONTO,  OFFERTA,  PUNTI  will  be  switched  off  and  the  price  gets  back  to  the  value  contained  in  base  price  field.  

21   Discount   Numeric   Integer  between  0  and  99  

This  field  is  required  to  display  the  discount  percentage  with  “SCONTO”  switched  on,  if  you  are  in  between  the  promotion  start  and  end  date.  

22   Symbol  A   Numeric   0  or  1   0  means  off  and  1  on  23   Symbol  B   Numeric   0  or  1   0  means  off  and  1  on  24   Symbol  C   Numeric   0  or  1   0  means  off  and  1  on  25   Symbol  D   Numeric   0  or  1   0  means  off  and  1  on  26   Symbol  N   Numeric   0  or  1   0  means  off  and  1  on  27   Symbol  Moon   Numeric   0  or  1   0  means  off  and  1  on  

28   Symbol  Refresh   Numeric   0  or  1   0  means  off  and  1  on  

29   Symbol  Hand   Numeric   0  or  1   0  means  off  and  1  on  

42  |  P a g e  Electronic  Shelf  Labels  

30   Symbol  SOTTOCOSTO   Numeric   0  or  1   0  means  off  and  1  on  

31   Promotion  Text   Alphanumeric  

For  example  “3x2”,  in  general  NxN  where  N  is  between  0  and  99  

This  field  is  required  to  display  the  offer  type  with  “OFFERTA”  switched  on,  if  you  are  in  between  the  promotion  start  and  end  date.  

32   Points   Alphanumeric   Integer  between  0  and  99999  

This  field  is  required  to  display  the  points  value  with  “PUNTI”  switched  on,  if  you  are  in  between  the  promotion  start  and  end  date.  

33   Symbol  Pz   Numeric   0  or  1   0  means  off  and  1  on    Here  is  a  sample  of  file  with  the  name  S5_FTPINT_201003011115000.s5,  there  is  only  two  records  and  due  to  lack  of  space  they  are  represented  on  multiple  rows:   000310426|001014014098|RISOTTO F/PORCINI GALLO |000001.35|000007.71|8004393100011|RISOTTO F/PORCINI GALLO | RISO GALLO S 8001420005813 GR.175 | 222 000310426 2 DP I 6|20111021150436||11|2|12|KG|0|9990003104267|101011|211011|27|1|0|0|0|0|0|0|0|0| 3X2|00000|0 000350072|001014014098|G.GOLD SALM/POL DADINI |000001.35|000007.71|8004293100013|G.GOLD SALM/POL DADINI | NESTLE' ITAL 0000080361497 GR.85 | 232 000350072 5 DP I 24|20111021150436||11|2|12|KG|0|9990003500723|||27|1|0|0|0|0|1|0|0|0| |00067|0    

43  |  P a g e  Electronic  Shelf  Labels  

 

3. DESIGN  3.1. Application  Flow  

 Following  is  the  application  flow  for  data  import  and  PDA  /  web  application  to  ESL  e-­‐g  price  update.  

 

 Figure  45:  Application  Flow  

 

/ Web  Page  PDA SQLDB

Backend service

XML

ESL

Price info

Retrieve updated info

Update records

Updated info

Product import file

 

Request to ESL Response from ESL

44  |  P a g e  Electronic  Shelf  Labels  

3.2. Web  Application  Architecture    Web  application  is  based  on  multi-­‐tier  architecture  [4]  (often  referred  to  as  n-­‐tier  architecture)  is  a  client–server  architecture  in  which  presentation,  application  processing,  and  data  management  functions  are  logically  separated.  Three-­‐tier  architecture  is  typically  composed  of  a  presentation  tier,  a  business  or  data  access  tier,  and  a  data  tier.    

• Presentation  tier    

This  is  the  topmost  level  of  the  application.  The  presentation  tier  displays  information  to  the  client.    • Application  tier  (business  logic)  

 The  logical  tier  is  pulled  out  from  the  presentation  tier  and,  as  its  own  layer,  it  controls  an  application’s  functionality  by  performing  detailed  processing.  

 • Data  tier  

 This  tier  consists  of  database  servers.  Here  information  is  stored  and  retrieved.  This  tier  keeps  data  neutral  and  independent  from  application  servers  or  business  logic.  Giving  data  its  own  tier  also  improves  scalability  and  performance.    

 Figure  46:  Web  Application  Three  tier  Architecture  

Presentation Layer

Business Logic

 

DataBase

First Layer

Second Layer

Third Layer

45  |  P a g e  Electronic  Shelf  Labels  

 

3.3. Database  Design    Relational  Database  [5]  is  used  to  store  the  data.    

 Figure  47:  DB  Users  

   

rolesrole

roleDescription

userPasswordsid

userId

password

creationDate

usersuserId

password

name

surname

role

lastModify

v isible

46  |  P a g e  Electronic  Shelf  Labels  

   Figure  48:  DB  Coordinators  

coordinatorscoordinator

ip

port

channel

status

machineName

lastStatusUpdate

coordinatorDescription

coordinatorStatuscoordinatorStatus

coordinatorStatusDescription

coordinatorStatusLogid

coordinator

ip

port

channel

status

machineName

logDateTime

47  |  P a g e  Electronic  Shelf  Labels  

 Figure  49:  DB  Hubs  

 

hubFirmwareshubType

firmwareV ersion

firmwareDescription

localF ileName

localPath

uploadDate

uploadUser

hubshub

hubDescription

hubTy pe

mainGateway

hubLocation

battery Lev el

firmwareV ersion

lastF irmwareUpdate

lanIpA ddress

installationKey

freeMemory

freeDisk

channel802_15_4

w ifiC hannel

temperature

eth0Status

eth1Status

powerState

lastEv ent

lastUpdate

updateUser

macC oordinator

hubTypeshubType

hubTy peDescription

firmwareV ersion

serv erF irmwareV ersion

lastF irmwareUpdate

48  |  P a g e  Electronic  Shelf  Labels  

 Figure  50:Db  ESLs  

 

displayTypesdisplay Ty pe

displayDescription

isDotMatrix

grey Scale

fullC olor

wholeImageWidth

wholeImageHeight

eslFirmwareseslTy pe

firmwareV ersion

firmwareDescription

localF ileName

localPath

uploadDate

uploadUser

eslFirmwaresStatuseslTy pe

firmwareV ersion

coordinator

uploadStatus

uploadDescription

logDateTime

eslsesl

eslTy pe

associatedC oordinator

product

lastUpdate

updateUser

eslStatus

battery Lev el

signalLev el

firmwareV ersion

lastF irmwareUpdate

txPower

alarmMode

installationKey

temperature

lifetimeHours

channel

railDetected

installationDateTime

hashC odeA ctiv ePrice

hashC odePendingPrice

coordinatorMac

eslShortA ddress

enableStatistics

eslTypeseslTy pe

eslTy peDescription

display Ty pe

timeToSendStatus

pollingTime

detachTime

forcedDetachTime

defaultTemplate

firmwareV ersion

serv erF irmwareV ersion

lastF irmwareUpdate

networkEquiv alentTy pe

setToNullInfo

unauthInfo

templatesDefaulttemplate

templateDescription

templateF ielName

thumbnailImage

isDefault

display Ty pe

49  |  P a g e  Electronic  Shelf  Labels  

 Figure  51:Db  Products  

3.4. Page  Layout    

3.4.1. Advanced  Mode  Page  Layout    For  advanced  page  mode  there  are  two  levels  of  content  areas:  

• Main  Content  Area  (Content  Area  Level  1)  • Detailed  Content  Area  (Content  Area  Level  2)  

50  |  P a g e  Electronic  Shelf  Labels  

 

3.4.1.1. Main  Content  Area  (Content  Area  Level  1)    There  are  following  sections  in  the  main  content  area    

• Header  Represents  the  company  Logo  /  banner.    

• Main  Menu  Represents  the  navigation  to  main  pages  of  the  website    

• Pathway  Represents  the  current  page  navigation  (bread  crumbs)    

• Search  Function  Represents  the  filter  section,  to  filter  the  search  results.    

• Message  Window  A  collapsible  window  represents  the  current  activities  e-­‐g:  Addition  of  ESLs  etc.    

• Buttons  Area  All  the  buttons  to  perform  some  action  specific  to  the  displayed  page  will  be  shown  in  this  section.      

• List  View  List  view  represents  the  search  results.  The  list  view  have  paging  and  sorting    for  each  column.  The  record  in  the  list  view  can  be  linked  to  the  detailed  screen,  which  will  navigate  to  the  detailed  content  area  (content  area  level  2).  

 

51  |  P a g e  Electronic  Shelf  Labels  

 Figure  52:  Content  Area  Level  1  

 

3.4.1.2. Detailed  Content  Area  (Content  Area  Level  2)    

52  |  P a g e  Electronic  Shelf  Labels  

Detailed  content  area  is  shown  after  once  the  record  is  selected  from  the  content  area  level  1.  There  are  following  sections  in  the  main  content  area    

• Header  Represents  the  company  Logo  /  banner.    

• Main  Menu  Represents  the  navigation  to  main  pages  of  the  website    

• Pathway  Represents  the  current  page  navigation  (bread  crumbs)    

• Message  Window  A  collapsible  window  represents  the  current  activities  e-­‐g:  Addition  of  ESLs  etc.    

• Content  Detail  Underneath  the  message  window  details  of  the  record  selected  at  level  1  will  be  shown.    

 

   

Figure  53:  Content  Area  Level  2  

 

53  |  P a g e  Electronic  Shelf  Labels  

3.4.2. Standard  Mode  Page  Layout    Standard  page  has  two  level  of  navigation  

• Main  Page  • Detailed  Operation  Page  

3.4.2.1. Main  Page    Main  page  has  following  sections:    

• Header  Represents  the  title  of  the  content    

• Options  Represents  the  operations  that  the  user  can  perform,  each  option  will  navigate  the  user  to  the  detailed  operation  page.    

 

 Figure  54:  Main  Page  (Standard  Mode)  

 

HEADER  

Option 1

Option 2

Option 3

Option 4

54  |  P a g e  Electronic  Shelf  Labels  

3.4.2.2. Detailed  Operation  Page    This  page  appears  after  selection  of  specific  option  from  main  page  in  standard  mode.    This  page  will  act  like  a  wizard  to  navigate  to  different  steps  and  perform  operations  in  each  step.    There  are  following  sections  in  this  page:    

• Steps  There  could  be  multiple  steps  involved  for  specific  operation,  current  steps  will  be  highlighted  in  the  steps  section.    

• Title  Represents  the  title  of  the  current  step    

• Content  Represents  the  fields,  labels  and  actions  to  be  performed  for  current  step.    

• Navigation  Buttons  The  navigation  between  the  different  steps  is  performed  by  the  button  in  the  navigation  button  bar.  The  buttons  in  the  navigation  bar  are  “Next”,  “Previous”  &  “Home”  

 

 Figure  55:  Detailed  Operation  Page  (Standard  Mode)  

Title  

Steps

Navigation Buttons

Content

55  |  P a g e  Electronic  Shelf  Labels  

3.4.3. Web  Application  Navigation    

• Login  page  to  mode  selection    

 Figure  56:  Login  to  Mode  Selection  Navigation  

 • Standard  Mode  Navigation  

Login  

Advanced Mode

Standard Mode

56  |  P a g e  Electronic  Shelf  Labels  

 Figure  57:  Standard  Mode  Navigation  

     

• Advanced  Mode  Navigation      

Standard  Mode  Home  

Page  

Change Price

Product Details

ESL Join ESL Remove Join

Identify Product

New Price

Add Options (Discount,

Offer,

Summary

Identify Product

Detailed View

57  |  P a g e  Electronic  Shelf  Labels  

 

 Figure  58:  Advanced  Mode  Navigation  

         

Advanced  Mode  Home  Page  

ESL Network System Health Users Product

Management Application

Settings

ESL Master Data/ Type

registry

ESL Template

Add ESL Remove ESL Night Mode

System Overview

Coordinator Overview

ESL Overview

Add / Modify User Delete User

Mail Notification

Product/ ESl Join

New Join Delete Join Massive Join

58  |  P a g e  Electronic  Shelf  Labels  

4. IMPLEMENTATION    

4.1. Web  Application      Microsoft  Asp.Net  [6][7]  (.Net  framework  3.5)  [8]  for  the  web  pages  with  code  behind  of  C#  is  used.  ASP.NET  is  a  server-­‐side  Web  application  framework  designed  for  Web  development  to  produce  dynamic  Web  pages.  It  was  developed  by  Microsoft  to  allow  programmers  to  build  dynamic  web  sites,  web  applications  and  web  services.  ASP.NET  is  built  on  the  Common  Language  Runtime  (CLR)  [10],  allowing  programmers  to  write  ASP.NET  code  using  any  supported  .NET  language.    

4.1.1. Master  Page    Web  application  makes  use  of  the  master  page  [6],  which  allow  for  the  template  based  page  development.  Master  templates  have  place-­‐holder  controls,  called  “ContentPlaceHolders”  to  denote  where  the  dynamic  content  goes,  as  well  as  HTML  and  JavaScript  shared  across  child  pages.    Child  pages  use  those  “ContentPlaceHolder”  controls,  which  must  be  mapped  to  the  place-­‐holder  of  the  master  page  that  the  content  page  is  populating.  The  rest  of  the  page  is  defined  by  the  shared  parts  of  the  master  page.  All  markup  and  server  controls  in  the  content  page  must  be  placed  within  the  ContentPlaceHolder  control.    When  a  request  is  made  for  a  content  page,  ASP.NET  merges  the  output  of  the  content  page  with  the  output  of  the  master  page,  and  sends  the  output  to  the  user.  The  master  page  remains  fully  accessible  to  the  content  page.    

59  |  P a g e  Electronic  Shelf  Labels  

 Figure  59:  Master  Page  

 

4.1.2. Code  Behind    C#  code  behind  [14]  is  used  for  Asp.Net.  Code-­‐behind  refers  to  code  for  ASP.NET  page  that  is  contained  within  a  separate  class  file.  This  allows  a  clean  separation  of  HTML  from  your  presentation  logic.    

 Figure  60:  Code  behind  

60  |  P a g e  Electronic  Shelf  Labels  

4.1.3. Database  /  Database  connectivity    Microsoft  SQL  Server  [9]  is  used  as  a  database.  Microsoft  SQL  Server  is  a  relational  database  management  system  developed  by  Microsoft.  As  a  database,  it  is  a  software  product  whose  primary  function  is  to  store  and  retrieve  data  as  requested  by  other  software  applications.  For  connection  between  web  application  and  database  SqlClient  [11]  data  provider  is  used.  The  .NET  Framework  Data  Provider  for  SQL  Server  (SqlClient)  uses  its  own  protocol  to  communicate  with  SQL  Server.  It  is  lightweight  and  performs  well  because  it  is  optimized  to  access  a  SQL  Server  directly  without  adding  an  OLE  DB  [12]  or  Open  Database  Connectivity  (ODBC)  [13]  layer.  

 

 Figure  61:  Data  provider  (SqlClient)  

 

4.1.4. Internet  Information  Server  (IIS)    IIS  [15]  is  used  for  web  application  hosting.  IIS  is  an  extensible  web  server  is  created  by  Microsoft  for  use  with  Windows  NT  family.  IIS  supports  HTTP,  HTTPS,  FTP,  FTPS,  SMTP  and  NNTP.      

61  |  P a g e  Electronic  Shelf  Labels  

 Figure  62:  IIS  /  Asp.Net  page  life  cycle  

 

4.2. XML      XML  is  used  to  communicate  between  the  ESL  network  application  and  the  web  application  via  sql  server  database.  Following  different  XMLs  are  used  for  communication.    

4.2.1. ESL  Status  Request  XML    <?xml  version='1.0'  encoding='UTF-­‐8'?>  <message  msgId="12"  msgCommand="EslStatusRequest"    xsi:schemaLocation="http://s5tech.com/network  schema.xsd"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-­‐instance"  xmlns="http://s5tech.com/network">     <eslList  all="true"  />     <!-­‐-­‐  request  status  for  specific  list  of  esls  -­‐-­‐>         <eslList>       <mac>0015BC0000000011</mac>       <mac>0015BC0000000012</mac>       <mac>0015BC0000000013</mac>       <mac>0015BC0000000014</mac>       <mac>00124B000112CA06</mac>       <mac>0015BC0000000016</mac>     </eslList>        </message>  

62  |  P a g e  Electronic  Shelf  Labels  

   

4.2.2. ESL  Status  Response    <?xml  version='1.0'  encoding='UTF-­‐8'?>  <message  msgId="12"  msgCommand="EslStatus"  xsi:schemaLocation="http://develco.com/s5tech  schema.xsd"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-­‐instance"  xmlns="http://develco.com/s5tech">     <eslStatus  mac="0015BC000D000001">       <batteryLevel>99</batteryLevel>       <txPower>99</txPower>       <macAssociatedHub>0015BC000D000601</macAssociatedHub>       <temperature>65</temperature>       <firmwareVersion>1.00.5</firmwareVersion>       <lifetimeHours>999</lifetimeHours>       <channel>14</channel>          <railDetected>true</railDetected>          <nightMode>false</nightMode>          <state>Standby</state>       <hubsInRange>         <hub  mac="0015BC000D000601"  signalLevel="78"/>         <hub  mac="0015BC000D000602"  signalLevel="45"/>         <hub  mac="0015BC000D000604"  signalLevel="57"/>         <hub  mac="0015BC000D000607"  signalLevel="34"/>       </hubsInRange>     </eslStatus>  </message>      

4.2.3. ESL  night  mode  Request  XML    

<?xml  version='1.0'  encoding='UTF-­‐8'?>  <message  msgId="12"  msgCommand="EslEnterNightMode"  xsi:schemaLocation="http://develco.com/s5tech  schema.xsd"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-­‐instance"  xmlns="http://develco.com/s5tech">     <!-­‐-­‐  Expect  acks  for  each  esl  in  the  list  -­‐-­‐>       <eslList>       <mac>0015BC0000000011</mac>       <mac>0015BC0000000012</mac>     </eslList>     <time  activation="2010-­‐02-­‐22T11:53:33"  durationSecs="28800"/>  </message>    

 

4.2.4. ESL  Enter  night  mode  (for  all  ESLs)  XML    <?xml  version='1.0'  encoding='UTF-­‐8'?>  <message  msgId="12"  msgCommand="EslEnterNightMode"    xsi:schemaLocation="http://develco.com/s5tech  schema.xsd"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-­‐instance"  xmlns="http://develco.com/s5tech">  

63  |  P a g e  Electronic  Shelf  Labels  

  <!-­‐-­‐  Expect  acks  for  each  esl  in  the  list  -­‐-­‐>       <eslList  all="true"  />      <time  activation="2010-­‐02-­‐22T11:53:33"  durationSecs="28800"/>  </message>    

4.2.5. ESL  Acknowledge  Night  mode  Response  XML    <?xml  version='1.0'  encoding='UTF-­‐8'?>  <ackMessage  msgId="1234"  msgCommand="EslEnterNightMode"  result="Success"  mac="0015BC0000886411"  xsi:schemaLocation="http://develco.com/s5tech  schema.xsd"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-­‐instance"  xmlns="http://develco.com/s5tech">     <description>this  is  the  description  of  the  result  /  ack  message</description>  </ackMessage>    

4.2.6. ESL  Price  update  Request  XML    The  price  update  information  is  encrypted.    <?xml  version='1.0'  encoding='UTF-­‐8'?>  <message  msgId="12"  msgCommand="EslPriceUpdate"    xsi:schemaLocation="http://develco.com/s5tech  schema.xsd"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-­‐instance"  xmlns="http://develco.com/s5tech">     <!-­‐-­‐  Expect  acks  for  each  esl  in  the  list  -­‐-­‐>       <eslList>       <mac>0015BC0000000011</mac>       <mac>0015BC0000000012</mac>       <mac>0015BC0000000013</mac>       <mac>0015BC0000000014</mac>       <mac>0015BC0000000015</mac>       <mac>0015BC0000000016</mac>     </eslList>     <eslPriceData  activationTime="2010-­‐02-­‐22T01:02:05"  hashCode="123456789">         VGhlIGNvbW11bmljYXRpb24gaXMgYmFzZWQgb24gYSBtZXNzYWdlIHF1ZXVlIHNlcnZpY2Uu     </eslPriceData>  </message>    

4.2.7. ESL  Acknowledge  Price  update  Response  XML    <?xml  version='1.0'  encoding='UTF-­‐8'?>  <ackMessage  msgId="1234"  msgCommand="EslPriceUpdate"  result="Success"  mac="0015BC0000000011"  xsi:schemaLocation="http://develco.com/s5tech  schema.xsd"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-­‐instance"  xmlns="http://develco.com/s5tech">     <description>this  is  the  description  of  the  result  /  ack  message</description>     <hash>143532451234</hash>  </ackMessage>  

64  |  P a g e  Electronic  Shelf  Labels  

5. FUTURE  WORK    

5.1. Responsive  design  of  Web  application    Responsive Web Design (RWD) [20] is a Web design approach aimed at crafting sites to provide an optimal viewing experience—easy reading and navigation with a minimum of resizing, panning, and scrolling—across a wide range of devices (from mobile phones to desktop computer monitors).

A site designed with RWD adapts the layout to the viewing environment by using fluid, proportion-based grids [17] flexible images and CSS3 [18] media queries [18], an extension of the @media rule [20]

• The fluid grid concept calls for page element sizing to be in relative units like percentages, rather than absolute units like pixels or points

• Flexible images are also sized in relative units, so as to prevent them from displaying outside their containing element

• Media queries allow the page to use different CSS style rules based on characteristics of the device the site is being displayed on, most commonly the width of the browser.

• Server-side components (RESS) in conjunction with client-side ones such as media queries can produce faster-loading sites for access over cellular networks and also deliver richer functionality/usability avoiding some of the pitfalls of device-side-only solutions.

 

5.2. Graphical  ESL  display    To  implement  fully  graphical  electronic  shelf-­‐edge  labels  (ESLs),  which  can  be  used  to  display  text,  numbers,  barcodes,  QR  codes  and  brand  logos  anywhere  on  freely-­‐configurable  displays.      

65  |  P a g e  Electronic  Shelf  Labels  

 Figure  63:  Graphical  ESL  display  

   

66  |  P a g e  Electronic  Shelf  Labels  

 

6. REFERENCES    1. http://www.s5tech.com/  2. http://en.wikipedia.org/wiki/Electronic_Shelf_Label  3. http://en.wikipedia.org/wiki/Network_topology  4. http://en.wikipedia.org/wiki/Multitier_architecture  5. http://en.wikipedia.org/wiki/Relational_database  6. http://en.wikipedia.org/wiki/ASP.NET  7. http://www.asp.net/  8. http://en.wikipedia.org/wiki/.NET_Framework  9. https://www.microsoft.com/en-­‐us/sqlserver/default.aspx  10. http://en.wikipedia.org/wiki/Common_Language_Runtime  11. http://msdn.microsoft.com/en-­‐us/library/a6cd7c08(v=vs.110).aspx  12. http://en.wikipedia.org/wiki/OLE_DB  13. http://en.wikipedia.org/wiki/ODBC  14. http://support.microsoft.com/kb/303247  15. http://en.wikipedia.org/wiki/Internet_Information_Services  16. http://www.motorolasolutions.com/US-­‐

EN/Business+Product+and+Services/Mobile+Computers/Handheld+Computers/MC55A0#  

17. Marcotte, Ethan (March 3, 2009). "Fluid Grids". A List Apart.  18. Gillenwater,  Zoe  Mickley  (Dec  15,  2010).  "Examples  of  flexible  layouts  with  CSS3  

media  queries".  Stunning  CSS3.  p.  320.  ISBN  978-­‐0-­‐321-­‐722133.  19. http://www.w3.org/TR/CSS2/media.html#at-­‐media-­‐rule  20. http://en.wikipedia.org/wiki/Responsive_web_design