Вы находитесь на странице: 1из 31

1.

Objective
“Celebration Sites” is a Party aggregation based model that helps customers navigate all the
sites for celebration with good facilities at low fares.

We can get to know about Sites for Celebration through android application using google
map to find out here a bus is using a web application, which requires login of administrator
for Destination Details and User details.

This app was developed mainly for providing a proof for proper user-mobile interaction.
Administrator is responsible for handling new Users and creating new database

2. INTRODUCTION

Our project title is Celebration Sites. This project is an online portal between owners of
Lawns and all the locations for celebration and Public. This innovative system allows the user
to watch and select the location for the celebration of their Occasion. It consists of a admin
login along with user login and SMS verification.
Celebration Sites is an Application where the users will not have to navigate for choosing
and selecting the occasion sites they just have to download the application and choose the
category of the party

Since the person has to give some details about themselves and provide One Time Password
given to the phone number provided by the user and the user can use the application.

Here user only see the details of the location and picture of the location along with the map and
contact details. Rest data is hidden. Admin may access and edit details to any module.

2.1 Advantages

 This project has a login page, which allows only the registered user to login and
thereby preventing unauthorized access.

 This system can be used to view all the locations for the celebration of any occasion.

 The android mobile user will be able make quick seeing from anywhere using internet

 Usage of this application will greatly reduce time in roaming here and there for the
site seeing.
2.2 Disadvantages:

 The android mobile user will not be able to insert or view details if the server goes
down. Thus there is disadvantage of single point failure.

2.3 Applications:

 All technical/non technical users can use this application.

 The application can prove very beneficial in to the institutes, classes as the
requirement is very high in such places.
3. SYSTEM ANALYSIS

3.1 DFD

3.2 ER Diagrams

3.3 Database Design


3.4 TESTING
3.1 Data Flow Diagram

A Data Flow Diagram (DFD) is a diagram that describes the flow of data and the processes
that change or transform data throughout a system. The Data Flow Diagram reviews the
current physical system, prepares input and output specification, specifies the implementation
plan etc.
Four basic symbols are used to construct data flow diagrams. They are symbols that represent
data source, data flows, and data transformations and data storage. The points at which data
are transformed are represented by enclosed figures, usually circles, which are called nodes.

3.1.1 Data Flow Diagram Symbols:-

- Source or Destination of data

- Data Flow

- Process

- Storage
3.1.2 Steps to Construct Data Flow Diagrams

Four steps are commonly used to construct a DFD

 Process should be named and numbered for easy reference. Each name should be
representative of the process.

 The direction of flow is from top to bottom and from left to right.

 When a process is exploded into lower level details they are numbered.

 The names of data stores, sources and destinations are written in capital letters.

3.1.3 Rules for constructing a Data Flow Diagram

 Arrows should not cross each other.

 Squares, Circles and files must bear names.

 Decomposed data flow squares and circles can have same names.

 Choose meaningful names for dataflow.

 Draw all data flows around the outside of the diagram.


3.1.4 CONTEXT LEVEL DFD
3.2 E-R DIAGRAM

The ER model defines the conceptual view of a database. It works around real-world entities
and the associations among them. At view level, the ER model is considered a good option
for designing databases.

3.2.1 Entity
An entity can be a real-world object, either animate or inanimate, that can be easily
identifiable. For example, in a school database, students, teachers, classes, and courses
offered can be considered as entities. All these entities have some attributes or properties
that give them their identity.

3.2.2 Attributes
Entities are represented by means of their properties, called attributes. All attributes have
values. For example, a student entity may have name, class, and age as attributes.

3.2.3 Entity-Set and Keys


Key is an attribute or collection of attributes that uniquely identifies an entity among entity
set.

For example, the roll number of a student makes him/her identifiable among students.

 Super Key − A set of attributes (one or more) that collectively identifies an entity in an entity set.

 Candidate Key − A minimal super key is called a candidate key. An entity set may have more
