Vous êtes sur la page 1sur 25

Abstract

The project Indore Business directory was based on android application. The system defines the growing needs of the Businessmen in Indore city. Indore is the largest city and the commercial capital of the Indian state of Madhya Pradesh. Indore city has a population of 2,167,447. Indore is often referred as the commercial capital of Madhya Pradesh with a bulk of its trade coming from Small, Mid and Large scale manufacturing & service industries. These industries range from Automobile to Pharmaceutical and from Software to Retail and from Textile trading to Real estate, what not. Several IT services companies have presence in Indore. So there obviously arises a need to communicate to do business, perform commercial practices and all these needs the information like contact number and address which was earlier searched through typical YELLOW PAGES. In growing Business environment, businessman needs to deal with the other businessman, search for the shop, place like hotel, coffee shop, college, institutions, industries, firms, food shops, restaurant etc. and want to get contact information and search in the conventional yellow pages (a thick hard copy like diary that contains information of business organization and commercial entities in tabular format) which contains only phone number and address, not much information. The yellow pages are hard to carry and hard to search for when it comes to the need to go to a place or arrangement of a particular meeting. Even if he will go for an option like internet a no of web pages will be opened. Nobody carries heavy gadgets like laptop now-a-days and if carries then too it is not feasible to search anything about it. If the Business is dynamic like packers and movers, they often needs a guide to help them in getting the information of the place where they have to deliver the goods and commodities, or from where they have to carry away the consignments. They may be sometimes but not always are familiar with the place they are going to visit.

Introduction
2.1 Objective
The objective is to make an android product for the Businessmen to help them exploring their business by providing them with the facility of instant contacting with any organization. Today every businessman has an android phone. By downloading the application, they will be able to use the facilities provided by it. The main objective is to make a user friendly interface of an android application, so as to benefit the businessmen and making it suitable to call and contact to any shopkeeper instantly, without wasting their time. Switching from yellow pages to a ready-made mobile app. In todays scenario, if a person has to search for a place like hotel, coffee shop, college etc. And wants to get appropriate information will search in yellow pages which contains only limited information hence it is wastage of time. To switch from net surfing for a small purpose into a time saving environment. To provide 24*7 facility for searching a place just with the help of a cell phone means Nobody carries heavy gadgets like laptop, all the time and if carries then too it is not feasible to search anything about it. To help the tourist with this app so that they will not require to hire the guide for the place they are going to visit. For taking immediate action like in case of emergency i.e heart attack, immediate action will be needed for going to a hospital, to make a call etc. Employees or Job seekers often require quick response so they would not waste their precious time in surfing over the net or visiting the location. Headache of filling forms over the internet while visiting any website for the purpose of searching can easily be removed; hence no need to worry about the accessibility or leak of our personal information.

2.2 Scope
In future dynamic business directory can be made, in which a user can also make changes. Business directory with updatable database can be made in which a businessman can add a new business of his own or any other business or place like hotel, petrol pump, boutique, his favorite pizza shop etc. Also if user wants, he can delete the place which is of no use for him. This project is only limited to Indore city, but in future it can also be made for 2 to 3 cities or the whole state. A share option can be provided below every organization name, so that the user can share the contact information with anyone. If a similar web application exists i.e. an online business directory then the data (contact information of a place) can be imported from there directly on your android phone.

2.3 Problems in existing system


Problems faced in real life situations are as follows: In todays scenario, if a person has to search for a place like hotel, coffee shop, college etc. And wants to get appropriate information will search in yellow pages which contains only limited information hence it is wastage of time. Even if he will go for an option like internet we need to open a no of web pages which is a time consuming process. Nobody carries heavy gadgets like laptop, all the time and if carries then too it is not feasible to search anything about it.

Tourist often needs a guide and is not familiar with the place they are going to visit.

In case of emergency, like a heart attack, immediate action will be needed for going to a hospital, to make a call etc.

Job seekers often require quick response so they would not waste their precious time.

Headache of filling forms over the internet while visiting any website for the purpose of searching can easily be removed,hence no need to worry about the accessibility or leak of our personal information.

It is helpful for employees they can search the information about the desired company.So helpful in global market to share and access the organization details.

2.4 Justification to the Project


