0% found this document useful (0 votes)
88 views53 pages

Front Page - Certificate Page

This document provides a certificate of originality for a project titled "Android Attendance Monitoring System" submitted by [Student Name] to Yashwantrao Chavan Maharashtra Open University. It certifies that the project is the student's original work and has not been previously submitted for a degree. The document includes acknowledgments thanking various individuals who provided guidance and support during the project. It also includes an index listing the sections of the project report.

Uploaded by

Vicky Chauhan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
88 views53 pages

Front Page - Certificate Page

This document provides a certificate of originality for a project titled "Android Attendance Monitoring System" submitted by [Student Name] to Yashwantrao Chavan Maharashtra Open University. It certifies that the project is the student's original work and has not been previously submitted for a degree. The document includes acknowledgments thanking various individuals who provided guidance and support during the project. It also includes an index listing the sections of the project report.

Uploaded by

Vicky Chauhan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 53

MCAP060

TITLE OF THE PROJECT

MCAP060

TITLE OF THE PROJECT

by

Student’s Full Name

PRN:

Under Guidance

of

Project Guide’s Full Name

Submitted to the School Computer Science, YCMOU in partial


fulfilment of the requirements

for the award of the degree


Master of Computer Applications (MCA)

MONTH ,YEAR
CERTIFICATE OF ORIGINALITY

This is to certify that the project report entitled

submitted to Yashwantrao Chavan Maharashtra Open University in partial fulfilment of the


requirement for the award of the degree of MASTER OF COMPUTER APPLICATIONS ( MCA) ,
is an authentic and original work carried out by Mr. / Ms.

with PRN under my


guidance.

The matter embodied in this project is genuine work done by the student and has not been
submitted whether to this University or to any other University / Institute for the fulfilment of the
requirements of any course of study.

………………………. ...…………………….

Signature of the Student: Signature of the Guide

Name of the student Name of the Guide

……………………….... ………………………..
……………………….... ………………………..
PRN................…………
Date: ……………….... Date: …………………..

External Examiner

Seal of Study Centre


ACKNOWLEDGMENT

We had a great pleasure for representing this project report for “Android Attendance
Monitoring System’” and we grab this opportunity to convey our immense regards towards all the
distinguished people who have their valuable contribution in the hour of need.

We profoundly thank our principal Dr. (Mrs.) CHITRA NATRAJAN for giving us support throughout
the course and made us capable of being worthy of recognition and extended query facility to us for
making and computing this project smoothly.

We would like to express our sincere thanks to Prof. SANDEEP VISHWAKARMA (Head of IT
DEPARTMENT) for his constant encouragement, which made this project a success.

We are highly obliged to Prof. ARVIND SINGH teaching staff member of the Information Technology
department, who spread efforts in making the project a successful one with her guidance, appropriate
advice and encouragement and of course the inspiration without which the project would be ineffective
difficult task.

We sincerely thank and express my profound gratitude to our teachers for their timely and prestigious
guidance.

We also thank my family members for their continued support in completing this project work and last
but not the least; we wish to thank all my friends and well-wishers who are directly or indirectly linked
with the success of our project.

INDEX
SR.No Content Page no

1 OBJECTIVE AND SCOPE


1.1 OBJECTIVE
1.2 1.2 SCOPE

2 THEORETICAL BACKGROUD

2.1 INTRODUCTION TO ANDROID OS


2.2ANDROID OPERATING SYSTEM ARCHITECTURE
2.3 COMPARING ANDROID AND OTHER OPERATING
SYSTEM
2.4 INTRODUCTION TO BRAINOZOID
2.5 INTRODUCTION TO SQLITE DATABASE WITH RESPECT
TO ANDROID

3 SYSTEM ANALYSIS

4 GANNT CHART

5 SYSTEM DESIGN
5.1 UML
5.2 SEQUENCE DIAGRAM
5.3 CLASS DIAGRAM
5.4 DATA FLOW DIAGRAM

6 METHODOLOGY ADOPTED
6.1 MODEL USED – INCREMENTAL MODEL
6.2 DETAILS OF THE SOFTWARES USED
6.2.1JDK 7
6.2.2 ECLIPSE
6.2.3 ANDROID SDK
6.3 DETAILS OF THE HARDWARE USED
7 TESTING
8.1 manual testing
8.2 UNIT TESTING
8.3 USER-ACCEPTANCE TESTING

8 SCREEN SHOTS
8.1 Home page
8.2 login page
8.3 create account
8.4 options
8.6 view theory attendance
Attendance Monitoring System

INTRODUCTION :

 Android is a popular technology coming up these days. The ‘Attendance Monitoring System’ is
Android based application.
 ‘Attendance Monitoring System’ is designed and developed to know the number of student
present in a class.
 ‘Attendance Monitoring System’ provides the facility to a respected faculty to login in their
account and take an attendance for a theory as well as practical lectures attendance.
An account holder can later again login and check the attendance of a particular class or stream along
with the date.

PROBLEM DEFINITION :

 Currently attendance is taken on a sheet of paper that can been result in lost of records. So we
can’t recognize the number of student present in a particular class.
 So due to the above factor the marks that depends on attendance me affect on the students
performance.

PROPOSED SYSTEM :

 Android is an open source operating system, which is extensively used in Smartphone’s.


 Android has gained popularity over last few years. And is very user friendly and is mass appealing.
 The user can login and maintain its account.
 User can also create multiple account and view and enter the new records.