than one candidate key.

 Primary Key − A primary key is one of the candidate keys chosen by the database designer to
uniquely identify the entity set.

3.2.4 Relationship
The association among entities is called a relationship. For example, an employee works at a
department, a student enrols in a course.

3.2.5 Degree of Relationship


The number of participating entities in a relationship defines the degree of the relationship.

 Binary = degree 2

 Ternary = degree 3

 n-ary = degree
3.2.6 Mapping Cardinalities

Cardinality defines the number of entities in one entity set, which can be associated with
the number of entities of other set via relationship set.

 One-to-one − One entity from entity set A can be associated with at most one entity of entity
set B and vice versa.

 One-to-many − One entity from entity set A can be associated with more than one
entities of entity set B however an entity from entity set B, can be associated with at
most one entity.

 Many-to-one − More than one entities from entity set A can be associated with at
most one entity of entity set B, however an entity from entity set B can be associated
with more than one entity from entity set A.

 Many-to-many − One entity from A can be associated with more than one entity
from B and vice versa.
3.2.7 E-R DIAGRAM
3.3DATABASE DESIGN

3.3.1 Admin Table

Field Data type (size) Constrains Description


Adm_name Varchar(20) Primary Key Store admin Name
Address Varchar(30) Not Null Store admin password

3.3.2 User Table

Field Data type (size) Constrains Description


user_name Varchar(20) Primary Key Store ID Number
name Varchar(30) Not Null Store user’s Name
Address Varchar(30) Not Null Store address of user
password Varchar(20) Not Null Stores user password
contact INTEGER(10) Not Null Stores phone number
of a user
emailid Varchar(20) Not Null Stores email Id
3.4 TESTING

Software testing is a critical element of software quality assurance and


Represents the ultimate review of specification, design and code generation.
Once source code has been generated, software must be tested to uncover as
Many errors as possible before delivery to the customer.

Our goal is to design a series of test cases that have a high likelihood of finding errors. That is
where software testing Techniques come into the picture. These techniques provide
systematic guidance for Designing tests that exercise the internal logic of software
components and exercise the Input and output domains of the program to uncover errors in
program function, Behaviour and performance.

The various types of testing system used are:

 Unit Testing

 Integration Testing

 System Testing
 Acceptance Testing
 Regression Testing
4 Project Profile

Project Celebration Sites

Objective Provide Easily Information to user about the


sites for Celebration

Front-End Android (XML)

SQLite
Back-End

Type of Application Android - Based Application

Time Duration 2 Months


4.1 Administrator Module

In this module admin controls the whole project. This contains sub modules such as Admin login
module, User module and database. Administrator has an authority to handle the front end and also
the back end process of the system.

 Can login with Admin name and password.


 Can check the registrations.
 Can check the User details.
 Can check the Owner’s Detail.

4.2 User Module

 Can login with User name and password.


 Can Start play the hangman game
 Play from different levels
 .Exit the game.
5. MODULES
The system has various modules:-

5.1 Startup 5.2 Startup2

5.3 Verification 5.4 OTP


5.5 DashBoard 5.6 Raw

5.7 Details
6. Technologies and Software Requirements
6.1 ADT
The Android software development kit (SDK) includes a comprehensive set of development
tools. These include a debugger, libraries, a handset emulator based on QEMU,
documentation, sample code, and tutorials. Currently supported development platforms
include computers running Linux (any modern desktop Linux Distribution), MAC OS
X 10.5.8 or later, and Windows 7 or later. As of March 2015, the SDK is not available on
Android itself, but software development is possible by using specialized Android
applications.

In software engineering the terms frontend and back end refers to the separation of concerns
between the presentation layer (front end), and the data access layer (back end) of a piece of
software, or the physical infrastructure or hardware. In the client –server model, the client is
usually considered the front end and the server is usually considered the back end, even when
some presentation work is actually done on the server.

