You are on page 1of 78

1.

Company Profile

Gitstein Technologies is an ISO 9001-2008 certified


training and IT service provider company.We possess
a team of highly educated, experienced and talented
professionals. Every Gitsteiner is an expert in his own
field. We provide quality and affordable training and
services.We bring innovative ideas and the power of technologies to our clients and
students with which they can grow into the best and fastest way.
Gitstein Technologies started in 2011 with one mission in mind and that is to provide
world class services in the field of Software Development, Web Development, Remote
Infrastructure Management, Embedded Systems, Robotics and Mechanical Engineering.
Our training division started in 2015. We experienced that trainings provided by institutes
in the market is not up to the industry standards and do not make students ready for job as
it lacks in-depth practical knowledge. We built a team of working professionals from the
industry who can provide trainings based on their vast industry experience. Our services
and trainers, team includes gitsteiners that had experience of working with companies
like Convergys, Cognizant, IBM, Bharti Airtel, Alethe Consulting, Tulip Telecom etc.

Gitstein provides teams of dedicated software engineers who know how to satisfy client
testing requirements with efficient management skills and software product engineering
methodologies:
 We overcome the challenges of sketchy specifications, 48-hour turnarounds and
complicated end-user software needs.
 We maximize the benefits of each offshore team by breaking the communication,
cultural and time-difference barriers.
 We overcome the challenges of working with an offshore team and delivering a
quality application while meeting time-to-market demands.

Bahra Group of Institutions 1


 We have nearly a decade of experience in streamlining our offshore software product
engineering practice.
 We are adaptable to our customers´ needs.
 We are an ISO 9001:2008 certified company, so we focus on international-standard
quality, strict adherence to deadlines and total client/partner satisfaction.

Gitstein Technologies has grown 20% - 50% per year since its founding, completing
hundreds of successful engagements for clients such as Adobe, IBM, Oracle, Cisco,
Prudential, Mass Mutual, Luxottica, Ford, and host of startup companies.

Approach
Gitstein Technologies has built a team of seasoned professionals who know how to break
the technology barriers and deploy high-capability software practices, resulting in the
best quality software applications and projects. We have implemented an offshore model
that gives our clients a competitive advantage and improved return on their investment. In
our hybrid model, we couple offshore teams with local management. We provide the
necessary resources every step of the way to ensure success, whether it is by providing a
complete end-to-end product development team or augmenting an existing IT support
engineering team.

Values & Culture


Our mission is to provide companies with comprehensive outsourcing software solutions.
Our goal is to optimize our client´s software efforts while meeting their objectives and
schedules.

Quality
To accomplish this mission, we have built a team of expert engineers who know how to
go beyond the checklist to deploy high-capability practices resulting in high-quality
software releases and maintenance, time after time. We also have developed an of on-site

Bahra Group of Institutions 2


model that gives our clients a competitive advantage and improved return on their
investment.

Dedication
Gitstein Technologies is dedicated to providing high-caliber offshore software product
engineering services overseen by a local management team with a proven record of
success. This dynamic partnership of offshore technical talent and local management
provides cost-effective software solutions while avoiding the risks that often accompany
a remote software services team

Flexibility
Gitstein Technologies is very flexible in adapting to your environment. We understand
the urgency of performing the software services you need in the time that you have. Our
staff of professionals can take your project from the initial design phase to completion, by
providing the necessary resources every step of the way toward success. Our outsourcing
software services include Software Development and QA, Professional Services, IT
Management and Product Support.

TECHNOLOGIES @ Gitstein
 Software Development
 Web Development
 Search Engine Optimization
 Software Testing(Manual and Automated)
 Mobile App Development(Android and Iphone)
 Remote Infrastructure Management
 Network Administration
 Embedded Systems
 Robotics
 Mechanical Engineering

Bahra Group of Institutions 3


TERMS OF REFERENCES

In this competitive environment, wasting time in manually updating records and carry the
registers all the time is almost absurd. This application is a complete package which
comprises of all the teacher and student daily works. Lots of time of the teacher gets
wasted on daily on maintaining the records. They are left with less time for teaching
Instead, this time should be used in teaching in student’s better future. This application
saves the time, which teacher spent on taking attendance manually by using GPS which
matches the student’s location with the Rayat Bahra Patiala Campus set according to
Google maps. If the location gets matched then student gets marked present otherwise
absent automatically and list of the students present gets shown on teacher’s phone.If
teacher is at home then also he is always connected with the student and can upload can
upload MST Marks , Notice, Notes,syllabus, question paper, assignment, Aptitude which
will be directly uploaded to student mobile phone and the teacher will no more has need
to contact any student manually and Students no more have need to look for the teacher
for the documents they can directly view that thing on the mobile phone. This application
will be implemented in college for one department.

Scope:
This application can be used for a department of the college. specified earlier, in which
all the privileges are given to the Faculty of the college (admin of application). Accounts
of all the students will be created in this application, but have less privileges than faculty.
• The application will work in online mode.

• Unique IDs will be created for every faculty and student, Entire data will be
stored on the cloud (Firebase Console).

• Faculty will update Student as well as faculty record.

• Attendance will be taken using GPS.

Bahra Group of Institutions 4


• Faculty will upload and update MST Marks.

• Faculty will upload Syllabus, Notice, Notes, Assignment, Question Paper,


Aptitude.

• Faculty will assign a user name and password to the students and faculty.

• Students can share their problem with the faculty through uploading complaint.

• The student will be able to view uploaded Syllabus, Notice, Notes, Assignment,
Question Paper, Aptitude.

• The student will be able to practice all sections of aptitude and got their marks
calculated automatically.

• Faculty will have authority to add or remove a teacher and a student in the
database.

• Faculty will keep track of the entire app.

• The student will able to store pdf file uploaded by the teacher in their phone
storage by clicking on the name of the pdf file.

• The student will be able to send email to anyone through this app.

• The student will have all the contacts of the officials as well as teachers through
this app.

Perceived benefits:
As stated earlier, it will result in saving time of teacher who updates the record
manually, use that time in taking his/her own lecture or doing some productive work.
This application reduces proxy attendance.

Facts about GPS:


• The Global Positioning System (GPS) is a space-based satellite navigation system

Bahra Group of Institutions 5


• It provides location and timely information in all weather conditions, anywhere on
or near the Earth where there is an unobstructed line of sight to four or more GPS
satellites.

• GPS Receivers are available in most of the Smartphones, and PDA Devices.

• In this application, it will match keep track of the location of the student.

How Registration Works ?


• Faculty will add the faculty and student and assign them a user name and
password.
• A student cannot register himself, he has to ask the teacher for user name and password.

Bahra Group of Institutions 6


2. Project Overview

“Rayat Bahra Online App” is an online portal between students and faculty to diminish the
manual updating. This advanced system allows college faculty to share important data every
bit well as notifications with engineering students. It consists of a faculty login along with
student login. Faculty login opens up to both Student corner and faculty corner. Faculty may
upload documents of subject Syllabus, Timetable document, Notifications, e notes, Notices,
Question papers, MST marks etc. through their provided login. The text files are uploaded by
faculty in different corresponding Semesters. We aim to build this system on an online server
that permits faculty to upload data and students may view search and download required
documents through their android device. Here students only visit and download data of their
particular semester. Rest data are hidden. Faculty may access and upload/edit documents to
any semester or add any notice as desired.

Number of Modules-

The system after careful analysis has been identified to be presented with the following
modules and roles.

The modules involved are:


• Faculty Login
• Student Login
• Placements
• Departments
• About us
• Contact us
• Faculty Corner
➢ Home
➢ Add Student
➢ Add Faculty
➢ Delete Student

Bahra Group of Institutions 7