OBJECTIVES :
 The app is used to prepare the user for any type of test which is related to basic number as 0 to 9 in
addition.
 The main objective of this app is that it is build for smartphone and the user can learn number
anywhere from his Smartphone.
 This app increases the users experience level of number.
 This app gives the instant result after the user is done the test.
MODULES :
There are five module uses in ‘Attendance Monitoring System’ application.

 Login screen

 View Theory Attendance

 View Practical Attendance

 Fill Theory Attendance

 Fill Practical Attendance

 Logout
HARDWARE REQUIREMENTS (For Developing the Application) :

 PLATFORM : Windows XP, Windows 7 or later version


 DISK SPACE: 4 GB(minimum)
 RAM: 2 GB(minimum)
 PHONE: Android Supported Smartphone.

SOFTWARE REQUIREMENTS :

 ANDROID :
Java SE SDK
Android SDK 
Eclipse IDE (Classic version)
ADT Plugin for Eclipse

 DATABASE : SQLite

TECHNIQUES :

 Our application is entirely based on Android programming, thus the framework and coding will be
done using android SDK and Eclipse IDE.
 The modules mentioned above will be done using android programming, Android being an Open
source OS enables to run only on android based Smartphones.
 SQLite Database is used here to store in the details of the members accessing the application. SQLite
is an inbuilt database which is present in the android SDK bundle.
 About to databse In this project SQLite Browser is to be used.

OBJECTIVE AND SCOPE


1.1 OBJECTIVE :

 The main objective is to develop a LearnBasicNumber’ application for android based


smartphones.

 The application will be able to cater the needs of students and other android based smart phone
users to gain knowledge about the Languages, database, Network Security, OS.

 The application will also have a feature where the user can select the level of difficulty so as to get
accustomed to the number.

1.2 SCOPE :

The scope of the application is huge considering that the application is based on android OS which
has a very large user base compared to other mobile Operating Systems such as the IOS, Symbian.

THEORETICAL BACKGROUND
2.1 INTRODUCTION TO ANDROID O.S:
Android is a Linux-based operating system designed primarily for touch screen mobile devices
such as smartphones and tablet computers. Initially developed by Android, Inc., which Google backed
financially and later bought in 2005, Android was unveiled in 2007 along with the founding of the Open
Handset Alliance: a consortium of hardware, software, and telecommunication companies devoted to
advancing open standards for mobile devices. The first Android-powered phone was sold in October
2008.

Android is open source and Google releases the code under the Apache License. This open source
code and permissive licensing allows the software to be freely modified and distributed by device
manufacturers, wireless carriers and enthusiast developers. Additionally, Android has a large community
of developers writing applications ("apps") that extend the functionality of devices, written primarily in a
customized version of the Java programming language. In October 2012, there were approximately
700,000 apps available for Android, and the estimated number of applications downloaded from Google
Play, Android's primary app store, was 25 billion.

These factors have allowed Android to become the world's most widely used smartphone
platform, overtaking Symbian in the fourth quarter of 2010, and the software of choice for technology
companies who require a low-cost, customizable, lightweight operating system for high technology
devices without developing one from scratch. As a result, despite being primarily designed for phones and
tablets, it has seen additional applications on televisions, games consoles and other electronics.

Android's open nature has further encouraged a large community of developers and enthusiasts to
use the open source code as a foundation for community-driven applications, which add new features for
advanced users or bring Android to devices which were officially released running other operating
systems.

2.2 ANDROID OPERATING SYSTEM ARCHITECTURE


Android consists of a kernel based on Linux kernel version 2.6 and, from Android 4.0 Ice
Cream Sandwich onwards, version 3.x, with middleware, libraries and APIs written in C, and application
software running on an application framework which includes Java-compatible libraries based on Apache
Harmony. Android uses the Dalvik virtual machine with just-in-time compilation to run Dalvik 'dex-
code', which is usually translated from Java byte code. The main hardware platform for Android is
the ARM architecture. There is support for x86 from the Android x86  application, and Google TV uses a
special x86 version of Android.
Android's Linux kernel has further architecture changes by Google outside the typical Linux
kernel development cycle. Android does not have a nativeX Window System by default nor does it
support the full set of standard GNU libraries, and this makes it difficult to port existing Linux
applications or libraries to Android. Support for simple C and SDL applications is possible by injection of
a small Java shim and usage of the JNI like, for example, in the Jagged Alliance 2 port for Android.
Certain features that Google contributed back to the Linux kernel, notably a power management
feature called wakelocks, were rejected by mainline kernel developers, partly because kernel maintainers
felt that Google did not show any intent to maintain their own code. Google announced in April 2010 that
they would hire two employees to work with the Linux kernel community, but Greg Kroah-Hartman, the
current Linux kernel maintainer for the stable branch, said in December 2010 that he was concerned that
Google was no longer trying to get their code changes included in mainstream Linux. Some Google
Android developers hinted that "the Android team was getting fed up with the process," because they
were a small team and had more urgent work to do on Android.
In August 2011, Linus Torvalds said that "eventually Android and Linux would come back to a
common kernel, but it will probably not be for four to five years". In December 2011, Greg Krogh-
Hartman announced the start of the Android Mainlining Application, which aims to put some
Android drivers, patches and features back into the Linux kernel, starting in Linux 3.3.

