Académique Documents
Professionnel Documents
Culture Documents
Fall 2008/2009
1
Table of Contents
Project Drivers
1. The Purpose of the Product 3
2. Clients, Customers and other Stakeholders 4
3. Users of the Product 5
Project Constraints
4. Mandated Constraints 9
5. Naming Conventions and Definitions 10
6. Relevant Facts and Assumptions 10
Functional Requirements
7. The Scope of the Work 11
8. The Scope of the Product 12
9. Functional Requirements 14
Non-Functional Requirements
10. Look and Feel Requirements 23
11. Usability Requirements 23
12. Performance Requirements 23
13. Operational Requirements 24
14. Maintainability and Portability Requirements 24
15. Security Requirements 24
2
Project Drivers
Goals of project
Implementing this Clothes Recommendation System, company can
understand customers’ preferences easier. Therefore, the company can choose
to produce those favorite clothes more so as to reduce the cost of scarping the
unsold inventories or the cost of storing these products. They can also improve
the customer satisfaction and increase the sale volume by the customized
suggested clothes, which are suitable for the customers and they are likely to buy
the products.
Moreover, the company can reduce 15% of costs on marketing research
stages.
The key functionalities of our system are handling recommendation requests
and sending personal newsletters. Customers can request the clothes
recommendations through the Internet or the terminals in the shops. The system
will then generate the suggestions based on the information mentioned above.
The personal newsletters would be sent periodically, which contain the suggested
new arrivals.
3
2. Client, Customers and other Stakeholders
Customer
Customers are the major stakeholders of the system. After registering as
a member of the clothes company, the customer can receive customized
clothes recommendation through the system. They can also receive personal
newsletter which is generated by the system. And the personal newsletter will
contain the new arrival that match with them.
Clothes Company
The clothes companies would be another key stakeholder. It is because the
companies can increase both the sales volume and customers’ satisfaction by
implementing this system. They may also reduce 15% of costs on marketing
research. Therefore, the system can create more profit for the companies.
Moreover, the system also helps the company to enhance the brand name as
well as to achieve a better competitive position by the customized service
Sales Staff
Those sales staffs are also benefited from this system. The system can
improve their productivity, since they can save time to ask for necessary
customers’ preference. Also the system can help the staff to improve the
customers’ satisfaction because of the right clothes they can suggest to the
customers.
Fashion Designer
The fashion designer classifies clothes in the company clothes database
into different categories. The fashion designer determines the types of clothes
recommended to customers by designing the matching principle for the
matching system to match the clothes and the customers. In addition, having
the system, they can spend less time on determining customers’ preference,
and also they can produce more popular clothes.
4
3. Users of the Product
List of Actors:
1. Customer
2. Matching System
3. Company Sales Database
4. Customer Database
5. Company Clothes Database
6. Purchasing History Database
7. Technicians
8. Fashion Specialist
Actor Specification
Actor Name: Customer
Type: Primary Personality: I, R Abstract: No
Role Description:
A customer is a person who has opened a membership account or would like to open an
account. The customer is the main reason for the existence of clothes recommendation
system. The customer interacts with the system to obtain recommendation through
company webpage or terminals inside the shops. The customer also receive personal
newsletter generated by the recommendation system.
Actor Goals:
5
Actor Specification
Actor Name: Matching System
Type: Secondary Personality: E, R Abstract: No
Role Description:
A matching system is a system which matches the data of the clothes with different
customers. The system retrieves data from different systems and actors and sends the
result to the clothes recommendation system. This system is used to match the clothes
with the customers, based on their style, physical appearance, etc.
Actor Goals:
Actor Specification
Actor Name: Company Sales Database
Type: Secondary Personality: E Abstract: No
Role Description:
A company sales database stores data about the company sales. The company sales
database provided information about the popularity of the recommended clothes. This
information is required because the clothes recommendation is listed in the order of the
clothes popularity.
Actor Goals:
6
Actor Specification
Actor Name: Customer Database
Type: Secondary Personality: E,R Abstract: No
Role Description:
A customer database is a database which stored the data of the customer. The customer
database exists because storing the customers’ data can help the system to provide the
most suitable service to them. Customer can also edit the data through the web or
terminals. And the system also gets the customer’s email address from this database in
order to provide personal newsletter to the customer.
Actor Goals:
Actor Specification
Actor Name: Company Clothes Database
Type: Secondary Personality: E, R Abstract: No
Role Description:
The company clothes database is a database that stores the clothes items that the
company sells, including shirts, skirts, socks, etc. When there are new clothes, the
database will be updated. This database works with Purchasing History Database to
provide information for Matching System.
Actor Goals:
Keep the up-to-date information on all the clothes that company has
Provide source to the matching system
Use Cases Involved with:
7
Actor Specification
Actor Name: Purchasing History Database
Type: Secondary Personality: E, R Abstract: No
Role Description:
A Customer Purchasing History Database is a database which records each and every
purchasing history of an individual customer. This system is crucial for the Matching
System, which compares latest stock to customer’s purchasing history, preference, advice
from Faison Specialists and more. The database provides valuable sources to creating
meaningful matching results for Customers.
Actor Goals:
Actor Specification
Actor Name: Technicians
Type: Secondary Personality: E Abstract: No
Role Description:
A technician is a person who is responsible for the supporting work of IT and machine
related things. They include the terminals and the company webpage. He maintains the
system so that the system can function normally. He also needs to update the system,
both hardware and software from time to time.
Actor Goals:
8
Actor Specification
Actor Name: Fashion Specialist
Type: Secondary Personality: E Abstract: No
Role Description:
A fashion designer is a person who updates company clothes database and determines
the matching principle. The fashion designer classifies clothes in the company clothes
database into different categories. Each category of clothes fits people of a particular
physical characteristic. The classification of clothes allows the matching system to match
clothes to customers according to their physical characteristics.
Actor Goals:
Project Constraints
4. Mandated Constraints
Security is one of the constraints of the system. The clothes
recommendation system has to make use of a lot of customers’
personal details in order to make clothes recommendations.
Therefore, a high security has to be maintained in the system in
order to protect the customers’ privacy. The security will be using
SSL.
Since the system requires the Company Sales Database which is
created by other system within our company. The Company Sales
Database must have enough sales information for our system to
process the popularity of the recommended clothes.
Customers should have network connections and web browsers with
Java installed in their personal computers.
All staffs are well-trained to teach new customers about this system.
9
5. Naming Conventions and Definitions
Company Sales Database
A company sales database stores data about the company sales. This
database is created by other systems inside the company. The
company sales database provided information about the popularity of
the recommended clothes.
Company Clothes Database
The company clothes database is a database that stores the clothes
items that the company sells, including shirts, skirts, socks, etc. When
there are new clothes, the database will be updated. This database
works with Purchasing History Database to provide information for
Matching System.
Customer Database
A customer database is a database which stored the data of the
customer. The customer database exists because storing the
customers’ data can help the system to provide the most suitable
service to them. This database also provides email address for the
system to generate personal newsletters.
Purchasing History Database
A Customer Purchasing History Database is a database which records
each and every purchasing history of an individual customer. This
database is also created by other systems within our company. This
database will be updated when the customers bought new clothes by
other systems. This database should have enough information for our
system to process the matching.
10
The online payment in our system is provided by other trustful 3rd
parties, such as HSBC. And our system is not obligated to any
transaction problems.
11
Functional Requirements
Functional
7. Requirements
The Scope of the Work
7. The Scope of the Work
12
8. The Scope of the Product
13
14
8. The Scope of the Product
9. Functional Requirements
15
Actors Customer[P], Customer database[S]
Description Existing customers may change personal data, fill in types of clothes
they want and preferences on clothes.
Pre-conditions Screen of editing personal information is on.
Flow of Events 1. Include IUC-001 Log in and Verify Customer.
16
2. System displays a choice menu.
3. Customer selects for a clothes recommendation
4. Customer inputs some primary constraints, such as type of clothes.
5. System retrieves necessary data including customers’ preferred
clothes types, physical characteristics, company purchased clothes
from Customer Purchasing History Database and Customer
Database and Company Clothes Database respectively.
6. System sends all the retrieved data to the Matching System for
processing the recommendations
7. Matching System sends back the recommendation results.
8. System retrieves sales data from the Company Sales Database.
9. System calculates popularity of recommended clothes based on
sales data and sorts the received recommendation results in
decreasing order of popularity.
10. System displays recommended clothes.
11. If Customer inputs some additional constraints, such as the price
range of the clothes.
11.1 System removes the irrelevant results from the list.
11.2 Go to step 10
12. Customer chooses clothes for purchase.
13. If the clothes are sold out, execute to UC-003-A1.
14. Customer enters the transaction details.
15. If Customer wishes to print the transaction receipt and discount
coupons for next time, extend to UC-003-E1
16. Thank you screen is on.
Post-conditions The main menu is displayed again.
Alternative Flows Company may not have enough inventories at that time.
17
Use Case ID UC-003-A1
Use Case Request Recommendation Alternative for Sold Out
Actors Customer[P], Matching System[S], Customer database[S],
Purchasing history Database[S], Company sales database[S],
Company clothes database[S]
Description The clothes that the customer has chosen are short of inventories.
Customer needs to place a special order for buying the clothes.
Insertion Point UC-003; flow 17
Pre-conditions System notices that the chosen clothes is sold out at that time.
Alternative Flow 1. System informs customer that the clothes is out of stock
of Events
2. System asks customer of whether to reserve the clothes
3. If customer chooses to reserve the clothes
3.1 The clothes is automatically reserved
3.2 The system displays an acceptance screens and sends notification
email to customer when the clothes is available
3.3 Go to step 4
4. The system reminds manager to place an order for the sold-out item
Post-conditions The main menu is displayed again.
Priority High
Non-Functional Sold out items will be repurchased less than a week.
Requirements
Assumptions /
Source Customer Services Manual
18
Use Case ID UC-003-E1
Use Case Print Receipt Discount Coupon
Additional Actors /
Description Allows customer to print the transaction receipt and the discount
coupons for them to use next time.
Extending Use Case UC-003 Request recommendation
Extension Point UC-003; flow step 20
Guard Condition Transaction Receipt and Discount Coupon printing options are
chosen and enabled.
Flow of Events 1. The system ask the customer if he/she would like a printed
transaction receipt and discount coupon
19
Use Case ID UC-004
Use Case Update company clothes database
Actors Company Clothes Database[S], Fashion Specialists[S]
Description Fashion specialists classify new clothes and update the detailed
information to Company Clothes Database according to the
categories.
Pre-conditions Company has purchased new clothes
Flow of Events 1. New clothes arrive
20
Use Case ID UC-005
Use Case Maintain Terminals and Webpage
Actors Technician[S]
Description Technician repairs the terminals and web servers, and makes
necessary updates to the hardware or software.
Pre-conditions Terminals or web servers occur errors or broken down
Flow of Events 1. System sends acknowledgements to technician
21
Use Case ID UC-006
Use Case Send Personal Newsletter
Actors Customer[P], Customer Database[S], Matching System[S],
Company Clothes Database[S], Purchasing History Database[S]
Description Bi-weekly Newsletter is distributed to customer. Content of
newsletter includes personalized recommendation and pre-written
fashion articles.
Pre-conditions System meets the scheduled time to distribute the newsletter
Flow of Events 1. System retrieves mailing list of customers who have subscribed
to newsletter.
22
Use Case ID IUC-001
Use Case Log in and Verify Customer
Description Customer logs in; system verifies the customer and checks the
password.
Including Use Cases UC-002 Retrieve Customer Data;
UC-003 Request recommendation
Pre-conditions System notices that customer entered into webpage or terminals.
Alternative Flow of 1. System asks customer to input account number and password.
Events
2. Customer enters account number and password.
3. If account number does not exist or password is incorrect
3.1 If customer enters incorrect password 5 times
3.1.1.Customer account is locked for an hour.
3.1.2.The process ends and main menu displays again.
3.2 System displays error message.
3.3 Go back to step 1
4. System displays the welcome back message.
Post-conditions System is back on the next flow step right after this included use
case was invoked.
Alternative Flows Customer inputs wrong account numbers or passwords
Priority High
Non-Functional The system can verify the customer for login within 2 seconds.
Requirements
Assumptions Customer can understand the language we used.
Source Operational Procedures Manual
23
NON-FUNCTIONAL REQUIREMENTS
24
13. Operational Requirements
13.1 Technical Environment:
The system must be able to retrieve and integrate data from various
databases. This is because the clothes recommendation is made based
on many different data (e.g. customers’ preference, purchasing history).
Therefore the system should be able to process a large amount of data.
13.2 Physical Environment:
The system must be accessible through web browsers and the terminals
in the stores. This allows users to assess to the system more easily and
brings them convenience.
25