ProductsLogo
LogoStudy Documents
LogoAI Grader
LogoAI Answer
LogoAI Code Checker
LogoPlagiarism Checker
LogoAI Paraphraser
LogoAI Quiz
LogoAI Detector
PricingBlogAbout Us
logo

Mobile Application for Online Stationary Shopping

Verified

Added on  2023/06/08

|89
|19534
|95
AI Summary
This research paper consists of an android application that comprises of stationary items. The main aim of this research paper is to build an interface where the users using the application can do online shopping from the application without security and data breach risks.

Contribute Materials

Your contribution can guide someone’s learning journey. Share your documents today.
Document Page
Running head: RESEARCH PAPER
Research Paper: Mobile Application for Online Stationary Shopping
Name of Student-
Name of University-
Author’s Note-

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
1RESEARCH PAPER
Acknowledgement
I have taken efforts in this project. However, it would not have been possible without the kind
support and help of many individuals and organizations. I would like to extend my sincere thanks
to all of them.
I am highly indebted to (Name of your Organization Guide) for their guidance and constant
supervision as well as for providing necessary information regarding the project & also for their
support in completing the project.
I would like to express my gratitude towards my parents & member of (Organization Name) for
their kind co-operation and encouragement which help me in completion of this project.
I would like to express my special gratitude and thanks to industry persons for giving me such
attention and time.
My thanks and appreciations also go to my colleague in developing the project and people who
have willingly helped me out with their abilities.
Document Page
2RESEARCH PAPER
Abstract
This research paper consists of an android application that comprises of stationary items. This
application that will be designed will be user end application as well as admin end application
where the user can use the application for buying stationary goods online and the admin can
manage the products that are to be sold through the application. The admin will also receive
emails once the customer places an order and the admin will work accordingly. The concept of
the application will be similar to any other kind of online shopping app, but the graphical
resources of the application will be highly compressed. This will take very less time to compress
and can be loaded with low internet connectivity.
The main aim of this research paper is to build an interface where the users using the application
can do online shopping from the application without security and data breach risks. With this
online buying shopping application, the user feels very reluctant while using this application as
the risks factors related with the application are secured by encryption process and implementing
SQL Injection while developing the application.
Document Page
3RESEARCH PAPER
Table of Contents
Table of Figures...............................................................................................................................6
Table of Tables................................................................................................................................8
1. Introduction..................................................................................................................................9
1.1 Background of the Research..................................................................................................9
1.2 Scope of the Research..........................................................................................................10
1.3 Aim and Objectives.............................................................................................................10
1.4 Research Questions..............................................................................................................11
1.5 Summary..............................................................................................................................11
2. Literature Review......................................................................................................................12
2.1 Android Operating System..................................................................................................12
2.2. Android Application...........................................................................................................13
2.3 Main Building Blocks..........................................................................................................13
3.4 Programming Languages.....................................................................................................14
3.5 Advantages of Using Android Mobile App.........................................................................15
3.5.1 Provides more value to all the customers.....................................................................15
3.5.2 Customers have less waiting time.................................................................................15
3.5.3 Reduces the cost as well as increases the customer engagement.................................16

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
4RESEARCH PAPER
3.5.4 Mobile applications helps in promotion as well as offers huge support to the business
...............................................................................................................................................16
3.5.5 Enhances visibility of a particular brand......................................................................16
3.5.6 Mobile application are best platform social media.......................................................17
3.6 Customer Relationship Management...................................................................................17
3. Research Methodology..............................................................................................................18
3.1 Introduction to Software Development Methodology.........................................................18
3.2 Software Development Lifecycle Models...........................................................................20
3.2.1 Agile Software Development Methodology.................................................................20
3.2.2 Extreme Programming Software Development Life Cycle..........................................21
3.2.3 Lean Development Methodology of Software Development Life Cycle.....................23
3.2.4 Waterfall or Traditional Methodology of Software Development Life Cycle.............24
3.3 Requirement Analysis..........................................................................................................26
3.4 Requirement Descriptions...................................................................................................27
3.5 Functional Requirement.......................................................................................................30
3.6 Non-Functional Requirement..............................................................................................30
3.7 Non-functional Requirement Descriptions..........................................................................31
3.8 MoScOW Technique...........................................................................................................33
3.9 Design..................................................................................................................................35
3.9.1 Use Case Diagram........................................................................................................35
Document Page
5RESEARCH PAPER
3.9.2 Class diagram................................................................................................................42
3.9.3 Sequence diagram.........................................................................................................43
3.10 Implementation..................................................................................................................44
3.11 Screenshots of running mobile app....................................................................................67
3.12 Testing...............................................................................................................................79
3.12.1 Methodologies Involved in Application Testing........................................................80
3.12.2 Test Plan Required for Application Testing...............................................................81
3.12.3 Tools for Application Testing.....................................................................................81
3.13 Evaluation..........................................................................................................................81
3.13.1 Overview of the application........................................................................................81
3.13.2 Peer review.................................................................................................................82
4. System Analysis.........................................................................................................................84
4.1 Legal, Social, Ethical and Professional Issues.....................................................................84
6. Future Recommendations..........................................................................................................85
5. Conclusion.................................................................................................................................85
6. References..................................................................................................................................87
Document Page
6RESEARCH PAPER
Table of Figures
Figure 1: Activity Cycle of Android..............................................................................................14
Figure 2: Agile Methodology of SDLC.........................................................................................21
Figure 3: Extreme Programming Methodology of SDLC.............................................................22
Figure 4: Lean Development Methodology of SDLC...................................................................23
Figure 5: Waterfall Development Methodology of SDLC............................................................25
Figure 6: Use Case Diagram of User End.....................................................................................35
Figure 7: Use Case Diagram of Admin End..................................................................................41
Figure 8: Class Diagram of Mobile Application...........................................................................42
Figure 9: Sequence Diagram for the MyStationaryApp................................................................43
Figure 10: MainAcitivty layout.....................................................................................................56
Figure 11: MainAcitivty java 1......................................................................................................56
Figure 12: MainAcitivty java 2......................................................................................................57
Figure 13: MainAcitivty java 3......................................................................................................57
Figure 14: Items Activity Layout..................................................................................................58
Figure 15: Items Activity Java 1....................................................................................................58
Figure 16: Items Activity Java 2....................................................................................................59
Figure 17: Items Activity Java 2....................................................................................................59
Figure 18: Items Activity Java 2....................................................................................................60
Figure 19: Cart Activity Layout 1.................................................................................................60
Figure 20: Cart Activity Layout 2.................................................................................................61
Figure 21: Cart Activity Layout 3.................................................................................................61
Figure 22: Cart Activity Layout 4.................................................................................................62

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
7RESEARCH PAPER
Figure 23: Cart Activity Layout 5.................................................................................................62
Figure 24: Order Activity Layout..................................................................................................63
Figure 25: Order Activity Java......................................................................................................63
Figure 26: Admin Activity layout..................................................................................................64
Figure 27: Admin Activity Java 2.................................................................................................65
Figure 28: Admin Activity Java 3.................................................................................................65
Figure 29: Header Menu Layout (Cart Page with checkout option).............................................66
Figure 29: Check the display of home page..................................................................................67
Figure 30: Check the Stock Update Option of admin....................................................................68
Figure 31: Check if all items are updateable for admin.................................................................69
Figure 32: Allow stock Update......................................................................................................70
Figure 33: Items Out of Stock.......................................................................................................71
Figure 34: Logout Page.................................................................................................................72
Figure 35: Order Placed with unique order id...............................................................................73
Figure 36: Order Removal.............................................................................................................74
Figure 37: Check If Empty cart error is displayed........................................................................75
Figure 38: Login Check for Customer...........................................................................................76
Figure 39: Incorrect password or email.........................................................................................77
Figure 40: Registration successful.................................................................................................78
Figure 41: Check Invalid mail.......................................................................................................79
Document Page
8RESEARCH PAPER
Table of Tables
Table 1: The user rate statistics of the Android versions...............................................................24
Table 2: Use case of “Add items to cart......................................................................................29
Table 3: Use case of “Customer Sign Up....................................................................................30
Table 4: Use case of “Product categories and items....................................................................31
Table 6: The user rate statistics of the Android versions...............................................................33
Document Page
9RESEARCH PAPER
1. Introduction
1.1 Background of the Research
With the increasing usage of mobile phones, the need of online application has also
increased. Customers nowadays prefers to move with the flow of new trend that comes in use.
The customers prefers to use the new trend of online application for all their daily commodities
and for all their needs (Jamieson et al. 2015). For, this reason, the use of mobile application are
very much in use. With the mobile application, customer can keep all their information at their
fingertip. Online mobile application helps to increase the brand loyalty and train the customer as
customers can make shopping anytime and anywhere they like to (Ma, Gu and Wang 2014).
There are many benefits that online mobile application provides. With the brand loyalty, it also
increases the brand visibility, helps to remain connected with their on-the-go customers, easy
accessing of the inventory, helps to get notification at special events (Rosas and Ridings 2017).
The best benefit that an online mobile application provides is one-touch access of the inventory
and makes the process fast.
The mobile application tool is very effective tool which extends the business reach to
the customers in single platform (Searles et al. 2016). Mobile application is helpful for both the
customers and the merchants. The concepts that are used for building an online mobile app is
developing wireframes as well as storyboards, defining the backend of the mobile app, and then
finalize the wireframe and test the prototype of the application (Uzilov et al. 2016). After
finalizing the app, the application will be developed by implementing java, SQLite database
which the developer will need to build the app. Without and clear idea about the SQLite and the
java programming languages, it is not possible to develop this application successfully. The
application that will be developed will contain online stationary goods from which the users can
buy products.
Concepts and functionality: This application that will be designed will be user end
application where the user can only user the application. There will not be any admin end
usability for the application that will be designed. The only admin end functionality that will be
configured is the admin will receive emails once the customers places an order. The concept of
the application will be similar to any other kind of online shopping app, but the graphical

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
10RESEARCH PAPER
resources of the application will be highly compressed. This will take very less time to compress
and can be loaded with low internet connectivity.
Algorithms: The algorithms that will be used while developing this application is linear
search algorithm, where the customers can search the products in the app. Also, sorting
algorithms will be used that will help the customers to filter their choices according to their
demand.
1.2 Scope of the Research
This application that will be designed will be user end application as well as admin end
application where the user can use the application for buying stationary goods online and the
admin can manage the products that are to be sold through the application. The admin will also
receive emails once the customer places an order and the admin will work accordingly. The
concept of the application will be similar to any other kind of online shopping app, but the
graphical resources of the application will be highly compressed. This will take very less time to
compress and can be loaded with low internet connectivity.
This project aims to develop an online shopping app which the users can use for buying
online stationary products. The application that is intended is an online app for buying of
stationary products. The application planned will be designed by keeping the security of the data
involved in the application. The application is secured by using the encryption process and
implementing SQL Injection. This project of designing the application is carried out in different
phases. Firstly, the project should be analyzed, then application should be designed and
developed. After designing and developing the application, there is testing phase and after the
testing is completed, the application is then evaluated.
1.3 Aim and Objectives
The main aim of this research paper is to build an interface where the users using the
application can do online shopping from the application without security and data breach risks.
With this online buying shopping application, the user feels very reluctant while using this
application as the risks factors related with the application are secured by encryption process and
implementing SQL Injection while developing the application (Meerscheet al. 2016). For making
this product, mainly five phases are carried out that includes analyzing the project, designing the
application, developing the application and finally evaluating them.
Document Page
11RESEARCH PAPER
The objectives that are stated for this research paper are SMART that includes specific,
measureable, actionable, relevant as well as time bounding to the research study. The objectives
of this research paper is stated below:
To build an application that fulfills the aim of this research project.
To make a user friendly application through which the user can easily buy online
stationary via this application.
To investigate system modelling and design that helps in software development of the
online shopping application.
To test whether the online shopping application works well as per the requirement of the
users.
To overcome the security risks and management risks related with developing of
application and ways to mitigate those risks.
To make the application cost effective which will save the money of the user and the
seller as well.
1.4 Research Questions
How to make the application user friendly which will help the user to buy easily online
stationary with this app?
How to test whether the online shopping application is working well as per the
requirement of the users?
What are the system modelling and designs used software development of the
application?
What are the risks associated with the application and how to overcome the risks
associated?
Why people and businesses prefer mobile app over website?
Why mobile app is more convenient than website?
What are the Advantages of this mobile app for my client?
Comparison between mobile app and Responsive website.
How to attract more customer through mobile app?
1.5 Summary
For building the application of online shopping, proper designing, with proper
requirements are to be set first. For developing the app, the developer must firstly clear all the
Document Page
12RESEARCH PAPER
business requirements of the application that is for what purpose the app is being developed.
Secondly, all the technical requirements and the detail requirements of products are also to be
enlisted that are needed to develop the product.
For ensuring the second objective, the interface of the application will be built with the
help of android studio. With the help of android studio, the developer can built a user friendly
interface.
For overcoming the risks associated with the application, SQL Injections are
implemented along with proper encryption technique. This will help to make a secure application
where there will be less chance of data breach.
2. Literature Review
2.1 Android Operating System
Arzt et al. (2014) defined android is comprehensive platform of open source that is
designed for the mobile devices. The android is championed by Google and is owned by the
Open Handset Alliance. The main aim of the Alliance is to accelerate the innovation in the
mobile computing as well as offer the consumers a less expensive, rich as well as a mobile
experience in a much better way. Android is a platform that carries out all these features for
developing a mobile application. Android is considered as an operating system that is based on
Linux. This Linux based android operating system is basically used for running the mobile
device including the smart phone as well as the tablet computers. The usability of Android is not
only limited to mobile devices. The features of android is very wide and it has many
customizable features. Android has wide range of many electronic devices which includes
laptops, cameras, game consoles, home automations, headphones, wristwatches and many more
(Li et al. 2017). The android operating system is a hardware that is independent as well as runs
on the device that has different vendors. The android is not like proprietary operating system
which includes the iOS, Windows OS, iOS, Blackberry OS, S40 OS and some other operating
systems. These operating system is licensed as well controlled by many companies. In the year
2013, the android operating system dominates the smart phones market by containing about 74.4
% of the smartphone sales all over the world. Android is an operating system that is full-fledged
as well as has complete stack of software for the mobile devices. The android APIs provides
some set of system service that are wrapped in class files that gives easy access to all the features

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
13RESEARCH PAPER
including WiFi, media, camera, location, telephony, web and many more. All tools that are
included in the android system, frameworks as well as software that are necessary for developing
a particular mobile application are freely available.
2.2. Android Application
Android application is considered as a software application of mobile that are used on
the devices that are powered by Android platform of Google. The android application is written
in different programming languages. The “Online Stationary Mobile App” that is designed in this
research paper consists of different types of programming languages including Java
Programming. The application for “Online Stationary Mobile App” has high code of Java
included. The developers of the application can tap easily huge stack of the system service,
libraries, as well as tools that are used for making the application.
2.3 Main Building Blocks
The main blocks of building an application are the main components that a developer
can use for building an android application. These particular components helps to break down
work in conceptual units that are usually small. This is because they can work with those
conceptual units independently as well as put all the components together as complete package.
There are basically five components application that are essential for building an application in
android operation system. These particular components of application is important for all the
developers of application for understanding in details. The major actions while developing an
application are switching in between the screens or the applications, manipulation of database,
triggering the events, receiving all notifications and many more. These actions are to be
performed by the application that is developed on android operating system.
Activity of an application is a component that gives a screen to the user by which they
can interact in ordering to perform many tasks including dial on the phone, take photo, send
email, as well as view map. An application may have many different activities where the user
can flips the device back and forth. Launching of an activity is very vital part of the development
process of the android application. The activity class provided in the android framework gives a
wide range of features that includes displaying the user interface, creates new process for Linux
as well as allocate the memory of the User Interface objects (Allix et al. 2016). The android
application mainly has one activity where the user notices when the application is launched and
also the user can navigate all the activities that are required for using the application. When a
Document Page
14RESEARCH PAPER
user launches some particular activity, the activity that was running previously will be stopped
and android system preserves all the activity that are processed in stack. The activity that was
previously running can be resumed anytime while pressing the back button when the user
completes the current activity or process. Android system has activity lifecycle that are well-
defined. The operations system of android manages all the process activities by changing the
state. The below diagram shows that process activities in whole developing an android
application.
Figure 1: Activity Cycle of Android
(Source: Deng et al. 2017)
3.4 Programming Languages
For developing a particular mobile application, there can different developing languages
as well as platforms. The “Online Stationary Mobile Application” that is developed for this
research paper uses two programming languages, JAVA and XML. JSON is used for storing as
well as exchanging the structured data over the network connection (Bavota et al. 2015). Java
language that is used for developing the application is a general purpose, class based, structured
as well as generic language of computer programming. The application of android is mainly
based on the Java fundamentals. The Java platform incorporates many several features as well as
Document Page
15RESEARCH PAPER
libraries consisting of many programming languages like C as well as C++. The main reason for
choosing the Java programming language for the android application are stated below:
Java is very easy for understanding as well as learning.
It is very platform independent as well as secure.
Java language is object oriented.
The Java code is mainly compiled and are mainly run by Virtual Machine.
XML (Extensible Markup Language) language that is used for developing this
application is commonly known as mark-up language. XML contains very simple, flexible as
well as scalable text format that is both readable by human as well as readable by machine. The
XML language defines set of rules that helps to encode document, and provides usability over
Internet. XML is a data format that is used on the Internet. XML is very easy parse as well as
manipulate them programmatically. The resource of android pre-processes the XML in the
compressed in binary format as well as stores them on the device. Most of layout of User
Interface design, the screen elements are then declared in the XML files.
3.5 Advantages of Using Android Mobile App
People and business prefers to use mobile application more than the website
applications because they are helpful in many ways to them. With the involvement of the mobile
application, the customer as well as business both gets advantage from the implementation. The
benefits of mobile application are stated below:
3.5.1 Provides more value to all the customers
Martini, Do and Choo (2015), stated that all the business provides reciprocation and the
businesses must be done in their best way by which they encourage the customers. Some of the
businesses wants to increase the interaction with the customers for promote their sales, and one
should also provide level of value to all the customers to keep their customers intact within the
company. It is very easy to create an application that includes loyalty program for attracting
more customers within their business service of products. There are many business applications
as well that offers their app subscribed customers rewards for subscribing to their app. In this
way, the v-business motivates their customers for buying the products and also change their
rewards value from time to time to retain their customers and hold their business market.

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
16RESEARCH PAPER
3.5.2 Customers have less waiting time
The mobile applications that are used by the businesses basically provides a faster
service as well as provides easier way in alternative to the web browsing. Without the mobile
application, if the user wants to buy some products or get some service from an organization, the
user needs to search a web browser and put the URL of the company for searching the products
and access a website of a particular product. The mobile applications helps to get rid of all these
types of problems only by installing the app of the organization in few seconds and search
anything at any time without investing extra time. As mobile application has no waiting time,
most of the customers gets attracted more towards using the mobile application.
3.5.3 Reduces the cost as well as increases the customer engagement
As stated by Li et al. (2017), the mobile applications that are used by a customer are
very much cost efficient when compared with the instant messages as well as traditional
advertising. The communications that are used in the applications are secured and are used for
messaging the customer directly. All the mobile applications helps to reduce the work of the
staffs. Most of the customers likes to use the mobile applications of a company as it connects
them directly to business. The businesses likes to implement mobile application to their business
processes for improving the processes in the businesses as well as helps to increase to
accessibility level of the customers. The mobile applications that are used are most valuable way
for increasing their business value in the competitive business market.
3.5.4 Mobile applications helps in promotion as well as offers huge support to the
business
A particular business implements business application with many offers as well as deals
for attracting more customers in to their business and retains the customers as well. The
companies must be sure to create an offer which is mostly irresistible as well as notifies their
customers about the offers and deals through their apps only. For promoting the business as well
as for retaining their business benefits, a user should have a mobile application. The customers
also needs to support the business app. Customer support is another big important factor that
helps to retain the potential clients along with the business (Li et al. 2015). Responding to all the
customer queries as well as resolving the issues have become much faster than ever with the
implementation o the mobile app. A particular mobile app also helps the customers by providing
instruction to them and solve the issues when the customer faces problems.
Document Page
17RESEARCH PAPER
3.5.5 Enhances visibility of a particular brand
In this competitive market, the best tools that are used for enhancing the visibility of a
particular brand is by using a mobile app. The awareness of the brand as well as the name of
brand increases tremendously with the implementation of mobile app. Mobile applications works
as billboard sign for the company. While using a mobile app, the app should look good as well as
have good features to attract the customers. This will help to increase the brand value of the
company.
3.5.6 Mobile application are best platform social media
The customer of today’s generation are very much obsessed with the social media. If a
company offers them with a mobile app, they can share the application on the sites of social
media. The customers also can discuss about the services and the products that are offered by a
company and can give rating for the app they use (Arzt et al. 2014). Most of the people spends a
lot of time on the social media as well as on their mobile apps that are used for interactions in
social media. With the help of mobile applications, sales have become easier as never before.
Social media has changed the way about how people view their business and customers can give
review, sell or buy products or services from their application. So, it very much important for the
business provide a dedicated application for mobile.
3.6 Customer Relationship Management
The Customer Relationship Management, commonly known as CRM is a management
system that includes practices, technologies as well as strategies that are needed in a company for
managing as well as analyzing the interactions between the customers and the data throughout in
the customer lifecycle along with goal that improves the relationships of customer service and
assists the customer retention and the growth rate of sales.
There are many components that are included in CRM. The software of CRM
consolidates the information of customer as well as the documents included in single database of
CRM. This is done so that the businesses are easily accessible as well as can manage them
properly. Many functions are included in the system of CRM to make it more useful. Some
functions involve recording the interactions with customers over social media, phone, email or
different channels. The functions depends on the system capabilities, with different automation
workflow processes which includes alerts, calendars, as well as tasks. These functions also
Document Page
18RESEARCH PAPER
provides the managers to track the performance as well as productivity that is based on
information that is logged in the system.
CRM helps in marketing automation that makes the capabilities automate their
repetitive tasks for enhancing the market effort at various points. CRM also provides sales force
automation for tracking the customer interaction as well as automate the business functions for
sales cycle in the business. The geo-location technology is the latest technology that is used by
CRM.
This application that is designed in this research can use the technology of CRM
because with the help of CRM, the customer can get quick information about the users who are
interested to buy their products. CRM provides an interaction in between the customers and the
company by which the customer can interact with the company and share their experience with
the company.
3. Research Methodology
3.1 Introduction to Software Development Methodology
The introduction to Software Development Life Cycle emerged in the year 1960.
According to Arzt et al. (2014) the SDLC (Software Development Life Cycle) methodology is
known as the oldest methodology framework that works for building the information system.
The idea that lies behind Implementing SDLC is mainly to get the development of all the
information system in a structured way, deliberate way as well as methodical way. For pursuing
this development, each stage is required in the life cycle that is from inception to delivery idea of
final system that is to be designed. All these steps are carried out in a sequential way as well as
rigidly. The main goal of this SDLC framework methodology back in 1960 was to develop all
the large scale business systems that were functional in age of large scale conglomerates. The
activities of the information systems are revolved around data processing that are heavy as well
as taking the total number of routine crunches.
The methodology of software development is basically a process or some group of
processes that are being used for developing a software. Processes included in Software
Development Life Cycle are design phase, testing phase, development phase, implementation
and many more. Many authors have presented the Software Development Life Cycle (SDLC) in
their own way and therefore development methodology has many definition.

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
19RESEARCH PAPER
As per Boughzala and De Vreede (2015) the processes of software development has
been changed from its invention and the growth of the software development in recent times has
increased in the recent times. The recent improvement of the software development has different
techniques as well as methods and all those methods and techniques are implemented over the
development process of software. The process of software development is considered mainly as
complex process which involves many steps for implementing as well as follows standard life
cycle which are followed all over the process. There are many different types of development
models for the software development and all of them are very successful methods. The
gatherings that are made for the software development are very useful while developing a
system.
Another author Deng et al. (2017) define the development process of software as a
gathering phase of all the requirements that are needed for developing the software. According to
Ma, Gu and Wang (2014), gathering of the requirements is a typical task for software developing
companies for the software methods. The gathering phase of the requirements mainly involves
different steps that gathers the requirements of the client related to the software that is to be
developed. There are various steps for gathering of information from the client. The first step
that is followed in the requirement gathering all the requirements of the clients. The second
phase involves meeting with client for gathering the client requirement. The third process that is
to be followed is requirement gathering phase is fulfilling all the requirements of the client
gathered in the second phase and the final phase includes satisfying the requirements of the
clients. Many development software research methods faces failure as because there always lies
a miscommunication in between the processes that usually takes place in between the client as
well as the developer.
As defined by Ma, Gu and Wang (2014), many development method fails because of
miscommunication as well as lower interaction in the requirement gathering phase only. There
are many examples of software development where the development processes stops on the
middle of development because of which the customers or the client faces problems. The main
phase of the requirement gathering is the main role in development process of software. Martini,
Do and Choo (2015) has described that there are many issues that are included in the
development process of the software. All the requirements of the software are to be made clear at
the time of software requirement. The client and the vendors both should have clear
Document Page
20RESEARCH PAPER
responsibility for clearing the requirement of the software development life cycle. With the
responsibility of the vendors as well as the clients for fulfilling the requirements, the project
should be changed accordingly.
There are many Software Development methodologies that can be carried out for
developing a software application. The methodologies of software development slightly differs
from one another and has different name. So, it is very difficult to study all the methodologies of
software development life cycle at one go. The important methodologies that can be carried out
for developing a software are stated below:
Agile Software Development Life Cycle
Lean Software Development Life Cycle
Waterfall Software Development Life Cycle
XP (Extreme Programming) Software Development Life Cycle
Lots of efforts are to be consumed for gathering the information of developing the
software. With the gathering of information, there can be many issues and there are also perfect
tools of implementation that can be used for avoiding such kinds of mistakes. Bavota (2015)
also stated that for the phase of requirement analysis, it is one of the key role that is to be played
for the software development and there is a separate area where the requirements engineering is
involved. This includes different types of methodologies as well as framework that can be used
in the system. All techniques that are required in the requirement gathering should be
implemented perfectly while carrying out this process. Perfect requirement gathering leads to
carry out all the development without any mistake and design the perfect software development
model that is needed by the client.
3.2 Software Development Lifecycle Models
The above stated software development life cycle that are stated above are discussed
below in brief.
3.2.1 Agile Software Development Methodology
The Agile Software Development is considered as a conceptual framework that is
undertaken for all the engineering projects. There are many Software development
methodologies under agile methodology. These are commonly known as DSDM (Dynamic
System Development Model), scurm agile, and Crystal agile methods.
Document Page
21RESEARCH PAPER
The methodology of agile helps to minimize the risk of developing a software. The risk
is usually minimized by agile methodology by developing the software in very short timeboxes
that are termed as iterations. These iterations last up to four weeks. A single iteration is small
software project in its own and the iterations includes all the necessary task for releasing new
functionality. The functionality that are involved are documentation, testing, coding, design,
requirements analysis, and planning. The process of iteration does not add many functions for
releasing the products. A software project that is done by following agile methodology are
mostly capable in releasing a new software when a particular iteration is finished. The project
priority is re-evaluated when each iteration is finished.
Figure 2: Agile Methodology of SDLC
(Source: Li et al. 2015)
The agile methodology mainly emphasizes all the real time communication that are
preferably done face to face and are also done over written documents. The agile teams are
located at bull pens and also includes people to finish the software. This may include all the
programmers as well as the people for defining the product which includes product managers,
actual customers and the business analysts. The bullpen of the agile teams also includes interface
designs, management, technical writers, as well as testers. The Agile methodology of software

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
22RESEARCH PAPER
development life cycle emphasize mainly on working software which can measure the progress
primarily. With the involvement of face to face communication, the method of agile helps to
produce very little documentation compared to other methods of software development.
3.2.2 Extreme Programming Software Development Life Cycle
Extreme Programming is basically a methodology that is used for creating the software
in an unstable environment. The XP (Extreme Programming) methodology is a flexible
methodology among all the model lining process. The goal of Extreme Programming is mainly
to lower the cost of the changes that are implemented while developing a software. Waterfall is a
traditional methodology of software development, and unlike waterfall methodology, all the
requirements of the system in this methodology are determined form first and are frozen before
staring the development process. This means that cost of changing requirement after starting the
project is not possible in this methodology. Changing of requirements is a very common process
and XP methodology does not allow to change the processes after starting the project. There are
four areas where in which the XP can be defined.
Figure 3: Extreme Programming Methodology of SDLC
(Source: Li et al. 2015)
Extreme Programming Core Practices- This includes
Test driven development
Pair programming
Document Page
23RESEARCH PAPER
Planning game
Whole team
Follows continuous process instead of batch- This area includes
Small Releases
Continuous Integration
Design Improvement
Shared understanding- This area of Extreme Programming includes
Collective code of ownership
Simple design
System metaphor
Coding standards involved or the coding conventions
Programmer welfare- This area includes only sustainable pace that is forty hour in a
week.
3.2.3 Lean Development Methodology of Software Development Life Cycle
The lean development methodology mainly focuses on creation of the change tolerant
software. This particular methodology embodies notion of the dynamic stability which is similar
to the Scrum methodology of the software development. Lean development methodology has the
goal to build the software with only one-third of the human effort. One-third of the hours for
development as well as one-third for the investment with comparison to Software Engineering
Institute.
Document Page
24RESEARCH PAPER
Figure 4: Lean Development Methodology of SDLC
(Source: Li et al. 2015)
Lean development consists of 12 principles that are stated below:
Satisfying all their customer with highest priority.
Success mainly depends on the active participation of the customer.
Every project of Lean development is dependent on team effort.
Everything is actually changeable in the Lean Development Methodology.
Lean Development consists domain, as well as solutions.
Lean development believes in 80 percent of the solution today instead of providing 100
percent of the solution tomorrow.
In Lean Development, minimalism is very essential.
There is also a need to determine the technology in lead development.
The product growth in lean development is considered as a feature growth instead of
considering it as a size growth.

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
25RESEARCH PAPER
3.2.4 Waterfall or Traditional Methodology of Software Development Life Cycle
This method of life cycle is a very popular type of life cycle for the development of
software in the life cycle of software engineering. This approach of methodology is considered
as a classic approach for developing the software. This method mainly describes about
development procedure of the software and is a rigid methodology and a linear methodology
compared to others. This approach is a classic approach and has many goals in each phase of its
life cycle. In this traditional methodology of life cycle, each of the phase starts only when the
previous phase is completed. In this methodology, there is no turning back of the phases. If one
phase gets complete, there is no chance to go back to the previous phase.
Figure 5: Waterfall Development Methodology of SDLC
(Source: Li et al. 2015)
The main advantages that the waterfall methodology of software development provides
is that this model allows managerial controls as well as departmentalization. A particular
schedule is fixed at the starting of the development and a scheduled time is provided with the
deadlines to be completed at every stage. All the pre-defined schedules are followed throughout
the life cycle of the development. As per the theory, this methodology helps to complete the
development process in time and the product can proceed through all the parts of the
Document Page
26RESEARCH PAPER
development process. All the phases are planned and the software is presented to the client with
in the time that was scheduled at starting of the project.
The main disadvantage because of which the developers do not choose waterfall
development because of the not return feature. Waterfall methodology do not allow the
developer to return back to the previous phase is some changes is required while developing the
software. The phases are tested in the testing phase and while the testing phase is running, it is
not possible for the researcher to go back to the previous phase. Changing something in the
software afterwards or adding some features after the planning phase is not possible in this
methodology of software development. Alternative models that are used instead of this waterfall
traditional methodology are JAD (Joint Application Development), RAD (Rapid Application
Development), spiral model, and build and fix model.
The software development life cycle that has been used for developing the
“MyStationeryShop” android application is the agile methodology of software development.
This particular methodology is used for developing this application because this methodology
helps in providing customer satisfaction and emphasize interaction in between the client and the
developer. The most advantage that this methodology provides is late changes which is not
possible for traditional methodology of software development. This agile methodology mainly
emphasizes all the real time communication that are preferably done face to face and are also
done over written documents. The agile teams are located at bull pens and also includes people
to finish the software. This may include all the programmers as well as the people for defining
the product which includes product managers, actual customers and the business analysts. The
bullpen of the agile teams also includes interface designs, management, technical writers, as well
as testers. The methodology of agile helps to minimize the risk of developing a software. The
risk is usually minimized by agile methodology by developing the software in very short
timeboxes that are termed as iterations. These iterations last up to four weeks. A single iteration
is small software project in its own and the iterations includes all the necessary task for releasing
new functionality. The functionality that are involved are documentation, testing, coding, design,
requirements analysis, and planning.
3.3 Requirement Analysis
In software and systems engineering, requirement analysis is one of the most important
phases that is adapted by the engineering team. It helps to understand the clinical details of any
Document Page
27RESEARCH PAPER
project. The requirement analysis phase helps in the process of collecting and recognizing the
needs and conditions that a particular project product needs to meet or satisfy before being
launched as a satisfactory version. In this phase, the new or alteration requirements are gathered
from the perspectives of all the necessary stakeholders that are involved in the project. These
requirements are listed down in a chronological manner based on their type or characteristics.
There are generally three main types of requirements that range from functional requirements,
non-functional requirements and finally comes the listing of technical constraints that the project
must try to overcome in order to launch a completely successful implementation of it.
The requirement analysis phase not only takes care of the needs of the system that is to
be implemented but also it requires the creation of a detailed documentation report. This
documentation report is meant to create a clear concept of the feasible and the conflicting
requirements for the particular project. These requirements are analyzed by system analysts and
or senior software engineers to frame the final documented requirements list. These are then
finally validated by the major internal stakeholders involved in the project and the design and
development team proceeds as per the outcome. Requirements analysis is a critical step in
determining the success or failure of a software or system project. The requirements should be
actionable, documented, testable, scalable and measurable. The report should have clear traces
related to the identified business needs and opportunities. Finally, this must be defined to a level
of detail, which is sufficient for the entire system design process and addresses all the
functionalities and aspects of the system.
A typical requirement analysis phase include the three following types of activities:
Eliciting requirements: This includes the business process documentation alongside
detailed documentation of the stakeholder interviews. Every stakeholder who has prime
interest in the project and also has the peak level of power in allocating new changes in
the system, shall be interviewed and their concerns or needs should be noted down in a
detailed documented fashion. This phase is also sometimes known as the requirement
gathering phase of the project.
Analyzing requirements: The requirements that have been documented by gathering
information from all the stakeholders are required to be analyzed. The IT head and the
senior IT professionals discuss the feasibility of the requirements and produce a
feasibility report. This report states the feasible requirements and also it discards and

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
28RESEARCH PAPER
clarifies the inconsistent and ambiguous requirements that were initially listed thus
resolving any existing conflicts in the system requirements.
Recording requirements: The requirements that have been finalized by all stakeholders
are finally recorded in the progress report and the later phases of the project are
proceeded with. This process involves the summarizing of all the involved requirements
and further listing of the detailed Functional and Non-functional requirements that are
only feasible and necessary. This is done in terms of natural-language processing, use
cases, process specifications or user stories.
In the requirement gathering phase for this project, the functional and non-functional
requirements for this project is to be implemented alongside all the constraints involved. The
requirements will be thoroughly documented with the reasons behind them being chosen and
also a feasibility report will be provided.
3.4 Requirement Descriptions
Customer Registration with appropriate information provided: The customers who are
willing to use the application needs to be able to install and use the application on their android
smartphones. To do that, they will require to register into the system with the necessary details
that are required. The data entered by the student needs to be inserted into the back-end database
customers or user table by pertaining to the database rules as and when necessary.
Data input validation: The user id or email ids entered by the user, needs to be unique.
That is, no two customers can sign up into the system with the same email id. This email_ID will
be treated to be the unique identifier for the customers who enroll into the system. The Phone
numbers entered by the customer should also be 10 digits in length. All fields in this form must
be filled by the customer before he or she opts to submit the form for registration. The password
created by the customer needs to be verified and matched to the confirm password input as well.
These data will be pushed into the database.
Administrator and Customer login: The administrators and the customers must all be
able to login into the system by entering the necessary details. This includes the entering of the
user’s email id and the password that they had registered with. The customers need to login with
their registered identification data whereas the admins can register with the admin mail that has
been pre-installed into the database.
Document Page
29RESEARCH PAPER
Login validations: All login processes need to be verified with the contents that are
already stored within the database user tables. The entered email id and the passwords needs to
checked with the database values by fetching them and then the user session needs to be started.
In case there is a miss-match in the database values and the user entered data, error toasts need to
be displayed and login is to be cancelled. Admins on logging in needs to be guided into the
admin portal within the application.
User sessions: The user sessions needs to be handled with utter precision. This will
allow the system to recognize the logged in user. The logged in user’s data needs to be
maintained all throughout the application. This data needs to be used to validate the other
operations that they perform on the application. The customers on ordering a product or a set of
products from the application, their data will get saved within the database as needed and their
purchases are to be reported into the database tables of orders. In case of an admin login, the
system needs to recognize the type of the user and direct the user to the admin end of the system.
The special criteria for this application is that the users’ sessions must be ended once the
application is closed. This should also discard any ingoing cart activity of the user and refresh
the cart once the user logs back in at a later point of time.
Product categories and items: Every customer needs to have a clear view of the
products that are available within the applications. This includes graphical representation of the
product types or categories that are available within the company’s business plans. On clicking
on these product categories, the user is to be directed to the list of items that the company sells
under the respective category. On viewing each item, the customer needs to be able to be able to
view the basic details of the item that they are willing to purchase. If the item is out of stock, the
customer needs to be prevented by the application from buying the product that they are aiming
for. The item list should also update the users with the information that a particular item is out of
stock. The item’s price, name, thumbnail and an add button should be presented for the user to
view and use.
Add Iitems to Cart: The customers on viewing the items from the category list, should
also be able to add the items into the cart. They should be allowed to add any number of items to
the cart just by clicking on the items from the respective lists. They should be able to view the
number of items that they have already added and come back to the items or categories page for
more.
Document Page
30RESEARCH PAPER
Cart Item Deletion: Just as the cart allows the customization of items, the app is also
needed to support the deletion of items from the cart. The cart items should be allowed to be
removed before checked out, if necessary.
Dynamic Price Updates: The application must display the price associated with each of
the items that are provided for purchase in the individual category sections. The program needs
to update the payable price of the net products that have been added to cart by the customer. This
price is needed to be updated as and when the user thinks of updating the cart elements. Every
deletion of an element will lead to the updated net price being displayed. This is also expected to
hold true as and when the user adds new items to the cart. The price is also required to be passed
onto the final order confirmation page.
Order Number Generation: There should be an order number generated from each order
confirmation. This order number must be unique and should be stored within the system with all
the necessary details of the items that are being purchased with the particular order. This order
number should also be displayed to the user or the customer when he confirms an order. He or
she will be required to use this order for further reference.
Stock Update: Being able to update stock quantities for particular products should one
of the most important and the only admin side activity for the application for the initial
prototype. The admin needs to select the items that he wishes to update the stock for and then be
able to update the quantity of the items. The page should show the existing stock state of the item
being chosen and the admin should be able to update from there. The admin’s newest stock
updates should be right away reflected in the customer end of the application and the Out of
stock elements should be brought into stock and available for purchase.
Error handling: The application needs to handle all erroneous inputs made by the users
in a tactful way. This should be done by clearly reflecting what the user is doing wrong.
Logout option: Both administrators and customers must be able to logout of their
session by availing the logout option.
3.5 Functional Requirement
The functional requirements include the entire functionalities of a software system or
any of its sub systems. Functional requirements list the desired operations of a program or
system that is defined in software development engineering. Functional requirements are a

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
31RESEARCH PAPER
crucial part of the requirements engineering phase of a project. The functional requirements for
this MyStationeryShop Android application project are as follows:
1. Customer Registration with appropriate information provided.
2. User input data elements must be validated as per general norms.
3. Administrator and Customer login.
4. Login validations must be performed.
5. User sessions should be successfully handled.
6. User should be able to view the product categories and the listed items.
7. The user should be able to view necessary product details.
8. User must be able to add any number of items to the cart.
9. The cart activity should handle item deletion from the cart.
10. Price should be appropriately summed and displayed.
11. There should be an order number generated from each order confirmation.
12. Admin needs to be able to upgrade stocks.
13. All erroneous user inputs should be notified back to the user.
14. Logout feature.
3.6 Non-Functional Requirement
The non-functional requirements helps to understand the overall requirements of a
system project. It helps to capture the exact reactions from the stakeholders about how they
expect their system to behave and what are the capabilities that they require their application to
have in order to exhibit their best of quality before their users and customers. The non-function
requirements for this stationery shop application are as follows:
1. The application must be robust.
2. Portability should be possible.
3. The application project needs to be scalable.
4. The application needs to be fast and responsive.
5. There needs to be intuitive security measures implemented.
3.7 Non-functional Requirement Descriptions
1. The application must be robust: Robustness is one of the most important features of any
technological gadget and software components. Robustness is the quality or measure of
Document Page
32RESEARCH PAPER
application longevity. It helps to reflect on how an application manage3s to deal with
erroneous data and keep itself from crashing. This will protect the application from losing
out on important data that might get lost when the application crashes. This will also keep
the users in place and will not fear them or bored them away from using the application.
The application must be so built that it can keep itself from crashing and at the same time
collect data from the results that were supposed to challenge the normal implementation
of the app. The development team can be hence able to look at these logs and build a
better version of the application in their upcoming updates.
2. Portability: The application needs to be designed such that it is usable on almost every
android device. The minimum Android level that should be chosen for the application
should be as low as possible and hence the coding standards and codes used should also
comply by the required technical constraints. The following data should be taken heed of
before determining the lowest OS version that the app needs to support. However the
target version needs to be Android Oreo. Android Oreo being the latest publicly available
android OS prior to Android Pancake. Below is the usage statistics of the various
Android versions that has released over the years.
Version Code Name API Distribution
2.3.3 – 2.3.7 Gingerbread 10 0.3 percent
4.0.3 – 4.0.4 Ice Cream Sandwich 15 0.3 percent
4.1.x Jelly Bean 16 1.2 percent
4.2.x 17 1.8 percent
4.3 18 0.5 percent
4.4 KitKat 19 8.6 percent
5.0 Lollipop 21 3.8 percent
5.1 22 15.4 percent
6.0 Marshmallow 23 22.7 percent
7.0 Nougat 24 20.3 percent
7.1 25 10.5 percent
8.0 Oreo 26 11.4 percent
8.1 27 3.2 percent
Document Page
33RESEARCH PAPER
Table 1: The user rate statistics of the Android versions
3. The application project needs to be scalable: This will allow the application to any further
changes that are to be made in the future on the application. It must be able to handle
almost any required modular changes and these must be measurable as well. Scalability
can be defined as the capability or capacity of a software system, process, or network to
handle a growing amount of work, or it’s potential to be enhanced, updated and or
enlarged to accommodate the set of incoming changes or growth.
4. The application needs to be fast, attractive and responsive: The app must be able to start
faster than the competing applications in the same domain. This will always give the
application and the respective stakeholders a fine edge over their counterparts in their
respective field of business. General users are always more accustomed and aimed
towards using fast and fluent applications, hence the faster the app can be made to display
records, fetch data and respond to user interacts and queries. This means that the app
needs to have quicker database fetch response time. Furthermore, the application
interface needs to be well designed with the capability to respond to the changing screen
size. This means that the app needs to be able to scale down when displayed or used on a
smaller screen resolution than the usual ones. The graphical elements in the application
along with the textual data should all be clear and attractive to the user’s eyes.
5. There needs to be a set of intuitive security measures implemented: All necessary
security measures needs to be implemented on the application. This needs to be carefully
documented, implemented and tested before the app’s deployment. Security measures
should ensure that the data that the users have entrusted the application with are safe and
sound. Also, the security of the application needs to tight enough to prevent any outside
modules to leak data.
3.8 MoScOW Technique
Priority is a concept that is to be implemented while developing any software
application. Prioritisation is generally applied to all the requirements, products, and user stories,
use cases, as well as tasks for accepting the criteria as well as test the application. One of the
techniques that can be used for Prioritisation is the MoSCoW technique that helps to understand
the priorities. MoSCoW stands for Must Have, Should Have, Could Have, and W stands for
Won’t have the time. The main reason about when to use the MoSCoW technique for developing

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
34RESEARCH PAPER
the software is defining the requirements of the development as high, low, or as medium. The
requirement that is included in the software development should be prioritirised according to its
importance. The priorities are to be specified by the researcher while carrying out the processes
for developing an application. The specific result of using MoSCoW techniques Must, Should,
Could, And Won’t Have implies the result for failing the requirements is to be answered. There
are many possibilities which states different meaning of priorities. To agree with the definition of
the user is the most important thing and agreeing with the user needs to be done before the
capturing of the requirement that is before the emotive is done.
Must Have: The Must have technique in MoSCoW provides the researcher with MUS
(Minimum Usable Subset) of the requirements in which the project guarantees the requirements
that is to be delivered. MUS can be defined using the following described below.
The software cannot be delivered on the targeted date within MUS.
Without MUS, there is no point of delivering the solution on intended date.
The software is not legal with the MUS technique.
The software is also unsafe.
The software cannot be delivered without the Business Case.
Should Have: The points that are to be followed in should have technique is that
It is very much important but is not vital.
Should have include such requirements that might be painful to omit out, but solution
without it is available.
There can be some different kind of workaround for example, expectation of
management, inefficiency, existing solution, some paperwork and many more.
There is a difference between should have and could have. The difference is by
reviewing degree of the pain that is caused if requirements is not met that were fixed for the
business value or the number of people who gets affected.
Could Have: Could have in MoSCoW technique includes all the wanted as well as
desirable requirements but are not that important. The Could Have requirements are less
important than Should Have requirements. Could have requirements will have less impact if they
are left out.
Won’t Have: This ensures the requirements that the project team has agreed but will not
be delivered at the final delivery of the software application. These requirements are recorded in
Document Page
35RESEARCH PAPER
the prioritized list of requirements where the scope of the project is clarified and are being
avoided for reintroducing them through the back door may be afterwards. This mainly helps in
managing the expectations where some of the requirements will not be delivered in the final
solution, for at least this time.
The best way by which prioritization is initially addressed with the Business case that is
quantified. The prioritization should support feasibility and should be revisited during the
foundations. If there is no Business case, the Business Sponsor and the Business Visionary are
needed to modify the business drivers in quantified form. Some of the practitioners also believes
that there is no requirement for contributing the business case as a Must Have requirement.
3.9 Design
3.9.1 Use Case Diagram
Document Page
36RESEARCH PAPER
Figure 6: Use Case Diagram of User End
(Source: Drawn on Visio)
Use Case
Name
Add items to cart
Scenario The customer orders products from the mobile application
Triggering
Event
The customer has to select the items from the products that
are available and adds those items to cart. All the items are to be
selected before proceeding to the checkout page.
Brief
Description
The customers on viewing the items from the category list,
should also be able to add the items into the cart. They should be
allowed to add any number of items to the cart just by clicking on the
items from the respective lists. They should be able to view the
number of items that they have already added and come back to the
items or categories page for more.
Actors The user is the main actor in this use case.
Related Use
Case
Same as other use cases available online
Stakeholders The stakeholders that are involved in this use case is
customer and the admin.
Pre-
conditions
The preconditions needed to be done before proceeding this
use case is that the customer or the user has to sign up and login to
the page before selecting the products from the menu.
Post-
Conditions
The post conditions for this use case is that if the item is
available the user can add those items successfully in the cart. They
can checkout after selecting the cash on delivery option.

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
37RESEARCH PAPER
Flow of
Activities
Actors System
Customer 1. Customer selects all the items
needed by them from the menu.
2. The system displays all the items
that are available in the farm inventory.
3. The customer can also select
items from their previous orders or can
repeat the same order that had been ordered
previously.
4. The system adds all the items
that are selected a shows the total amount as
a bill to the customer.
Exception
Condition
1. If the items are not available, then the customer cannot
add the item in their cart.
2. For ordering the items the customer needs sign up to the
system as a regular customer or standard customer.
3. The delivery address that is entered at the time of ordering
should be correct as the delivery will be made to that address only.
Table 2: Use case of “Add items to cart
Names Descriptions
Title Customer sign up
Description The customer signs up to the information system of
registering their names in the system. While signing up, the customer
needs to input all their details including their names, phone number,
email address, delivery address, and phone number. The phone number
that the customer provides should be valid as it will be needed at the
time of delivery and will also be used for any query to be asked to the
customers. There should also be a landmark provided for the delivery
Document Page
38RESEARCH PAPER
address so that the delivery can be done properly.
Primary
Actor
The primary actor who is involved in this use case is customer
who is involved in the system.
Pre-
conditions
The precondition that is needed for this use case is that the
system should have the space for entering the necessary details in to
the system. The database with the application should be compatible for
all the entry that are made by the customer.
Post-
conditions
The post-condition after completing all the events are that the
customer gets a message that the customer is successfully signed up to
the system. The customer is directed to the home page of the website
and can buy products from the farm.
Main
Success Scenario
a. The customer selects the “Sign Up” button on the screen.
b. All the fields that comes in the sign up page are to be filled
up and the fields marked * are mandatory to filled up.
c. After filling all the fields, the customer needs to click the
submit button.
Extensions 1. The phone number provided by the customer is to be
validated by sending one time password to the number.
If the number is not valid, then the customer will again have
to provide a valid phone number.
2. Landmark is essential for the address for making the
delivery. The customer has to make sure that the landmark provided is
correct.
Table 3: Use case of “Customer Sign Up
Names Descriptions
Title Product categories and items
Description After log in the customer reaches the home page of the mobile
app. The home page consists of many items that are available. The
selects the products on the basis of their needs and adds them to cart.
Primary The primary actor who is involved with this use case is the
Document Page
39RESEARCH PAPER
Actor customer.
Pre-
conditions
The pre-conditions that are to be fulfilled for using this use
case is to sign in to the system as a new user or log in to the system. If
the log in is successful, then only the customer con go to the home
page for viewing the details of the product that are available.
Post-
conditions
The post conditions that are required is that after adding those
items in their cart, the customer has to checkout for completing the
ordering procedure. The customer can pay only at the time of delivery.
Main
Success Scenario
1. Customer selects all the items needed by them from the
menu.
2. The system displays all the items that are available in the
farm inventory.
3. The customer can also select items from their previous
orders or can repeat the same order that had been ordered previously.
4. The system adds all the items that are selected a shows the
total amount as a bill to the customer.
Extensions 1. If a particular item is not available at the time of ordering,
then the system shows out of stock message to the customer.
2. The student can select another item form the menu after the
user is directed to the home page.
Table 4: Use case of “Product categories and items
Names Descriptions
Title Cart Item Deletion
Description The user who is using the application can view their own cart
and can delete items in the cart. They can only omit their items from
the cart and add all the items they want in their cart.
Primary
Actor
The primary actor who is involved in this use case is the user
who is using the android mobile application.
Pre-
conditions
The pre-conditions involved in this is that the customer needs
to select the items from the menu for making the payment. The

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
40RESEARCH PAPER
customer can pay only after adding the items on to their cart. Before
making the payment, they needs to select the mode of payment by
which they can pay. They can pay with their debit card or credit card.
They can make their payment as cash on delivery and they can even
purchase the items in credit. They can pay later for the items they
purchase.
Post-
conditions
The post conditions that are involved in this use case is that if
the customer selects pay on delivery option, an e-bill is generated
which the customer can view. If the customer wants to make the
payment, then the customer needs to make the payment with their debit
cards and credit cards. They needs to pay through their bank accounts
directly to the account of GYB.
Main
Success Scenario
1. For paying the amount, the customer has to select the
option of payment that are available on the website.
2. If the payment through debit card or credit card is not
proper, then the customer is redirected to the payment page again to
make the payment.
3. The customer clicks the payment button to make the
payment.
4. The customer has to enter their card details on the fields
provided to make the payment.
Extensions 1. There might be some problem of payment due to bank
server. Sometime payment may not be successful.
2. The customer needs to redo the process of payment for
paying successfully.
3. If the customer cannot pay, then the customer may select
the option of cash on delivery for safety.
Table 6: The user rate statistics of the Android versions
Document Page
41RESEARCH PAPER
Figure 7: Use Case Diagram of Admin End
(Source: Drawn on Visio)
Document Page
42RESEARCH PAPER
3.9.2 Class diagram
Figure 8: Class Diagram of Mobile Application
(Source: Drawn on Visio)

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
43RESEARCH PAPER
3.9.3 Sequence diagram
Figure 9: Sequence Diagram for the MyStationaryApp
(Source: Drawn on Visio)
Document Page
44RESEARCH PAPER
3.10 Implementation
It is extremely important to choose the perfect set of tools and techniques that would be
helpful in order to design and develop the software for this project. Android app development
has become more of a modular approach than ever before due to the advancement of
technologies over the past few years. There are several platforms that can be used in order to
commit to android development. The major development kits involve the use of Android Syudio,
Eclipse, InteliJ or Unity 3D. The languages that are most common for Android development are
Java, C# and Kotlin. Java among them has been preferred as the most commonly used language
for Android Development. Java is used alongside XML layout language to implement the
program activities for this project. Android uses Java and XML layouts to parse together and be
used as an integrated option for the purpose of interface design and logic development. The
layouts of the activities alongside all widget additions are laid out using XML whereas Java is
used to address the logical end and connect to the database.
For developing a particular mobile application, there can different developing languages
as well as platforms. The “Online Stationary Mobile Application” that is developed for this
research paper uses two programming languages, JAVA and XML. JSON is used for storing as
well as exchanging the structured data over the network connection (Bavota et al. 2015). Java
language that is used for developing the application is a general purpose, class based, structured
as well as generic language of computer programming. The application of android is mainly
based on the Java fundamentals. The Java platform incorporates many several features as well as
libraries consisting of many programming languages like C as well as C++.
XML (Extensible Markup Language) language that is used for developing this
application is commonly known as mark-up language. XML contains very simple, flexible as
well as scalable text format that is both readable by human as well as readable by machine. The
XML language defines set of rules that helps to encode document, and provides usability over
Internet. XML is a data format that is used on the Internet. XML is very easy parse as well as
manipulate them programmatically. The resource of android pre-processes the XML in the
compressed in binary format as well as stores them on the device. Most of layout of User
Interface design, the screen elements are then declared in the XML files.
Below, some of the most important sections of the developed project is being presented.
The Design Layout codes for the Sign Up activity is as follows:
Document Page
45RESEARCH PAPER
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns: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"
android:orientation="vertical"
tools:context=".SignupActivity"
android:background="#9ACD32">
<ImageView
android:layout_width="70dp"
android:layout_height="70dp"
android:src="@drawable/logo"
android:layout_gravity="center"
android:layout_marginTop="20dp"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Create your new MySS Account"
android:textStyle="bold"
android:textColor="#FFF"
android:textSize="30dp"
android:layout_marginTop="20dp"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_marginTop="30dp"
android:padding="10dp">
<EditText

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
46RESEARCH PAPER
android:id="@+id/fullName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter Full Name"/>
<EditText
android:id="@+id/address"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter Full Address"
android:inputType="textEmailAddress"/>
<EditText
android:id="@+id/phone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter phone number"
android:inputType="phone"/>
<EditText
android:id="@+id/mail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter email"/>
<EditText
android:id="@+id/password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter password"
android:inputType="textPassword"/>
<EditText
android:id="@+id/conPassword"
android:layout_width="match_parent"
android:layout_height="wrap_content"
Document Page
47RESEARCH PAPER
android:hint="Re-enter password"
android:inputType="textPassword"/>
<Button
android:id="@+id/signupButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Sign Up"
android:layout_marginTop="20dp"
android:layout_gravity="center"
android:background="@color/colorTheme1"
android:textStyle="bold"
android:textSize="20dp"
android:textColor="#fff"/>
</LinearLayout>
</LinearLayout>
The Java code of the SignUp activity is as follows:
package com.mss.education.mystationerystore;
import android.content.Intent;
import android.database.sqlite.SQLiteDatabase;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class SignupActivity extends AppCompatActivity {
EditText idT,passT,conpassT,nameT,addrT,phoneT;
Button signBt;
@Override
Document Page
48RESEARCH PAPER
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_signup);
idT = (EditText)findViewById(R.id.mail);
passT = (EditText)findViewById(R.id.password);
conpassT = (EditText)findViewById(R.id.conPassword);
nameT = (EditText)findViewById(R.id.fullName);
addrT = (EditText)findViewById(R.id.address);
phoneT = (EditText)findViewById(R.id.phone);
signBt = (Button)findViewById(R.id.signupButton);
signBt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String id=idT.getText().toString();
String name=nameT.getText().toString();
String address=addrT.getText().toString();
String phone=phoneT.getText().toString();
String password=passT.getText().toString();
String conpass=conpassT.getText().toString();
if(id.isEmpty()||name.isEmpty()||
address.isEmpty()||phone.isEmpty()||password.isEmpty()||
conpass.isEmpty())
Toast.makeText(SignupActivity.this,"Please
fill all fields!",Toast.LENGTH_SHORT).show();
else{
if(phone.length()!=10)
Toast.makeText(SignupActivity.this,
"Invalid Phone number! Must be of 10 digits",
Toast.LENGTH_SHORT).show();
else if(id.indexOf('@')<1||id.indexOf('.')-
id.indexOf('@')<2||id.indexOf('.')>id.length()-2)
Toast.makeText(SignupActivity.this,
"Invalid Email ID!", Toast.LENGTH_SHORT).show();
else if(password.length()<6)

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
49RESEARCH PAPER
Toast.makeText(SignupActivity.this,
"Password must be of 6 characters minimum!",
Toast.LENGTH_SHORT).show();
else if(!password.equals(conpass))
Toast.makeText(SignupActivity.this,
"Password confirmation error!", Toast.LENGTH_SHORT).show();
else {
try {
SQLiteDatabase mydatabase =
openOrCreateDatabase("myss", MODE_PRIVATE, null);
try {
mydatabase.execSQL("INSERT INTO
USERS (EMAIL,NAME,ADDRESS,PHONE,PASSWORD, TYPE) VALUES(?,?,?,?,?,?);",
new String[]{id, name, address, phone, password, "U"});
MainActivity.users.add(new
User(name, address, Long.parseLong(phone), id, password, "U"));
Toast.makeText(SignupActivity.th
is, id+" has been registered!", Toast.LENGTH_SHORT).show();
startActivity(new
Intent(SignupActivity.this,EntryActivity.class));
//Toast.makeText(MainActivity.th
is, "Admin has been added", Toast.LENGTH_SHORT).show();
} catch (Exception ex) {
Toast.makeText(SignupActivity.th
is, "Email already exists!", Toast.LENGTH_SHORT).show();
}
} catch (Exception e) {
}
}
}
}
});
}
}
Document Page
50RESEARCH PAPER
The Login activity XML layout:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns: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"
android:orientation="vertical"
tools:context=".LoginActivity"
android:background="#9ACD32">
<ImageView
android:layout_width="70dp"
android:layout_height="70dp"
android:src="@drawable/logo"
android:layout_gravity="center"
android:layout_marginTop="20dp"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Login to your MySS Account"
android:textStyle="bold"
android:textColor="#FFF"
android:textSize="30dp"
android:layout_marginTop="20dp"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_marginTop="30dp"
Document Page
51RESEARCH PAPER
android:padding="10dp">
<EditText
android:id="@+id/userlog"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Enter email"/>
<EditText
android:id="@+id/passlog"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:inputType="textPassword"
android:hint="Enter password"/>
<Button
android:id="@+id/loginButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Login"
android:layout_marginTop="20dp"
android:layout_gravity="center"
android:background="@color/colorTheme1"
android:textStyle="bold"
android:textSize="20dp"
android:textColor="#fff"/>
</LinearLayout>
</LinearLayout>
The Login activity java code:
package com.mss.education.mystationerystore;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
52RESEARCH PAPER
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class LoginActivity extends AppCompatActivity {
EditText userId,pass;
Button loginBt;
static User loggedIn=null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
userId = (EditText)findViewById(R.id.userlog);
pass = (EditText)findViewById(R.id.passlog);
loginBt = (Button)findViewById(R.id.loginButton);
loginBt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
try{
String id=userId.getText().toString();
String password=pass.getText().toString();
for(User us:MainActivity.users){
if(us.email.equals(id)){
if(us.password.equals(password)){
loggedIn=us;
if(us.type.equals("U")) {
Toast.makeText(LoginActivity
.this,"Logged in as "+id,Toast.LENGTH_SHORT).show();
startActivity(new
Intent(LoginActivity.this, UserHomeActivity.class));
}
Document Page
53RESEARCH PAPER
else{
Toast.makeText(LoginActivity
.this,"Logged in as ADMIN_"+id,Toast.LENGTH_SHORT).show();
startActivity(new
Intent(LoginActivity.this, AdminActivity.class));
}
break;
}
}
}
if(loggedIn==null)
Toast.makeText(LoginActivity.this,"User
Id / Password does not match!",Toast.LENGTH_SHORT).show();
}
catch (Exception e){
Toast.makeText(LoginActivity.this,"Please
fill all fields!",Toast.LENGTH_SHORT).show();
}
}
});
}
@Override
public void onBackPressed() {
super.onBackPressed();
}
}
The above XML layouts present a set of forms to the users to be filled out and the
button is pressed to perform the respective actions as required. The Java codes for each of these
activities are used to perform the logical operations on these activities. The logical operations
include the checking of user input, querying the database and displaying errors or navigating the
pages as per requirements. The sign up activity java page consists of the code to register a new
user into the database and the login activity java page is used to query the already present data to
match with the user inputs and then start a session for the app. The session is set by the variable
“loggedIn” which holds the ID of the logged in user and passes it to every activity as Intents. The
Document Page
54RESEARCH PAPER
SignUp and Login activities are considered to amongst the most important activities for this
project.
The XML layouts that have been highlighted below displays the use of standardized
design paradigm along with suitable graphical and textual matter that goes by the theme. This
was one of the major design consideration that was made. The Font was chosen to be from the
Sans-Serif family and almost every elements within the application has been centrally aligned.
Some of the other major Java and XML implementations are as follows:
The main entity class are
ITEM class
package com.mss.education.mystationerystore;
public class Item {
int id;
String category;
String name;
String description;
String imageUrl;
double price;
int inStock;
Item(int id,String category,String name,String description,String imageUrl,double
price,int inStock){
this.id = id;
this.category = category;
this.name = name;
this.description = description;
this.imageUrl=imageUrl;
this.price = price;
this.inStock=inStock;
}
}

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
55RESEARCH PAPER
USER class
package com.mss.education.mystationerystore;
public class User {
String name;
String address;
long phone;
String email;
String password;
String type;
User(String name,String address,Long phone,String email,String password, String
type){
this.name = name;
this.address = address;
this.phone = phone;
this.email=email;
this.password = password;
this.type=type;
}
}
The MainAcitivty layout
Document Page
56RESEARCH PAPER
Figure 10: MainAcitivty layout
The MainAcitivty java
Figure 11: MainAcitivty java 1
Document Page
57RESEARCH PAPER
Figure 12: MainAcitivty java 2
Figure 13: MainAcitivty java 3

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
58RESEARCH PAPER
The Items Activity Layout
Figure 14: Items Activity Layout
The Items Activity Java
Figure 15: Items Activity Java 1
Document Page
59RESEARCH PAPER
Figure 16: Items Activity Java 2
Figure 17: Items Activity Java 2
Document Page
60RESEARCH PAPER
Figure 18: Items Activity Java 2
The Cart Activity Layout
Figure 19: Cart Activity Layout 1
The Cart Activity Layout

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
61RESEARCH PAPER
Figure 20: Cart Activity Layout 2
Figure 21: Cart Activity Layout 3
Document Page
62RESEARCH PAPER
Figure 22: Cart Activity Layout 4
Figure 23: Cart Activity Layout 5
The Order Activity Layout
Document Page
63RESEARCH PAPER
Figure 24: Order Activity Layout
The Order Activity Java
Figure 25: Order Activity Java

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
64RESEARCH PAPER
The Admin Activity layout
Figure 26: Admin Activity layout
The Admin Activity Java
Document Page
65RESEARCH PAPER
Figure 27: Admin Activity Java 1
Figure 27: Admin Activity Java 2
Figure 28: Admin Activity Java 3
The Header Menu Layout
(Common for all)
Document Page
66RESEARCH PAPER
Figure 29: Header Menu Layout (Cart Page with checkout option)

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
67RESEARCH PAPER
3.11 Screenshots of running mobile app
To check the display of home page
Figure 29: Check the display of home page
To check the Stock Update Option of admin
Document Page
68RESEARCH PAPER
Figure 30: Check the Stock Update Option of admin
To check if all items are updateable for admin
Document Page
69RESEARCH PAPER
Figure 31: Check if all items are updateable for admin
To allow stock Update

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
70RESEARCH PAPER
Figure 32: Allow stock Update
Out of Stock
Document Page
71RESEARCH PAPER
Figure 33: Items Out of Stock
Logout Page
Document Page
72RESEARCH PAPER
Figure 34: Logout Page
Order Placed with unique order id

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
73RESEARCH PAPER
Figure 35: Order Placed with unique order id
Order Removal
Document Page
74RESEARCH PAPER
Figure 36: Order Removal
Check If Empty cart error is displayed
Document Page
75RESEARCH PAPER
Figure 37: Check If Empty cart error is displayed
Login Check for Customer

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
76RESEARCH PAPER
Figure 38: Login Check for Customer
Incorrect password or email
Document Page
77RESEARCH PAPER
Figure 39: Incorrect password or email
Registration successful
Document Page
78RESEARCH PAPER
Figure 40: Registration successful
Check Invalid mail

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
79RESEARCH PAPER
Figure 41: Check Invalid mail
3.12 Testing
The application testing a considered as some group of activities that are conducted
through many scripts with the aim of finding the errors in the software. The application testing
involves testing the entire application. Application testing also helps in enhancing quality of the
applications that reduces the costs as well as maximizes the ROI and also saves the development
of the time. The application testing also can be done by different via different categories which
includes GUI, databases, loading test, functionality and many more.
Document Page
80RESEARCH PAPER
The application testing also includes the lifecycles of testing by involving different
types of phases including the requirement analysis, testing plan, testing analysis, testing the
design, testing the execution as well as bugging the report.
3.12.1 Methodologies Involved in Application Testing
The testing methodologies has different ways that ensures the software application
which is tested fully. Any application that goes through unorganized methodology as well as
poor testing methodology, the product can lead to unstable product. There are three
methodologies that are used for application testing. The testing for the application is carried out
with
Black Box Testing
White Box Testing
Grey Box Testing
Black Box Testing: This type of testing technique is very common for the functional
testing, regression testing, as well as non-functional testing. There are many strategies that are
used for black box testing. The strategies that are used for are Class testing, boundary level value
testing, table testing based on decision, and transition tables of the state involved in the
application.
White Box Testing: The white box testing is mostly used for the testing for the software
code for checking the security holes internally, paths that are broken or are poorly structured.
The functionality of the conditional loops are also tested using the white box testing. The
strategies that are used in this white box testing is analysis that is done for Code Coverage and
Path Coverage analysis.
Grey Box Testing: The Grey Box testing is basically a technique in which both Black
box testing is done as well as White box testing is done. The Grey Box Testing is done in order
to find the defect in the application that is based on the proper structure or the application that is
in use.
The methodology that is used for testing the application of MyStationaryApp is Grey
Box testing where the both the White Box testing is done along with Black Box testing. Class
testing, boundary level value testing, table testing based on decision, and transition tables of the
state are involved in this application for which black box testing is needed and for checking the
security holes internally, paths that are broken or are poorly structured the white box testing is
Document Page
81RESEARCH PAPER
performed. The functionality of the conditional loops are also tested using the white box testing.
So, combination of both the Box testing are done for carrying out this testing phase.
3.12.2 Test Plan Required for Application Testing
Test plan that is used in the document is mainly derived from Product Description,
Software Requirement Specification (SRS), or from the documents of use case. The main focus
of testing mainly aims about what to test, how to carry out the testing process, when to carry out
the testing process, as well as who will actually carry out the testing process. The document of
the test plan is mainly used as a medium of communication in between the test managers and the
test team.
For carrying out the testing for the online stationary app, some of the features are to be
defined while testing that are stated below:
Defining scope of the testing
Defining the objective of the testing
Approaching the activities for testing
Scheduling the testing
Bug tracking as well as reporting
3.12.3 Tools for Application Testing
There are many application testing tool that are used for testing. The selection of tool
for the testing mainly depends on the type of testing that the developer wants to carry out. There
are many types of platform tools that can be used for testing. The application testing tools that
can be used for testing are:
Selenium
IBM Rational Robot
RFT (Rational Functional Tester)
Load Runner ( HP Performance Tester)
Apache Jmeter

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
82RESEARCH PAPER
3.13 Evaluation
3.13.1 Overview of the application
The android application of MyStationaryApp has a user end as well as admin end
application. This project aims to develop an online shopping app which the users can use for
buying online stationary products. The application that is intended is an online app for buying of
stationary products. The application planned will be designed by keeping the security of the data
involved in the application. The application is secured by using the encryption process and
implementing SQL Injection. This project of designing the application is carried out in different
phases. Firstly, the project should be analyzed, then application should be designed and
developed. After designing and developing the application, there is testing phase and after the
testing is completed, the application is then evaluated. The user can view the categories of item
that are in the application and select their products accordingly from the list of products that are
shown to them. The application that has been built enables the customers to sign up to the server
and login in with a valid username and password. The login credentials that are used by the
customer should validate with the database that were saved at the time of login. The user after
the login can view the categories of item that are in the application and select their products
accordingly from the list of products that are shown to them. They can add the products in to
their carts and proceed to checkout option. The customer can avail the checkout only with cash
on delivery option as there is not card payment option. If the items is out of stock, then the
customer needs to select some other similar products from the items or can logout form the
application. In the admin end, there is an option where the admin can login with a valid
username and password and can only update the stock of items that are presently available in the
store. The mob=bile application that is developed runs on android operating system having all
new versions of operation system including marshmallow, KitKat, Naugat, Oreo, Lollipop and
jellybean and all other such new operating systems.
3.13.2 Peer review: For reviewing the application three users were provided with the
android application to use on their phones and provide feedback on the application. The
application was reviewed by three person. Two female and one male of age group 25 years to 30
years. The response of using their applications are given below
Respondent 1: The respondent 1 said that he felt no issue while installing the
application. The application looked good and attractive when it is opened after installing. The
Document Page
83RESEARCH PAPER
application had beautiful pictures and there were four types of products available in the
application.
Pros:
1. The application looks very attractive and colourful that will catch more customer to
use the application.
2. The app had many pictures and is very user friendly as the user can go from one page
to another easily without any issue.
3. The customer can view their cart any time they want to and can logout when they
likes to.
4. If the item is out of stock, the customer gets notified that the item is put of stock and
the user can accordingly replace the items bought.
Cons:
1. The application does not have any search option from where the customer search any
product they want to buy for. They have to visit all the category of the product for buying the
product.
2. The customers are not having card payment option for while checking out from the
cart. They are only having one payment option that is for cash on delivery option.
Respondent 2: The respondent 2 said that she was very happy with the application.
The application is very much attractive when it is opened after installing. The menu page shows
all the categories of items that are present in the application. She can select any of the product
and adds tem to cart. The application had beautiful pictures the products available.
Pros:
1. The application looks very attractive and colourful that will catch more customer to
use the application.
2. The customer can view their cart any time they want to and can logout when they
likes to.
3. The app had many pictures and is very user friendly as the user can go from one page
to another easily without any issue.
4. If the item is out of stock, the customer gets notified that the item is put of stock and
the user can accordingly replace the items bought.
Cons:
Document Page
84RESEARCH PAPER
1. According to her all the items were done perfectly that should be in an android
mobile application.
Respondent 3: The respondent 3 said that she was not at all happy with the application.
The application attractive according to her but it was not at all user friendly. She pointed out
many flaws that a user can face while carrying out this application. The third respondent also
said that the application has good pictures and images and the application is very responsive.
Pros:
1. The application looks very attractive and colourful that will catch more customer to
use the application.
2. The customer has phone validation, email validation, password validation at the time
of sign up and login. According to her, this is a good sign of a secured application.
3. The customer can also add items in the cart and delete those items from the cart. This
is also a good sign of the user friendly application.
Cons:
1. Nothing is good in this application according to her. According to this respondent, the
first things that an application should have is a search option. The search option should be there
where the users can search their line of products in the application.
2. While paying for the items in the cart, the customer should gave a payment option in
the application. The payment option that is shown in this application is only cash on delivery. No
other payment options are available.
4. System Analysis
4.1 Legal, Social, Ethical and Professional Issues
For carrying out this research study, all legal, social as well as ethical issues are
maintained and no human is harmed while carrying out this research paper. The application that
is being developed will be very useful for the users who wants to do the online shopping. There
is no social issues related with this application development.
There are risks related to data breach while making the online shopping app. But all the
risks that are associated with the application will be mitigated by implementing SQL Injection as
well as using encryption technique. For keeping a safe side, all risks assessment measures are
taken into account.

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
85RESEARCH PAPER
The application that is being built will be helpful for all the users who wants to do
online shopping. The materials that are available online are only used for this research study and
for making the application, the pictures of the products i.e. posters of different stationary will be
used for making the application and it will be mentioned in the About Us section. All the data in
the database will be securely stored in the application and there is not issue with DPA (Data
Protection Act), as all the data involved will be encrypted.
The employees of the company who will need the application will be interviewed to
know the business requirement of the application. The application will be developed accordingly.
6. Future Recommendations
The prototype of the MyStationaryApp is built for educational purpose and can be used
for using some customer end applications and admin end application. The app that is developed
has ordinary features where the user can select the items from the menu and can also add them to
cart and can delete them from the cart. The user can select the payment option which has only
one option of cash on delivery for the student. The customer does not have any other payment
options.
The first thing that an application should have is a search option. The search option
should be there where the users can search their line of products in the application. If in future,
the application needs to be improved, them a search button is to be added on the main page of the
application. While paying for the items in the cart, the customer should gave a payment option in
the application. The payment option that is shown in this application is only cash on delivery. No
other payment options are available. As this a local app, in future after solving all the issues of
the app, this application can also be made an online application where the users can get all the
features of an online android mobile app. As with very limited time constraint, only this
particular features were possible to do. All these features would have been implemented in this
application, if there was enough time constraints.
5. Conclusion
This application that has been designed has both the user end application as well as
admin end application where the user can use the application for buying stationary goods online
and the admin can manage the products that are to be sold through the application. The concept
Document Page
86RESEARCH PAPER
of the application that had been built for this research paper is similar to any other kind of online
shopping app, but the graphical resources of the application will be highly compressed. The
application takes very less time to compress and can be loaded with low internet connectivity.
The objectives that were fulfilled for carrying out this dissertation included SMART
objectives which states that the objectives are specific, measurable, actionable, relevant and time
bounding. The objectives that were fulfilled in this research study were: Making a user friendly
application through which the user can easily buy online stationary via this application.
Investigating system modelling and design that helps in software development of the online
shopping application. Testing whether the online shopping application works well as per the
requirement of the users. Overcoming the security risks and management risks related with
developing of application and ways to mitigate those risks. Making the application cost effective
which can save the money of the user and the seller as well.
The application that has been made is to be secured by using encryption process, SQL
Injection and Email Verification. But as per my progress until now, the application is made only
for the user end. The admin end is still work in progress. Pictorial view of all the items that can
be bought from the online shopping application is added in the mobile app and the application
loads fast enough as the pictures that are used are in a compressed form. There are many
categories of stationaries shown in the application. But as per the stated proposal there should be
total security for the users who are uses the application. But as per the work proceeding, only the
SQL Injection is implemented in the app. The encryption process as well as the email
verification process for the security purpose were implemented later on. We have not
implemented the encryption process in the application until now as because of the database
connectivity problem. After the database connection done properly from the user end as well as
from the admin end, the encryption security is also implemented in the application. The
algorithms that were used while developing this application is linear search algorithm, where the
customers can search the products in the app. Also, sorting algorithms used while building the
app helps the customers to filter their choices according to their demand.
Document Page
87RESEARCH PAPER
6. References
Allix, K., Bissyandé, T.F., Klein, J. and Le Traon, Y., 2016, May. Androzoo: Collecting millions
of android apps for the research community. In Mining Software Repositories (MSR), 2016
IEEE/ACM 13th Working Conference on (pp. 468-471). IEEE.
Arzt, S., Rasthofer, S., Fritz, C., Bodden, E., Bartel, A., Klein, J., Le Traon, Y., Octeau, D. and
McDaniel, P., 2014. Flowdroid: Precise context, flow, field, object-sensitive and lifecycle-aware
taint analysis for android apps. Acm Sigplan Notices, 49(6), pp.259-269.
Bavota, G., Linares-Vasquez, M., Bernal-Cardenas, C.E., Di Penta, M., Oliveto, R. and
Poshyvanyk, D., 2015. The impact of api change-and fault-proneness on the user ratings of
android apps. IEEE Transactions on Software Engineering, 41(4), pp.384-407.
Boughzala, I. and De Vreede, G.J., 2015. Evaluating team collaboration quality: The
development and field application of a collaboration maturity model. Journal of Management
Information Systems, 32(3), pp.129-157.
Chakraborty, S., Rusli, H., Nath, A., Sikder, J., Bhattacharjee, C., Curcio, S. and Drioli, E., 2016.
Immobilized biocatalytic process development and potential application in membrane separation:
a review. Critical reviews in biotechnology, 36(1), pp.43-58.
Deng, L., Offutt, J., Ammann, P. and Mirzaei, N., 2017. Mutation operators for testing Android
apps. Information and Software Technology, 81, pp.154-168.
Jamieson, K.G., Jain, L., Fernandez, C., Glattard, N.J. and Nowak, R., 2015. Next: A system for
real-world development, evaluation, and application of active learning. In Advances in Neural
Information Processing Systems (pp. 2656-2664).
Li, L., Bartel, A., Bissyandé, T.F., Klein, J., Le Traon, Y., Arzt, S., Rasthofer, S., Bodden, E.,
Octeau, D. and McDaniel, P., 2015, May. Iccta: Detecting inter-component privacy leaks in
android apps. In Proceedings of the 37th International Conference on Software Engineering-
Volume 1 (pp. 280-291). IEEE Press.
Li, L., Bissyandé, T.F., Papadakis, M., Rasthofer, S., Bartel, A., Octeau, D., Klein, J. and Traon,
L., 2017. Static analysis of android apps: A systematic literature review. Information and
Software Technology, 88, pp.67-95.
Ma, L., Gu, L. and Wang, J., 2014. Research and development of mobile application for android
platform. International Journal of Multimedia and Ubiquitous Engineering, 9(4), pp.187-198.

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
88RESEARCH PAPER
Martini, B., Do, Q. and Choo, K.K.R., 2015. Mobile cloud forensics: An analysis of seven
popular Android apps. arXiv preprint arXiv:1506.05533.
Rosas, S.R. and Ridings, J.W., 2017. The use of concept mapping in measurement development
and evaluation: application and future directions. Evaluation and program planning, 60, pp.265-
276.
Searles, K.H., Zielonka, M.G., Ning, J., Garzon, J.L., Kostov, N.M., Sanz, P.F. and Biediger, E.,
2016, February. Fully-Coupled 3D Hydraulic Fracture Models: Development, Validation, and
Application to O&G Problems. In SPE Hydraulic Fracturing Technology Conference. Society of
Petroleum Engineers.
Uzilov, A.V., Ding, W., Fink, M.Y., Antipin, Y., Brohl, A.S., Davis, C., Lau, C.Y., Pandya, C.,
Shah, H., Kasai, Y. and Powell, J., 2016. Development and clinical application of an integrative
genomic approach to personalized cancer therapy. Genome medicine, 8(1), p.62.
Van den Meersche, T., Van Pamel, E., Van Poucke, C., Herman, L., Heyndrickx, M., Rasschaert,
G. and Daeseleire, E., 2016. Development, validation and application of an ultra high
performance liquid chromatographic-tandem mass spectrometric method for the simultaneous
detection and quantification of five different classes of veterinary antibiotics in swine
manure. Journal of Chromatography A, 1429, pp.248-257.
1 out of 89
[object Object]

Your All-in-One AI-Powered Toolkit for Academic Success.

Available 24*7 on WhatsApp / Email

[object Object]