Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 34 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
34
Dung lượng
2,54 MB
Nội dung
IS1210 My TVSE 06103 SE06103 SWD ass1 Introduction to Software Engineering (SWE102) 12 Tieu luan MINISTRY OF EDUCATION AND TRAINING FPT UNIVERSITY SOFTWARE DESIGN SPECIFICATION for Online Tech-Shop Student Supervisor Subject Code Course information HE130022 – Phạm Quang Huy Mr Nguyễn Tất Trung SWD391 12 Tieu luan A Introduction Project Overview: Online Tech-shop is an web-based application that provides a system to allow vendors to manage their own technology store in an electronic way It also provides a website for their customers to browse technology products Project Scope: Online Tech-shop has group users: customer, staff, administrator The application consists of main microservices: Microservice Description Account microservice - Handle authentication and authorization - Provide account management for admin, staff and customer - Product inventory management for admin, staff Online catalog microservice - Product catalog list for customer browsing Shopping cart microservice - Provide shopping cart feature to customer Order procesing microservice - Handle order action of customer including checkout cart, payment - Provide order logging feature to staff and admin 12 Tieu luan B Business flow I Activity Diagram Customer activity diagram 12 Tieu luan II Solution requirements 2.1 Functional Requirement 2.1.1 Authentication - If customers want to buy something, they must log in or sign in - The Sales system should automatically log in if the customer does not log out - Customer account will be automatically logged out if not active in 10 minutes - Username must be email address - Password must be at least characters, at least uppercase character, number 2.1.2 User * Administrator - The administrator has permission to add, edit, delete staff * Staff - The staff has permission to edit, delete customers - The staff has permission to add, edit, delete products * Customer - The customer can browse products and place an order 2.1.3 Product - Display product detail - Must specify availability (In stock/Out of stock) - Display related products in detail page 2.1.4 Cart - Display number of products and the total price that users added - Users can add more, edit or delete products in cart 12 Tieu luan 2.1.5 Order - Display payment method: COD, Visa card, - Information of receiver: Full name, phone number, email, address - Orders can be exported into invoices - Customer can view status of order (before deliver/delivering/done/cancel) 2.2 Non-Functional Requirement 2.2.1 Usability - Display the status of the product is in stock or out of stock - Fault tolerance: Backup data to cloud storage, in case of data loss - Real-time error check: when user sign up or work requiring lots of input fields, warn user until all input data is valid - To pay, the customer will have steps: + Click button “Buy”, the product will be added to cart + Click button “Cart”, it will show the product’s name, quantity, the total price + Click button “Pay”, it will display the customer's information input form, payment method 2.2.2 Security 2.2.2.1 Account - Confidential data (password) stored in DB must be encrypted 2.2.2.2 Payment method - Do not store customer’s credit/debit card secure information (CSV number) 2.2.3 Performance - Response time must not exceed seconds each page 2.2.5 Availability - Hours of operation: 24/7 - Upgrade times within months 2.2.6 Maintainability 12 Tieu luan - Each periodic system upgrade will not take more than 30 minutes - Use camel case as the naming convention for variables, methods name 2.2.7 Portability - The system can be deployed on various platforms: Linux, Windows, and macOS - This website can be accessed via browsers: Chrome, Opera, Edge, III Use case diagram 3.1 Account microservice Use case diagram – Account microservice (authentication and authorization) 12 Tieu luan Use case diagram – Account microservice (account management) 3.2 Online catalog Use case diagram – Product catalog microservice 3.3 Shopping Cart Use case diagram – Shopping cart microservice 3.4 Order processing 12 Tieu luan Use case diagram – Order processing microservice B System Architecture System Architecture diagram Design methodology: Heterogeneous pattern 12 Tieu luan Why: Tech-shop system consists of many features and components, so that heterogenerous is required to combine multiple design patterns Overall system architecture: Client-server pattern Why: Because this is an web-based online shopping system, the number of end-users is huge Therefore, there will be many clients requesting and receiving service client-server is required Back-end architecture: Microservices pattern Why: Online Tech-Shop has multiple feature groups so that I decided to divide them into services and each service should be deployed independently of each other microservices pattern is a good choice Internal service architecture: Layered pattern Why: The application can be scaled up and out with layered pattern The purpose of each layer is also presented clearly through design, this simplifies effort to understand the system of developers C Detailed Design I Database Design 12 Tieu luan View account list: Screen Mockup View account list: Sequence Diagram 12 Tieu luan View account list: Class Diagram 12 Tieu luan Online catalog microservice 2.1 View product list View product list: Screen Mockup View product list: Sequence Diagram 12 Tieu luan View product list: Class Diagram 2.2 Add product Add product: Sequence Diagram 12 Tieu luan Add product: Class Diagram 2.3 Delete product Delete product: Sequence Diagram 12 Tieu luan Delete product: Class Diagram 12 Tieu luan Shopping Cart microservice 3.1 Add to cart Add to cart: Screen Mockup 12 Tieu luan Add to cart: Sequence Diagram Add to cart: Class Diagram 12 Tieu luan 3.2 Edit cart item quantity Edit cart item: Sequence Diagram Edit cart item: Class Diagram 12 Tieu luan 3.3 View cart items View cart items: Screen Mockup 12 Tieu luan View cart items: Sequence Diagram View cart items: Class Diagram 12 Tieu luan Order processing microservice 4.1 Place an order Place an order – Step 1: Screen Mockup 12 Tieu luan Place an order – Step 2: Screen Mockup 12 Tieu luan Place an order: Sequence Diagram Place an order: Class Diagram 12 Tieu luan 4.2 View order history View order history: Screen Mockup 12 Tieu luan ...MINISTRY OF EDUCATION AND TRAINING FPT UNIVERSITY SOFTWARE DESIGN SPECIFICATION for Online Tech- Shop Student Supervisor Subject Code Course information HE130022 – Phạm Quang Huy Mr Nguyễn Tất... management for admin, staff and customer - Product inventory management for admin, staff Online catalog microservice - Product catalog list for customer browsing Shopping cart microservice - Provide shopping... Overview: Online Tech- shop is an web-based application that provides a system to allow vendors to manage their own technology store in an electronic way It also provides a website for their customers