Abstract:
The world has become more dependent on smart devices, whether through communication, transportation, and search for an information or even entertainment. From this point, our business application helps shopping and facilitates the process for the consumer.
Chapter 1
Introduction
1.1 Introduction:
This mobile application is one of the applications which provide easy and accurate information about commodity in Oman. It aims also to provide information for commodity in very rapid way, moreover it aids the people in making a good plan in shopping and the most important aim is to give general knowledge about different information for commodity of Oman.
During your shopping, how many times did you face the problems of ‘price is not available’, or ‘items are not on the correct shelf’? In these situations, you need to ask for a help from the customer services who may help you or he may be busy with other customers like you; hence you will waste your time waiting for these services. Moreover, they may give you wrong answers for your questions due to their old knowledge about the available glossaries, or mixing prices with other items or for many other reasons where human can easily make mistakes.
In this project we aim to make your shopping more easily, more comfortable and faster. Moreover, we aim to avoid you facing the mentioned problems with human customer services.
We are developing a mobile application that can help you during your shopping. Nowadays, we hold our smart phones everywhere, and we use mobile applications for many purposes.
The shopping helper mobile applications is an application that allows people to find details about the glossaries; using the application you can search for the available items, check prices at high speed and easily manner.
1.2 Problem statement
Many times while people are shopping for their glossaries, they are facing many problems such as: price is not available, items are not on the correct shelf, customer services are busy and cannot help you or may give wrong prices or answers for people questions or customer service may be busy.
1.3 Project aim:
The main aim of our project is to build a mobile application that will help you during your shopping, to find details about your glossaries, to make your shopping more easily, more comfortable and faster.
This proposed mobile application will avoid you facing the mentioned problems with human customer services.
1.4 Objectives
The objectives of our proposed project are:
1. Build and design simple usable welcome interface for the application.
2. Give the user flexibility of using the application; by offering different ways of entering their request QR code, by writing the code number or using camera to capture the QR code.
3. Capture the image for QRcode and recognize the number.
4. Enter QRcode as text
5. Search for the product and display the price.
6. View product details (name and price)
7.
1.5 Programming Tools:
1.5.1 Software:-
1.5.1.1 XAMPP: ‘ will create a virtual server on your computer, allow you to preview the results of what you programmed before uploading it to the real server on your site. This program supports several languages and programming tools including PHP, Perl, MySQL, Other programming languages, also supports some applications such as Word press and Droplet. What’s more, it supports several operating systems (Windows, Linux, Mac, and Solaris’. (1)
1.5.1.2 android studio: ‘Android Studio, launched by Google, is a unique program and unique in the extraction of files and telegram pairs and detection of the smallest function either encrypted or normal in the APK formats and also used in the creation and programming of applications Android system, relies heavily on the language JAVA of Java In order to create an application, it is necessary for those who want to use it to learn it first. If you are trying to create simple applications or modify an application, you can rely on some of the lessons available on the Internet to learn some Java terms you’. (2)
1.5.1.3 PhpMyAdmin:’ is database management software that many people know and use to manage databases on their websites or personal computers. This program is phpMyAdmin. This program is a PHP application, which is a script you download on your site and then request the program page of your browser’. (3)
__________________________________________________________________
[1] https://www.quora.com/What-is-XAMPP-and-how-to-use-it
[2] https://developer.android.com/studio/features.html
[3] https://www.phpmyadmin.net/
1.4.1.4 MySQL Workbench:’ is a visual database design tool that integrates SQL development, administration, database design, creation and maintenance into a single integrated development environment for the MySQL database system. It is the successor to DB Designer 4 from fabFORCE.net, and replaces the previous package of software, MySQL GUI Tools Bundle’. (1)
1.4.2 Hardware:-
* Mobile phone android
[1] https://dev.mysql.com/doc/workbench/en/wb-intro.html ‘
Chapter 2
Analysis
2.1 Mobile Application Process model.
Mobile application development is the set of processes and procedures involved in writing software for small, wireless computing devices such as smartphones or tablets. In order to develop our proposed mobile application project, we have chosen the agile methodology for the development process.
Agile software development is a method to development software where requirements and solutions evolve together. It supports adaptive planning, evolutionary development, delivery, and continual maintenance. This development method encourages flexible and rapid response to change. (1)
Agile methodology is finding its significance and impact in the mobile app development. Agile is a process of creating software applications, which emphasize on offering high-quality software, while reducing the costs.
Figure1 shows the common steps in agile software development process for mobile applications:
Figure 1: Agile method for Mobile application development
As you can see in the figure above, the development process involves many phase which are explained bellow:
1. Brain storming: in this phase the requirements will be defined, gathered and analysed, and finally documented. This requirement is able to be changed and updated at any stage.
2. Design: in this phase a design for the proposed system with the defined requirements will be developed, and one or more prototype for the system will be developed. This prototype is used to check the requirements validation.
3. Development: coding and programming for the system are done in this phase. Where you need to implement the defined requirements.
4. Quality assurance: identify errors and defects, verify the implementation against errors and resolve bugs.
5. Deployment: at this stage the product is ready to be used, it will be deployed and used. Technical support should be available for any maintenance.
2.2 Brain Storming and Information Gathering:
The first phase of application development is requirement definition and information gathering, where we need to collect as much information as possible about the target application. We have collected the requirements of our application by developing a questionnaire and doing a literature review for similar applications.
2.2.1 Questionnaire:
The questionnaire is used for an information gathering that allows system analysts to study attitudes, beliefs, behaviour and characteristics of several key people in the organization who may be affected by the current and proposed systems requirements. (1)
A questioner has been developed, fifteen copies distributed for Al Zara college students of Information Technology department and we got the following results:
A) Pot (T) in your choice:
No Sometimes Yes Questions
0 6 9 Do you think this app to show the available good product will help to facilitate shopping
3 3 9 Do you think playing the price of goods products will help to buy the product
2 5 8 Through your shopping Do you need an application to help you to know the price of product
0 0 15 Do you prefer to see the price of product before you buy it
1 7 7 During your shopping do you face the problem of “price is not available on the product
Figure Q1-Analysis (2-1)
Sixty percent of people believe that this app to show the available good product will help to facilitate shopping, while the rest forty percent said some times.
Figure Q2-Analysis (2-2)
Sixty percent of people see that displaying the price of goods products will help to sell the product, twenty percent see the opposite and twenty present answered some times.
Figure Q3-Analysis (2-3)
Fifty four percent of people said that they need an application to help you to know the price of product, while thirty three percent of them said sometimes, the rest thirteen percent answered no.
Figure Q4-Analysis (2-4)
All of the people preferred to see the price of the product before buying it.
Figure Q5-Analysis (2-5)
Forty six percent of people believe there is a problem of price is not available on the product. While forty seven percent say some times and seven percent said no.
Result of Open Questions:
B) How can you find the price of good / products if it is not written on product? (Choose one of)?
1- I ask who works in the market.
2- I don’t need to know the price.
3-I try to find another product that have price
4-I have another way to find ______________________________________.
Most of answers were the first choice (asks who works in the market) and the third choice (I try to find another product that have price).
C) Do you have any more suggestions that will help in shopping?
Conclusion:
We have the following answers:
1-Shopping by online.
2- Be in the helper application.
3- Your shopping cart will be mobile.
2.3 Literature Review: A few of application that help user to get QRCODE
2.3.1 Free QR Scanner (1)
Secure, high-speed barcode and fast-response code scanner running on Android! Scanner for all kinds of QR codes and bar codes! Very simple and easy to use.
Pro:
‘ Quick scan
‘ Save to record with scans
Con:
‘ Used in Android only.
‘ Only with QRcode
2.3.2 QR & Barcode Scanner: (1)
A modern application to scan barcode codes and QR codes includes all the features that you need. Clear any quick response code or bar code for additional information that includes results from popular Internet services Amazon, eBay, Google – Free 100%.
Pro:
‘ Use QR & Barcode Scanner
‘ Can shearing code
Con:
‘ Used in Android only.
‘ Interface with Arabic language.
2.3.3 Quick Scan – QR Code Reader: (1)
Quick Scan helps you scan and decode all the QR codes around you, including contact, detail, plain text, website URL, and more. It is transforming your life towards an easier and more convenient way.
Por:
‘ Create your own QR codes.
Con:
‘ Used in ISO only.
‘ Only with QRcode.
__________________________________________________________________
(1) https://play.google.com/store/apps/
2.4 Application Requirement:
2.4.1 Functional requirement:’ for a system describe what the system should do. These requirements depend on the type of software being developed, the expected users of the software, and the general approach taken by the organization when writing requirements.'(1)
‘ Display a welcome interface
‘ Image capture for QRcode
‘ Enter QRcode
‘ Search and product offer price
‘ View product details (name and operations)
2.4.2 Non-functional requirement: ‘as the name suggests, are requirements that are not directly concerned with the specific services delivered by the system to its users.'(1)
‘ Availability: should be available 24 house all the days.
‘ Easy to use: to need for demo or explanation how to use the application.
‘ Portable: could be run on any mobile device.
‘ Performance: give you to needed information about the product in a very short time.
‘ Accurate: give the real and accurate information
‘ Maintainability: it could be maintain easily, and upgraded easily.
____________________________________________________________________________ (1) BOOK: Software Engineering: CHEPTER: Requirements engineering chapter (4)
Chapter 3
Design
3.3 Diagrams
3.3.1 Data Flow Diagram
Figure 3.1: Flow Chart diagram ‘ application Get QRCODE
3.1 Data Flow Chart
The user can get the QR code either by taking a picture or writing the QR code. If the user chooses to capture the QR code, the camera will scan it and look at the table. If the QR code is found, the name and price will be displayed. If it is not found, it displays a message containing the QR code not in the table and returns to the camera page. If the user chooses to type, he or she will write the QR code. If the QR code is found in the table, it displays the name and price. If it is not found, it displays a message containing the QR code not in the table and returns to the write page.
3.3.2 Activity Diagram
Figure 3.2: Activity Diagram ‘ application Get QRCODE
Description
The program starts by displaying the two options. If the user does not select the camera, he or she will select QR code. If the user selects the camera, he will take a picture of QR code. If he finds the QR code in the table, he will display the name and price. And if he does not find it, he will display a message containing the not found QR code in the table and returns to the page of the camera. If the user chooses to write, he will write the QR code. If the QR code is found in the table, it will display the name and price. And if he does not find it, he will display a message containing the not found QR code in the table and returns to the write page.
” ” ” ”. ” ” ” ” ” ” ” ” ” ” ……………… . ” ” ” ” ” ” ” ” ” ”……………….. . ” ” ”…………. ” ” ” ” ” ” ” ” . ” ” ” ” ” ” ” ” ” ” ” ”…………. ” ” ” ” ” ” ” . ” ” ” ” ” ” ” ” ”……………….. . ” ” ”………. ” ” ” ” ” ” ” ” . ” ” ” ” ” ” ” ” ” ” ” ” ”…………. ” ” ” ” ” ”
3.3.3 Class Diagram
Figure 3.3: class diagram ‘ application Get QRCODE
Interface1:
on create
Interface2:
on create goToMain3Activity goToMain-Activity
camera:
onCreate surfaceCreated surfaceChanged
surfaceDestroyed receiveDetections onRequestPermissionsResult
onClick nhidePDialog onResponse onCreateOptionsMenu
write:
onCreate hidePDialog onClick onResponse
+onCreateOptionsMen
Product DB:
int idnum String name int price Prodect
getIdnum setidnum getname setName
getprice setPrice
3.3.4 Sequence Diagram
Figure 3.4: Sequence Diagrams ‘ Mobile Get Color
3.4.1 Identify structural elements
1. objects:
‘ User
‘ interface
‘ write
‘ camera
‘ product DB
3.4.2 Description
The user should install the software on mobile phone before start the application. Then mobile application makes a request for operating system to allow start the camera system. When the operating system receives the request, then the application show the application. The user selects between his or her number or icon. If the user chooses the camera, he / she will photograph, prepare, and record the data on the same page. If you choose to write the code, the data is prepared and displayed on the same page also.
Chapter 4
Implementation
Interface designs
Figure 4.1: interface1
Figure 4.1 shows interface1 for our application as you can see bellow, this interface will be displayed with the program logo for 5 seconds and then disappeared automatically.
Figure 4.2: interface2
Figure 4.2 is the second interface that displays two buttons (camera and write), the user has to select one of these two options in order to enter the QR code.
If he pressed write button , another interface will be displayed ; figure 4.3, where he has to enter the QR number and when he presses Ok button, the name and price will be displayed.
Figure 4.4 shows the other interface for select camera option, If he chooses to photograph the code, he has to make sure that the QRcode correctly appears. Pressing OK button shows the name and price in their of the product.
Chapter 5
Recommendations & CONCLUSION
5.1 Conclusion
Through this process, we enjoyed working with us and had A great learning experience. I had the privilege of getting into a full program The development life cycle is directly from the stage of gathering requirements. Moreover, the The concepts of software engineering that I have learned in theory have already been implemented in practice. Working with a refurbished company was a great learning experience to learn Standards and areas of application. While recognizing all the assistance my seniors gave me and with duty Respect and sincere gratitude to the teachers who had an instrumental role in shaping me, and me Submit a draft report for consideration. Although I paid the maximum Attention to merging the maximum facts and figures in my report, I take these An opportunity to get an amnesty for any unintentional error in the data that has been Compiled and included in this report.
5.2 future work
5.2.1 Recommendations
There is a limitation in time stands against development; therefore, not every feature considered important in our project is included
5.2.2 Recommended features
‘ Adding the barcode
‘ Using more than one language
‘ Adding products which contain QR code
‘ Arabic interface
‘ Adding new features (size, color , due date, production date, origin country)
Chapter 6
References
‘ BOOK: Software Engineering: CHEPTER: Requirements engineering (4)
‘ https://play.google.com/store/apps/details?id=me.scan.android.client
‘ https://play.google.com/store/apps/details?id=app.qrcode
‘ https://play.google.com/store/apps/details?id=com.application_4u.qrcode.barcode.scanner.reader.flashlight
‘ https://www.quora.com/What-is-XAMPP-and-how-to-use-it
‘ https://developer.android.com/studio/features.html
‘ https://dev.mysql.com/doc/workbench/en/wb-intro.html
‘ https://www.phpmyadmin.net/
‘ http://www.pratikbutani.com/2016/03/projects-reports-sample-for-final-year-students-android-php-ios/
…