6.2 Front End


(A “front-end” application is one that application users interact with directly).

6.3 Programming Language


JAVA

6.4 Back End


Fire Base,SQLite

(A “Back-End” application or program serves indirectly in support of the front-end services,


usually by being closer to the required resource or having the capability to communicate with
the required resources. The back-end application may interact directly with the front-end or,
perhaps more typically, is a program called from an intermediate program that mediates
front-end and back-end activates).

6.5 Operating System


Windows 10

6.6 Hardware Components


 Processor – i5
 Hard Disk – 1 TB
 Memory – 8 GB RAM
 Android device
7 Code
7.1 Verify Activity

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


<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.sam19.celebrationsites.verify"
android:background="@drawable/back11">

<Button
android:id="@+id/verifyyy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="290dp"
android:text="Verify"
android:textSize="20dp"
android:textStyle="bold" />

<Button
android:id="@+id/skip1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:text="skip" />

<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/textView2"
android:layout_marginTop="14dp"
android:inputType="phone"
android:id="@+id/editphn" />

<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView3"
android:layout_centerHorizontal="true"
android:layout_marginTop="54dp"
android:text="Enter your phone number"
android:textSize="30dp"
android:textStyle="bold" />

<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginTop="23dp"
android:layout_marginLeft="30dp"
android:text="VERIFICATION"
android:textColor="#ff0000"
android:textSize="50dp" />
</RelativeLayout>
7.2 Verify.Class

package com.example.sam19.celebrationsites;

importandroid.Manifest;

importandroid.app.Notification;

importandroid.app.NotificationManager;

importandroid.content.Context;

importandroid.content.DialogInterface;

importandroid.content.Intent;

importandroid.content.pm.PackageManager;

importandroid.support.annotation.NonNull;

import android.support.v4.app.ActivityCompat;

import android.support.v4.content.ContextCompat;

import android.support.v7.app.AlertDialog;

import android.support.v7.app.AppCompatActivity;

importandroid.os.Bundle;

importandroid.telephony.SmsManager;

importandroid.view.View;

importandroid.widget.Button;

importandroid.widget.EditText;
importandroid.widget.Toast;

importjava.util.Random;

public class verify extends AppCompatActivity {

private static final int MY_PERMISSIONS_REQUEST_SEND_SMS =0 ;


Button sendBtn,skip;
EditTexttxtphoneNo;
String phoneNo;
intmsg;
public String message;
String s;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_verify);
sendBtn= (Button)findViewById(R.id.verifyyy);
skip = (Button)findViewById(R.id.skip1);
txtphoneNo=(EditText)findViewById(R.id.editphn);
skip.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {

Intent i = new Intent(verify.this,DashBoard.class);


startActivity( i);
}
});
if (ContextCompat.checkSelfPermission(verify.this,
Manifest.permission.SEND_SMS) != PackageManager.PERMISSION_GRANTED) {
if (ActivityCompat.shouldShowRequestPermissionRationale(verify.this,
Manifest.permission.SEND_SMS)) {
ActivityCompat.requestPermissions(verify.this, new
String[]{Manifest.permission.SEND_SMS}, 1);
} else
ActivityCompat.requestPermissions(verify.this, new
String[]{Manifest.permission.SEND_SMS}, 1);
} else {
//do nothing
}

sendBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
s = txtphoneNo.getText().toString();
if (s == " " || (s.length() > 10) || (s.length() < 10)) {
Toast.makeText(verify.this, "enter a valid phone number",
Toast.LENGTH_LONG).show();
} else {

AlertDialog.BuilderalertDialogBuilder = new AlertDialog.Builder(verify.this);


alertDialogBuilder.setMessage("Are you sure" + s + " is your phone number");
alertDialogBuilder.setPositiveButton("yes",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
try {
Random rand = new Random();
msg = rand.nextInt(100000);

message = String.valueOf(msg);
NotificationManager nm = (NotificationManager)
getSystemService(Context.NOTIFICATION_SERVICE);

Notification n = new
Notification.Builder(getApplicationContext()).setContentTitle("OTP").setContentTex
t(message).setContentTitle("your Celebration Sites OTP
is").setSmallIcon(R.drawable.logo1).build();
n.flags = Notification.FLAG_AUTO_CANCEL;
nm.notify(0, n);
Intent intent = new Intent(verify.this, OTP.class);

intent.putExtra("otp", message);
startActivity(intent);
} catch (Exception e) {
Toast.makeText(verify.this, "error", Toast.LENGTH_SHORT).show();
}

phoneNo = txtphoneNo.getText().toString();
try {
SmsManagersmsManager = SmsManager.getDefault();
smsManager.sendTextMessage(phoneNo, null, message, null, null);
Toast.makeText(verify.this, "SENT sucessfully", Toast.LENGTH_SHORT).show();

} catch (Exception e) {
Toast.makeText(verify.this, "failed", Toast.LENGTH_SHORT).show();
}
}
});

alertDialogBuilder.setNegativeButton("No", new DialogInterface.OnClickListener() {


@Override
public void onClick(DialogInterface dialog, int which) {
Intent intent = new Intent(verify.this, MainActivity.class);
startActivity(intent);
}
});
AlertDialogalertDialog = alertDialogBuilder.create();
alertDialog.show();
}
}
});
}

@Override
public void onRequestPermissionsResult(intrequestCode, @NonNull String[]
permissions, @NonNullint[] grantResults) {
switch (requestCode){
case 1:{
if(grantResults.length>0 &&grantResults[0] ==
PackageManager.PERMISSION_GRANTED){
if(ContextCompat.checkSelfPermission(verify.this,
Manifest.permission.SEND_SMS)==PackageManager.PERMISSION_GRANTED){
Toast.makeText(this,"permission granted",Toast.LENGTH_SHORT).show();

} else{
Toast.makeText(this, "no permission", Toast.LENGTH_SHORT).show();
}
return ;
}
}
}}}

7.3 Activity_DashBoard.XML

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

<ScrollViewxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.sam19.celebrationsites.DashBoard"
android:background="@drawable/back11">
<GridLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:columnCount="2"
android:rowCount="3"
android:verticalSpacing="30dp"
android:horizontalSpacing="30dp">

<Button
android:layout_width="180dp"
android:layout_height="180dp"
android:text="Ring ceremony"

android:textColor="#ffff"
android:textStyle="bold"
android:background="@drawable/ringceremonyp"
android:id="@+id/b1"
android:textSize="25dp" />

<Button
android:layout_width="180dp"
android:layout_height="180dp"
android:text="Tilak ceremony"
android:background="@drawable/tilakp"
android:layout_marginLeft="10dp"
android:textColor="#ffff"
android:textStyle="bold"
android:id="@+id/b2"
android:textSize="25dp" />

<Button
android:layout_width="180dp"
android:layout_height="180dp"
android:text="Wedding Ceremony"
android:textSize="25dp"
android:textStyle="bold"
android:id="@+id/b3"
android:textColor="#ffff"
android:background="@drawable/marriage" />

<Button
android:layout_width="180dp"
android:layout_height="180dp"
android:layout_marginTop="15dp"
android:textSize="25dp"
android:textStyle="bold"
android:layout_marginLeft="10dp"
android:textColor="#ffff"
android:background="@drawable/reception"
android:id="@+id/b4"
android:text="Reception" />

<Button
android:layout_width="180dp"
android:layout_height="180dp"
android:textColor="#ffff"
android:background="@drawable/hukkahp"
android:textStyle="bold"
android:textSize="25dp"
android:layout_marginTop="18dp"
android:id="@+id/b5"
android:text="Hukkah Party" />