➢ Delete Faculty
➢ Update Student
➢ Update Faculty
➢ Update MST Marks
➢ Upload Assignment
➢ Upload Notice
➢ Upload Notes
➢ Upload Syllabus
➢ Upload Question paper
➢ Upload Aptitude
➢ Attendance
➢ MST Marks
➢ Student Record
➢ Faculty Record
➢ Complaint
• Student Corner
➢ Home
➢ Gallery
➢ Staff
➢ Gmail
➢ Complaint
➢ Attendance
➢ Syllabus
➢ MST Marks
➢ Assignment
➢ Question Paper
➢ Notes
➢ Notice
➢ Aptitude

FACULTY LOGIN

Bahra Group of Institutions 8


Only signed up faculty who has password and id given by some other faculty can login to
the application. If the faculty is not read until now then they can ask their fellow faculty,
who has registered account to add them using Add Faculty from their respective login.
After filling the needed information in the Add Faculty portal faculty may set out their
password and user name and use it to login to their report in the hereafter.
After clicking on the faculty corner icon it will open upwards to an Admin login screen
where after filling the user name and password a new screen will open which includes:

FACULTY CORNER

If faculty chooses this corner, then here faculty can upload the required documents from
their respective fragments, which will later on be showed in student corner.This corner
includes all the activities that are supposed to be done by teacher whenever required. It
will open up to navigation bar activity consists of the following:

Navigation Bar Header

This consists of the profile picture, Name, Email of the faculty who has login to the
application.

Navigation Drawer

Navigation Drawer consists of Home, Gallery, Gmail, Complaint, Staff module.

HOME

Home consists of Attendance, MST Marks, Complaint, Faculty Record, Student Record
module.

ATTENDANCE

Here, when teacher clicks on the Attendance button it opens up to a new screen
which consists of:-

Here,when teacher taps on it, it opens another screen which comprises of the Semesters
and teacher chooses the required semester then the screen which shows up comprises of

Bahra Group of Institutions 9


a spinner which has every one of the subjects of that specific semester and teacher needs
to choose the required subject after that teacher taps on the submit catch then the subject
name gets put away to one online firebase database from where subject name is gotten
and gets shown on the understudy's screen where the area of the understudy gets set
according to the GPS area naturally and is matched with area one that is set by the
engineer i.e Rayat Bahra group of institutions Patiala campus.. If the location gets
matched, then the student gets marked present, otherwise absent after that teacher clicks
on the show details where he finds the names of all the students whose attendance has
been marked after matching the location and faculty can use this list for future purpose or
to cross check whether the attendance is marked correctly or not.

MST MARKS

After clicking on this button it opens up to a screen comprising of the buttons designated
Semester1, Semester 2, Semester 3, Semester4, Semester 5, Semester6, Semester7,
Semester 8 and when required semester is selected it opens up to a screen consisting of
buttons named MST 1, MST2, MST3. When required MST is selected, then it opens up
to a new screen comprising of various Edittexts, namely Name where the teacher has to
fill student’s name, Roll No here, roll no of the student is filled and other number of
other Edittexts are just equal to the subjects that a particular semester possess. Here the
teacher has to fill the marks in respective edit text. Then submit button is to be clicked
after that all the information gets saved to the database storage and it gets back to the
screen in which there were buttons named MST and that saved information is further
fetched and displayed in the student corner in the tabular form. In Student corner MST
marks all the students can view their marks, but they can’t perform any editing on that
information in the table and teacher as well.

FACULTY RECORD

This section is in tabular form which consists of columns named Name, Email,
ContactNo, Password and rows contains their respective data. Table consists of
ScrollBar which allows user to scroll down the list horizontally and vertically. Only
faculty is able to see this section and check the record.

Bahra Group of Institutions 10


STUDENT RECORD

This section is in tabular form which consists of columns named Roll No, Parent
Contact, Name, Email, Contact No, Password and rows contains their respective data. A
table consists of ScrollBar which allows user to scroll down the list horizontally and
vertically. Only faculty is able to see this section and check the record and use it
hereafter.Student can alter the record in the table.It is for viewing only. Anyone having
registered user name and password can view the student record table.

COMPLAINT

It consists of a complaint submitted by the student to the teacher shown in a recycler


view containing Student Details like Semester, Roll no, Name and Message and
attachment which serves the purpose of a proof regarding the complaint.

ADD STUDENT

Here if a student is not registered until now then faculty can register the student here and
give the password and User name to the student. Which is to be used by the student to
login to Student login. It will open up to a screen which consists of a spinner containing
semester, an imagview where the image of the student is chosen from the phone storage
and is set on the imageview. Then in first, edittext is of Roll no, name, email, contact no,
parent contact no and password respectively. Then when submit button is clicked, then
all this information gets saved to the Firebase online Database with a table named Add
Student from where information is fetched and is shown in the Student Record and then
students can receive his password and user name from teacher after being registered.

ADD FACULTY

Here if a faculty is not registered until now then faculty who has already been registered
can register the faculty here and give the password and User name to the respective
faculty. Which is to be used by the faculty for login to faculty login. It will open up to a
screen which consists of an imagview where the image of the faculty is chosen from the
phone storage and is set on the imageview. Then in first, edittext is name, email, contact

Bahra Group of Institutions 11


no and password respectively. Then when submit button is clicked, then all this
information gets saved to the Firebase online Database with a table named Addfaculty
from where information is fetched and is shown in the Faculty Record and then faculty
can receive his password and user name from teacher after being registered.

UPDATE STUDENT

Here faculty can update name, password, roll no,parent contact no., image, email, contact
no according to the need. First the teacher has to fill roll no and then click on the show
details which will show all the details of the student in the respective edit texts and then
the teacher can change the details and then click on update which will update the
information and show updated information everywhere it is supposed to be shown.

UPDATE FACULTY

Here faculty can update name, password, image, email, contact no according to the need.
First the teacher has to fill name and then click on the show details which will show all
the details of the faculty in respective edit texts and then the teacher can change the
details and then click on update which will update the information and show updated
information everywhere it is supposed to be shown.

DELETE STUDENT

Here faculty will fill the student’s roll no and select the semester from the spinner, after
clicking on the delete button, the record of the particular student will get deleted.

DELETE FACULTY

Here faculty will fill the faculty’s name and after clicking on the delete button, the
record of the particular faculty will get deleted.

UPLOAD SYLLABUS

Bahra Group of Institutions 12


Here faculty can upload a syllabus of required semester, which will be selected by
clicking on the spinner. The file is to be chosen by clicking on the select file button and
then on clicking on upload syllabus it will get uploaded to the firebase database from
where it is fetched and shown in the student corner. The student can download the file by
clicking on its name and use it. Any faculty who has been registered can Upload
syllabus.

UPLOAD ASSIGNMENT

Here faculty can upload assignment for the required semester. Firstly semester is selected
from Spinner, Subject name, Title, Questions fills in respective edit text and then on
clicking the upload assignment button it gets uploaded to the Firebase online Database
from where it is fetched and shown in student corner. Any faculty who has been
registered can upload assignments.

UPLOAD NOTES

Here faculty can upload notes for the required semester. Firstly semester is selected from
Spinner, Subject name is filled in respective edit text and pdf file is selected by clicking
on the Select pdf file button, then by clicking the upload notes button it gets uploaded to
the Firebase online Database from where it is fetched and shown in student corner. The
student can download the file by clicking on its name and use it. Any faculty who has
been registered can upload notes.

UPLOAD NOTICE

If faculty wants to update the students with any kind of event or information regarding
college, then it can be done here. Firstly semester is selected from Spinner, Title,
message is filled in respective edit text and if faculty wants to upload any pdf or image
then it can be chosen by clicking n attach a pdf in case of pdf file or attach images in
case of image and then by clicking the upload notice button it gets uploaded to the
Firebase online Database database from where it is fetched and shown in student corner.
The student can download the file by clicking on its name and use it. Any faculty who
has been registered can upload notice.

