STUDENT ATTENDANCE ANDROID APPLICATION
A PROJECT REPORT
Submitted By
KULSUM AKTER NISHA
11508038
In partial fulfillment for the award of the degree
Of
BACHELOR OF SCIENCE (ENGG.)
In
COMPUTER SCIENCE AND ENGINEERING
COMILLA UNIVERSITY:: COMILLA-3506
SEPTEMBER 2018
COMILLA UNIVERSITY:: COMILLA-3506
BONAFIDE CERTIFICATE
This is to certify that the thesis entitled, “STUDENT ATTENDANCE ANDROID
APPLICATION” is the bonafide work of “KULSUM AKTER NISHA", in partial
fulfillment of the requirements of CSE -315 Project Work embodies the work done by him
under my supervision.
------------------------------ ------------------------------
SIGNATURE SIGNATURE
HASAN HAFIZUR RAHMAN PARTHA CHAKRABORTY
CHAIRMAN OF THE EXAM SUPERVISOR
COMMITTEE Assistant Professor
Department of Computer Science and Department of Computer Science
Engineering and Engineering
Comilla University, Comilla Comilla University, Comilla
ii
ACKNOWLEDGEMENTS
At first, I want to express gratitude to the Almighty God for His endless kindness for keeping
me mentally and physically fit to complete this sophisticated task.
I am using this opportunity to express our gratitude to everyone who supported us throughout
the project. I am thankful for their aspiring guidance, invaluably constructive criticism and
friendly advice during the project work. I am sincerely grateful to them for sharing their
truthful and illuminating views on a number of issues related to the project.
I would like to express my special thanks of gratitude to my honorable supervisor
PARTHA CHAKRABORTY, who gave me the golden opportunity to do this wonderful
project on the topic “Student attendance android application”.
His sage advice, insightful criticisms, and patient encouragement aided the completing of this
project in innumerable ways. I came to know about so many new things, I am greatly
thankful to him.
iii
ABSTRACT
Now a day’s mobile phone is a necessary part of the people’s life. There is continuously
rising in a number of mobile computing applications, centered on the people’s daily life. In
such applications, Student attendance has been detected as an important application. It is a
mobile computing software application, which focuses on an activity, which is based on
attendance information system of academic institutions. Such application which presents
implementation of a system as attendance which is helpful for teacher to gather necessary
information about student. I propose architecture of mobile Student Attendance system for
android mobile phones that is able to provide Attendance information to the mobile users
conveniently.
My proposed system helps teachers to get attendance information with percentage of student.
Teachers can add subject as a semester wise and they will know about their total lecture.
Development process of the system starts with System analysis.
iv
LIST OF CONTENT
Declaration of Authorship i
Certificate ii
Acknowledgements iii
Abstract iv
Chapter-1: Introduction Page
1.1 Purpose of the system 8
1.2 Background Information and Motivation 9
1.2 Aims &Objectives 9
1.3 Overview of the System 10
1.4 Conclusion 10
Chapter-2: Literature Review
2.1 Overview of the Existing System 11
2.2 Proposed System 12
2.3 Used Technology 12
2.3.1 Software Requirement 12
2.3.2 Hardware Requirement 12
Chapter-3: Methodology and Design
3.1 Introduction 13
3.2 Data Flow Diagram (DFD) 13
3.2.1 Context Level DFD 14
3.3 E-R Diagram 15
v
Chapter-4: Implementation & Testing
4.1 Introduction 16
4.2 Software Implementation 16
4.2.1 Requirement Tools 16
4.3 Firebase Storage and Database 17
4.3.1 XML layout 17
4.4 Implementing System Program 18
4.5 Testing 21
4.5.1 Platform Testing 21
4.6 Conclusion 21
Chapter-5: Conclusion and Future work
5.1 Limitation 22
5.2 Future Work 22
References 23
vi
LIST OF FIGURES
3.2.1Context Level DFD 14
3.3 E-R Diagram 15
4.1.1 Splash Page 18
4.1.2 Sign In page 18
4.1.4 Subject List 19
4.1.6 Student List 19
LIST OF ABBREVIATION
Abbreviation Elaboration
API Application Programming Interface
IDE Integrated Development Environment
AVD Android Virtual Device
GUI Graphical User Interface
XML Extensible Markup Language
SDK Software Development Kit
OS OS Operation System
JSON JSON JavaScript Object Notation
ADT Android Development Tools
v
CHAPTER 1
Introduction
The Attendance system is software developed for daily student’s attendance in university.
The information is stored by the firebase Database, which will be provided by the teacher
for a particular subject .This system will also help in evaluating attendance eligibility of a
student.
1.1 Purpose of the system
A smart phone is a mobile phone with some advanced features. They typically combine the
features of a cell phone with those of other popular mobile devices, such as media player,
digital camera and GPS. Smartphone also have internet connectivity feature. But the most
important feature of a smart phone is that it can run user application. That is why it is called
smart phone. There exists some feature phone with media player, web browser etc. Buttery
cannot run any other application. Anyone can have any feature he want, in his smart phone.
All he has to do it to find an appropriate application or built his own one. There are many
smart phone platform, android, blackberry, windows phone any many others. Like personal
computer operating system, only some of them are popular. Currently popular smart phone
platforms are ios, windows phone and android. Among them android is most popular.
Android has a great SDK which makes android application development easy. Besides it
comes free.
The purpose of developing attendance system is to computerized the tradition way of taking
attendance of student. Another purpose for developing this software is to generate the report
automatically at the end of the session or in the between of the session.
8
1.2Background Information and Motivation
Sometime teacher has faced many problems to find total attendance of student, and total
lecture of teacher. These problems can be solved. All necessary information about attendance
is stored in this app. Teacher gets their total lecture and adds their subject as a semester wise.
Information is updated by the admin if needed. This app is mobile based system which
retrieves saved information. Among the smart phone platform, android is the most popular. It
is obvious why I choose android. Besides android has a rich SDK which makes it easy to
develop android application.
1.3 Aims and Objectives
The main aim of this project is to develop a user friendly application. The design aims of the
Project is as follows:
1. Simple and easy to use interface.
2. Easy to build expose information.
3. The system provides twenty four hour service.
We determined the system was required to complete the following tasks:
1. Contain all details information
2. Have information readily available user.
3. Admin can insert new data and update existing data that will show in user side.
9
1.4Overview of the System
Attendance System basically has two main modules for proper functioning
• First module is admin which has right for creating subject for new batch.
Any entry of new Semester, update in subject if necessary.
• Second module is handled by the user who are also can add subject, semester.
And take attendance of student and user also can add a lecture per day.
1.5Conclusion
The main objective of this project is to develop a mobile student attendance application with
added functions to an existing application. Especially in this application, interaction between
users is the new function. Therefore, users may use a more convenient application.
10
CHAPTER 2
Literature Review
2.1 Overview of the Existing System
According to Cobuild learner’s dictionary Attendance is the fact that someone is present at an
event or goes regularly to an institution, or the attendance at an event is the number of people
who are present at it. Furthermore, if someone is in attendance of a place or event, they are
present.
According to Turban Mclean. Withered(1998) from their book Information t h a t is a
collection of component that collects, processes, stores, analyses and disseminate information
for a specific purpose, like any other system. An information system includes inputs (data,
instructions and output reports, calculation).
C.S French (1996) in his book Computer science asserts that is record is information relating
to one person, production e.t.c in database, and a record contains information about one
person.
This System facilitates the attendance information of particular student in a particular class.
The information is sorted by the operators, which will be provided by the lecturer for a
particular class. This system will also help in evaluating eligibility criteria of a student to sit
for an examination.
11
2.2 Proposed System
The system I have developed has two parts, User part and admin part. I used here Firebase
database system which helps me to insert and update new data and it’s added on user side.
In user side user can only view details which he/she added but in admin side data can be
updated and also can be checked if it added properly. Our proposed system has the following
advantages:
1. User friendly interface.
2. Fast access.
3. Less error.
4. Highly informative.
5. Look and feel environment
2.3 Used Technology
The automated student attendance system is based on any windows environment. To run the
system only need any popular browser. To do this, following tools and technologies are used.
2.3.1 Software Requirement
• Operating System: Microsoft Windows 7,8,10
• Data Base Server : Firebase Database
2.3.2 Hardware Requirement
• RAM 4 GB
• Hard Disk 500 GB
12
CHAPTER 3
Methodology and Design
3.1 Introduction
System designing in terms of software engineering has its own value and importance in the
system development process as a whole. To mention it may though seem a simple as anything
or simply the design of systems, but in a broader sense it implies a systematic and rigorous
approach to design such a system which fulfills all the practical aspects including flexibility,
efficiency and security. Systems design is the process of defining the architecture,
components, modules, interfaces, and data for a system to satisfy specified requirements.
Systems design could be seen as the application of systems theory to product development.
3.2 Data Flow Diagram (DFD)
A DFD may look similar to a flow chart. However, there is a significant difference with the
data flow diagram. The arrows in DFDs show that there is a flow of data between the two
components. A component in DFD may not continue execution when sending data and during
execution of the component receiving the data.
The component sending data can send multiple sets of data along several connections. Data
flowcharts can range from simple, even hand-drawn process overviews, to in-depth, multi-
level DFDs that dig progressively deeper into how the data is handled. They can be used to
analyze an existing system or model a new one. Like all the best diagrams and charts, a DFD
can often visually “say” things that would be hard to explain in words, and they work for both
technical and nontechnical audiences, from developer to CEO. That’s why DFDs remain so
popular after all these years.
13
3.2.1 CONTEXT LEVEL DFD
0-level DFD:
User/ System Output
Administrat
or
1-level DFD:
Login process Add new subject
ADMIN
Update or delete data Data Store
User
Figure 3.2.1: Context-level DFD
14
3.3 E-R Diagram
Entity Relationship Diagram, also known as ERD, ER Diagram or ER model, is a type of
structural diagram for use in database design. An ERD contains different symbols and
connectors that visualize two important information: The major entities within the system
scope, and the inter-relationships among these entities. And that’s why it’s called”Entity”
”Relationship” diagram (ERD)!
”Relationship” is about how these entities relate to each other within the system.
Figure: 3.3: Entity-Relationship Diagram
15
CHAPTER 4
Implementation and Results
4.1Introduction
Implementation is the stage in the project where the theoretical design is turned into a
working system. The implementation phase constructs, installs and operates the new system.
The most crucial stage in achieving a new successful system is that it will work efficiently
and effectively.
4.2 Software Implementation
In this system, we use android for development of project .Implementation phase is the final
phase of building a system. In this phase a system is built based on the design in the design
phase.
4.2.1 Required Tools
We have selected these tools for implementing our system.
1. Android Studio (bundled with Android SDK)
2. Java Development Kit (JDK 1.8.0)
3. Firebase Storage and Database
16
4.3 Firebase Storage and Database
The Real-time Database was the first feature we launched for Firebase, over four years ago.
Cloud-hosted JSON databases were still somewhat new at the time, so it immediately stood
out. What made the Firebase database truly unique was its ability to synchronize data
between the different clients instantly, with a single, simple to use API. The Real-time
database hides the complexity of building applications behind one consistent programming
interface. This made it easy to build real-time, collaborative applications. The real-time
Database is really just one big JSON object that you manage in real-time. This means it’s
really just a tree of values. This allows for simple, flexible data modeling. The database is
schema less, which means you don't have to commit to a fixed structure early on. The real-
time Database comes with a server enforced rules language that allows you to validate the
data structure of each write to the database. The truly unique aspect of the Firebase database
is in its real-time synchronization. To connect my project with firebase real-time database
first I have created a admin side app .Then I add another app for user side so that when admin
side will store data it will automatically store and show in user side app. Some security rules
need to be changed to write data in real-time database.
4.3.1 XML Layout
The Android xml layout is used to define each element of the user interface which is
displayed in the activity and instantiate layout element at runtime. In this project the
following layouts are used.
Linear Layout
Relative Layout
android.support.design.widget.TextInputLayout
17
4.4 Implementing System Program
Welcome activity is the starting activity of our system. This system has two side .User side
and admin side. User side only can see data but admin side can view and update data. Here
firebase database is system is used. So any data admin insert or update is successfully added
to the main storage if proper internet connection is available.
4.4.1 User-side:
This is splash Page of the system 1(a). This is SIGN IN and SIGN UP page 2(a), 3(a).When
user first uses this application, a user must have to sign up the application.
Figure4.1.1: Splash page Figure4.1.2: Sign In page Figure4.1.3: Sign Up page
18
User can add their subject as a semester wise.
Figure4.1.4 Figure4.1.5: Subject List
Under these subject user can add lecture, student’s name and roll.
Figure4.1.6 Figure4.1.7 Figure4.1.6: Student List
19
Figure4.1.8
Above figure: 4.1.8 shown that all information are saved in firebase Real-time database.
4.5 Testing
This section describes the testing of the project in terms of working environment platform,
the main functional requirements and the non-functional requirements achievement according
to the predefined objectives.
4.5.1 Platform Testing
The application is tested on Android 5.0(API Level 21) called Lollipop and Android
version7.0 called Nougat (API Level 25). . It runs perfectly in all Android versions. This is
because the Android SDK platform package includes API level 19 to API level 25.
During testing, different AVDs were created for different API levels and the application run
and showed all the expected outcomes.
4.6 Conclusion
Implementation and result phase is the final stage of a system development life cycle.For
developing a standard project all phase of system development cycle should be treat
carefully.After implementation and testing phase if the system gives a result that is not user
friendly the whole system need to update again.
21
CHAPTER 5
Conclusion and Future work
5.1 Limitation
I have been provided a conscious effort to create and develop an application, making use of
available tools, techniques and resources that would generate a proper application. To make
this application user friendly and flexible, a continuous observation has been kept on it. There
have some limitation.
5.2 Future Work
I am interested to add more features which make the project more convenient to its
users. And I am also interested to add with all students and teachers information
and adding students marks .
I am also interested to improve the user interface design and make it more user
friendly.
22
References
1. Literature review
https://ir.unimas.my/7575/1/Information%20system%20portal%20(24%2
0pages).pdf
2. E-R diagram
https://meeraacademy.com/er-diagram-for-student-management-system/
3. What is Android?
http://www.tutorialspoint.com/android/android_overview.htm
4. The firebase blog.
https://firebase.googleblog.com/2016/07/have-you-met-realtime-
database.htm
5. System Engineering Guide.
https://www.mitre.org/publications/systems-engineering-guide/se-
lifecycle-building- blocks/system-design-and-development.
23
References
1.
//www.iisjaipur.org/iiim-current-
08/mac_iv_sem_pro_eva/15.project%20attendence%20managemnt%20system.pdf
[2]. what is Android? Accessed on 10th September
2018.http://www.tutorialspoint.com/android/android_overview.htm
Login Name
name
User Has
Password
Email
Course Semester
name Course Name
Percentage
Has
Student Student
name id
Student