Sie sind auf Seite 1von 57

APPENDIX – I

A Project Report
ON

“HOME SERVICE MANAGEMENT”


Submitted in partial fulfilment of the requirement for the award of Master in
Computer Applications

for Session 2016-2018

Submitted by
Bhavna Sharma
MCA

(Registration No.: BU2016PGMCL006)

UNDER THE SUPERVISION OF


Mrs. Mamta Sharma
Asst. Professor,
School of Computer Science & Engineering,
Bahra University

Submitted To
School of Computer Science and Engineering

1
Bahra University, Shimla (Waknaghat) Distt Solan, Himachal Pradesh – India

2
APPENDIX –II

CERTIFICATE OF ORIGINALITY

This is to certify that, the work entitled HOME SERVICE MANAGEMENT submitted by
Bhavna Sharma having roll no BU2016PGMCL006 in partial fulfillment of the requirement
for the award of degree of Masters in Computer Application,

Bahra University, Shimla Hills, Solan (H.P.) has been carried out under the supervision of Mrs.
Mamta Sharma (Assistant Professor), School of Computer Science & Engineering. This work
has not been submitted partially or fully to any other University or Institute for the award of any
other degree.

Dr. Neeru Bhardwaj

Associate Professor & Head


Date: School of Computer Science & Engineering
Place:

3
APPENDIX – III

CERTIFICATE BY SUPERVISOR

A sample certificate by supervisor is shown here

4
5
APPENDIX – IV

TRAINING CERTIFICATE BY COMPANY

6
APPENDIX – V

ACKNOWLDGEMENT

First of all, I would like to thank the Almighty, who has always guided me to work on the right
path of the life. I acknowledge with deep sense of gratitude and most sincere appreciation, the
valuable guidance and unfailing encouragement rendered to me by “A2IT Software
Technologies” “Mr. Deepak Panwar” for her proficient and enthusiastic guidance, useful
encouragement and immense help. I have deep sense of admiration for their inmate goodness
and inexhaustible enthusiasm.

I wish to extend my sincere gratitude to “Dr. Neeru Bhardwaj , HOD of CSE Department” and
“Mrs. Mmata Sharma”, Assistant Professor“ for their guidance, encouragement and valuable
suggestions which proved extremely useful and helpful in completion of this industrial training.

My heartfelt gratitude and indebtedness goes to all teachers and guidance group who with their
encouraging, caring words, constructive criticism and segmentation have contributed directly
or indirectly in a significant way towards completion of this training. My special thanks goes
to my friends whose support and encouragement have been a constant source of assurance,
guidance, strength, and inspection to me.

I am immensely grateful to my parents, my family. They have always supported me and taught
me the things that matter most in life. I am proudly grateful to all of them.

Name of the student: Bhavna Sharma

Signature of student ………………

Date ………………….

7
APPENDIX – VI

ABSTRACT

In metro cities life has become so mechanical that people don’t have time for their personal life.

In this era people surly not have time to find home service professionals and assign them

required job. With the help of online home service, you can easily find the right professional for

your job. All you need to do is call online home service provider or use their online platforms to

book the particular service at your convenient time. This would save lot of time and the quality

of the service would be great compared to the local service provider.

Online home service are very much beneficial for working professionals and also very beneficial

for the people who are recently relocated to the city.

It is provide Quality Service.

While online service provider takes care of all your requirements, you can relax or resume your

work without disturbing your planner.

The time slots you pick for your requirements will be put on high priority and the service

partners will reach the place on time and it is best interest of the online service provider to give

the service on time.

This project is mainly useful for vehicle services and servant services.

8
APPENDIX – VII

List of Figures

Figure 1.1 Admin-Level DFD …………………………………………………………………


Figure 1.2 User-Level DFD…………………….……………………………………………….
Figure 1.3 Service-Level DFD…………………….……………………………………………

9
APPENDIX – VIII

List of Tables

Figure 1.1 hs_register table

10
Figure 1.1 hs_servant_details table

Figure 1.1 hs_vehicle_service_details