An android application will prove to be a better solution for this, by providing following features: Address information: Complete address. Message: Immediate message facility. Website link: connect you to the official website on just one click. Exact location: Search for exact location on maps (Google maps). Call: In case of emergency immediate call can be made.

This android application will play important role in many areas right from the industries to local places.It is helpful for employees they can search the information about the desired company.So helpful in global market to share and access the organization details.Job seekers can easily search the company or college where they will be going to attend the off or

pool campus.Tourist will not require any guide for the place they are going to visit hence they would really enjoy even more the place without wasting time in querring or searching.

System Requirement Analysis


3.1 Information Gathering (Literature Review)
3.1.1 System Components Identified ACTIVITY: a. Activity is an individual user interface screen in an Android application where visual elements called Views (also known as widgets) can be placed and the user can perform various actions by interacting with it. b. The widgets in an Activity can be created in two different ways, by pure java code and by adding XML code to define the UI. The latter is always preferred.

c.

An application can have more than one Activity and each Activity operates

independently, but can be linked to one another and each Activity created must be defined in the applications manifest file.
SERVICE:

a. b. a.

A service is an Android application component that runs in background and has no Services are used to perform the processing parts of the application in the background. While the user is working on the foreground UI, services can be used to handle the

visual UI.

processes that need to be done in the background. A service can be started by other Android application components such as an activity or other services and it will continue to run in the background CONTENT PROVIDER: a. b. c. d. Content provider in Android provides a flexible way to make data available across Suppose a particular type of data is created in an application and they are stored at any Then through content providers other applications are able to query, access or even In a similar way one can access the data that other utilities have created, by using applications. Suppose you are creating any type of data in your application. storage location, it may be in the data base, file system or in any online storage space. modify the data been created, as long as the content provider allows it. content providers. BROADCAST RECEIVER: a. b. Broadcast receivers are one of Android application components that are used to receive There are many broadcasts that are initiated by the Android system itself and other messages that are broadcasted by the Android system or other Android applications. applications can receive by using Broadcast receiver. INTENTS: a. b. Intents are not one of Android application components; instead it is the component It constitutes the core message system in Android and defines a message to activate a activating mechanism in Android. particular component.

c.

For example, if a new activity is to be invoked from a current activity, intent needs to

be fired specifying the new Activity. And if other application needs to be started from the Activity, then also it would require to fire intent.

3.1.2

System Architecture for Proposed System

Control Flow Diagram:

System Structure:

Methodological contributions: In this project various methods for implementing Google maps, phone dialer, sms service etc. will be required as the major features. Here are few methods which will be used mainly. Methods and resources for Google maps: Geopoint-to set the location of any particular point. setZoom-to zoom in or zoom out in the map. locationManager- which provides APIs to determine location and bearing of the underlying device (if available). animateTo- To animate properties for a View , call animate() to construct a ViewPropertyAnimator object for that View . MAP API KEY-used to programetically access data from google server.

Methods for Dialer: launchDialer- The method launchDialer(String) initiates the phone call.

Various permissions are also used for these services like Geolocation permission Internet Permission call_phone Permission

write_External_storage Permission ,etc.

Packages usedLocation and map based capabilities incorporated into the mobile for users are done using the package android.location and Google Maps External Library. 1. android.locationThe central component of the former package is LocationManager system service which is a class.This class provides access to the system location services which in turn allow applications to obtain periodic updates of the device's geographical location. You do not instantiate this class directly;instead, retrieve it through getSystemService(Context.LOCATION_SERVICE). Once the LocationManager is instantiated,application is able to1. Query for all the LocationProvider for the last known user location. 2. Register/Unregister periodic updates of the user's current location from a location provider. LocationProvider is an abstract superclass that provides the periodic updates of the geographic location of device. Classes and interfaces in the android.location package are1. InterfacesGpsStatus.Listener Used for receiving notifications when GPS status has changed. GpsStatus.NmeaListener Used for receiving NMEA sentences from the GPS. LocationListener Used for receiving notifications from the LocationManager when the location has changed. 2. ClassesAddress A class representing an Address, i.e, a set of Strings describing a location. Criteria A class indicating the application criteria for

