Vous êtes sur la page 1sur 27

STUDENT ATTENDANCE TRACKING SYSTEM – ANDROID APP

MWEBI MAUREEN MOSIARA


REG NO: INP04/20348/16

A RESEARCH PROJECT PROPOSAL SUBMITTED TO THE DEPARTMENT OF


INFORMATION COMMUNICATION TECHNOLOGY FOR THE PARTIAL FULFILLMENT
FOR THE AWARD OF DIPLOMA IN INFORMATION TECHNOLOGY OF KISII
UNIVERSITY

i
DECLARATION

This is to certify that the project report entitled “Student Attendance Tracking Information
System” submitted in partial fulfillment of the requirements for the award of Diploma in
Information Technology embodies work done by myself in the final semester of this diploma
under the supervision of the undersigned.
The project or any other part of it has not been submitted earlier to other University/Institution
for the award of any Diploma or Degree.

NAME: MWEBI MAUREEN MOSIARA


REG NO: INP04/20348/16

Signature: ____________________________ Date: ______________________

Approval

This project has been submitted for examination with my approval as the University Supervisor

Name of Supervisor: Austine Adeka

Signature: ____________________________ Date: ______________________

(UNIVERSITY SUPERVISOR)

DEDICATION
i
I would like to dedicate this thesis to my parents, Mr. and Mrs. mm, who have been an
everlasting source of inspiration in my life. I would not have been able to achieve what I have
without their support.

ACKNOWLEDGMENT

ii
I would like to express my heartfelt gratitude to my supervisor Mr. Austine Adeka for giving me
the opportunity to work on this project and for providing constant support and motivation.

I would also like to thank my dad, mom, grandparents, and my entire family for the sacrifices
they made to help me attend graduate school. I am very grateful for all their support and
motivation that they have provided for the past two years.

I gratefully extend my sincere thanks to all faculties and to all teaching and non-teaching staff
members of the department.

Sincere thanks are extended to my friends for their valuable advice and moral support. My
thanks are due to my parents and loving sister for their affection, inspiration, patience and
support.

ABSTRACT

iii
Student Information Tracking System is an Android application to manage student attendance on
mobile. In many colleges teachers use to take attendance manually. Main objective of this project
is to add mobility and automation in the existing attendance process. This system helps teachers
to take attendance through mobile and also keep in touch with student in some aspect. This
System allow teachers to take attendance, edit attendance, view student‟s bunks, send important
documents in pdf format such as exam time table, question bank etc. and also helps teachers to
inform students about the events that college is going to organize. This system also helps
students in specifying bunks, deleting bunks, viewing their bunks. This system gives a prior
intimation to student as soon as his attendance goes below the specified attendance deadline in
the form of an alert. This system helps students to keep in touch with the events that college is
going to organize. Taking attendance in a class can often be a time consuming and a manual
process, which is prone to human error(s) and hence recording incorrect data. Also, querying the
data per student can be the tedious process since it involves some sort of manual
tracking/counting of days attended. With advent of smartphones and tablets which are very
handy to use, this process can be made completely automated and error free by using the right
technologies. For this project, I am creating an android based application that can be used for
Attendance tracking which is easy to use and free from any manual tasks. Users
(Professor/Course Instructor) just have to add courses he/she plans to take for
Fall/Spring/Summer semester in the application. For each class that he conducts, students will
just have to scan their student ID badge and the application will capture their unique student id
from the badge using OCR (Optical Character Recognition) technique via camera of the device.
Once the student Id is recorded, application will update the appropriate attendance database for
that particular course. At any time, User can query the database to look at attendance of students
for any particular course or look at attendance record for any student.
An application like this is not only guaranteed to be accurate but also extremely easy to use now
that smartphones/tablets are used in common.

Table of Contents
DECLARATION..........................................................................................................................................i

iv
DEDICATION.............................................................................................................................................ii

ACKNOWLEDGMENT............................................................................................................................iii

ABSTRACT...............................................................................................................................................iv

Table of Contents.........................................................................................................................................v