Linux included the auto sleep and wake locks capabilities in the 3.5 kernel, after many previous
attempts at merger. The interfaces are the same but the upstream Linux implementation allows for two
different suspend modes: to memory, and to disk. The merge will be complete starting with Kernel 3.8,
Google has opened a public code repository that contains their experimental work to re-base Android off
Kernel 3.8.
The flash storage on Android devices is split into several partitions, such as "/system" for the
operating system itself and "/data" for user data and app installations. In contrast to desktop Linux
distributions, Android device owners are not given root access to the operating system and sensitive
partitions such as /system are read-only. However, root access can be obtained by exploiting security
flaws in Android, which is used frequently by the open source community to enhance the capabilities of
their devices, but also by malicious parties to install viruses and malware.
Whether or not Android counts as a Linux distribution is a widely debated topic, with the Linux
Foundation and Chris DiBona, Google's open source chief, in favour. Others, such as Google engineer
Patrick Brady disagree, noting the lack of support for many GNU tools, including glibc, in Android.
2.3 COMPARING ANDROID AND OTHER OPERATING SYSTEMS :
Every Mobile Phone Platform or OS has its own unique features, users have to compare them
and get the One is most perfect to serve their needs. Here we discuss some of ways where Google’s
Android win over iPhone, Windows Phone and everything else out in the market. Let’s dive in and see
what makes android better.

1. MAPS AND NOTIFICATION :

Google’s Maps is simply the best and the free Navigation makes it perfect. Though Google’s
Maps uses more data, still u might prefer it than buying an offline Expensive navigation app for iPhone
and other OS. Also, HTC is offering a free version of offline Maps on their phones.

2. NOTIFICATION BAR :

Android’s Notification bar is a unique features which will notify for Emails, SMSs Facebook
notifications, charging, software updates, task managers and almost usable from any screen without
leaving the running application.

3. WIDGETS :

If you use widgets on an Smartphone, you already know the importance of them. Just set up a page
with your Google Voice, RSS, Twitter and Facebook streams and organize them any way you want. If
you never used widgets, it’s hard to imagine how worse it would be a smartphone without them.
4. CARRIER CHOICE :

You’re stuck with AT&T if you have an iPhone or Windows 7 phone. But With Google Android
there is a wide variety of choice to pick the best carrier in your area for your budget.

5. HOTSPOT :

Most of the Android handset will allow to tether or create a virtual Hotspot and connect other
devices. iPhone does do tethering, but limited. Windows 7 doesn’t create hotspots at all.

6. SCREEN SIZE :

With Android you can a device between 3.2-inch to 7-inch. With Android, like the HTC Aria,
which has a 3.2-inch HVGA screen, or 4.3-inch screens on the Droid X or Sprint EVO. Even 5-inch on
Dell tablet or 7-inch on Samsung Galaxy Tab. With iPhone you’re stuck at 3.5 inch. Windows Mobile 7
has various size but the resolution is fixed 400×800.

7. VOICE ACTION :

Windows Phone has speech recognition and iPhone does Voice Control, but nothing is
comparable to Google Voice Actions. With Voice Actions on Android you can do just about anything.

8. FASTEST BROWSER :
Browsing Internet is one of most task user do on the Smartphone. With full Flash support and
fastest cpu on high end Android Phone browsing is just pleasure.

9. BETTER BUTTONS :

While iPhone ends up with only home button, Windows Phone does little better with search and
back button. Android just perfect with an extra button for Setting Menu.

10. GOOGLE VOICE :

Let users routing calls over Internet and cheap international service by Google Voice save your
pocket. While it is available on iOS and Windows Phone as a web service, Google Voice is just better
than nothing.

2.4 INTRODUCTION TO Attendance Monitoring System

Attendance Monitoring System’ Application is an android based application. The primary purpose of this
application is to increase the experience in number.
The application is based on Android OS because it allows applications to run on low memory. Another
reason for developing this app on Android is because with the help of this app user can improve their
experience in basic number.

The “Attendance Monitoring System’” application can be very useful applications for students who want
a quick revision on a particular number. They can be evaluated by the result displayed.

2.5 INTRODUCTION TO SQLITE DATABASE WITH RESPECT TO ANDROID :


SQLite is a relational database management system contained in a small
(~350 KB) C programming library. In contrast to other database management systems, SQLite is not a
separate process that is accessed from the client application, but an integral part of it.

SQLite is ACID-compliant and implements most of the SQL standard, using a dynamically and weakly
typed SQL syntax that does not guarantee the domain integrity.

SQLite is a popular choice as embedded database for local/client storage in application software such


as web browsers. It is arguably the most widely deployed database engine, as it is used today by several
widespread browsers, operating systems, and embedded systems, among others. SQLite has
many bindings to programming languages.

The source code for SQLite is in the public domain.

SYSTEM ANALYSIS

3. SYSTEM ANALYSIS :
In our research I found that most of the ‘Attendance Monitoring System’ applications on Google play
store have very monotonous names which do not find users interest, the applications name should be as
such that the user must find it interesting and must catch users imagination.

The user can choose the difficulty levels in other application but main thing is that other application
which do not give the All the basic number clearly to understand.
As part of our analysis, I collected those question with the help of this the experience.

I have searched various Websites , Applications to understand the problem.

4.Gantt chart

