Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
100% found this document useful (1 vote)
518 views43 pages

Student Attendance Master

Download as docx, pdf, or txt
Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1/ 43

INDEX

Sr. No. Topics

1 INTRODUCTION

1.1 Background
1.2 Objectives
1.3 Purpose, Scope and Overview

2 SURVEY OF TECHNOLOGIES

3 REQUIREMENTS AND ANALYSIS

3.1 Problem Definition

3.2 Requirements Specification

3.3 Planning and Scheduling

3.4 Software and Hardware Requirements

3.5 Conceptual Models

4 SYSTEM DESIGN

4.1 Basic Module

4.2 ER Diagram

4.3 Use Case Diagram

4.4 Sequence Table

4.5 Class Diagram

4.6 Database Table

5 SYSTEM TESTING

6 FORMS AND REPORTS

7 ADVANTAGES AND LIMITATIONS

8 CONCLUSION
iNTRODUCTION
BACKGROUND

In the present system all work is done on paper. The whole


session attendance is stored in register and at the end of
the session the reports are generated. We are not interested
in generating report in the middle of the session or as per
the requirement because it takes more time in calculation.
At the end of session the students who don’t have 75%
attendance get a notice.

Disadvantages of Present Working System

• Not User Friendly

• Difficulty in report generation

• Manual control

• Lots of paperwork

• Time consuming

The attendance is important because students are more


likely to succeed in academics when they attend class
consistently. It’s difficult for the lecturer to build students'
skills and progress if a large number of students are
frequently absent.

Because of the advancement of technology today has


immersed itself towards education. The presence of
technology has reached its maximum of providing
sustainable technology towards quality education through
delivery and effective learning and smart devices have
become a way of life especially in higher education
academic
OBJECTIVES

To developed and design the android-based mobile


attendance application for the management of attendance
records in the educational organization. To implement the
new technology development system to make it digitalized,
authorized, secured one in the given web server to kept it
records as many years we want to kept it for its future use as
per our need.
The main objective of this project is to computerize the manual
system & reduce the time consumption. In other words we
can say that our project has the following objectives :-
 
1.Make the attendance system computerized
 
2.Reduce time consumption
 
3.Reduce error scope
 
4.Paper work is reduced as we need not to maintain registers
for future references.

PURPOSE, SCOPE AND OVERVIEW

PURPOSE

User Friendly: - This software is user friendly as it is simple to


use and the user doesn’t need any special training to use this
software. Data evaluation, data storing and retrieval is easy
and doesn’t need any heavy calculation or method. The UI is
simple and easy to understand.
Easy and Fast report generation: Reports are generated
automatically fast in an easy way after each month for the
teacher to keep a track on the students attendance record
and notify the students with minimum attendance to attend
classes.

Minimal paper work: There is no paper work required.


Data are stored automatically in the system. Evaluation are
done automatically. Hence it is cost effective too.

Time Saving: Data storing, data retrieval, data evaluation is


done at minimum time hence it is time saving producing
data with minimal errors.

SCOPE

We have seen over the years that the process of manual


attendance has been carried out across almost all
educational institutions. The process is not only time
consuming but also sometimes inefficient resulting in the
false marking of attendance. Today, we need not maintain
pen and paper based attendance registers. Following this
thought, we have proposed an attendance monitoring
system based on the concept of web services which is
implemented as an Android mobile application that
communicates with the database residing on a remote
server.
The mobile application would require connecting to the
database using either General Packet Radio
Service(GPRS) or Wi-Fi technology. This paper discusses
the proposed system, overview of the design, the various
modules of the system and its implementation.
OVERVIEW
Our project is an efficient and user friendly Android mobile
application for an Attendance Monitoring. The application will
be installed on the user’s (in this case teacher’s) smart
phone. It intends to provide an interface to the teacher who
will require minimal details to input for marking of
attendance of a particular class of students. Apart from that,
the application would support strong user authentication and
quick transmission of data via the web service. Another
noticeable feature of the entire application would be that
no data would be stored on the user device in any form
whatsoever. The application thus build would also help to
avoid the chance of a proxy as the application would be
handled by the teacher only.
SURVEY OF TECHLNOLOGIES
Android Studio is the official Integrated Development
Environment (IDE) for Android app development, based
on IntelliJ IDEA . On top of IntelliJ's powerful code editor and
developer tools, Android Studio offers even more features that
enhance your productivity when building Android apps, such as:

 A flexible Gradle-based build system


 A fast and feature-rich emulator
 A unified environment where you can develop for all
