Você está na página 1de 68

The requirements and design of the 'customer-friendly' e-shop for a

computer retailer

Wang, Jianping
MSc Information Systems
School of Computing
2002/2003

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Summary
This project is about the requirements and design of a 'customer-friendly' e-shop for a computer retailer. A
prototype is required to demonstrate some of the features in the design. By focussing on the requirements of the
customers, the prototype aims to demonstrate the essential features for supporting the buying process and for
offering advice on the purchase.
A Chinese company which sells assembled computer has been chosen as the study case.
The RUP approach has been used for the development of the prototype. The design/build/test cycle was
conducted twice.
A three-tier architecture was adopted for the prototype, using ASP, JavaScript and Microsoft Access database.
The following functions were implemented in the final prototype:
Select and order: to support customers in selecting and ordering the products.
Products query: to help customers in finding the products that are partly remembered;
Show relevant components: to show the components that are relevant to user type of the customer The user
types include big business customer, small business customer and family customer.
Show the most popular products being visited and show the most popular products being sold -to provide
useful advice to customers.
Show latest news: to provide the latest news to the customers Check order state: to help customers to
check the state of the order after the purchase.
The result of the evaluation showed that the prototype can give customers strong support when they were
buying assembled computers from a computer retailer.

Wang, Jianping
MSc Information Systems

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Acknowledge
Dr. Lydia Lau
Firstly my thanks must go to Lydia Lau, my project supervisor, for her advice, and individual guidance and
suggestions, comments, ideas and help. I learned not only technology but also character of people from her.
Dr. Eric Atwell
My project assessor, who gave me very useful advice on how to do the project
Mrs Ann Robert
Project Officer, who gave me some useful help
My classmates and friends
I would also take the opportunity to thank my classmates and friends ,who gave me their time to assist in the
various stages of this project

Wang, Jianping
MSc Information Systems

II

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Content table
Chapter 1: Project Introduction
1.1 Background

1.2 Objectives

1.3 Minimum Requirements

1.4 Deliverables

1.5 Background research

1.5.1 E-commence and its components

1.5.2 E-shop

1.5.3 Customer-centred theory

Chapter 2: Approach

2.1 Incremental and iterative approach

2.2 Planed project schedule

2.3 Executed project schedule

Chapter 3: A case study

3.1 Induction

10

3.2 The current business model for QD

11

3.3 The problems of the currently model

11

3.4 The vision

13

3.5 How the e-shop should benefit QD

13

3.5.1 Comparing to other companies

13

3.5.2 Compare to QD itself

14

Chapter 4: Requirements of e-shop

14

4.1 Functional Requirements

14

4.1.1 Use case diagram of e-shop

14

4.1.2 How the functional requirements help resolve the problems

16

4.1.3 Description of the functional requirements

16

4.2 Non-Functional Requirements

18

4.2.1 Usability

19

4.2.2 Performance

19

4.2.3 Security

20

Wang, Jianping
MSc Information Systems

III

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Chapter 5: Prototype design

20

5.1 Proposed Architecture

20

5.2 Interface Design

21

5.2.1 Principle

21

5.2.2 Layout

22

5.3 Application Logic Design

23

5.3.1 User registration

24

5.3.2 Login

24

5.3.3 Select and order

25

5.3.4 Show catalogue relevant to user type

26

5.3.5 search for products

27

5.3.6 Check order state

28

5.3.7 Show the most popular products being visited

29

5.3.8 Show the most popular products being sold

30

5.3.9 Showing latest news

31

5.4 Database Design

31

Chapter 6: Prototype Implementation

32

6.1 System platform

32

6.2 Implementation of Architecture

32

6.3 Implementation of Interface

34

6.4 Implementation of application layer

36

6.5 Database

36

6.6 Testing

39

Chapter 7: Evaluation

40

7.1 Evaluating The Prototype

40

7.1.1. Criteria

40

7.1.2 Results

40

7.2 evaluation of the project

43

7.1.1. Criteria

43

7.1.2 Results

43

Wang, Jianping
MSc Information Systems

IV

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Chapter 8 Conclusion

43

8.1 Achievements

43

8.2 Lesson learned

44

8.3 Further work

45

Reference
Appendix A: Reflection upon the project experience
Appendix B: Objectives, deliverables and agrees marking scheme
Appendix C: A copy of interim report sheet
Appendix D: Reference books and URL
Appendix E: Current model
Appendix F: Vision
Appendix G: use case description

Wang, Jianping
MSc Information Systems

46
47
48
50
52
53
54

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Chapter 1: Project Introduction


1.1 Background
Over the past few years, Internet has become more and more popular. At the same time, it produces a new way
of doing business between business and business, business and consumers.
A common use of business to consumer electronic commerce is e-shop. In many aspects, e-shop changes the
traditional ways of doing businesses. It becomes increasingly important for more and more companies.
This project is to study the requirements and design of the 'customer-friendly' e-shop for a computer company.
Therefore, why we build 'customer-friendly' e-shop, what is 'customer-friendly' e-shop, how can we build it,
how can we get requirements and how can we design are the topic of the report.
In this project, we took a Chinese company, which provides assembled computers for customers, as a case to
study.

1.2 Objectives
Analyse the requirements of a 'customer-friendly' e-shop for a computer retailer.
Translate the requirements into a high-level design for the e-shop and prioritise the requirements.
Produce a prototype using an incremental and iterative approach
Evaluate the prototype.

1.3 Minimum Requirements


Documentation of the requirements
A prototype of e-shop with essential features adopting a 'customer-friendly' focus
An evaluation of the 'customer-friendliness' of the prototype

1.4 Deliverables
A project report.
A prototype

Wang, Jianping
MSc Information Systems

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

1.5 Background research


The developer did the background research mainly depends on reading relevant books.
This project is the requirements and design of a customer-friendly e-shop. Since e-shop is a specific use of ecommence and customer-friendly relevant to customer-centred theory, so here we need to do some research
of e-commerce, e-shop and customer-centred theories.
By studying e-commerce, we can understand what e-commerce is and what the components of e-commerce are.
It is useful for getting requirements and evaluating. For example, if we know how all of the components of the
e-commerce, then when we doing requirements, we can analyse one by one to avoid omitting some parts of ecommerce.
By studying e-shop, we can understand what the e-shop is and the common functions of e-shop. It is useful for
getting functional requirements and designing.
By studying customer-centred theory, we can understand why we need to build customer-friendly e-shop and
how we build customer-friendly e-shop, for example customers are divided into different types. It is useful for
us to get functional and non-functional requirements.
1.5.1 E-commence and its components
There are many different definitions of e-commerce.
Electronic Commerce (e-commerce) is a general concept covering any form of business transaction or
information exchange executed using information and communication technologies (ICTs). E-commerce takes
place between companies, between companies and their customers, or between companies and public
administrations. Electronic Commerce includes electronic trading of goods, services and electronic material
(Esprit,1997)
A more general definition of e-commerce is given by Wigand (1997) as: the seamless application of
information and communication technology from its point of origin to its endpoint alone the entire value chain
of business processes conducted electronically and designed to enable the accomplishment of a business goal.
These process may be partial or complete and may encompass business to business as well as business to
consumer and consumer to business transactions.
Comparing to traditional commerce, e-commerce provides new ways to do transaction, but they have many
common characters. As Whitely (2002) mentioned the fundamental business problems are those that
merchants have faced for hundreds- even thousands- of years: you must have something to sell, make it known
to potential buyers, accept payment, deliver the goods or services, and provide appropriate service after the sale.
Most of the time, you want to build a relationship with the customer that will bring repeat business.
Components of the commerce value chain

Wang, Jianping
MSc Information Systems

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

As Winfield (2002) mentioned, the key components of the value chain can be very different for different
industries and even among different business within a particular industry. But the generic value chain for
Internet commerce includes the following four components as Winfield (2002) described.
Attract customers
The first component of the generic internet commerce value chain is to attract. By this we mean whatever step
we take to draw customers into the primary site, whether by paid advertise on other web site, electronic mail,
print, or other forms of advertising and marketing. The point of this phase is to make an impression on
customers and draw them into the detailed catalogue or other information about products and services for sale.
Interact with customers
The second component is interact. By this we mean turning customer interest into orders. This phase is
generally content oriented and includes the catalogue, publication, or other information available to the
customer over the internet. The content may be distributes by many different mechanisms, such as the World
Wide Web or electronic mail. In some cases there may be links between Internet commerce and content
distribute by other media, such as CD-ROMs.
Editorially, content may change infrequently or frequently. Technically, content may be static or dynamic.
Act on customer instructions
The next component in the commerce value chain is act. Once a buyer has searched through a catalogue and
wishes to make a purchase, there must be a way to capture the order, process payment, handle fulfilment and
other aspects of order management.
React to customer inquiries
Finally, after a sale is complete, the customers may have some questions or difficulties that require service.
For example, a transaction system that keeps track of all of a customers purchases can generate a statement
summarizing them. Customers who are wondering whether or not their orders have been shipped might check
back with the system.
1.5.2 E-shop
According to Whitely (2000), For e-Commerce applications that are selling goods or services the internet
application, held on the server is an E-shop. The infrastructure of the e-shop can be very simple or it maybe
very complex. The basic element of an e-shop is a web-page that offers or advertise the goods for sale and
provides a means for the shopper to make s purchase. At very simplest e-shop. Or online advert, could simply
list the products for sale or the services offered and invite the customer to phone, fax or e-mail their order But
the complex e-shop can include many more features. These can include as Whitely (2000) mentioned as
follows:
Customer registration
Wang, Jianping
MSc Information Systems

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Some e-shops ask the customers to register and then store the customer details on a database. This then allows
the vendor to tailor its information for specific customer and saves the customer typing in details again on
future visits.
Dynamic web pages
A dynamic web page is built for each user when the web browser requests it. The dynamic web page may be
built by reading a database in which case the page can include. For instance, the latest price and possibly
whether the goods are in stock.
Personalised web pages
If the user has registered with the site the system can generate a page for that specific customer.
A shopping basket/cart
Customer in a conventional shop is likely to collect a number of products. Goods can be selected and placed
in the electronic basket. Facilities are made available for the contents of the basket to be reviewed and
unwanted goods can be returned to the shelves. When the shopping is complete the customer then makes
payment for the goods in the basket.
Additional information
The e-shop need to let the customer know what the product or service is The customer can have additional
information not normally available in a conventional shop. Example of this are: the win ship that gives a detail
assessment of each vintage; bookshops that provide customer review; music sites that can play a sample of the
recording that is for sale
Community
Bulletin boards are one such device in this area.
Multiple payment options
The current norm for online payments is a credit card and most e-shops will want to accept all major credit
cards. Some e-vendors also have /accept debit cards-cash and so on.
Encryption
Most e-shops use an encryption system to secure to the transmission of personal and payment details.
Wang, Jianping
MSc Information Systems

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Online deliver
Electronic products such as software, information and music can be delivered online. Where it is appropriate,
the use of online delivery cut the costs of distribution and avoids the customer having to wait for the goods to
arrive.
Loyalty schemes
Some e-shop are introducing loyalty schemes. Each purchase made attracts a number of points and the points.
Accumulated electronically by the vendor, can eventually be used for discount or free goods.
Online help
Having used the Internet for sales it can also be used for after sales. The web page can be used for product
instructions and self-diagnosis pages all of which can be updated when the need arises. The customers can also
use e-mail for online help.
Shopping mail
E-shop may be set up as a part of an online mail. Like their conventional equivalent the online mail is designed
to attract customers because there is a range of stores. E-malls can help out the individual vendor with shared
payment infrastructure.
1.5.3 Customer-centred theory
Chandler (2003) mentioned, Many website have products that people cant find. It is clear that a big gap exists
between how online store are organized and how customers want to shop for products. This results in
unsuccessful searches and abandoned shopping carts. Shoppers give up when they cant find what they are
looking for easily and quickly.
Most website lack a customer-focused approach. Web developers often design e-commerce website that are
database driven rather than customer driven. Database-driven websites are organized around products than an
online store has for sale and are designed for efficiencies of code. Customer-driven websites are based on how a
customer shops for products on the website and are designed after understand customer needs.
customers expect more from this new technology. Information should be specially developed and tailored to
online shopping and must be kept current.

