Académique Documents
Professionnel Documents
Culture Documents
INTRODUCTION
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 staff’s 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.
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
1
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
Preference’s composed versatile application
MODULES DESCRIPTION
2
CHAPTER-2
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 .
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
fromStaff wise and Department with Class Wise Report Generated. The project
consists of three users namelyadmin, Staff, Student,This applicationsorganized
based user login Preferences can register their details and through mobile
application the users can find the easily and request for their help.
3
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.
3.SYSTEM REQUIREMENTS
DEVELOPMENT ENVIRONMENT
4
The configuration given below is the Hardware handled for the system development.
TOOLS REQUIRED
Android : Android 3.1.2 Platform
Android adt plug-in.
5
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.
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
6
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
7
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.
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 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 e7osed 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
8
Media Libraries
Packet Video’s 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
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
SQLite
Android Runtime
9
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.1Eclair
v2.2.xFroyo
10
CHAPTER-3
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 7 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
11
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 Dalvikexecutables), resource files, etc
WEB SERVICE
A Web service is a method of communication between two electronic devices over the
webThe W3C defines a "Web service" as "a software system designed to support
interoperablemobile-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 SOAPmessages, typically conveyed using HTTP with an XML serialization in
conjunction with other Web-related standards.
"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
12
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 e7ressed 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.
Service-oriented architecture
13
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.
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.
14
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').
15
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 e7ires). 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.
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.
16
OPERATING SYSTEM
WINDOWS 7
Windows 7 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 "7" stand for e7erience. Windows 7 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 7 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 7 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 7 professional mitigate many of the most common system failures encountered in
earlier versions of windows. A system service that helps user’s installs, configure, track, update and
remove software programs correctly which helps to minimize user downtime and increase system
stability.
In windows 7 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
17
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-commercially—by 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
18
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 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.
19
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.
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 system’s 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 doesn’t 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
20
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.
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 e7loded 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 e7lode the DFD into a functional level
SAMPLE DFD
ENTITY RELATIONSHIP DIAGRAM
21
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.
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.
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
22
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
23
CHAPTER-4
DATABASE DESIGN
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.
24
Table Name: Staff_Master
Primary key: Staff_Id
COLUMN NAME DATA TYPE SIZE DESCRIPTION
25
Table Name: Attendance Master
Primary key: Att_Id
Foreign key: Std_Id, Staff_Id
26
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
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 e7ensive 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.
27
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
Text or Numbers
Selection box
Consistency check
Database check
28
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 system’s 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.
29
CHAPTER-5
SYSTEM TESTING AND IMPLEMENTATION
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.
Therefore the most useful approach and practical approach is aid the understanding that testing is
the process of executing a program e7licit 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
30
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 e7anse 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 e7ected 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 application’s
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 implementationwhich 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.
31
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 JUnitTestCaseclass.
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.
32
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 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.
33
5.2. SYSTEM IMPLEMENTATION
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 application’s 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.
34
CHAPTER-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.
35
CHAPTER-7
CONCLUSION
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 System‖was
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
e7ansion 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
36
CHAPTER-8
BIBLOGRAPHY
BOOKS REFERRED
1. WEI-MENG LEE Edition, Beginning Android ApplicationDevelopment Wiley Publishing Inc.
2. Rick Rogrts,JhonLombardo,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
37
CHAPTER-9
9.2ENTITY RELATIONSHIP DIAGRAM
9.3 Activity Screen Design
Opening Screen
38
Sample Codes:
Codes for Main page:
<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns: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"
39
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"
40
41
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"/>
42
</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"
43
44
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>
45
packagecom.example.classmanagement;
importjava.util.ArrayList;
importandroid.os.Bundle;
import android.support.v7.app.ActionBarActivity;
importandroid.view.View;
importandroid.widget.ArrayAdapter;
importandroid.widget.Button;
importandroid.widget.EditText;
importandroid.widget.Spinner;
importandroid.widget.Toast;
Button btn_save;
46
47
EditTextEd_Name,Ed_Age,Ed_Phone,ed_id,ed_user,ed_pass,ed_email,ed_roll;
Spinner spn_gender,ed_depart,ed_class;
String[] accessarea;
@Override
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"};
Register.this, android.R.layout.simple_list_item_1,classname);
ed_class.setAdapter(arrayA);
48
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
Savedetails();
});
mDbHelper.createDatabase();
mDbHelper.open();
49
String contact = Ed_Phone.getText().toString();
String pass=ed_pass.getText().toString();
if(name.length()==0)
return;
if(contact.length()<10)
return;
if(pass.length()==0)
return;
50
mDbHelper.SaveStd( name, roll, classes, depart, pass, contact);
mDbHelper.close();
51