5.SYSTEM DESIGN :
System Design is very important aspect of application development. It helps the programmer with
easy work flow. Using System Design a plan can be made for designing the user- interface. We are using
the Object Oriented Approach for the Application. So we include the required UML diagrams for our
System Design.
5.1 UML :
The heart of the object-oriented problem solving is the construction of a model. The model abstracts the
essential details of the underlying problem from its usually complicated real world.

The unified modelling language (UML) is a standard language for specifying, visualizing, constructing
and documenting the artifacts of a software system, business model and other non-software systems.

UML is a very important part of object oriented software development process.

UML uses graphical notations to express the design of a software application.

UML helps application teams to communicate, explore potential designs and validate the architectural
design of the software.

At the centre of the UML are its four kinds of modelling diagrams, which we will describe here:-

Sequence diagram

Class Diagram

Data Flow diagram

5.2 SEQUENCE DIAGRAM :


When an object passes a message to another object, the receiving object might in turn send a message to
another object, which might in turn send messages to another object, and so on. This stream from
sequence. The messages are ordered in sequence by time. Sequence diagrams model these sequences.
Sequence diagrams describe interactions among classes in terms of an exchange of messages over time.
Sequence diagrams demonstrate the behaviour of objects in a use case by describing the objects and the
messages they pass. By examining these messages in details the functionality and data associated with
each of these objects such as operations attributes can be discovered. The diagrams are read left to right
and descending.
A sequence diagram depicts the sequence o actions that occur in a system. The invocation of methods in
each object, and the order in which the invocation occurs is captured in a sequence diagram. This makes
the sequence diagram very useful tool to easily represent the dynamic behaviour of systems.
Modelling the flow of control by time ordering emphasizes the passing of message as they unfold over
time, which is particularly useful way to visualize dynamic behaviour in the context of use case scenario.
Sequence diagrams do better job of visualizing simple iteration and branching than do collaboration
diagrams.
A sequence diagram is two dimensional in nature. On the horizontal axis, it shows the life the object that
it represents, while on the vertical axis, it shows the sequence of creation or invocation of these objects.
5.3 CLASS DIAGRAM :

The class diagram describes the attributes and operations of a class and also the constraints imposed on
the system. The class diagrams are widely used in the modelling of object oriented systems because they
are the only UML diagrams which can be mapped directly with object oriented languages.
The class diagram shows a collection of classes, interfaces, associations, collaborations and constraints.
It is also known as a structural diagram.

PURPOSE:
The purpose of the class diagram is to model the static view of an application. The class
diagrams are the only diagrams which can be directly mapped with object oriented languages and thus
widely used at the time of construction.
The UML diagrams like activity diagram, sequence diagram can only give the sequence flow
of the application but class diagram is a bit different. So it is the most popular UML diagram in the coder
community.
So the purpose of the class diagram can be summarized as:
 Analysis and design of the static view of an application.
 Describe responsibilities of a system.
 Base for component and deployment diagrams.
 Forward and reverse engineering.

5.4 DATA FLOW DIAGRAM:


Data flow diagrams present the logical flow of information through a system in graphical or pictorial
form. Data flow diagrams have only four symbols, which makes useful for communication between
analysts and users.
Data flow diagrams show the data used and provided by processes within a system. DFDs make use of
four basic symbols. A DFD usually comprises of four components. These four components can be
represented by four simple symbols. These symbols can be explained in detail as follows: External
entities are represented by squares.Processes are represented by rectangles with rounded corners; Data
Flows are represented by arrows; and finally, Data Stores are represented by open-ended rectangles.

EXTERNAL ENTITY :
An external entity is a source or destination of a data flow which is outside the area of
study. Only those entities which originate or receive data are represented on a business process diagram.
The symbol used is an oval containing a meaningful and unique identifier.

PROCESS :
A process shows a transformation or manipulation of data flows within the system. The
symbol used is a rectangular box which contains 3 descriptive elements:
Firstly an identification number appears in the upper left hand corner. This is allocated
arbitrarily at the top level and serves as a unique reference.
Secondly, a location appears to the right of the identifier and describes where in the
system the process takes place. This may, for example, be a department or a piece of hardware. Finally, a
descriptive title is placed in the centre of the box. This should be a simple imperative sentence with a
specific verb, for example 'maintain customer records' or 'find driver'.

DATA FLOW:
A data flow shows the flow of information from its source to its destination. A data flow is
represented by a line, with arrowheads showing the direction of flow. Information always flows to or
from a process and may be written, verbal or electronic. Each data flow may be referenced by the
processes or data stores at its head and tail, or by a description of its contents.

DATA STORE:
A data store is a holding place for information within the system. It is represented by an
open ended narrow rectangle. Data stores may be long term files such as sales ledgers, or may be short-
term accumulations: for example batches of documents that are waiting to be processed. Each data store
should be given a reference followed by an arbitrary number.

Life Cycle of Activity:


Callback Description
onCreate() This is the first callback and
onStart() called when the activity is first
onResume( created.
) This callback is called when the
activity becomes visible to the
user.
This is called when the user starts
interacting with the application.
onPause The paused activity does not receive user input and cannot execute any code and cal
() when the current activity is being paused and the previous activity is being resumed.
onStop() This callback is called when the activity is no longer visible.

onDestroy This callback is called before the activity is destroyed by the system.

onRestart() This callback is called when the activity restarts after stopping it.

METHODOLOGY