Chapter 2: Approach
This project uses United Process, which is an increment and iterative approach to develop the system.
This chapter includes three parts. The first part introduces the theory of the incremental and iterative approach
and why the developer uses the approach. The second part introduces how to use the approach to make out a
project schedule. The third part describes the executed project schedule in the project.
Wang, Jianping
MSc Information Systems

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

2.1 Incremental and iterative approach


Jacobson (1999) mentioned, The unified process is a software development process. A software development
process is the set of activities needs to transform a users requirements into a software system. However,
unified process is more than a single process; it is a generic process framework that can be specialized for a
very large class of software systems.
In this project, the workflows of business modelling, requirements, analysis and design, implementation and
test are used in the four stages.
Inception
Jacobson (1999) mentioned, The goal in the inception phase is to make extent necessary to justify launching
the project. To make that case, we first have to delimit the scope of the propose system. We need to understand
what the architecture has to cover. We need it to define the limits within which we will prospect for critical
risks.
Elaboration
Jacobson (1999) mentioned, To capture most of the remaining requirements, formula ional requirements as use
case. To establish a sound architectural foundation. Continue to monitor remaining critical risks. To fill in
further details of the project plan.
Construction
Jacobson (1999) mentioned, The purpose of the phase is to produce a software product ready for initial
operational release, some times called Bata release
Transition
The aim of this stage, as Jacobson (1999) mentioned, are Meet the requirements, as established in the earlier
phases, to the satisfaction of the stakeholders. Handle all the issues needed for operation in the user
environment, including the correction of flaws reported back by beta user or acceptance testers. Acceptance
testing is responsibility
2.1.1 Iterative and increment
Developing a commercial software product is a large task. It is better to divide the work into smaller tasks.
Each small task is an iterative that result in an increment. Iterations refer to steps in the workflow, and
increment, refer to growth in the product.
2.1.2 Why using iterative and increment in this product
Mitigating risks of requirements
Software development encounters risks include: firstly, if the developer develops the right product. It means if
it is useful for the users business. Secondly, using the approach can get rid of all of the risks of technology.
In this project, the developer is not familiar to requirements of the customer-friendly e-shop for a computer
retailer because different customers have different requirements; it is impossible to investigate all of the
requirements very clearly in one time. So it is not fit for using waterfall model. On the other side, the risk of
technology such as programming should be got rid of as soon as possible since the developer is not familiar to
programming.
Getting a robust architecture
Jacobson (1998) mentioned Achieving a robust architecture is itself the result of iterations in the early phases.
Wang, Jianping
6
MSc Information Systems

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Not having much experience of architecture requirements, the developer can begin to seek core architecture in
the inception phase that satisfies the key requirements, overcomes the critical risks, and resolves the central
development problems. Then in the elaboration phase he can refine it.
Handing changing requirements
Jacobson (1998) mentioned, There are gaps between the developer and the users, users and users.
Commonly, after using the system the user will have new requirements because it is difficult for a user to know
all requirements before he uses the system. So it is better to provide him a system as soon as possible to get his
requirements even if the system is not perfect. Then the users new requirements can be taken into account
which is for getting requirements
Achieving continuous integration
Jacobson (1998) mentioned Frequent builds force developers to closure at regular intervals-closure in the form
of a piece of excitable software even if developers fail to achieve the planned result in an early iteration, they
still have time to try again and improve the models in subsequent internal releases.
In this project the developer is a novice and high risks exist that he might fail to achieve the planned result in an
early iteration. Therefore he needs the chance to improve the models in subsequent internal releases.
2.2 Planed project schedule
As a result of using incremental and iterative approach, a project schedule can be produced as shown in table
2.2. The schedule corresponds to the stages of RUP as follows:
Inception: From stage 1 to 2, the developer defines the scope of the system.
Elaboration: From stage 2 to 6, the developer captures most of the remaining requirements and formulates
functional requirements as use case. At the same time a sound architectural foundation is established.
Construction: From stage 7 to13, the developer builds a prototype.
Transition: In stage14, the developer corrects the flaws from testing.
This schedule has the following functions:
Mitigating risks of requirements

Wang, Jianping
MSc Information Systems

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

In stage 2, two weeks are scheduled for the developer to understand the necessary requirements. afterwards in
stage 7 and stage 14, the system is adjusted by refining requirements.
Getting a robust architecture
The objective of stage 3 to 5 is to get a robust architecture. Till stage 5, the cost of time is still short so that it is
affordable to condust the iterations that assure the architecture is robust.
Handing changing requirements
In stage 6, the developer builds UI prototype to help users to check if the systems functional and nonfunctional requirements can achieve the users requirements. Then in stage 7 further refinement can be
conducted.
Achieving continuous integration
In the stages from 8 to 13, the developer begins to construct the system. If the developer fails to achieve the
planned result, in stage 14 he can still refine the system based on field tests.

Wang, Jianping
MSc Information Systems

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Task

Description

Weeks

Reading material

Business

modelling

and

10

11

12

requirements capture
3

Analysis

level

UML

modelling
4

Design

model

architectural

Build proof of architecture

solution

prototype
6

Build UI prototypes

Requirements elaboration

E-R model

Functional detailed design

10

Build modules

11

Build Key Reports

12

Assemble and test

13

Field Testing/user test

14

Refine system based on field

X
X

tests
15

Evaluate the prototype

16

Report writing

Table 2.2 Project schedule


2.3 Executed project schedule
The executed schedule is quite similar with the planed project schedule. The difference just lies in the stage 14
and stage 15. Refining the system costs about three weeks and evaluating the prototype costs about 1 week.

Chapter 3: A case study


In this project, a company is chosen as a case study and interview is applied as the method of investigation. The
developer uses MSN to interview the manager of the company, a customer who can be viewed as the valuable
buyer of the company, and two customers who can be viewed as general buyer. At the same time, the developer
interviews three students who are thought as potential private customers. Furthermore, together with his own
experience as buyer and sales, the developer can obtain the basic information.
Secondly, by analysing the results of discussing with the manager of the company, reading books, comparing
other e-shop such as dell, a system analysis is conducted

Wang, Jianping
MSc Information Systems

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

3.1 Introduction
Ningbo Quanda Computer Company(QD) is a small company ,which locates in the inner-city of Ningbo,
Zhejiang, China. It has 17 staff and the annual turnover of 2001 and 2002 is about 3,000,000 respectively.
It provides various kinds of electronic products ranging from high-end to low-end and relevant services. This
project will concentrate on QDs business related to compatible computers, which are assembled by QD itself,
peripheral equipments and relevant services. The relevant services include installing software for computers,
updating computers, repairing computers and so on.
Thanks to advertisements and past customers introduction, QD has a lot of customers now. They can be
divided into three main types: big business customer, small business customer and family customer.
Big business customer
The main business customer includes two big companies, each of which has more than 9,000 staff, and more
than 30 sub-companies distributed all over Ningbo. They are both industry users. One is electric company and
the other is bank. About 20% of turnover and 40% profit of QD come from the two big companies in 2001.
Every time they buy few kinds of configuration because it is easier for maintenance. But each configuration
includes at least 50 computers. Commonly, after the two big business customers buy products, they will
distribute the products to their sub-companies. The distance between QD to these sub-companies is from 300
meters to 150 kilometres. When they buy computers, they buy maintenance services at the same time. QD
provides on-site technology support.
This kind of user has three characters: firstly, they need to buy computers frequency because they always need
to abandon some old computers and buy new ones to replace them. Secondly, they care for reliability and ontime service more than price. Finally, the usage of the computers is simple.
Small business customer
About 20% of turnover and 15% profit of QD come from about 100 small companies in 2001. Most of them are
private companies. Usually, this kind of company has less than 100 staff. Each time they buy less than 10
computers. They usually use computers for management, and each computer usually will be used together with
many peripheral equipments.
After they buy the computers, in a long time, they will not buy computers again, but they will buy some
peripheral equipment such as modems, printers, scanners and so on, and update some components later.
This kind of customers cares for the computers extendedness more than other property. For example, they like
there are many interfaces in the main board so it can be used with many peripheral types of equipment.
Family customer
Wang, Jianping
MSc Information Systems

10

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

QD has many family customers who locate all over Ningbo. Most of them are student parents because most
schools require students to have they own computers. Commonly, family customers are not professional and
they will buy computers just once for their own use. Since they will put the computer in their accommodation,
so they not only think that the computer is a machine but also think it is a kind of furniture. It means they not
only care for the performance, price, but also care for the appearance. At the same time, because the computer
for a family is not very cheap, they care for service, for example whether and how the computer can be repaired
in time when it breaks down. Furthermore, because most of the user are students, they always like to try new
software or disassemble the computer for research., the user always encounter many problems when they just
bought the computer home.