List of Tables and figures...........................................................................................................................vii

Definitions of Key Terms..........................................................................................................................viii

Abbreviations and Acronyms......................................................................................................................ix

CHAPTER ONE..........................................................................................................................................1

1.0 Introduction.................................................................................................................................1

1.1 Background of the Study...................................................................................................................1

1.2 Android Architecture.........................................................................................................................2

1.3 Existing System.................................................................................................................................3

1.4 Proposed System...............................................................................................................................3

1.5 Statement of Problem........................................................................................................................4

1.6 Objectives of the Study......................................................................................................................4

1.7 Motivation and Research Questions..................................................................................................4

1.8 Significance of the Research..............................................................................................................5

1.9 Scope and Limitations.......................................................................................................................5

1.9.1 Scope..........................................................................................................................................5

1.9.2 Limitations..................................................................................................................................6

CHAPTER TWO.........................................................................................................................................7

2.0 LITERATURE REVIEW...................................................................................................................7

2.1 MOBILE PLATFORM......................................................................................................................7

2.1.1 What is Android?............................................................................................................................7

2.1.2 Android Components......................................................................................................................7

2.1.3 Activity...........................................................................................................................................7

2.1.4 Services..........................................................................................................................................7

2.2 Android Application Features................................................................................................................9

2.3 Setting Up The Android Environment...................................................................................................9

v
CHAPTER THREE...................................................................................................................................10

3.0 METHODOLOGY..........................................................................................................................10

Introduction.......................................................................................................................................10

Development Methodology...................................................................................................................11

3.2 Data collection.................................................................................................................................12

3.2.1 Interviews.................................................................................................................................13

3.2.1.0 Types of interviews................................................................................................................13

3.2.1.1 Advantages of using an interview..........................................................................................13

3.2.1.2 Disadvantages of using an interview......................................................................................13

3.2.2 Observation...................................................................................................................................14

3.2.3 Secondary data collection techniques...........................................................................................14

Appendix I: Android API.......................................................................................................................15

APPENDIX II: GANT CHART............................................................................................................15

Bibliography & References.......................................................................................................................16

vi
List of Tables and figures

Figure 2.1 Professor Use Case Diagram ....................................................................................... 2


Figure 2.2 Add/Edit Course Flow Diagram .................................................................................. 3
Figure 2.3 Add Register Students Per Class .................................................................................. 4
Figure 2.4 Mark Attendances via OCR .......................................................................................... 5
Figure 2.5 Mark Attendance via Drop-Down List ......................................................................... 6
Figure 2.6 Mark Attendance Manually .......................................................................................... 6
Figure 2.7 View Course Attendances ............................................................................................ 7

vii
Definitions of Key Terms

Android – an operating system based on the Linux kernel, and designed primarily for
touchscreen mobile devices such as smartphones and tablet computers.

4G – the fourth generation of mobile phone mobile communication technology standards.

Jelly Bean – Jelly Bean was an incremental update with the primary aim of improving the
functionality and performance of the user interface.

Abbreviations and Acronyms

API – Application Programming Interface

viii
OS- Operating System

IDE- Integrated Development Environment

CMMI- Capability Maturity Model Integration

WRS- World Requirements Specification

ix
CHAPTER ONE

1.0 Introduction

Taking attendance in a class can be time consuming and manual process for professor, which is
prone to manual error while recording student’s presence. This application will allow professor
to scan student’s ID card and application will extract student id number from the scanned picture
via OCR mechanism and record students’ presence. If a student forgot his id card, professor can
easily register him by selecting his name from drop list. At any time, professor can look at his
class’s attendance which is just few button clicks away and is guaranteed to be accurate.
Professor can also get a list of students who did not meet the minimum percentage criteria (e.g.
more than 5% OR 10% absent) for attendance.

1.1 Background of the Study


