Top Banner
The requirements and design of the ’customer-friendly’ e-shop for a computer retailer Wang, Jianping MSc Information Systems School of Computing 2002/2003
68

The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

Aug 19, 2018

Download

Documents

duongkhanh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping

MSc Information Systems

School of Computing

2002/2003

Page 2: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

I

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.

Page 3: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

II

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

Page 4: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

III

Content table Chapter 1: Project Introduction

1.1 Background 1 1.2 Objectives 1 1.3 Minimum Requirements 1 1.4 Deliverables 2 1.5 Background research 2

1.5.1 E-commence and its components 2 1.5.2 E-shop 4 1.5.3 Customer-centred theory 5

Chapter 2: Approach 6

2.1 Incremental and iterative approach 6 2.2 Planed project schedule 8 2.3 Executed project schedule 9

Chapter 3: A case study 9 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

Page 5: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

IV

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

Page 6: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

V

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 46 Appendix B: Objectives, deliverables and agrees marking scheme 47 Appendix C: A copy of interim report sheet 48 Appendix D: Reference books and URL 50 Appendix E: Current model 52 Appendix F: Vision 53 Appendix G: use case description 54

Page 7: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

1

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

Page 8: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

2

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 e-commence 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 e-commerce.

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

Page 9: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

3

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 customer�s 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

Page 10: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

4

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.

Page 11: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

5

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 can�t 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 can�t 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.

Page 12: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

6

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 user�s 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 user�s 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.�

Page 13: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

7

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 user�s 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

Page 14: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

8

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 system�s functional and non-functional requirements can achieve the user�s 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.

Page 15: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

9

Weeks Task Description

1

2

3

4

5

6

7

8

9

10

11

12

1 Reading material X X X X X X X

2 Business modelling and

requirements capture

X X

3 Analysis –level UML

modelling

X

4 Design model architectural

solution

X

5 Build proof of architecture

prototype

X

6 Build UI prototypes X

7 Requirements elaboration X

8 E-R model X

9 Functional detailed design X

10 Build modules X X

11 Build Key Reports X

12 Assemble and test X

13 Field Testing/user test X

14 Refine system based on field

tests

X

15 Evaluate the prototype X X

16 Report writing X X X X X X X X X

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

Page 16: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

10

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 QD�s 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 customer�s 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 on-time 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 computer�s 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

Page 17: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

11

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 QD�s 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 customer�s 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 QD�s engineers. When it is their turn, what they want to buy may have sold out. What�s 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

Page 18: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

12

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 product�s name which they want to buy, but it is not easy for QD�s 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 QD�s 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

Page 19: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

13

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 haven�t 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 QD�s 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.

Page 20: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

14

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 parts�the 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 side�s requirements, which include functional requirements and non-functional 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 side�s requirements, which are shown in the small rectangle.

Page 21: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

15

big bussiness cus tomer

small business customer

fam ily c ustomer

Diagram 4.1.1 Functional requirements

register and login

hot products being visited

hot products being sold

search for specific produc t Input product detail

get relevant component's information

input relevant component's information

check order state Input order handled information

Account system

product information of warehouse

select products and order

autom atic e-mai l

input im formation relevant to autom atic e-mail

download software

upload software

retail erc ustomer

read latest news

Input news and rank them

e-shop

Page 22: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

16

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 3.3)

The function of customer-friendly e-shop

Select and order Selection and purchase is not convenient for customers Check order state

It is inconvenient for customer to search for products

Products Query

It is not easy to for customers to maintain their computers

Download relevant software

Show relevant components and types based on customer types

Show the most popular products being visited

It is not convenient for user to get advice

Show the most popular products being sold

Show latest news

It is not convenient for user to 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.

Page 23: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

17

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 receiver�s 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

Page 24: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

18

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 processor�s 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 system�s 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 user�s 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.

Page 25: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

19

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 don�t 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.

Page 26: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

20

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 QD�s manager estimates that QD will lose 6000 yuan/per-day the if the e-shop can�t 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 world�client server architecture and three-layer architecture.

Page 27: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

21

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 parts�client 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.

Page 28: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

22

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

Page 29: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

23

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 objects�boundary 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 hasn�t 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.

Menu box

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

Display results box

Product information for purchase box

Page 30: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

24

Diagram 5.3.1 Register