3.2 The current business model for QD


The current business model relevant to customers is as follows. Firstly, the customer goes to QD, then waits for
the QDs engineer to introduce and recommend products to him. Secondly, the customer thinks, compares the
products and configuration that the engineer recommended to him. If he has the intention to buy, then the
engineer will go to the warehouse to fetch the products. If the product the customer interested is out of stock,
then he have to come back to tell the customer and recommend other options. If the engineer finds the products,
then he can fetch them to show the customer. Thirdly, the customer looks and checks the products. If the
customer is not satisfied with it, he will discuss with the engineer again. If he is satisfied with it, he will begin
to buy.
Then the engineer will begin to assemble the computer according to the customers requirement. The customer
has to wait during the period. After the engineer finishes assembling, the customer can accept the computer and
go back.
After some time, if the operating system updates or the customer loses the driving software of some
components, he has to go back to QD to get it. The process is show in diagram 3.2 of appendix E

3.3 The problems of the currently model relevant to customers


As Winfield (1998 )mentioned, there are four stages: attracting customers, interacting with customers, acting on
customer instructions, and reacting to customer request in the value chain of commerce. After finishing the
analysis in the above four stages, we find the following business problems.
Selection and purchase is not convenient for customers
The customers and potential customers are widely distributed all of Ningbo. At the same time, the traffic In
Ningbo is not very good because most people have no cars. When people want to buy some electric products,
their have to spend much time going to the company to choose. Commonly, many people go to the company at
same time, so many of them have to wait for QDs engineers. When it is their turn, what they want to buy may
have sold out. Whats more, it takes several days for QD to purchase products. Then they will wait for next
time or turn to another company. Or, alternatively, QD has the products the customers want. However, they
Wang, Jianping
MSc Information Systems

11

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

have to wait for the components to be assembled, software to be installed, and tests to be made. Commonly it
takes customers nearly a whole day from when they go to the company to they buy the products back.
The process is especially inconvenient for family customers because they have to use their spare time to buy
computers. Big and small business customers waste much time as well although the process is in their office
hour.
It is inconvenient for customer to search for products
Firstly, the customer has to see the products on site. Secondly, there is a distance from the company to its
warehouse and every time the engineer cannot just bring all of products. Thirdly, some users remember just a
part of the products name which they want to buy, but it is not easy for QDs engineer to understand. So it will
cost some time to find if there are the products as the customer required.
It is not easy to for customers to maintain their computers
One problem is that it is easy for big business customers to lose drive program of components because in the
big company, the computers will be transferred from one area to different area and from one person to other
person.
The other problem is when the operating system is updated, how users can get the diver program of the
components.
Now if the customers need to get the diver program they have to come to QD.
.
It is not convenient for user to get advice
As mentioned in the background of this report, customers need referent information. Commonly, there are two
kinds of information customers care for.
What kind of products that other customers are interested. Commonly, every customer knows some information
about some products before they begin to select. Maybe it is from their own experience, maybe from their
friends. Anyway, if many people are interested in the product, it should have some advantages.
Secondly, the more customers buy the product, the better service and discount the product offers. The reasons
are as follows: firstly, the more amount of this kind of product imported by QD, the higher discount QD can ask
from its provider. So the customer can get higher discount. Secondly, the more amount of this kind of product
sold, the more the QDs engineers are familiar with it. They can offer people better service.
But now, in order to get these two kinds of information, the user has to go to QD. But even they arrive QD, the
information is not so accurate because it is difficult for QD to statistic the visit times and record the dealing
times timely.
It is not convenient for user to know the latest news on time
Wang, Jianping
MSc Information Systems

12

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

QD always gives some discount to customers for specific products or in specific periods. But it is not easy to let
customers get the news on time because customers havent enough time and motivation to go to QD frequently.
Thus the company will lose the potential chances.

3.4 The vision


In order to resolve the problems mentioned above, the QD begins to consider building an e-shop. Since the aim
is to give better service to customers, therefore, QD plan to build a customer-friendly e-shop.
What is customer-friendly e-shop?
As Kreta (2003) mentioned, the customers enjoys a superior shopping experience that enables him easy to find,
select, and purchase products and services.
According to Kreta, we define that customer-friendly e-shop means that the e-shop starts with user insight and
needs. The needs determine the product design so that software products are easy and intuitive to operate. At
the same time, it can provide customer-relevant one to one service.
After using the new e-shop, the business model will be as shown in diagram 3.4 in appendix F. Firstly, the
customer visits the web site. From the web site, he can compare different products and see their pictures.
Secondly he can order the products he likes. After the customer order some products, the engineer will get the
order and assemble it. Then QD will send the computer to the customer. When customer receives the computer,
he will pay.
After some time, if the users lose the driver software or they update the software, they can download the
software from website.
3.5 How the customer-friendly e-shop should benefit QD
The discussion about the question is to judge if the customer-friendly e-shop is useful for the QDs business.
The aftermath can be divided into two aspects.
3.5.1 Comparing to other companies
Now in Ningbo, there are about 100 computer companies doing similar business as QD. Both of the import and
export price are similar to each other. The companies have the same kind and limited quantity of customers as
well. If QD use customer-friendly e-shop, it can attract the customers from lager area because the geographic
aspects can be ignored. So it can get more advantages than other companies.
3.5.2 Comparing to QD itself before
After using the e-shop, the customer will save a lot of time wasted on the way to QD and wait. At the same
time, it decreases the risk that there is no product in the warehouse. Furthermore, ccustomer can save time to
get software.
On the other side, after the e-shop is used, the engineer of QD can save time because they need not to spend
much time in discussing with customers and searching products in the warehouse fro many times.
Wang, Jianping
MSc Information Systems

13

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Furthermore, it is good for QD to book products because they get the order on time.

Chapter 4: Requirements of customer-friendly e-shop


The requirements of an e-shop can be divided into two partsthe customer side and retailer side. While this
project focuses on the customer-friendly e-shop. Emphasising the importance of the customer friendliness the
project just discusses the customer sides requirements, which include functional requirements and nonfunctional requirements.
By reading books about e-commerce, e-shop and customer-centred theory, together with analysing e-shops such
as IBM and DELL, the developer gets concerning details explained in the following sections.
4.1 Functional Requirements
4.1.1 Use case diagram of e-shop
This project uses use case diagram to describe the functional requirements. The use case diagram is a means of
communicating with users and other stakeholders about the system in high level. Use case can also be used as
the basis of the test criteria.The diagram 4.2 describes all of the requirements of an e-shop. But in this project,
as we mentioned before, we just discuss the customer sides requirements, which are shown in the small
rectangle.

Wang, Jianping
MSc Information Systems

14

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

e-shop

sea rch for s pecific p roduc t

big b ussiness
cus tomer

Input product detail

register and login

get relevant component's


information

input relevant component's


information
ret ail er

c ustomer

check order state

Input order handled information

small business
customer
hot products being visited
Input news and rank them

hot products being sold

fam ily c ustomer


input im formation rel evant t o
autom atic e -mail
read latest news

select products and order


upload software

Account system

a utom atic e-mai l

product information of warehouse


download software

Diagram 4.1.1 Functional requirements

Wang, Jianping
MSc Information Systems

15

The requirements and design of the 'customer-friendly' e-shop for a computer retailer
4.1.2 How the functional requirements help resolve the problems

The table 4.1.2 shows that how the functional requirements help resolve the problems mentioned in section 3.3.
For example, in order to resolve the problem of inconvenient for customer to search for products the
customer-friendly e-shop has the products query function.
The problems (as in section The function of customer-friendly e3.3)
shop
Selection and purchase is not Select and order
convenient for customers
Check order state
It
is
inconvenient
customer to search
products

for Products Query


for

It is not easy to for customers Download relevant software


to maintain their computers
It is not convenient for user to Show relevant components and types
get advice
based on customer types
Show the most popular products being
visited
Show the most popular products being
sold
It is not convenient for user to Show latest news
know the latest news on time
Automatic E-mail
Table 4.1.2 The relevant relationship between functional requirements and the problems
4.1.3 Description of the functional requirements
The following sections describe the functional requirements. The detail is in appendix G.
User registration
Customer can use it to register. This use case begins when the user begins to register. Users are allowed to input
the basic information such as username, password, confirm password address, telephone number, e-mail
address, postcode, real name and so on. If the information is correct, then user can finish registration.
User login
Customer can login the system. This use case begins when the user begins to login. User inputs his username
and password, and then submits. If the username and password are correct, he will successfully login.
Wang, Jianping
MSc Information Systems

16

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Show relevant components and types based on customer types


Customer can get the relevant information of his user type .This use case begins after the user selects user type
and enters the main page. The page will show the components that he can buy, the numbers of each component
type based on his user type and the total number of all the product types.
Show the most popular products being visited
Customer can get the latest information of the hot products being visited
Show the most popular products being sold
This use case begins after user chooses user type and goes into the main page. The page will show the 5
products, which has the highest sales.On the other side, after the user chooses the type of the component, the
system will show the products with the highest sales relevant to this kind of product.
Select and order
Users can select and order the products they like. This use case begins when the user selects the product he
likes. He can choose the amount he wants to order. Then if he wants to buy something else, he can repeat the
selection process. After he finishes selection, he can check the list and begin to order. He needs to input the
receivers address, name, telephone number and so on. At the same time, he will get an order number which can
be used to check order state later.
Products Query
User can find product by inputting part of the name of the product .This use case begins when the user inputs
part of the name of the product he likes. The product will be found and then the user can select the product.
Check order state
This use case begins when the user wants to check his order state. User inputs the order number and then gets
the information about the state of the order he made. There are two types of order states, one is that the order is
being handled and the other is that the order has been done.
Read latest news
This use case support customers to read the latest news.
Download relevant software
Wang, Jianping
MSc Information Systems

