Android Attendance Management System

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 54
At a glance
Powered by AI
The key takeaways are that the project aims to develop an attendance management system mobile application for colleges to help efficiently manage student and staff details as well as attendance.

The main features include maintaining student, staff and subject details, generating timetables, taking hourly attendance for students and generating various reports.

Some advantages of using a mobile app include reducing the time taken to generate timetables, easily maintaining staff and student details, taking hourly attendance directly and generating reports on the go.

Atendance management System

The project Attendance Management System has been developed for


World User for android market and college user. The Application is mainly focused
on College Administration in mobile application.

It helps the users to maintain theirs various details. The main advantage of
using this application is it reduces the time of generating time table to all over the
classes and staffs details are maintained. The process in this project is to be
organized to College Staff and Subject, Class batch wise, And Also Maintained by
Student Attendance details organized by staff directly Responsibility of the vision
of my captured Student details, Class based Attendance hour wise organized
mobile application. The Project Coding is based Several Tools is used to develop
the this mobile application (java jdk ) are so well connected that the protect
resembles to the computerization of the Web services operation of the firm. The
database design and coding techniques has highly enhanced and optimized. This
makes the application an overall user friendly and easy for naive users.

The tools constitutes Android SDK development, Java Jdk ,Eclipse in


mobile applications which will be displayed when authorized person uses the
software and developed on Linux environment which is platform dependent in
mobility application. The back end tool constitutes Sql lite database and developed
on windows environment which is platform independent.

It helps the clients to keep up theirs different points of interest. The principle
favorable position of utilizing this application is it decreases the season of
producing time table to everywhere throughout the classes and staff's subtle
elements are kept up. The procedure in this undertaking is to be sorted out to
College Staff and Subject and Class cluster savvy ,And Also Maintained by
Student Attendance subtle elements composed by staff specifically Responsibility
of the vision of my caught Student points of interest ,Class based Attendance hour
wise, Staff login maintained Timetable vision For Staff wise Generated Report
displayed and Class ,Department Wise Reports are displayed based on User Login
Preferences composed versatile application

MODULES DESCRIPTION

Features of the system:


Admin login: Admin has an account in the system from
where he administers all the information and different
faculty accounts.
Student Login: Students can view class timetable online
and even holidays and events.
Faculty information: The system contains all the updated
information of the faculty like their personal details, salary
details, lectures details and so on.
Scheduling classes: The system also maintains timetable
of all the lectures being conducted every day.
Student's details: The system contains a student account
where it maintains the student details and even student
batch timings
Subject details: The system contains a Subject Details are
Maintained with Staff integrated with and subject hour
allocation included
Attendance :this module is only accessable for staff user
only to attendance for students ,hourly based attendance
generate
Report:
o Timetable
o Student Details
o Staff details
o Attendance details

SYSTEM ANALYSIS

EXISTING SYSTEM

The existing system does not provide the user the


convenient that the proposed system provides. The Staff has to
not maintain portable Student attendance System in smart phone
application based. There is no user Preference login based Time
Table Displayed in class wise and Staff wise Time table generate
in android Mobile Application .

DEMERITS OF THE EXISTING SYSTEM

The most important drawback of the existing system is that Staff has
to totally depend on the Student Attendance Book at the time of need.
Another demerit of the existing system is that the process of
obtaining the Time Table is not an easy task.

PROPOSED SYSTEM
The system will overcome all the ambiguity. The project provides the
flexible, reliable, simple and most powerful system to get the list of Time Table
from Staff wise and Department with Class Wise Report Generated. The project
consists of three users namely admin, Staff, Student, This applications organized
based user login Preferences can register their details and through mobile
application the users can find the easily and request for their help.

FEATURES OF PROPOSED SYSTEM

The most important feature of the proposed system is that


the staff can access time table hour wise report with
subject

The feature of the proposed system is that the system


provides a list of Student of that particular Attendance
specified class for which the user has requested present
or Absent.

Another important feature of proposed system is that it is


easy and efficient to use.

3.SYSTEM REQUIREMENTS

This specifies the minimum project execution environment,


development environment and tools that are needed to develop and implement
tools used

3.1 HARDWARE CONFIGURATION

PROJECT EXECUTION ENVIRONMENT


Networks : GSM/GPRS/EDGE 850/900, 1800/1900

UMTS 850/1900 : Universal Mobile Telecommunications System

CSD : Circuit Switched Data

HSDPA : High-Speed Downlink Packet Access

HSUPA : High-Speed Uplink Packet Access

Cup (MHZ) cup chipset : 416 MHz

Capaties : 256 MB ROM

DEVELOPMENT ENVIRONMENT

The configuration given below is the Hardware handled for the system
development.

Operating systems :Windows , Ubuntu Linux server,Mac.


Processor :2.4Ghz
Hard disk :80GB
Ram :4 GB
Optical Drive :CD-RW
Monitor :Samsung 17 Color Monitor
Keyboard :Logitech multi-media 113 keys

3.2 SOFTWARE SPECIFICATION

TOOLS REQUIRED
Eclipse Luna version 3.7
Android sdk : Android 5.0 Platform
Android adt plug-in.
3.2.1 FRONT END TOOLS
JAVA (PROGRAMMING LANGUAGE)
Java is a programming language originally developed by James Gosling at
Sun Microsystems (which has since merged into Oracle Corporation) and released in
1995 as a core component of Sun Microsystems' Java platform. The language
derives much of its syntax from C and C++ but has a simpler object model and
fewer low-level facilities. Java applications are typically compiled to byte code (class
file) that can run on any Java Virtual Machine (JVM) regardless of computer
architecture. Java is a general-purpose, concurrent, class-based, object-oriented
language that is specifically designed to have as few implementation dependencies
as possible. It is intended to let application developers "write once, run anywhere"
(WORA), meaning that code that runs on one platform does not need to be
recompiled to run on another. Java is currently one of the most popular
programming languages in use, particularly for client-server web applications, with
a reported 10 million users.

JAVA PLATFORM

A Java virtual machine (JVM) is a virtual machine capable of executing Java


bytecode. It is the code execution component of the Java software platform. Sun
Microsystems stated that there are over 5.5 billion JVM-enabled devices. A Java
virtual machine is software that is implemented on virtual and non-virtual hardware
and on standard operating systems. A JVM provides an environment in which Java
bytecode can be executed, enabling such features as automated exception
handling, which provides "root-cause" debugging information for every software
error (exception), independent of the source code. A JVM is distributed along with a
set of standard class libraries that implement the Java application programming
interface (API). Appropriate APIs bundled together with JVM form the Java Runtime
Environment (JRE)

