Professional Documents
Culture Documents
Web Application For Data Processing of Municipality Portal (Laravel Framework)
Web Application For Data Processing of Municipality Portal (Laravel Framework)
Contents
REVISION HISTORY..................................................................................................................................................................3
CHAPTER I: INTRODUCTION................................................................................................................................................4
1. PURPOSE OF THE SYSTEM...................................................................................................................................................... 4
2. DOCUMENT CONVENTION..................................................................................................................................................... 4
3. INTENDED AUDIENCE AND READING SUGGESTIONS................................................................................................. 4
4. SYSTEM SCOPE.........................................................................................................................................................................................................................................4
4.1 System Applications and Modules...................................................................................................................................... 6
4.2 Out of Scope................................................................................................................................................................................. 7
4.3 System Data Structure............................................................................................................................................................ 8
4.4 Geographical Coverage Entities....................................................................................................................................... 10
5. SYSTEM SECURITY..............................................................................................................................................................................................................................10
6. REFERENCES..........................................................................................................................................................................................................................................11
CHAPTER II: OVERALL DESCRIPTION.............................................................................................................................12
1. SYSTEM PERSPECTIVE.......................................................................................................................................................... 12
2. SYSTEM FUNCTIONS..........................................................................................................................................................................................................................12
Data Manager.......................................................................................................................................................................................... 12
3. OPERATING ENVIRONMENT............................................................................................................................................... 15
4. DESIGN AND IMPLEMENTATION CONSTRAINTS....................................................................................................... 16
5. USER DOCUMENTATION....................................................................................................................................................... 16
6. ASSUMPTIONS AND DEPENDENCIES.............................................................................................................................. 16
7. EXTERNAL INTERFACE REQUIREMENTS...................................................................................................................... 16
CHAPTER III: SYSTEM FEATURES....................................................................................................................................17
1. DATA MANAGER..................................................................................................................................................................................................................................17
1.1 Login..................................................................................................................................................................................................... 18
1.2 Data Summary.................................................................................................................................................................................. 18
1.3 Data Template.................................................................................................................................................................................. 18
1.4 Data Entry / Edit............................................................................................................................................................................. 25
1.5 Correlation......................................................................................................................................................................................... 29
1.6 Language Translation................................................................................................................................................................... 29
1.7 Municipality Profile........................................................................................................................................................................ 31
OTHER NONFUNCTIONAL REQUIREMENTS......................................................................................................................................................................................33
Performance Requirements................................................................................................................................................................ 33
Safety Requirements.............................................................................................................................................................................. 33
Security Requirements.......................................................................................................................................................................... 34
Software Quality Attributes................................................................................................................................................................ 34
Business Rules........................................................................................................................................................................................... 34
OTHER REQUIREMENTS................................................................................................................................................................................................................................34
ANNEXURE A: ENTITY-RELATION DIAGRAM (ERD)..................................................................................................35
ANNEXURE B: STATE TRANSITION DIAGRAM.............................................................................................................36
DATA MANAGER..................................................................................................................................................................................................36
ANNEXURE C: DATA DICTIONARY....................................................................................................................................37
ANNEXURE D: DATA FLOW DIAGRAMS (DFD).............................................................................................................46
1|Page
Municipality Open Data Portal Timor Leste - Software Requirements Specification
ANNEXURE E: SYSTEM ARCHITECTURE.........................................................................................................................50
ANNEXURE F: SOFTWARE ARCHITECTURE..................................................................................................................51
ANNEXURE G: SYSTEM FLOW CHARTS...........................................................................................................................52
ANNEXURE H: SYSTEM SCREENS......................................................................................................................................58
DATA MANAGER................................................................................................................................................................................................................................................58
2|Page
Revision History
Name Date Reason For Changes Version
ITM 15 March 2021 The First Draft is created on this date V1.0
Chapter I: Introduction
1. Purpose of the system
The purpose of the system is to collect raw data from different departments of the country and after filtration it will be
available on the municipal portal. The data is collected from seven different departments of the central government. Each
department has their own type of data that they are providing to the ministry of state administration (MEA).
The system contains all the important data about
● Agriculture
● Arts and council
● Education
● Gender
● Infrastructure
● Population
● Social economy
2. Document Convention
This project will be managed using effective frameworks and proven methodologies such as Laravel and Angular,
to drive this project to success. This first documentation is the key to the process of software development.
4. System Scope
UNDP Timor-Leste is supporting the Ministry of State Administration (MEA) to develop the open data portal. The
data portal will combine data from different Timor-Leste government agencies into one central database and
viewing platform. All the general information about the specific government departments is available in this portal.
The key deliverables of the system will be:
The web application should be easily navigated work over popular web browsers.
The application should have scalable features that will allow extension of functionality and, in particular,
to allow the incorporation of new sections to upload information form users in the future.
The web application design should be interactive, appealing, easy-to-use and responsive.
The web application should be able to store and publish data on various development sectors and indicators.
The development should use open-source technology to store, manage and disseminate data.
The database administration should be developed to allow managing of application data and content.
The web application should support multi-languages and should be available in English, Portuguese and
Tetum languages.
Following is the summary of the features of the system:
Import and collate development indicators national and sub-national data from various data sources, time
periods and geographic areas.
Store and manage development indicators based on data from various authenticated sources.
Upload and update data using industry-standard format like Comma Separated Value (CSV).
Manage geographical area and their respective maps at national and sub-national levels.
Design and develop the specific web application to add data in the portal to the Municipal Website.
Create the specific database on the web server (INGINX) in which the data is stored and retrieved.
Link the front-end webpages to the backend design in which the data is shown to the public.
1. Data Manager
a. Data summary
b. Data template
Manage area
Manage indicator
Manage metadata
Refresh data
c. Data entry/edit
d. Correlation
e. Language translation
f. Municipality profile
4.2 System Data Structure
The system will be developed to manage the socio-economic indicators based data. The data structure will comprise of
the following elements:
Indicator: A series of the observations with harmonized characteristics representing a standard behavior. Example Child
and adolescent underweight.
Metadata: Detailed explanation of the series following the global standard for data definition. Example Definition.
Method of Computation.
Subgroup/Element: Disaggregated group to represent further dimensions of the observation. Example Sex, Age.
Indicator-Unit-Subgroup Combination: Besides defining the disaggregation for each indicator it will also be used to
define the target group of an indicator. Example – Child and adolescent underweight– Percent – Female.
Sector: Termed as Indicator Classification that groups similar indicators for organized storage and reporting. Example
Diets and Nutrition.
Data Value: Reported and store data against a combination of Indicator – Unit – Subgroup (IUS). Example 24 reported
against Child and adolescent underweight– Percent – Female.
Area: Geographical or administrative boundaries to represent the data values for each IUS combination. Example
Region, Country, State, District.
Time Period: reported the time period of the data values for each IUS combination. Example 2017, 2016-2017. The time
period will represent the day, week, month, quarter, year and year range.
Source: data source of the reported data values for each IUS combination. Example Census, Health Statistics. The source
type will represent magazines, scientific journals, or publications from reporting organizations.
Below is the data structure diagram of the underlying database:
4.3 Geographical Coverage Entities
The system will be developed to store and manage data at various geographical levels or administrative
boundaries. The geographical level will be termed as Area in this system. Data Manager application will have
features to manage areas and their geo-spatial maps. These features are explained in detail in the following
chapter. The system will be capable to manage the area at all levels including but not limited to:
Country
Municipality
Suco
As explained in the data structure section the data values for each Indicator combination will be entered against
each of the above-defined area levels. Example: The system will have provision to enter Population size – Percent –
Female at country, municipality and suco levels for various time periods and data sources. This will help in data
analysis and comparison of various performance indicators at all geographical levels.
5. System Security
This system will be developed to ensure that all vulnerabilities of the web application will be identified and
corrective measures are taken. The web application environment including the scripting language, webserver
software, and the operating system are mentioned in this document. Configuration and coding will be done in the
application to manage the identified vulnerabilities. Manual testing will be conducted on the application to ensure
that no known vulnerabilities exist in the system. Below are some of the known vulnerabilities that will be handled
in the application:
Session hijacking.
Cross-site request forgery (csrf) attack to load a page containing malicious request.
Runtime/server error.
The Municipality data portal is a web based application software which will be deployed in the cloud. The portal
will comprise of Data Manager. The system will have responsive web design to support display on various screen
sizes including that of computers, tablets and mobile devices.
Our mission is to build the web application in which the raw data from the specific government departments are
collected, Filtered and then available to the municipality website for the public.
2.System Functions
This section will provide detailed functionalities of the two applications:
Data Manager
These will be the web pages and will be hosted on a web server along with the user interface application.
The web pages will have user access control. A system administrator login and password will be required to
access the system.
This application will be accessed through a web browser and requires an internet connection.
Administrator manage and collect all the data from the different departments and then submit it to the
portal.
After submission, Data goes for verification process and then it will be available on the municipality portal.
It will allow to develop and manage a data template that will include area and indicator list.
There will be modules to store and manage the socio-economic indicators and its related elements.
Data will be Imported on aggregated and calculated indicators from various data sources.
Modules will be available for the chart settings of the advance data analytics graphical presentations.
There will be a translation module to allow to translate the area, indicators and metadata strings from English
to Portuguese and Tentum language.
Municipality profiles including their geographical and project details will be managed in this application.
Below is the system chart of the Data Manager Portal:
User Roles
While the User Interface webpages will have no access permissions restrictions and will be open to public use, The
Data Manager will have access restriction and will be accessed by login as system administrator.
System Administrator
This is the default user with super administration rights that will have access to the complete tool including
importing master list of area and their geo-spatial maps, indicators and their dimensions, data for those indicators.
The system administrator will be also able to manage language and municipality profiles.
3.Operating Environment
The system will be a web-based online application. It will be developed to run over the internet. The application
will be deployed on a web server with the following recommended specifications:
Processor: 8 vCPU
Data will be imported from various source available in the Comma Separated Values (CSV) format.
4.Design and Implementation Constraints
The open data portal application will help you to track and monitor its sectors and indicators. This system will be
developed to host the data at all geographical levels and for multiple time periods. Data will be imported from the
selected identified and authorized sources.
5.User Documentation
Detailed user manuals will be developed for application. These user manuals will explain the step-by-step approach
to explain the functionality and usage of the system. There will be a database administrator manual to help storing
and managing the underlying database.
Hardware Interfaces
The system will be deployed on commonly available web servers and cloud-based services. Internet connectivity is
required to run the system.
Software Interfaces
The system will be developed using open-source technologies that would allow easy extensibility and scalable
communication Interfaces. The system will use the HTTP protocol for communication over the internet.
Chapter III: System Features
The module will be developed to manage the data from across departments. The data will be managed by the data
manager. The frontend application will serve as a user interface to access the underlying database in various visual
forms to allow searching, tracking, monitoring, and presenting data of departments.
The data will be imported from templates created in CSV formatted files. The user interface application will allow
to navigate through the various datasets on municipality profiles and projects, documents to download, services to
citizen and data catalog of socio-economic indicators data. It will allow searching, selecting and presenting data
using charts, maps and advanced visualization to facilitate data analytics.
1. Data Manager
The system needs the underlying database so that it can successfully implement the requirements mentioned for
the frontend application. The data manager will help to develop and manage a data template to facilitate creating
the underlying database. The application will have the following modules:
a. Login
b. Data summary
c. Data template
Manage area
Manage indicator
Manage metadata
Refresh data
d. Data entry/edit
e. Correlation
f. Language translation
The following section lists the detailed requirement specifications of each module:
1.1 Login
Description and Priority
The login module will provide a login facility for the system. Users will log in to the system using the assigned email
ID or user name along with the password for authentication. Users will have to enter the captcha to login.
Functional Requirements
The following will be the functional requirements of this module:
REQ-1: System administrator will be able to login to the system by using their email ID and password.
REQ-3: The logout option will be provided after successfully logging into the system to exit the system.
Functional Requirements
The following will be the functional requirements of this module:
REQ-1: This will be the landing page of the data manager application.
REQ-2: The database summary page will display the count of seven major database dimensions – the Indicator, IUS
combination, indicator metadata, indicator default chart type, Area, Source and Data Values.
REQ-3: Each count will also show the last updated day and date under each database dimension widget.
REQ-1: The area name and area code will be seen in a grid view with pagination options.
REQ-2: There will be an option to search, sort and navigate the available area list.
REQ-4: Option will be available to delete an existing area. When you select to delete all data of the selected area it will be
deleted after taking the confirmation from the user.
REQ-5: There will be an option to add a new area into the database. Users will be able to select the parent area, area name
and area code from the available list.
Export Area
Import Area
Add Area
Edit Area
Export Area
This module will have the following options to:
This Area template format is available in this document in Annexure H: Data Templates.
Functional Requirements
The following will be the functional requirements of this module:
REQ-1: The administrator will be able to download an empty template in CSV (Comma Separated Value) formatted
file.
REQ-2: The template will have the following columns: Area ID, Area Name, Area Level, Area ParentID, Area Group.
Import Data
This module will have the following options to:
The administrator after entering the data into the template can import the area into the database.
Functional Requirements
REQ-1: The administrator will be able to browse and upload data in CSV (Comma Separated Value) formatted file.
REQ-2: The format will be the standard format used generally in census datasets. This format assigns multiples of
three Alpha-numeric characters based on the area level. For example
TLS is the Area ID for Timor Leste which is referred to as Level 1.
TLS001 is the Area ID for Ainaro which is referred to as Level 2.
TLS001002 is the Area ID for Hato-Builico which is referred to as Level 3.
REQ-4: The GeoJSON file containing the GIS data along with Area ID will be imported at the backend of the system.
REQ-5: The Area Level denotes the geographical level. For example, Level 1 is generally national level, Level 2 is assigned to
municipality level and Level 3 area assigned to suco level.
REQ-7: Area Parent ID refers to the Area ID of the parent. For example, the parent ID of Dilli will be the Area ID of Timor
Leste.
REQ-8: The Area Group column will contain the Area IDs of all the areas that fall in a group. For example, Timor Leste falls
in Asia and in Pacific Asia.
REQ-9: The Area Parent ID and Area Group are optional Columns and will be used based on the requirements of the
project.
The administrator has an option to manage indicators using this module. The IUS combinations will be deleted and edited.
There will be option to sort the indicator list and add a new indicator-unit-subgroup (IUS) combination into the database.
This module will help you to create the indicator structure including indicators (I), their unit(U) of measurement and their
disaggregation subgroups(S).
Functional Requirements
REQ-1: The IUS combinations and their related dimensions will be seen in a grid view with pagination options.
REQ-2: There will be an option to search, sort and navigate the IUS list.
REQ-3: Show/Hide button will allow you to view the setting of the status of the indicator that is shown or hidden in the
user interface application.
REQ-4: Option will be available to delete an existing IUS combination. When you will select the option to delete all data of
the selected IUS combination then it will be deleted after taking the confirmation from the user.
REQ-5: There will be an option to add a new IUS combination. Users will be able to select the Indicator, Unit, and Subgroup
from the available list and also set related dimensions – High Is Good, Default Subgroup, Sector, and Subsector. This
module will have the following options:
Export Indicator
Import Indicator
Edit Indicator
Export Indicator
This Indicator template format is available in this document in Annexure H: Data Templates.
Functional Requirements
REQ-1: This module will have an option to download an empty IUS template in CSV format.
REQ-2: There will be an option to download the complete IUS list available in the database in CSV format (once the
indicators will be imported in the database).
Import Indicator
Functional Requirements
REQ-1: After the indicator details as per the format requirement are entered in the template the user will browse and
upload the template to be imported in the database.
REQ-2: Once the template is uploaded there will be an option to import it into the database.
REQ-3: The last upload summary will provide the details of the import process.
The administrator has an option to manage metadata of the indicators using this module. Each IU combination will have a
metadata associated to it. There will be option to delete, edit, sort and add the metadata into the database.
Functional Requirements
REQ-1: The indicators and their metadata will be seen in a grid view with pagination options.
REQ-2: There will be an option to search, sort and navigate the metadata list.
REQ-3: Option will be available to delete the existing metadata. When you will select the delete option then all data of the
selected metadata will be deleted, after taking the confirmation from the user.
REQ-5: There will be an option to add new metadata. Users will be able to select the Indicator and Unit from the available
list and then enter metadata like MTI, MT2, etc.
Export Metadata
Import Metadata
Add Metadata
Edit Indicator
Export Metadata
This module will have the following options to:
This metadata template format is available in this document in Annexure H: Data Templates.
Functional Requirements
REQ-1: This module will have an option to download an empty metadata master template in CSV format.
REQ-2: There will be an option to download the complete metadata list available in the database in CSV format (once the
metadata will be imported in the database).
Import Metadata
The administrator after entering the metadata into the template can import the list into the database.
Functional Requirements
REQ-1: After the metadata details as per the format requirement are entered in the template the user will browse and
upload the template so that it can be imported in the database. Following are the metadata structure:
MT3 Overview
The nine columns name like MT1, MT2 will be the metadata tags provided to enter the metadata details.
All metadata tags are optional and can be left blank when not applicable.
REQ-4: Once the template is uploaded there will be an option to import it into the database.
REQ-5: The last uploaded summary will provide the details of the import process.
1.3.4 Manage Default Chart
This module will help you to set default chart type and time periods to represent the graph in the user interface. The
administrator has the option to manage the default chart through deleting and editing the available chart type, sorting the
default chart type list and adding a new default chart in the database.
Functional Requirements
REQ-1: The default chart type list will be seen in a grid view with pagination options.
REQ-2: There will be an option to search, sort and navigate the chart type list.
REQ-3: Option will be available to delete existing default chart types. When selected to delete all data of the selected
default chart type will be deleted after taking the confirmation from the user.
This default chart template format is available in this document in Annexure H: Data Templates.
Functional Requirements
REQ-1: This module will have an option to download an empty default master template in CSV format.
REQ-2: There will be an option to download the complete chart settings available in the database in CSV format (once the
chart template will be imported in the database).
The administrator after entering the default chart types into the template can import the list into the database.
Functional Requirements
REQ-1: After the chart settings as per the format, requirements are entered in the template the user will browse and
upload the template to be imported in the database.
REQ-2: Once the template is uploaded there will be an option to import it into the database.
REQ-3: The last upload summary will provide the details of the import process.
Functional Requirements
REQ-1: This module will have options to clear the server cache (used to store the frequent query results to speed the data
processing).
REQ-2: It will allow caching the various data elements including the Data, Area, and Indicator.
This module will allow us to view and manage data in the database.
This module will give you an option to edit the entered data. Data Value and its related Time Period and Source will be
available for editing. The user will be able to delete the existing record and add new data against an existing IUS
combination. Data will be entered by generating a data entry grid. The user will generate this grid by selecting the required
IUS combination, Area, Time Period and Source. When generating the data entry grid there will be an option to add a new
time period and source.
Functional Requirements
REQ-2: There will be an option to set the data grid by setting to view rows per page.
REQ-3: The user will have the option to sort the data grid by columns and search the required indicator.
REQ-5: The user will be able to edit the Time Period, Source and Data Value of an existing record.
REQ-6: There will be an option to generate a data entry grid by select the existing IUS combination, Area, Time Period and
Source. The user will be able to add a new time period and source while generating the data grid.
REQ-7: All data entered or edited in this module will be pending for approval before it gets published and appears in the
user interface application. This module will have the following options:
Export Data
Import Data
Add/Edit Data
Export Data
This module will have the following options to:
This data template format is available in this document in Annexure H: Data Templates.
Functional Requirements
REQ-1: This module will have the option to download an empty data template in CSV format.
REQ-2: There will be an option to download the complete data available in the database in CSV format (once the data filled
template will be imported in the database).
Import Data
This module will help to import the data against the indicator structure that will be imported in the previous modules. This
data template format is available in this document in Annexure H: Data Templates.
The administrator after entering the data into the template can import the list into the database.
Functional Requirements
REQ-1: After the data as per the format, requirements is entered in the template the user will browse and upload the
template to be imported in the database.
REQ-2: Once the template is uploaded there will be an option to import it into the database.
REQ-3: The last upload summary will provide the details of the import process.
REQ-4: The data template will be checked for duplicate and invalid entries while the import process. Below are the checks
Rows will not be imported if the following cells are left blank:
AreaID
TimePeriod
Source
Indicator
Unit
Subgroup
DataValue
In case a duplicate row will be found it will overwrite the old data value with the new data value when all the cells except
data value will match.
Time period will be only imported if entered in one of the following formats:
YYYY
YYYY.MM
YYYY.MM.DD
YYYY-YYYY
YYYY.MM-YYYY.MM
YYYY.MM.DD-YYYY.MM.DD
Add/Edit Data
Functional Requirements
REQ-1: This will show the available data elements like an indicator, area, time period and source.
REQ-2: With the help of these data elements the user will create the data grid to enter data.
REQ-4: “i” button will be available along with each indicator which will allow viewing the metadata of that indicator.
REQ-5: The administrator will be able to select single or multiple IUS (Indicator – Unit – Subgroup) combination, Areas,
Time Periods and Source to enter data.
REQ-6: There will be an option to enter a new time period and source in the available list.
Functional Requirements
REQ-1: Users with database administrators and data entry roles will be able to upload the data.
REQ-2: This module will have the option to download an empty data template in CSV format.
REQ-3: There will be an option to download the complete data available in the database in CSV format (once the data will
be imported in the database).
REQ-4: After the data as per the format requirement are entered in the template the user will browse and upload the
template to be imported in the database.
Create Departments
The developer of the system has to create the modules of seven different departments.
Functional Requirements
The following will be the functional requirements of this module:
REQ-1: Each department has different kind of data according to their data types and values.
REQ-2: Each module has different kind of functionalities and fields related to the department.
REQ-3: Administrator has to choose the specific department. After that the relevant module and its specific fields
will be available on the screen.
Create Fields
The developer of the system has to create the specific fields related to the departments. Each department has their own
relevant fields. All the data from the specific fields are collected and saved on the database.
Functional Requirements
The following will be the functional requirements of this module:
REQ-1: Each field has their own data type. The data is only entered to its related data types.
REQ-2: The administrator has to enter manually all the data and then the data will be saved to their related field
database.
Create Database
Developer has to create database according to the relevant fields of departments, so that data from all the fields will be
saved to their databases.
Functional Requirements
The following will be the functional requirements of this module:
REQ-1: Each field has to be linked with their database, So that all the data entered will be saved and secure.
REQ-2: If the administrator changed or update the relevant data of the field, Then the data in the database will also
be changed at the current time.
Online Server
Developer has to save database to the online server so that the data will be available online and can be changed and
access from anywhere in the world by using internet. It is also more fast and safer than the local database.
Functional Requirements
The following will be the functional requirements of this module:
REQ-1: The online server is linked with the municipal portal to access data.
REQ-2: The Nginx server is used as an online server for its speed and reliability.
1.4 Correlation
Description and Priority
This module will show the Linear regression charts. Linear regression is a linear approach to modeling the
relationship between a scalar response (or dependent indicator) and one or more explanatory
variables (or independent indicators).
Functional Requirements
REQ-1: System administrators will be able to access this module.
REQ-2: There will be an option to set the data grid by setting to view rows per page.
REQ-3: The user will have the option to sort the data grid by columns and search the required indicator.
REQ-5: The user will be able to update the indicators both on the X and Y-axis.
REQ-6: Show/Hide button will allow setting the status of the indicator to be shown or hidden in the user interface
application.
Functional Requirements
REQ-1: There will be an option to select the language from the dropdown list.
REQ-2: The data elements which will be translated are: indicator, unit, subgroup, sector, subsector, area, source,
footnote, metadata, and subgroup dimension .
REQ-3: There will be an option to select these data elements from the dropdown list.
REQ-4: The administrator will be able to download the translation template in CSV (Comma Separated Value)
formatted file after selecting the data element.
REQ-5: After the translation details as per the format requirement are entered in the template the user will browse
and import the template into the database.
1.6 Municipality Profile
Description and Priority
The administrator of the system will have access to this module
Functional Requirements
REQ-1: The profile page will contain the municipality flags which will navigate to each municipality profile.
REQ-2: There will be an option to edit the complete details available in the profile of any municipality in all the three
languages: English, Portuguese and Tetum.
REQ-3: Each profile will comprise of the following information which will be edited:
Details of the municipality by topics – Geography, Toponymy, History, Climate, Points of interest.
1.7Municipality Profile
Description and Priority
Functional Requirements
REQ-1: The profile page will contain the municipality flags which will navigate to each municipality profile.
REQ-2: There will be an option to edit the complete details available in the profile of any municipality in all the three
languages: English, Portuguese and Tetum.
REQ-3: Each profile will comprise of the following information which will be edited:
Details of the municipality by topics – Geography, Toponymy, History, Climate, Points of interest.
Other Non-functional Requirements
Performance Requirements
The system will be interactive and allow data entry and updates when the data will be made available. So in every
action-response of the system, there will be no immediate delays. In case of opening the applications and
modules, displaying of error and confirmation messages there will be delay much below 5 seconds. In case
retrieving data from the database there will be a short span delay based on the number of records to be retrieved
in one go. Loader will be implemented to make the user aware of any delays in the processes.
Safety Requirements
Information transmission will be securely transmitted to the server without any changes in information.
Security Requirements
The main security concern is for users account where all users will be created and managed by system
administrator. Pre-defined users will be created wherever required to avoid hacking. Also, the backup policy shall
be adopted by the system administrator outside the system to schedule the backup to mitigate any kind of data
loss.
Business Rules
The following rules are implied in the system:
Other Requirements
This system will be designed to be adopted by similar operating clients that may have socio-economic indicators
based data for tracking, monitoring and reporting development programs and frameworks. The open-source
technology used to develop the system will be helpful in customizing, scaling and extending the functionalities to
cater to similar requirements.
Annexure A: Entity-Relation Diagram (ERD)
Annexure B: State-Transition Diagram (STD)
Data Manager
Annexure C: Data Dictionary
Area
Columns:
Id int(11)
Continent varchar(20)
Country varchar(20)
level_one varchar(50)
level_two varchar(50)
area_name varchar(50)
area_name_ar varchar(100)
area_name_tm varchar(200)
area_name_pt varchar(200)
area_code varchar(15)
original_area_code varchar(50)
parent_id varchar(15)
area_level tinyint(2)
area_group varchar(255)
Status tinyint(1)
sdmx_area_code varchar(200)
created_at timestamp
updated_at timestamp
deleted_at timestamp
Area_data
Columns:
Id int(11)
area_id int(11)
ius_id int(11)
ius_parent_id int(11)
time_period varchar(50)
sector_id int(11)
goal_id int(11)
Footnotes varchar(500)
footnotes_tm varchar(200)
footnotes_pt text
Sector varchar(255)
Subsector varchar(255)
Value varchar(50)
Source text
source_tm varchar(200)
source_pt varchar(200)
Status tinyint(1)
sdmx_source_code varchar(200)
sdmx_time_period_code varchar(200)
created_at timestamp
updated_at timestamp
deleted_at timestamp
Area_maps
Columns:
Id int(11)
Level tinyint(2)
file_name varchar(255)
start_date date
end_date date
Status tinyint(1)
created_at timestamp
updated_at timestamp
Audits
Columns:
Id int(10)
user_type varchar(255)
user_id bigint(20)
Event varchar(255)
auditable_id int(10) UN
auditable_type varchar(255)
old_values text
new_values text
url text
ip_address varchar(45)
user_agent varchar(255)
Tags varchar(255)
created_at timestamp
updated_at timestamp
Corelation_mapping
Columns:
Id int(11)
y_axis int(11)
Status tinyint(4)
created_at timestamp
updated_at timestamp
Corelation_mapping_child
Columns:
Id int(11)
corelation_mapping_id int(11)
x_axis int(11)
created_at timestamp
updated_at timestamp
Database_information
Columns:
Id int(11)
database_summary text
database_summary_tm text
database_summary_pt text
Name varchar(255)
Institution varchar(255)
Email varchar(50)
Status tinyint(4)
created_at timestamp
updated_at timestamp
Default_viz
Columns:
Id int(11)
ius_parent_id int(11)
chart_type varchar(200)
time_period varchar(200)
created_at timestamp
updated_at timestamp
Default_viz_subgroup
Columns:
Id int(11)
default_viz_id int(11)
ius_id int(11)
created_at timestamp
updated_at timestamp
Diet_log
Columns:
Id int(11)
Filename varchar(255)
error_filename varchar(255)
Type tinyint(1)
total_records int(11)
no_of_records_imported int(11)
no_of_records_updated int(11)
no_of_error int(11)
no_of_ius_imported int(11)
user_id int(11)
import_error text
Status tinyint(1)
created_at timestamp
updated_at timestamp
IUS
Columns:
Id int(11)
Indicator varchar(500)
indicator_alias varchar(500)
Unit varchar(255)
Subgroup varchar(255)
indicator_ar varchar(500)
unit_ar varchar(100)
subgroup_ar varchar(100)
indicator_tm varchar(200)
unit_tm varchar(200)
subgroup_tm varchar(200)
indicator_pt varchar(200)
unit_pt varchar(200)
subgroup_pt varchar(200)
parent_id int(11)
default_subgroup tinyint(1)
subgroup_dimension_id int(11)
subgroup_order tinyint(4)
high_is_good tinyint(2)
Status tinyint(1)
sdmx_indicator_code varchar(200)
sdmx_unit_code varchar(200)
sdmx_subgroup_code varchar(200)
created_at timestamp
updated_at timestamp
deleted_at timestamp
IUS_classification
Columns:
Id int(11)
level1 text
level2 text
level1_ar text
level2_ar text
level1_tm varchar(200)
level2_tm varchar(200)
level1_pt text
level2_pt text
Type tinyint(2)
parent_id int(11)
Status tinyint(1)
created_at timestamp
updated_at timestamp
IUS_grouping
Columns:
Id int(11)
ius_classification_id int(11)
ius_id int(11)
created_at timestamp
updated_at timestamp
Logos
Columns:
Id int(11)
logo_home_page varchar(255)
logo_inner_page varchar(255)
logo_favicon varchar(255)
logo_login_page varchar(255)
Status tinyint(1)
created_at timestamp
updated_at timestamp
Meta_data
Columns:
Id int(11)
iu_id int(11)
created_at timestamp
updated_at timestamp
Meta_data_translation
Columns:
Id int(11)
meta_data_id int(11)
Locale char(4)
Indicator varchar(500)
Unit varchar(255)
mt1 text
mt2 text
mt3 text
mt4 text
mt5 text
mt6 text
mt7 text
mt8 text
mt9 text
created_at timestamp
updated_at timestamp
Meta_data_translation
Columns:
Id int(11)
meta_data_id int(11)
Locale char(4)
Indicator varchar(500)
Unit varchar(255)
mt1 text
mt2 text
mt3 text
mt4 text
mt5 text
mt6 text
mt7 text
mt8 text
mt9 text
created_at timestamp
updated_at Timestamp
Municipality_image
Columns:
Id int(11)
municipality_id int(11)
image_url varchar(1000)
image_name varchar(255)
image_name_tm varchar(255)
image_name_pt varchar(255)
Description varchar(1000)
description_tm varchar(1000)
description_pt varchar(1000)
created_at timestamp
updated_at timestamp
Oauth_access_tokens
Columns:
Id varchar(100)
user_id int(11)
client_id int(11)
Name varchar(255)
Scopes text
Revoked tinyint(1)
created_at timestamp
updated_at timestamp
expires_at datetime
Oauth_auth_codes
Columns:
Id varchar(100)
user_id int(11)
client_id int(11)
Scopes text
Revoked tinyint(1)
expires_at datetime
Oauth_clients
Columns:
Id int(10)
user_id int(11)
Name varchar(255)
Secret varchar(100)
Redirect text
personal_access_client tinyint(1)
password_client tinyint(1)
Revoked tinyint(1)
created_at timestamp
updated_at timestamp
Oauth_personal_access_clients
Columns:
Id int(10)
client_id int(11)
created_at timestamp
updated_at timestamp
Oauth_refresh_tokens
Columns:
Id varchar(100)
access_token_id varchar(100)
Revoked tinyint(1)
expires_at datetime
Sector
Columns:
Id int(11)
Name varchar(255)
Description text
Status int(11)
created_at timestamp
updated_at timestamp
Share_data
Columns:
Id int(11)
chart_type varchar(50)
chart_title varchar(255)
Xaxis varchar(1000)
data1 text
data2 varchar(5000)
visualization_data text
Source text
swap_status tinyint(1)
created_at timestamp
updated_at timestamp
Subgroup_dimension
Columns:
Id int(11)
Name varchar(255)
name_tm varchar(200)
name_pt varchar(200)
sdmx_dimension_code varchar(200)
created_at timestamp
updated_at timestamp
Uploaded_file_info
Columns:
Id int(11)
user_id int(11)
file_name varchar(100)
Status tinyint(1)
source_count int(11)
ius_count int(11)
Type tinyint(4)
created_at timestamp
updated_at timestamp
Uploaded_translation_file
Columns:
Id int(11)
user_id int(11)
file_name varchar(100)
Status tinyint(1)
Type tinyint(4)
created_at Timestamp
updated_at Timestamp
Users
Columns:
Id int(10)
Name varchar(255)
Email varchar(255)
Password varchar(255)
Role int(1)
Associate int(2)
email_verify tinyint(1)
remember_token varchar(100)
email_verify_token varchar(100)
Status tinyint(1)
created_at Timestamp
updated_at Timestamp
Annexure D: Data Flow Diagrams (DFD)
Level 0
Level 1
Level 2 – Data Manager
Annexure E: System Architecture
Annexure F: Software Architecture
Annexure G: System Flow Charts
Data Manager
Manage Area
Manage Indicator
Manage Metadata
Manage Default Chart
Data Entry / Edit
Annexure H: System Screens
Data Manager
90 | P a g e
Figure 2.9 – Data Manager – Municipality Profile