selecting a location provider. Geocoder A class for handling geocoding and reverse geocoding. GpsSatellite This class represents the current state of a GPS satellite. GpsStatus This class represents the current state of the GPS engine. Location A class representing a geographic location sensed at a particular time (a "fix"). LocationManager This class provides access to the system location services. LocationProvider GpsStatus.NmeaListenerNMEA 0183 is a standard for with marine electronic devices and is common method for receiving data from GPS . GeocoderA class for handling geocoding and reverse geocoding. Geocoding is the process of transforming a street address or other description of a location into a (latitude, longitude) coordinate. Reverse geocoding is the process of transforming a (latitude, longitude) coordinate into a (partial) address. LocationA class representing a geographic location at a particular time. A location consists of latitude, longitude, UTC timestamp & information on altitude,speed & bearing. 2. Google Maps Android API-External Library To make it easier for you to add powerful mapping capabilities to your application, Google provides a Maps external library that includes the com.google.android.maps package. The classes of the package offer built-in downloading, rendering, and caching of Maps tiles, as well as a variety of display options and controls. The key class in the Maps package is com.google.android.maps.MapView, a subclass of ViewGroup. An abstract superclass for location providers.

A MapView displays a map with data obtained from the Google Maps service. When the MapView has focus, it will capture key presses and touch gestures to pan and zoom the map automatically, including handling network requests for additional maps tiles. It also provides all of the UI elements necessary for users to control the map. Your application can also use MapView class methods to control the MapView programmatically and draw a number of Overlay types on top of the map. Challenges in determining User LocationsWhen developing a location aware application for android, GPS and Androids Network Location Provider can be utilized to get the location of device.Since GPS is most accurate but only works outside, consumes more battery power and does not responds as quickly as expected. Androids Network Location Provider determines user location using cell tower and Wi-Fi signals, providing location information in a way that works indoors and outdoors, responds faster, and uses less battery power. Obtaining user location from a mobile device can be complicated. There are several reasons why a location reading (regardless of the source) can contain errors and be inaccurate. Some sources of error in the user location include:

Multitude of location sources GPS, Cell-ID, and Wi-Fi can each provide a clue to users location. Determining which to use and trust efficiency. is a matter of trade-offs in accuracy, speed, and battery-

User movement Because the user location changes, you must account for movement by re-estimating user location every so often.

Varying accuracy Location estimates coming from each location source are not consistent in their accuracy. A location obtained 10 seconds ago from one source might be more accurate than the newest location from another or same source.

3.2 System Feasibility


After the analysis and specifications of the requirements of the proposed system feasibility study is conducted. It is done to find out whether the system is beneficial to the organization

or not. For each proposed solution it is checked whether it is practical to implement that solution, this is done through feasibility study. Various feasibility aspects are considered . The feasibility study includes the investigation of the information needs of the end user and objectives, constraints, basic resource requirement and cost benefits. The main and prime objective of feasibility study is not to solve the problem but to acquire a sense of its scope. The feasibility study includes the investigation of, Needs of the end user and objectives Information

Constraints Basic resource requirements 3.2.1 Economical The system is economically feasible because there are no requirements of any special Costly hardware or software to develop the system. This system uses minimum resources for development and usage so it is very economic and user friendly system. The organization for which it is meant can avail it at a very low cost. The objectives are fulfilled within minimum resources.Hence our project is economically feasible. 3.2.2 Technical The project is technically feasible because it will not develop or use any technology which is under research. The project uses Android and java as front end and designing is done using Eclipse IDE. The back end of the project is SQLite which is again a part of android itself. In technical feasibility the following issues are taken into consideration: 1. Whether the required technology is available or not? The work for the project can be done wih the current equipment and existing software technology that the organisation possessess. 2. Whether the required resources are available? The system does not have any rigid hard-ware and software requirements and there is availability of the people who can perform the software engineering activities required for the development of the system.Hence, the system is technically feasible. 3.2.3 Behavioral

Behavioral feasibility is concerned with as curtaining the views of the examiners and organizers about the use of the computer facility. The support or the lack of the support that the examiners are likely to give to the system is the critical aspect of the feasibility in all respects except the behavioral and fails miserably because of human problems. Our project is behavioral feasible because it is time saving and reliable. For which problem do you lack good solutions? There was need to create a integrated system which surpasses the expectations of the person needing the information regarding pvc pipes manufacturing company and through which Administrators can also update & access the information from any location all over the world. How would you like to solve it? To solve this problem we have made a web based application through which customer that can do online Registration on the site and without extra effort can get the all the basic information about company.Admin module is also made web based and hence administrators can access from any where in the world.

