8/10/2019 E-Commerce Report Book
1/133
i
Department of Computer Science
Batch - 2010
Software Process Implementation in E-Commerce
Portal
By
Syed Nabeel Junaid 07A-003-BS
Ahmer Hussain 09B-006-BS
Anas Ul Haq Qureshi 10B-097-BS
Supervisor
Engr. Abdul Rahman Mahmood.Assistant Professor
Project report submitted in partial fulfillment of the requirement for the award of the
Degree of BS (CS)
Karachi
Aug2014
ST-13, Block 7, Gulshan-e-Iqbal, AbulHasanIsphani Road,Opposite Safari Park, P.O. Box75300, Karachi, Pakistan.
Phone: 34978274-5; 349904305, 34982476
http://www.uit.edu.pk
Hamdard University
Usman Institute of Technology
http://www.uit.edu.pk/http://www.uit.edu.pk/http://www.uit.edu.pk/8/10/2019 E-Commerce Report Book
2/133
ii
CERTIFICATE
The undersigned certify that they have read and accepted the Final Year Project Report
entitled Software Process Implementation In E-commerce Portal (Web
Application) submitted by Syed Nabeel Junaid 07A-003-BS,
Mohammad Ahmer Hussain 09B-006-BS and Anas Ul Haq Qureshi 10B-097-BS
in conformity with the requirements for the degree of Bachelor of Science in Computer
Science.
_____________________________
Asst. Prof. Abdul Rahman Mahmood
Project Supervisor
Dated:_________________
8/10/2019 E-Commerce Report Book
3/133
iii
CERTIFICATE
This is to certify that the project report entitled Software Process Implementation
In E-Commerce Portal (Web Application) being submitted by Mr. Anas Ul Haq Qureshi,
Mr. Syed Nabeel Junaid and Mr. Ahmer Hussain in partial fulfillment for the award of
the Degree of Bachelor of Computer Science in 2014 to the Hamdard University is a
record of bonafied work carried out by said students under the supervision of Engr.
Abdul Rahman Mahmood Assistant Professor and evaluated by the panel.
The results embodied in this project report have not been submitted to any other
University or Institute for the award of any Degree or Diploma
________________________________
Assoc. Prof. Engr. Parkash Lohana
HOD, CS Department
_________________________________
Engr. Asst. Prof. Abdul Rahman Mahmood
Supervisor
__________________________
External Supervisor
__________________________
Asst. Prof. Syed Faisal Ali
FYP, Incharge
8/10/2019 E-Commerce Report Book
4/133
iv
ACKNOWLEDGEMENT
We have taken efforts in this project. However, it would not have been possible without
the kind support and help of many individuals. We would like to extend my sincere
thanks to all of them.
This project could not have been completed without Engr. Abdul Rahman Mahmood (IT
Security Consultant-Appxone, Assistant Professor -UIT) who not only served as our
supervisor but also encouraged and challenged us throughout our academic program. And
to my panels, Asst. Prof. Syed Faisal Ali (FYP In-charge) and Engr. Abdul Rahman
Mahmood thank you for evaluating our report with fairness and objectivity.
We would also like to express our gratitude to all our friends who provide advice and
guidance. Last but not least to our parents for supporting us when we need them.
Our thanks and appreciations also go to our university in developing the project and
people who have willingly helped us out with their abilities.
8/10/2019 E-Commerce Report Book
5/133
v
ABSTRACT
The purpose of this project is to study software process model and to understand how to apply
software engineering concepts in the development of E-Commerce portal. In order to understand
the concepts of analysis, architecture and design. We also prepared case studies which in future
can be taught in software development course.
The project includes all major features and functionality of a typical e-commerce website.
Including a categorize list of different products available purchase, an application to search a
specific product, shopping cart application, a sign-up / log-in application, credit card payment
application etc. This project is done under a guidance of a software house.
8/10/2019 E-Commerce Report Book
6/133
vi
TABLE OF CONTENT
i List of Tables .............................................................................................................. ix
iiList Of Figures .............................................................................................................x
1Introduction .................................................................................................................1
1.1 Four E-Commerce business models......................................................................2
1.2 Project Objective ..................................................................................................5
1.3 Project Scope ........................................................................................................5
2Software And Hardware Requirements ...................................................................6
2.1 Hardware Requirement .........................................................................................7
2.2 Software Requirement ..........................................................................................8
3Literature Review .......................................................................................................9
3.1 Privacy and security issue's .................................................................................10
3.2 Processes .............................................................................................................13
3.3 Methodology .......................................................................................................18
3.4 SDLC ..................................................................................................................20
3.5 Case Studies ........................................................................................................22
4Software Requirment Analysis ................................................................................28
4.1Software Requirments ..........................................................................................29
4.2 System Modules And Their Functionalities ......................................................29
4.2.1 User ............................................................................................................30
4.2.2 Administrator .............................................................................................30
5Software design ..........................................................................................................36
8/10/2019 E-Commerce Report Book
7/133
vii
5.1 System Architecture Diagram .............................................................................37
5.2 Data Flow Diagram ............................................................................................38
5.3 Class Diagram ....................................................................................................39
5.4 Object Diagram ...................................................................................................41
5.5 Deployment Diagram .........................................................................................42
5.6 Use Case .............................................................................................................43
5.6.1 Use Case Management Diagram ......................................................................45
5.6.2 Use Case Admin Diagram ..............................................................................46
5.7 Sequence Diagram ..............................................................................................47
5.7.1 Non Register User Sequence Diagram ...........................................................47
5.7.2 Register User Sequence Diagram ...................................................................48
5.7.3 Admin Sequence Diagram ..............................................................................49
5.8 Activity Diagram ...............................................................................................50
5.9 Flow Chart Diagram ...........................................................................................52
5.10 ER Diagram ......................................................................................................53
5.11 Collaboration Diagram......................................................................................55
5.12 Component Diagram .........................................................................................56
5.13 Association Model. ...........................................................................................57
5.14 Basic State Chart Diagram ................................................................................57
5.15 Communication Diagram ..................................................................................58
6Algorithm and its complexity ....................................................................................59
6.1 Algorithm and Pseudo code ................................................................................60
6.2 Complexity of code .............................................................................................60
6.3 Dry Run Algorithm ......60
7Testing .........................................................................................................................67
8/10/2019 E-Commerce Report Book
8/133
viii
7.1 PerformanceTesting ............................................................................................72
7.2 Stress Testing . ....................................................................................................82
7.3 Load Testing .......................................................................................................85
7.4 Unit Testing ........................................................................................................90
8Conclusion ..................................................................................................................94
9Further Enhancement/Recommendation ................................................................96
10 Reference and Bibliography....................................................................................98
11 Annexure.................................................................................................................103
11.1 Project Proposal ..............................................................................................104
11.3 Project GANTT Chart .............................................................................................116
11.4 Plagiarism ..................................................................................................................118
8/10/2019 E-Commerce Report Book
9/133
ix
LIST OF TABLES
Table 2.1: Hardware Requiremnts ....07
Table 6.1: Complexity of searching63
Table 6.2:Complexity of login65
Table 7.4: Unit Testing90
8/10/2019 E-Commerce Report Book
10/133
x
LIST OF FIGURES
Fig. 5.1: Syatem Architecture Diagram ................................................................37
Fig. 5.2: Data Flow Diagram ..................................................................................38
Fig. 5.3: Class Diagram ..........................................................................................39
Fig. 5.4: Object Diagram ........................................................................................41
Fig. 5.5: Deployment Diagram ...............................................................................42
Fig. 5.6: Use Case Diagrams...................................................................................43
Fig. 5.7: Sequence Diagrams ..................................................................................47
Fig. 5.8: ActivityDiagram .......................................................................................50
Fig. 5.9: Flowchart Diagram ..................................................................................52
Fig. 5.10: ER Diagram ............................................................................................53
Fig. 5.11: Collaboration Diagram ..........................................................................55
Fig. 5.12: Component Diagram..............................................................................56
Fig. 5.13: AssociationModel ...................................................................................57
Fig. 5.12: Basic State Chart Diagram....................................................................57
Fig. 5.12: Communication Diagram ......................................................................58
Fig. 7.1: Performance Testing ................................................................................72
Fig. 7.2: Stress Testing ............................................................................................82
Fig. 7.3: Load Testing .............................................................................................85
Fig. 7.4: Units Testing .............................................................................................90
8/10/2019 E-Commerce Report Book
11/133
1
_____________________________________________________________________________
CHAPTER 1
INTRODUCTION
_____________________________________________________________________________
8/10/2019 E-Commerce Report Book
12/133
2
The software process implementation is defined as to develop softwarestep by step acquiring
the activities which includes planning, design, coding and deployment/maintenance. To
implement these activities we developed an e-commerce application[1]
. A typical e-commerce
website which includes a categorized list of different product available for purchase, an
application to search a specific product, a shopping cart application, a sign-up/ log-in application,a credit card payment application etc.
E-commerce is a trading in products or services using computer networks, such as the internet.
Electronic commerce draws on technologies such asmobile commerce,electronic funds
transfer,supply chain management,Internet marketing,online transaction processing,electronic
data interchange (EDI),inventory management systems,and automateddata collection systems.
Modern electronic commerce typically uses theWorld Wide Web for at least one part of the
transaction's life cycle, although it may also use other technologies such as e-mail[2]
. E-
commerce businesses usually employ some or all of the following practices:
Providedetail or virtual storefront on websites with online catalogs, sometimes gathered into
a "virtual mall"
Buy or sell on websites oronline marketplaces.
Gather and use demographic data through web contacts and social media.
Use electronic data interchange, the business-to-business exchange of data.
Reach prospective and established customers by e-mail or fax (for example, with
newsletters).
Usebusiness-to-businessbuying and selling.
Provide secure business transactions
1.1 Four E-Commerce Business Models
There are four types of E-Commerce business models. The four types of E-Commerce business
models are B2C which stands for Business-to-Consumer, B2B which stands for Business-to-
Business model, C2C which stands for Consumer-to-Consumer, and B2G which stands for
Business-to-Government. When working, selling, or buying with any of these models, it is
important to be familiar with what each model contains[3]
. B2C represents most of E-Commerce
websites. Businesses that sell to consumers are considered B2C. Online stores and shopping are
http://en.wikipedia.org/wiki/Mobile_commercehttp://en.wikipedia.org/wiki/Electronic_funds_transferhttp://en.wikipedia.org/wiki/Electronic_funds_transferhttp://en.wikipedia.org/wiki/Supply_chain_managementhttp://en.wikipedia.org/wiki/Online_advertisinghttp://en.wikipedia.org/wiki/Online_transaction_processinghttp://en.wikipedia.org/wiki/Electronic_data_interchangehttp://en.wikipedia.org/wiki/Electronic_data_interchangehttp://en.wikipedia.org/wiki/Inventory_management_softwarehttp://en.wikipedia.org/wiki/Data_collectionhttp://en.wikipedia.org/wiki/World_Wide_Webhttp://en.wikipedia.org/wiki/Etailhttp://en.wikipedia.org/wiki/Online_marketplacehttp://en.wikipedia.org/wiki/Business-to-businesshttp://en.wikipedia.org/wiki/Business-to-businesshttp://en.wikipedia.org/wiki/Online_marketplacehttp://en.wikipedia.org/wiki/Etailhttp://en.wikipedia.org/wiki/World_Wide_Webhttp://en.wikipedia.org/wiki/Data_collectionhttp://en.wikipedia.org/wiki/Inventory_management_softwarehttp://en.wikipedia.org/wiki/Electronic_data_interchangehttp://en.wikipedia.org/wiki/Electronic_data_interchangehttp://en.wikipedia.org/wiki/Online_transaction_processinghttp://en.wikipedia.org/wiki/Online_advertisinghttp://en.wikipedia.org/wiki/Supply_chain_managementhttp://en.wikipedia.org/wiki/Electronic_funds_transferhttp://en.wikipedia.org/wiki/Electronic_funds_transferhttp://en.wikipedia.org/wiki/Mobile_commerce8/10/2019 E-Commerce Report Book
13/133
3
all examples of B2C. B2B are businesses selling products to other businesses. B2B are usually
larger companies that are supplying a service to other businesses. For example, office max is a
business that sells office supplies to other businesses. Also, they are almost always doing
business over the web. C2C is a website that consumers sell to other consumers. People are
brought together to sell and buy products for this model[4]
. For example, EBay is a common
place for consumers to sell and buy items. B2G consists of businesses working with the
government. For example, the IRS is a way for businesses to pay their taxes through the web.
These four E-Commerce business models are very common in this day-in-age.
1.1.1 Business-to-Consumer
Business-to- consumer (B2C) model is a business or transactions conducted directly between a
company and consumers who are the end-users of its products or services.[5]
The term became
popular during the dot-com boom[6]
of the late 1990s. While many online B2C websites shut
down, the companies such as Amazon.com and Priceline.com survived and became the most
successful companies in the world. This model is likely familiar to most people. If a person have
purchased an item online for their own use, the person e-tailed. The concept was first developed
in 1979 by Michael Aldrich, an English inventor, who connected a television set to a transaction
processing computer with a telephone line and coined the term "teleshopping."[7]
1.1.2 Business-to-Business
Business-to-business (B2B) is a type of commerce transaction that exists between businesses,
such as those involving a manufacturer and wholesaler, or a wholesaler and a retailer. A typical
supply chain involves multiple business to business transactions, as companies purchase
components and other raw materials for use in its manufacturing processes.[8]
An example that
illustrates the business to business concept is automobile manufacturing such as buying tires,
glass for windscreens, and rubber hoses for its vehicles. B2B is also used in the context of
communication where employees from different companies can connect and communicate with
one another, such as through social media like Linkedin.com
http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-12http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-12http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-12http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-13http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-13http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-14http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-14http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-14http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-15http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-15http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-15http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-15http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-14http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-13http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-128/10/2019 E-Commerce Report Book
14/133
4
1.1.3 Consumer-to-Consumer
Consumer-to-Consumer (C2C) is a type of electronic commerce in which consumers buy, sell, or
trade products and services from one another through a third party website.[9]
The third party
website can be either fee-based or free as long as transactions are between consumers. Some
popular websites known for Consumer-to-Consumer transactions include Craigslist, eBay, and
Auto Trader. There are many advantages of C2C e-commerce. Because business transactions are
done between consumers and not businesses, buyers and sellers do not need to account for taxes.
Also, the transactions are done on a personal level and there are no legal obligations like
companies might have. This allows for prices to be negotiated and sometimes bartering can take
place. Most transactions that take place on websites like Craigslist, however, are paid for with
cash, so it is difficult to return items or purchase them with credit cards. There is also a lot ofsafety concerns with consumer-to-consumer transactions. Because many sales are completed
from peoples houses, there is a lack of privacy. Also, because the buyers may be going to
someones house to buy a product, there are in danger of being kidnapped. That is why many
Craigslist users suggest meeting in a public area. The best part about C2C commerce is that there
are many different websites that you can use to match both the product you are selling as well as
the way you would like to sell it. If you dont want to have someone coming to your house
through Craigslist, then you can simply sell your item through eBay and ship it to another
consumer. It is all about putting more power into the consumers hands.[10]
This project is about online shopping or e-shopping is a form of electronic commerce which
allows consumers to directly buy goods orservices from a seller over theinternet using aweb
browser.Alternative names are: e-web-store, e-shop, e-store, Internet shop, web-shop, web-store,
online store, online storefront and virtual store.
An online shop evokes the physical analogy of buyingproducts or services at abricks-and-
mortarretailer orshopping center; the process is called business-to-consumer (B2C) online
shopping.
http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-17http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-17http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-17http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-18http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-18http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-18http://en.wikipedia.org/wiki/Electronic_commercehttp://en.wikipedia.org/wiki/Service_(economics)http://en.wikipedia.org/wiki/Internethttp://en.wikipedia.org/wiki/Web_browserhttp://en.wikipedia.org/wiki/Web_browserhttp://en.wikipedia.org/wiki/Product_(business)http://en.wikipedia.org/wiki/Brick_and_mortar_businesshttp://en.wikipedia.org/wiki/Brick_and_mortar_businesshttp://en.wikipedia.org/wiki/Retailinghttp://en.wikipedia.org/wiki/Shopping_centerhttp://en.wikipedia.org/wiki/Shopping_centerhttp://en.wikipedia.org/wiki/Retailinghttp://en.wikipedia.org/wiki/Brick_and_mortar_businesshttp://en.wikipedia.org/wiki/Brick_and_mortar_businesshttp://en.wikipedia.org/wiki/Product_(business)http://en.wikipedia.org/wiki/Web_browserhttp://en.wikipedia.org/wiki/Web_browserhttp://en.wikipedia.org/wiki/Internethttp://en.wikipedia.org/wiki/Service_(economics)http://en.wikipedia.org/wiki/Electronic_commercehttp://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-18http://en.wikibooks.org/wiki/Introduction_to_Computer_Information_Systems/E-Commerce#cite_note-178/10/2019 E-Commerce Report Book
15/133
5
1.2 Project objectives
User would need to register /login to make purchases.
It will display the product catalogue and details according to the category.
The user can make customized searches for a product.
The project will make appropriate notifications according to the situation.
Confirmation email will be send to the user after purchase.
Allow user to add/edit items into the shopping cart.
Display and allow cancelation of orders that are eligible for cancelation.
1.3 Project scope
Our project scope will be:
Admin panel is the back end of application from where the admin can manage the whole
site and its contents as well.
User will be able to purchase products online and get a confirmation email.
Also prepare case studies which in future can be taught in Software development course.
8/10/2019 E-Commerce Report Book
16/133
6
_____________________________________________________________________________
CHAPTER 2
SOFTWARE AND HARDWARE REQUIREMENTS
_____________________________________________________________________________
8/10/2019 E-Commerce Report Book
17/133
7
2.1 Software Required:
Our project is about E-Commerce portal (online shopping) in which user can buy product
online. The following is the development environment of what we will be developed:
Aptana Studio
My SQL
Xampp Server
PHP
2.2 User Interface Requirement:
Each part of the user interface intends to be as user friendly as possible. The fonts and
buttons used will be intended to be very fast and easy to load on web pages. The pages
will be kept light in space so that it wont take a long time for the page to load.
2.3 Hardware Required:
2.3.1 Operating Environment
This product will be developed using Open Source server side language PHP so, we would
preferably use Microsoft Windows Operating System for developing this software.
2.3.2 Design and implementation constraints
This product will be developed using Open Source server side language PHP So, we would
preferably use Microsoft Windows Operating System for developing this software.
8/10/2019 E-Commerce Report Book
18/133
8
Operating System (OS) Hardware
Microsoft Windows XP/
7/8.8.1 (32 or 64 Bit)
1.5 GHz 32-bit (x86)/64-bit (x64) or higher
1 GB RAM or 512 MB RAM (32-bit) or higher
2GB HDD free
Table 2.3 Hardware Requirement
2.3.3 GB RAM OR 512 MB RAM
RAM is the most important component of Computer system it is based on Memory Speed
and Performance of the System requirement for Web Application is 1 GB or 512 MB.
Below 512 MB cannot perform the task for the required speed for example in Browsing,
Searching and etc.
2.3.4 2 GB HDD
This Requirement is minimum 2GB space required for downloading the Pictures and PDF
report File and report Images.
2.3.5 OPERATING SYSTEM:
Minimum Requirement is XP or WIN 7, 8, 8.1 because it is a web application so it required a
high speed Browser like GOOGLE CHROME AND FIREFOX etc these type of browsers
only required to install in this operating systems.
8/10/2019 E-Commerce Report Book
19/133
9
_____________________________________________________________________________
CHAPTER 3
LITERATURE REVIEWS
_____________________________________________________________________________
8/10/2019 E-Commerce Report Book
20/133
10
E-Commerce is the process of buying, selling, or exchanging products, services, or information
via computer networks. The main concept of our project is an e-commerce website; a storefront
which could be selling anything but would have all the features common to various e-commerce
websites.
Customers will be able to register to this site, browse product, make purchases and can update
their profile information[11]
.Customers also have access to the internet and a validmethod of
payment in order to complete a transaction[12]
.Consumers find a product of interest by visiting
the website of the retailer directly or by searching among alternative vendors using ashopping
search engine.
Once a particular product has been found on the website of the seller, most online retailers
useshopping cart to allow the consumer to accumulate multiple items and to adjust quantities,
like filling a physical shopping cart or basket in a conventional store[13]
. A "checkout" process
follows (continuing the physical-store analogy) in which payment and delivery information is
collected, if necessary[14]
. Some stores allow consumers to sign up for a permanent online
account so that some or all of this information only needs to be entered once. The consumer
often receives an e-mail confirmation once the transaction is complete.
Less sophisticated stores may rely on consumers to phone or e-mail their orders (although full
credit card numbers, expiry date, andCard Security Code,[15]or bank account and routing
number should not be accepted by e-mail, for reasons of security).
Admin panel is the back end of application from where the admin can manage the whole site and
its contents as well[16]
. User will be able to purchase products online and get a confirmation
email.
http://en.wikipedia.org/wiki/Online_shopping#Paymenthttp://en.wikipedia.org/wiki/Online_shopping#Paymenthttp://en.wikipedia.org/wiki/Shopping_search_enginehttp://en.wikipedia.org/wiki/Shopping_search_enginehttp://en.wikipedia.org/wiki/Shopping_cart_softwarehttp://en.wikipedia.org/wiki/Card_security_codehttp://en.wikipedia.org/wiki/Online_shopping#cite_note-10http://en.wikipedia.org/wiki/Online_shopping#cite_note-10http://en.wikipedia.org/wiki/Online_shopping#cite_note-10http://en.wikipedia.org/wiki/Online_shopping#cite_note-10http://en.wikipedia.org/wiki/Card_security_codehttp://en.wikipedia.org/wiki/Shopping_cart_softwarehttp://en.wikipedia.org/wiki/Shopping_search_enginehttp://en.wikipedia.org/wiki/Shopping_search_enginehttp://en.wikipedia.org/wiki/Online_shopping#Paymenthttp://en.wikipedia.org/wiki/Online_shopping#Payment8/10/2019 E-Commerce Report Book
21/133
11
3.1 PRIVACY AND SECURITY ISSUE
Shopping online has never been so easy. With the flourishing numbers of online merchants,
people nowadays have various choices to do their shopping[17]
. Big companies such as eBay and
amazon.com have introduced many value added features to help the customers to decide what to
shop for. With features such as price comparison, product photos and user reviews, consumers
can shop easily and smartly without even going to the stores and having such a hard time looking
for the products they want. All they have to do are just browse for the product they want in the
website and within a few mouse clicks they are off. Such simplicity is what makes online
shopping appealing for consumers[18]
. The question is, why do many people still deny shopping
online? Well, for most people, privacy and security issues are their concerns. Hence, here I will
discuss customers perception of privacy and security issues, the reality of such issues and ways
to avoid those issues, all based on some trustworthy sources I have found.
To know customers perception of customer and security issues, I reviewed a scholarly article
entitled Consumer Perceptions of Privacy and Security Risks for Online Shopping produced
in the Journal of Consumer Affairs. In the United States, more than half of the adult population
uses the Internet and from that number, approximately half have shopped online (Sefton, qtd. in
Miyazaki and Fernandez[19]
). Previous studies had shown that Internet users as a whole agreed
that privacy and security issues are vital for them to shop online (Rohm and Milne, qtd. in
Miyazaki and Fernandez[20]
). Most of them regard their personal information as their main
concern (U.S. FTC, qtd. in Miyazaki and Fernandez). In the research conducted by Miyazaki and
Fernandez, who are the authors of the articles themselves, privacy and security issues accounted
for more than 65 percent of consumers main concern as oppose to the other[21]
for shopping
inconveniences and others. They also concluded that more experienced Internet users tend to
have more concern regarding privacy issues but less concern on security issues. Nevertheless,
consumers still consider both as their main concern for online shopping as suggested in the
survey.
8/10/2019 E-Commerce Report Book
22/133
12
Now, after knowing that privacy and security issues are vital for consumers in online shopping, I
would like to know the emphasis in the real world. From an article titled The Myth of Secure E -
Shopping published in PC World, the reality of such issue is revealed. While most consumers
trust big and well established online merchant such as CD Universe, Travelocity, Columbia
House and IKEA, these big companies still receive frequent security threats (Kandra). Joseph
McDonnell, a CEO of online security firm I Shop Secure even confessed that all online firms
must have received threats of some sorts. He added by saying that hackers could easily infiltrate
and get customers personal information online as online shoppers are not anonymous. Experts
also discover that security measures taken by online retailers are insufficient[22]
. For instance,
data encryption only applies in actual transfer of customer data but not in the database which is
ironically the most common targets for hackers. Some other sites however, do not even have
privacy and security policy posted implying that they do not protect their customers (Hairell).
This is what happened to Biblio find when it was hacked hence compromising its customers
credit information (Kandra)[23]
. Apart from the retailers themselves, credit card processing firms
and third party sites also receive threats (Kandra).Creditcards.com once had disclosed that
someone had infiltrated its site and posted more than 55000 credit card numbers on the Internet.
So, from all these indications, I can see that online shopping is not totally safe.
However, customer rights and security aspects are not just the responsibility of online merchants.
To uphold them, the consumers themselves need to act. According to Ten Things Your Mother
Never Told You about Online Shopping published in Yahoo! Internet Life, to be an ace
consumer, online shoppers need to prepare themselves with some basics (Halpin). As the
prominent method of payment is credit card, consumers should be more aware in handling it[24]
.
They should never disclose their credit information via e-mail. Some of the credit card issuers
also have some sorts of protection that consumers should apply for. Apart from that, consumers
should limit themselves from releasing unnecessary personal information such as age and income
to protect their privacy (Hood, qtd. in Halpin). Also, as Todd Richter who is the president of girlshop (an e-commerce site) had said, consumers should always be aware of the security
technology used by merchant sites[12]
. Technologies such as Secure Socket Layer (SSL) and
VeriSign play vital part in distinguishing one site from another. Nonetheless, consumers should
always be alert of the privacy and customer policy in each site they tend to buy from (Halpin).
8/10/2019 E-Commerce Report Book
23/133
13
Lastly, if there are still dissatisfactions, consumers could always report them to consumer-related
agencies such as Better Business Bureau or Federal Trade Commission (Halpin).
Thus, after reviewing these three reliable sources related to the privacy and security issues of
online shopping, I can see some interconnections between them. By common sense, anyone who
tends to shop online will think twice before they buy anything as to consider the privacy and
security issues related to it. This is proven in my first so urce (Consumer Perceptions of Privacy
and Security Risks for Online Shopping) through the survey. People are always conscious about
their privacy and security. However, this is not the case in the real world. As my second source
(The Myth of Secure E-Shopping) has proposed, even though online merchants have tried their
best to beef up the security, threats and attacks still prevail[25]
. For this reason, consumer should
act fast to protect their privacy when shopping online. My third source (10 Things Your Mother
Never Told You about Online Shopping) explains many ways that consumers could do to
enhance the privacy and security aspect apart from what online merchants have done for the
same reason. Taking all these contents as a whole, I would say that in any situation, people can
still shop online safely provided they understand the reality and take some precautions above all.
3.2 PROCESSES
The process which is not implementing in the project is the discount process which is not part ofthe requirement of the project. And there is an option given in the project whenever the price of
the product reduces admin will reduce the price by getting into edit option. Following are the
processes which implement in the project are
3.2.1. Sign In Process
3.2.2. Sign Up Process
3.2.3. Purchase Process
3.2.4. Order Process
3.2.5. Shopping Cart Process
3.2.6. Checkout Process
3.2.7. Admin Process
3.2.8. Confirmation Process
8/10/2019 E-Commerce Report Book
24/133
14
3.2.1 Sign In Process:
Figure 3.2.1 Sign in process
User view the sign In page and enter user name and password .If the user name and
password are correct then system display the page
If the username and password are in correct then it show the message username/password
are incorrect
3.2.2 Sign Up Process:
Figure 3.2.2 Sign up process
In this process user have to register (sign Up) for this site and submit the required
information as needed.
System save the information and confirm the user to successfully to sign in
8/10/2019 E-Commerce Report Book
25/133
15
3.2.3 Shopping Cart Process:
Figure 3.2.3 Shopping cart process
In this process the shopping cart keep the track of the products which the user selected .
Before checkout if a user want to remove or change some quantity of product then user
can do it
3.2.3 Checkout Process:
Figure 3.2.3 Checkout process
This process starts when the user done with shopping cart process and user click on the
checkout button.
If the user logged In then he can buy the product give the shipment address and billing
address and give the payment online after the payment user receive the confirmation
email.
If the user not log In/Sign Up then user cant buy the product
8/10/2019 E-Commerce Report Book
26/133
16
3.2.4 Purchase Process:
Figure 3.2.4 Pur chase Process
When user wants to buy the product user simply select the product and add the product to
shopping cart.
If user wants to buy more product he simply select more products and add to shopping
cart and change the quantity of products according to his needs and then checkout .
3.2.5 Order Process:
Figure 3.2.5 Order pur chase
After selecting the product user wish to purchase the product and proceed to the shopping
cart and checkout.
After checkout user give the shipment address and billing address and give the payment
online after the payment user receive the confirmation email.
8/10/2019 E-Commerce Report Book
27/133
17
3.2.6 Admin Process:
Figure 3.2.6 Admin process
In this process the admin can add, edit the product detail, activate, deactivate the product
also
Admin can block and unblock the user
3.2.7 Confirmation Process:
Figur e 3.2.7 Conf irmation process
After the shipment address, billing address and online payment the user receive the email as
confirmation from system about the recent buy from the user
8/10/2019 E-Commerce Report Book
28/133
18
3.3 METHODOLOGY
The waterfall model implement in the project. The waterfall model is a sequential design process
which used in software development process in which progress is seen as flowing steadily
downward through the phases of Requirement, Designing, Implementation, Testing and
Maintenance.
3.3.1 ADVANTAGES OF WATERFALL MODEL
It is very simple and easy model to use
In this model when the phases are completed it do not overlap
In each phase of this model it has specific deliverables and review process
This model works well for small projects where requirements are understood
3.3.2 DISADVANTAGES OF WATERFALL MODEL
No working software is produced until late during lifecycle
High amount of risk and uncertainty involved
Itsnot a good model for object oriented and complex projects
Poor model for long and ongoing projects
8/10/2019 E-Commerce Report Book
29/133
19
3.3.3 PHASES OF WATERFALL MODEL
Figur e 3.3.3 Waterfal l Model
3.3.3.1 REQUIREMENTS
In this phase we gather the data for the project, analysis the user (dgs) needs and developed their
requirement. Create the functional requirement document known as SRS (Software Requirement
Specification) for the user (dgs Software House) needs
3.3.3.2 DESIGN
For high-level design we focus on system architecture and design. It provide overview of
solution platform, system, product and services .For low-level design software components are
designed. It define actual logic for each and every component of system
3.3.3.3 TESTING
In this phase once coding is complete we integrate data and design. For testing we did white box
testing and quality assurance testing. Testing software were also used for load testing and
performance testing for the system
8/10/2019 E-Commerce Report Book
30/133
20
3.3.3.4 IMPLEMENTATION
After the some integration and testing process we implement our system into production
environment and see its working properly and it worked properly
3.4 SDLC (System Development Life Cycle)
PlanningData
RequirementDesigning Development
Integration &
TestingImplementation Maintenance
Figur e 3.4 SDLC diagram
3.4.1. Planning
3.4.2. Data requirement and analysis
3.4.3. Designing
3.4.4. Development
3.4.5. Integrate and Testing
3.4.6. Implementation
3.4.7. Maintenance
3.4.1 PLANNING
In this project we developed a plan first to gather data and made some documents of the project
which required explanation of the project, advantages of this project and mockup plan, uml
diagrams, templates and structure. Second to start the development and implementation and last
the integration and testing to be done
8/10/2019 E-Commerce Report Book
31/133
21
3.4.2 DATA REQUIREMENT & ANALYSIS
In this phase we gather the data for the project, analysis the user (Digital global services DGS)
needs and developed their requirement. Create the functional requirement document known as
SRS (Software Requirement Specification) for the user (dgs) needs
3.4.3 DESIGN
In this phase design has been made and according to the requirement the design had to be simple,
attractive and user friendly and HCI (Human Computer Interaction) principle has also been
followed in this design. For high-level design we focus on system design and architecture. It
provide overview of solution platform, system, product and services. For low-level design
software components are designed. It defines actual logic for each and every component of
system. Class diagram with all methods and relation between the classes comes under low level
diagram
3.4.4 DEVELOPMENT
In development we convert a design into complete information system which acquire some
system for which we install Xampp server, aptana studio. For Database we use My SQL. And for
coding HTML code, PHP code and codeingniter framework were used for the development.
3.4.5 INTEGERATE & TESTING
In this phase we integrate data and design. For testing we did white box testing known as unit
testing and quality assurance testing. Testing software were also used for stress testing,
performance testing and load testing for the system
8/10/2019 E-Commerce Report Book
32/133
22
3.4.6 IMPLEMENTATION
After the some integration and testing process we implement our system into production
environment and see its working properly and it worked properly
3.5 CASE STUDIES
3.5.1 CASE STUDY
Figur e 3.5.1 Shopping cart
Client: Ahmed Rashid
Location: Karachi, Pakistan
Project Name: Software Process Implementation In E-Commerce Portal
Technology used: Php , My Sql
3.5.1.1 PROBLEM
Client is a Business man , He own one website which is on online shopping to grow his business
via internet as todays most of the economy is running through internet (i.e E-Commerce).
Users are facing problem in his website, quantity of a product in shopping cart was not updating
in the database automatically. It only update when user change the quantity and press update
button.
Our Client Says...The development team has done a
fantastic job. We are now able tomanage all the problems before it's
too late.
8/10/2019 E-Commerce Report Book
33/133
23
Client ask to remove update button from shopping cart and ask to put drop box in quantity so
when user change quantity it automatically update in database.
3.5.1.2 SOLUTION
The process started with a series of requirement gathering sessions, and once we felt we had
enough information, a sketch based version of the system was developed to demonstrate how we
felt it would function. Following a number of refinements, we were able to take a detailed
specification through to development and delivered a working solution within a relatively short
timeframe. By using php and My Sql database, the system can be accessed from any internet
browser, whether it's in or out of the office and has made a dramatic improvement to this part of
the business.
3.5.2 CASE STUDY
3.5.2.1 INTRODUCTION
The shopping cart which keep the track of the products which the user selected. Before checkout
if a user wants to remove or change some quantity of product then user can do it in shopping
cart.
3.5.2.2 PROBLEM ANALYZE PHASE
Users are facing problem in his website, quantity of a product in shopping cart was not updating
in the database automatically. It only update when user change the quantity and press update
button.
3.5.2.3 REQUIREMENT PHASE
To remove update button from shopping cart and to put drop box in quantity so when user
change quantity it automatically update in database.
8/10/2019 E-Commerce Report Book
34/133
24
3.5.2.4 DESIGN PHASE
In this phase design of shopping cart has been made and according to the requirements. The
design had to be simple, attractive and user friendly and HCI (Human Computer Interaction)
principle has also been followed in this design.
Figure 3.5.2.4 Shopping cart design
3.5.2.5 IMPLEMENTATION PHASE
After the development, integration and testing process we implement our system into production
environment according to the requirement and see its working properly and it worked properly
3.5.2.6 VERIFICATION PHASE
In this phase we integrate data and design. For verification we did white box testing known as
unit testing and quality assurance testing. Testing software were also used for stress testing,
performance testing and load testing for the system
3.5.2.7 DEVELOPMENT PROCESS
In shopping cart development we convert a design into complete information system which
acquire some system for which we install Xampp server, Aptana studio. For Database we use My
Sql. and for coding HTML code, PHP code and codeingniter framework were used for the
development.
We conjecture that the well-thought-out requirements document was the key element. Our
familiarity with the product domain must also have contributed to the clarity of the requirements.
8/10/2019 E-Commerce Report Book
35/133
25
This solid foundation allowed us to come up with a carefully thought-out analysis, which in its
turn provided the support for a complete design. Marketing contributed by supplying only a
minimal number of functionality changes during the development process. The well-thought-out
analysis and design accommodated these modifications readily.
Estimates for the reuse fraction of the output of the analysis, design, and implementation phases
range between 80% and 100%.
Whether the maintenance cost for this system will be reduced is as yet unknown.
3.5.3 CASE STUDY
3.5.3.1 INTRODUCTION
The shopping cart which keep the track of the products which the user selected. Before checkout
if user want to remove or change some quantity of product then user can do it in shopping cart.
3.5.3.2 RESEARCH QUESTION
Our questions focus on two key sets of properties of development. It is remarkable that large
numbers of people manage to work together successfully to create high quality, widely used
products. Our first set of questions (Q1-Q2) are aimed at understanding basic parameters of the
process by which shopping cart came to exist.
Q1: What was the process used to develop Shopping cart?
In answer to this question, we construct a brief qualitative description of shopping cart
development.
Q2: How many people wrote code for new shopping cart functionality? How many people
Report the problems? How many people repaired defects?
We want to see how large the shopping cart development is, and identify how many people
actually occupied each of these traditional development and support roles.
8/10/2019 E-Commerce Report Book
36/133
26
3.5.3.3 SHOPPING CART DEVELOPMENT
In shopping cart development we convert a design into complete information system which
acquires some system for which we install Xampp server, Aptana studio. For Database we use
MySql. And for coding HTML code, PHP code and codeingniter framework were used for the
development.
We conjecture that the well-thought-out requirements document was the key element. Our
familiarity with the product domain must also have contributed to the clarity of the requirements.
3.5.3.4 PROBLEM
Our sets of questions (Q1-Q2) are aimed at understanding the problem of shopping cart which
came to exist.
Q1: What are the problems identify in the Shopping cart?
The problem that identify in the shopping cart was the quantity of a product in shopping cart was
not updating in the database automatically. It only update when user change the quantity and
press update button.
Q2: What is the solution of the problem?
The solutions are to remove update button from shopping cart and to put drop box in quantity
so when user change quantity it automatically update in database before checkout.
8/10/2019 E-Commerce Report Book
37/133
27
RESULT
Figur e 3.5.3.3 Shopping cart
3.5.3.4 DATA SOURCE
The source which use in the development is php which is an open source
8/10/2019 E-Commerce Report Book
38/133
28
_____________________________________________________________________________
CHAPTER 4
SOFTWARE REQUIREMENT ANALYSIS
_____________________________________________________________________________
8/10/2019 E-Commerce Report Book
39/133
29
E-Commerce stands for electronic commerce. It has twopanelsuser and administrator. User can
sign up/login, buy, add, edit, delete items in shopping cart. Admin can add, activate/deactivate
product, reset password
4.1 SOFTWARE REQUIREMENTS:
Windows Operating System Windows 7/XP/8/8.1
XAMP Server
My SQL Database Management System
Aptana studio and PHP Designer.
4.2 CATEGORIES OF REQUIREMENT
There are two main categories of requirement were identified in this project
- Functional requirement
- Non-Functional requirement
4.2.1 FUNCTIONAL REQUIREMENT
4.2.1.1 SYSTEM MODULES AND THEIR FUNCTIONALITIES:
Following are the main module of the system:
4.2.1.1.1. User
4.2.1.1.2. Administrator
4.2.1.1.1 User:
User can simply signup/login into web self-care portal view site, buy, add, edit,
delete items in shopping cart
8/10/2019 E-Commerce Report Book
40/133
30
4.2.1.1.2 Administrator:
Admin can add, activate/deactivate product, reset password of customer confirm
and cancel order of customer
4.2.1 NON-FUNCTIONAL REQUIREMENT
Following are the non-functional requirements are
Secure access of the confidential data known as customers details.
The system should be available when needed any time.
Easy to maintain
The system should be portable to different platforms
4.3 CASE STUDIES OF SOFTWARE ANALYSIS
4.3.1 CASE STUDY:
A customer visits the online shopping portal. A customer may buy item or just visit the page and
logout. The customer can select a segment, then a category, and brand to get the different
products in the desired brand. The customer can select the product for purchasing. The process
can be repeated for more items. Once the customer finishes selecting the products the cart can
be viewed. If the customer wants to edit the final cart it can be done here. For final payment the
customer has to login the portal, if the customer is visiting for the first time he must register with
the site, else the customer must use the login page to proceed. Final cart is submitted for payment
and card details and address are confirmed by the customer
8/10/2019 E-Commerce Report Book
41/133
31
F igure 4.3.1- Shopping Portal
8/10/2019 E-Commerce Report Book
42/133
32
4.3.2 CASE STUDY: (Case study of user)
Userswhen enter the site and view the various products in different category. Authentication
of the user is done for the payment of the shopping done. User can browses through the products
available in the shop, can select some of them and put into the shopping cart. User can anytime
change the items in the cart either by adding new items or by removing existing items. User
proceeds towards the payment counter. Finalize product list of items he finally wish to buy and
make the final payment
4.3.3 CASE STUDY: (Case study of admin)
Admin manage the site pages, user accounts and products. Update the details of the different
category of product. Admin can add, edit the product detail, activate, deactivate the product and
block and unblock the user
F igure 4.3.3 Admin
8/10/2019 E-Commerce Report Book
43/133
8/10/2019 E-Commerce Report Book
44/133
34
4.3.5 CASE STUDY: (Case study Sign In and Sign Up)
User views the sign in page and enter user name and password .If the user name and password
are correct then system display the page. If the username and password are in correct then it
shows the message username/password are incorrect. If the user is new and wants to buy the
product then user have to register (sign up) for this site and submit the required information as
needed. System save the information and confirm the user successfully to sign in.
4.3.5.1 PROBLEM DURING DEVELOPMENT
There was a bug when user sign Up and fill the requirement which required the. After signup
user was not automatically login user had to enter username and password to login. Later that
bug was observed and the developer fixed it now after the signup process user automatically
login
4.3.5.2 WORKING OF SIGN IN & SIGN UP
-
F igure 4.3.5 Sign I n and Sign Up
8/10/2019 E-Commerce Report Book
45/133
35
4.3.7 CASE STUDY: (Case study of product catalogue & detail)
When user wants to view the product detail then user can view through the product categories
any product he wants to see. If users view the product from the home page user simply select
the product and view the product detail also. User can see the product detail from any page
F igure 4.3.7 Product Catalogue & detail
8/10/2019 E-Commerce Report Book
46/133
36
_____________________________________________________________________________
CHAPTER 5
SOFTWARE DESIGN
____________________________________________________________________________
8/10/2019 E-Commerce Report Book
47/133
37
5.1 System Architecture Diagram
A system architecture diagram is an alternate way to show s scenario. This type of diagram shows object
interactions organized around the objects and their links to each other.
Fig. 5.1 System Archi tecture Di agram
In Fig. 5.1, it shows the object interaction in how they linked to each other manner, first user
provides its username and password then its verified by the server and after that user can able to
do shopping
8/10/2019 E-Commerce Report Book
48/133
38
5.2 DATA FLOW DIAGRAM (DFD)
Data Flow Diagram (DFD) is a graphical representation of a data flow in a system.
User
Login/Sign Up
Manage site
users and
Products
View Product
Select
Product
Buy Product
Admin
Fig. 5.2 Data Flow Diagram
In Fig. 5.2, it show the data flow in system, first user login into the system after that he/she has
two options (i)User has to login or signup to do shopping (ii)Admin can manage site
8/10/2019 E-Commerce Report Book
49/133
39
5.3 CLASS DIAGRAM
The class diagram is a static diagram. It represents the static view of an application. Class
diagram is not only used for visualizing, describing and documenting different aspects of a
system but also for constructing executable code of the software application. The class diagram
is the main building block ofobject oriented modeling. It is used both for generalconceptual
modeling of the systematic of the application, and for detailed modeling translating the models
intoprogramming code. Class diagrams can also be used fordata modeling.The classes in a
class diagram represent both the main objects, interactions in the application and the classes to be
programmed
F ig. 5.3 Class Diagram
In Fig. 5.3, it shows six classes of the system
http://en.wikipedia.org/wiki/Object_orientedhttp://en.wikipedia.org/wiki/Conceptual_modelhttp://en.wikipedia.org/wiki/Conceptual_modelhttp://en.wikipedia.org/wiki/Programming_codehttp://en.wikipedia.org/wiki/Data_modelinghttp://en.wikipedia.org/wiki/Data_modelinghttp://en.wikipedia.org/wiki/Programming_codehttp://en.wikipedia.org/wiki/Conceptual_modelhttp://en.wikipedia.org/wiki/Conceptual_modelhttp://en.wikipedia.org/wiki/Object_oriented8/10/2019 E-Commerce Report Book
50/133
40
(i) User class which is responsible to add user, update user record, delete user record and change
user password.
(ii) Administrator class which is responsible to deactivate user account and reset user password.
(iii) Product history which is responsible for users product history.
(iv) Shopping cart class which is responsible to add and delete the product.
(v) Order class is used place order of customer
(vi) Order detail class is responsible for detail of products
8/10/2019 E-Commerce Report Book
51/133
41
5.4 OBJECT DIAGRAM
Object diagram shows a snapshot of instances of things in class diagrams. Similar to class
diagrams, object diagrams show the static design of system but from the real or prototypical
perspective.
Fig. 5.4 Object Diagram
Fig 5.4 shows the static design of system but from the real or prototypical perspectives
8/10/2019 E-Commerce Report Book
52/133
42
5.5 DEPLOYMENT DIAGRAM
The Deployment Diagram also helps to model the physical aspect of an Object-Oriented
software system. It models the run-time configuration in a static view and visualizes the
distribution of components in an application
Fig. 5.5 Deployment D iagram
Fig 5.5 shows the hardware configurations together with the software components that lived on.
8/10/2019 E-Commerce Report Book
53/133
43
5.6 USE CASE
A Use-case diagrams are usually referred to asbehavior diagrams used to describe a set of
actions (use cases)that some system or systems (subject)should or can perform in collaborationwith one or more external users of the system (actors). Each use case should provide some
observable and valuable result to the actors or other stakeholders of the system. Use-case
diagram contains the actor and the use case symbols, along with connection lines. Actors are
similar to external entities; they exist outside the system. The term actor refers to a particular role
of a user of the system. The main purpose of a use-case diagram is to show what system
functions are performed for which actor. Roles of the actors in the system can be depicted.
The purposes of use case diagrams can be as follows:
Used to gather requirements of a system.
Used to get an outside view of a system.
Identify external and internal factors influencing the system.
Show the interacting among the requirements are actors
http://www.uml-diagrams.org/uml-25-diagrams.html#behavior-diagramhttp://www.uml-diagrams.org/use-case.htmlhttp://www.uml-diagrams.org/use-case-subject.htmlhttp://www.uml-diagrams.org/use-case-actor.htmlhttp://www.uml-diagrams.org/use-case-actor.htmlhttp://www.uml-diagrams.org/use-case-subject.htmlhttp://www.uml-diagrams.org/use-case.htmlhttp://www.uml-diagrams.org/uml-25-diagrams.html#behavior-diagram8/10/2019 E-Commerce Report Book
54/133
44
Fig.5.6 Use-Case Diagram (H igh Level Di agram)
In fig 5.6 shows (i) New customer can search products, register account then purchase product (ii) Normal
customer can simply login then purchase product (iii) Admin can manage site and manage user account
8/10/2019 E-Commerce Report Book
55/133
45
5.6.1User Management Use Case Diagram
User management use case shows that only registered user can buy products, update profile. Non
registered user can only browse the products but cannot buy anything
Fig.5.6.1 Use-Case Diagram (User Management Use Case Diagram)
In fig 5.6.1 shows (i) Register user can sign in, update profile and purchase product (ii) Non Register user
has to sign up to purchase product
8/10/2019 E-Commerce Report Book
56/133
46
5.6.2 Admin Use Case Diagram
Admin use case diagram shows that admin can manage user account, manage products and
manage site
Fig.5.6.2 Use-Case Diagram (Admin Diagram)
In fig 5.6.2 shows that admin can manage site, products and manage user accounts
8/10/2019 E-Commerce Report Book
57/133
47
5.7 Sequence Diagram
A sequence diagram is aninteraction diagram that shows how processes operate with one
another and in what order. It is a construct of a Message Sequence Chart. It shows object
interactions arranged in time sequence. It depicts the objects and classes involved in the scenario
and the sequence of messages exchanged between the objects needed to carry out the
functionality of the scenario.Sequence diagrams are typically associated with use case
realizations in the Logical View of the system under development.
5.7.1 Non-Register user sequence diagram
In non-register user sequence diagram user has to first sign up for the site than user can purchase
product
Fig. 5.7.1 Sequence Di agram (Non Register user sequence diagram)
In Fig. 5.7.1, it shows object interactions of sequence, first new user have to sign up into the system then
he/she will able to buy the product
http://en.wikipedia.org/wiki/Interaction_diagramhttp://en.wikipedia.org/wiki/Message_Sequence_Charthttp://en.wikipedia.org/wiki/Message_Sequence_Charthttp://en.wikipedia.org/wiki/Interaction_diagram8/10/2019 E-Commerce Report Book
58/133
48
5.7.2 Register user sequence diagram
In register user sequence diagram that user has simply log in for purchasing the product
Fig. 5.7.2 Sequence Di agram (Register user sequence diagram)
In Fig. 5.7.2, it shows object interactions of sequence, first registered user dont have to sign up into the
system user can only login then he/she will able to buy the product
8/10/2019 E-Commerce Report Book
59/133
49
5.7.3 Admin sequence diagram
In admin sequence diagram that admin can manage products, manage user account also enable or
disable account.
Fig. 5.7.3 Sequence Di agram (Register user sequence diagram)
In Fig. 5.7.3, it shows admin can add/edit/delete product and reset user password and condirm order of
product
8/10/2019 E-Commerce Report Book
60/133
50
5.8 Activity Diagram
Activity diagrams represent workflows in a graphical way. They can be used to describe business
workflow or the operational workflow of any component in a system. Sometimes activity
diagrams are used as an alternative to State machine diagrams.
Activity diagrams are constructed from a limited number of shapes, connected with arrows. The
most important shape types:
Rounded rectangles represent actions;
Diamonds represent decisions;
Bars represent the start (split) or end (join) of concurrent activities;
A black circle represents the start (initial state) of the workflow;
An encircled black circle represents the end (final state).
Arrows run from the start towards the end and represent the order in which activities
happen.
8/10/2019 E-Commerce Report Book
61/133
51
Fig. 5.8 Activity Di agram
In Fig. 5.8 This activity diagram is used to identify the user and then granting him the selected
privileges
8/10/2019 E-Commerce Report Book
62/133
52
5.9 FLOWCHART
A flowchart is a type ofdiagram that represents analgorithm,workflow or process, showing the
steps as boxes of various kinds, and their order by connecting them with arrows.
Fi g. 5.9 Flowchart
In this Fig 5.9, shows the user has to sign in or sign up for the site to do the shopping
http://en.wikipedia.org/wiki/Diagramhttp://en.wikipedia.org/wiki/Algorithmhttp://en.wikipedia.org/wiki/Algorithmhttp://en.wikipedia.org/wiki/Diagram8/10/2019 E-Commerce Report Book
63/133
53
5.10 ER DIAGRAM
An entity-relationship diagram is adata modeling technique that creates a graphical
representation of the entities in a system, and the relationships between entities. The main
components of ER models areentities (things) and the relationships that can exist among them,
and databases.
The purposes of entity relationship (E.R) diagrams can be as follows:
Designs are pictures called entity-relationship diagram.
Fairly mechanical ways to convert E.R diagrams to real implementations like relational
databases exist
To create an accurate reflection of the real world in a database.
It gives us an intermediate step from which it is easy to define a database
http://searchdatamanagement.techtarget.com/definition/data-modelinghttp://en.wikipedia.org/wiki/Entitieshttp://en.wikipedia.org/wiki/Entitieshttp://en.wikipedia.org/wiki/Entitieshttp://en.wikipedia.org/wiki/Entitieshttp://searchdatamanagement.techtarget.com/definition/data-modeling8/10/2019 E-Commerce Report Book
64/133
54
Fig. 5.10ER Diagram
8/10/2019 E-Commerce Report Book
65/133
8/10/2019 E-Commerce Report Book
66/133
56
5.12 COMPONENT DIAGRAM
The Component Diagram helps to model the physical aspect of an Object-Oriented software
system. It illustrates the architectures of the software components and the dependencies between
them
Fig. 5.12 Component D iagram
In Fig 5.12 shows the components are wired together to form larger component of the shopping system
8/10/2019 E-Commerce Report Book
67/133
57
5.13 ASSOCIATION MODEL
Association diagram is a class diagram but unless class diagram which provides an overview of
the target system by describing the objects and classes inside the system, Association diagram
tells the relationships between them.
Fig. 5.13 Association Model
In this Fig 5.13 it tells the relationship between the login, shopping cart, checkout ,payment and email
confirmation
5.14 STATE CHART DIAGRAM
State chart diagram can show the different states of an entity also how an entity responds to
various events by changing from one state to another.
Fig. 5.14 State Chart Di agram
In this Fig 5.14 it shows the state of different nodes that user has to first login then select the
item to shopping cart then user can purchase the item
8/10/2019 E-Commerce Report Book
68/133
58
5.15 COMMUNICATION DIAGRAM
Similar to Sequence Diagram, the Communication Diagram is also used to model the dynamic
behavior of the use case.
Fig. 5.15 Communication Diagram
In Fig 5.15 shows the collaboration of objects rather than the time sequence
8/10/2019 E-Commerce Report Book
69/133
59
_____________________________________________________________________________
CHAPTER 6
Algorithm And Its Complexity
_____________________________________________________________________________
8/10/2019 E-Commerce Report Book
70/133
60
6.1 Algorithm and Pseudo code
A computerprogram can be viewed as an elaborate algorithm. In mathematics and
computer science, analgorithm usually means a small procedure that solves a recurrent
problem
Pseudo code (pronounced SOO-doh-kohd) is a detailed yet readable description of what a
computer program or algorithm must do, expressed in a formally-styled natural language
rather than in a programming language.
6.2 Complexity of Code
Cyclomatic complexity (or conditional complexity) is asoftware metric (measurement).
It was developed byThomas J. McCabe, Sir. in 1976 and is used to indicate the
complexity of a program. It is a quantitative measure of the complexity of programming
instructions.
A software fragment with a CCN value between 1-4 has low complexity.
A complexity value between 5-7 is moderate and still easy to understand.
Everything between 6-10 has a high complexity, while everything greater 10is very
complex and hard to understand.
6.3 Dry Run Algorithm
A dry run is a testing process where the effects of a possible failure are intentionally mitigated.
For example, an aerospace company may conduct a "dry run" test of a jet's new pilot ejection
seat while the jet is parked on the ground, rather than while it is in flight.
Incomputer programming,a dry run is a mental run of a computer program,where thecomputer
programmer examines thesource code one step at a time and determines what it will do when
run. In theoreticalcomputer science, a dry run is a mental run of analgorithm, sometimes
expressed inpseudo code,where thecomputer scientist examines the algorithm's procedures one
http://searchsoftwarequality.techtarget.com/definition/programhttp://searchcio-midmarket.techtarget.com/definition/core-competencyhttp://en.wikipedia.org/wiki/Software_metrichttp://en.wikipedia.org/w/index.php?title=Thomas_J._McCabe,_Sr.&action=edit&redlink=1http://en.wikipedia.org/wiki/Computer_programminghttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Computer_programmerhttp://en.wikipedia.org/wiki/Computer_programmerhttp://en.wikipedia.org/wiki/Source_codehttp://en.wikipedia.org/wiki/Computer_sciencehttp://en.wikipedia.org/wiki/Algorithmhttp://en.wikipedia.org/wiki/Pseudocodehttp://en.wikipedia.org/wiki/Computer_scientisthttp://en.wikipedia.org/wiki/Computer_scientisthttp://en.wikipedia.org/wiki/Pseudocodehttp://en.wikipedia.org/wiki/Algorithmhttp://en.wikipedia.org/wiki/Computer_sciencehttp://en.wikipedia.org/wiki/Source_codehttp://en.wikipedia.org/wiki/Computer_programmerhttp://en.wikipedia.org/wiki/Computer_programmerhttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Computer_programminghttp://en.wikipedia.org/w/index.php?title=Thomas_J._McCabe,_Sr.&action=edit&redlink=1http://en.wikipedia.org/wiki/Software_metrichttp://searchcio-midmarket.techtarget.com/definition/core-competencyhttp://searchsoftwarequality.techtarget.com/definition/program8/10/2019 E-Commerce Report Book
71/133
61
step at a time. In both uses, the dry run is frequently assisted by a table (on a computer screen or
on paper) with the program or algorithm'svariables on the top.
The usage of "dry run" in acceptance procedures (for example in the so-called FAT =factory
acceptance testing)is meant as following: the factory - which is a subcontractor - must perform a
complete test of the system it has to deliver beforethe actual acceptance from the contractor side.
6.4 Search Algorithm:
1.) location = -1;
2.) while ((more than one item in list) and (haven't yet found target))
2.1) look at the middle item2.2 ) if (middle item is target)
have found target
else
2.3) if (target < middle item)
list = first half of list
2.4) else (target > middle item)
list = last half of list
end while
3) if (have found target)
location = position of target in original list
4) return location as the result
Pseudo Code:
location = -1;
first = 0;
last = number of items minus 1;
while ((number of items left to search >= 1) and (target not found))
middle = position of middle item, halfway between first and last
if (item at middle position is target)
http://en.wikipedia.org/wiki/Variable_(programming)http://en.wikipedia.org/wiki/Acceptance_testinghttp://en.wikipedia.org/wiki/Acceptance_testinghttp://en.wikipedia.org/wiki/Acceptance_testinghttp://en.wikipedia.org/wiki/Acceptance_testinghttp://en.wikipedia.org/wiki/Variable_(programming)8/10/2019 E-Commerce Report Book
72/133
62
target found
else
if (target < middle item)
search lower half of array next
last = middle - 1;
else
search upper half of array next
first = middle + 1;
end while
if (target found) (i.e., middle item == target)
location = position of target in array (i.e., middle)
return location as the result
6.4.1Complexity:
To evaluate search, count the number of comparisons in the best case and worst case. This
analysis omits the average case, which is a bit more difficult, and ignores any differences
between algorithms in the amount of computation corresponding to each comparison.
The best case occurs if the middle item happens to be the target. Then only one comparison is
needed to find it. As before, the best case analysis does not reveal much.
When does the worst case occur? If the target is not in the array then the process of dividing the
list in half continues until there is only one item left to check.
The following table 6.1 summarizes the analysis for searching algorithm.
8/10/2019 E-Commerce Report Book
73/133
8/10/2019 E-Commerce Report Book
74/133
64
6.5Login Check Algorithm
1. Start
2 Get username and password
3. Read username and password
4. If(username = database)
5. Start session, go to default redirect after login.
6. Let the person do whatever they want.
7. If( username = user)
then
GOTO Home page
9. Else if username belongs to Admin
GOTO Admin ,GOTO view GOTO Edit.
Else return main page.
10. Exit
6.4.1 Pseudo code
PROGRAM userFirstLoginCheck
user dialing dialer
WHILE
Read user logined last session from database
END WHILE
IF(session found)
THEN PRINT Users not first login
ELSE
PRINT Users first Login
Update user address in database
8/10/2019 E-Commerce Report Book
75/133
65
END IF
END
Complexity:
To evaluate search, count the number of comparisons in the best case and worst case. This
analysis omits the average case, which is a bit more difficult, and ignores any differences
between algorithms in the amount of computation corresponding to each comparison.
The best case occurs if the middle item happens to be the target. Then only one comparison is
needed to find it. As before, the best case analysis does not reveal much.
When does the worst case occur? If the target is not in the array then the process of dividing the
list in half continues until there is only one item left to check.
The following table 6.2 summarizes the analysis for login algorithm.
ModelNumber of Comparisons
(for n = 100000)
Comparisons as a function
of n
Best Case
(Least/fewest Comparisons)
1
(target is middle item)1
Worst Case
(Most comparisons)
16
(target not in array)Log2n
Table 6.2
Complexity Representation in Big O:
Best Case: O(1)
Worst Case: O(log2n)
8/10/2019 E-Commerce Report Book
76/133
66
Running Time Analysis
The running time of sorting is a linear function of the array size, r p + 1, and the distance of q
from p, q p. This is (r p + 1).
Graphical Representation:
0
1
2
3
4
5
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
O(1) O(Log2n)
8/10/2019 E-Commerce Report Book
77/133
67
_____________________________________________________________________________
CHAPTER 7
TESTING
_____________________________________________________________________________
8/10/2019 E-Commerce Report Book
78/133
68
7.0 TESTING:
Testing is the practice of making objective judgments regarding the extent to which the system
(device) meets, exceeds or fails to meet stated objectives.
There are two fundamental purposes of testing: verifying procurement specifications and
managing risk. First, testing is about verifying that what was specified is what was delivered: it
verifies that the product (system) meets the functional, performance, Design and implementation
requirements identified in the procurement specifications. Second, testing is about managing risk
for both the acquiring agency and the systems Vendor/developer/integrator.
The testing program is used to identify when the work has Been completed so that the contract
can be closed, the vendor paid, and the system Shifted by the agency into the warranty and
maintenance phase of the project[31]
.
7.0.1 TYPES OF TESTING:
7.0.1.0 GRAY BOX TESTING
Testing to verify a product meets customer specified requirements. A customer usually does this
type of testing on a product that is developed externally.
7.0.1.1 BLACK BOX TESTING
Testing without knowledge is the internal workings of the item being tested. Tests are usually
functional.
8/10/2019 E-Commerce Report Book
79/133
69
7.0.1.2 COMPATIBILITY TESTING
Testing to ensure compatibility of an application or web site with different browsers, operating
syatem, and hardware platforms. Compatibility testing can be performed manually or can be
driven by an automated functional or regression test suite.
7.0.1.3 CONFORMANCE TESTING
Verifying implementation conformance to industry standards. Producing tests for the behavior of
an implementation to be sure it provides the portability, interoperability, and/or compatibility a
standard defines.
7.0.1.4 FUNCTIONAL TESTING
Validating an application or Web site conforms to its specifications and correctly performs all its
required functions. This entails a series of tests which perform a feature by feature validation of
behavior, using a wide range of normal and erroneous input data. This can involve testing of the
product's user interface, APIs, database management, security, installation, networking; etc
testing can be performed on an automated or manual basis using black box or white box
methodologies.
7.0.1.5 INTEGRATION TESTING
It is a testing in which the modules are combined and tested as a group. Modules are typically
code modules, individual applications, client and server applications on a network, etc.
Integration Testing follows unit testing and precedes system testing.
8/10/2019 E-Commerce Report Book
80/133
70
7.0.1.6 LOAD TESTING
Load testing is a generic term covering Performance Testing and Stress Testing.
7.0.1.7 PERFORMANCE TESTING
Performance testing can be applied to understand your application or web site's scalability, or to
benchmark the performance in an environment of third party products such as servers and
middleware for potential purchase. This sort of testing is particularly useful to identify
performance bottlenecks in high use applications. Performance testing generally involves an
automated test suite as this allows easy simulation of a variety of normal, peak, and exceptional
load conditions.
7.0.1.8 REGRESSION TESTING
Similar in scope to a functional test, a regression test allows a consistent, repeatable validation of
each new release of a product or Web site. Such testing ensures reported product defects have
been corrected for each new release and that no new quality problems were introduced in the
maintenance process. Though regression testing can be performed manually an automated test
suite is often used to reduce the time and resources needed to perform the required testing.
7.0.1.9 SMOKE TESTING
A quick-and-dirty test is a test that the major functions of a piece of software work without
bothering with finer details. Originated in the hardware testing practice of turning on a new piece
of hardware for the first time and considering it a success if it does not catch on fire.
8/10/2019 E-Commerce Report Book
81/133
71
7.0.2.0 STRESS TESTING
Testing conducted to evaluate a system or component at or beyond the limits of its specified
requirements to determine the load under which it fails and how. A graceful degradation under
load leading to non-catastrophic failure is the desired result. Often Stress Testing is performed
using the same process as Performance Testing but employing a very high level of simulated
load.
7.0.2.1 SYSTEM TESTING
Testing conducted on a complete, integrated system to evaluate the system's compliance with its
specified requirements. System testing falls within the scope of black box testing, and as such,
should require no knowledge of the inner design of the code or logic.
7.0.2.2 UNIT TESTING
Functional and reliability testing is an engineering environment. Producing tests for the behavior
of components of a product to ensure their correct behavior prior to system integration.
7.0.2.3 WHITE BOX TESTING
Testing based on an analysis of internal workings and structure of a piece of software. Includes
techniques such as branch testing and path testing. Also known as Structural Testing and Glass
Box Testing. By the analysis of Florida Institute of Technology, Quality Assurance Institute
Worldwide Annual Software Testing Conference the best testing for a web application is[33].
8/10/2019 E-Commerce Report Book
82/133
72
7.1 PERFORMANCE TESTING
The goal of performance testing is not to f