JAVA VERSIONS 7

The Java language has undergone several changes since JDK 7.0 as well as
numerous additions of classes and packages to the standard library. Since J2SE 7.0,
the evolution of the Java language has been governed by the Java Community
Process (JCP), which uses Java Specification Requests (JSRs) to propose and specify
additions and changes to the Java platform. The language is specified by the Java
Language Specification (JLS); changes to the JLS are managed under JSR 901.

ANDROID (OPERATING SYSTEM)


What is Android ?
Android is a software stack for mobile devices that includes an operating system,
middleware and key applications. The Android SDK provides the tools and APIs necessary to
begin developing applications on the Android platform using the Java programming language.

Android is a Linux-based operating system for mobile devices such as smartphones and
tablet computers. It is developed by the Open Handset Alliance led by Google. Google purchased
the initial developer of the software, Android Inc., in 2005. The unveiling of the Android
distribution in 2007 was announced with the founding of the Open Handset Alliance, a
consortium of 86 hardware, software, and telecommunication companies devoted to advancing
open standards for mobile devices. Google releases the Android code as open-source, under the
Apache License. The Android Open Source Project (AOSP) is tasked with the maintenance and
further development of Android.

Android has a large community of developers writing applications that extend the
functionality of the devices. Developers write primarily in a customized version of Java. Apps
can be downloaded from third-party sites or through online stores such as Google Play (formerly
Android Market), the application store run by Google. As of February 2012 there were more than
450,000 apps available for Android, and the estimated number of applications downloaded from
the Android Market as of December 2011 exceeded 10 billion

Features

Application framework enabling reuse and replacement of components

Dalvik virtual machine optimized for mobile devices


Integrated browser based on the open source WebKit engine

Optimized graphics powered by a custom 2D graphics library; 3D graphics based on the


OpenGL ES 1.0 specification (hardware acceleration optional)

SQLite for structured data storage

Media support for common audio, video, and still image formats (MPEG4, H.264, MP3,
AAC, AMR, JPG, PNG, GIF)

GSM Telephony (hardware dependent)s

Bluetooth, EDGE, 3G, and Wi-Fi (hardware dependent)

Camera, GPS, compass, and accelerometer (hardware dependent)

Rich development environment including a device emulator, tools for debugging,


memory and performance profiling, and a plug-in for the Eclipse IDE

Application Framework

By providing an open development platform, Android offers developers the ability to


build extremely rich and innovative applications. Developers are free to take advantage of the
device hardware, access location information, run background services, set alarms, add
notifications to the status bar, and much, much more.

Developers have full access to the same framework APIs used by the core applications.
The application architecture is designed to simplify the reuse of components; any application can
publish its capabilities and any other application may then make use of those capabilities (subject
to security constraints enforced by the framework). This same mechanism allows components to
be replaced by the user.

Underlying all applications is a set of services and systems, including:


A rich and extensible set of Views that can be used to build an application, including lists,
grids, text boxes, buttons, and even an embeddable web browser

Content Providers that enable applications to access data from other applications (such as
Contacts), or to share their own data

A Resource Manager, providing access to non-code resources such as localized strings,


graphics, and layout files

A Notification Manager that enables all applications to display custom alerts in the status
bar An Activity Manager that manages the lifecycle of applications and provides a common
navigation back stack For more details and a walkthrough of an application, see the Notepad
Tutorial.

Libraries

Android includes a set of C/C++ libraries used by various components of the Android
system. These capabilities are exposed to developers through the Android application framework.
Some of the core libraries are listed below:

System C library - a BSD-derived implementation of the standard C system library (libc), tuned
for embedded Linux-based devices

Media Libraries

Packet Videos Open CORE; the libraries support playback and recording of many
popular audio and video formats, as well as static image files, including MPEG4, H.264, MP3,
AAC, AMR, JPG, and PNG

Surface Manager

Manages access to the display subsystem and seamlessly composites 2D and 3D graphic
layers from multiple applications
LibWebCore

A modern web browser engine which powers both the Android browser and an
embeddable web view

SGL

the underlying 2D graphics engine

3D libraries

An implementation based on OpenGL ES 1.0 APIs; the libraries use either hardware 3D
acceleration (where available) or the included, highly optimized 3D software rasterizer

Free Type

bitmap and vector font rendering

SQLite

A powerful and lightweight relational database engine available to all applications

Android Runtime

Android includes a set of core libraries that provides most of the functionality available in
the core libraries of the Java programming language.

Every Android application runs in its own process, with its own instance of the Dalvik
virtual machine. Dalvik has been written so that a device can run multiple VMs efficiently. The
Dalvik VM executes files in the Dalvik Executable (.dex) format which is optimized for minimal
memory footprint. The VM is register-based, and runs classes compiled by a Java language
compiler that have been transformed into the .dex format by the included "dx" tool.

The Dalvik VM relies on the Linux kernel for underlying functionality such as threading
and low-level memory management.

Linux Kernel

Android relies on Linux version 2.6 for core system services such as security, memory
management, process management, network stack, and driver model. The kernel also acts as an
abstraction layer between the hardware and the rest of the software stack.

VERSION HISTORY
Android has seen a number of updates since its original release, each fixing
bugs and adding new features. Each version is named, in alphabetical order, after a
dessert. They are

v1.6 Donut

v2.0/2.1 Eclair

v2.2.x Froyo

ADVANTAGES OF THE ANDROID

Some of the advantages offered by the .NET Framework are as follows


They are root-able
The Android platform is open-source.
There are way FEWER App store shenanigans
App Freedom.
DISADVANTAGES OF THE ANDROID

Very unstable and often hang or crash .

Extremely inconsistence in design among apps.

Android Linux-based system, so as to modify Android, the user must know the
commands on the Linux system, and should log on as administrator.

ANDROID SOFTWARE DEVELOPMENT

Android software development is the process by which new applications


are created for the Android operating system. Applications are usually developed in
the Java programming language using the Android Software Development Kit, but
other development tools are available. As of April 2011 more than 200,000
applications have been developed for Android, with over 3 billion downloads.. The
Android platform has also grown to become a favorite among mobile developers. A
June 2011 research indicated that over 67% of mobile developers used the platform,
at the time of publication

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 (any modern desktop Linux
distribution), Mac OS X 10.4.9 or later, Windows XP or later. The officially supported
integrated development environment (IDE) is Eclipse using the Android
Development Tools (ADT) Plugin, though 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 (e.g., triggering a reboot, installing software package(s)
remotely).

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 root user for security
reasons). APK package contains .dex files (compiled byte code files called Dalvik
executables), resource files, etc