3.3 Platform specification (Both Development and Deployment)


3.3.1 Hardware Architecture: Android application architecture follows very modern Model-View-View Model (MVVM) architectural pattern in how it handles relationships between GUI and a logic supporting the GUI. This is actually good news for Android developers since this is the latest and greatest architecture for GUI applications at the moment. In MVVM architecture: GUI development is done by a GUI designer in technology more or less natural for this task (XML) Logic behind the GUI is implemented by a developer as ViewModel (which actually means Model of View) component.

Functional relationships between GUI and ViewModel are implemented through bindings that essentially define rules like if a button A is clicked, method onButtonAClick() should be called on ViewModel. Bindings can be written in the code or defined in a declarative way (Android uses both types of bindings) MVVM architecture is used in one way or another by all modern GUI technologies like Microsoft WPF and Silverlight, Oracle (former Sun) JavaFX, Adobe Flex, AJAX.

Backend: SQLite Frontend: SDK Server: apache-tomcat-7.0.23 HardDisk: 29 MB.

3.3.2 Software implementation language/technology Programming language: core java Querry Language: SQL Operating System: Windows XP professional Framework: eclipse helios

3.4 Milestones and Time lines


3.4.1 Software Deliverables 3.4.2 Project Schedule - Gantt chart

System Analysis
4.1 System Specifications
4.1.1 Functional Specifications The functional requirement specifies how the system behaves under certain condition. It describes an interface between system and environment. The functional requirements in our project are: The app is to be designed for all type of users for the places of indore city only. An intuitive graphical user interface is to be offered, that must be accessible through the mobile phone with installation. The app should show the current position on the map. 4.1.2 Non Functional Specifications The nonfunctional requirements describe a restriction on the system that limits our choice for developing a solution to the problem. Usable App Reliable Efficient in finding places Location can be easily detected The project should be completed within one to two months of time. Video promos (if provided by the owner)

24 X 7 availability The cost involved in making the project should be less. It should be able to enhance its functionality time to time as required.

4.2 Information Flow Representation


Activity Diagram:

home screen appears

user types a place name in search bar

clicks on search button

open app

list of item is display

view address

open app

select option

clicks on call button calling get initated

open app

select option

clicks message icon message activity displayed

open app

select option

website opens

open app

select option

clicks on map icon

map view get generated

Use Case Diagram:

Visitor

Search for organization

<<extends>>

<<extends>> <<extends>> <<extends>> <<extends>>

View website View Detail Make a call Send SMS

View map

State chart Diagram:

start

Open application

Splash screeen appears

Search place No Search successful yes Details

OS service interaction

Select option call.message

perform operation

Access permission

Close app

Sequence Diagram :

Collaboration Diagram:

Supplementary Section
5.1 Need of Documentation in Software Engineering Practices
Documentation is an important part of software engineering. Types of documentation include: 1. Requirements - Statements that identify attributes capabilities, characteristics, or qualities of a system. This is the foundation for what shall be or has been implemented. 2. Architecture/Design - Overview of software includes relations to an environment and construction principles to be used in design of software components. 3. Technical - Documentation of code, algorithms, interfaces, and APIs. 4. End User - Manuals for the end-user, system administrators and support staff. 5. Marketing - How to market the product and analysis of the market demand.

5.2 Individual Roles and Responsibilities in Software Development Team


Provide project management and technical leadership for every aspect of software. Prepare lifecycle for different projects inclusive of research, development, design, evaluation, testing along with delivery to product management. Supervise architecture plus lead efforts to develop technical roadmap of all projects. Establish and stimulate software development standards and processes along with best practices for delivery of scalable and high quality software. Perform closely with Engineers, Developers and Product Management throughout organization to influence product development assisting or improving products. Develop relations with existing and prospective internal customers to interpret all individual requirements. Learn and display as how products would add value to respective business. Ensure top quality design reviews attaining business goals. Supervise resource allocation to assure attainment of apt business and personnel development goals. Involve in strategic plans to accomplish technical as well as business with leadership chain, team and with customers.

Manage and execute software development projects from beginning to finish. Evaluate projects, develop and update schedules plus supervise project status. Collaborate effectively with all team members as well as hold regular team meetings.

Vous aimerez peut-être aussi