Bahra Group of Institutions 13


UPLOAD TIMETABLE

Here faculty can upload the pdf file of the timetable document. The file is chosen by
clicking on the select file button and it gets uploaded to the Firebase online Database by
clicking the upload timetable button from where it is fetched and shown in the student
corner. The student can download the file by clicking on its name and use it. Any faculty
who has been registered can upload notice.

UPLOAD QUESTION PAPER

Here faculty can upload the pdf file of the Question paper document. The file is chosen
by clicking on the select file button and it gets uploaded to the firebase database by
clicking the upload timetable button from where it is fetched and shown in the student
corner. The student can download the file by clicking on its name and use it. Any faculty
who has been registered can upload notice.

UPLOAD APTITUDE

Here faculty can upload aptitude questions with their answers. By clicking on upload
Aptitude the screen which opens consists of four Buttons:

Verbal

If verbal button is clicked the here teacher is supposed to upload the verbal questions.
Firstly the semester is selected from spinner according to requirement. Secondly,
question, first option, Second option, Third option, Fourth option, Correct option is filled
in the respective edit texts. By clicking on the Upload button the question along with
options will get stored in the firebase database and from where it is fetched afterwards
shown in the student corner, There student can practice these questions. Any faculty who
has been registered can upload Verbal questions.

Quant

If quant button is clicked the here teacher is supposed to upload the quant questions.
Firstly the semester is selected from spinner according to requirement. Secondly,

Bahra Group of Institutions 14


question, first option, Second option, Third option, Fourth option, Correct option is filled
in the respective edit texts. By clicking on the Upload button the question along with
options will get stored in the Firebase online Database and from where it is fetched
afterwards shown in the student corner, There student can practice these questions. Any
faculty who has been registered can upload Quant questions.

Reasoning

If Reasoning button is clicked the here teacher is supposed to upload the reasoning
questions. Firstly the semester is selected from spinner according to requirement.
Secondly, question, first option, Second option, Third option, Fourth option, Correct
option is filled in the respective edit texts. By clicking on the Upload button the question
along with options will get stored in the Firebase online Database and from where it is
fetched afterwards shown in the student corner, There student can practice these
questions. Any faculty who has been registered can upload reasoning questions.

Technical

If technical button is clicked the here teacher is supposed to upload the technical
questions. Firstly the semester is selected from spinner according to requirement.
Secondly, question, first option, Second option, Third option, Fourth option, Correct
option is filled in the respective edit texts. By clicking on the Upload button the question
along with options will get stored in the Firebase online Database and from where it is
fetched afterwards shown in the student corner, There student can practice these
questions. Any faculty who has been registered can upload technical questions.

STUDENT LOGIN

Just signed up student who has password and id given by faculty can login to the
application. If the student is not registered until now then they can ask their respective
faculty, who has registered account to add them using Add Student from their respective
login. After satisfying the needed information in the Add Student portal student may get
their password and user name and use it to login to their report in the hereafter.After
clicking on the student corner icon it will open up to a Student login screen where after
filling the user name and password a new screen will open which includes:

Bahra Group of Institutions 15


STUDENT CORNER

Here students can view the required documents from their respective fragments,
uploaded by the faculty. They can’t perform any kind of updating of the documents. It
will open up to the navigation bar activity consists of the following:

Navigation Bar Header

This consists of the profile picture, Name, Email of the student who has login to the
application

Navigation Header

HOME

By clicking on the Home from navigation bar it opens up to a new screen consisting of
buttons named Semester1, Semester2, Semester3, Semester4, Semester5, Semester6,
Semester7, Semester8. Now the student will click on its respective semester button
which will open up to the following:-

SYLLABUS

This section consists of the pdf syllabus file uploaded by the teacher. The student can
download the pdf file into its mobile phone storage by clicking on the name of the PDF
file shown in the recycler view. This is for viewing only it can’t be updated or deleted by
the student. Anyone who has registered user name and password can view this and save
into a mobile storage afterwards as this accordingly.

ASSIGNMENT

Here assignment uploaded by the teacher, including subject names and questions is
shown in the recycler view. This is for viewing only it can’t be updated or deleted by the
student. Anyone who has registered user name and password can view this.

Bahra Group of Institutions 16


NOTES

This section consists of the pdf file of syllabus uploaded by the teacher. The student can
download the pdf file into its mobile phone storage by clicking on the name of the PDF
file shown in the recycler view. This is for viewing only it can’t be updated or deleted by
the student. Anyone who has registered user name and password can view this and save
into a mobile storage afterwards as this accordingly.

NOTICE

This section consists of the notices regarding events or any other kind of information
about college uploaded by the teacher to update the students. It consists of title, message
and attachment in the form of either an image or pdf document. Students can save the
attachment by clicking on its name into their mobile phone storage. This is for viewing
only it can’t be updated or deleted by the student. Anyone who has registered user name
and password can view this and save into a mobile storage afterwards as this
accordingly.

TIMETABLE

This section consists of the pdf file of time table uploaded by the teacher. The student
can download the pdf file into its mobile phone storage by clicking on the name of the
PDF file shown in the recycler view. This is for viewing only it can’t be updated or
deleted by the student. Anyone who has registered user name and password can view this
and save into a mobile storage afterwards as this accordingly.

MST MARKS

When MST mark button is clicked it will open up to a screen consisting of three buttons
MST1 ,MST2, MST3. Now student will click on required button which opens up to most
record shows in tabular form. The table consists of columns named Student’s Roll no,
name, subject name and the rows are filled with their respective data.It consists of scroll
bars which allow the user to scroll vertically and horizontally. This is for viewing only it

Bahra Group of Institutions 17


can’t be updated or deleted by the student. Anyone who has registered user name and
password can view this and save into a mobile storage afterwards as this accordingly.

APTITUDE

It consists of the Tabbed activity, where there are tabs of verbal, quant, reasoning,
technical. The student can practice according to its choice. Each section consists of a
question with four options. Once a student is done with selection options, then he has to
click on the floating button which is at the right hand side bottom. When it is clicked,
then an alert dialog opens up showing the obtained score out of the total score and an ok
button. If the user taps ok then it gets back to the home screen. The student can view
correct option from the option menu on the top right hand side. In this way students can
practice aptitude to improvise. Anyone who has registered user name and password can
practice the aptitude.

GALLERY

Here students can upload the pics regarding to college lifestyle or any kind of
meaningful image which gets stored in the firebase database from where it is fetched into
view uploads. The student can choose the image by clicking on the chose button and then
it is uploaded by clicking on the upload button.Student can view the uploaded images by
clicking on the show uploaded image Textview. Images are shown in the Recycler view
and student can scroll up or down easily to view images accordingly. Anyone who has
registered user name and password can view and upload image.

STAFF

Here students can get the information about the teachers of the respective department
like teacher name, contact number, email id, profile image. This aid for viewing only
student can’t perform any kind of updating on this.

COMPLAINT

Here if the student is facing any kind of problem, then he can intimate about it to the
teacher along with images by filling the required information like a semester, roll no,

Bahra Group of Institutions 18


name, message, attachment. Attachment can be attached by clicking on the attach image
Textview and uploaded to the database by clicking on the upload button.Any student
who has registered user id and password can submit this.

SEND E-MAIL

In this section student can send an email to anyone filling the required information like
To, Text, Subject and clicking on the send button.

Scope:

The application is not audience specific .Any android user can use the application
according to the own use. The Smart alarm is used to set alarm and set the reminder that
helps the user for his important work and personal use. . User can easily stop the alarm by
shake the smart phone, the accelerometer sensor of device is used in this application to
shake the phone and stop alarm. And also used to stop the alarm by solving puzzles.
So this is the smart way to woke up on time. Because sometime one can click on screen
and stop the alarm and not woke up on time. The second module is used to set the alarm
for reminder or for sending messages .The Broadcast Receivers is the module in which
user can set the reminder and the message is broadcaster. The four different modules of
this app can help the user in different way. Find Near Places is the another module which
is used to track the nearest locations. The locations tracked by using this application are
Hospitals, Hotels and Banks. So that user can search the location in any emergency. The
GPS system is used in this tracking system.

Bahra Group of Institutions 19


3. Development Tool

Android

1) Front End

Android is an open source and Linux-based Operating System for mobile devices such
as smart phones and tablet computers. Android was developed by the Open Handset
Alliance, led by Google, and other companies.Android offers a unified approach to
application development for mobile devices which means developers need only develop
for Android, and their applications should be able to run on different devices powered by
Android.The first beta version of the Android Software Development Kit (SDK) was
released by Google in 2007 where as the first commercial version, Android 1.0, was
released in September 2008.

On June 27, 2012, at the Google I/O conference, Google announced the next Android
version, 4.1 Jelly Bean. Jelly Bean is an incremental update, with the primary aim of
improving the user interface, both in terms of functionality and performance.The source
code for Android is available under free and open source software licenses. Google
publishes most of the code under the Apache License version 2.0 and the rest, Linux
kernel changes, under the GNU General Public License version 2.

. Features of Android
After learning what is android, let's see the features of android. The important features of
android are given below:
 It is open-source.
 Anyone can customize the Android Platform.
 There are a lot of mobile applications that can be chosen by the consumer.

Bahra Group of Institutions 20


 It provides many interesting features like weather details, opening screen, live RSS
(Really Simple Syndication) feeds etc.
 It provides support for messaging services(SMS and MMS), web browser, storage
(SQLite), connectivity (GSM, Blue Tooth, Wi-Fi etc.), media, handset layout etc.n
 Android - Architecture
Android operating system is a stack of software components which is roughly divided
into five sections and four main layers as shown below in the architecture diagram.

 Linux kernel
At the bottom of the layers is Linux - Linux 3.6 with approximately 115 patches. This
provides a level of abstraction between the device hardware and it contains all the
essential hardware drivers like camera, keypad, display etc. Also, the kernel handles all
the things that Linux is really good at such as networking and a vast array of device
drivers, which take the pain out of interfacing to peripheral hardware.

 Libraries
On top of Linux kernel there is a set of libraries including open-source Web browser
engine WebKit, well known library libc, SQLite database which is a useful repository

Bahra Group of Institutions 21


for storage and sharing of application data, libraries to play and record audio and video,
SSL libraries responsible for Internet security etc.
 Android Libraries
This category encompasses those Java-based libraries that are specific to Android
development. Examples of libraries in this category include the application framework
libraries in addition to those that facilitate user interface building, graphics drawing and
database access. A summary of some key core Android libraries available to the Android
developer is as follows −
o android.app − Provides access to the application model and is the cornerstone of all
Android applications.
o android.content − Facilitates content access, publishing and messaging between
applications and application components.
o android.database − Used to access data published by content providers and includes
SQLite database management classes.
o android.opengl − A Java interface to the OpenGL ES 3D graphics rendering API.
o android.text − Used to render and manipulate text on a device display.
o android.view − The fundamental building blocks of application user interfaces.

 Android Runtime
This is the third section of the architecture and available on the second layer from the
bottom. This section provides a key component called Dalvik Virtual Machine which
is a kind of Java Virtual Machine specially designed and optimized for Android.
The Dalvik VM makes use of Linux core features like memory management and multi-
threading, which is intrinsic in the Java language. The Dalvik VM enables every
Android application to run in its own process, with its own instance of the Dalvik virtual
machine.
The Android runtime also provides a set of core libraries which enable Android
application developers to write Android applications using standard Java programming
language.

Bahra Group of Institutions 22


 Application Framework
The Application Framework layer provides many higher-level services to applications in
the form of Java classes. Application developers are allowed to make use of these
services in their applications.
The Android framework includes the following key services −
o Activity Manager − Controls all aspects of the application lifecycle and activity
stack.
o Content Providers − Allows applications to publish and share data with other
applications.
o Resource Manager − Provides access to non-code embedded resources such as
strings, color settings and user interface layouts.
o Notifications Manager − Allows applications to display alerts and notifications to
the user.
o View System − An extensible set of views used to create application user interfaces.

 Android applications
Android applications are usually developed in the Java language using the Android
Software Development Kit.Once developed, Android applications can be packaged easily
and sold out either through a store such as Google Play, Slide ME, Opera Mobile
Store, Mobango, F-droid and the Amazon Appstore.Android powers hundreds of millions
of mobile devices in more than 190 countries around the world. It's the largest installed
base of any mobile platform and growing fast. Every day more than 1 million new
Android devices are activated worldwide.

Categories of Android applications


There are many android applications in the market. The top categories are:
o Entertainment

Bahra Group of Institutions 23


o Tools
o Communication
o Personalization
o Music and Audio
o Social
o Media and Video etc

 Android - Application Components


Application components are the essential building blocks of an Android application.
These components are loosely coupled by the application manifest
file AndroidManifest.xml that describes each component of the application and how
they interact.There are following four main components that can be used within an
Android application –

 Activities
An activity represents a single screen with a user interface,in-short Activity performs
actions on the screen. For example, an email application might have one activity that
shows a list of new emails, another activity to compose an email, and another activity
for reading emails. If an application has more than one activity, then one of them should
be marked as the activity that is presented when the application is launched.
An activity is implemented as a subclass of Activity class as follows −
public class MainActivity extends Activity { }

 Services
A service is a component that runs in the background to perform long-running
operations. For example, a service might play music in the background while the user is
in a different application, or it might fetch data over the network without blocking user
interaction with an activity.
A service is implemented as a subclass of Service class as follows −

Bahra Group of Institutions 24


public class MyService extends Service { }

 Additional Components
There are additional components which will be used in the construction of above
mentioned entities, their logic, and wiring between them. These components are –
o Fragments : Represents a portion of user interface in an Activity.
o Views : UI elements that are drawn on-screen including buttons, lists forms etc.
o Layouts : View hierarchies that control screen format and appearance of the views.
o Intents : Messages wiring components together.
o Resources : External elements, such as strings, constants and drawable pictures.
o Manifest : Configuration file for the application.

2) Back End

Firebase :Firebase can power your app's backend, including data storage, user
authentication, static hosting, and more. Focus on creating extraordinary user
experiences. We'll take care of the rest. Build cross-platform native mobile and web apps
with our Android, iOS, and JavaScript SDKs. You can also connect Firebase to your
existing backend using our server-side libraries or our REST API.

Bahra Group of Institutions 25


Firebase Realtime database is a cloud hosted database that supports multiple platforms
Android, iOS and Web. All the data is stored in JSON format and any changes in data,
reflects immediately by performing a sync across all the platforms & devices. This allows
us to build more flexible realtime apps easily with minimal effort.

The Firebase Realtime Database lets you build rich, collaborative applications by
allowing secure access to the database directly from client-side code. Data is persisted
locally, and even while offline, realtime events continue to fire, giving the end user a
responsive experience. When the device regains connection, the Realtime Database
synchronizes the local data changes with the remote updates that occurred while the
client was offline, merging any conflicts automatically.

The Realtime Database provides a flexible, expression-based rules language, called


Firebase Realtime Database Security Rules, to define how your data should be structured
and when data can be read from or written to. When integrated with Firebase
Authentication, developers can define who has access to what data, and how they can
access it.