WEB SERVICE

A Web service is a method of communication between two electronic


devices over the web The W3C defines a "Web service" as "a software
system designed to support interoperable mobile-to-machine interaction
over a network". It has an interface described in a machine-process able
format (specifically Web Services Description Language, known by the
acronym WSDL). Other systems interact with the Web service in a manner
prescribed by its description using SOAP messages, typically conveyed using
HTTP with an XML serialization in conjunction with other Web-related
standards.

BIG WEB SERVICES

"Big Web services" use Extensible Markup Language (XML) messages that
follow the SOAP standard and have been popular with the traditional enterprises. In
such systems, there is often a machine-readable description of the operations
offered by the service written in the Web Services Description Language (WSDL).
WEB API

Web API is a development in Web services (in a movement called Web 2.0) where
emphasis has been moving away from SOAP based services towards representational state
transfer (REST) based communications. REST services do not require XML, SOAP, or WSDL
service-API definitions. Web APIs allow the combination of multiple Web services into new
applications known as mashups.

When used in the context of Web development, Web API is typically a defined set of
Hypertext Transfer Protocol (HTTP) request messages along with a definition of the structure of
response messages, usually expressed in an Extensible Markup Language (XML) or JavaScript
Object Notation (JSON) format.

STYLES OF USE
Web services are a set of tools that can be used in a number of ways. The
three most common styles of use are RPC, SOA and REST.

Remote procedure calls


The first Web services tools were focused on RPC, and as a result this style is
widely deployed and supported. However, it is sometimes criticized for not being
loosely coupled, because it was often implemented by mapping services directly to
language-specific functions or method calls. Many vendors felt this approach to be a
dead end, and pushed for RPC to be disallowed in the WS-I Basic Profile.

Service-oriented architecture

Web services can also be used to implement an architecture according to


service-oriented architecture (SOA) concepts, where the basic unit of
communication is a message, rather than an operation. This is often referred to as
"message-oriented" services.

Representational state transfer (REST)


REST attempts to describe architectures that use HTTP or similar protocols by
constraining the interface to a set of well-known, standard operations (like GET,
POST, PUT, DELETE for HTTP). Here, the focus is on interacting with stateless
resources, rather than messages or operations. Clean URLs are tightly associated
with the REST concept

JSON

JavaScript Object Notation is a lightweight text-based open standard


designed for human-readable data interchange. It is derived from the
JavaScript scripting language for representing simple data structures and
associative arrays, called objects.

DATA TYPES, SYNTAX AND EXAMPLE

JSON's basic types are:

Number (type not specified, but in practice double precision floating-point


format, as this is how JavaScript in Web browsers treats it)

String (double-quoted Unicode (UTF-8 by default), with backslash escaping)

Boolean (true or false)

Array (an ordered sequence of values, comma-separated and enclosed in


square brackets; the values do not need to be of the same type)

Object (an unordered collection of key: value pairs with the ':' character
separating the key and the value, comma-separated and enclosed in curly
braces; the keys must be strings and should be distinct from each other)

null (empty)

SCHEMA

JSON Schema is a specification for a JSON-based format for defining the


structure of JSON data. JSON Schema provides a contract for what JSON data is
required for a given application and how it can be modified, much like the XML
Schema provides for XML. JSON Schema is intended to provide validation,
documentation, and interaction control of JSON data. JSON Schema is based on the
concepts from XML Schema, RelaxNG, and Kwalify, but is intended to be JSON-
based, so that JSON data in the form of a schema can be used to validate JSON data,
the same serialization/deserialization tools can be used for the schema and data,
and it can be self descriptive.

3.2.2 BACK END TOOLS


SQLITE

SQLite implements most of the SQL standard, using a dynamically and


weakly typed SQL syntax that does not guarantee the domain integrity. 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 read operations can be multitasked, though writes can only be
performed sequentially.

SQLite is a popular choice for local/client storage on web browsers. It


has many bindings to programming languages. 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.

FEATURES OF SQLITE

SQLite implements most of the SQL-92 standard for SQL but it lacks some features. For
example it has partial support for triggers, and it can't write to views (however it supports
INSTEAD OF triggers that provide this functionality). While it supports complex queries, it still
has limited ALTER TABLE support, as it can't modify or delete columns.[9]

SQLite uses an unusual type system for a SQL-compatible DBMS. Instead of assigning a
type to a column as in most SQL database systems, types are assigned to individual values; in
language terms it is Dynamically Typed. Moreover, it is weakly typed in some of the same ways
that Perl is: one can insert a string into an integer column (although SQLite will try to convert the
string to an integer first, if the column's preferred type is integer). This adds flexibility to
columns, especially when bound to a dynamically typed scripting language. However, the
technique is not portable to other SQL products. A common criticism is that SQLite's type system
lacks the data integrity mechanism provided by statically typed columns in other products. The
SQLite web site describes a "strict affinity" mode, but this feature has not yet been added.
However, it can be implemented with constraints like CHECK(typeof(x)='integer').

Several computer processes or threads may access the same database concurrently.
Several read accesses can be satisfied in parallel. A write access can only be satisfied if no other
accesses are currently being serviced. Otherwise, the write access fails with an error code (or can
automatically be retried until a configurable timeout expires). This concurrent access situation
would change when dealing with temporary tables. This restriction is relaxed in version 3.7 when
WAL is turned on enabling concurrent reads and writes.

USE IN WEB BROWSERS


Mozilla Firefox and Mozilla Thunderbird store a variety of configuration data
(bookmarks, cookies, contacts etc.) in internally managed SQLite databases, and even
offer an add-on to manage SQLite databases.
The Opera Internet suite and browser uses SQLite 3.6.23 for managing WebSQL
databases. This is noted in opera:about, although without the mention of WebSQL
(databases can be managed through opera:webdatabases)
Embedding SQLite in web browsers has resulted in adding SQLite to the HTML5 Web
Storage standard and after discussion inside the W3C Web Applications Working Group
the WebSimpleDB API proposal was developed

USE IN MOBILE DEVICES

Due to its small size, SQLite is well suited to embedded systems, and is also
included

Apple's iOS (where it is used for the SMS/MMS, Calendar, Call history and Contacts
storage)
Symbian OS
Nokia's Maemo
Google's Android
RIM's BlackBerry
Linux Foundation's MeeGo.