Mobile to overtake fixed Internet access by 2014 was the huge headline summarizing the bold
prediction from 2008, and the apps business has finally come, and this worldwide success story
is now growing fast. Apps generated an impressive USD 12 billion in full-year 2012, and in total
46 billion apps were downloaded in the year. That is certainly a rapid growth in market. In 2013,
about 90 per cent of the mobile phones purchased were smart phones, and between 2012 and
2014, the number of smart phone users over the desktop users is increased by about 0.75 billion.
The total usage is now estimated (as of 2014) to be around 1.9 billion.
There is a rapid growth in the smart phone users. Smart phone is the combination of Personal
Digital Assistance (PDA) and cellular phone. Every smart phone has its own mobile operating
system which is more advanced in connectivity and computing capabilities than a traditional
mobile phone.

1.2 Android Architecture


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

1
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.

This project Patient Information System (PiS) is developed for the Android Operating system.
Android is a Linux based operating system, primarily designed for touch screen mobile devices
such as smart phones and tablets. Android is compatible with multiple hardware and supports
various features like Web browser, Email, Java, Video calling, Media streaming, Bluetooth, Wi-
Fi, Multitasking, External storage, Screen capturing, and etc. The reasons for choosing Android
operating system for developing the PiS app are as follows:
i. It is an open source technology with lot of online learning available for zero cost.
ii. Large number of users use Android based smart phones, so that our app can serve more
people in the mobile industry.
iii. According to the market survey, it has the highest number of applications available for
download on Google play store.
iv. It is also popular among the other operating systems which focuses on low cost,
customizable, and a readymade operating system.
Figure 1 Below show the Android Architecture

1.3 Existing System


In the current system configuration, data will be stored inside the Mobile phone in SQLite
Database (see Figure 1.1). If we want to save the data in a common place, i.e., Remote Server
until now there is no easy mechanism to implement this. The need for storing information in
remote server exists because even if the mobile is lost or stolen you can get back all the expenses
2
data stored inside the phone. The idea of storing information in remote server is implemented
using Web Services which can save the data in the Remote database like SQL Server

1.4 Proposed System


The proposed mobile application is completed based on Service Oriented Architecture (SOA)
where we have thin clients like Android Phones, iPhones, etc. Services are self contained and
communicate using messages like xml. They are cross platform, asynchronous, reliable and
secured.

2.1 Add/Edit Course


3
As a user professor can add course that he plans to teach for a particular semester. To do that,
user will click on “Manage Courses”  “Add a course” which would open up “Add New
Course” form. User enters details like course id, course name and semester for which the course
is enrolled. On adding a course, all the details are added to MASTER_COURSE_TABLE. User
can also edit the details of already added course. To do that, clicking on “Manage Courses” will
list all the courses that have been added. Click on pencil icon of the course that user wants to
edit. It will open up edit form where user can update the name/description and save it, which will
do an update to MASTER_COURSE_TABLE.
Following figure shows internal operation on add/manage course flow.

1.5 Statement of Problem


In the current system configuration, data will be stored inside the Mobile phone in SQLite
Database (see Figure 1.1). If we want to save the data in a common place, i.e., Remote Server
until now there is no easy mechanism to implement this. The need for storing information in
remote server exists because even if the mobile is lost or stolen you can get back all the expenses
data stored inside the phone. The idea of storing information in remote server is implemented
using Web Services which can save the data in the Remote database like SQL Server.

1.6 Objectives of the Study


General Objectives
4
i. Analyze the existing manual student attendance tracking and computer based registers
information systems.
ii. Design an online student attendance system to track students and how they attend lectures
and or lessons.
iii. Develop a student attendance that is based on Android Platform Architecture.
iv. Test and implement student attendance tracking information access system

Specific Objectives
i. Maintain accurate data of all students, allow comparisons of attances, and provide
opportunities for personalized service.

1.7 Motivation and Research Questions


Motivation
It is quite possible that people may not remember all the expenses which they carry out every
day. This app overcomes this problem by providing a messaging service and databases that keeps
track of the expenses.

Research Questions
The study will focus on the following questions:
i. What are the existing attendance tracking system weaknesses?
ii. What are the problems in the existing systems?
iii. What are the features of the systems?

1.8 Significance of the Research