Android devices
 Apply Changes to push code and resource changes to your
running app without restarting your app
 Code templates and GitHub integration to help you build
common app features and import sample code
 Extensive testing tools and frameworks
 Lint tools to catch performance, usability, version
compatibility, and other problems
 C++ and NDK support
 Built-in support for Google Cloud Platform, making it easy
to integrate Google Cloud Messaging and App Engine

This page provides an introduction to basic Android Studio


features. For a summary of the latest changes, see Android
Studio release notes.

Each project in Android Studio contains one or more modules


with source code files and resource files. Types of modules
include:

 Android app modules


 Library modules
 Google App Engine modules

By default, Android Studio displays your project files in the


Android project view, as shown in figure 1. This view is
organized by modules to provide quick access to your project's
key source files.

All the build files are visible at the top level under Gradle
Scripts and each app module contains the following folders:

 manifests: Contains the AndroidManifest.xml file.


 java: Contains the Java source code files, including JUnit
test code.
 res: Contains all non-code resources, such as XML layouts,
UI strings, and bitmap images.

The Android project structure on disk differs from this flattened


representation. To see the actual file structure of the project,
select Project from the Project dropdown (in figure 1, it's
showing as Android).

You can also customize the view of the project files to focus on
specific aspects of your app development. For example,
selecting the Problems view of your project displays links to the
source files containing any recognized coding and syntax
errors, such as a missing XML element closing tag in a layout
file.

For expert level users of Java, programming for Android will not
be difficult. Let us understand how one can go about
developing an application using a step-by-step approach.

1. Creating an Android project in the Eclipse IDE. Here you


specify certain project options such as name of the
project, what Android version the project will run on, app
name, class name, package name and so on.
2. Configure the project and select a launcher icon. This
means you are providing workspace details and selecting
the appropriate size of the launcher icon.
3. Creating activities is a very important aspect of app
development. This activity is nothing but different
activities a user gets to do on-screen. After you are done
with selecting the type of activities, the project is now
open with relevant resource files for you to begin the
actual Java for android coding.
The user experience elements and the look of your app is
defined using the activity_main.xml file in the /res/layout folder
from the package. In this file, you will modify the string
attributes and add views for the app.

REQUIREMENT AND ANALYSIS


PROBLEM DEFINITION

Existing system:

The Existing system is a manual entry for the students. Here


the attendance will be carried out in the hand written registers.
It will be a tedious job to maintain the record for the user. The
human effort is more here. The retrieval of the information is
not as easy as the records are maintained in the hand written
registers .This application requires correct feed on input into
the respective field. Suppose the wrong inputs are entered, the
application resist to work. so the user find it difficult to use.

Proposed System:
To overcome the drawbacks of the existing system, the
proposed system has been evolved. This project aims to reduce
the paper work and saving time to generate accurate results
from the student’s attendance. The system provides with the
best user interface .The efficient reports can be generated by
using this proposed system.

Advantages of Proposed System


 
 It is trouble-free to use.

 It is a relatively fast approach to enter attendance

 Is highly reliable, approximate result from user

 Best user Interface

 Efficient reports
REQUIREMENT SPECIFICATION

Functional requirements of student attendance


management system:-
 The functional requirement of this is that it does what it is
meant for. A functional requirement describes what a
software system should do, while non-functional
requirements place constraints on how the system will do so.
 Functional requirements specify a function that a system or