6. ECLIPSE :
In computer programming, Eclipse is a multi-language software development environment
comprising a base workspace and an extensible plug-in system for customizing the environment. It is
written mostly in Java. It can be used to develop applications in Java and, by means of various plug-ins,
other programming languages including Ada, C, C++, COBOL, Fortran, Haskell, Perl, PHP, Python, R,
Ruby (including Ruby on Rails framework), Scala, Closure, Groovy, Scheme, and Erlangen. It can also
be used to develop packages for the software Mathematic. Development environments include the Eclipse
Java development tools (JDT) for Java and Scala, Eclipse CDT for C/C++ and Eclipse PDT for PHP,
among others.

6.1 ANDROID SDK :

The Android software development kit (SDK) includes a comprehensive set of development


tools. These include a debugger, libraries, a handset emulator based on QEMU, documentation, sample
code, and tutorials. Currently supported development platforms include computers running Linux , Mac
OS X 10.5.8 or later, Windows XP or later. The officially supported integrated development
environment (IDE) is Eclipse using the Android Development Tools (ADT) Plugin, though IDE fully
supports Android development out of the box, and. Additionally, developers may use any text editor to
edit Java and XML files, then use command line tools Java Development Kit and Apache Ant are
required to create, build and debug Android applications as well as control attached Android devices.

Enhancements to Android's SDK go hand in hand with the overall Android platform development. The
SDK also supports older versions of the Android platform in case developers wish to target their
applications at older devices. Development tools are downloadable components, so after one has
downloaded the latest version and platform, older platforms and tools can also be downloaded for
compatibility testing.
Android applications are packaged in .apk format and stored under /data/app folder on the
Android OS (the folder is accessible only to the root user for security reasons). APK package
contains .dex files compiled byte code files called Dalvik executables, resource files, etc.

6.2 ANDROID ADT PLUGIN :


Android Development Tools (ADT) is a plug-in for the Eclipse IDE that is designed to give you a
powerful, integrated environment in which to build Android applications.

ADT extends the capabilities of Eclipse to let you quickly set up new Android projects, create an
application UI, add components based on the Android Framework API, debug your applications using the
Android SDK tools, and even export signed (or unsigned) .apk files in order to distribute your
application.

Developing in Eclipse with ADT is highly recommended and is the fastest way to get started. With
the guided project setup it provides, as well as tools integration, custom XML editors, and debug output
pane, ADT gives you an incredible boost in developing Android applications.
ANDROID VIRTUAL DEVICE MANAGER :
The AVD Manager is an easy to use user interface to manage your AVD (Android Virtual
Device) configurations. An AVD is a device configuration for the Android emulator that allows you to
model different configurations of Android-powered devices. When you start the AVD Manager in Eclipse
or run the android tool on the command line, you will see the AVD Manager as shown (below):

6.3 DETAILS OF HARDWARES USED :

 PLATFORM : Windows XP, Windows 7 or later version


 DISK SPACE: 4 GB(minimum)
 RAM: 2 GB(minimum)
 PHONE: Android Supported Smartphone.

MODULE EXPLANATION

Home:
This home module is and first module that provide us two different options that is Login and Create
Account they both perform an important role for this application.

Login:
Login is a module that makes an user login by using its user-id and password, each user will have
different user-id and password will be always in numeric and also help in case if user forget its password
by using its user-id and user name.
Create Account:
This module provides the user different options to create account such as ‘Name’, ’User-id’,
’Password’.’Confirm Password’ so that user can have an unique account.
Options:
The option module allow an user different option that user can perform such as.

 View Practical Attendance.


 View Theory Attendance.
 Fill Theory Attendance.
 Fill Practical Attendance.
 Logout.
View Practical Attendance:
This module provides user all the records that he has filled in ‘fill practical attendance’.
View Theory Attendance:
This module provides user all the records that he has filled in ‘fill Theory attendance’.
Fill Theory Attendance:
This module allow user to enter data or record for theory attendance there are various option.
User has to enter ‘Semester, Class, and Student Present’ and Date of present day will be appearing by
default.
After Clicking on ‘OK’ the data will be saved.
Fill Practical Attendance:
This module same operation like ‘Fill Theory Attendance’ but only difference is this module will have
the record related to practical.
Logout:
The Logout module allow user to move out from its account.

TESTING

7.1 UNIT TESTING :


Unit testing focuses first on the modules, independently of one another, to locate errors. This
enables the tester to detect errors in coding and logical errors that is contained within that module alone.
Those resulting from the interaction between modules are initially avoided.

7.2 MANUAL TESTING :


Functional testing is a technique in which all the functionalities of the program are tested to check
whether all the functions that where proposed during the planning phase are full filled.
This is also to check that if all the functions proposed are working properly.
This is further done in two phases:
One before the integration to see if all the unit components work properly
Second to see if they still work properly after they have been integrated to check if some functional
compatibility issues arise.

7.3 USER-ACCEPTENSE TESTING:


User Acceptance testing is a technique in which the end user is used to test the application.
User Acceptance Testing is important phase in the application development. For the User-Acceptance
testing we deployed our application android based HTC smartphone.
But first we need to determine the correct pixel size and the screen resolution. Also the version
of the android OS is a important factor that should be looked upon before deploying the application.