The Realtime Database is a NoSQL database and as such has different optimizations and
functionality compared to a relational database. Used to maintain app’s backend.

• Data storage

• User authentication

• Static hosting

Bahra Group of Institutions 26


Features of Firebase:

 Realtime Database − Firebase supports JSON data and all users connected
to it receive live updates after every change.

 Authentication − You can use anonymous, password or different social


authentication.

 Hosting − The apps can be deployed over secured connection to Firebase


servers.

 Integration with Cloud Messaging.


 Robust Authentication for added security.
 Realtime Database for realtime storage of app data.
 Storage support for files.
 Support for on the fly Remote Configuration.
 Test Lab to deliver high quality apps.
 Crash Reporting to keep your apps stable and free from bugs.

How Data Is Stored?

Firebase realtime database is a schemaless database in which the data is stored in


JSON format. Basically the entire database is a big JSON tree with multiple
nodes. Following is the screenshot of Database Storage.

Bahra Group of Institutions 27


In Firebase Storage images or videos are saved.

Bahra Group of Institutions 28


Bahra Group of Institutions 29
4. Design of Solution

SDLC
The Systems development life cycle (SDLC), or software development process in
systems engineering, information systems and software engineering, is a process of
creating or altering information systems, and the models and methodologies that people
use to develop these systems. In software engineering, the SDLC concept underpins
many kinds of software development methodologies. These methodologies form the
framework for planning and controlling the creation of an information system:] the
software development process

The Systems development life cycle (SDLC) is a process used by a systems analyst to
develop an information system, training, and user (stakeholder) ownership. The SDLC
aims to produce a high quality system that meets or exceeds customer expectations,
reaches completion within times and cost estimates, works effectively and efficiently in
the current and planned Information Technology infrastructure, and is inexpensive to
maintain and cost-effective to enhance "Systems Development”.

The SDLC is about how all system are created. It is a very powerful technique that are
users can apply for the creation of application to solve problems using computer system.
With its help you get closest view of the system which then helps to create it because you
are familiar with all sorts of components of the system.

Bahra Group of Institutions 30


Problem Analysis

Feasibility Study

Analysis

Design

Coding

Testing

Post Implementation and


Maintenance

Bahra Group of Institutions 31


1. Problem Definition and Initial Investigation:

This was a preliminary investigation done with a view to have a “feel” of the working
of the proposed system. This phase has been identified the end-user directly involved in
the system who were the managers, assistant officer and database administrator, and the
development department. By understanding the working of database, its flow and also
after conducting meetings and interviews with the concerned persons of the department, a
clear idea about the working was obtained. An explanatory note that serves to gain
cooperation and avoid misunderstanding by setting out the purpose of the exercise clearly
accomplishes each questionnaire. Observation technique is also used for fact finding. The
work described at the time of interview is observed personally ads it reduces the chance
of misunderstanding and omissions. By the end of this phase, idea as to how the
information enters the system, how it is stored, how it is processed, how information
changes affects the working of the system.

2. Feasibility Study:

A feasibility study is a test of a system proposal according to its workability impact on


organization, ability to meet user needs and effective use of resources. The objective of a
feasibility study is not to solve a problem but to acquire a sense of its scope. During the
study, the problem definition is crystallized and the aspects of the problem to be included
in the system are determined. A feasibility study is an evaluation of a proposal designed
to determine the difficulty in carrying out a designated task or project. Generally, a
feasibility study precedes technical development and project implementation. In other
words, a feasibility study is an evaluation or analysis of the potential impact of a
proposed project. System is feasible if the preference of the users requirements consider
on the top. System (property dealing system) aims at automating all processes dealing
with registration and search of property. If feasibility study is to serve as the decision
document, it answers a number of questions. Like

 Is it beneficial?

Bahra Group of Institutions 32


 Does it save time and money?
 Can it be integrated with other systems already in place?
Planning resources is a very vast concept and we are beginners, thus including each and
every aspects of web, Integrate and automate them in every respect was not feasible for
us. Hence we perform feasibility study to make our project compatible for present
environment. The concept of HR Managements newer. The project is built with the help
of Android technology which is reliable and an efficient platform to work upon. This
concept saves time and lessens the teachers’ and student’s frustration.

 Technical Feasibility

It specifies how technically strong your project is or how many problems you have to
undergo while implementing the project. It determines how much secured the project is
i.e. the project should not be prone to changes or any type of modifications by
unauthorized users.
Practical implementation requires:
 Lots of technical skills.
 Knowledge of the database.
 Awareness of the company requirement.

 Economical Feasibility

 Economic aspects play an important role from customer as well as developer


point of view. The project cannot be preceded if it runs out of budget.
 Thus cost estimation is an important phase that is to be considered seriously before
starting the project.
 The project should be cost effective from both developer as well as user’s side.
 As far as this project is concerned, a proper cost evaluation and estimation is done
before starting the project.
 It requires a good amount for its implementation and maintenance.

Bahra Group of Institutions 33


 Operational Feasibility
The project made should be operational in all working environments. It should work in
accordance with the outline given by the company and must fulfill all of its requirements.
It should be implemented again and again to make it free from errors. There should be
scope for modifications to make it adaptable to all working conditions.

3. Requirement Analysis
This process is also known as feasibility study. In this phase, the development team
studied the site requirement. They investigate the need for possible dynamic
representation of the site and increase security features. By the end of feasibility study,
the team furnishes a document that holds the different specific recommendations for the
candidate system. It also includes the personnel assignments, costs, project schedules,
target dates, etc. the requirement gathering process is intensified and focused specially on
software. The essential purpose of this phase is to find the need and to define the problem
that needs to be solved. During this phase following facts were gathered.

 Determined the user need


 Identified the facts
 Establish the goals and objective for the proposed system
 Feasibility for the new system

System Requirements Specification:- A detailed statement of the effects that a system


is required to achieve. A good specification gives a complete statement of what the
system is to do, without making any commitment as to how the system is doing it: it
constrains only the externally observable behavior and omits any design or
implementation bias.
A system requirements specification is normally produced in response to a user
requirements specification or other expression of requirements, and is then used as the
basis for system design. The system requirements specification typically differs from the
expression of requirements in both scope and precision: the latter may cover both the
envisaged system and the environment in which it will operate, but may leave many

Bahra Group of Institutions 34


broad concepts unrefined. Traditionally, system requirements specifications took the
form of natural-language documents. However, both the need for precision and problems
with the increasing size of specification documents have led to the development of more
formal notations. These are capable of being mathematically manipulated so as to show
that the system as designed and implemented actually meets the specification. This may
be especially important in connection with safety-critical systems.
A system requirements specification may also be used in contract negotiations during and
after the purchase of the system, which must meet the specifications that the contractor
has agreed to accept. This is especially important where the purchaser sets out the
requirements in terms of a range of functions and performance levels that the contractor
commits to supplying and meeting, rather than as an inventory of components (hardware
and software) that the contractor undertakes to supply.

 System Requirements

 Technology used

o Front End : Android Studio


o Back End : Firebase
o Programming Language: : Android

 Software Specification

o Operating System : Windows XP, Windows Vista, Windows 7


o Language : Android
o Software : JDK 1.7, Android Studio
o Database : Firebase database

Bahra Group of Institutions 35


 Hardware Specification

Component Minimum Recommended

Dual processors
2.5 gigahertz
Processor that are each
(GHz)
3 GHz or faster

1 gigabyte
RAM 2 GB
(GB)
NTFS file system–
NTFS file formatted
system–
partition with
formatted 3 GB of free space
Disk
partition with a plus adequate free
minimum of space for your
3 GB of free Web sites
space

1024 × 768 or
Display 1024 × 768 higher resolution
monitor

Bahra Group of Institutions 36


 Functional and Non-Functional Requirements

