Automatic Secure Door Lock
Automatic Secure Door Lock
ISLAMABAD
By:
Supervisor:
(TABASSUM BIBI)
Signature:
ii
DEDICATION
I dedicate my dissertation work to my family and many friends. A special feeling
of gratitude to my loving parents whose words of encouragement and push for
tenacity ring in my ears.
I also dedicate this dissertation to my friends who have supported me throughout
the process. I will always appreciate all they have done.
iii
EXORDIUM
iv
Executive Summary
An automatic secure door lock based on the web is a cutting-edge security solution
that utilizes the power of the internet and a single-board computer to control and
secure access to a door.
The system can be controlled through a web interface, which can be accessed from
any device with internet access, such as a smartphone, tablet, or computer. This
allows users to remotely grant or revoke access to the door, making it ideal for use
in homes, offices, and secure facilities. The web interface is designed to be user-
friendly, with a simple and intuitive interface that makes it easy for users to
manage access to the door.
v
Acknowledgement
All praise is to Almighty Allah who bestowed upon us a minute portion of His
boundless knowledge by virtue of which we were able to accomplish this
challenging task.
We are greatly indebted to our project supervisor “Tabassum Bibi”. Without their
personal supervision, advice and valuable guidance, completion of this project
would have been doubtful. We are grateful to them for their encouragement and
continual help during this work.
And we are also thankful to our parents and family who have been a constant
source of encouragement for us and brought us with the values of honesty & hard
work
---------------------- ----------------------
vi
TABLE OF CONTENTS
1. INTRODUCTION: 1
2. SYSTEM DESCRIPTION: 8
vii
3.04 Scope: 15
3.05 Modules: 16
4. SYSTEM DESIGN: 19
4.01 Introduction: 20
7. REFERENCES: 37
viii
ix
CHAPTER 1
INTRODUCTION
1
1. Introduction:
Nowadays, technology plays an essential role in our life in which different domain of
interests are taking advantage of technology. Recently, computers and smart phones have
significantly contributed our daily life where numerous computations and adjustments are being
accomplished by such technologies. Securing homes has become one of the concerning issues
that facing many people. With the expanded duration of leaving the home due to work, study and
other duties, homes are being more vulnerable for several threats especially being burgled. Apart
from the threats, there are different cases where securing or monitoring the house is very critical
such as the existence of elderly individuals or kids with baby sitter. For this manner, home
security system or so-called Home OS has been proposed in order to provide more secure
arrangements. Such concept aims to turn the home into a smart in which different tasks
especially monitoring can be performed remotely. Monitoring and controlling some tasks inside
Remote Locking/Unlocking: Provide options to remotely lock and unlock the door
Real-time Status Updates: Display the current status of the door (locked/unlocked) in
2
authentication protocols, and user authorization to prevent unauthorized access.
Error Handling and Alerts: Implement error handling mechanisms and alerts for
Hardware Setup: Connect the electronic door lock system to the microcontroller. Set up
Software Development:
Backend Development: Create APIs for communication between the web interface and
User Interface: Design a user-friendly web interface allowing users to log in, view door
Database Management: Implement a database to store user credentials, access logs, and
communication between the web interface and the door lock system.
Testing and Security Checks: Conduct thorough testing to ensure proper functionality
and security. Test scenarios involving different user actions and edge cases. Implement
Deployment: Deploy the system on a reliable server and ensure it can handle concurrent
3
1.4 User Authentication:
(username/password or other authentication methods) and log out when the session ends.
User Roles: Admin, regular users, or different privilege levels to control access and
permissions.
Lock/Unlock Functionality: Users with appropriate permissions can remotely lock and
lock/unlock commands.
Status Display: Display the current status of the door (locked/unlocked) in real-time on
Password Management: Enable users to reset passwords and maintain secure password
policies.
User Profile Management: Users should be able to update their profiles and manage
4
their information.
transmission between the web interface and the door lock system.
Logging and Auditing: Maintain logs of user activities, access attempts, and system
Error Messages: Provide clear and informative error messages for invalid login
Cross-browser Compatibility: Ensure the web interface works well across different web
Response Time: Ensure quick response times for locking/unlocking actions and status
5
updates.
compromising performance.
User Guide: Provide comprehensive documentation explaining how to use the system,
Support Channel: Offer a support system or help desk for users to seek assistance if
needed.
Performance Requirements:
The system must be interactive and the delays involved must be less. So, in every action-
response of the system, there are no immediate delays. In case of opening windows forms, of
popping error messages and saving the settings or sessions there is delay much below 2
seconds, in case of opening databases, sorting questions and evaluation there are no delays
and the operation is performed in less than 2 seconds for opening sorting, computing, posting
> 95% of the files. Also, when connecting to the server the delay is based editing on the
distance of the 2 systems and the configuration between them so there is high probability that
there will be or not a successful connection in less than 20 seconds for sake of good
communication.
Safety Requirements
information.
Security Requirements:
6
As the system provides the right tools for discussion, problem solving it must be made sure
that the system is reliable in its operations and for securing the sensitive details.
There are some Software Quality Attributes which are given below:
Availability:
If the internet service gets disrupted while sending information to the server, the information
Security:
The main security concern is for users account hence proper login mechanism should be used
to avoid hacking. The tablet id registration is way to spam check for increasing the security.
Usability:
As the system is easy to handle and navigates in the most expected way with no delays. In
that case the system program reacts accordingly and transverses quickly between its states.
7
CHAPTER 2
SYSTEM DESCRIPTION
8
2 Productive Perspective:
The primary objective of an automatic secure door lock system is to provide heightened security.
By integrating this system with web-based controls, it allows for convenient and secure remote
access management. This perspective ensures that only authorized individuals can control access
managing door access remotely. Authorized users can lock or unlock doors from anywhere
with an internet connection, eliminating the need for physical keys or direct access.
enabling real-time monitoring of door status. Users can instantly check whether the door is
locked or unlocked and take action accordingly, enhancing control and security measures.
Scalability and Integration: This project can be expanded or integrated with other systems.
For instance, it could be integrated with smart home automation, security systems, or office
access control systems, providing a scalable solution that can adapt to various environments.
Efficiency and Time-saving: Automating the door lock system through a web interface
saves time and effort. Users can manage multiple access points simultaneously, reducing the
Data Logging and Analysis: The system can log user access, providing valuable data for
analysis. It can track entry and exit times, user activities, and access attempts, enabling
administrators to assess patterns, improve security protocols, and enhance overall system
efficiency.
Customization and User Management: The web-based nature of the project allows for
9
customization and efficient user management. It enables administrators to easily add or
remove user access, modify privileges, and update security settings as needed.
web project showcases the integration of IoT, web development, and security technologies. It
represents an innovative approach that aligns with technological advancements and modern
security trends.
administrators can perform troubleshooting and maintenance tasks without being physically
present. This capability streamlines the maintenance process and reduces downtime.
1. Requirement definition:
In this stage, the systems services, constraints and goals are established by consultation with
system users.
10
4. Integration and system testing:
In this stage, the individual program unit or programs are integrated and tested as a complete
system to ensure that the system requirements have been met.
11
2.2 Software Requirements:
1) Internet connectivity requirement: The proposed door lock system requires a stable and
reliable internet connection for remote access and control, which may not be available in all
locations.
2) Compatibility with existing locks: The proposed system may not be compatible with all types
of existing door locks and may require additional hardware for installation.
3) Technical skill requirement: Installation and setup of the system may require technical skill
and knowledge, making it difficult for some users to install and use.
4) Cost: The cost of the proposed system may be higher compared to traditional keyed locks or
5) Security risks: The proposed system relies on secure web-based access and control, which
6) Privacy concerns: The collection and storage of user data, including access logs, may raise
7) Power outages: The proposed system may be impacted by power outages, rendering it
12
temporarily inoperable.
CHAPTER 3
SOFTWARE REQUIREMENT
SPECIFICATION (SRS)
13
3 Problem Definition
This chapter discusses the precise problem to be solved. It should extend to include the outcome.
Carrying keys every time with us or forgetting lock door while leaving home is an issue that
needs some attention. We need some kind of solution that lets us lock and unlock our door using
mobile devices or web portal in secure way that only the authorized user can access the security
of our doors. The development of this software system is aimed at solving this problem by
providing a secure, flexible, and convenient means of remote access and control for door locks.
The system utilizes a web-based user interface for remote access and control, as well as secure
authentication and authorization mechanisms to ensure the privacy and security of user data.
The goal is to provide a reliable and secure door lock system that can be easily installed and
used, and which offers the flexibility and convenience of remote access and control.
Online secure door lock system will provide it’s user the ease of use to unlock and lock
their door from anywhere in the world our application will connect with internet and
provide it’s user with a friendly interface that he/she can use to interact with it and lock
Remote Access and Control To provide users with the ability to remotely access and
Security and Privacy to ensure the privacy and security of user data by incorporating
14
secure authentication and authorization mechanisms.
Ease of Use to design a user-friendly interface that is easy to use, even for those with
Reliability to develop a software system that is reliable, robust, and resistant to failure,
No stressing if we miss keys at home or forget to lock the door while leaving
To provide a secure and convenient means of remote access and control for door locks.
To design a user-friendly web-based interface for accessing and controlling door locks.
To develop a reliable and scalable system that can support a large number of door locks
and users.
Or simply unlocking the door from anywhere around the world if we want someone to
3.4 Scope
Online Secure Door Lock is created to provide user ease of use in their daily life by simply
providing them a secure and safe way to lock and unlock their doors from anywhere this project
is developed as the final requirement of BSCS degree and will be completed in 2 semester period
15
meaning 8 months.
The scope of the proposed project the design and implementation of a secure, scalable, and user-
friendly software system for remote access and control of door locks.
3.5 Modules
The proposed project, the automated secure door lock based on a web application, consists of the
following modules:
User Login/Registration: Users can create an account and log in to the system to access
Door Lock Management: Users can view the status of their door locks and lock/unlock
Event Logs: Users can view a log of events related to their door locks, including
Access Management: Users can grant and revoke access permissions to others, enabling
Notifications: Users will receive real-time notifications of events related to their door
User Management: The administrator can manage users, including adding new users,
Access Management: The administrator can manage access permissions for users,
16
Event Logs: The administrator can view a log of all events related to the door locks,
Notifications: The administrator will receive notifications of events related to the door
Module 1:
Profile management
Module 2:
Module 3:
17
Revoking access codes
Module 4:
Notification Module:
Email notifications
Module 5:
18
CHAPTER 4
SYSTEM DESIGN
19
4 Requirement Analysis
4.1 Introduction:
The requirement analysis is an important phase in the software development life cycle as it helps
to identify and understand the needs of the stakeholders and users. This chapter provides an in-
depth analysis of the requirements for the automated secure door lock based on web application.
It outlines the functional and non-functional requirements, user needs and expectations, and
requirements are analyzed to ensure that the project meets the desired objectives and delivers the
desired outcomes. The result of the requirement analysis will be used to guide the design and
There are various requirement identifying techniques that can be used. Some of the popular ones
are Use case analysis, Event-Response Table, Functional Requirements, For instance,
20
4.3Use case diagram
Login
User
Add User
Lock Door
View Status
Delete User
Unlock Door
21
Use Case ID: Enter a unique numeric identifier for the Use Case. e.g. UC-1
Use Case Name: A descriptive name for the use case, such as "Unlock Door".
Actors: The actor or user that initiates the request to the system.
Trigger: The event that starts the use case, such as a user approaching a door
and requesting access.
Pre-conditions: Any conditions that must be met before the use case can start.
The user must have an active account with the system.
The user must have the necessary credentials to access the
system.
The door lock must be properly installed and configured.
The user's device must have an active internet connection.
Post-conditions: Any changes to the system or conditions that result from the
completion of the use case.
Successful authentication of the user.
Unlocking of the door.
Recording of the user's access and time of entry.
Secure storage of all access logs.
Generation of reports on user activity.
Provision of real-time notifications for authorized personnel.
Maintenance of the system's security and privacy protocols
Normal Flow: The step-by-step description of the actions taken by the system and the
user to complete the use case.
User accesses the door lock system through the web
application.
User enters their login credentials to authenticate their identity.
The system verifies the user's credentials and grants access if
they are valid.
The user selects the door lock they want to control from the list
of available locks.
The user selects the desired action, such as locking or unlocking
the door.
The system carries out the requested action and displays a
confirmation message to the user.
The user logs out of the system.
22
Alternative Flows: Any alternate paths the use case may take, such as a user being
denied access.
If the user enters an incorrect password, the system will
prompt the user to re- enter the password.
If the user exceeds the maximum number of attempts, the
system will lock the user out for a specified amount of time.
If the user tries to access the door without being authorized,
the system will deny access and notify the administrator.
If the door is not able to be locked or unlocked due to a
technical malfunction, the system will notify the administrator
for manual intervention.
If the internet connection is lost, the system will switch to
offline mode and allow access based on pre-authorized
credentials stored on the device
Exceptions: Any exceptional or error conditions that may occur during the
use case.
Incorrect or invalid user credentials
Network connectivity issues
Lack of sufficient permissions to perform the desired action
Technical failures or errors in the system
User attempting to access restricted areas without proper
authorization
Exceeding the maximum number of allowed login attempts
Power failure or system shutdown
User attempting to perform actions that are outside the scope
of the system.
Assumptions: The system assumes that users have access to the internet to
use the web application
The system assumes that users have a device capable of
accessing the web application (e.g. smartphone, computer,
tablet)
The system assumes that the user has a valid account to
access the secure door lock functionality
The system assumes that users have the necessary privileges
to perform specific use cases (e.g. administrator privileges for
managing users)
The system assumes that the secure door lock hardware is
23
installed and functioning properly
An event-response table for the automated secure door lock based on a web application
would outline the various events that can occur in the system and the corresponding
User loses access privilege User's access privilege User is denied access
revoked
24
4.5Data Flow Diagram
25
Signup Users / Admin
26
Login Users / Admin
27
Door Lock Status:
Designing an Entity-Relationship Diagram (ERD) for an Automatic Secure Door Lock web
project involves identifying and illustrating the essential entities, their attributes, and
relationships within the system. Below is a conceptual ERD for such a project:
Entities:
User
28
Door
Access Log
Attributes: LogID (Primary Key), UserID (Foreign Key referencing User), DoorID
Relationships:
One user can have multiple access log entries (one-to-many relationship).
One door can have multiple access log entries (one-to-many relationship).
29
CHAPTER 5
DESIGN AND ARCHITECTURE
30
5 Design and Architecture
Introduction
System analysis and architecture entails learning a defining in depth what system can
achieve as well as how the subsystem elements should be implemented and interact.
System Design:
System design is the process of defining the elements of a system such as the
architecture, modules and components, the different interfaces of those components and
the data that goes through that system. It is meant to satisfy specific needs and
requirements of a business or organization through the engineering of a coherent and well
running system.
System Architecture:
System architecture is conceptual modal describes a system’s configuration and actions.
It describes who system works and the environment of the system in a way it is the
representation of a system’s structure.
5.2Architecture Diagram
31
5.3Design Model:
Architectural models are visual representations of the system architecture that provide a
comprehensive view of the software and hardware components, the relationships between them,
5.4Context Diagram:
32
5.5Data Design:
In the data design of the automated secure door lock based on the web application project the
User database: This database stores information about the users who have access to the
secure door lock system, including their user names, passwords, access levels, and other
relevant details.
Access logs database: This database stores a log of all door lock access events, including
the date and time of the event, the user who accessed the lock, and the status of the lock.
Door lock status database: This database stores the current status of each door lock,
including whether it is locked or unlocked, and the date and time of the last change in
status.
Door lock configuration database: This database stores the configuration settings for
each door lock, including the access codes or keys required to unlock the lock, and other
relevant details.
33
CHAPTER 6
TESTING AND EVALUATION
34
6 Testing and Evaluation
Testing of the system's software is compulsory and much needed to clear out all errors. It helps
us to clear out all existing errors from systems software by checking them and by making
necessary changes to clear out all factors It assists us in preventing device program failure.
Sometimes it may take much time to clear out all the errors, but after a successful testing it will
6.1Modules Testing:
Basically, in modules testing we divide the system's software into its subparts to check whether
all the modules working properly or not and to detect which part is disturbing the system's
software environment. It is also called unit testing or component testing. So, by this we easily
detect the errors from our sub modules by checking them separately. It saves time rather to check
whole system's software we only just check the sub module that is not working due to some
35
6.2Integration Testing:
integration test we test each module and sub module of the software and by creating interfaces
between the modules and ensuring that all the modules can communicate accurately. So, by
integration testing, system becomes more efficient and decrease the error rate. Integration testing
also ensure that all the input and output that is moving through modules is passing correctly and
6.3Approval Testing:
After the integration testing of the system, we perform approval testing. In approval testing, we
mainly check that the system is working correctly in the user interface or
6.4Hardware Testing
Every Piece of hardware is test through stress test to ensure that everything will work properly
after integration we fuses will be used to protect the devices from over electricity flow.
36
CHAPTER 7
REFERENCES
37
7 References
Chinwe Juliana, N. (2021). Construction of password based security door-lock system using
Arduino. Advancements in Materials, 5(2), 1. https://doi.org/10.31058/j.am.2021.52001/
Dharme, S. (2022). Door lock security system using recent technology. International Journal for
Research in Applied Science and Engineering Technology, 10(1),
684–686. https://doi.org/10.22214/ijraset.2022.39812/
Jae-seung Cho. (2015). A study on Automatic Gate Management System Digital door lock - with
a focus on QR code digital door lock development cases using MOTP -. Journal of Digital
Design, 15(1), 235–243. https://doi.org/10.17280/jdd.2015.15.1.023/
Kolluru, V. (2021). Password based Door Lock System. SSRN Electronic Journal.
https://doi.org/10.2139/ssrn.3918717/
38