11
APPENDIX – IX

INDEX

Title …….………………………..……………………………………………………….….i

Declaration………………………………….………………………………………………....ii

Supervisor Certificate……………………………….………………..………………………iii
Company Certificate …………………………………………………………………………iv

Acknowledge…………………………………………………….……..……………………..v

Abstract ……………………..…………………………..….……………...…………………vi

List of figures…………………………………………………………………………...….vii

List of tables………………………………………………….……………..……………..viii

12
CONTENTS

Chapter- 1 Introduction (Home Service Management)


Chapter- 2 Requirement Analysis & Specification
Chapter- 3 Design
Chapter- 4 Coding
Chapter- 5 Testing
Chapter- 6 Implementation
Chapter- 7 Results and Conclusion
Chapter- 8 Future Scope

Bibliography …………………………………………………………………….
List of symbols and acronyms …………………………………………

13
CHAPTER-1: INTRODUCTION

HOME SERVICE MANAGEMENT

Internet has become an important part of life that most of us use it every day. It is a wonderful

place for studying, communicating, entertaining, working as well as the biggest information

source in the world. Thus, Internet provides many benefits and helps improve living quality of

people everywhere.

The project plays an important role in providing a home services like servant services and
automobile services.

Servant services, cooking, car and bike services are available in this project.

The project provides a front-end interface with back-end database connectivity. Users will
simply enter their details to register

After submitting their details like name, address, email, contact number they will receive a
unique email id and password in their registered email ids for further login.

Using that id and password, user can login easily. After login the users will be able to go
through

the Home page which includes the different services. Along with Home page services namely-
car

services, bike services, servant services and cooking services are there. User interested in

whatsoever service can choose and click on book now buton. After click on book now button the

message will be automatically send to the service provider. The message will be consist of

customer details like name, email, phone no, address etc.

The admin part begins with a login page containing id and password. The admin will be able to

see the registered customers and service providers.

14
CHAPTER-2: REQUIREMENT ANALYSIS AND
SPECIFICATIONS

2.1 REQUIREMENT ANALYSIS

2.1.1 MEANING

AN SRS minimize the time and effort required by developers to achieve desired goals and also
minimize the development cost. A good SRS defines how an application will interact with system
hardware, other programs and human users in a wide variety of real-world situations.

System Requirement Specification SRS states the goals and objectives of the software. It also
defines the scope of the software. It provides a detailed description of the problem that the software
has solved. Information content, flow, structure, hardware, software and human interfaces are
described.

2.1.2 SOFTWARE REQUIREMENT FOR DEVLOPEMENT:-

• Android Studio

• Mysql Database

• PhpMyAdmin

• Microsoft Windows XP,Vista,7,8,10 or Linux

• WAMP Server

2.1.3 HARDWARE REQUIREMENT FOR DEVLOPEMENT:-

• 4 GB of RAM

• Intel(R) Core(2.40GHz) i3 processor

• 64-bit operating system

15
HARDWARE REQUIREMENT FOR CLIENTSIDE:-

• Any Smart Phone

SOFTWARE REQUIREMENT FOR CLIENTSIDE:-

• Android Operating System

INTERNET

• A highly speed connected network connection

2.2PURPOSE

The project’s main objective is that it is very beneficial for the people who are recently relocated
to the city.

Online home service are very much beneficial for working professionals.

This project is mainly useful for vehicle services and servant services.

2.3 USER FRIENDLINESS

This project will have user-friendly screens. The screens designed will have very simple
functionality for retrieving information.

2.4 COMPATIBILITY

This app offers great compatibility, as it is designed with proper methodology, new tools and
technology.

2.5SECURITY

This web app is a secured system, which will provide corporate level security for users. Data and
information entered by user is completely safe and login is made secure by proving unique id nd
password to each new user during registration.

16
2.6 RELIABILITY & ROBUSTNESS

This project is built with proper architecture and design and it will provide a reliable and robust
site to the users.

2.7 PERFORMANCE

The performance of this app will be high because of its optimize design. Internet access is needed
therefore the performance will also be based on Internet speed.