o Functional Requirements

A description of the facility or feature required. Functional requirements deal with what the
system should do or provide for users. They include description of the required functions,
outlines of associated reports or online queries, and details of data to be held in the system.

o Non-Functional Requirements
A description and, where possible, target values of associated non-functional requirements.
Non-functional requirements detail constraints, targets or control mechanisms for the new
system. They describe how, how well or to what standard a function should be provided.
For example, levels of required service such as response times; security and access
requirements; technical constraints; required interfacing with users' and other systems; and
project constraints such as implementation on the organization's hardware/software
platform. Service level requirements are measures of the quality of service required, and
are crucial to capacity planning and physical design. Identify realistic, measurable target
values for each service level. These include service hours, service availability,
responsiveness, throughput and reliability. Security includes defining priority and
frequency of backup of data, recovery, fallback and contingency planning and access
restrictions. Access restrictions should deal with what data needs protected; what data
should be restricted to a particular user role; and level of restriction required, eg physical,
password, view only. Non-functional requirements may cover the system as a whole or
relate to specific functional requirements.

o User Interfaces
o The design or layout of every form will be very clear and very interactive to the user.
o Only valid user can able to Ads Post to server.
o There will be a proper collection of GUI interface, which will provide better look and
feel.

Bahra Group of Institutions 37


o In the screen layout the background color is very light and the graphics and font style
will be in proper manner and well organized.
o If the user will print any error statement then it will give the proper error message
display.

o Performance Requirements
o This software is not breakdown suddenly in any disaster like power failure.
o The development of the application will be based on the object oriented model.
o The timeline of this software must be in our mind.
o The performance of the functions and every module must be well.
o At every step the output of the one phase is the input of the other phase and it will be
reliable and accurate.
o The risk factor must be taken at initial step for better performance of the software.
o For individual function the performance will be well.
o There will be various ways of retrieving data and it takes less time.
o There will be ambiguity in the data and the record.
o The overall performance of the application will reliable and enable the
users to work efficiently.

Bahra Group of Institutions 38


4. Design

Software design is the process of implementing software solutions to one or more sets of
problems. One of the main components of software design is the software requirements
analysis (SRA). SRA is a part of the software development process that
lists specifications used in software engineering. If the software is "semi-automated"
or user centered, software design may involve user experience design yielding
a storyboard to help determine those specifications. If the software is
completely automated (meaning no user or user interface), a software design may be as
simple as a flow chart or text describing a planned sequence of events. There are also
semi-standard methods like Unified Modeling Language and Fundamental modeling
concepts. In either case, some documentation of the plan is usually the product of the
design. Furthermore, a software design may be platform-independent or platform-
specific, depending upon the availability of the technology used for the design.The main
difference between software analysis and design is that the output of a software analysis
consists of smaller problems to solve. Additionally, the analysis should not be designed
very differently across different team members or groups. In contrast, the design focuses
on capabilities, and thus multiple designs for the same problem can and will exist.
Depending on the environment, the design often varies, whether it is created from
reliable frameworks or implemented with suitable design patterns. Design examples
include operation systems, WebPages, mobile devices or even the new cloud computing
paradigm.
Software design is both a process and a model. The design process is a sequence of steps
that enables the designer to describe all aspects of the software for building. Creative
skill, past experience, a sense of what makes "good" software, and an overall
commitment to quality are examples of critical success factors for a competent design. It
is important to note, however, that the design process is not always a straightforward
procedure; the design model can be compared to an architect’s plans for a house. It
begins by representing the totality of the thing that is to be built (e.g., a three-dimensional

Bahra Group of Institutions 39


rendering of the house); slowly, the thing is reined to provide guidance for constructing
each detail (e.g., the plumbing layout). Similarly, the design model that is created for
software provides a variety of different views of the computer software.

 Data Flow Diagram


In our DFD, we give names to data flows, processes, and data stores. Although the names
are descriptive of the data, they do not give details. So the following the DFD, our
interest is to build some structured place to keep details of the contents of data flow,
processes, and data store. A data dictionary is a structured repository of data about data. It
is a set of rigorous definition of all DFD data element and data structure

o DFD Symbols
In the DFD, there are five symbols
o A rectangle defines a source (originator) or destination of system data.
o An Arrow identifies data flow- data in motion .It is pipeline through which
information flows.
o A circle or a bubble (or an oval bubble) represents a process that transforms incoming
data flow(s) into outgoing data flow(s)
o An Open rectangle is a data store-data at rest, or temporary repository of data.

o Symbols
o A rectangle defines a source of destination or system data.

o An arrow line identifies the data flow or data in motion. It is a pipeline through which
information flows.

Bahra Group of Institutions 40


o A circle or bubble represents a process transform incoming data flow in to outgoing
data flow.

o A horizontal line represents data stored or data at rest or a temporary rest repository
of data.

o An open rectangle refers to the database storage

 Object Oriented Analysis and Design (OOAD)


The concept ofobject oriented analysis and design focuses on problems in terms of class a
nd objects.This concept combines aspects of both entity relationship diagram and data
flow diagrams. The objectoriented analysis and design tool has been devised to support
the object oriented languages, for example C++ and Java. The roots of the concept of
object orientation evolved in late 60's with the emergence offirst language "SIMULA 67"
as the first object oriented language.
Object oriented methodologiedo notreplace traditional approaches (such as data flow, pro
cess flow, and state transition diagrams); they are important new additions to the toolkit.
There are certain positive points which are becoming stronger reasons for the increased
use of this technique.
 Object orientation helps in increasing abstraction and event-driven programming

Bahra Group of Institutions 41


 The widespread use of Graphical User Interface (GUI) encourages use of
object orientation.
 Software can be developed on modular basis
o Easier to maintain
o Easier to upgrade
o Easier to test
o Easier to develop incrementally
 Reusable Software

The design phase focuses on the detailed implementation of the system recommended in
the feasibility study. It is the transformation from user-oriented document (system
proposal) to a document oriented to the programmers or database personnel.

System design goes through two phases of development:


 Logical Design:
The logical design of a system pertains to an abstract representation of data flows, inputs,
and outputs of a system. This is often conducted via modelling, using an abstract model
of the actual system. Logical design is the graphical representation of a system showing
the system processes and the flow of data in and out of the processes. It describes what
task the system is doing without having to specify how, where and by whom the tasks are
accomplished. The logical design covers the following:
o Review the current physical system: the data flow, file content, frequencies etc.
o Prepare output specification: It determines the format, content and frequency of
reports, including terminal specification and location.
o Prepare input specification, format, content and most of the input functions.
o Prepare edit, security and control specification. This specifies the rules for edit
correction, back up procedures and the controls that ensure processing and file
integrity.
o Specifies the implementation plan.

Bahra Group of Institutions 42


o Prepares a logical design walk through of the implementation flow, output, input,
controls and implementation plan.
o Reviews benefits, costs, target dates and system constraints.

 Physical Design:
The physical design is the graphical representation showing the system's internal and
external entities, and flows of data in and out of these entities. An internal entity is an
entity (person, place or thing) within the system that transforms the data. Internal entities
include accounting clerks departments and computer. Whereas external entities are an
entity (person, place, thing) outside the system that transform the data.
The physical design actually relates to the actual input and output processes of the
system. The programmer writes necessary program or modifies the software package
that accepts inputs from the user, performs the necessary calculations through the existing
files or database, produces the report on hard copy or displays it on screen and maintains
an updated database at all times.

Physical design of the system consists of the following steps:


 Design the physical system:
o Specify the input/output media
o Design the database and specify backup procedure.
o Design physical information flow through the system and physical design
walkthrough.
 Plan system implementation:
o Prepare conversion schedule and target date.
o Determine training procedure and timetable.
 Devise a test and implementation plan and specify new hardware/software.
 Update benefits, cost, conversion date, and system constraints (legal, financial,
hardware) etc.

Bahra Group of Institutions 43


 DFD’s of Project

User

Contact Us
Departments

About Us
Placements

Faculty Student
Login Login

ChooseCorner

Faculty Corner Student Corner

4.1 Main Module Of Application

Bahra Group of Institutions 44


Faculty Corner

Navigation Bar

Delete
Home

Add Upload Update

4.2 Faculty Corner

Add

Add Add
Student Faculty

4.3 Add

Bahra Group of Institutions 45


Update

Faculty MST 3
Marks

Student
MST 2
Marks

MST 1 Marks

4.4 Update

Delete

Delete Faculty Delete Student

4.5 Delete

Bahra Group of Institutions 46


Upload

Upload Upload
Student Faculty

MST 3
MST1
Marks
Marks
MST 2
Marks

4.6 Upload

Home

Student
Faculty Record
Record

Attendance Complaint

MST
Marks

4.7 Home

Bahra Group of Institutions 47


Student Corner

Home Complaint

Send Email Gallery

Staff

4.8 Student Corner

Home

Question
Syllabus
Paper

Aptitude
Attendance

Notice
MST
Marks
Assignment Notes

4.9 Home

Bahra Group of Institutions 48


Aptitude

Verbal Technical

Quant Reasoning

4.10 Aptitude

Bahra Group of Institutions 49


5. Software Testing

Software Testing is an evaluation of the software against requirements gathered from


users and system specifications. Testing is conducted at the phase level in the software
development life cycle or at the module level in program code. Software testing
comprises of Validation and Verification Testing is the process of exercising software
with the intent of finding and ultimately correcting the errors. Testing demonstrates that
the software functions appear to be working according to specification, that performance
requirements appear to have been met. Data collected as testing is conducted to provide a
good indication of software reliability and some indication of software reliability and
some indication of software quality as a whole. Target of the test are -

 Errors - These are actual coding mistakes made by developers. In addition, there is a
difference in output of software and desired output, is considered as an error.

 Fault - When error exists fault occurs. A fault, also known as a bug, is a result of an
error which can cause system to fail.

 Failure - failure is said to be the inability of the system to perform the desired task.
Failure occurs when fault exists in the system.

 Software Validation
Validation is process of examining whether or not the software satisfies the user
requirements. It is carried out at the end of the SDLC. If the software matches
requirements for which it was made, it is validated.

 Validation ensures the product under development is as per the user requirements.

 Validation answers the question – "Are we developing the product which attempts all
that user needs from this software ?".

 Validation emphasizes on user requirements.

Bahra Group of Institutions 50


 Software Verification
Verification is the process of confirming if the software is meeting the business
requirements, and is developed adhering to the proper specifications and methodologies.

 Verification ensures the product being developed is according to design


specifications.

 Verification answers the question– "Are we developing this product by firmly


following all design specifications ?"

 Verifications concentrates on the design and system specifications.

Testing can either be done manually or using an automated testing tool:

 Manual

This testing is performed without taking help of automated testing tools. The software
tester prepares test cases for different sections and levels of the code, executes the tests
and reports the result to the manager. Manual testing is time and resource consuming.
The tester needs to confirm whether or not right test cases are used. Major portion of
testing involves manual testing.

 Automated

This testing is a testing procedure done with aid of automated testing tools. The
limitations with manual testing can be overcome using automated test tools. A test needs
to check if a webpage can be opened in Internet Explorer. This can be easily done with
manual testing. But to check if the web-server can take the load of 1 million users, it is
quite impossible to test manually. There are software and hardware tools which helps
tester in conducting load testing, stress testing, regression testing.

Bahra Group of Institutions 51


 Testing Approaches

 Black-box testing
It is carried out to test functionality of the program. It is also called ‘Behavioral’ testing.
The tester in this case, has a set of input values and respective desired results. On
providing input, if the output matches with the desired results, the program is tested
‘ok’, and problematic otherwise. In this testing method, the design and structure of the
code are not known to the tester, and testing engineers and end users conduct this test on
the software. Black-box testing techniques:

o Equivalence class - The input is divided into similar classes. If one element of a
class passes the test, it is assumed that all the class is passed.

o Boundary values - The input is divided into higher and lower end values. If these
values pass the test, it is assumed that all values in between may pass too.

o Cause-effect graphing - In both previous methods, only one input value at a time is
tested. Cause (input) – Effect (output) is a testing technique where combinations of
input values are tested in a systematic way.

o Pair-wise Testing - The behavior of software depends on multiple parameters. In


pairwise testing, the multiple parameters are tested pair-wise for their different
values.

o State-based testing - The system changes state on provision of input. These systems
are tested based on their states and input.

 White-box testing
It is conducted to test program and its implementation, in order to improve code
efficiency or structure. It is also known as ‘Structural’ testing. In this testing method, the
design and structure of the code are known to the tester. Programmers of the code
conduct this test on the code. The below are some White-box testing techniques:

Bahra Group of Institutions 52


o Control-flow tests - The purpose of the control-flow testing to set up test cases
which covers all statements and branch conditions. The branch conditions are tested
for both being true and false, so that all statements can be covered.

o Data-flow testing - This testing technique emphasis to cover all the data variables
included in the program. It tests where the variables were declared and defined and
where they were used or changed.

 Testing Levels
Testing itself may be defined at various levels of SDLC. The testing process runs
parallel to software development. Before jumping on the next stage, a stage is tested,
validated and verified. Testing separately is done just to make sure that there are no
hidden bugs or issues left in the software. Software is tested on various levels -

 Unit Testing
While coding, the programmer performs some tests on that unit of program to know if it
is error free. Testing is performed under white-box testing approach. Unit testing helps
developers decide that individual units of the program are working as per requirement
and are error free.

 Integration Testing
Even if the units of software are working fine individually, there is a need to find out if
the units if integrated together would also work without errors. For example, argument
passing and data updating etc.

 System Testing
The software is compiled as product and then it is tested as a whole. This can be
accomplished using one or more of the following tests:

 Functionality testing - Tests all functionalities of the software against the


requirement.

Bahra Group of Institutions 53


 Performance testing - This test proves how efficient the software is. It tests the
effectiveness and average time taken by the software to do desired task. Performance
testing is done by means of load testing and stress testing where the software is put
under high user and data load under various environment conditions.

 Security & Portability - These tests are done when the software is meant to work on
various platforms and accessed by number of persons.

 Acceptance Testing
When the software is ready to hand over to the customer it has to go through last phase
of testing where it is tested for user-interaction and response. This is important because
even if the software matches all user requirements and if user does not like the way it
appears or works, it may be rejected.

o Alpha testing - The team of developer themselves perform alpha testing by using the
system as if it is being used in work environment. They try to find out how user
would react to some action in software and how the system should respond to inputs.

o Beta testing - After the software is tested internally, it is handed over to the users to
use it under their production environment only for testing purpose. This is not as yet
the delivered product. Developers expect that users at this stage will bring minute
problems, which were skipped to attend.

 Regression Testing
Whenever a software product is updated with new code, feature or functionality, it is
tested thoroughly to detect if there is any negative impact of the added code. This is
known as regression testing.

Bahra Group of Institutions 54


 Testing Documentation
Testing documents are prepared at different stages :

 Before Testing

Testing starts with test cases generation. Following documents are needed for reference

o SRS document - Functional Requirements document

o Test Policy document - This describes how far testing should take place before
releasing the product.

o Test Strategy document - This mentions detail aspects of test team, responsibility
matrix and rights/responsibility of test manager and test engineer.

o Traceability Matrix document - This is SDLC document, which is related to


