Skip to content

Latest commit

 

History

History
110 lines (73 loc) · 4.51 KB

README.md

File metadata and controls

110 lines (73 loc) · 4.51 KB

Election Alert App

A real-time danger alert monitoring system for electoral officials and security

Table of Content

Project Description

The project idea was awarded as my final year undergraduate project where I was tasked to research, design, and develop a real-time danger alert monitoring system for electoral officials and security agencies using Nigeria as the case study.

Design Methodology

  • Choice of design methodology is Lean agile. Not a traditional software design methodology but an approach combining principles from lean and agile. It aims to deliver customer value efficiently and effectively while being flexible and adaptable to changes throughout the development lifecycle.

Languages, Frameworks, and Technologies Used

Frontend

  • Flutter (Dart)

Backend

  • NodeJs
  • SocketIO (For sending alerts/notifications across all users in real-time)
  • Termii (For verification of users' phone numbers through text message)
  • Google Maps API

Database

  • Firebase Authentication (For storage and authentication of users' login details)
  • Firebase Storage (For the storage of users' profile pictures and other media)
  • Firebase Firestore (For the storage of other users' personal details, election alerts, location, etc)

System Design

Use Case Designs

Alerting Use Case Design

Account Management Use Case Design

In App Call Use Case Design

Login Signup Use Case Design

Activity Design

Database Design

System Architecture

Implementation Architecture

Some App Components Screenshots

Login Screen

Signup Screen

Home Screen

Police Hotline Screen

Security Data Features

  • Ensured only verified users on the system can send out alert reports and make phone calls.
  • Ensured verified users can only send reports about their polling units within a 200m radius.
  • Increased network connectivity by saving crucial data such as JSON files and user information the system uses on the user’s phone.
  • Ensured that only authorized users can create, read, update, and delete information on the database.