SCREEN SHOTS
8.1 Main Page Of the Application
8.2 LOGIN MODULE
8.3 CREATE ACCOUNT:
8.4 OPTIONS:
8.5 FILL ATTENDANCE
8.6 SAVE ATTENDANCE
8.7 VIEW ATTENDANCE
CODING PART
Home:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000fff"
android:focusable="true"
android:focusableInTouchMode="true"

tools:context=".Home" >

<RelativeLayout
android:id="@+id/relativeLayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true" >

</RelativeLayout>

<Button
android:id="@+id/btnlogin"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/relativeLayout1"
android:layout_alignParentLeft="true"
android:focusable="true"
android:minHeight="50dp"
android:text="Login"
android:textColor="#acbbde"
android:textSize="23sp" />

<Button
android:id="@+id/creatacc"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_below="@+id/relativeLayout1"
android:minHeight="50dp"
android:text="Create Account"
android:textColor="#acbbde"
android:textSize="22sp" />

<TextView
android:id="@+id/textView2"
android:layout_width="280dp"
android:layout_height="wrap_content"
android:layout_below="@+id/textView1"
android:layout_centerHorizontal="true"
android:text="Attendance Management System"
android:textColor="#acbbde"
android:textSize="18dp" />

<TextView
android:id="@+id/textView1"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="38dp"
android:text="Welcome To "

android:textColor="#acbbde"
android:textSize="18dp" />

</RelativeLayout>

Login:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000fff" >

<RelativeLayout
android:id="@+id/relativeLayout1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="134dp" >
</RelativeLayout>

<EditText
android:id="@+id/uid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="15dp"
android:background="#acbbde"
android:ems="10"
android:hint="Enter Userid"
android:inputType="text"
android:textSize="20sp"/>

<Button
android:id="@+id/btnsignin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/relativeLayout1"
android:layout_centerHorizontal="true"
android:text="Signin"
android:textColor="#acbbde"
android:layout_marginTop="15dp"/>

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/efname"
android:layout_alignTop="@+id/relativeLayout1"
android:text="Forgot Password"
android:textColor="#acbbde"
android:textSize="20sp"
android:layout_marginTop="15dp" />

<EditText
android:id="@+id/efname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/pass"
android:layout_below="@+id/textView1"
android:background="#acbbde"
android:ems="10"
android:hint="Enter Username"
android:inputType="text"
android:textSize="20sp" />

<EditText
android:id="@+id/efuserid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/efname"
android:layout_below="@+id/efname"
android:layout_marginTop="15dp"
android:background="#acbbde"
android:ems="10"
android:hint="Enter Userid"
android:inputType="text"
android:textSize="20sp" />

<EditText
android:id="@+id/pass"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/uid"
android:layout_below="@+id/uid"
android:layout_marginTop="14dp"
android:background="#acbbde"
android:ems="10"
android:hint="Enter Password"
android:inputType="numberPassword"
android:textSize="20sp" />

<Button
android:id="@+id/bshowpass"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/efuserid"
android:layout_centerHorizontal="true"
android:layout_marginTop="15dp"
android:text="Show Password"
android:textColor="#acbbde" />

</RelativeLayout>

Create Account:
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000fff" >

<TableRow
android:layout_marginTop="10dp">

<TextView
android:id="@+id/tname"
android:layout_width="150dp"
android:layout_height="40dp"
android:text="Name"
android:textColor="#acbbde"
android:textSize="23sp" />

<EditText
android:id="@+id/ename"
android:layout_width="120dp"
android:layout_height="30dp"
android:background="#ffffff"
android:textSize="21sp" />

</TableRow>

<TableRow
android:layout_marginTop="20dp">

<TextView
android:id="@+id/tuserid"
android:layout_width="150dp"
android:layout_height="40dp"
android:text="Userid"
android:textColor="#acbbde"
android:textSize="23sp" />

<EditText
android:id="@+id/euserid"
android:layout_width="120dp"
android:layout_height="30dp"
android:background="#ffffff"
android:textSize="21sp" />

</TableRow>

<TableRow
android:layout_marginTop="20dp">

<TextView
android:id="@+id/tpass"
android:layout_width="150dp"
android:layout_height="40dp"
android:text="Password"
android:textColor="#acbbde"
android:textSize="23sp" />

<EditText
android:id="@+id/epass"
android:layout_width="120dp"
android:layout_height="30dp"
android:background="#ffffff"
android:textSize="21sp"
android:inputType="numberPassword"
android:hint="numeric" />

</TableRow>

<TableRow
android:layout_marginTop="20dp">

<TextView
android:id="@+id/tcpass"
android:layout_width="150dp"
android:layout_height="60dp"
android:text="Conform Password"
android:textColor="#acbbde"
android:textSize="23sp" />

<EditText
android:id="@+id/ecpass"
android:layout_width="120dp"
android:layout_height="30dp"
android:background="#ffffff"
android:textSize="21sp"
android:inputType="numberPassword"
android:hint="numeric" />

</TableRow>

<Button
android:id="@+id/submit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Submit"
android:textColor="#acbbde"
android:textSize="23sp" />

</TableLayout>

Options:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000fff"
android:layout_centerInParent="true" >
<Button
android:id="@+id/bvpractical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/bvtheory"
android:layout_alignParentLeft="true"
android:text="View Practical Attendance"
android:textColor="#acbbde"
android:textSize="20sp" />

<Button
android:id="@+id/bvtheory"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/btnfilltheory"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:text="View Theory Attendence"
android:textColor="#acbbde"
android:textSize="20sp" />