17

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Customers can download the software they need from the e-shop. The software was catalogued so that user can
easily find the things they are interested. It is useful for customer to get the useful software on time.
Automatic E-mail
Customers receive one to one service through this function. After the customer registers, his characters and
interests will be stored in database. For example, the customer is a customer of a big company and he want to
know the processors information. Then after the retailer input information about processor for customers of big
company, the customer will receive the e-mail.
4.2 Non-Functional Requirements
Functional requirements care what system can do. Non-functional requirements care what are the systems
qualities. The non-functional requirements include usability, performance and security. In this project, we get
Non-Functional Requirements by reading, questionnaire and interview.
4.2.1 Usability
According to Dennis(2003), usability is focused on helping the users cognitive processes to help them perform
the tasks they want to do. The table 4.2.1 shows the requirements of usability in this project.

Wang, Jianping
MSc Information Systems

18

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Items

Requirements

Ease of learning

A user who has never seen the user interface before can
learn it sufficiently well to accomplish basic tasks, e.g.
can use the system to order one product in 20 minutes.

Efficiency of use

An experienced user has learned to use the system can


finished the select and order 2 products in 10 minutes.

Memo ability

If a user has used the system one time before, he or she


can remember at least 6 functions of the whole 8
functions. He needs not have to start learning everything
again?

Error frequency and severity When customers use the system, they will not meet
serious error after they explore all of the functions. The
serious error means not only inconvenient for using but
also affect the business. For example, when a customer
order a product, the system breaks out, so he dont know
if he has booked it or not.
Subjective satisfaction

If the satisfaction level that customers like to use the


system can be divided into 10 then the average score
should above 6.

Table 4.2.1 The requirements of usability


4.2.2 Performance
4.2.2.1 Principle:
Performance requirements focus on performance issues such as response time, capacity, and reliability.
Dennis(2003) mentioned the performance as follows:
Speed requirements: The time within which the system must perform its function.
Capacity requirements: The total a peak number of users and the volume of data expected.
Availability and reliability requirements: The extent to which the system will be available to the users and
the permissible failure rate due to errors.
4.2.2.2 Performance requirements in the project
Speed requirements: Response time less than 10 seconds for any transition. The inventory database must be
updated in real time.
Order will be transmitted to staff in 1 hour.

Wang, Jianping
MSc Information Systems

19

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Capacity requirements: The maximum of simultaneous users at peak use times about 200.
Capacity requirements: The system will store data on about 50,000 customers for a total less than 2 meg of
data.
4.2.3 Security
Dennis(2003) mentioned Security is ability to protect the information system from disruption and data loss,
whether caused by an intentional act. The requirements of security are as follows.
System value estimates: The QDs manager estimates that QD will lose 6000 yuan/per-day the if the e-shop
cant work.
Access control: Customers can access all of data.
Encryption and authentication: Authentication will be needed for user access.
Virus control: The files will be checked when it is uploading to the e-shop.

Chapter 5: Prototype Design


The purpose of the analysis phase is to figure out what the business needs. The purpose of the design phase is to
decide how to build it. The initial stage of design converts the business requirements into system requirements
that describe the relevant technical details for building the system.
In this project, the designs stages are as follows:
Firstly, according to section 4 the developer designs the architecture.
Secondly, according to section 4.1, the developer converts the use case descriptions that show the functional
business requirements into sequence diagrams for application layer design.
Thirdly, according to section 4.2, the developer designs the prototype system interface.
Fourthly, according to sequence diagrams and section 4.1, the developer designs the prototype system database.
5.1 Proposed architecture
Generally speaking, two popular architectures are widely used in the practical commerce worldclient server
architecture and three-layer architecture.
Wang, Jianping
MSc Information Systems

20

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Dennis (2003) points out:the client is responsible for the presentation logic, whereas the server is
responsible for the data access logic and data storage. The application logic may reside on the client, reside on
the server, or be split between both. Under this case it is complicated for software development because all
applications in client server-computing have two partsclient side software and server side software. It is also
not easy for updating because it needs to change the software in both sides.
The system uses three-layer architecture. The most important advantage of this architecture is that it is much
easier to be understood and maintained. The detailed advantages can be summarised as follows:
Scalability: In QD, the e-shop and account system will be put on different servers. But the e-shop needs data of
account system. On the other side, in future, QD may develop other systems to support its business, which will
be put on other servers. The three-tier architecture allows application components across multiple servers,
which is capable of making the system more scalable.
Reliability: It is easier to add more application servers or database servers to let redundancy in three tire
architecture. At the same time, if something wrong takes place the affect will be limited in one layer and the
error will be easy to be found.
Flexibility: Since the different layers separate from each other, when some changes take place in one layer
others need not to be changed. It makes the prototype more flexible. For example, if the database needs to be
changed from Microsoft access to SQL server, the application layer need not to be changed since the
application, which uses JavaScript and SQL, also support SQL server.
Reusability: Separating the prototype into multiple layers makes it easier to implement re-usable components.
.

5.2 Interface Design


According to Wiley, 2003, In many ways, user interface design is an art. The goal is to make the interface
pleasing to the eye and simple to use, while minimizing the effort users need to accomplish their work.
5.2.1 Principle
According to Wiley, 2003, the principle is follows.
Layout
The interface should be a series of areas on the screen that are used consistently for different purpose.
Content awareness
User should always be aware of where they are in the system and what information is being displayed.
Wang, Jianping
MSc Information Systems

21

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Aesthetics
Interface should be functional and inviting to users through careful use of white space, colour, and fonts. There
is often a trade-off between including enough white space to make the interface look pleasing without losing so
much space that important information does not fit on the screen.
User experience
Although ease of use and ease of learning often lead to similar design decision, there is sometimes a trade-off
between the two. Novice users or infrequent users of software will prefer ease of learning, whereas frequent
users will prefer ease of use.
Consistency
Consistency in the interface design enables users to predict what will happen before they perform a function. It
is one of the most important elements in ease of learning, ease of use, and aesthetics.
Minimal user effort
The interface should be simple to use.
5.2.2 Design
According to section 5.2.1, the developer designs the interface as follows
Layout
The screen is divided into four boxes. The top box is the navigation area through which all prospected user
issues can be navigated through the system. The left box provides support function of purchase such as
registration. The right box provides information of purchase. For example, customer can find the useful
information of products. The middle box displays result. For example, if a customer registers, the box will
display if he or she register successfully or not. Figure 5.2.2 illustrated the whole layout

Wang, Jianping
MSc Information Systems

22

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Menu box

Support
function
(e.g. register,
query)
box

Display
results
box

Product
information
for
purchase
box

Figure 5.2.2 The layout of the screen


User experience and consistency
In this design, each time after the customer click, he knows the results will be displayed in the middle box .
Aesthetics
There are some white space between boxes and different will be used to let the screen become beautiful.
Content awareness
In the design each box (table) has a title to sign the information which is displayed.
Minimal user effort
From the starting menu until customers perform work, there is no more than four mouse clicks.
5.3 Application logic design
In this part the sequence diagram is used to help design. A sequence diagram is a dynamic model that supports
a dynamic view of the evolving systems. It includes three kinds of objectsboundary objects, entity objects
and control objects. Boundary objects represent all interactions between the internal and external of the system.
Entity objects represent information, which is important to the system. Their purpose is to represent and
manage information within the system. Control objects are used to represent behaviour in the system.
The automatic e-mail and download function of the requirements are excluding in the prototype because the
developer has no enough time to do them. Moreover, in order to save time, the developer does not mark the
message and the number of the sequence in the sequence diagrams. The follows are the sequence diagrams.
5.3.1 User registration
The registration process begins when a user presses Register button. The registration screen will be shown.
Then the user inputs information required. If the information input is correct and the username hasnt been
used, the registration will be successful and the system will show the success information. If the user name has
existed or the user did not input the information, the system will inform the user that the registration failed.
Then he can change the information and the relevant data. After the user finishes registration, the information
will be stored in the database.
Wang, Jianping
MSc Information Systems

23

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

register screen

customer

Cus tom er DB

register

register result screen

Diagram 5.3.1 Register

5.3.2 Login
The registration process begins when a user inputs his username. Firstly, the user needs to input the username
and password, which are composed of characters or numbers. Then he presses confirm button. The system
will compare the username and password in database to check if the information input is correct or not. If the
information is correct, then the system will show the user login successful information. If the information is not
correct, the system will show what is wrong with the username and password, for example the username does
not exist or the password is wrong.
If the login is successful, the users login time and the users login IP will be recorded into the database.

1. enter login screen

2. username()
password()

3 username()
pass word()
4. correct or not

customer

Login sc reen

Login

Customer DB

5. suc cess or fail

Login result

Diagran 5.3.2 Login

5.3.3 Select and order


This process begins when the user selects the products and presses the select button. The system will check if
the user has login or not. If the user hasnt logged in, the system will remind the user to login. If the user has
Wang, Jianping
MSc Information Systems

24

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

logged in, the selection window will be shown and the new product with its price and quantity will be shown in
the new window.
The user can select the amount of the new product he wants to buy then he can press the confirm button to
confirm the selection. After he presses the confirm button, the selected product will be added to the shopping
cart and appears in the selection window. At the same time, it will be stored into the database.
The user can revise the products in the shopping cart by double clicking the products name to get rid of it or
press the clear button to clear all of the products in the shopping cart. At the same time, the database will be
revised.
If the user just selects and puts the products into the shopping cart but doesnt order, the shopping cart will save
the products the user selected. Then next time when the user begins to select some new products, the shopping
cart will be restored to let user put new products.
If the customer wants to order the product, he presses confirm button. Then the order screen will be shown
with the products list. Next the user can press the confirm button to continue the order process, after that the
automatic order number will be given and the receivers telephone number, address, e-mail and name are
required. If the user inputs wrong information, he can click clear button to rewrite the information. If it is
correct then he can press confirm button to confirm it. Then the receivers name and the address will be
shown. At the same time, the order information will be stored into the database and the shopping cart
information will be deleted. The whole process of selection and order finished.

Wang, Jianping
MSc Information Systems

25

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Customer

select screen

press "select" button

Check logi n state

Customer DB

shoppi ng c art
choose amount and
confirm

selec ted products list

revise selected products

Clear result

basket DB

Clear

Order

Order DB

Order screen
confirm order

reci ver s creen

order screen

input recei ver'


information and check

Diagram 5.3.3

recei ver DB

Select and order

5.3.4 Show catalogue relevant to user type


The user selects user type from the main page by pressing the user type hyperlink, and then the system will
check the product DB to find the products relevant to the user type and show the information in the new page.
The information include components name, number of types of each component and the total number of types
of the whole products relevant to the user type.

Wang, Jianping
MSc Information Systems

26

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

customer

user type screen