<Button
android:id="@+id/b8"
android:layout_width="180dp"
android:layout_height="180dp"
android:layout_marginLeft="10dp"
android:layout_marginTop="15dp"
android:background="@drawable/casual"
android:text="casual Party"
android:textColor="#ffff"
android:textSize="25dp"
android:textStyle="bold" />

<Button
android:id="@+id/b9"
android:layout_width="180dp"
android:layout_height="180dp"
android:layout_marginTop="15dp"
android:background="@drawable/landd"
android:textColor="#ffff"
android:textSize="25dp"

android:textStyle="bold" />

<Button
android:id="@+id/b10"
android:layout_width="180dp"
android:layout_height="180dp"
android:layout_marginLeft="10dp"
android:layout_marginTop="15dp"
android:background="@drawable/teaparty"
android:text="Tea Party"
android:textColor="#ffff"
android:textSize="25dp"

android:textStyle="bold" />

<Button
android:id="@+id/b11"
android:layout_width="180dp"
android:layout_height="180dp"
android:layout_marginTop="15dp"
android:text="BIRTHDAY"
android:textColor="#000000"
android:textSize="25dp"
android:background="@drawable/bdayp"
android:textStyle="bold" />

<Button
android:id="@+id/b12"
android:layout_width="180dp"
android:layout_height="180dp"
android:layout_marginLeft="10dp"

android:layout_marginTop="1dp"
android:background="@drawable/bachelorp"
android:text="Bachelor Party"
android:textColor="#ffff"
android:textSize="25dp"

android:textStyle="bold" />
</GridLayout>
</ScrollView>
5.4 dashboard.java

package com.example.sam19.celebrationsites;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class DashBoard extends AppCompatActivity {

Button b11,b22,b33,b44,b55,b88,b99,b1010,b1111,b1212;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_dash_board);
b11=(Button)findViewById(R.id.b1);
b22=(Button)findViewById(R.id.b2);
b33=(Button)findViewById(R.id.b3);
b44=(Button)findViewById(R.id.b4);
b55=(Button)findViewById(R.id.b5);

b88=(Button)findViewById(R.id.b8);
b99=(Button)findViewById(R.id.b9);
b1010=(Button)findViewById(R.id.b10);
b1111=(Button)findViewById(R.id.b11);
b1212=(Button)findViewById(R.id.b12);

b11.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(DashBoard.this,RingRaw.class);
startActivity(intent);
}
});
b22.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(DashBoard.this,TilakRaw.class);
startActivity(intent);
}
});
b33.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(DashBoard.this,weldingRaw.class);
startActivity(intent);
}
});
b44.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(DashBoard.this,ReceptionRaw.class);
startActivity(intent);
}
});
b55.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(DashBoard.this,HukkahRaw.class);
startActivity(intent);
}
});

b88.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(DashBoard.this,CasualRaw.class);
startActivity(intent);
}
});
b99.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(DashBoard.this,LADRaw.class);
startActivity(intent);
}
});
b1010.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(DashBoard.this,TeaRaw.class);
startActivity(intent);
}
});
b1111.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(DashBoard.this,PromptRaw.class);
startActivity(intent);
}
});
b1212.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(DashBoard.this,BachelorRaw.class);
startActivity(intent);
}
});

}
}
8. FUTURE SCOPE & ENHANCEMENT OF PROJECT

 Our project “Celebration Sites” has a good scope in future


because it is easy to use.

 Users can easily access this app after providing their phone
number.

 The users can search their desirable lawn, banquet, restaurant


and cafe’s location without any trouble and easily reach on the
suitable location.

 The users can save their time.

 All the information about the celebrating Locations could be


retrieved in one click.
9. References
9.1 Web site

 www.google.com

 www.wikipedia.com

 Java T-point
 Androidhub

9.2 Books

1. System Analysis and Design.


By: James A Sen.

2. Software Engineering.
By: Roger Pressman.

Вам также может понравиться