<Button
android:id="@+id/btnfilltheory"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:text="Fill Theory Attendance"
android:textColor="#acbbde"
android:textSize="20sp" />

<Button
android:id="@+id/btnfillpractical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_below="@+id/btnfilltheory"
android:text="Fill Practical Attendance"
android:textColor="#acbbde"
android:textSize="20sp" />

<Button
android:id="@+id/tlogout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_below="@+id/btnfillpractical"
android:text="Logout"
android:textColor="#acbbde"
android:textSize="20sp" />
</RelativeLayout>

</RelativeLayout>

Fill Practical Attendance:


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<TableLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000fff" >

<TableRow>
<TextView>
</TextView>

<TextView
android:id="@+id/smalldate"
android:layout_width="wrap_content"
android:layout_height="30dp"
android:text="DD-MM-YY"
android:textColor="#acbbde"
android:textSize="17sp" />
</TableRow>

<TableRow android:layout_marginTop="5dp" >

<TextView
android:id="@+id/date"
android:layout_width="130dp"
android:layout_height="40dp"
android:text="Date"
android:textColor="#acbbde"
android:textSize="23sp" />

<TextView
android:id="@+id/tpdate"
android:layout_width="120dp"
android:layout_height="40dp"
android:text="date"
android:textColor="#acbbde"
android:textSize="20sp" />
</TableRow>

<TableRow android:layout_marginTop="10dp" >

<TextView
android:id="@+id/sem"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:text="Sem"
android:textColor="#acbbde"
android:textSize="23dp" />

<Spinner
android:id="@+id/pspinnersem"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:background="#ffffff"
android:textColor="#000000" >

</Spinner>

</TableRow>

<TableRow
android:layout_marginTop="10dp" >

<TextView
android:id="@+id/stclass"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:text="Class"
android:textColor="#acbbde"
android:textSize="23sp" />

<Spinner
android:id="@+id/pspinnerclass"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:background="#ffffff"
android:textColor="#000000" >

</Spinner>

</TableRow>

<TableRow
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp" >

<TextView
android:id="@+id/stp"
android:layout_width="50dp"
android:layout_height="60dp"
android:text="Student Present"
android:textColor="#acbbde"
android:textSize="23sp" />

<EditText
android:id="@+id/eppresent"
android:layout_width="162dp"
android:layout_height="40dp"
android:background="#ffffff"
android:ems="10"
android:inputType="number"
android:textSize="25sp" >

<requestFocus />
</EditText>

</TableRow>

<Button
android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="OK"
android:textColor="#acbbde"
android:textSize="23sp" />

</TableLayout>
</RelativeLayout>
Fill Theory Attendance
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">

<TableLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#000fff" >

<TableRow>
<TextView>
</TextView>

<TextView
android:id="@+id/smalldate"
android:layout_width="wrap_content"
android:layout_height="30dp"
android:text="DD-MM-YY"
android:textColor="#acbbde"
android:textSize="17sp" />
</TableRow>

<TableRow android:layout_marginTop="5dp" >

<TextView
android:id="@+id/date"
android:layout_width="130dp"
android:layout_height="40dp"
android:text="Date"
android:textColor="#acbbde"
android:textSize="23sp" />

<TextView
android:id="@+id/tpdate"
android:layout_width="120dp"
android:layout_height="40dp"
android:text="date"
android:textColor="#acbbde"
android:textSize="20sp" />
</TableRow>

<TableRow android:layout_marginTop="10dp" >

<TextView
android:id="@+id/sem"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:text="Sem"
android:textColor="#acbbde"
android:textSize="23dp" />

<Spinner
android:id="@+id/pspinnersem"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:background="#ffffff"
android:textColor="#000000" >

</Spinner>

</TableRow>

<TableRow
android:layout_marginTop="10dp" >

<TextView
android:id="@+id/stclass"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:text="Class"
android:textColor="#acbbde"
android:textSize="23sp" />

<Spinner
android:id="@+id/pspinnerclass"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:background="#ffffff"
android:textColor="#000000" >

</Spinner>

</TableRow>

<TableRow
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp" >

<TextView
android:id="@+id/stp"
android:layout_width="50dp"
android:layout_height="60dp"
android:text="Student Present"
android:textColor="#acbbde"
android:textSize="23sp" />

<EditText
android:id="@+id/eppresent"
android:layout_width="162dp"
android:layout_height="40dp"
android:background="#ffffff"
android:ems="10"
android:inputType="number"
android:textSize="25sp" >

<requestFocus />
</EditText>

</TableRow>

<Button
android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="OK"
android:textColor="#acbbde"
android:textSize="23sp" />

</TableLayout>
</RelativeLayout>
Android Manifest
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.attendance_monitoring_system"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="17" />

<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
>
<activity
android:name="com.attendance_monitoring_system.Home"
android:label="@string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />


</intent-filter>
</activity>
<activity
android:name="com.attendance_monitoring_system.FLogin"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>
<activity
android:name="com.attendance_monitoring_system.Creat_Account"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>

<activity
android:name="com.attendance_monitoring_system.Fcontrol"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>
<activity
android:name="com.attendance_monitoring_system.SAttendance"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>
<activity
android:name="com.attendance_monitoring_system.AttTable"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>
<activity
android:name="com.attendance_monitoring_system.Fill_Theory"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>
<activity
android:name="com.attendance_monitoring_system.Fill_Practical"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>

