=Paper= {{Paper |id=Vol-2816/paper11 |storemode=property |title=NoBis: A Crowd Monitoring Service Against COVID-19 |pdfUrl=https://ceur-ws.org/Vol-2816/paper11.pdf |volume=Vol-2816 |authors=Mattia Avanzi,Riccardo Coniglio,Giulia Cisotto,Marco Giordani,Nicola Ferro |dblpUrl=https://dblp.org/rec/conf/ircdl/AvanziCCG021 }} ==NoBis: A Crowd Monitoring Service Against COVID-19== https://ceur-ws.org/Vol-2816/paper11.pdf
             NoBis: A Crowd Monitoring Service
                     Against COVID-19

     Mattia Avanzi? , Riccardo Coniglio∗ , Giulia Cisotto?? , Marco Giordani, and
                                   Nicola Ferro
            m8.avanzi@gmail.com, riccardo.coniglio@gmail.com,
            giulia.cisotto.1@unipd.it, giordani@dei.unipd.it,
                               ferro@dei.unipd.it

           Department of Information Engineering, University of Padova, Italy



         Abstract. This paper presents NoBis, a new service for monitoring the
         crowding of indoor spaces in the COVID-19 era. The name links the
         concept of “We” to the desire of not having an “Encore” of the first
         lockdown experienced worldwide in March 2020. NoBis is a REST-based
         web application which provides tools for allowing “Referents” to manage
         places to be monitored and, at the same time, for allowing end users
         to consult in real time the crowding state related to monitored places.
         The entire platform is based on the use of QR codes which users scan
         each time they enter (Check-in operation) and exit (Check-out opera-
         tion) from a monitored place. NoBis is implemented in JavaScript both
         for the front end, with the help of libraries such as JQuery, and the back-
         end, through the use of Node.js. This choice allowed for a more agile and
         ”lightweight” development, in accordance with the time constraints re-
         quired by the project. During the month of September 2020 a preliminary
         testing phase took place at the Department of Information Engineering
         of the University of Padova. NoBis represents a valuable tool to monitor
         crowding in libraries and similar enclosed places accessible to the public.


1      Introduction
SARS-CoV-2 (COVID-19) represents the most recent and largest pandemic of the last
Century, and has caused in the first nine months of 2020 more than one million deaths
globally. After China, Italy was – unexpectedly – the EU country most affected by
its spread, with Italian people experiencing very hard times and facing ever seen chal-
lenges. It was clear from the beginning that social distancing was a useful option to
counter the spread of the pandemic. Subsequent studies related to COVID-19 [1, 2] have
?
     Equally contributing authors.
??
     G. Cisotto is also with the Inter-University Consortium for Telecommunications
     (CNIT), Italy, and with the National Center of Neurology and Psychiatry, Tokyo,
     Japan.
     Copyright c 2021 for this paper by its authors. Use permitted under Creative Com-
     mons License Attribution 4.0 International (CC BY 4.0). This volume is published
     and copyrighted by its editors. IRCDL 2021, February 18-19, 2021, Padua, Italy.
confirmed the effectiveness of maintaining social distancing, which is therefore neces-
sary in the absence of pharmacological alternatives. In this scenario, ICT and digital
technologies gained much traction as they provide an invaluable support to society,
especially for containing the number of new infections. An example is the “Immuni”
application [3], an ICT solution proposed by the Italian Government, which imple-
ments the exposure notification system developed by Apple [4] and Google, based on
the generation, sharing, and rotation of random keys and identifiers via the Bluetooth
technology. This system allows for tracking, anonymously, the contacts of individuals,
and for identifying, in case of COVID-19 positive subjects, networks of infected indi-
viduals in a simple and fast way. Along these lines, in this paper we introduce NoBis,
a crowd monitoring service, complementing existing systems, e.g., Immuni, by allow-
ing citizens to monitor in real time the crowd level of public and private places and
adapt their mobility accordingly. NoBis is based on the technology of the QR code,
a two-dimensional matrix barcode, which is displayed near the entrance and the exit
of places to be monitored. When framing the QR codes with a smartphone camera,
the users perform check-in/check-out operations at/from these venues, thus making
it possible for NoBis to monitor how many visitors are at a certain location. Users
can also access such information through a public website in order to avoid moving to
excessively crowded areas and to reduce the opportunities for gathering and, therefore,
for further the spreading of COVID-19.
    NoBis is a free of charge and and easy-to-use system, which requires neither external
hardware nor dedicated apps, while only the scanning of a QR code with the built-in
smartphone camera. Moreover, NoBis does not pose any privacy issue, since it does
not store any personal data.
    The paper is organized as follow: Section 2 presents some services similar to NoBis;
Section 3 introduces the architecture of NoBis, while Section 4 describes the current
prototype; Section 5 conducts a preliminary evaluation of NoBis, and Section 6; finally,
Section 7 draws some conclusions and outlooks for future work.


2    Related Work and Background
NoBis differs from already existing systems for crowd monitoring and exposure notifi-
cation, as the ones listed in Table 1 (see [5] for an extended comparison), for simplicity
of installation and use, and for privacy management.


           Table 1: Example of technological solutions against COVID-19.

        App Name Hardware App needed Technology Use cases
        Immuni      No    Yes        Bluetooth Exposure notification
        Affluences  Yes   No         Mixed      Crowd monitoring
        Google Maps No    Yes        GPS        Crowd monitoring
        NoBis       No    No         QR Codes Crowd monitoring


    Like most European countries, Italy has developed a Bluetooth-based application
for contact tracing called Immuni, a tracking system that safeguards the privacy of
its users. In these regards, NoBis does not aim at replacing Immuni by implementing
contact tracing functionalities but offers a complementary service where users can limit
                         Schema Unipd NoBis Project 1-1.png




                       Fig. 1: NoBis entity-relationship schema.



and adapt their mobility decisions depending on the crowd level of the different areas.
Among others, two services to estimate the affluence of public places are worth men-
tioning: “Google Maps” and “Affluences”. The first one takes into account the location
information that Google Maps users provide to the system over time. Affluences, on
the other hand, which is mostly used in libraries, museums, stores and swimming pools,
provides an estimate of people and uses multiple technologies. In particular, Affluences’
predictive algorithm estimates the crowd level by taking into account both the infor-
mation made available from the sensors deployed at the place of interest, as well as
the access history, calendar, and number of visits to the application by users. Unlike
Affluences, NoBis does not require expensive sensing technologies but it simply needs
to post two printable posters on the main entrance and exit of a location, to display
the corresponding QR codes, thereby providing a cost-free solution.


3     Design and Architecture
3.1   Conceptual Design
Figure 1 shows the Entity-Relationship scheme of the NoBis application. Its main
elements are:

 – Places and Buildings which represent the monitored areas where a Building, e.g.
   a University department, can be divided into several Places, e.g. a library or a
   computer room, to be monitored. We can also attach additional information to
   each Place, such as a Category or Opening hours.
 – End Users who scan the QR code at the entrance/exit of a Place, and that can
   visit the NoBis website to check the current crowd level of the Places traced by the
   system. An End User is represented as a Person: an anonymous token generated
   when an End User checks-in at a Place, in order to keep track of how many people
                       Fig. 2: Check-in/out operations workflow.


   are there, still ensuring their privacy. A Person is associated with a Log entry,
   where also Feedback information can be reported to let the End Users assess the
   crowding state of a Place.
 – Referents can create new Buildings and Places to be monitored, and download
   the corresponding QR codes to deploy. Also, the Referent can inspect the actual
   number of Persons who checked-in at the Places he/she has created, as well as
   any problems that the Users might have eventually, anonymously, Reported. The
   Referent status must be directly enabled by an Admin.


3.2   Workflow
Check-in and Check-out Operations As shown in Figure 2, the user, after
scanning the QR code, is redirected to the page of the check-in/check-out operation,
which automatically starts a five second timer. When the timer expires, the operation
is recorded within the system by calling a specific API. This time interval allows the
user to cancel the current operation if it was started by mistake. If the users are aware
that they want to continue with the current operation, they do not have to wait for
the timer to expire but can put their smartphone on standby so that the process
will be completed in the background. In this way, we provided a process to make
the numerous operations that may take place during day less time consuming, still
offering a possibility to cancel the useless ones. For security reasons it is not possible
to programmatically close browser tabs, so at the end of the Check-in and Check-out
processes the web page may remain open [6]. After reopening the browser, the web
page is reloaded and, if the user does not stop it, this will result in a new Check-in or
Check-out operation and a consequent inconsistency in NoBis database. To get around
this issue, we save in the device storage the UUID (Universally unique identifier) of the
location of the current operation and timestamp and only when checking out from the
location, that information is deleted. Therefore, if the users try to do multiple check-in
operations in a place where they have already registered in the previous eight hours,
the page shows that the operation may be repeated and does not activate the timer,
asking the users for an explicit confirmation to perform the operation. The situation
is similar if users do not close the check-out page.

JSON Web Token Usage To ensure privacy, we associate each user with an
anonymous UUID with a daily validity, stored inside a JSON Web Token (JWT) and
                 Fig. 3: Software architecture and technological stack.



sent to the user device during the first check-in/out of the day, as shown in Figure 2. In
this way it was possible to understand if a user has forgotten to perform a check-in or
check-out and ensure a greater consistency of the logs. Additionally, the UUID permits
all actions that the device performs in the system to be identified without using or
storing any personal/sensitive data about the User and/or his/her device.


3.3   Architecture
Figure 3 shows the architecture of NoBis. Nginx [7] operates as a reverse proxy to the
client, in order to balance the load, moves CPU-bound operation away from node.JS
and protects the NoBis web server and database behind a firewall. The NoBis web
server is implemented using Node.JS [8] with the help of the Express.js framework
[9], that allowed us to build robust and light-weight REST (Representational State
Transfer) API. Finally the data layer is implemented using the PostgreSQL relational
database management system and the PostGIS extension to manage the spatial infor-
mation related to monitored places.


4     Prototype
The current prototype of NoBis is available at nobis.dei.unipd.it. Its user Interface
has been designed to be as simple and immediate as possible: all the relevant informa-
tion (related to the level of crowding level of target places) are available in one single
page.
    Figure 5 shows the check-in/check-out process by scanning QR Codes. As illustrated
in Figure 4c, after the check-out is completed the user can express feedback regarding
the state of crowding that he/she perceived: this represents a method of mitigating any
possible discrepancy between the data visualized by NoBis and the real crowding of a
place.
    The User’s Dashboard is divided into two sections, as illustrated in Figure 6. On
the left-hand side there is a map where it is possible to observe and interact with the
places listed on the right-hand side of the Dashboard. Each place, in addition to its
name, specifies the building in which it is located, its type, and finally the crowdedness
level calculated based on the Check-in and Check-out logs. A place is reported as highly
crowded if NoBis detects a number of people at that place exceeding 80% the available
covid-limited capacity, as specified in the capacity attribute of the place entity. Instead,
                          Check-in (left) check-out (right) operations.




    Check-in interface.                                                   Check-out interface.

                     Fig. 5: The check-in and check-out operations.




if the crowding is between 40% and 80%, the occupation level is defined as moderate.
Inside the User’s Dashboard it is possible to search by name, or move the map, to
display new locations. Place search via map is enabled only if the map is zoomed in
after a certain threshold, in order to avoid the user devices to handle a possibly huge
number of monitored places. This choice has been made necessary for performance
reasons as, in less performing clients, the quality of experience could be very bad due
to the loading of a high number of places automatically.
    Finally, the administrators can access the admin panel where they can enable or
disable the various registered Referents. On the other hand Referents, once they have
logged into the main page i.e., the Dashboard (Fig. 7), can create and manage places,
buildings and any problems reported by the users. The Referent’s Dashboard contains
all the data related to the locations managed by the Referent itself, including the
current number of people within each location. A Referent can also enable or disable
a location, download the QR codes for Check-in and Check-out operations, add the
opening hours of the various places, and finally modify each place. By design, a building
can include several places: the Referent is not allowed to modify the main building,
                            Fig. 6: NoBis User’s dashboard.


but the places only. Instead, the cancellation of a building is allowed and involves the
elimination of all the places connected to it.
    A video overview of NoBis functionalities can be found here [10].


5     Evaluation
5.1   User Testing
NoBis has been deployed, tried, and tested at the Department of Information Engi-
neering of the University of Padova between September 10 and October 21, 2020. This
phase included the monitoring of the crowdedness level of three specific places, i.e.,
two laboratories and the building that contains one of them. It was chosen to include
this building, as well, to have the possibility to involve a larger number of users, while
keeping the number of places/buildings to manage limited. During the six weeks of
testing, 475 Check-in/out operations were carried out, with an average of 8 unique
users per day.
    During this testing phase, we have been able to collect real-time statistics about
check-in/check-out operations, that are analyzed, in the form of aggregated anonymized
information, to ensure the smooth and proper functioning of the system. We have
examined the following metrics:
                          Fig. 7: NoBis Referent’s dashboard.



 – The check-in/check-out conversion ratio, which evaluates the percentage of checking-
   in users who also check-out. It should be noticed that, while it is important that
   each user checks-in by his/her own at each access to a location, check-outs will be
   automatically triggered in any case if the visitor forgets the check-out and com-
   pletes his/her next check-in, or if the system resets (i.e., at midnight, every day).
 – The check-in/check-out accuracy ratio, which compares the real number of visitors
   in a certain location (manually tracked by our Department’s Administrative Office)
   with the number of visitors estimated by NoBis. This metric demonstrates the
   reliability of the information we make available to the public through NoBis.

    The results of our preliminary testing phase at our University Department have
already proven NoBis to be effective: both the conversion and the accuracy ratios are
above 75% in most locations. Moreover, our analysis shows that in the first three weeks
of testing, about 20% of the total logs could be ascribed to assumptions of the system
had to make as a result of users’ forgetfulness. In the second half of the testing period,
instead, the assumptions are less than 10% of the total, an indication that NoBis users
have become accustomed to the service and less system interventions were needed to
ensure the consistency of Check-in and Check-out logs.
                Fig. 8: Response times of aggregated HTTP requests.


5.2   Load Analysis
NoBis has been developed with the aim of providing a high performance service with
low response times, even under high loads. We used Apache JMeter [11] to test the
system with about 1400 concurrent and simulated users, which perform the following
operations: check-out from a location; check the crowdedness state of the places in the
User Dashboard, with three movements across the map to discover new places; and,
check-in at the next place. We introduced some randomness to produce results more
similar to reality, for example transactions are separated in time by a value that is
produced by a Gaussian timer with 15 seconds of mean and 5 seconds of standard
deviation; in addition, a simulated user is assumed to forget to Check-in or Check-out
with a probability of 80%. For a greater homogeneity of the tested cases, it was decided
to create, within the test, two flows of users with an identical structure, but different
locations, and to assign to each of them 700 threads (users). In addition to the two
groups represented by the end users, it was decided to introduce a further Thread
Group of 50 Referents related to the operations concerning the management of the
places. This test allowed us to evaluate the behavior of the system in the presence of
the following (critical) cases:
 – Concurrent Check-out from the same place;
 – Concurrent Check-out from different places, an event that may arise due to the
   introduction of the two parallel flows of users;
 – Concurrent Check-out and Check-in, an event that may arise due to the phase
   shift introduced by activation of users in a two-minute interval;
 – Concurrent Check-in in the same place;
 – Concurrent Check-in in different places, again due to the introduction of two sep-
   arate streams;
 – Concurrent assumptions by the system to correct forgotten check-in/out operations
   from users;
 – Concurrent use of private and public REST APIs;
 – Mix of Check-in/out operations and access to the User and Contact Dashboard.
   The test obtained very good results. In Figure. 8, it is shown that the response
times are relatively low and constant throughout the duration of the test. Moreover,
the test has shown a good throughput with almost 90 transactions (groups of HTTP
requests) per second without stressing the available hardware resources. This allows us
to conclude that NoBis is scalable to loads of a small/medium community, such as a
University or a municipality. More details can be found in [12, 13].


6    NoBis Impact
In countries with declining numbers of cases of COVID-19, lockdown measures are
gradually being lifted. In this scenario, new rules are being developed so people can
move in a comfortable and safe way. To begin with, social distancing is the most critical
pre-requisite to keep everyone safe, and the key to achieve this in limited public space
lies in the ability to have a real-time overview of how crowded hotspots are so that
appropriate steps can be taken when an area gets too busy. This is indeed the main
purpose of NoBis, which targets the following objectives.

 – Safer environment for local communities. NoBis is a system that uses QR
   codes to determine and control the number of people that access to enclosed public
   spaces. Once complete, this information is displayed on-line to inform the public
   about crowds and potential risks, enabling people to make conscious and smart
   choices about their mobility (e.g., by avoiding visits to the most crowded areas and
   diverting their mobility towards less busy places). This strategic policy ensures
   better confidence in mitigating the risk of formation of large clusters, thereby
   providing the social community a safer environment in the fight against COVID-19
   spreading. Moreover, the QR-based nature of NoBis allows users to safely complete
   their check-in/check-out operations with no contact with physical devices like touch
   screens or buttons, thereby limiting the potential spread of the virus compared to
   other applications in which visitors have to use their hands to tap the screen.
 – Cost-free. Unlike other crowd monitoring solutions that use expensive NFC-based
   and/or wearable technologies, NoBis simply requires the installation of printable
   posters to display QR codes. Indeed, NoBis imposes as a cost-free solution, ac-
   cessible to everyone, with no need for external hardware to be purchased and/or
   installed.
 – Ready-to-use. NoBis does not require the download of any specific application
   to properly work, while it simply requires the use of the visitor’s smartphone to
   scan QR codes: nearly all recent Apple’s and Android’s phones have built-in QR
   code scanning capabilities right in the camera app itself.
 – Accessibility. NoBis design is lean and clear, and visitors do not need to create
   an account to use its functionalities, hence imposing as an accessible, ready-to-use,
   easy-to-deploy solution also for elderly adopters, which represent the most fragile
   and sensitive category of people that will benefit most from NoBis’ services.
 – Complimentary. In recent months, many countries have developed contact trac-
   ing apps that allow to receive an alert when a person has been in close contact
   with somebody that, later on, will turn out to be positive to the COVID-19. In
   these regards, NoBis is born as a complimentary, and not alternative, service to
   those applications, and allows users to preventively limit and adapt their mobility
   decisions as a function of the crowd level of the different areas.
 – Privacy-compliant. NoBis does not use GPS, WiFi, or Bluetooth tracking, and
   lets its users control when to share data. Moreover, NoBis does not use the check-in
   data for advertising or marketing purposes, thereby promoting privacy and data
       protection. Moreover, the NoBis dashboard does not show precisely how many
       people are in an area but an “index of crowdedness” associated with those areas,
       hence providing a totally anonymous service.


7      Conclusions and future perspectives: beyond
       COVID-19
NoBis is a service that allows its users to know in advance the crowdedness state
of the places they are planning to visit, and to make more aware trips based on the
information that NoBis is able to provide. The testing phase of NoBis, that took place
in the laboratories and buildings of the Department of Information Engineering of
the University of Padova, allowed first of all to carry out real tests and correct any
errors in the code of the platform. Secondly, but equally important, it was possible to
collect the opinions of the first users and better understand the difficulties of use and
possible barriers of diffusion that a tool like NoBis can present. This testing phase has
actually intercepted curiosity and enthusiasm thanks to its nature of strictly voluntary
access, which allows to create, in some cases, a sense of community (hence the name
”NoBis”). An important aspect of the trial period of the platform has been related
to the privacy of the user and the laws and regulations that seek to protect it: the
design and development of NoBis has always had in mind the privacy of its users.
Moreover, during the month of October 2020 a dialogue with the Municipality of Abano
Terme (Padova, Italy) has allowed to realize, in the following months, a second testing
phase in specific places related to a municipal reality. This recent agreement with the
Municipality of Abano Terme demonstrates the relevance that NoBis has attracted. As
it is clear, the future of NoBis is undoubtedly closely linked to the need to avoid, during
pandemics, crowded places and to provide people with useful tools so that possible
gatherings do not take place. Beyond that, the NoBis team is working to structure a
sustainable business model, like cultural events, museums and exhibitions, that will
allow NoBis to remain active in the future when the emergency period dictated by the
spread of SARS-CoV-2 virus will be over.


8      Acknowledgments
NoBis has been awarded an Honorary Mention in the 2020 IEEE ComSoc Student
Competition [14] Communications Technology Changing the World. Part of this work
was also supported by MUR (Italian Minister for University and Research) under the
initiative “Departments of Excellence” (Law 232/2016).


References
 [1] Charles Courte-manche Joseph Garuccio Anh Le Joshua Pinkston and
     Aaron Yelowitz. “Strong Social Distancing Measures In The United States
     Reduced The COVID-19 Growth Rate”. In: Health Affairs 39.7 (2020),
     pp. 1237–1246. doi: http://dx.doi.org/10.1377/hlthaff.2020.00608.
 [2] Nathan C Lo Joseph A Lewnard. “Scientific and ethical basis for social-
     distancing interventions against COVID-19”. In: Health Affairs 20.6 (2020),
     pp. 631–633. doi: https://doi.org/10.1016/S1473-3099(20)30190-0.
 [3] Immuni. url: https://www.immuni.italia.it. (accessed: 01.09.2020).
 [4] Apple Exposure Notification Framework. url: https://developer.apple.
     com/documentation/exposurenotification#overview. (accessed: 01.09.2020).
 [5] Utkarsh Singh et al. “Crowd Monitoring: State-of-the-Art and Future Di-
     rections”. In: IETE Technical Review (2020), pp. 1–17.
 [6] Mozilla Web Docs: Close a Browser Window. url: https://developer.
     mozilla.org/en-US/docs/Web/API/Window/close.
 [7] Nginx. url: https://nginx.org/en/.
 [8] Node.JS. url: https://nodejs.org/en/.
 [9] Express.js. url: https://expressjs.com. (accessed: 15.8.2020).
[10] NoBis Video Overview. url: https : / / www . youtube . com / watch ? v =
     jLAXbJIxZ6U.
[11] Apache JMeter. url: https://jmeter.apache.org/index.html. (ac-
     cessed: 03.10.2020).
[12] Load Analysis Results: 1 Loop. url: http://mattiavanzi.com/tesimagistrale/
     dashboard1L/index.html.
[13] Load Analysis Results: 3 Loop. url: http://mattiavanzi.com/tesimagistrale/
     dashboard3L/index.html.
[14] IEEE ComSoc Student Competition. url: https : / / www . comsoc . org /
     membership/ieee-comsoc-student-competition.