customer register screen

register result screen

Cus tom er DBregister

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 user�s login time and the user�s login IP will be recorded into the database.

Diagran 5.3.2 Login

customer Login sc reen

Login result

1. enter login screen 2. username() password()

3 username()pass word()

Customer DBLogin4. correct or not

5. suc cess or fail

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 hasn�t logged in, the system will remind the user to login. If the user has

Page 31: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

25

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 product�s 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 doesn�t 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 receiver�s 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 receiver�s 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.

Page 32: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

26

Diagram 5.3.3 Select and order

Customer select screen

Order

Customer DBpress "select" button

shopping c art

Check login state

Clear result

choose amount and confirm

Clear

basket DBrevise selected productsselec ted products list

Order screen

Order DB

confirm order

reciver s creen receiver DBinput receiver ' information and check

order screen

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 component�s name, number of types of each component and the total number of types of the whole products relevant to the user type.

Page 33: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

27

5.3.4 Show the catalog information relevant to the user type

customer user type screen select user type

catalog screen

find ctalog relevant to the user type

product DB

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 product�s 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 product�s name include the characters that user input, now product�s name will be shown in the new window.If the user input nothing, all of products name will be shown.

Page 34: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

28

customer user type screen select user type

catalog screen product DB

find c talog relevant t o t he user type

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 hasn�t 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�.

Page 35: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

29

Diagram 5.3.6 Check order state

Custom er Query screen Order DB

show results

Input and query

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.

Page 36: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

30

customer main page select user type

find the top 5 popular products being vis it ed

product DB

visit ed the products and chage the times being visi td

t op five popular poducts being visited

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.

.

Page 37: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

31

Diagram 5.3.8 Show the most popular products being sold

customer main page select user type

find the top 5 popular products being sold out

product DB

visited the products and chage the times being s old out

top five popular poducts being sold out

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 needn�t 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.

Page 38: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

32

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.

component

receiver

product-and-basket

customer

basket order

product 1

0..1 1 1

0..*

1

1..*

1 1

0..*

1..*

1..*

**

Page 39: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

33

Figure 6.2 Interface implementation

Page 40: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

34

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 sponsor�s 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 QD�s 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�.

Page 41: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

35

Show Components relevant to user type

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 signed in!" response.write " Please log in if you want to order something!" response.end end if

Thirdly access data from database

Select user type

registe order query

login Product query

Latest news

Latest products

Top product being visited

Top product being sold

Top product being visited of the component

Select and order products

Product list Top product being sold of the component

Page 42: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

36

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 developer�s ability should be considered.

The candidate database includes Oracle, mySQL,Sql 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.

Page 43: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

37

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. The feature is as follows:

Feature SQL Server 2000 Microsoft Access 2000

database size Not Supported Supported

database size 1,048,516 TB 2 GB plus linked tables size objects in a database 2,147,483,647 32,768 user name length 128 20 password length 128 14 table name length 128 64 column name length 128 64 index name length 128 64 Number of concurrent users limited by available memory 255 columns per table 1024 255 table size limited by available storage 1 GB number of indexes in a table 250 32 number of columns in an index 16 10 bytes per row 8060 2000 number of tables in a query 256 32 columns per SELECT statement 4096 255

nested subqueries 32 50 number of enforced relationships 253 32

SQL statement size 65,536 * Network packet size(4 KB, by default) approximately 64,000

SQL Select Yes yes Price High 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 doesn�t

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.

Page 44: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

38

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.

Page 45: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

39

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 couldn�t 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 didn�t 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 system�s test �

In this project, the developer tested every transaction�s 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�

Page 46: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

40

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 function�s requirements

Average score of the prototype

User registration 10 10

User login 10 10

Show relevant components and types based on customer types

10 9

Show the most popular products being visited

5 9

Page 47: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

41

Show the most popular products being sold

8.5 9

Select and order 10 8

Products Query 9 9.5

Check order state 8 6

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 8

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 9

Content awareness 10

Aesthetics 8

User experience 9

Consistency 9

Minimal user effort 8

Total score 53(about 88%)

Page 48: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

42

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 product�s name in Chinese into database, the developer found that the system couldn�t show product�s 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 of evaluation

The person who evaluates the prototype

Speed requirements

9 The developer and the 6 person who take part in the interview

