MINISTRY OF EDUCATION AND TRAINING HO CHI MINH CITY UNIVERSITY OF TECHNOLOGY AND EDUCATION GRADUATION THESIS SOFTWARE ENGINEERING BUILDING WEBSITE SELLING ELECTRONIC PRODUCTS WITH ANGULAR LECTURER: M. NGUYEN DANG QUANG STUDENT: NGUYEN TRUNG TRIEN SKL012407 Ho Chi Minh City, 2023 HO CHI MINH CITY’S UNIVERSITY OF TECHNOLOGY AND EDUCATION FACULTY OF INTERNATIONAL EDUCATION ********************* CAPSTONE PROJECT BUILDING WEBSITE SELLING ELECTRONIC PRODUCTS WITH ANGULAR Instructor: M. NGUYEN DANG QUANG NGUYỄN TRUNG TRIEN 18110058 Class: 18110CLA Ho Chi Minh City, 2023 Page 1 HCMC UNIVERSITY OF TECHNOLOGY AND EDUCATION SOCIALIST REPUBLIC OF VIETNAM FACULTY INTERNATIONAL EDUCATION Independence – Freedom - Happiness ********* ********* PROJECT MISSIONS Student Name: Nguyen Trung Trien _______________ ID: 18110058 Specialization: Software Engineering Thesis name: Building Website Selling Electronic Products with Angular Implementation Content Theory: Research and learn Angular and support libraries. Practice: Survey on other websites' data, functionality, and interface Create a website development roadmap based on the previously mentioned survey results.
Create and analyze databases Construct and design systems and interfaces. Processing time: 15 weeks (Starting from 11/9/2023 to 25/12/2023) Student's signature: __________________________________________________ _______________________________________________________________________ Page 2 HCMC UNIVERSITY OF TECHNOLOGY AND EDUCATION SOCIALIST REPUBLIC OF VIETNAM FACULTY INTERNATIONAL EDUCATION Independence – Freedom - Happiness ********* ********* INSTRUCTOR COMMENTARY Student Name: Nguyen Trung Trien ID: 18110058 Major: Information Technology Project name: Building Website Selling Electronic Products with Angular Instructor: M. Nguyen Dang Quang COMMENTARY 1. About the topic content and workload:.
Consent to be defended before the council or not?. ) HCMC, Date ……Month …… Year …. Instructor _______________________________________________________________________ Page 3 HCMC UNIVERSITY OF TECHNOLOGY AND EDUCATION SOCIALIST REPUBLIC OF VIETNAM FACULTY OF HIGH QUALITY TRAINING Independence – Freedom - Happiness ********* ********* REVIEWER COMMENTARY Student Name: Nguyen Trung Trien ID: 18110058 Major: Information Technology Project name: Building Website Selling Electronic Products with Angular Reviewer: COMMENTARY 1. About the topic content and workload: .Consent to be defended before the council or not?.
HCMC, Date ……Month …… Year …. Reviewer _______________________________________________________________________ Page 4 ACKNOWLEDGEMENT I would like to thank Mr. Nguyen Dang Quang - Lecturer of Faculty of International Education of HCMUTE, for helping me a lot in choosing topics and guiding me to perform, give comments, provide references in the process of implementing this capstone project. I also thank the teachers from the Faculty of Information Technology for helping and answering questions during the implementation process.
At the same time, thank you to the previous classmates for providing a lot of information and references; classmates together to exchange experiences to implement the topic better. I am looking forward to receiving your comments and suggestions to improve this project. Sincerely thank! Ho Chi Minh City, Nguyễn Trung Triển – 18110058 _______________________________________________________________________ Page 5 TABLE OF CONTENTS PROJECT MISSIONS. 5 TABLE OF CONTENTS.
6 TABLE OF PICTURES .1 About the Store: .3 Name of project: Building Website Selling Electronic Products with Angular. 11 CHAPTER 2: CURRENT STATE ANALYSIS. 31 CHAPTER 4:TECHNOLOGY IN USE .1 Database management system .2 Front-End: Angular 12 .1 Database tables detail .2 Relational database schema .2 Non-functional testing .5 Install and run the application .4 Future direction of development. 68 _______________________________________________________________________ Page 7 TABLE OF PICTURES Picture 2.
59 _______________________________________________________________________ Page 9 CHAPTER 1: INTRODUCTION 1.1 About the Store: The rapid growth of e-commerce has created a huge demand for online shopping websites that are user-friendly, secure, and scalable. Angular is a popular web application framework that offers many advantages for building such websites, such as modularity, reusability, performance, and testing. However, developing an e-commerce website with Angular also poses some challenges, such as integrating with backend services, handling payment processing, and optimizing for SEO. Therefore, this thesis aims to explore the best practices and solutions for building a website selling electronic products with Angular.
The main objectives of this thesis are: To design and implement a responsive and attractive user interface for the website using Angular components, directives, pipes, and services. To create a RESTful API to provide data and functionality for the website, such as product catalog, shopping cart, order management, and authentication. The expected outcomes of this thesis are: A fully functional e-commerce website that allows users to browse, search, and buy electronic products online. A comprehensive documentation of the website's architecture, design, implementation, and testing.
A critical evaluation of the website's performance, usability, security, and SEO. A discussion of the limitations and future work of the website.1 Functional requirements: Business functional requirements: - An online store must have the basics of a store. - Customers can buy items and view them. _______________________________________________________________________ Page 10 Functional system requirements: - Easy to use - Ensure security and speed in finding and buying for users.
- The website has all the features of a regular website. • Resources: + To take notes: Notepad (Windows). + To work: GitHub. • Tools for programming: + Language for making Shop: Angular.
+ Visual studio code + Microsoft SQL sever 1.3 Name of project: Building Website Selling Electronic Products with Angular 1.4 Project objectives: 1) Building a website to meet the prevailing online store demands. 2) Aspiring to develop a feature-rich, swiftly processing website. 3) Enhancing programming proficiency, creativity, and problem-solving acumen.5 Implementation steps 1) Conduct a survey of popular e-commerce websites based on criteria such as interface, features, and user experience. 2) Create a website development roadmap based on the previously mentioned survey results.
3) Create and analyze databases 4) Design front-end and back-end.6 Functions 1) Customers Create an account, log in Search and filter products View product details _______________________________________________________________________ Page 11 2) Admin Order processing Product management View statistics Managing website content and banners _______________________________________________________________________ Page 12 CHAPTER 2: CURRENT STATE ANALYSIS 2.1 Current Status Nowadays, online stores are becoming an indispensable part of the digital economy. Online stores are growing at breakneck speed and are changing the way consumers shop. Strong development of web store: Web store has become an important platform for web application developers to provide their products and services. The number of web applications provided on the web store is increasing, with a variety of application types, from utility applications, entertainment applications, learning applications, business applications,… Competition is increasingly fierce: The strong development of web stores also leads to increasingly fierce competition among web application developers.
To attract users, web application developers must constantly improve the quality of their applications, as well as deploy effective marketing strategies. In short, web store is an important platform in web application development. With the strong development of web stores, web application developers have many opportunities to provide their products and services to users _______________________________________________________________________ Page 13 Target website: https://www. Thegioididong Homepage ___________________________________________________________________________________________________ Page 14 2.2 Advantages 1) The website has an eye-catching, easy-to-use interface: Thegioididong's interface is designed with bright colors and a reasonable layout, helping users easily find information and shop.
2) Diverse and rich products: Thegioididong provides a variety of electronic and technology products, from phones, tablets, laptops, to household appliances, office equipment,. Category ___________________________________________________________________________________________________ Page 15 3) Competitive prices: Thegioididong regularly has promotions and discounts, helping customers shop at the best prices. Sales ___________________________________________________________________________________________________ Page 16 4) Good warranty and after-sales policy: Thegioididong has a clear and transparent warranty and return policy, helping customers feel secure when shopping.3 Disadvantages 1) Incomplete product information: Some product information on Thegioididong.com is incomplete, such as technical specifications, customer reviews,. Product detail ___________________________________________________________________________________________________ Page 17 2) The ordering and payment process is not convenient: The ordering and payment process on Thegioididong is still quite complicated, causing customers to sometimes have difficulty, especially new user.
3) Customer care program is not good: Thegioididong's customer care team has not been properly trained, sometimes unable to promptly answer customer questions.4 Website My online store website have the following features: Easy-to-use interface: The website needs to have a friendly interface, making it easy to search and shop. Detailed product description: Clear, detailed product description with quality images so consumers can clearly understand the product before buying. Product search and filtering features: The website needs to have easy-to-use product search and filtering features so that users can search and select products conveniently. _______________________________________________________________________ Page 18 CHAPTER 3: DESIGN 3.Requirements Analysis Step 1: Information Gathering: During this phase, I will analyze and gather information about the functional and non-functional requirements of the sales website system.
This includes determining the necessary features, performance, security, and availability requirements. Functional requirements: Product management: The system must allow users to create, edit, delete, and search for products Customer management: The system must allow users to create, edit and search for customers. Order management: The system must allow users to create, edit and search orders Delivery: The system must support popular delivery methods such as door-to- door delivery, postal delivery, and third-party delivery Customer support: The system must provide customer support channels such as email and phone. Non-functional requirements: Performance: The system must operate quickly and stably, meeting user needs.
Security: The system must protect customer and store data from unauthorized access or misuse. Availability: The system must always be ready to operate, even during peak times. Scalability: The system must be scalable to meet the store's growing needs in the future. Compatibility: The system must be compatible with popular platforms and browsers.
_______________________________________________________________________ Page 19 Step 2: Architectural and Technological Design: In this step, I will design the architecture of the sales website system, including its logical and physical structure. Additionally, I will select the appropriate technologies for the system. Logical structure: Presentation Layer: The user interface (UI) that customers interact with, typically built using HTML, CSS, and JavaScript. Business Logic Layer: The back-end code that handles business rules, processes, and data interactions, written in languages like PHP, Python, Java, or Node.
Data Access Layer: The layer that interacts with the database to store and retrieve data, often using technologies like MySQL, SQL sever, or MongoDB Physical structure: Web Server: Host the web store's application code and static assets (images, CSS, JavaScript files). Database Server: Store product catalog, customer information, orders, and other data. Load Balancer: Distribute traffic across multiple web servers to improve performance and availability. Cache Server: Store frequently accessed data to reduce database load and improve response times.
File Server: Store media files like product images or videos. Step 3: Database Design :After identifying the functional and non-functional requirements, I will design a database to store information about products, customers, orders, and other relevant data. Step 4: User Interface Design Creating an appealing and user-friendly interface is crucial for providing customers with the best shopping experience. In this step, I will design an intuitive and visually appealing user interface to optimize the user experience.
_______________________________________________________________________ Page 20 Step 5: Development and Testing Following the system's design, I will proceed with the development and testing phases to ensure that the system functions properly and meets all requirements _______________________________________________________________________ Page 21 3. Usecase Diagram ___________________________________________________________________________________________________ Page 22 Picture 3. Sequence diagram(Admin) ___________________________________________________________________________________________________ Page 23 Picture 3. Sequence diagram(Customer) ___________________________________________________________________________________________________ Page 24 Picture 3.
Activity Diagram ___________________________________________________________________________________________________ Page 25 3. Database design Picture 3. Relational product ___________________________________________________________________________________________________ Page 26 Picture 3. Relational Order ___________________________________________________________________________________________________ Page 27 3.
Interface design Objective: Friendly interface design, easy to use, intuitive and easy to navigate, helping users find information and shop easily. User: People who have basic knowledge of computer use and online shopping. Interest in purchasing electronic products. Basis: Website Tool: Figma Feature: 1) Customer The home page includes the latest products, best sellers, promotions, and more.
Product pages include detailed product information, such as images, descriptions, prices, etc. Product pages should be designed to help customers clearly understand the product. The shopping cart and Order are designed for ease of use and payments should be secure.