requirement gathering process. As new requirements come, they are added to this
matrix. These matrices help testers know the source of requirement. They can be
traced forward and backward.

 While Being Tested


The following documents may be required while testing is started and is being done:

o Test Case document - This document contains list of tests required to be conducted.
It includes Unit test plan, Integration test plan, System test plan and Acceptance test
plan.

o Test description - This document is a detailed description of all test cases and
procedures to execute them.

o Test case report - This document contains test case report as a result of the test.

o Test logs - This document contains test logs for every test case report.

Bahra Group of Institutions 55


 After Testing
The following documents may be generated after testing :

o Test summary - This test summary is collective analysis of all test reports and logs.
It summarizes and concludes if the software is ready to be launched. The software is
released under version control system if it is ready to launch.

 Testing vs. Quality Control, Quality Assurance and Audit


We need to understand that software testing is different from software quality assurance,
software quality control and software auditing.

 Software quality assurance - These are software development process monitoring


means, by which it is assured that all the measures are taken as per the standards of
organization. This monitoring is done to make sure that proper software development
methods were followed.

 Software quality control - This is a system to maintain the quality of software


product. It may include functional and non-functional aspects of software product,
which enhance the goodwill of the organization. This system makes sure that the
customer is receiving quality product for their requirement and the product certified
as ‘fit for use’.

 Software audit - This is a review of procedure used by the organization to develop


the software. A team of auditors, independent of development team examines the
software process, procedure, requirements and other aspects of SDLC. The purpose
of software audit is to check that software and its development process, both conform
standards, rules and regulations.

Bahra Group of Institutions 56


5. Steps to develop an Android application

Android development environment properly as explained in Android - Environment Set-


up tutorial. I also assume that you have a little bit working knowledge with Android
studio.

So let us proceed to write a simple Android Application which will print "Hello World!".
The first step is to create a simple Android Application using Android studio. When you
click on Android studio icon, it will show screen as shown below

Bahra Group of Institutions 57


You can start your application development by calling start a new android studio project.
in a new installation frame should ask Application name, package information and
location of the project.−

After entered application name, it going to be called select the form factors your
application runs on, here need to specify Minimum SDK, in our tutorial, I have declared
as API23: Android 6.0(Mashmallow) −

Bahra Group of Institutions 58


The next level of installation should contain selecting the activity to mobile, it specifies
the default layout for Applications.

At the final stage it going to be open development tool to write the application code.

Bahra Group of Institutions 59


6. Screenshots

Welcome Screen:

Welcome Screen Home Page

The welcome screen with the name and logo of the application. After 2 seconds the
Home is open. The activity has three Image views foe different task.

Bahra Group of Institutions 60


Smart Alarm:

Default Alarm Set Alarm

After click the first image view with clock image the new activity is open with name
Smart Alarm. There are four fragments. The default alarm activity’s alarm list is open by
default. The ADD ALARM is the button to set the alarm. While clicking on the button
the next activity is open to set date and time. Click on the done button to set the alarm.

Bahra Group of Institutions 61


Date Picker Time Picker

This is used to set date and time of the alarm. These are the device functions .while click
on the calendar image view the date picker is open. While click on the clock image view
the time picker is open.

Bahra Group of Institutions 62


Stop Alarm:

This is default alarm stop window. When the time of device and the alarm time is equal
this window will broadcast and one can stop the alarm by click the screen.

Bahra Group of Institutions 63


Puzzle Alarm:

This is another fragment to set the puzzle alarm. In this activity there is a seek bar which
is used to set the puzzle type that is easy, medium and hard. There is a button to set the
alarm. The list to show the alarm.

Bahra Group of Institutions 64


While clicking on the button the next activity is open to set date and time. Click on the
done button to set the alarm. While click on the calendar image view the date picker is
open. While click on the clock image view the time picker is open. When the time of
device and the alarm time is equal this window will broadcast and one can stop the alarm
by enter the correct answer to the edit text and lick on the check button. If the answer is
correct the alarm will off otherwise the wrong answer message will print screen.

Bahra Group of Institutions 65


Shake Alarm:

This is another fragment to set the Shake alarm. There is a button to set the alarm. The
list to show the alarm. When you click on the button the another activity is open to select
the shake while you off the alarm.

Bahra Group of Institutions 66


While clicking on the button the next activity is open to set date and time. Click on the
done button to set the alarm. While click on the calendar image view the date picker is
open. While click on the clock image view the time picker is open. When the time of
device and the alarm time is equal this window will broadcast and one can stop the alarm
By shake the device to the equal number of times while you are setting the alarm.

Bahra Group of Institutions 67


After shaking the device same number of times you set the alarm will be off. This
window also have a counter to count the number of shakes you done.

Bahra Group of Institutions 68


Stop Watch:

The stop watch is another module. There is a circular progress bar and chronometer.
There is start button to start the stop watch. The stop button is used to Stop watch. The
savelap button is used to save the time on chronometer.

Bahra Group of Institutions 69


While you click on the second image view the List_Of_Alarm activity is open. There is
list of alarms and image view on the upper right corner. When you click on the image
view the next activity is open to set the date and time for the alarm.

Bahra Group of Institutions 70


When the time of device and the alarm time is equal this activity will broadcast there is
three image views . When click on the content image view the device contacts will open
to choose the contact.

Bahra Group of Institutions 71


which contact is chose that will set on the edit text. When click on the attach image view
the popup menu is open to select the type of message you want to send.

Bahra Group of Institutions 72


After selecting the type there is another popup menu to send the message.After the
message is sent the alarm will off.

Bahra Group of Institutions 73


Tracking System:

When you click on the third image view the activity is open which a Google map is. This
module is used to fins the near places lick hospitals, banks etc. This will display the
device location on the map with the blue maker.

Bahra Group of Institutions 74


Locations of the hospital:

There is a edit text on the top of the activity where you can enter the place you want to
find out. We search the hospital here the nearest hospital of the location are located on
the map by red markers. When click on the marker they will display the name and the
area name of the location.

Bahra Group of Institutions 75


7. Conclusion

Smart alarm is useful for the users to wake up in the smart way so that one can get ready
on time. The puzzle module is used to set the alarm the way that you can stop it by
solving a mathematic puzzle. Shake alarm focuses on the larger goal: to wake you up
whatever comes. You got to work hard to shut off the alarm and by that time, you’ll be
wide awake. Its anti-cheat design ensures that you can’t shut off the alarm in no other
manner either. Hence, if you’re short tempered, better not use this app. There is a chance
that you might lose your cool and ends up flinging your phone to the floor. The Alert
Messenger is used set the alarm while you want to send the message. The alarm is stop
after sending the message. Find near places is used to find out the nearest places like
hospitals, Atms, Banks, Schools, Hotels, and Bars etc. This is very beneficial for user.

Bahra Group of Institutions 76


8. Future Scope

The application is not audience specific .Any android user can use the application
according to the own use. The Smart alarm is used to set alarm and set the reminder that
helps the user for his important work and personal use. This application to shake the
phone and stop alarm. And also used to stop the alarm by solving puzzles. The Broadcast
Receivers is the module in which user can set the reminder and the message is
broadcaster. Find Near Places is the another module which is used to track the nearest
locations. The locations tracked by using this application are Hospitals, Hotels and
Banks. So that user can search the location in any emergency. We will add other new
features to this application like setting of the alarm. And we will add the feature to find
the shortest path of the location from our location in tracking system module.

Bahra Group of Institutions 77


9. Bibliography

 www.google.com
 www.wikipedia.org
 www.tutorialspoint.com
 www.learnjavaonline.org
 www.netbeans.org
 www.javabeginnerstutorial.com
 www.androidtutorials.com
 www.materialicons.com
 www.angrytools.com
 www.console.developer.google.com

Bahra Group of Institutions 78

You might also like