select user type

find ctalog relevant to


the user type

product DB

c atal og scre en
5.3.4 Show the catalog information relevant to the user type

5.3.5 search for products


The process begins when the user input information in the space and presses the confirm button. Then the
system will check the product DB to find if there is some products match the requirements. If there are some
products name include the character the user input, the products would be shown in a new window. The user
can click the product he prefers to and then select and order it. If there is no products name include the
characters that user input, now products name will be shown in the new window.If the user input nothing, all
of products name will be shown.

Wang, Jianping
MSc Information Systems

27

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

cu stomer

user type screen

select user type

fi nd c tal og rel evant t o


t he u ser typ e

product DB

catalog screen

Diagram 5.3.4 Show the components and products information relevant to the user type

5.3.6 Check order state


The process begins when the user inputs order number in the order query space and presses the confirm
button. Then the system will search the Order DB to find if the order has been done or not. Then show the order
number the user input and the search result in a new windows.
If the order hasnt finished, the window will show it is under handling.If the order has finished, the window
will show the products have been sent to you.If the input order number is wrong, the window will show This
order ID does not exist, please check if you input the correct order ID.

Wang, Jianping
MSc Information Systems

28

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Custom er

Query screen

Input and query

Order DB

show results

Diagram 5.3.6

Check order state

5.3.7 Show the most popular products being visited


This use case begins after the user selects the hypertext link of user type. The system will check the product DB
and get the times the product being visited. Then the screen will show the top 5 types of products of each
catalogue by the relevant type of user. For example, if the user selects the small business user, the screen will
show the 5 most popular types of products being visited.
If the user selects a type of component, then the top 5 products being visited which belong to the component
will be shown. On the other side, each time users visit a product, the times being visited of this product will
change accordingly.

Wang, Jianping
MSc Information Systems

29

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

main page

custome r

select user type

fi nd the top 5 popul ar


produ cts being vis it ed

t op fi ve popular poducts being


visited

product DB

visit ed the pro ducts and


chage th e times being visi td

Diagram 5.3.7 Show the most popular products be...

5.3.8 Show the most popular products being sold


This use case begins after the user selects the hypertext link of user type. The system will check the product DB
and get the quantity of the product being sold. Then the screen will rank the top 5 types of products of each
component by the relevant type of user.
If the user selects a type of component, then the top 5 products being sold which belong to the component will
be shown. On the other side, each time users buy a product, the number of the product being sold will be
changed.
.

Wang, Jianping
MSc Information Systems

30

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

customer

main page

select user type

find the top 5 popular


products being sold out

top five popular poducts being sold


out

product DB

visited the products and chage


t he times being s old out

Diagram 5.3.8 Show the most popular products being sold

5.3.9 Showing latest news


The use case begins when customer click the news hyperlink, the detail will be shown.
After discussing with QD, the developer knows that the news just sometimes need to be input and neednt to be
kept. So here has no entity relevant to news.
5.4 Database Design
According to the sequence diagrams of section 5.3, the developer designs the database.
In an assembled computer, each component includes at least one type of product. Each basket can contain at
least one product and each type of product can be placed into more than one baskets. One order is just for one
basket, but each basket may not be changed into order. Each basket must belong to one customer but each
customer can use no basket or use more than one basket. An order must have a receiver and vice versa.
The relationship is illustrated in figure 5.4. Since the relations between product and basket are multi to multi,
the developer uses a new class called product-and-basket to change the multi to multi relationship into 1 to
multi relationship.

Wang, Jianping
MSc Information Systems

31

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

component

1..*

product

*
*
0..1

order

basket

1..*

0..*

receiver

0..*
1

1..*

product-and-basket

customer

Figure 5.4 E-R diagram

Chapter 6: Prototype Implementation


According to chapter 5, the developer implements the prototype. It includes implementing architecture,
interface, application and database. When the developer implements the prototype, he searched for free ASP
Script and found a lot of useful ASP Script. Then he used some of them. The hyperlink is in the reference.
6.1 Implementation of architecture
According to section 5.1,in this prototype, we use three-tier architecture.
In the presentation tier, customers use browser such as IE or Netscape to support the conversion and the
sending of html script to the application layer.
In the application layer, the Windows NT server has IIS 4.0 installed. The ASP and Java scripting are used to
deal with the requests from presentation layer. The results are sent in a html format to the presentation layer.
In database layer, Microsoft access is used. It connects to application layer by SQL select and ADO.
:
6.2 Implementation of Interface
According to section 5.2.2, we implement the interface. For example, in figure 6.2, the above is the menu,
which covers all functions of the e-shop. On the left, the boxes are for supporting information. On the right, it
provides the function for purchase. In the middle, the box is for showing information from the left and right.
Wang, Jianping
MSc Information Systems

32

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Figure 6.2 Interface implementation

Wang, Jianping
MSc Information Systems

33

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

6.3 Implementation of application layer


According to section 5.3, the developer implements the application layer
Active Server Pages and JavaScript
When we choose a programming tool, we have to keep in mind two type of factors to be taken care off:
technology oriented and economic oriented.
For technologic oriented factor, the technology should support the requirements. The economic oriented factor
means that the cost of the system should not beyond the sponsors limit.
The prototype implementation uses ASP and JavaScript as its programming tool. In the following section we
compare PHP, ASP and JSP and justify why the prototype implementation chooses to use ASP..
A-dub(2002), mentioned ASP Microsoft's Active Server Pages offers wonderful technology that is widely
supported by inexpensive web hosting companies. Plus, there are a great many web sites and books about ASP
with many lines of free code. These are nice advantages. JSP (Java Server Pages) is not widely supported by
web hosting companies PHP has origins in the C programming language. (More about this in a forthcoming
article.) PHP is open source, runs on Unix and Windows servers. (Cool, because I write for whatever server my
clients already have installed.) According to the evangelist, the big disadvantage to PHP and any open source
software is that companies do not want it. They do not trust it.
The QDs account system is based on Windows NT and IIS. So using ASP can save cost, On the other hand,
the developer familiarisation to ASP makes it easy to select the implementation using the ASP.
The most important reason for the developer choosing JavaScript is that he is more familiar to it than VBScript.
The other reason is it supports more browsers than VBScript.
The figure 6.3 shows the implementation application layer. For example, if the user wants to buy some thing, he
can reaches from different ways such from latest products to select and order products or from top
products being visited to select and order products.

Wang, Jianping
MSc Information Systems

34

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Select user type

registe

login

order
query

Product list

Product
query

Show Components
relevant to user type

Top
product
being
visited of
the
component

Latest
products

Top
product
being
visited

Top
product
being
sold

Latest
news

Top
product
being sold
of the
component

Select
and order
products

Figure 6.3 the implementation of the application layer


When we implement the functions, we use ado to connect to the database. Then use JavaScript to transfer
sqlselect instruction to access data from the tables of the database. After calculation, sent result as html to
presentation layer. The follow is the example of realizing the function of select and order.
Firstly, using ado to connect to the database
<%

dim conn
dim connstr
dim db
db="database/database.mdb"
Set conn = Server.CreateObject("ADODB.Connection")
connstr="driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath(db)
conn.Open connstr

%>
Secondly using sessions to check if the user has logged in or not
if session("user_name")="" then response.write "
" response.write "You haven't log in or you haven't
Please log in if you want to order something!" response.end end if
Thirdly access data from database
Wang, Jianping
MSc Information Systems

35

signed

in"

response.write

"

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

sql="select * from basket where hw_id='"&hw_id&"' and user_name='"&session("user_name")&"' and


basket_check=false" rs.open sql,conn,3,3
if
rs.eof
then
rs.addnew
rs("hw_id")=hw_id
rs("user_name")=session("user_name")
rs("basket_count")=count
rs("basket_date")=now()
rs("hw_name")=request("hw_name")
rs("hw_cash")=request("hw_cash") else rs("basket_count")=int(rs("basket_count"))+int(count) end if
Finally, write the results to presentation layer.
<%
user_name=session("user_name")
sql="select * from basket where user_name='"&user_name&"' and basket_check=false"
rs.open sql,conn,3,3
if rs.eof then
response.write "You haven't selected any product"
else
do while not rs.eof
%>
<tr>
<td width="25%"><%=rs("hw_name")%></td>
<td width="25%"><%=rs("hw_cash")%></td>
<td width="25%"><%=rs("basket_count")%></td>
<td width="26%"><%=rs("hw_cash")*rs("basket_count")%></td>
</tr><%totalcash=totalcash+(rs("hw_cash")*rs("basket_count"))%><%rs.movenext
loop
end if
rs.close
%>
6.5 Implementation of Database
When choosing database products, the following factors: platform, hardware requirement, software
requirement, price, feature, maintenance and developers ability should be considered.

The candidate database includes Oracle, mySQLSql Server and Microsoft access.
Among this database, Oracle is the most stable and can be best maintained product. But it is also the most
expensive one. At same time, it also requires higher performance of hardware and system software. The
maintenance of it is the most complicate. QD cannot afford it.

Wang, Jianping
MSc Information Systems

36

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

As for MySql, it is one of the cheapest one. But it is quite young product, and not so popular as other three
products. It was not so familiar by most of developers. So there are some problems such as stability,
maintenance and cost of developing. As a result, it can be given up.
So

the

most

candidate products are Access and SQL Server.

Feature
database size
database size
objects in a database
user name length
password length
table name length
column name length
index name length
Number of concurrent users
columns per table
table size
number of indexes in a table
number of columns in an index
bytes per row
number of tables in a query
columns
per
SELECT
statement
nested subqueries
number
of
enforced
relationships
SQL statement size
SQL Select
Price

The

feature

is as

SQL Server 2000

Microsoft Access 2000

Not Supported

Supported

1,048,516 TB
2,147,483,647
128
128
128
128
128
limited by available memory
1024
limited by available storage
250
16
8060
256

2 GB plus linked tables size


32,768
20
14
64
64
64
255
255
1 GB
32
10
2000
32

4096

255

32

50

253

32

65,536 * Network packet size


(4 KB, by default)
Yes
High

follows:

approximately 64,000
yes
low