As discussed in the abstract the existing system has no security in terms of maintaining the
database or to take the backup. There is no centralized protection to the database. If the mobile
crashes or mobile lost there is no way to take the back up of the data.
Some of the features that attendance tracker possess are:
1. Attendance Tracker is a simple and friendly and intuitive attendances tracking application
which focuses more on helping manage student’s attendance to classes.
2. This application also provides an easy way to Generate reports which Tracks and
analyzes attendance with customizable reports.

5
1.9 Scope and Limitations

1.9.1 Scope
This product is developed for smart phone users, as we know how the smart phone market has
evolved in the past few years, there are many operating systems available for smart phones but
we opted the Android OS for developing this product because it has a very good user bank
worldwide. Users can only avail the services of the PPSS when they are connected to internet,
because the communication between doctors and patients, and data exchange from cloud server
needs the internet connection. The Budget Tracker is compatible on different versions of
Android, such as starting from the minimum sdk version of Android 3.0 (Honeycomb) to recent
update Android 5.0 (Lollipop). The app functions well on the recent update of Android, but we
support backward compatibility in view of the other users of Android versions.

1.9.2 Limitations
1. Making source code available to everyone inevitably invites the attention of hackers

2. Android operating system uses more amount of battery as compared to normal mobile
phone.

3. As there are so many user sometimes it becomes difficult to connect all the users.

4. As we call Android is world of all applications we continuously need to be connected to


the internet which is not possible for all the users.

5. Android apps require updating and take up more storage space.

6
CHAPTER TWO

2.0 LITERATURE REVIEW

2.1 MOBILE PLATFORM


Mobile platform is an operating system for mobile devices. Some of the mobile devices
operating systems are iOS, Bada, Android, Windows, and Blackberry, etc.

2.1.1 What is Android?


Android is a software pile for mobile devices which includes an operating system, middleware
components and other key applications. The Android SDK facilitates the APIs and tools needed
to start developing applications on the Android platform. For Developing applications in Android
the programming language used is Java programming language.

2.1.2 Android Components


These are some of the Android components which are the major means by which
Android application runs successfully without any interruptions.

2.1.3 Activity
Android activity is represented by each individual screen within an Android application. User
can interact with activity by performing some actions which involves visual components.
Example of an activity can be considered as a single webpage in a website. Each activity
performs its operations independently of one another and all the activities in the application are
an extension from the activity class.

2.1.4 Services
Service is another component in Android application which performs its actions in the
background to accomplish actions which take long time to run or remote processes tasks. Service
is a component which does not possess user interface. Consider an example where service can
play music in the background when the user is performing some operation in other application
like checking an email or texting a message using SMS application or retrieve some information
from the network without interrupting user’s actions within an activity.

2.1.5 Intents
Intent is an application which initiates the message passing between the activities. Using intents
messages can be broadcasted throughout the system or if it can also pass messages to a target

7
activity or service, which states intended action requested by the user or activity. Specifying an
Intent-filter allows a user to state how a particular activity in an application should be called.

2.1.6 Content Providers


A content provider is a component which maintains a collective group of application data. All the
application information or data can be stored in a SQLite database or file system, on remote web
servers or on any storage location where the application can access the data. Using the content
provider, other applications can process its queries and other related activities. This component
mostly behaves like a database where users are given flexibility to edit its contents, query
information needed, delete some data when not needed. The only difference between database
and content provider is that using content provider users can store its data in different ways.

2.1.7 Broadcast Receivers


This component responds to system wide broadcast declarations. Any application which needs to
receive or respond to global activities like SMS application, receiving an incoming call, it should
have been registered as a broadcast receiver. Most of broadcasts come from the system for
example, we can consider a broadcast statement like when battery is low it shows red colored
battery symbol in the phone, when screen lock button is pressed the display will be turned off,
when SMS is received its shows a message symbol at the top of the notification bar. Broadcast
receivers doesn’t possess user interface for broadcasting notifications instead they alert the users
by showing the status of the application in the notification bar.