3.2.3 OPERATING SYSTEM

WINDOWS XP
Windows XP is a line of proprietary operating systems developed by Microsoft
for use on general-purpose computer systems, including home and business
desktops, notebook computers, and media centers. The letters "XP" stand for
experience. Windows XP was first released on October 25, 2001, and over 400
million copies are in use, according to a January 2006 estimate by an IDC analyst. It
is succeeded by Windows Vista, which was released to volume license customers on
November 8, 2006 and worldwide to the general public on January 30, 2007.
Windows XP is known for its improved stability and efficiency over previous
versions of Microsoft Windows. It presents a significantly redesigned graphical user
interface, a change Microsoft promoted as more user-friendly than previous versions
of Windows. Windows XP had been in development since early 1999, when Microsoft
started working on Windows Neptune, an operating system intended to be the
"Home Edition" equivalent to Windows 2000 Professional. Windows file protection
protects core system files from being over written by application installations.
If a file is overwritten, windows file protection will restore the correct version.
By safeguarding system files, windows XP professional mitigate many of the most
common system failures encountered in earlier versions of windows. A system
service that helps users installs, configure, track, update and remove software
programs correctly which helps to minimize user downtime and increase system
stability.
In windows XP professionals, EFS can provide multiple users access to an
encrypted document. Turned on by default, the built-in Windows Firewall helps
increase computer security from startup to shutdown. It reduces the risk of network
and internet-based attacks. Easily manage security resources with this single,
unified view of key settings, tools, and access to resources.
LINUX

Linux was originally developed as a free operating system for Intel x86-based personal
computers. It has since been ported to more computer hardware platforms than any other
operating system. It is a leading operating system on servers and other big iron systems such as
mainframe computers and supercomputers: more than 90% of today's top 500 supercomputers
run some variant of Linux, including the 10 fastest. Linux also runs on embedded systems
(devices where the operating system is typically built into the firmware and highly tailored to the
system) such as mobile phones, tablet computers, network routers, televisions and video game
consoles; the Android system in wide use on mobile devices is built on the Linux kernel.

The development of Linux is one of the most prominent examples of free and open
source software collaboration: the underlying source code may be used, modified, and distributed
commercially or non-commerciallyby anyone under licenses such as the GNU General
Public License. Typically Linux is packaged in a format known as a Linux distribution for
desktop and server use. Some popular mainstream Linux distributions include Debian (and its
derivatives such as Ubuntu), Fedora and openSUSE. Linux distributions include the Linux
kernel, supporting utilities and libraries and usually a large amount of application software to
fulfill the distribution's intended use.

A distribution oriented toward desktop use may include the X Window System and an
accompanying desktop environment such as GNOME or KDE Plasma. Other distributions may
include a less resource intensive desktop such as LXDE or Xfce for use on older or less powerful
computers. A distribution intended to run as a server may omit all graphical environments from
the standard install and instead include other software such as the Apache HTTP Server and an
SSH server such as OpenSSH. Because Linux is freely redistributable, anyone can create a
distribution for any intended use. Applications commonly used with desktop Linux systems
include the Mozilla Firefox web browser, the LibreOffice office application suite, and the GIMP
image editor.
UNIX
The Unix operating system was conceived and implemented in 1969 at
AT&T's Bell Laboratories in the United States by Ken Thompson, Dennis Ritchie,
Douglas McIlroy, and Joe Ossanna.

It was first released in 1971 and was initially entirely written in assembly
language, a common practice at the time. Later, in a key pioneering approach in
1973, Unix was re-written in the programming language C by Dennis Ritchie (with
exceptions to the kernel and I/O).

The availability of an operating system written in a high-level language


allowed easier portability to different computer platforms. With a legal glitch forcing
AT&T to license the operating system's source code to anyone who asked, Unix
quickly grew and became widely adopted by academic institutions and businesses.
In 1984, AT&T divested itself of Bell Labs. Free of the legal glitch requiring free
licensing, Bell Labs began selling Unix as a proprietary product

UBUNTU

Ubuntu is a computer operating system based on the Debian Linux distribution and
distributed as free and open source software, using its own desktop environment. It is named
after the Southern African philosophy of Ubuntu ("humanity towards others").

Ubuntu is designed primarily for use on personal computers, although a server edition
also exists.Ubuntu is sponsored by the UK-based company Canonical Ltd., owned by South
African entrepreneur Mark Shuttleworth.

Canonical generates revenue by selling technical support and services related to Ubuntu,
while the operating system itself is entirely free of charge. The Ubuntu project is committed to
the principles of free software development; people are encouraged to use free software, improve
it, and pass it on.

FEATURES
Ubuntu is a fork of the Debian project's codebase. The original aim of the Ubuntu team
was to create an easy-to-use Linux desktop with new releases scheduled on a predictable six-
month basis, resulting in a more frequently updated system Ubuntu's first release was on 20
October 2004.

4.SYSTEM DESIGN AND DEVELOPMENT

Design is defining a model of the new system and continues by converting


model to a new system. The method is used to convert the model of the proposed
system into computer specification. Data models are converted to a database and
processes and flows to user procedures and computer programs. The detailed
design starts with three activities, database design, user design and program
design. Database design uses conceptual data model. User procedures designs use
those parts of the DFD outside the automation boundary for designing.

DATA FLOW DIAGRAM

The data flow diagram (DFD) is one of the most important tools used by
system analysts. There are four components in DFD. Process, terminators, data flow,
and data source are the four components of DFD. Circles are used to represent the
process, data flows are represented using a thin line with arrow, the terminators are
represented using rectangle and the data source is represented as an open - ended
rectangle.

Unlike detailed Flowchart, Data Flow Diagram does not supply detailed
description of the modules but graphically describes a systems data and how the
data interact with the system.

A data flow diagram has the purpose of clarifying system requirements and
identifying major transformation that will become programs in system design. It is
the starting point of the system design phase that functionally decomposes the
requirements specifications down to the lowest level of details. A data flow diagram
consists of a series of bubbles joined by lines. The bubbles represent data process
and the line represents data flow in the system. Dataflow diagrams are also known
as bubble chart. It consists of a series of bubbles joined by lines. The bubbles
represent data transformation and the lines represent the dataflow in the system.
Data Flow diagram represents the flow of data rather than how they are process. So
it doesnt depend on hardware, software and data structure and file organization.

