- Public Administration
- The Citizen Map is a georeferenced platform for the Public Administration to manage citizen services.
- Its purpose is to enable users of public services to identify service locations and points of contact, combining the following channels: in-person and online.
Develop an application that enables the following functionalities:
- Provide information about all Public Administration services' locations, including hospitals, police stations, tax offices, registries, Citizen Shops and Spaces;
- Get to know the distance, the best route, the operating hours, the required documentation, the costs and legal deadlines for any service included in the approximately 5300 georeferenced service points;
- Allow users to obtain online service tickets for all available services at any Citizen Shop, accessible through its website or the Android/iOS app;
- Provide information about the number of people waiting in line, or the waiting time for the last ticket, for services available at these shops, allowing users to track the queue's real-time progress;
- The application must have the gold seal of usability and accessibility.
The solution involved the development of 3 major components with well-defined purposes:
- Backoffice: a web application with various configurations related to the Citizen Map, such as service scheduling management; logos; groups, life events; interactive tutorials; ticketing system; integration kit; and various analytical dashboards;
- Web application: aimed at all citizens, allowing them to obtain information about public service locations, to schedule services, to obtain tickets for specific services, to access statistical data, and other functionalities;
- Mobile application: an application with a redesigned interface that offers the same functionalities as the web application.
Agile with Scrum and XP techniques.
- Front-end: Angular 10
- Back-end: ASP.NET Core
- Database: MySQL
- Mobile: Ionic
- The improvements and new functionalities developed by Alter Solutions have enhanced the performance and usability of the application, earning it the gold seal of usability and accessibility;
- Increased citizen engagement with public services, thereby reducing bureaucratic processes and enabling the implementation of more agile procedures. Requesting or renewing the Citizen Card has never been easier and faster;
- Improved integration with external services, enabling the presentation of reliable information.
Time and resources
The project lasted for 13 months. The team involved included:
- Project Manager
- Functional Analyst
- 1 Back-end Developer
- 1 Front-end Developer
- 1 Mobile Developer
Each component of the architecture has its own responsibility and contribution to the application. The responsibilities of each component are as follows:
- SIGA API: Enables communication with SIGA to obtain various information about the tickets provided by public services;
- CES API: Enables communication with CES to present various information related to public services.;
- Google API: Allows the Citizen Map to provide information about distances (by foot and by car) between the citizen's geographic coordinates and different public services;
- Sincronismo (“Synchronization” in English): A web service that receives requests from CES to store public service information in the Citizen Map's database;
- Azure REST API: A web service that facilitates communication between the various components of the architecture;
- Mobile APP: Represents the Citizen Map’s mobile app;
- Azure Map Backoffice: A web application that allows various configurations related to the Citizen Map;
- Authentication GOV.PT: An external component that enables authentication in the back-office using the Citizen Card or Digital Mobile Key.
- Azure Map Web: Represents the Citizen Map’s web application;
- CES Database: A database that stores data coming from CES through the Synchronization process;
- DBO Database: A database that stores public services data in the Citizen Map;
- SIGA Database: An external database that allows the Citizen Map to make queries about peak hours for each public service.