Capacity requirements

10 The QD�s 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 Results of evaluation

The person who evaluates the prototype

System value estimates

8 The QD�s manager

Access control: 7 The developer

Virus control

0 The developer

Total score 15(about 50%)

Table 7.1.2.2.4 Evaluation of performance

Page 49: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

43

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 retailer�s 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%.

Page 50: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

44

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 developer�s 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 QD�s 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 help�and �automatic mail�.

8.2.3 The developer will design and implement the retailer side�s 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 interface�s aesthetics.

8.2.6 The developer will test if there are some problem of using Chinese.

Page 51: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

45

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 e-commerce 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 supervisor�s 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.

Page 52: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

46

Appendix B: Objectives, deliverables and agrees marking scheme

Page 53: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

47

Appendix C: A copy of interim report sheet

Page 54: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

48

Page 55: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

49

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

Page 56: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

50

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

Page 57: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

51

13.http://www.martinfowler.com/articles/newMethodology.html#N40035D

14 http://www.corba.ch/e/3tier.html

Page 58: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

52

Appendix E Current model

Compare different products and configuration and discuss with the engineer

Choose the products and configuration

Let QD's engineer to assemble the c omput er

Go back to show the products to the customer

Go to warehourse to find the components that the customer required

Have a look and check

Plan to order it

Find them?

y

Wait for the staff assemble the computer

Assemble the computer and install relevant software

Pay the computer and come back

Accept?

y

Finish and give to the customer

Go to QD

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

Introduce and recommend configuration and products

N

Discuss with QD's engineer

N

customerQD's s taff

Diagram 3.2 The current system

up date syst em

give update softw are to customer

rece ive the software and inst all it

Page 59: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

53

Appendix F Vision

Receive the computer and pay

Compare different products and configuration and discuss with the engineer

Go to warehourse to find the components that the customer required

Plan to order it

Visit the e-shop web-s ite

Find all of them

Assemble the computer and ins tall relevant software

Y

Send to the customer

Inform customer and recommand substitute

customer QD's staff

W hen customer needs to update software

download and ins tall it

Diagram 3.4 the expected business mode

Page 60: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

54

Appendix G: Use case description

* Use Case Name:

(The name as it appears in the Use Case Model)

User registration

* Primary Actor:

(Actor that initiates Use Case)

Customer

R Other Actors: None

R Value Proposal to Actor(s)

(The goal of the Use Case from the Actor�s perspective)

Customer can use it to register

R Basic Course of Events:

(The Normal Flow)

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.

Alternative Paths:

(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).

None

Exception Paths:

(Other paths through the use case which result in an unsuccessful outcome � typically when something goes wrong)

If the username has existed, the system will remind the user that the username has been used and the user has to 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:

(Reference to your Business Rules list)

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

Related Non-Functional requirements � Usability, Performance, Security:

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

Interface friendly

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

Author: Wang Jianping

Date: 26/10/03 08:11

Page 61: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

55

User login

(using www.comp.leeds.ac.uk/in21/UCDForm.doc) and an interaction diagram for the Basic Flow of Events.

* Use Case Name:

(The name as it appears in the Use Case Model)

User login

* Primary Actor:

(Actor that initiates Use Case)

Customer who has registered

R Other Actors: None

R Value Proposal to Actor(s)

(The goal of the Use Case from the Actor�s perspective)

Customer can login the system

R Basic Course of Events:

(The Normal Flow)

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.

Alternative Paths:

(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).

None

Exception Paths:

(Other paths through the use case which result in an unsuccessful outcome � typically when something goes wrong)

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

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:

(Reference to your Business Rules list)

Users can select and order products only after they login.

Related Non-Functional 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

Show relevant components and types based on customer types

Page 62: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

56

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:

(The name as it appears in the Use Case Model)

Show relevant components and types based on customer types

Primary Actor:

(Actor that initiates Use Case)

Customer

Other Actors: None

Value Proposal to Actor(s)

(The goal of the Use Case from the Actor�s perspective)

Customer can get the relevant information of his user type

Basic Course of Events:

(The Normal Flow)

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.

Alternative Paths:

(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).

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

Exception Paths:

(Other paths through the use case which result in an unsuccessful outcome � typically when something goes wrong)

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

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 � Usability, Performance, Security:

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