An arrow identifies the data flow in motion. It is a pipeline through which information is
flown like the rectangle in the flowchart. A circle stands for process that converts data into
information. An open, ended box represents a data store, data at rest or a temporary repository of
data. A square defines a source or destination of system data.

DATA FLOW

A data flow moves data between processes or between processes and data
stores. As such, it represents a data value at some point within a computation and
an intermediate value within a computation if the flow is internal to the diagram.
This value is not changed.

The names of input and output flows can indicate their roles in the
computation or the type of the value they move. Data names are preferably nouns.
The name of a typical piece of data, the data aspect, is written alongside the arrow.

CONTROL FLOW

A control flow is a signal that carries out a command or indicates that


something has occurred. A control flows occurs at a discrete point in time. The
arrow indicates the direction of the control flow. The name of the event is written
beside the arrow. Control flows can correspond to messages in CCDs or events in
STDs. However because they duplicate information in the DFD, use them sparingly.

RULES USED FOR CONSTRUCTING A DFD

Process should be named and numbered for easy references. Each name
should be representative of the process. The direction of flow is from top to bottom
and from left to right. That is data flow should be from source and destination. When
a process is exploded into lower level details, they are numbered. The name of the
data stores, sources and destinations are written in capital letters. Process and data
flow names have the first letter of each word capitalized. The DFD is particularly
designed to aid communication. If it contains dozens of process and data stores it
gets too unwieldy. The rule of the thumb is to explode the DFD into a functional
level

SAMPLE DFD

ENTITY RELATIONSHIP DIAGRAM

An entity-relationship diagram is a graphical depiction of organizational


system elements and the association among the elements. E-R diagrams can help
define system boundaries. The entity relationship diagram is also called as ERD or
E-RD is a network model that describes the stored data layout of the system at the
high level of abstraction. The ERD is an effective modeling tool for communicating
with DBA diagram. Entity relationship diagram depict data in its rest state-data
stores. An entity is anything real of abstract about which we want to store data.
Most entities correspond to person, objects, events or locations. It is represented by
relationship symbol, which is a decision box.

An E-R diagram may also indicate the cardinality of a relationship. Cardinality


is the number of instances of one entity that can, or must, be associated with each
instance of another entity. In general we may speak of one-to-one, one-to-many, or
many-to-many relationships.

The components of the ERD are object type, the relationship, associative
object type, super type /subtype indicators.

Object type , It a rectangular box and it represents a collection or a set of


objects.

Relationships , Objects are connected to one another by relationships. A


relationship represents the set of connections between the objects and it is
represented by a diamond box.
Associative Object Type Indicators, It is a special notation in the ERD. This
represents something that functions both as an object and a relationship.

Super type / Subtype Indicators, The super type / subtype indicators consists
of object type and one or more subcategories, connected by a relationship.

ENTITIES AND ENTITY SET

An entity is an object that exists and is distinguishable from other objects. For
instance, pair with S.I.N. 890-12-3456 is an entity, as he can be uniquely identified
as one particular person in the universe. An entity may be concrete (a person or a
book, for example) or abstract (like a holiday or a concept). An entity set is a set of
entities of the same type (e.g., all persons having an account at a bank). Entity sets
need not be disjoint.

An entity is represented by a set of attributes.

OPTIONAL RELATIONSHIP

It means that there may be instances of the first entity, which are not
associated with any instance of the second entity. For example, employee-spouse
relationship has to be optional because there could be unmarried employees. It is
not correct to make the relationship mandatory.

NORMALIZATION

In relational database design, the process of organizing data to minimize


redundancy is called NORMALIZATION. Normalization usually involves dividing a
database into two or more table and defining relationships between tables. The
objective is to isolate data so that addition, deletion and modification of a field can
be made in just one table and then propagated through the rest of the database via
defined relationships.

There are five normal forms, each with increasing levels of normalization
FIRST NORMAL FORM (1NF): Every cell in the table must have only one value
(i.e.,) it should not have multiple values.
SECOND NORMAL FORM (2NF): All non-key attributes must be fully functional
dependent on the primary key and not just the part of the key.
THIRD NORMAL FORM (3NF): The database must be in second normal form
and non-prime attribute should be transitively dependent on the primary key.
FOURTH NORMAL FORM (4NF): It deals with multiple values dependencies.

FIFTH NORMAL FORM (5NF): It deals with joined dependencies. Database is


generally normalized up to 3NF, as every cell in the table has only one value
i.e. it does not have multiple values. All non-key attributes are fully
dependent on the primary key and not just the part of the key and non-prime
attribute is transitively dependent on

4.1 DATABASE DESIGN

A database is a collection of interrelated data stored with minimum redundancy to serve


many users quickly and efficiently. The general objective of database design is to make the data
access easy, inexpensive and flexible to the user.

Sets of fundamental design concepts are evolved over the past here decades. Although the
degree of interest in each concept has varied over the years, each has stood the test of time.
Fundamental design concepts provide the necessary framework for getting it right, Design is
defining a model of the new system and continues by converting this model to a new system.

The method is used to convert the model of the proposed system into
computer specification. Data models are converted to a database and processes
and flow to user procedures and computer programs. This new system may be built
by a fresh or by changing the existing system. The detailed design starts with three
activities, database design, user design and program design.

Data Base Design

Table Name: Student Master


Primary Key: Std_Id
COLUMN NAME DATA TYPE SIZE DESCRIPTION
Std_Id Varchar 12 Student Id
Std_Name Varchar 50 Student Name
Std_Dep Varchar 10 Student Department
Std_Year Date 10 Student Year
Std_Batch Varchar 10 Student Batch

Address Varchar 10 Address

Contact Varchar 10 Contact

Table Name: Staff_Master


Primary key: Staff_Id
COLUMN NAME DATA TYPE SIZE DESCRIPTION

Staff_Id Varchar 20 Staff Id


Staff_Name Varchar 50 Staff Name
Staff_Dep Varchar 20 Staff Department
Staff_Add Varchar 10 Staff Address
Contact Varchar 10 Contact
Staff_Salary Varchar 12 Staff Salary
Table Name: Attendance Master
Primary key: Att_Id
Foreign key: Std_Id, Staff_Id

COLUMN NAME DATA TYPE SIZE DESCRIPTION

Att_Id Varchar 20 Attendance Id


