Documentation Industrial Traing
Documentation Industrial Traing
Documentation Industrial Traing
Mobile Devices
Bachelor of Technology
in
Abhiraj Mishra
[Roll no.: 1628310001]
Mohd Sufian
[Roll no.: 1628310015]
Rishabh Mishra
[Roll no.:1628310024]
under the guidance of
MR.Sandeep Pandey
Acknowledgment
We have taken efforts in this project. However, it would not have been possible without the
kind support and help of many individuals and organizations. We would like to extend my
sincere thanks to all of them.
We would like to take the opportunity to express my humble gratitude to Mr.Sandeep
Kumar Pandey under whom we executed this project. His constant guidance and
willingness to share his vast knowledge made me understand this project and its
manifestations in great depths and helped me to complete the assigned tasks.
We would like to thank all faculty members of National Intitute of Electronic &
Information Technology,Lucknow Branch for their generous help in various ways for the
completion of this thesis.
Abhiraj Mishra
Mohd Sufian
Rishabh Mishra
Abstract
Since ages, marking attendance has been one of the most important way to record and track
the presence of students in schools, colleges. Attendance marking in different forms has
been in use in various organization to record the presence of their human resource. This
helps the organization in generating their month-end payroll, and other activities. Such
systems may be manual or automated. Biometric-based system, card-based system are some
of the examples of automated attendance system.
In this project, an attempt has been made to record attendance through mobile devices.
The aim of the project is to create an Android mobile application for attendance system
that can be used by all teachers for their respective courses. This application fetches the
details of the courses allotted to the respective faculty and the students enrolled in the
courses from the server using the internet connection and stores it in the mobile database.
This application stores the attendance in the mobile internal database and the faculty can
view and update the attendance whenever required. At the end of the month, when the
faculty is needed to upload the attendance, they can directly upload it from their mobile in
the server provided the internet connection is available.
This application uses Android application development toolkit. Android is a Linux-based
operating system developed for smart phones or tablet computers. It is a stack of software that
includes operating system, middleware and libraries and APIs written in C. The Android
application is developed in Java-like language using the Android software development kit
(SDK). The integrated development environment (IDE) which is officially supported for
Android apps development and used in this project is Eclipse, which uses the Android
Development Tools (ADT) plugin.
Contents
Certificate ii
Acknowledgement iii
Abstract iv
1 Introduction 1
1.1 What is Android? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Features of Android . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 Application Framework . . . . . . . . . . . . . . . . . . . . . . 2
1.2.2 Dalvik Virtual Machine (DVM) . . . . . . . . . . . . . . . . . 3
1.2.3 SQlite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.4 Linux Kernal ........................... 3
1.3 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 Objective ................................. 4
1.5 Outline of thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 General Description 6
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Product Perspective ........................... 6
2.3 User Characteristics ........................... 7
2.3.1 Faculty .............................. 7
2.4 General Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4.1 Server Side ............................ 7
v
2.4.2 Client Side . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4 Design 11
Function Oriented Software Design ...................................................................... 11
Context diagram............................................................................................ 12
Level 1 diagram ............................................................................................ 12
Level 2 diagram ............................................................................................ 13
Object Oriented Software Design ......................................................................... 13
ER Diagram .................................................................................................. 14
5 Implementation 15
Android API.......................................................................................................... 15
vi
List of Figures
vii
Chapter 1
Introduction
Since ages, marking attendance has been one of the most important way to record and track
the presence of students in schools, colleges. Attendance marking in different forms has
been in use in various organization to record the presence of their human resource. This
helps the organization in generating their month-end payroll, and other activities. Such
systems may be manual or automated. Biometric-based system, card-based system are some
of the examples of automated attendance system. In the manual attendance system, the
faculty takes the attendance of the students enrolled in different courses taken by the faculty.
The information regarding the attendance is then passed on to the academic section of the
institute where the information is feed into the institute server database.
In the attendance system through mobile devices, the faculty takes the attendance which
is stored in the mobile database. At the time of submission of attendance report the
faculty directly uploads the attendance in the server and does not need third person
interaction.
This project presents the Attendance system through mobile devices, which is developed
using Android application. The application is installed in every faculty’s mobile phones
and can be used to take attendance in offline mode (that is even when there is no network
connectivity as the application is a stand-alone application). This application fetches the
details of the courses allotted to the respective faculty and the students enrolled in the
courses from the server using the internet connection and stores it in the mobile
database. This application stores the attendance in the mobile internal database and the
faculty can view and update the attendance whenever required. At the end of the month,
when the faculty is needed to upload the attendance, they can directly upload it from their
mobile in the server provided the internet connection is available.
1
1.1What is Android?
Android is a Linux-based operating system developed for smart phones or tablet
computers. It is a stack of software that includes operating system, middleware and
libraries and APIs written in C. It was developed by Google and Open Handset Alliance in
July, 2005. Android is an open source and Google releases the source code under Apache
license. This open source and free license allow the manufacturers and the enthusiastic
developers to freely develop and modify their applications in Java-like language that utilizes
Google-developed Java libraries.
The Android applications are developed using the Android software development kit (SDK).
The SDK includes a comprehensive set of development tools which includes a debugger,
software libraries, a handset based emulator which is based on QEMU (Quick EMUlator)
and tutorials. The integrated development environment (IDE) which is officially supported
for Android apps development is Eclipse which uses the Android Development Tools
(ADT) plugin. The following are the several features which help in the development of
Android applications:
2
Motivation Introduction
1.2.3 Sqlite:-
Android uses Linux version 2.6 for the core system services like memory management,
process management, security and network stack. The Linux kernel also acts as an
abstraction layer between the hardware and the software stack.
1.3 Motivation
The attendance system is one of the most important system used in every organization to keep
the track of attendance. The previous conventions followed for taking attendance was
very tedious task and requires a lot of paper work. It was not automated and so handling
and maintaining the system was a tough job. The previous attendance system used in colleges
needed the faculty to give the attendance details to be uploaded in the server. So there was a
need to automate the attendance system and to reduce the manual effort needed in storing
the records and maintaining it. The attendance system through mobile devices is fully
automated. It is easy to use
3
Objective Introduction
the system and take attendance which does not need any external effort to store and upload
the attendance in the server.
Nowadays, Android phone has emerged as the world’s most popular mobile platform.
Android is the world’s most popular mobile platform. It’s the largest installed base of any
mobile platform and growing fast. Millions of users are using android phones and android
application is becoming more and more popular.
1.4 Objective
Design a Student attendance system to keep track of attendance in mobile devices for
easy and proper evaluation of attendance.
1.4.1 Develop and implement an attendance system.
1.4.2 To create an Android mobile application to provide a User Interface to interact with
the system.
4
1.5 Outline of thesis Introduction
5
Chapter 2
General Description
2.1 Introduction
The attendance system gives an ease in the working, managing and day-to-day functions
of the system in an easy way through an intuitive interface that makes it easy for every
faculty to utilize it fully and is virtually maintenance free.
The subsection 2.2 explains the product perspective, 2.3 explains the functions of the
product. Section 2.4 explains the type of user and characteristics. Section 2.5 explains the
constraints and requirements.
6
2.3User Characteristics General Description
2.3.1 Faculty
ˆ The faculty logs in through his account and gets the details of the courses taken by him
and the student enrolled in those subjects.
ˆ The faculty can take attendance for their respective subjects and store the details in
the mobile internal database
ˆ The faculty can also view the attendance details if required at later stage.
ˆ The faculty can directly upload the attendance details in the server through his mobile
phone.
1. Hardware Constraints
Android Device/Android Virtual Device
2. software constraints
Android Studio IDE 3.2 or Higher
Windows Operating System(Windows7 or Higher)
7
2.4 General Constraints General Description
Any Android Phone/Tablet device which is able to connect to the server and running the
Android Operating System.
8
Chapter 3
The Application developed follows the following steps of SDLC. Under which the SRS
model developed for the system is as listed below
The SRS model Contains
ˆ Functional Requirements.
ˆ Non-Functional requirements
R.1 Login
Description: The faculty will login into the application with the given user ID and
password. If the user ID and password is correct, user will be prompt to proceed
option else error message will be displayed.
9
3.1 Functional Requirements of the System Requirement Analysis and Specification
Take Attendance
Description: Faculty take attendance on a particular day by swiping over a student
name to mark him absent.
Input: Mark student absent
Synchronize Database
Description: At the end of the month or at any time when faculty wishes, he can upload
the attendance details of a particular subject in the Online Server
Input: Select Sync button
Output: Confirmation message
10
Chapter 4
Design
ˆ Detailed design
The preliminary design can be further divided into two sub categories
11
Function Oriented Software Design Design
Context diagram
A context diagram is a structured graphical tool used for identifying the functional areas
and the processes which are performed within and between the system and outside the
system. Context diagram supports a data-oriented approach for designing system. It helps in
investigating the output and the process requirement of the system. It helps in defining the
boundaries of the proposed system. The symbols used in the context diagrams are for
external entities, data storage and data flows and process.
Here in the following context diagram4.1, we represent our attendance system which
has one external entity i.e. user of the system namely Faculty and the data flowing in and
out of the system is the attendance details.
Level 1 diagram
The context-level DFD is then exploded to produce a Level 1 DFD which models the
details of the system. The Level 1 DFD shows how the system is divided into sub-systems
(processes), and how each processes deals with one or more of the data flows to or from an
external entity, and how the processes together provide all of the functionality of the
system. The level 1 DFD also identifies the internal data stores which must be there for
the system to do its job, and shows the data flow between the various parts of the system.
In the below Level 1 DFD 4.2, the attendance system has been decomposed further into 5
processes which are namely Login, View courses taken, View enrolled student list, View
attendance, Upload attendance. Each processes is accessed by the Faculty
12
Object Oriented Software Design Design
and there are data storage namely Server database, Attendance details, Enrolled student
list, Course list and User details which are used in the system.
The Level 2 DFD is the further decomposition of Level 1 processes into sub-processes (sub-
systems) which give detailed description of the data flow in each processes.
Here we have decomposed the process View enrolled student lists (Fig 4.2) in the sub-
process Take attendance. The faculty selects the course ID and get the details of the enrolled
student and then he can take attendance for that particular course (Fig 4.3). The data
storage used in this level is the Attendance list.
13
Object Oriented Software Design Design
ER Diagram
ˆ Entities
ˆ Relationships
ˆ Attributes
In designing the ER diagram, we identify and define all the entities, determine the
interactions between the entities and determine the cardinality of the relationship.
The ER diagram for the attendance system represents all the entities namely User, Course,
Enrolled Student and Attendance and the relationship between these entities used in the
system. The User entity contains the attributes Uid, Name, Tbname and Pwd where the Uid
is its primary key. The Course entity contains the attributes Subcode, Subname and
Tbname where Subcode is its primary key.
14
4.2 Object Oriented Software Design Design
15
Chapter 6
Implementation
16
6.1 Android API Implementation
17
Chapter 7
Graphical User Interface
The application GUI is developed using the android SDK and the various forms are as shows below
18
Graphical User Interface
19
Graphical User Interface
20
Chapter 8
Conclusion
The attendance system through mobile devices is a very effective tool which can be used
to a great extent. The system is portable and can be easily installed and used on any
mobile phones supporting Android OS.
The use of this system can result in a reduction of number of hours spent in feeding the
attendance details in the server database. It also provides an interface which is easy to
understand by the users and greatly helps in adapting to the use of this system.
Future Work
The system can be further enhanced and several other functionalities can be added. The
system can be made login independent. The present system logs in using Internet all the time.
We can enhance the system by implementing offline mode login feature. The feature to
update the attendance at a later stage can also be implemented. The system can also be
enhanced by using voice recognition feature of the Android.
21
20