2.1.8 Applications
All the Android packages by default comes with a bunch of core applications which includes an
SMS application, Email application, calendar, maps, browser, contacts, GPS and others. All these
applications are developed using the Java programming language.

2.1.9 Tools
The Android SDK is Software Development Kit which allows developers to develop mobile
applications in Android platform. Generally these tools are categorized into two groups, they are
SDK tools and platform tools. Among these SDK tools are independent of the platform and these
are mandatory for any mobile application which are developed in Android platform. The second

8
most common tools are Platform tools which are modified or personalized to provide support to
the latest Android platform features.

2.2 Android Application Features


Android offers several application features out of which the following mentioned features are the
most effective and useful characteristics of Android applications:
- The Dalvik Virtual Machine has been upgraded to improve developing mobile devices
applications framework enabling reuse and replacement of components.
- GSM the Global System for mobile communications kind of telephony has been introduced.
- A productive application framework has been developed which enables the application
components to be reused and replaced.
- Open source web kit has been integrated in the browser.
- Custom 2D and 3D graphics libraries came to the market which are based on Open GL
specification.
- Structured data storage is supported by using SQLite database.
- All the audio, video and image formats are supported in the new Android versions like
MPEG, MP3, JPG, GIF, PNG and ING.
- Hardware supportive environment like Wifi, 3G, 4G, EDGE connectivity and Bluetooth are
improved in the Android platform.
- Development environment has been made popular by introducing device emulator feature
Camera, GPS, compass, and accelerometer (hardware dependent).
- All other important features include accelerometer, camera, GPS, several different tools
which helps in debugging the application, memory management and performance
monitoring.

2.3 Setting Up The Android Environment


Android Development environment can be set in any machine using Eclipse IDE. To
develop an Android application the following tools must be installed in Eclipse.

9
CHAPTER THREE
3.0 SYSTEM DESIGN & METHODOLOGY

3.1 Introduction
The methodology that is going to be adopted to develop the system is the V-Model.

This methodology is widely used today especially in the defense industry. The software
development life cycle will allow the process to have testing and coding as a parallel activity
which enables the changes to be made more dynamically. The V-Model is originally developed
from the waterfall process model. It is a classic software development model.

This model has four main phases which are requirements, specification, design and
implementation. This model also encapsulates the steps in verification and validation phases for
each step in the SDLC. Implementation of modules is tested by unit testing, system design is
tested by integration testing, system specification is tested by system testing and finally
acceptance testing verifies the requirements met.

One of the interesting characteristics of the V model is the ability to move backward which is it
can revert to the analysis stage even though it is half way through the implementation stage.

This will provide provider with the cushion if any error occurred V-model also allows the testing
and coding process to be done parallel making it more dynamic than the waterfall model. The
figure below shows the architecture of the V-model

10
Development Methodology

Diagram of the V-Model

The various phrases of the V-model are as follows


Requirements like BRS and SRS begin the life cycle model just like the waterfall model. But, in
this model before the development started, a system test plan is created. The test plan focuses on
meeting the functionality specified in the requirement gathering.

The High Level Design (HLD) phase focuses on a system architecture and design. It provides
overview of solution, platform, system, product and services/processes. An integration plan is
created in this phase as well in order to test the pieces of the software systems ability to work
together.
11
The low level design (LLD) phase is where the actual software components are designed. It
defines the actual logic for each and every component of the system. Class diagram with all the
methods and relation between classes come under LLD. Component tests are created in this
phase as well.

The implementation phase is, again, where all coding takes place. Once coding is complete, the
path of execution continues up the right side of the V where the test plans developed earlier are
now put to use

Coding: this is at the bottom of the V- shape model. Module design is converted into code by
developers.

Advantages of V-model:
Simple and easy to use.
Testing activities like planning, test designing happens well before coding. This saves a lot of
time. Hence higher chances of success over the waterfall model.
Proactive defect tracking-that is defects are found at early stage.
Avoids the downward flow of the defects.
Works well for small projects where requirements are easily understood.
Disadvantages of v-model:
Very rigid and least flexible
Software is developed during the implementation phase, so no early prototype of the software are
produced.
When to use the v-model:
The v-shaped model should be used for small to medium sized projects where requirements are
clearly defined and fixed.
The v-shaped model should be chosen when ample technical resources are available with needed
technical expertise.