Class Varchar 20 Class
Batch Varchar 20 Batch
Std_Id Varchar 10 Student Id
Hr Varchar 10 Hours
Status Varchar 12 Status
Staff_Id Varchar 50 Staff_Id
Date Date 10 Date
Day_Order Datetime 10 Day order
Table Name: Time Table
Primary key: Table_Id
Foreign key: Hr0, Hr1, Hr2, Hr3, Hr4, Hr5, Hr6,Staff_Id
COLUMN NAME DATA TYPE SIZE DESCRIPTION

Table_Id Varchar 20 Table Id


Class Varchar 50 Class
Year Date 20 Year
Batch Varchar 10 Batch
Day_Order Varchar 10 Day Order
Hr0 DateTime 12 Hours0
Hr1 DateTime 12 Hours1
Hr2 DateTime 12 Hours2
Hr3 DateTime 12 Hours3
Hr4 DateTime 12 Hours4
Hr5 DateTime 12 Hours5
Staff_Id Varchar 12 Staff Id

4.2 INPUT DESIGN

The input requirement for the system involves the process of converting the
user oriented inputs to a computer format. Collecting the input data for a system is
an expensive one. The input design should be validated such that it is free from
erroneous data. The user interface requirements are important input design, which
helps users how to access or enter data in the input form. The data is validated by
the system if they are any errors the system will give error messages, which is easy
to understand by the users. USER-ID: The users can log on to the system with the
user-id, which helps the system to identify the users.

PASSWORD: This is a facility that along with the user-id allows a user to log on to
the system.
A source document differs from a turnaround document in that the former
contains data that change the status of a resource while the latter is a mobile
readable needed. Social network requirement satisfaction throughput is the number
of error-free transactions entered during a specified time period.

There are several activities involved in input processes. They are


DATA CONTROL

There are several reasons why an effective design should control the quantity
of data for input. The input phase of computing can be slow process that can take
many times longer than the time needed by computers to carry out their tasks. By
reducing the analyst can speed the entire process from data capture to processing
to providing results to users.
DATA VERIFICATION

Data Verification is intended to find errors. The data is verified after the users
had entered the input data.
DATA VALIDATION

Input data are validated to minimize error in data entry. Computer input
procedures are designed to detect errors in the data at a lower level of detail which
is beyond the capacity of the control procedures. These are combined with the
design of their input process itself.
BASIC PRINCIPLES

Avoid multiple entry of same info


Minimize keystrokes

Utilizing default values


TYPES OF INPUT

Text or Numbers
Selection box
Consistency check
Database check
4.3 OUTPUT DESIGN

Output is the most important and direct sources of information to the user.
Efficient and intelligent output design improves the systems relationship with the
user thus helping in the process of the decision making. Audio information
transactions are generally referred to the results and the information that are in the
activities of operational information shared in to the cloud.

The output design consists of the two stages namely the output definition
stage and the output specification stage. A quality output is one, which meets the
requirements of the end user and presents the information clearly. In any system
results of processing are communicated to the users and to other mo through
outputs. In the output design it is determined how the information is to be displayed
for immediate need and also the soft copy. Outputs Activities computers are
required primarily to communicate the results of processing to the users. They are
also used to provide a permanent copy of these results for later consultation.

It is the most important and direct source information to the user. Efficient
and intelligent output design improves the systems relationship the user and helps
in decision-making. It is necessary that the output reports be compatible format
with the automatically. The output has been designed in mind. Output design is the
basis by which many users evaluate the usefulness of the system. The output
forms used in this mobile application are required for query response and reports.
The emphasis is required for producing the hard copy of the information requested
or displaying the output on a mobile screen.
5. SYSTEM TESTING AND IMPLEMENTATION

5.1 SYSTEM TESTING

Testing is vital to the success of the system. System testing makes a logical
assumption, if all the parts of the system are correct; the goal will be successfully
achieved. System testing is the stage of implementation that we aimed at assuring
that the system works accurately and efficiently before live operation commences.

PURPOSE OF TESTING

A failure occurs when a program misbehaves. Thus a failure is the statistical


property of a system in execution. A fault exists in program code. A fault may cause
of failure. If there is a no fault in the program then the program cannot fail. Software
testing is a critical element of software quality assurance and represents the
ultimate review of specification, design and coding. The user tests the developed
system and changes are made according to their needs. The testing phase involves
the testing of developed system using various kinds of data.

The objectives of testing are the process of executing the program with the
intention of finding an error.

A good test is one that has a high probability of finding an as-yet-


undiscovered error.

A successful test is that which uncovers as-yet-undiscovered error.

Therefore the most useful approach and practical approach is aid the
understanding that testing is the process of executing a program explicit indention
of finding errors that is making the program fall.

5.1.1Testing Methodologies
The following are the Testing Methodologies

Unit Testing
Integration Testing
Validation Testing
System Testing
Activity Testing
Content Provider Testing

UNIT TESTING

Unit testing focuses verification effort on the smallest unit of software design
the module. The relative complexity of the tests and the errors detected as a result
is limited by the constrained scope established for unit testing. The unit test is
always white box oriented and the step can be conducted in parallel for multiple
modules. According to unit testing the router system is error free. Unit testing has
been performed for all the form modules. The syntax and logical errors has been
corrected then and there. The output has been tested with the manual.

INTEGRATION TESTING

Integration testing is a systematic technique for construction the program


structure while the same time conducting tests to uncover errors associated with
interfacing. The objective is to take unit tested modules and build a program
structure that has been dictated by design. Integration Testing is performed for the
modules like Service. Correction is difficult because the isolation of causes is
complicated by the vast expanse of the entire program once there errors are
corrected new ones appear and the process continues and have endless loop.
According to the integration testing in the intrusion detection system all the
modules are integrated and tested for its accuracy.

VALIDATION TESTING

Validation can be defined in many ways. But a simple definition is that


validation succeeds when the software functions in a manner that can be
reasonably expected by the customer. The specification contains a section called
validation testing approach. The validation testing is also known as beta testing.
The intrusion detection system was tested using above specified test. The validation
testing is performed for all the modules that the proper input and output has been
checked.

SYSTEM TESTING

System testing is the testing of the integrated black box application, against
the applications requirements during the construction phase. The purpose of
system testing is it identifies band correct errors in candidate system. System
testing is the stage of implementation which aims at ensuring that the system
accurately and efficiently before the actual operation comments. In the project the
system testing is implemented for checking the security requirements like
prohibiting from unauthorized access, failures during invalid conditions and the
operational availability requirements.

ACTIVITY TESTING