Table 6.5.1 Compare of SQL server 2000 and Microsoft access 2000
(From http://databasejournal.com/features/msaccess/article.php/2204341)
In the implementation, the access database is selected. The reasons are follows:
A. The prototype is for a small retailer and the retailer does not want to spend much money to do it.
B. The scalability, security and robustness system requirements are not high because it doesnt
include payment system, which supports customer to pay money in Internet.
C. QD has brought Microsoft access for its account system.
D. The Microsoft access is enough for e-shop requirements for example, the requirements of the maximum of
simultaneous users at peak use times is 200.But access support 255.
E. Both of Access and SQL server support SQl select. If the retailer needs to update Microsoft access to SQL
Server, the
applications can be not changed.
Wang, Jianping
MSc Information Systems

37

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

There are two main types of data storage formats: files and database. Files are electronic lists of data that have
been optimized to perform a particular transaction. A database is a collection of grouping of information that
are related to each other in some way.For example(e.g.., common fields.)
In the prototype there is a databases using in the project. Customers can access all of the fields of the databases.
The relationship is shown in the figure 6.5.2.

Figure 6.5.2 The database of the prototype


6.6 Testing
The testing includes unit tests, integration tests, system tests and acceptance test.

Wang, Jianping
MSc Information Systems

38

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

6.6.1 Unit tests


Dennis (2003) said The Unit tests focus on one unit- a program or a program module that performs a specific
function that can be tested-and ensure that the module or program performs its function as defines in the
program speciation There are two approaches can be used to unit tests: white box and black-box.
In the stage the developer uses both of the white-box and black box method to conduct the unit tests, any error
was found has been get rid of. One example for the white box is that when he finished the unit for view project,
he check the code and expect the result. But when he tests it, the result is not same as his expect. Then he
checked and found it because the conn.asp file exclude in the unit.
The black box example is: the developer thought that the register unit should be no problem. But when he
use it, he found that he couldnt input the whole characters of his address. Then he he checked and found it is
because the field is not long enough for his address. So the developer changed the length of the field.
6.6.2 integrate tests
Dennis (2003) said integrate tests assess whether a set of modules or programs that must work together do so
without error There are four approaches to interface testing: use scenario testing, dataflow testing and system
interface testing.
In this project, the developer uses just user scenario to do the test. For example, one of scenarios is about select
and order. It is as follows:
Firstly, select user type, secondly, the system shows catalog relevant to the selected user type and most
popular products being visited at the same time. Thirdly, the user login because the user decide to buy
something. Fourthly, the user clicks products from the most popular products being visited. Fifthly, the product
being clicked is shown and user select it. Sixthly,the user selects the other product. Seventhly, he order it.
Finally ,he check the order state.
When the developer does unit tests, every unit is available. But when he needs to finish the whole process, he
finds after he select user type, the relevant catalog is not shown because the variable of the user type didnt send
to the showing relevant catalog unit. Then he adjusts it.
6.6.3 system tests
Dennis (2003) said System tests are usually conducted by the system analysts to ensure that all modules and
programs work together without error. Whereas integration testing focuses on whether the modules work
together without error, system tests examine how well the system meets business requirements and its usability,
security, and performance under heavy load. It also tests the systems test
In this project, the developer tested every transactions response time. No errors was found.
6.6.4 acceptance tests
Dennis (2003) said acceptance tests are done primarily by the users with support from the project team. The
goal is to confirm that the system is complete
Wang, Jianping
MSc Information Systems

39

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

After the system tests, the developer found 10 potential customers to test the system and found some problems,
then he revised the system. For example more than 50% of them misunderstood the user type names of small
business customer ,then he change the name to customer of small companies, then the misunderstanding
was got rid of.
Finally, the developer confirm that the system is completed.

Chapter 7: Evaluation
The evaluation includes two parts: the prototype evaluation and the project evaluation. When we begin to
evaluate, firstly, we should have a criteria and then evaluate how much the prototype and project meet the
criteria. The developer divides the match degree into ten levels from 0 to 10. If the item is total unavailable,
then it got score of 0. If the item total matches the requirements, then the item got 10. . The developer finds 6
persons to interview and each person gives mark for each item, which the developer asked him or her. After
getting rid of the highest and lowest score, the developer calculates the average score. The reason for getting rid
of the highest and lowest score is to prevent joking.
7.1 Evaluating The Prototype
7.1.1 The criteria
To evaluate the prototype, the criteria are the prototype requirements and design. We need to check how much
the system satisfies all of the functional requirements and non-functional requirements
7.1.2 Results
7.1.2.1 Evaluation of the functional requirements
According to section 4.1,the developer interviewed 6 persons and they evaluated the items. The summary of the
results is shown in table 7.1.2.1
Items

Average score of the Average score of


functions requirements
the prototype

User registration

10

10

User login

10

10

Show
relevant 10
components and types
based on customer types

Show the most popular 5


products being visited

Wang, Jianping
MSc Information Systems

40

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Show the most popular 8.5


products being sold

Select and order

10

Products Query

9.5

Check order state

Total score

70.5(about 88%)

70.5(about 88%)

Table 7.1.2.1 Evaluation of the functional requirements


7.1.2.2 Evaluation of non-functional requirements
7.1.2.2.1 Usability
According to section 4.2.1,the developer interviewed 6 persons and they evaluated the following items. The
summary of the results is shown in table 7.1.2.2.1A

Items

Average score of evaluation

Ease of learning

9.5

Efficiency of use

10

Memo ability

Error frequency and severity 9.5


Subjective satisfaction

9.9

Total score

47.9(about 96%)

Table 7.1.2.2.1A Evaluation of usability


7.1.2.2.2 HCI
According to section 5.2, the developer interviewed 6 persons and they evaluated the items. The summary of
the results is shown in table 7.1.2.2.1b
Item

Average score of evaluation

Layout

Content awareness

10

Aesthetics
User experience

8
9

Consistency

Minimal user effort

Total score

53(about 88%)

Wang, Jianping
MSc Information Systems

41

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Table 7.1.2.2.1B Evaluation of HCI

7.1.2.2.3 language supporting evaluation


This section is to test if the prototype supports Chinese. After inputting some products name in Chinese into
database, the developer found that the system couldnt show products Chinese name even the developer
selected the encoding as Chinese under IE6.0. The developer thinks that under Microsoft access of Chinese
version, the system will totally support Chinese. But he has no chance to test now.
7.1.2.2.4 Performance
The criteria are the section 4.2.2.2. after The developer gets the following results.
Item

Average score The person who evaluates the prototype


of evaluation

Speed
requirements

The developer and the 6 person who take


part in the interview

Capacity
requirements

10

The QDs manager and the developer

Capacity
requirements

10

The developer

Total score

29(about 96%)

Table 7.1.2.2.4 Evaluation of performance


7.1.2.2.5 Security
The criteria are the section 4.2.2.3. After interview, the developer gets the following results.
Item

System
estimates

Results
evaluation
value 8

of The person
evaluates
prototype

The QDs manager

Access control:

The developer

Virus control

The developer

Total score

15(about 50%)

Table 7.1.2.2.4 Evaluation of performance


Wang, Jianping
MSc Information Systems

who
the

42

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

7.2. Evaluation of the project


7.2.1 The criteria
The criteria are the objectives of the project in section 1.2.
7.2.2 Results
This project analysed the requirements of a 'customer-friendly' e-shop for a computer retailer and translated the
requirements into a high-level design for the e-shop and prioritised the requirements, which implemented in the
prototype. Finally, the developer produced a prototype by using an incremental and iterative approach. The
prototype get marks more than 80% buy potential customers and the retailers evaluation.
The project meets the objectives of the project.

Chapter 8 Conclusion
8.1 Achievements
The project is the requirements and design of a customer-friendly e-shop for a computer retailer.
The RUP was used as the approach. By using it,the developer produced the project schedule, which has the
functions of iteration and increment. The executed schedule is similar to the planed schedule. The follows is the
detail.
By reading materials, comparing with different e-shops, using questionnaire and interview methods, the
developer got the functional requirements and non-functional requirements of the retailer.
According to the requirements, the design of prototype was made out. The three-tire architecture was selected
as the architecture and the E-R relation diagram was selected to design database tier.
Then according to the prototype design, the developer began to implement the prototype. The ASP and
JavaScript were chosen as developing language and the Microsoft access was selected as database.
After finishing the implementation, the tests were taken place. All of errors in the prototype were adjusted.
Then after testing, the evaluation was given to the prototype and the project. Most of marks give by the
potential customers of the prototype are more than 80%.

Wang, Jianping
MSc Information Systems

43

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

The evaluation results show that both of the approach and the project are successful in each stage

8.2 Lesson learned


In this project mainly two lessons are learned.
The most important lesson learned in this project is the importance of iterative and increments. For example,
after finished the implementation and unit test, integrate test and system test first time, it seems the system is
finished. But in acceptance tests, more than 50% of the customers who were family customers selected small
customer type. It is not same as the developers expect. So the developer had to redesign the interface to
correct it.
The other lesson learned in the project is the more the developer understands the business of the retailer, the
better he investigation he can do. For example, when the developer interviewed customers, he asked when
you select products, between the amount of the product being sold and the the amount of the product being
sold relevant to you user type, which one you prefer to know? the customer said the amount of the product
being sold relevant to my user type. But when I told to him in fact, the more the product being sold, the
better service the retailer can provide to users (It is not convenient for user to get advice of section 3.3), then
what information you prefer to know , then the customer said the amount of the product being sold

8.3 Further works


In this project, since the time limit, the developer can just concentrate on some aspects. If he has more time, he
prefers to do the following works:
8.2.1 Investigating more customers and QDs staff, comparing more websites and reading more materials to get
more perfect requirements. Testing more users to get more accurate evaluation.
8.2.2 The developer will study if the following functions will be good or not for customers. Then if the
customer are interested in them, the developer will design them and add them to the prototype. The functions
include personalised web pages, community,multiple payment options, encryption, download
software loyalty schemes online helpand automatic mail.
8.2.3 The developer will design and implement the retailer sides function to the e-shop.
8.2.4 The e-shop should be made some hyperlinks to popular websites to attract customers.
8.2.5 improve the interfaces aesthetics.
8.2.6 The developer will test if there are some problem of using Chinese.
Wang, Jianping
MSc Information Systems

44

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

REFERENCE

Appendix A: Reflection upon the project experience


At the beginning of the project, I did not know how to do the project. What kind of material is useful for the
project? What approach is fit for the project? How to use different tools and methods in different stages?
Then after the supervisor direct me, I understand that the e-shop belongs to the use of e-commerce. Then I
begin to search for the books of e-commerce. After reading the books of e-commerce, I knew what the ecommerce are and the four components of e-commerce.
At the same time, by reading books, I know what is RUP and how to use it to do project.
With the supervisors help, I also learned how to investigate, how to get requirements, how to design, how to
implement and test, how to evaluation and the relationship between each other.
Also I got the experience of using ASP and JavaScript.
In a word, I learned how build a system.

Wang, Jianping
MSc Information Systems

45

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Appendix B: Objectives, deliverables and agrees marking scheme

Wang, Jianping
MSc Information Systems

46

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Appendix C: A copy of interim report sheet

Wang, Jianping
MSc Information Systems

47

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Wang, Jianping
MSc Information Systems

48

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Appendix D: Reference books and URL


1, Chandler, Kreta: Customer-centered design : a new approach to Web usability / Kreta Chandler, Karen
Hyatt. Upper Saddle River, N.J. ; London : Prentice Hall PTR, c2003.
2. Dennis, Alan. Systems analysis design / Alan Dennis, Barbara Wixom, New York : J. Wiley, c2003.,2nd
3. John ward and Joe Peppard: Strategic Planning for Information Systems: Cranfield School of
Management, Cranfield,Bedfordshire,UK
4, Jacobson, Ivar : The unified software development process / Ivar Jacobson, Grady Booch, James
Rumbaugh.: Addison Wesley Longman, 1998.
5, Kruchten, Philippe. The rational unified process / Philippe Kruchten Reading, Mass. : Addison-Wesley,
c1999
6 H.M.Deitel,P.J.Deitel, K.Steinbuhler: e-business & e-commence for mangers:prentice-hall,Inc:2001
7.. Michele Marchesi(Eds.) Extreme programming and agile processes in software engineering : 4th
international conference, XP 2003, Genova, Italy, May 25-29, 2003 : proceedings / Michele Marchesi,
Giancarlo Succi (eds.). Berlin ; London : Springer, c2003.
8. Treese, G. Winfield. Designing systems for Internet commerce / G. Winfield Treese, Lawrence C.
Stewart.: Addison-Wesley, c1998.
9. Turban, Efraim.: Introduction to E-commerce / Efraim Turban. Upper Saddle River, N.J. ; London :
Prentice Hall, 2002
10. Whiteley, David. : e-commerce : strategy, technologies and applications / David Whiteley. : McGraw-

Hill, 2000.
10. amazon.co.uk
11 www.dell.com
12 www.comp.leeds.ac.uk/in31 In31 2002/2003 lecture 17
13. http://www.martinfowler.com/articles/newMethodology.html#N40035D
14 http://www.corba.ch/e/3tier.html
15 http://www.chinaz.com/download
Wang, Jianping
MSc Information Systems

49

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

16 http://www.uk-shop-online.co.uk/department-stores/detail-argos.htm
17 http://www.21tx.com/src/asp/dzsw/000140810121444.htm

1, Dennis, Alan. Systems analysis design / Alan Dennis, Barbara Wixom, New York : J. Wiley, c2003.,2nd
2, H.M.Deitel,P.J.Deitel, K.Steinbuhler: e-business & e-commence for mangers:prentice-hall,Inc:2001
3, Turban, Efraim.: Introduction to E-commerce / Efraim Turban. Upper Saddle River, N.J. ; London :
Prentice Hall, 2002.
4, Jacobson, Ivar : The unified software development process / Ivar Jacobson, Grady Booch, James
Rumbaugh.: Addison Wesley Longman, 1998.
5, Chandler, Kreta: Customer-centered design : a new approach to Web usability / Kreta Chandler, Karen
Hyatt. Upper Saddle River, N.J. ; London : Prentice Hall PTR, c2003.
6 Michele Marchesi(Eds.) Extreme programming and agile processes in software engineering : 4th
international conference, XP 2003, Genova, Italy, May 25-29, 2003 : proceedings / Michele Marchesi,
Giancarlo Succi (eds.). Berlin ; London : Springer, c2003.
7. Kruchten, Philippe. The rational unified process / Philippe Kruchten Reading, Mass. : Addison-Wesley,
c1999.
8. John ward and Joe Peppard: Strategic Planning for Information Systems: Cranfield School of
Management, Cranfield,Bedfordshire,UK
9, Treese, G. Winfield. Designing systems for Internet commerce / G. Winfield Treese, Lawrence C.
Stewart.: Addison-Wesley, c1998.
10.

Whiteley, David. : e-commerce : strategy, technologies and applications / David Whiteley. :


McGraw-Hill, 2000.
10. amazon.co.uk
11 www.dell.com
12 www.comp.leeds.ac.uk/in31 In31 2002/2003 lecture 17

Wang, Jianping
MSc Information Systems

50

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

13.http://www.martinfowler.com/articles/newMethodology.html#N40035D
14 http://www.corba.ch/e/3tier.html

Wang, Jianping
MSc Information Systems

51

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Appendix E Current model

customer
QD's s taff

Go to QD

W ait for Q D's engineer t o int roduce and


recommend configuration and products

Discuss with
QD's engineer
Introduce and recommend
configurati on and products

Compare different products and configuration


and discuss with the engineer

Choose the products and


configuration

Plan to order it

Go to warehourse to find the components


that the customer required

Find them?
y

Go back to show the


products to the customer

Have a l ook and


check

Accept?
y
Let QD's engineer to
assemble the c omput er
Assemble the com puter and
install relevant software

W ait for the staff assemble


the computer
Fini sh and give
to the customer
Pay the computer and
come back

up date syst em
give update softw are
to customer
rece ive the software
and inst all it

Diagram 3.2 The current system

Wang, Jianping
MSc Information Systems

52

The requirements and design of the 'customer-friendly' e-shop for a computer retailer

Appendix F Vision

customer

QD's staff

Visit the e-shop


we b-s ite

Comp are differe nt prod ucts and configu ration


and discuss with the engineer

Plan to order it

Go to warehourse to find the components


that the customer required

Find all of them

Y
Ass emble the com puter a nd
ins tall relevant software

Send to t he
c ustomer

Receive the computer and


pay

W hen custom er needs


to update software

download and
ins tall it

Di agram 3.4 the expec ted b usin ess mode

Wang, Jianping
MSc Information Systems

53

Inform customer and


recomm and substitute

The requirements and design of the 'customer-friendly' e-shop for a computer retailer
Appendix G: Use case description
*

Use Case Name:

User registration

(The name as it appears in the


Use Case Model)
*

Primary Actor:

Customer

(Actor that initiates Use Case)


R

Other Actors:

None

Value Proposal to Actor(s)


(The goal of the Use Case

Customer can use it to register

from the Actors perspective)


R

Basic Course of Events:

This use case begins when the user begins to register. Users are allowed to input the basic information such as
username, password, confirm password address, telephone number, e-mail address, postcode, real name and so on.

(The Normal Flow)

If the information is correct, then user can finish registration.

Alternative Paths:
(Other paths through the use
case

which

successful

result

in

outcome

None

typically variations to the


basic

course

of

events,

determined by the actor and


their needs).
Exception Paths:

If the username has existed, the system will remind the user that the username has been used and the user has to

(Other paths through the use


case

which

result

unsuccessful
typically

in

an

outcome

when

something

goes wrong)

change the name.


If the customer found the information input is wrong before submission, he can rewrite information.
If the customer did not input all of the information the system required, the system will tell him and the register
should be done again.
If the password is not as the same as the confirm password the system required, the system will tell him and the
register should be done again.

Assumptions:

Every customer has e-mail address, telephone number and he prefers to tell QD.

Pre-conditions:

User has entered the web site

Post-conditions:

The information will be stored into the database if the registration is successful.

Related Business Rules:

Each customer can only registers once and he has a unique username. After registration, users can log in and then

(Reference to your Business

order the products they prefer.

Rules list)
Related Non-Functional

Interface friendly

requirements Usability,
Performance, Security:
(Any non-functional
requirements that are specific
to this Use Case rather than
the system as a whole)
Project:

The requirements and design of the 'customer-friendly' e-shop for a computer company

Author:

Wang Jianping

Date:

26/10/03 08:11

Wang, Jianping
MSc Information Systems

54

The requirements and design of the 'customer-friendly' e-shop for a computer retailer
User login
(using www.comp.leeds.ac.uk/in21/UCDForm.doc) and an interaction diagram for the Basic Flow of Events.
*

Use Case Name:

User login

(The name as it appears in the


Use Case Model)
*

Primary Actor:

Customer who has registered

(Actor that initiates Use Case)


R

Other Actors:

None

Value Proposal to Actor(s)


(The goal of the Use Case

Customer can login the system

from the Actors perspective)


R

Basic Course of Events:

This use case begins when the user begins to login. User inputs his username and password, and then submits. If
the username and password are correct, he will successfully login.

(The Normal Flow)


Alternative Paths:
(Other paths through the use
case

which

result

successful

in

outcome

None

typically variations to the


basic

course

of

events,

determined by the actor and


their needs).
Exception Paths:

If the username or password is wrong, the system will remind the user, for example username does not exist or

(Other paths through the use


case

which

result

unsuccessful
typically

in

an

outcome

when

password is empty.

something

goes wrong)
Assumptions:
Pre-conditions:

User has registered.

Post-conditions:

After the user logs the system will store the information in to the database.

Related Business Rules:

Users can select and order products only after they login.

(Reference to your Business


Rules list)
Related
requirements

Non-Functional

Usability,

Performance, Security:
(Any

non-functional

requirements that are specific


to this Use Case rather than
the system as a whole)
Project:

The requirements and design of the 'customer-friendly' e-shop for a computer company

Author:

Wang Jianping

Date:

26/10/03 08:11

Show relevant components and types based on customer types

Wang, Jianping
MSc Information Systems

55

The requirements and design of the 'customer-friendly' e-shop for a computer retailer
The customers can be divided into several types. After the user chooses a type, he can get the relevant information and service of this type.
Use Case Name:

Show relevant components and types based on customer types

(The name as it appears in the Use


Case Model)
Primary Actor:

Customer

(Actor that initiates Use Case)


Other Actors:

None

Value Proposal to Actor(s)


(The goal of the Use Case from the

Customer can get the relevant information of his user type

Actors perspective)
Basic Course of Events:

This use case begins after the user selects user type and enters the main page. The page will show the components
that he can buy, the numbers of each component type based on his user type and the total number of all the

(The Normal Flow)

product types.

Alternative Paths:
(Other paths through the use case
which

result

in

successful

outcome typically variations to


the

basic

course

of

Some products belong to not only one kind of user type, so the same products may be shown in different ways.

events,

determined by the actor and their


needs).
Exception Paths:

If there is no component or product in the database , the system will remind the user.

(Other paths through the use case


which result in an unsuccessful
outcome

typically

when

something goes wrong)


Assumptions:

The staff of QD has other system to update the products and renew the times being visited.

Pre-conditions:

User has selected the user type

Post-conditions:

When the user chooses a type of component, all of the types belong to the component will be shown and can be
selected.

Related Business Rules:


(Reference to your Business Rules
list)
Related

Non-Functional

requirements

Interface friendly

Usability,

Performance, Security:
(Any non-functional requirements
that are specific to this Use Case
rather than the system as a whole)
Project:

The requirements and design of the 'customer-friendly' e-shop for a computer company

Author:

Wang Jianping

Date:

26/10/03 08:11

Show the most popular products being visited

Wang, Jianping
MSc Information Systems

56

The requirements and design of the 'customer-friendly' e-shop for a computer retailer
Use Case Name:

Show the most popular products being visited

(The name as it appears in the Use


Case Model)
Primary Actor:

Customer

(Actor that initiates Use Case)


Other Actors:

None

Value Proposal to Actor(s)


(The goal of the Use Case from the

Customer can get the latest information of the hot products being visited

Actors perspective)
Basic Course of Events:

This use case begins after user chooses user type and goes into the main page. The page will show the 5 products,
which have the most times being visited.

(The Normal Flow)

On the other side, after the user chooses the type of the component, the system will show the five products having
the most times being visited relevant to this kind of product.
Alternative Paths:
(Other paths through the use case
which

result

in

successful

outcome typically variations to


the

basic

course

of

None

events,

determined by the actor and their


needs).
Exception Paths:
(Other paths through the use case
which result in an unsuccessful
outcome

typically

when

something goes wrong)


Assumptions:

The staff of QD has other system to update the products and renew the times being visited.

Pre-conditions:

User has selected the user type

Post-conditions:

After the user click products, the times of the product being visited will be updated.

Related Business Rules:


(Reference to your Business Rules
list)
Related
requirements

Non-Functional

Interface friendly

Usability,

Performance, Security:
(Any non-functional requirements
that are specific to this Use Case
rather than the system as a whole)
Project:

The requirements and design of the 'customer-friendly' e-shop for a computer company

Author:

Wang Jianping

Date:

26/10/03 08:11

Wang, Jianping
MSc Information Systems

57

The requirements and design of the 'customer-friendly' e-shop for a computer retailer
Show the most popular products being sold
Use Case Name:

Show the most popular products being sold

(The name as it appears in the


Use Case Model)
Primary Actor:

Customer

(Actor that initiates Use Case)


Other Actors:

None

Value Proposal to Actor(s)


(The goal of the Use Case from

Customer can get the latest information of hot products being sold

the Actors perspective)


Basic Course of Events:

This use case begins after user chooses user type and goes into the main page. The page will show the 5 products, which has the
highest sales.

(The Normal Flow)

On the other side, after the user chooses the type of the component, the system will show the products with the highest sales
relevant to this kind of product.
Alternative Paths:
(Other paths through the use
case which result in a successful
outcome typically variations to

None

the basic course of events,


determined by the actor and their
needs).
Exception Paths:
(Other paths through the use
case

which

unsuccessful

result

in

outcome

an

typically when something goes


wrong)
Assumptions:

The staff of QD has other system to update the products and renew the quantity of products being sold.

Pre-conditions:

User has selected the user type

Post-conditions:

After the user buys products, quantity of the product being sold will be updated.

Related Business Rules:


(Reference to your Business
Rules list)
Related

Non-Functional

requirements

Interface friendly

Usability,

Performance, Security:
(Any

non-functional

requirements that are specific to


this Use Case rather than the
system as a whole)
Project:

The requirements and design of the 'customer-friendly' e-shop for a computer company

Author:

Wang Jianping

Date:

26/10/03 08:11

Wang, Jianping
MSc Information Systems

58

The requirements and design of the 'customer-friendly' e-shop for a computer retailer
Select and order
Use Case Name:

Select and order

(The name as it appears in the


Use Case Model)
Primary Actor:

Customer

(Actor that initiates Use Case)


Other Actors:

None

Value Proposal to Actor(s)


(The goal of the Use Case from

Users can select and order the products they like

the Actors perspective)


Basic Course of Events:

This use case begins when the user selects the product he likes. He can choose the amount he wants to order. Then if he wants to
buy something else, he can repeat the selection process.

(The Normal Flow)

After he finishes selection, he can check the list and begin to order. He needs to input the receivers address, name, telephone
number and so on. At the same time, he will get an order number which can be used to check order state later.
Alternative Paths:

Select from latest products, hot products being visited, hot products being sold

(Other paths through the use


case which result in a successful
outcome typically variations to
the basic course of events,
determined by the actor and their
needs).
Exception Paths:

If the user dislikes buying the products, he can clear any or all the products he has selected.

(Other paths through the use


case

which

unsuccessful

result

in

outcome

If the customer has selected some products but he does not want to buy this time, he can store them and order next time.

an

typically when something goes


wrong)
Assumptions:

There are enough amounts of each product to sell.

Pre-conditions:

User has log in the system

Post-conditions:

After the user orders the products, the quantity of the product being sold will be updated.

Related Business Rules:


(Reference to your Business

The customer and the receiver need not to be the same person.

Rules list)
Related

Non-Functional

requirements

Usability,

Performance, Security:
(Any

Interface friendly
The picture of the product can be shown

non-functional

requirements that are specific to


this Use Case rather than the
system as a whole)
Project:

The requirements and design of the 'customer-friendly' e-shop for a computer company

Author:

Wang Jianping

Date:

26/10/03 08:11

Wang, Jianping
MSc Information Systems

59

The requirements and design of the 'customer-friendly' e-shop for a computer retailer
Products Query
Use Case Name:

Products Query

(The name as it appears in the


Use Case Model)
Primary Actor:

Customer

(Actor that initiates Use Case)


Other Actors:

None

Value Proposal to Actor(s)


(The goal of the Use Case from

User can find product by inputting part of the name of the product

the Actors perspective)


Basic Course of Events:

This use case begins when the user inputs part of the name of the product he likes. The product will be found and then the user
can select the product.

(The Normal Flow)


Alternative Paths:

None

(Other paths through the use


case which result in a successful
outcome typically variations to
the basic course of events,
determined by the actor and their
needs).
Exception Paths:

If the user knows nothing about the product and inputs nothing, the system will list all of the products.

(Other paths through the use


case

which

unsuccessful

result

in

outcome

an

typically when something goes


wrong)
Assumptions:

User knows the product and just cant remember the full name of the product.

Pre-conditions:

User needs to go into the main page..

Post-conditions:
Related Business Rules:
(Reference to your Business

Current users number less than 255

Rules list)
Related

Non-Functional

requirements

Usability,

Performance, Security:
(Any

Interface friendly
The picture of the product can be shown

non-functional

requirements that are specific to


this Use Case rather than the
system as a whole)
Project:

The requirements and design of the 'customer-friendly' e-shop for a computer company

Author:

Wang Jianping

Date:

26/10/03 08:11

Wang, Jianping
MSc Information Systems

60

The requirements and design of the 'customer-friendly' e-shop for a computer retailer
Check order state
Use Case Name:

Check order state

(The name as it appears in the


Use Case Model)
Primary Actor:

Customer

(Actor that initiates Use Case)


Other Actors:

None

Value Proposal to Actor(s)


(The goal of the Use Case from

Users can select and order the products they like

the Actors perspective)


Basic Course of Events:

This use case begins when the user wants to check his order state. User inputs the order number and then gets the information
about the state of the order he made. There are two types of order states, one is that the order is being handled and the other is

(The Normal Flow)

that the order has been done.

Alternative Paths:

None

(Other paths through the use


case which result in a successful
outcome typically variations to
the basic course of events,
determined by the actor and their
needs).
Exception Paths:

If the user inputs wrong order number, the system will remind the user that the order number is wrong. And the user needs to

(Other paths through the use


case

which

unsuccessful

result

in

outcome

input the correct order number.

an

typically when something goes


wrong)
Assumptions:

The user can remember his order number.

Pre-conditions:

The user has ordered some products and got an order number.

Post-conditions:
Related Business Rules:
(Reference to your Business

The staff of QD should input the information about the result of the order in time.

Rules list)
Related

Non-Functional

requirements

Interface friendly

Usability,

Performance, Security:
(Any

non-functional

requirements that are specific to


this Use Case rather than the
system as a whole)
Project:

The requirements and design of the 'customer-friendly' e-shop for a computer company

Author:

Wang Jianping

Date:

26/10/03 08:11

Wang, Jianping
MSc Information Systems

61

The requirements and design of the 'customer-friendly' e-shop for a computer retailer
Latest news
The news is classified into several levels and shown in order of importance. After the user clicks the title of the news, the details will be shown.
Use Case Name:

Latest news

(The name as it appears in the


Use Case Model)
Primary Actor:

Customer

(Actor that initiates Use Case)


Other Actors:

None

Value Proposal to Actor(s)


(The goal of the Use Case from

Users can get the latest news in time and know the priority of the news

the Actors perspective)


Basic Course of Events:

This use case begins when the user enters the website. The news is shown to the user, the more important the news is, the higher
position the news appears.

(The Normal Flow)


Alternative Paths:

None

(Other paths through the use


case which result in a successful
outcome typically variations to
the basic course of events,
determined by the actor and their
needs).
Exception Paths:

None

(Other paths through the use


case

which

unsuccessful

result

in

outcome

an

typically when something goes


wrong)
Assumptions:

Users usually read news from upper to lower position.

Pre-conditions:

The QDs staff input news in time and rank them in terms of importance.

Post-conditions:
Related Business Rules:
(Reference to your Business
Rules list)
Related

Non-Functional

requirements

Interface friendly

Usability,

Performance, Security:
(Any

non-functional

requirements that are specific to


this Use Case rather than the
system as a whole)
Project:

The requirements and design of the 'customer-friendly' e-shop for a computer company

Author:

Wang Jianping

Date:

26/10/03 08:11

Wang, Jianping
MSc Information Systems

62

Você também pode gostar