system component must be able to perform. It can be
documented in various ways. The most common ones are
written descriptions in documents and use cases.

Few of its functional requirements are as given below:-

 User data should be fed into the system: this system is doing
that properly in user entity.
 Admin can add the users: Admin can verify and add the user,
which is they are doing with this system.

Non-Functional requirements of student attendance


management system:-

 Non-functional necessities square measure the other


demand than practical necessities. This square measure the
necessities that specify criteria which will be wont to choose
the operation of a system, instead of specific behaviors.
 Non-functional necessities square measure within the style of
“system shall be “, associate degree overall property of the
system as a full or of a specific facet and not a particular
operation. The system’s overall properties remarkably mark
the distinction between whether or not the event project has
succeeded or unsuccessful.
 Non-functional necessities – are often divided into 2 main
categories:
Execution qualities, like security and usefulness, that square
measure evident at the run time.
Evolution qualities, like liabilities, maintainability, flexibility
and quantifiable, that square measure embodied within the
static structure of the code.
 Non-functional of student attendance management system
necessities place restrictions on the merchandise being
developed, the event method, and specify external
constraints that the merchandise should meet
 Our project qualifies all the criteria of functional and not
functional accordingly and the system is up to mark
performance vies. Here we need to take care of few more
things before heading towards the system.
 The most important feature of application world is that
application’s ease of usage .application will easy to use if
made while keeping in mind that user need not think twice
about searching any feature.
 Everything should be made distinctive by using the color
combination such that everything needed most frequently
highlighted with focus colors. We can use simple layouts like
the card and grid layout etc.
 By varying color and other UI combination, many good
intuitive interfaces can be made. Which ultimately makes
interface easy to use for a long time.
 Unlike ancient style wherever the goal is to form the thing or
application physically enticing, the goal of interface style is
to form the user’s interaction expertise as straightforward
and intuitive as attainable – what’s typically known as user-
centered style.
 Where smart graphic/industrial style is daring and eye
catching, smart interface style is commonly delicate and
invisible.

Keep things simple and consistent:-

 Simple and Harmonic way making UI is very intuitive and


needs to followed

Make good use of typography:-

 The typography is taken care very strictly as the need of the


system.

Use color and contrast properly:-

 Color combo of lite and dark is a good way emphasize and


done well in this system
Consider feedback messages:-

 The feedback form is a very good way taking feedback of


forms and improving the system.

Simplified forms:-

 The form is made simple to fill with the clean user interface.

PLANNING AND SCHEDULING

Task name Start Duration Finish


Project definition 20/07/2019 4 Days 24/07/2019
Requirement gathering 06/08/2019 12 Days 18/08/2019
Requirement analysis 19/08/2019 7 Days 26/08/2019
Feasibility study 27/08/2019 22 Days 22/09/2019
ER Diagram and Schema 17/09/2019 5 Days 22/09/2019
Dataflow diagram 25/09/2019 7 Days 02/10/2019
Use case diagram 04/10/2019 6 Days 10/10/2019
Sequence diagram 17/10/2019 4 Days 21/10/2019
Activity diagram 03/11/2019 4 Days 07/11/2019
Design 03/12/2019 3 Days 06/12/2019
Coding 10/01/2020 16 Days 26/01/2020
Testing 05/02/2020 24 Days 29/02/2020
SOFTWARE AND HARDWARE REQUIREMENTS

 Hardware Requirements

System : IBM-Compatible PC
Processor : Pentium IV
Speed : 2.0 GHz
Memory : 256 MB RAM
Hard Disk Drive : 40 GB
Mobile Side : Android OS enabled smart phone

 Software Requirements

1. Windows 7/8/10 Operating System


2. Android mobile Operating System
3. JSON (JavaScript Object Notation)
4. Eclipse IDE
5. SQL Server 2008 or later

CONCEPTUAL MODELS

The monitoring of student attendance remains a fundamental