<activity
android:name="com.attendance_monitoring_system.splash"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>

</application>

</manifest>
R.Java:
/* AUTO-GENERATED FILE. DO NOT MODIFY.
*
* This class was automatically generated by the
* aapt tool from the resource data it found. It
* should not be modified by hand.
*/

package com.attendance_monitoring_system;

public final class R {


public static final class attr {
}
public static final class dimen {
/** Default screen margins, per the Android Design guidelines.

Customize dimensions originally defined in res/values/dimens.xml (such as


screen margins) for sw720dp devices (e.g. 10" tablets) in landscape here.

*/
public static final int activity_horizontal_margin=0x7f040000;
public static final int activity_vertical_margin=0x7f040001;
}
public static final class drawable {
public static final int ic_launcher=0x7f020000;
public static final int images2=0x7f020001;
}
public static final class id {
public static final int Ernum=0x7f080012;
public static final int action_settings=0x7f080030;
public static final int bshowpass=0x7f08000c;
public static final int btnErnum=0x7f080011;
public static final int btnfillpractical=0x7f080003;
public static final int btnfilltheory=0x7f080002;
public static final int btnlogin=0x7f08000d;
public static final int btnsignin=0x7f080007;
public static final int bvpractical=0x7f080000;
public static final int bvtheory=0x7f080001;
public static final int creatacc=0x7f08000e;
public static final int date=0x7f080023;
public static final int ecpass=0x7f08001e;
public static final int efname=0x7f080009;
public static final int efuserid=0x7f08000b;
public static final int ename=0x7f08001a;
public static final int epass=0x7f080020;
public static final int eppresent=0x7f08002a;
public static final int etpresent=0x7f08002f;
public static final int euserid=0x7f08001c;
public static final int listView1=0x7f080017;
public static final int ok=0x7f08002b;
public static final int pass=0x7f08000a;
public static final int prat=0x7f080016;
public static final int pspinnerclass=0x7f080028;
public static final int pspinnersem=0x7f080026;
public static final int relativeLayout1=0x7f080005;
public static final int sbnm=0x7f080014;
public static final int sem=0x7f080025;
public static final int smalldate=0x7f080022;
public static final int stclass=0x7f080027;
public static final int stp=0x7f080029;
public static final int submit=0x7f080021;
public static final int tblhead=0x7f080013;
public static final int tbllout=0x7f080018;
public static final int tcpass=0x7f08001f;
public static final int textView1=0x7f080008;
public static final int textView2=0x7f08000f;
public static final int thrat=0x7f080015;
public static final int tlogout=0x7f080004;
public static final int tname=0x7f080019;
public static final int tpass=0x7f08001d;
public static final int tpdate=0x7f080024;
public static final int tspinnerclass=0x7f08002e;
public static final int tspinnersem=0x7f08002d;
public static final int ttdate=0x7f08002c;
public static final int tuserid=0x7f08001b;
public static final int uid=0x7f080006;
public static final int uplay=0x7f080010;
}
public static final class layout {
public static final int activity_fcontrol=0x7f030000;
public static final int activity_flogin=0x7f030001;
public static final int activity_home=0x7f030002;
public static final int activity_sattendance=0x7f030003;
public static final int att_table=0x7f030004;
public static final int creataccount=0x7f030005;
public static final int createaccount=0x7f030006;
public static final int fill_practical=0x7f030007;
public static final int fill_theory=0x7f030008;
public static final int splashscreen1=0x7f030009;
}
public static final class menu {
public static final int home=0x7f070000;
}
public static final class string {
public static final int action_settings=0x7f050001;
public static final int app_name=0x7f050000;
public static final int hello_world=0x7f050002;
}
public static final class style {
/**
Base application theme, dependent on API level. This theme is replaced
by AppBaseTheme from res/values-vXX/styles.xml on newer devices.

Theme customizations available in newer API levels can go in


res/values-vXX/styles.xml, while customizations related to
backward-compatibility can go here.
Base application theme for API 11+. This theme completely replaces
AppBaseTheme from res/values/styles.xml on API 11+ devices.

API 11 theme customizations can go here.

Base application theme for API 14+. This theme completely replaces
AppBaseTheme from BOTH res/values/styles.xml and
res/values-v11/styles.xml on API 14+ devices.

API 14 theme customizations can go here.


*/
public static final int AppBaseTheme=0x7f060000;
/** Application theme.
All customizations that are NOT specific to a particular API-level can go here.
*/
public static final int AppTheme=0x7f060001;
}
}
CONCLUSION

In Summary, the project, “Android Based Attendance monitoring system ”


provides a Technical based quiz applications where users can improve their Technical
knowledge. There are different types of question which is related with Database,
Network security, Java, Operating System.

Settings can be used to select the level of difficulty, according to which the
questions will be displayed .In the other module We have provided questions based on
the difficulty level selected By the user.

For these modules we have created a database using SQLite .The database
contains the questions as wells a difficulty level mapped to it.
BIBLIOGRAPHY

WEBSITES :

 www.google.com.
 www.youtube.com.
 www.sanfoundry.com.
 Wikipedia

BOOKS :

 Java Reference book (pdf)


 FY , SY ,TY Notes
 Android SQLite Database pdf file
 Database Managemetn System , Network Security Book

You might also like