2.8EXTENSIBILITY

This project has a modular design and would provide the flexibility of adding, future information
to the site. This site is basically designed in android technology which is user friendly that
provides the facility to view and get services.

17
CHAPTER- 3: DESIGN

Design is the first step in the development phase for any techniques and principles for the purpose

of defining a device, a process or system in sufficient detail to permit its physical realization.

Once the software requirements have been analysed and specified the software design involves

three technical activities - design, coding, implementation and testing that are required to build

and verify the software.

The design activities are of main importance in this phase, because in this activity, decisions

ultimately affecting the success of the software implementation and its ease of maintenance are

made. These decisions have the final bearing upon reliability and maintainability of the system.

Design is the only way to accurately translate the customer‘s requirements into finished software

or a system.

Design is the place where quality is fostered in development. Software design is a process through

which requirements are translated into a representation of software. Software design is conducted

in two steps. Preliminary design is concerned with the transformation of requirements into data.

18
FLOW CHART:

Start

Login Register

Admin Customer Services

yes no yes no no

Choose yes
View All Choose
Services Exit
Customers/ Service
Service Provided
yes
Provider
yes
Exit Exit
yes

View
Selected
Apply
Services
Sevice

yes yes

Book View
Particular Service
Service Provided

19
Logout Logout Logout
DATA FLOW DIAGRAM

A data flow diagram (DFD) is a graphical tool used to describe and analyze the movement of data

through a system by depicting the flow of data, storage of data, source or destination of data and

the processes that respond to change in data. The DFD is one of the most important tools used by

the system analysts to model system components, namely

- System Process

- Data Store

- The information flows in the system

- Any external entities that interact with the system (source or destination of the data)

20
Choose Services

View Selected
Services

Book Particular
Customer Service
Splash Login
Logout
Form

Choose Service
Service Provided
Login
Apply Service
Login Registration
Page View Service
Provided

Logout

Admin
View all
Login
customer/ service
provider

Logout

21
Design

Entity Relationship Diagram

An Entity Relationship Diagram (ERD) is a graphical tool to express the overall structure of a

database. It is based on a perception of a real world which consists of a set of basic objects.

-An entity is a person, place, thing or event of interest to the organization and about which data
are captured, stored or processed.
- The attributes are various kinds of data that describes an entity.
- An association of several entities in an Entity-Relationship model is called relationship.

An ERD consists of the following major components:


Rectangles:

Used for representing entity types

Ellipses:

Used for representing attributes

22
Diamond:

Used for representing relationship types

Lines:

Used for linking attributes to entity types

23
UML Diagrams

Introduction:

Actor:

A coherent set of roles that users of use cases play when interacting with the use
`cases.

Use case:

A description of sequence of actions, including variants, that a system performs that yields an

observable result of value of an actor.

UML stands for Unified Modelling Language. UML is a language for specifying, visualizing and
documenting the system. This is the step while developing any product after analysis. The goal

24
from this is to produce a model of the entities involved in the project which later need to be built.
The representation of the entities that are to be used in the product being developed need to be
designed.

They are as follows:

1. Use case Diagram

2. Sequence Diagram

3. Activity Diagram

Use case Diagram:

A Use case is a description of set of sequence of actions graphically it is rendered as an ellipse


with solid line including only its name. Use case diagram is a behavioural diagram that shows a
set of use cases and actors and their relationship. It is an association between the use cases and

actors. An actor represents a real-world object.

Use case Diagram for Customer:

Choose
Services

View Selected
Services
Customer Login

Book Particular
Service

25 Logout
Use case Diagram for Admin :-

Choose Service
Provided

Apply Service

Service Login
View Service
provider
Provided

Logout

Use case Diagram for Admin:

View all customer/


Admin Login service provider

26
CHAPTER- 4: CODING

HOME PAGE:

package com.bhawna.homeservicesmanagement.customer;

import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import android.widget.TextView;

import com.bhawna.homeservicesmanagement.R;

public class HomeFrg extends Fragment {

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_home_frg, container, false);
}

@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);

LinearLayout hf_car_services=(LinearLayout)
getView().findViewById(R.id.hf_car_services);
hf_car_services.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent i=new Intent(getActivity().getApplicationContext(), CarServiceLists.class);
startActivity(i);
}
});

LinearLayout hf_bike_services=(LinearLayout)

27
getView().findViewById(R.id.hf_bike_services);
hf_bike_services.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent i=new Intent(getActivity().getApplicationContext(), BikeServiceLists.class);
startActivity(i);
}
});

LinearLayout hf_cooking_services=(LinearLayout)
getView().findViewById(R.id.hf_cooking_services);
hf_cooking_services.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent i=new Intent(getActivity().getApplicationContext(),
CookingServiceLists.class);
startActivity(i);
}
});

LinearLayout hf_servent_services=(LinearLayout)
getView().findViewById(R.id.hf_servent_services);
hf_servent_services.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent i=new Intent(getActivity().getApplicationContext(), ServentServiceLists.class);
startActivity(i);
}
});

TextView hf_clickhere=(TextView) getView().findViewById(R.id.hf_clickhere);


hf_clickhere.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT,"Hey check out my app at:
https://play.google.com/store/apps");
sendIntent.setType("text/plain");
startActivity(sendIntent);
}
});

}
}

28
SCREENSHOT:

LOGIN PAGE:
package com.bhawna.homeservicesmanagement;

import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentTransaction;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;

29
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;

import com.android.volley.AuthFailureError;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import com.bhawna.homeservicesmanagement.connection.IpConnect;
import com.bhawna.homeservicesmanagement.customer.Home;
import com.bhawna.homeservicesmanagement.service.ServiceHome;
import com.bhawna.homeservicesmanagement.session.SessionManager;

import org.json.JSONArray;
import org.json.JSONObject;

import java.util.HashMap;
import java.util.Map;

import com.bhawna.homeservicesmanagement.admin.AdminHome;

public class Login extends Fragment {

TextView tv;

JSONArray jsonArray;
JSONObject jsonRootObject;

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view= inflater.inflate(R.layout.fragment_login, container, false);

return view;
}

@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState)
{

30
super.onViewCreated(view, savedInstanceState);

tv=(TextView) getView().findViewById(R.id.open_register);

tv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
FragmentTransaction transaction =
getActivity().getSupportFragmentManager().beginTransaction();
transaction.setCustomAnimations(R.anim.slide_out_down, R.anim.slide_in_down);
//transaction.setCustomAnimations(R.anim.slide_in_up, R.anim.slide_out_up);
transaction.replace(R.id.frg_container, new Register());
transaction.commit();
}
});

//login volley code


final EditText et_email=(EditText) getView().findViewById(R.id.l_email);
final EditText et_pass=(EditText) getView().findViewById(R.id.l_pass);
final Spinner s_module=(Spinner) getView().findViewById(R.id.l_module);
Button btn=(Button) getView().findViewById(R.id.login_btn);

btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
final String email1=et_email.getText().toString();
final String pass1=et_pass.getText().toString();
final String module1=s_module.getSelectedItem().toString();

final ProgressDialog pDialog = new ProgressDialog(getActivity());


pDialog.setMessage("Loading...");
pDialog.show();

final RequestQueue rq= Volley.newRequestQueue(getActivity());


StringRequest sr=new StringRequest(Request.Method.POST, IpConnect.login_url,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {

//Toast.makeText(getActivity().getApplicationContext(),response,Toast.LENGTH_SHORT).show(
);

if(response.trim().equals("Fail"))
{
Toast.makeText(getActivity().getApplicationContext(), "Login

31
Failed",Toast.LENGTH_SHORT).show();
pDialog.hide();
}
else
{
String name=null;
try
{
jsonRootObject = new JSONObject(response);
jsonArray = jsonRootObject.optJSONArray("server_response");
for (int i = 0; i < jsonArray.length(); i++)
{
JSONObject jsonObject = jsonArray.getJSONObject(i);

name = jsonObject.optString("name").toString();
}
SessionManager sm=new
SessionManager(getActivity().getApplicationContext());
sm.createSession(module1, name, email1);

if(module1.equals("Customer"))
{
pDialog.hide();

Intent i=new Intent(getActivity().getApplicationContext(),


Home.class);
startActivity(i);

getActivity().overridePendingTransition(R.anim.enter, R.anim.exit);

getActivity().finish();
}
else if(module1.equals("Admin"))
{
pDialog.hide();

Intent i=new Intent(getActivity().getApplicationContext(),


AdminHome.class);
startActivity(i);

getActivity().overridePendingTransition(R.anim.enter, R.anim.exit);

getActivity().finish();
}
else if(module1.equals("Service"))
{

32
pDialog.hide();

Intent i=new Intent(getActivity().getApplicationContext(),


ServiceHome.class);
startActivity(i);

getActivity().overridePendingTransition(R.anim.enter, R.anim.exit);

getActivity().finish();
}

}
catch(Exception e)
{
e.printStackTrace();
}

}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(getActivity().getApplicationContext(),"Error :
"+error,Toast.LENGTH_LONG).show();
pDialog.hide();
}
}){
@Override
protected Map<String, String> getParams() throws AuthFailureError {

Map<String, String> params = new HashMap<>();


params.put("email1", email1);
params.put("password1", pass1);
params.put("module1", module1);

return params;
}
};

rq.add(sr);
}
});
}
}

33
SCREENSHOT:

LOGIN PAGE:
package com.bhawna.homeservicesmanagement.admin;

import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentTransaction;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;

import com. bhawna.homeservicesmanagement.R;


import com.bhawna.homeservicesmanagement.session.SessionManager;

public class AdminHomeFrg extends Fragment {

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {

34
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_admin_home_frg, container, false);
}

@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);

ImageView admin_logout=(ImageView) getView().findViewById(R.id.admin_logout);

admin_logout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {

SessionManager sessionManager=new
SessionManager(getActivity().getApplicationContext());
sessionManager.logoutSession();

}
});

Button admin_view_all_customer=(Button)
getView().findViewById(R.id.admin_view_all_customer);
admin_view_all_customer.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
FragmentTransaction transaction =
getActivity().getSupportFragmentManager().beginTransaction();
//transaction.setCustomAnimations(R.anim.slide_out_down, R.anim.slide_in_down);
//transaction.setCustomAnimations(R.anim.slide_in_up, R.anim.slide_out_up);
transaction.replace(R.id.admin_fragment_container, new ViewAllCustomers());
transaction.commit();
}
});

Button admin_view_all_services=(Button)
getView().findViewById(R.id.admin_view_all_services);
admin_view_all_services.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
FragmentTransaction transaction =
getActivity().getSupportFragmentManager().beginTransaction();
//transaction.setCustomAnimations(R.anim.slide_out_down, R.anim.slide_in_down);
//transaction.setCustomAnimations(R.anim.slide_in_up, R.anim.slide_out_up);

35
transaction.replace(R.id.admin_fragment_container, new ViewAllCustomers());
transaction.commit();
}
});
}
}

SCREENSHOT:

36
CHAPTER- 5: TESTING

5.1 OVERVIEW

In this chapter we will discuss various testing procedures for testing the proposed web like Use
Cases and Test Cases. Also we will discuss how the proposed system is actually implemented.

Introduction
to System
Testing

Testing Project Testing Testing


documentation methodology

Testing
approches

Fig: Project Testing

5.1.1PROJECT TESTING

The goal of this document is to develop a test plan for the online Home Service Management
design system. The document define all the procedures and activities required to prepare for testing
of the functionalities of the system which are specified in vision document. The objective of test

37
plan is to define the activities to perform testing., define the test deliverables documents and to
identify the various risks and contingencies involved in testing.

5.1.2FEATURES TO BE TESTED

The following list describes the features to be tested.

 User:
a) Registration
b) Choose Service
c) View Selected Services
d) Book Particular Service
e) Logout
 Admin
a) View Customer/ Service Provider
b) Logout
 Services
a) Choose Service Provided
b) Apply Service
c) View Service Provided

5.1.3 INTRODUCTION TO SYSTEM TESTING

System testing is a black box testing technique performed to evaluate the complete system the
system’s compliance against specified requirements. In system testing the functionalities of the
system are tested from an end to end perspective.System testing is usually carried out by a team
that is independent of the development team in order to measure the quality of the system unbiased.
It includes both functional and non-functional testing.

38
Types of system testing:

 Functionality
 Inter-operability
 Performance
 Scalability
 Stress
 Load and stability
 Reliability
 Regression
 Regulatory and compliance

5.1.4 TESTING METHODOLOGY

Testing Methodologies are approaches to testing, from unit testing through system testing and
beyond. There is no formally recognized body of testing methodologies, and very rarely will
you ever find a unified set of definitions. But there are some common methodologies:

 Unit testing
 Acceptance testing
 Functional testing
 System testing
 Performance testing
 Security testing

5.1.5 TESTING APPROACHES

This section describes the overall approach of the testing which ensures that each feature and the
combination of the features are adequately tested. The major tasks that are used are

39
5.1.6 UNIT TESTING

Unit testing is a method of testing that verifies the individual units of source code are working
properly. The goal of unit testing is to isolate each part of the program and show that the individual
parts are correct.There are some validations through which we can validate our site.

5.1.7 LOAD TESTING


Load testing is the process of creating demand on a system or device and measuring its response.
It generally refers to the practice of modelling the expected usage of a software program by
simulating multiple users accessing the program concurrently. As such, this testing is most relevant
for multi-user systems; often one built using a client/server model, such as web servers.

5.1.8 SYSTEM TESTING

Once the entire system has been built then it has to be tested against the Software Requirement
Specification and System Specification to check if it delivers the features required. System testing
can involve a number of specialist types of test to see if all the functional and non-functional
requirements have been met.

5.1.9 PERFORMANCE TESTING


The system should meet the performance requirements as mentioned in the Vision document. The
performance will be evaluated based on the response time of the GUI and the database commands.

5.1.10 MANUAL TESTING

Manual Testing will be done to ensure the correctness of various parts of the code using test cases
generated by the tester.

5.2 TESTING DOCUMENTATION

Documentation testing is a non-functional type of software testing. It is a type of non-functional


testing. Any written or pictorial information describing, defining, specifying, reporting, or
certifying activities, requirements, procedures or results. Documentation is as important to a

40
product’s success as the product itself. If the documentation is poor, non-existent, or wrong, it
reflects of the quality of the product and the vendor.

5.3 SUMMARY

In this chapter we studied about system testing process. In this we can study the project testing, its

types. We can study about various approaches used in complete system testing and documentation

testing.

41
CHAPTER- 6: IMPLEMENTATION

Implementation By using Technologies:-

INTRODUCTION TO ANDROID:

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.

Android is a software package and Linux based operating system for mobile devices such as
tablet computers and smart phones.

What is Open Handset Alliance (OHA)?

It's a consortium of 84 companies such as google, samsung, AKM, synaptics, KDDI, Garmin,
Teleca, Ebay, Intel etc.
It was established on 5th November, 2007, led by Google. It is committed to advance open
standards, provide services and deploy handsets using the Android Plateform.

42
Features of Android
The important features of android are given below:
1) It is open-source.
2) Anyone can customize the Android Platform.
3) There are a lot of mobile applications that can be chosen by the consumer.
4 ) 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, CDMA, Blue Tooth, Wi-Fi etc.), media, handset layout etc.

Categories of Android applications


The top categories are:
1. Entertainment
2. Tools
3. Communication
4. Productivity
5. Personalization
6. Music and Audio
7. Social
8. Media and Video
9. Travel and Local etc

History of Android

 Initially, Andy Rubin founded Android Incorporation in Palo Alto, California, United
States in October, 2003.
 In 17th August 2005, Google acquired android Incorporation. Since then, it is in the
subsidiary of Google Incorporation.
 The key employees of Android Incorporation are Andy Rubin, Rich Miner, Chris
White and Nick Sears.

43
 Originally intended for camera but shifted to smart phones later because of low market for
camera only.
 Android is the nick name of Andy Rubin given by coworkers because of his love to robots.
 In 2007, Google announces the development of android OS.
 In 2008, HTC launched the first android mobile.

Android Versions, Codename and API:

Let's see the android versions, codenames and API Level provided by Google.

Version Code name API Level

1.5 Cupcake 3

1.6 Donut 4

2.1 Éclair 7

2.2 Froyo 8

2.3 Gingerbread 9 & 10

3.1 & 3.3 Honeycomb 12 & 13

4.0 Ice Cream Sandwitch 15

4.1,4.2 & 4.3 Jelly Bean 16, 17 & 18

4.4 KitKat 19

5.0 Lollipop 21

44
Android Architecture:
Android architecture or Android software stack is categorized into five parts:
1. Linux kernel
2. Native libraries
(middleware)
1. Android Runtime
2. Application Framework
3. Applications

45
Linux kernel

At the bottom of the layers is Linux - Linux 2.6 with approximately 115 patches. This provides
basic system functionality like process management, memory management, device management
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 for storage and
sharing of application data, libraries to play and record audio and video, SSL libraries responsible
for Internet security etc.

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.

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.

46
Applications

You will find all the Android application at the top layer. You will write your application to be
installed on this layer only. Examples of such applications are Contacts Books, Browser, Games
etc.
Android core Building Blocks:
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 are main
components that can be used within an Android application:

Activity: Activity is a class that represents a single screen.

Eg:
public class MainActivity extends Activity {
}

View: View is a UI element, such as buttons, Labels, Text fields, etc.

Intent: Intent is used to invoke components. It is mainly used to


 Start the service
 Launch the activity
 Display a web page
 Display a list of contacts
 Broadcast a message
 Dial a phone call.
Eg:
Intent i=new Intent(Intent.ACTION_VIEW);

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

47
different application, or it might fetch data over the network without blocking user interaction
with an activity.

Eg:
public class MyService extends Service {}

Content Providers : A content provider component supplies data from one application to others
on request. Such requests are handled by the methods of the Content Resolver class. The data
may be stored in the file system, the database or somewhere else entirely. A content provider is
implemented as a subclass of Content Provider class and must implement a standard set of APIs
that enable other applications to perform transactions.

Android UI Widgets:

There are given a lot of android UI widgets examples such as toggle button, alert dialog, spinner,
progress bar, alert dialog etc.

UI Widgets:
Working with Button
Toast
Custom Toast
ToggleButton
CheckBox
AlertDialog
Spinner
AutoCompleteTextView
RatingBar
DatePicker
TimePicker
ProgressBar

48
Menus in Android

Here, you will learn about the option menu that is primary menu, context menu that works on long
press and popup menu.

Option Menu
Context Menu
Popup Menu

Service in Android

It can be used to perform any task in background.

Mysql Database

MySQL supports large databases, up to 50 million rows or more in a table. The default file size
limit for a table is 4GB, but you can increase this (if your operating system can handle it) to a
theoretical limit of 8 million terabytes (TB).

Telephony API

It can be used to get details about the device, making phone calls, sending sms, sending emails
etc.

TelephonyManager
Get Call State
Call State BroadcastReceiver
How to make a Phone Call
How to Send SMS

How to setup Android for Eclipse IDE ?

1. Install the JDK


2. Download and install the Eclipse
For developing android application
49
1. Download and Install the android SDK
2. Install the ADT plug-in for eclipse
3. Configure the ADT plug-in
4. Create the AVD
5. Create the hello android application

Why Android:

Zero start-up cost to begin development with


The tool required to develop any android applications is free of cost and Google charge
very small fee deal out application in the market. (Grell, 2010).

Freedom to innovate
Android OS is an open source platform which is based on Linux kernel and other open
source

libraries. Moreover are free to build applications which runs on android devices and even
free to extend platform as well. (Grell, 2010)

Freedom to collaborate
Android developers are encouraged to share code with others and they don’t even have to
sign an NDA to do this. According to a survey conducted by Black Duck Software, the
amount of open source libraries and mobile applications grew at a rate of 168% faster on
Android compared to any other platform from year 2008-2009. (Grell, 2010)

Multi-platform support
Android OS are supported on several different hardware devices including various phones
and tablets.

Multi-carrier support
Android powered smart phones are offered by most of the carrier services.

50
Internal Details of Hello Android Example ?

What is AndroidManifest.xml ?
The AndroidManifest.xml file contains information of your package, including components of the
application such as activities, services, broadcast receivers, content providers etc.
It performs some other tasks also:
It is responsible to protect the application to access any protected parts by providing the
permissions.
It also declares the android api that the application is going to use.
It lists the instrumentation classes. The instrumentation classes provides profiling and other
information's. These information are removed just before the application is published etc.
This is the required xml file for all the android application and located inside the root directory.

51
What is R.java File ?
Android R.java is an auto-generated file by aapt (Android Asset Packaging Tool) that contains
resource IDs for all the resources of res/ directory.
If you create any component in the activity_main.xml file, id for the corresponding component is
automatically created in this file. This id can be used in the activity source file to perform any
action on the component.
1.Hello World Example:

Create Android Application

The first step is to create a simple Android Application using Eclipse IDE. Follow the option File
-> New -> Project and finally select Android New Application wizard from the wizard list. Now
name your application as HelloWorld using the wizard window as follows:

Next, follow the instructions provided and keep all other entries as default till the final step. Once
your project is created successfully, you will have following project screen:

52
The Main Activity File:

The main activity code is a Java file MainActivity.java. This is the actual application file which
ultimately gets converted to a Dalvik executable and runs your application. Following is the
default code generated by the application wizard for Hello World! application:

53
54
CHAPTER- 6: RESULTS AND CONCLUSION

6.1 CONCLUSION

This project provides me an opportunity to do self-introspection of what value I have added to my


knowledge and skill set to the project. The objective of this web app is to provide easy and
interactive way of online home services.

This app provides user friendly interface. This web app is totally free. User just need to register.
The simplicity and user friendly are the features of this web app. The best thing about the project
is that it focuses on simplicity and ease of use.

This is concluded that the project that i undertook was worked upon with a sincere effort. Most of
the requirements have been fulfilled up to the mark and the requirements which have been
remaining, can be completed with a short extension. The project entitled “HOME SERVICE
MANAGEMENT” is developed using Android technology as front end and Mysql database in
back end to computerize the process data connectivity for servant and automobile services.

55
CHAPTER- 7: FUTURE SCOPE

7.1 FUTURE SCOPE

 In current system user can access and provide online home services.

 metro cities life has become so mechanical that people don’t have time for their
personal life. In this era people surly not have time to find home service professionals
and assign them required job. With the help of online home service, you can easily find
the right professional for your job. All you need to do is call online home service
provider or use their online platforms to book the particular service at your convenient
time. This would save lot of time and the quality of the service would be great
compared to the local service provider.

 Online home service are very much beneficial for working professionals and also very
beneficial for the people who are recently relocated to the city.

 The project will be well suited for all the working professionals.

Bibliography

[S. No.1] https://www.tutorialspoint.com/android/index.htm

[S. No.2] https://www.javatpoint.com/android-tutorial

[S. No.3] http://www.w3school.in/w3schools/android-tutorial/android-tutorial

[S. No.4] https://www.google.co.in/

[S. No.5] https://www.javatpoint.com/example-to-connect-to-the-mysql-database

[S. No.6] https://www.androidhive.info/2012/05/how-to-connect-android-with-php-mysql/

[S. No.7] https://www.tutorialspoint.com/android/android_php_mysql.htm

[S. No.8] https://www.youtube.com/

56
57

Das könnte Ihnen auch gefallen