Interface friendly

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

Page 63: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

57

Use Case Name:

(The name as it appears in the Use Case Model)

Show the most popular products being visited

Primary Actor:

(Actor that initiates Use Case)

Customer

Other Actors: None

Value Proposal to Actor(s)

(The goal of the Use Case from the Actor�s perspective)

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

Basic Course of Events:

(The Normal Flow)

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.

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 a successful outcome � typically variations to the basic course of events, determined by the actor and their needs).

None

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 Non-Functional requirements � Usability, Performance, Security:

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

Interface friendly

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

Author: Wang Jianping

Date: 26/10/03 08:11

Page 64: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

58

Show the most popular products being sold

Use Case Name:

(The name as it appears in the Use Case Model)

Show the most popular products being sold

Primary Actor:

(Actor that initiates Use Case)

Customer

Other Actors: None

Value Proposal to Actor(s)

(The goal of the Use Case from the Actor�s perspective)

Customer can get the latest information of hot products being sold

Basic Course of Events:

(The Normal Flow)

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.

Alternative Paths:

(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).

None

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 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 � Usability, Performance, Security:

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

Interface friendly

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

Author: Wang Jianping

Date: 26/10/03 08:11

Page 65: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

59

Select and order

Use Case Name:

(The name as it appears in the Use Case Model)

Select and order

Primary Actor:

(Actor that initiates Use Case)

Customer

Other Actors: None

Value Proposal to Actor(s)

(The goal of the Use Case from the Actor�s perspective)

Users can select and order the products they like

Basic Course of Events:

(The Normal Flow)

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 receiver�s 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:

(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).

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

Exception Paths:

(Other paths through the use case which result in an unsuccessful outcome � typically when something goes wrong)

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

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

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 Rules list)

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

Related Non-Functional requirements � Usability, Performance, Security:

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

Interface friendly

The picture of the product can be shown

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

Author: Wang Jianping

Date: 26/10/03 08:11

Page 66: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

60

Products Query

Use Case Name:

(The name as it appears in the Use Case Model)

Products Query

Primary Actor:

(Actor that initiates Use Case)

Customer

Other Actors: None

Value Proposal to Actor(s)

(The goal of the Use Case from the Actor�s perspective)

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

Basic Course of Events:

(The Normal Flow)

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.

Alternative Paths:

(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).

None

Exception Paths:

(Other paths through the use case which result in an unsuccessful outcome � typically when something goes wrong)

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

Assumptions: User knows the product and just can�t 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 Rules list)

Current users number less than 255

Related Non-Functional requirements � Usability, Performance, Security:

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

Interface friendly

The picture of the product can be shown

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

Author: Wang Jianping

Date: 26/10/03 08:11

Page 67: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

61

Check order state

Use Case Name:

(The name as it appears in the Use Case Model)

Check order state

Primary Actor:

(Actor that initiates Use Case)

Customer

Other Actors: None

Value Proposal to Actor(s)

(The goal of the Use Case from the Actor�s perspective)

Users can select and order the products they like

Basic Course of Events:

(The Normal Flow)

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.

Alternative Paths:

(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).

None

Exception Paths:

(Other paths through the use case which result in an unsuccessful outcome � typically when something goes wrong)

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

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 Rules list)

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

Related Non-Functional requirements � Usability, Performance, Security:

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

Interface friendly

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

Author: Wang Jianping

Date: 26/10/03 08:11

Page 68: The requirements and design of the ’customer-friendly… · The requirements and design of the ’customer-friendly’ e ... a transaction system that keeps track of all ... The

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

Wang, Jianping MSc Information Systems

62

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:

(The name as it appears in the Use Case Model)

Latest news

Primary Actor:

(Actor that initiates Use Case)

Customer

Other Actors: None

Value Proposal to Actor(s)

(The goal of the Use Case from the Actor�s perspective)

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

Basic Course of Events:

(The Normal Flow)

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.

Alternative Paths:

(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).

None

Exception Paths:

(Other paths through the use case which result in an unsuccessful outcome � typically when something goes wrong)

None

Assumptions: Users usually read news from upper to lower position.

Pre-conditions: The QD�s 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 � Usability, Performance, Security:

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

Interface friendly

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

Author: Wang Jianping

Date: 26/10/03 08:11