Android includes powerful tools for testing applications. The tools extend JUnit with
additional features, provide convenience classes for mock Android system objects, and use
instrumentation to give you control over your main application while you are testing it. The
entire Android testing environment is discussed in the document Testing Android Applications.

This tutorial demonstrates the Android testing tools by presenting a simple Android
application and then leading you step-by-step through the creation of a test application for it. The
test application demonstrates these key points:

An Android test is itself an Android application that is linked to the application under test
by entries in its AndroidManifest.xml file.

Instead of Android components, an Android test application contains one or more test
cases. Each of these is a separate class definition.

Android test case classes extend the JUnit TestCase class.

Android test case classes for activities extend JUnit and also connect you to the
application under test with instrumentation. You can send keystroke or touch events
directly to the UI.

You choose an Android test case class based on the type of component (application,
activity, content provider, or service) you are testing.
Additional test tools in Eclipse/ADT provide integrated support for creating test
applications, running them, and viewing the results.

The test application contains methods that perform the following tests:

Initial conditions test. Tests that the application under test initializes correctly. This is also
a unit test of the application's onCreate() method. Testing initial conditions also provides
a confidence measure for subsequent tests.
UI test. Tests that the main UI operation works correctly. This test demonstrates the
instrumentation features available in activity testing. It shows that you can automate UI
tests by sending key events from the test application to the main application.
State management tests. Test the application's code for saving state. This test
demonstrates the instrumentation features of the test runner, which are available for
testing any component.

CONTENT PROVIDER TESTING

Content providers, which store and retrieve data and make it accessible across
applications, are a key part of the Android API. As an application developer you're allowed to
provide your own public providers for use by other applications. If you do, then you should test
them using the API you publish.

This document describes how to test public content providers, although the information is
also applicable to providers that you keep private to your own application. If you aren't familiar
with content providers or the Android testing framework, please read Content Providers, the
guide to developing content providers, and Testing Fundamentals, the introduction to the
Android testing and instrumentation framework.

ACCORDING TO PROJECT

Once individual Activity testing are completed, modules are assembled to


perform as a system. Then the top-down testing which begins from upper level
modules testing has to be done to check whether the entire system is performing
satisfactorily. After the unit testing was performed combining all the testing did
system. System testing is actually a series of different tests whose primary purpose
is to fully exoreic the computer-based system. Although each test has a different
purpose, all work to verify that all system elements have been properly integrated
and perform allocated functions.

During testing I tried to make sure that the product does exactly what is
supposed to do. Testing is the final verification and validation activity within the
organization itself. In the testing stage, I try to achieve the following goals; to affirm
the quality of the product, to find and eliminate any residual errors from previous
stages, to validate the software as a solution to the original problem, to
demonstrate the presence of all specified functionality in the product, to estimate
the operational reliability of the system. During testing the major activities are
concentrated on the examination and modification of the source code.

5.2. SYSTEM IMPLEMENTATION

System implementation is considered to be the most crucial stage in


achieving a successful system because if it is not properly planned and controlled, it
can because chaos. Implementation is the stage when theoretical design has been
converted into a working system. It involves the careful planning, investigation of
the current system and its constraints on implementation, design of methods to
achieve changeover, training of staffs in the changeover procedures and evaluation
of changeover methods.
System implementation discusses about the implementation plan, system
testing, how to take backups. It also involves user training for minimizing resistance
to change and giving the system a chance to prove its worth. A software application
in general is implemented after navigating the complete life cycle method of a
project. Various life cycle processes like requirement analysis, design phase, testing
and verification, finally followed by the implementation phase results in a successful
project management.

As the software is to be implemented in a high standard industrial sector,


various factors such as application environment, user management, security,
reliability and finally performance are taken as key factors throughout the design
phase. These factors are analyzed step by step and the positive and negative
outcomes are noted before the final implementation. Security and authentication is
maintained in both user level as well as the management level. The data is stored in
the server with SQL Server, which is highly secured in a web server; the user level
security is managed with the help of password options and sessions, which finally
ensures that all the transactions are made securely.

The applications validations are taken into account of the entry levels
available in various modules. Possible restrictions like number formatting, date
formatting and confirmations for both save and update options ensure the correct
data to be fed into the database.

6.FURTHER SCOPE OF THE PROJECT


The system is highly flexible, so that the maintenance and further
amendments based on the changing environment and requirements can be made
easily. Any changes that may lead to the system failures are prevented with security
measures.

It can be further developed to include more operational and analysis, as


changes are required in the system to adapt to the external development. Further
enhancement can be made to the system at any later point. Coding procedures can
be modified according to the needs of the user. The future scope of our project is
that it can be implemented over the Internet to administrator and monitor systems
connected to www. We propose more to introduce authentication and security for
controlling and monitoring over the Internet. Further additions can be made to this
project. Time constraint prohibited me from pursuing them.

A viewer is provided on the cellular phone that enables the user to see and
manipulate the desktop of various remote systems such as MS Windows, Macintosh,
and UNIX. The system to be accessed must be running the client program and it
must be attached to a network.

This project is designed with the future in mind. Due care has been taken to
assimilate the needs for future development. The software is constructed along the
lines suggested by the users.

A new tool creation is under process which will have the drag and drop
options which help the users generate reports by themselves and it is considered
to be a major enhancement for the application.
7.CONCLUSION

The project entitled Attendance Managemente Systemhas been


successfully completed and implemented. It also provides the necessary
requirement as per the College needs. The system provides maximum user
interaction and flexibility. It clearly gives the client a competitive advantage tool
that would help improve the process of service providing.

A Testing and validity check has also been carried out in different formats
that specifically define each transaction. Once the testing of whole system has been
with a data and the various outputs obtained are according the requirements; the
efficiency of the new system Attendance Management Systemwas found out to
better than existing manual system in all respects.

The software user guidelines which are provided make the user
to access through the correct path. Handling seems to be very easy and efficient.
Finally it acts as a user friendly, advantageous and is of easy to exchange the data
of mobile. The system is designed based on the objectives prepared in the analysis
phase of the existing system. The software user guidelines which are provided make
the user to access through the correct path. Handling seems to be very easy and
efficient. Finally it acts as a user friendly, advantageous and is of easy maintenance.
The system is designed based on the objectives prepared in the analysis phase of
the existing system.
The system is designed to be user interactive and user friendly. It reduces all
the work with accuracy and reliability. System computerization makes the works
with accuracy and reliability. System Computerization the work quicker and also
maintains the transactions accurately. The computerization helps the organization
to change according to the modern trend. Since the requirements may increase in
future, the system can be easily modified accordingly, as the system has been
modularized. The future expansion can be done in a concise manner in order to
improve the efficiency of the system. It provides quality assurance for every request
of the customers