3.2 Data collection


In this section the researcher studied the existing system to establish this weak and strong points.

The information acquired from this study gave the basis for the design of the new system. A
number of steps, procedures and tools were employed as shown below:

12
3.2.0 Primary data collection techniques.

It comprises of firsthand information collected by the researcher in this case observations and
interviews were used to collect primary data.

3.2.1 Interviews
During the study the researcher conducted face to face with few customers, employees and
management in order to get more insight on the system and its implementation interviews are
often more exploratory in nature, an allows for more flexibility since the interviewees have high
response rate than written questionnaire and it is also suitable for use with both literate and
illiterate. Examples of questions asked during the interview are:

How is information stored after getting it from the customers?

How is this information accessed in case it is required?


How many customers visit the gym per day?
What happens after the customers walks in?

3.2.1.0 Types of interviews


Structured interviews- based on standard question written by hand that enabled the interviewer
gain answers based on specific findings

Unstructured interviews- using rapport building, this involved conversation that made it easy to
obtain the feelings of the people, and firsthand information. Some questions were not
predetermined and were asked impulsively.

3.2.1.1 Advantages of using an interview


 If the respondent lacks reading skills to answer a questionnaire.
 Are useful for untangling complex topics.
 The interviewer can probe deeper into response given by an interviewee
 Interviews produce a higher response rate.

3.2.1.2 Disadvantages of using an interview


 The interviewer can affect the data if he/she is not consistent.
 It is very time consuming.
 It is not used for large number of people.
13
 The interviewer may be biased and ask close questions.

3.2.2 Observation
This technique was used to gather accurate information about how the current system operates
and its processes from the organization. This involves systematically watching and recording the
behaviour and characteristics of operations and processes. Although the method is time
consuming, it gives more detailed and context related information and one can adapt to events as
they occur.

3.2.3 Secondary data collection techniques


This kind of data was obtained from books, journals and various materials from the internet. It
is helpful in providing a baseline with which the collected primary data results can be compared
to.

Secondary data has a pre-established degree of validity and reliability enabling the researchers to
make a comprehensive analysis of the study.

Appendix I: Android API

14
APPENDIX II: GANT CHART

15
This will be used to indicate the time by which the project is expected to be completed. It has
been summarized according to the number of days.

Duration in days 5 20 1 36 33 12 1

Idea Generation

Proposal Writing

Presentation

Research

Implementation

Prepare
Documentation
Final Presentation

Bibliography & References

16
GOOGLE. (n.d.). Android Developers. Retrieved from
http://developer.android.com/training/basics/firstapp/index.html
DANYL BOSOMWORTH. (2015, Jan 15). Mobile Marketing Statistics 2015. Retrieved
from http://www.smartinsights.com/mobile-marketing/mobile-marketing-
analytics/mobile marketing-statistics/
Google Play. (2015, May 5). Retrieved from https://play.google.com/
Google. Inc. (2015 May 5). Android Studio Guide. Retrieved from
http://developer.android.com/training/implementing-navigation/nav-drawer.html
GEORGE MATHEW. (2013, Jan 15). GPS and Google Map in Android Applications –
Series. Retrieved from http://wptrafficanalyzer.in/blog/gps-and-google-map-in-android
applications-series/
Parse Android API Guide. (n.d.). Retrieved from http://www.parse.com/docs/android/api/
Parse Android Docs. (n.d.). Retrieved from https://www.parse.com/docs/android_guide
Registering Parse Push Notifications. (n.d.). Retrieved from
https://parse.com/tutorials/android-push-notifications
Internet Fax Service. (n.d.).Retrieved from http://www.metrofax.com/
GENMYMODEL. (n.d.). To design UML, Class and Sequence Diagrams. Retrieved from
https://api.genmymodel.com/

17

Vous aimerez peut-être aussi