and vital part of any educational institution. Although some
automated biometric-based attendance monitoring systems
have been proposed in the literature, poor system modeling
has negatively affected their performance. There is, hence, a
need to address the various needs associated with the
development of an AI-based attendance monitoring system.
This paper proposes the conceptual model for a smart
attendance monitoring system that uses face recognition to
monitor students' attendance during lectures.
SYSTEM DESIGN

BASIC MODULE
i. Login form:

This Form is made for security purpose. So


Authenticated User only Access in to this application.
There are two Type of persons can enter in the project
Administrator and User.

ii. Add information form:

This form we provide for student registration only and


gives option to fill name of the student and password.

iii. Staff Module:

This module is designed for staff, which use mobile


phone to take attendance, upload attendance result.
The entered admin details are encrypted and sent to
server for verification. Only after successful
authentication the operations are performed.

iv. Attendance Module:

The purpose of Attendance Entry Module is to enter the


attendance using android cell phone. In this module
Lecturer takes the attendance using the android cell
phone. Lecturers select the branch, semester and year.
After this session he enters in to attendance page. Here
staff makes a mark on the absentees. Lecturer are only
allowed to take attendance during their lecture time.

ER DIAGRAM
USE CASE DIAGRAM
SEQUENCE TABLE
CLASS DIAGRAM
DATABASE TABLE
SYSTEM TESTING

UNIT TESTING
S.n Function Function Function Step Expected Actual Pass/Fail
o id name desc. result result

1 Login Validate To verify Enter the Login Login Pass


admin login that login login name successful successful
name on and password or an error
login page and click message
submit button “In valid
login or
 password

must be
displayed

2 Create Validate To Nothing An error Inserted Pass


student allocation allocate entered and message successful
detail’s form separate click submit student
roll no for button name not
the equal to
students null must
be
displayed
3 Create Validate To Nothing An error Inserted Pass
staff allocation allocate entered and message successful
detail’s form separate click submit staff
subject button details
username password,
password username
for the not equal
staffs to null
must be
displayed
4 View Check To verify Generated An error An error Fail
details of that data message message
all data stored on return null return null
database will be will be
displayed displayed
FORMS AND REPORTS
LOGING FORM
MAIN FORM
ADD NEW STUDENT FORM
ADD NEW FACULTY FORM
CODING
1) Login

package com.android.attendance.activity;

import android.app.Activity;
import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import
android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;

import com.android.attendance.bean.FacultyBean;
import
com.android.attendance.context.ApplicationContext;
import com.android.attendance.db.DBAdapter;
import com.example.androidattendancesystem.R;

public class LoginActivity extends Activity {

Button login;
EditText username,password;
Spinner spinnerloginas;
String userrole;
private String[] userRoleString = new String[] { "admin",
"faculty"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);

login =(Button)findViewById(R.id.buttonlogin);

username=(EditText)findViewById(R.id.editTextusername);

password=(EditText)findViewById(R.id.editTextpassword);

spinnerloginas=(Spinner)findViewById(R.id.spinnerloginas);

spinnerloginas.setOnItemSelectedListener(new
OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?>
arg0, View view,
int arg2, long arg3) {
// TODO Auto-generated method stub
((TextView)
arg0.getChildAt(0)).setTextColor(Color.WHITE);
userrole =(String)
spinnerloginas.getSelectedItem();

@Override
public void onNothingSelected(AdapterView<?>
arg0) {
// TODO Auto-generated method stub
}
});

ArrayAdapter<String> adapter_role = new


ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item,
userRoleString);
adapter_role
.setDropDownViewResource(android.R.layout.simple_
spinner_dropdown_item);
spinnerloginas.setAdapter(adapter_role);

login.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub

if(userrole.equals("admin"))
{

String user_name =
username.getText().toString();
String pass_word =
password.getText().toString();

if (TextUtils.isEmpty(user_name))
{
username.setError("Invalid User
Name");
}
else if(TextUtils.isEmpty(pass_word))
{
password.setError("enter
password");
}
else
{
if(user_name.equals("admin") &
pass_word.equals("admin123")){
Intent intent =new
Intent(LoginActivity.this,MenuActivity.class);
startActivity(intent);

Toast.makeText(getApplicationContext(), "Login
successful", Toast.LENGTH_SHORT).show();
}else{

Toast.makeText(getApplicationContext(), "Login failed",


Toast.LENGTH_SHORT).show();
}
}
}

else
{
String user_name =
username.getText().toString();
String pass_word =
password.getText().toString();

if (TextUtils.isEmpty(user_name))
{
username.setError("Invalid User
Name");
}
else if(TextUtils.isEmpty(pass_word))
{
password.setError("enter
password");
}
DBAdapter dbAdapter = new
DBAdapter(LoginActivity.this);
FacultyBean facultyBean =
dbAdapter.validateFaculty(user_name, pass_word);

if(facultyBean!=null)
{
Intent intent = new
Intent(LoginActivity.this,AddAttandanceSessionActivity.clas
s);
startActivity(intent);

((ApplicationContext)LoginActivity.this.getApplicationConte
xt()).setFacultyBean(facultyBean);
Toast.makeText(getApplicationContext(), "Login
successful", Toast.LENGTH_SHORT).show();
}
else
{

Toast.makeText(getApplicationContext(), "Login failed",


Toast.LENGTH_SHORT).show();
}
}

}
});

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar
if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

Main :
package com.android.attendance.activity;

import com.example.androidattendancesystem.R;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {

Button start;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

start =(Button)findViewById(R.id.buttonstart);
start.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub

Intent intent =new


Intent(MainActivity.this,LoginActivity.class);
startActivity(intent);
}
});

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar
if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}
ADVANTAGES AND LIMITATION
ADVANTAGES

1. Reduce paperwork and save time and money with mobile


and cloud-based attendance management system

2. Eliminate duplicate data entry and errors in time and


attendance entries

3. Improve visibility to track and manage student attendance &


absenteeism across multiple campuses

4. Real-time status tracking of leave request

5. Automatic calculation of leave and reward points accrued

6. Easy attendance recording using RFID & Biometric based


attendance system

7. Track the attendance of teachers and staff, assign work and


manage allocation

8. Keep the parents informed about the student’s performance


via Email & SMS alerts

9. Auto-generate various types of reports of class or student


attendance

10.Increased security and confidentiality with role-based


permissions to users

LIMITATIONS
The drawbacks in Student Management System software can
be counted on fingers; with mostly only benefits, these systems
have a few countable downsides. Often, applications face minor
technical glitches and these systems are no exception but,
ratification is immediate. Only, people who are accustomed to
regular use of smartphones or computers can operate this
software. Extensive modules and features make it difficult for a
user to utilise the application. With huge flow in traffic the
application is prone to performance issues. Few companies
market their products at extravagant price, which are not
affordable by growing organizations. Absence of proper
internet-network makes it difficult for a user to access
information, which is a significant disadvantage. The risk of
data mishandling might be bothersome; but all these
drawbacks can be evaded by choosing proper, cost-efficient
and best software that best benefits an organization.

FUTURE ENHANCEMENT

In future our system plans on including a SMS notification


feature whereby every student will be periodically notified
regarding his/her attendance record for a specific
duration .The main advantage of SMS notification is that the
Students can know their attendance by sending SMS from
anywhere. Students send a SMS to the server with their register
number. If it is in correct format, the server will replays the
attendance of corresponding student through SMS. Otherwise
sends an error message.
Conclusion

In this paper, an Android based mobile application for


Attendance Monitoring is presented. The application offers
reliability, time savings and easy control. It can be used as a
base for creating similar applications for tracking attendance in
offices or any workplace. It can be also integrated in healthcare
sector to keep track of nurse to patient visits by streamlining
the time entry, time approval and management processes.

You might also like