8.BIBLOGRAPHY

BOOKS REFERRED
1. WEI-MENG LEE Edition, Beginning Android Application Development Wiley
Publishing Inc.
2. Rick Rogrts,Jhon Lombardo,Zigurd & BLAKE MEIKE Android Application
Development O,REILLY
3. Matthew Baxter-Reynolds Multimobile Development Building Applications
for iPhone and Android Discover developing an application end-to-end
natively professional android 2 application development
4. Reto Meier .Professional Android 2 application Development
5. Roger S Pressman, Software Engineering, Fifth Edition, BPB Publications.
6. Ron Petrusha and Paul Lomax, Visual Basic 2005, 3rd Edition, Shroff
publications.
7. Silberschatz, Korth, Sudharsan Database System Concepts, McGraw
Fourth Edition Hill Publications

WEBSITES REFERRED
www.stackoverflow.com
www.datamodel.com

www.dotnetcurry.com

www.sqltutorials.com

www.msdn.com

http://developer.android.com

www.helloandroid.com

www.udemy.com

www.script-tutorials.com

www.json.org

9.APPENDIX

9.1 DATA FLOW DIAGRAM

Level 0:
Level 1:

9.2ENTITY RELATIONSHIP DIAGRAM


9.3 Activity Screen Design

Opening Screen

Figure No 9.4.2

Sample Codes:
Codes for Main page:

<?xml version="1.0" encoding="utf-8"?>


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"

android:orientation="vertical" >

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >

<TextView
android:id="@+id/tv_header"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Student Register"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#ff0000"
android:textSize="6pt"
android:textStyle="italic" />
</LinearLayout>

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:visibility="gone"
android:orientation="horizontal" >

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:text="Id"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/ed_id"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="88dp"
android:layout_marginRight="10dp"
android:enabled="false"
android:layout_weight="1"
android:ems="10" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp" >

<TextView
android:id="@+id/newform_View2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:text="Name"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/ed_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="60dp"
android:layout_marginRight="10dp"
android:layout_weight="1"
android:ems="10" >

<requestFocus />
</EditText>
</LinearLayout>

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal" >

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:text="Class"
android:textAppearance="?android:attr/textAppearanceMedium" />

<Spinner
android:id="@+id/ed_class"
android:layout_width="match_parent"
android:layout_height="wrap_content" />

</LinearLayout>

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp" >

<TextView

android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:text="Roll No"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/ed_roll"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="40dp"
android:layout_marginRight="10dp"
android:layout_weight="1"
android:ems="10"
android:inputType="textPostalAddress" />
</LinearLayout>

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp" >

<TextView

android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:text="Phone"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/ed_phone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="55dp"
android:layout_marginRight="10dp"
android:layout_weight="1"
android:maxLength="10"
android:ems="10"
android:inputType="phone" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp" >

<TextView

android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:text="Password"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/ed_password"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="55dp"
android:layout_marginRight="10dp"
android:layout_weight="1"
android:ems="10"
android:inputType="textEmailAddress" />
</LinearLayout>

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp" >

<TextView

android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:text="Department"
android:textAppearance="?android:attr/textAppearanceMedium" />

<Spinner
android:id="@+id/ed_depart"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:visibility="gone"
android:layout_marginTop="20dp" >

<EditText
android:id="@+id/ed_status"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="55dp"
android:layout_marginRight="10dp"
android:layout_weight="1"
android:visibility="gone"
android:hint="Status"
android:ems="10"
android:inputType="text" />
</LinearLayout>

<Button
android:id="@+id/btn_save"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Save" />

</LinearLayout>
</ScrollView>

</LinearLayout>

package com.example.classmanagement;

import java.util.ArrayList;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.Toast;

public class Register extends ActionBarActivity {

Button btn_save;
EditText
Ed_Name,Ed_Age,Ed_Phone,ed_id,ed_user,ed_pass,ed_email,ed_roll;
Spinner spn_gender,ed_depart,ed_class;
String[] accessarea;
String[] departnam={"Bsc IT","Bsc Cs","Bsc CT","BCA"};
ArrayList<Integer> accessareaid = new ArrayList<Integer>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_student);

ed_id=(EditText)findViewById(R.id.ed_id);
Ed_Name=(EditText)findViewById(R.id.ed_name);
ed_class=(Spinner)findViewById(R.id.ed_class);
Ed_Phone=(EditText)findViewById(R.id.ed_phone);
ed_roll=(EditText)findViewById(R.id.ed_roll);
ed_depart=(Spinner)findViewById(R.id.ed_depart);
btn_save=(Button)findViewById(R.id.btn_save);

ed_pass=(EditText)findViewById(R.id.ed_password);
String[] classname={"I","II","III"};
ArrayAdapter<String> arrayA = new ArrayAdapter<String>(
Register.this,
android.R.layout.simple_list_item_1,classname);
ed_class.setAdapter(arrayA);
ArrayAdapter<String> arrayAdapter1 = new ArrayAdapter<String>(
Register.this,
android.R.layout.simple_list_item_1,departnam);
ed_depart.setAdapter(arrayAdapter1);
btn_save.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Savedetails();
}
});
}
public void Savedetails()
{
QueryAdapter mDbHelper = new QueryAdapter(this);
mDbHelper.createDatabase();
mDbHelper.open();
String name = Ed_Name.getText().toString();
String roll = ed_roll.getText().toString();
String classes = ed_class.getSelectedItem().toString();
String depart = ed_depart.getSelectedItem().toString();
String contact = Ed_Phone.getText().toString();

String pass=ed_pass.getText().toString();

if(name.length()==0)
{
Toast.makeText(getApplicationContext(), "please enter the
valid input ", Toast.LENGTH_SHORT).show();
return;
}
if(contact.length()<10)
{

Toast.makeText(getApplicationContext(), "please enter valid


contact number ", Toast.LENGTH_SHORT).show();
return;
}

if(pass.length()==0)
{

Toast.makeText(getApplicationContext(), "please enter the


valid input ", Toast.LENGTH_SHORT).show();
return;
}

mDbHelper.SaveStd( name, roll, classes, depart, pass, contact);


Toast.makeText(getApplicationContext(), "New Student Register",
Toast.LENGTH_SHORT).show();
mDbHelper.close();

You might also like