Danh sách Use Case UC_AD1 Admin Đăng nhập Admin Đăng nhập vào hệ thông bằng tài khoản có quyền quản trị hệ thôngUC_AD2 Admin Quản lý sản phẩm Thêm, cập nhật, xoá thông tin sản phẩmUC_
Trang 1TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT VIỆN KỸ THUẬT CÔNG NGHỆ
***********
BÁO CÁO PHÁT TRIỂN PHẦN MỀM MÃ NGUỒN MỞ
XÂY DỰNG WEBSITE KINH DOANH NHƯ Ý SMARTPHONE
Sinh viên thực hiện : Trần Thị Như Ý 1824801030243
Trần Minh Chiến 1824801030250
Ngành : Kỹ thuật – phần mềm Giảng viên hướng dẫn : Nguyễn Hữu Vĩnh
Bình Dương, tháng 7/2021
i
Trang 2LỜI CAM ĐOAN
Tôi xin cam đoan báo cáo “Xây dựng Website kinh doanh điện thoại Như Ý SmartPhone” là công trình nghiên cứu của bản thân và được sự hướng dẫn của giảng viên Nguyễn Hữu Vĩnh
Các nô ̣i dung nghiên cứu, kết quả trong đề tài này là trung thực và chưa công bôdưới bất kỳ hình thức nào trước đây
Những phần sử dụng tài liệu tham khảo trong đồ án đã được nêu rõ trong phần tài liệu tham khảo
Ngoài ra, trong luâ ̣n văn còn sử dụng mô ̣t sô nhâ ̣n xét, đánh giá cũng như sô liê ̣ucủa các tác giả khác, cơ quan tô chức khác đều có trích dẫn và chú thích nguồn gôc
Nếu phát hiê ̣n có bất kỳ sự gian lâ ̣n nào chúng tôi xin hoàn toàn chịu trách nhiê ̣m về nô ̣i dung luâ ̣n văn của mình Trường đại học Thủ Dầu Mô ̣t không liên quan đến những vi phạm tác quyền, bản quyền do chúng tôi gây ra trong quá trình thực hiê ̣n(nếu có)
Bình Dương, Ngày 20 tháng 07 năm 2021
Sinh viên
Trần Thị Như Ý Trần Minh Chiến
ii
Trang 3LỜI CẢM ƠN
Trong suôt thời gian 3 năm học tập và rèn luyện tại Trường Đại học Thủ Dầu Một cho đến nay, người thực hiện đề tài đã nhận được rất nhiều sự quan tâm, giúp đỡ của quý Thầy Cô và bạn bè Với lòng biết ơn sâu sắc và chân thành nhất, người thực hiện đề tài xin gửi đến quý Thầy Cô ở Viện Kỹ Thuật – Công Nghệ – Trường Đại học Thủ Dầu Một đã cùng với tri thức và tâm huyết của mình để truyền đạt vôn kiến thức quý báu cho người thực hiện đề tài trong suôt thời gian học tập tại trường
Người thực hiện đề tài cũng xin bày tỏ lòng biết ơn đến ban lãnh đạo của
Trường Đại học Thủ Dầu Một và các Khoa Phòng ban chức năng đã trực tiếp và gián tiếp giúp đỡ người thực hiện đề tài trong suôt quá trình học tập và nghiên cứu đề tài này
Với điều kiện thời gian cũng như kinh nghiệm còn hạn chế của một học viên, bài báo cáo này không thể tránh được những thiếu sót Người thực hiện đề tài rất mongnhận được sự chỉ bảo, đóng góp ý kiến của các quý thầy cô để người thực hiện đề tài có điều kiện bổ sung, nâng cao ý thức của mình, phục vụ tôt hơn công tác thực tế sau này
Người thực hiện đề tài xin chân thành cảm ơn!
iii
Trang 4TÓM TẮT
Xây dựng Website kinh doanh điện thoại Như Ý SmartPhone được thực hiện sauquá trình khảo sát và thu thập thông tin từ các cửa hàng điện tử trên địa bàn Thành phô Thủ Dầu Một và các Website bán điện thoại nổi tiếng ở Việt Nam như Thế Giới Di Đông, CellphoneS, Hoàng Hà Mobile,… Website là giải pháp tôt nhằm giải quyết côngviệc bán hàng trực tuyến, giúp khách hàng có thể mua sản phẩm trực tuyến, giao hàng tận nơi tiện lợi cho khách hàng mà không cần đến tận cửa hàng
Dựa trên nền tảng Microsoft Visual Code song song là ngôn ngữ PHP cùng với công cụ lưu trữ cơ sở dữ liệu MySQL
Cấu trúc bài báo cáo được chia thành 4 phần: Chương 1: Tổng quan, Chương 2: Phân tích và thiết kế hệ thông, Chương 3: Cài đặt, Chương 4: Đánh giá kết quả và hướng phát triển
iv
Trang 5SUMMARY
Building Website for phone business Nhu Y SmartPhone is done after the
process of surveying and collecting information from electronic stores in Thu Dau Mot City and famous phone selling websites in Vietnam like The World Gioi Di Dong, CellphoneS, Hoang Ha Mobile, etc Website is a good solution to solve online sales work, helping customers to buy products online, convenient door-to-door delivery for customers without going to the store to the store
Based on the Microsoft Visual Code platform parallel is the PHP language alongwith the MySQL database storage engine
The structure of the report is divided into 4 parts: Chapter 1: Overview, Chapter 2: System analysis and design, Chapter 3: Installation, Chapter 4: Evaluation of results and development direction
v
Trang 6MỤC LỤC
LỜI CAM ĐOAN ii
LỜI CẢM ƠN iii
TÓM TẮT iv
SUMMARY v
MỤC LỤC vi
DANH MỤC HÌNH x
DANH MỤC BẢNG xii
DANH SÁCH CÁC KÝ TỰ, CHỮ VIẾT TẮT xiii
LỜI MỞ ĐẦU 1
CHƯƠNG 1: TỔNG QUAN 2
1.1 GIỚI THIỆU ĐỀ TÀI 2
1.1.1 Tên đề tài: 2
1.1.2 Lý do chọn đề tài 2
1.1.3 Mục tiêu của đề tài 2
1.1.4 Đôi tượng và phạm vi nghiên cứu 2
1.1.5 Bô cục báo cáo 3
1.1.6 Chức năng 3
1.2 CÔNG NGHỆ SỬ DỤNG 4
1.2.1 Tổng quan về XAMPP 4
1.2.1.1 Xampp là gì? 4
1.2.1.2 Các thành phần chính của Xampp 5
1.2.2 Giới thiệu ngôn ngữ lập trình PHP 5
1.2.3 Giới thiệu Microsoft Visual Studio Code 6
1.2.3.1 Microsoft Visual Studio Code là gì? 6
1.2.3.2 Một sô tính năng của phần mềm Microsoft Visual Studio Code 6
1.2.3.3 Tại sao nên sử dụng Visual Studio Code? 8
vi
Trang 71.2.4 Giới thiệu ngôn ngữ SQL 8
1.2.5 Giới thiệu MySQL 8
1.2.5.1 MySQL là gì? 9
1.2.5.2 Tại sao lại sử dụng MySQL? 9
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 12
2.1 PHÂN TÍCH 12
2.2 THIẾT KẾ HỆ THỐNG 13
2.2.1 Danh sách Actor 13
2.2.2 Danh sách Use Case 13
2.2.3 Sơ đồ Use Case tổng quát 15
2.2.4 Đặc tả Use Case 15
2.2.4.1 Đăng nhập Admin 15
2.2.4.2 Quản lý thông tin sản phẩm 16
2.2.4.3 Quản lý đơn hàng 17
2.2.4.4 Đăng nhập khách hàng 17
2.2.4.5 Đăng ký khách hàng 18
2.2.4.6 Xem sản phẩm 19
2.2.4.7 Tìm kiếm sản phẩm 20
2.2.4.8 Đánh giá nhận xét sản phẩm 20
2.2.4.9 Xem giỏ hàng 21
2.2.4.10 Thanh toán giỏ hàng 22
2.2.5 Biểu đồ hoạt động 22
2.2.5.1 Đăng nhập Admin 23
2.2.5.2 Quản lý sản phẩm 24
2.2.5.3 Quản lý đơn hàng 25
2.2.5.4 Đăng ký khách hàng 26
vii
Trang 82.2.5.5 Đăng nhập khách hàng 27
2.2.5.6 Xem sản phẩm 28
2.2.5.7 Xem giỏ hàng 29
2.2.5.8 Thanh toán giỏ hàng 30
2.2.5.9 Đánh giá sản phẩm 31
CHƯƠNG 3: CÀI ĐẶT 32
3.1 YÊU CẦU 32
3.1.1 Yêu cầu phần cứng 32
3.1.2 Yêu cầu phần mềm 32
3.2 GIAO DIỆN WEBSITE 32
3.2.1 Trang chủ 32
3.2.2 Trang chi tiết sản phẩm 33
3.2.3 Trang giỏ hàng 33
3.2.4 Trang đặt mua 35
3.2.5 Trang liên hệ 36
3.2.6 Trang chủ đề 37
3.2.7 Trang lọc theo thương hiệu 38
3.2.8 Trang đăng ký người dùng 39
3.2.9 Trang đăng nhập người dùng 40
3.2.10 Trang đăng nhập admin 41
3.2.11 Trang chủ admin 41
3.2.12 Trang thông tin cá nhân 42
3.2.13 Trang quản lý điện thoại 43
3.2.14 Trang thêm điện thoại 44
3.2.15 Trang quản lý thương hiệu 45
3.2.16 Trang quản lý bài viết 46
viii
Trang 93.2.17 Trang quản lý chủ đề 46
3.2.18 Trang quản lý trang đơn 47
3.2.19 Trang quản lý đơn hàng 47
3.2.20 Trang quản lý khách hàng 48
3.2.21 Trang quản lý thông tin liên hệ 48
3.2.22 Trang quản lý danh sách menu 49
3.2.23 Trang quản lý slider quảng cáo 49
3.2.24 Trang danh sách thành viên 50
3.2.25 Trang thêm thành viên 51
CHƯƠNG 4: ĐÁNH GIÁ KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN 52
4.1 ĐÁNH GIÁ KẾT QUẢ 52
4.1.1 Chức năng đã làm được 52
4.1.2 Chức năng chưa làm được 52
4.2 HƯỚNG PHÁT TRIỂN 52
TÀI LIỆU THAM KHẢO 53
ix
Trang 10DANH MỤC HÌNH
Hình 1: Sơ đồ phân rã chức năng 12
Hình 2: Sơ đồ Use Case tổng quát 15
Hình 3: Biểu đồ hoạt động Đăng nhập Admin 23
Hình 4: Biểu đồ hoạt động Quản lý sản phẩm 24
Hình 5: Biểu đồ hoạt động Quản lý đơn hàng 25
Hình 6: Biểu đồ hoạt động Đăng ký khách hàng 26
Hình 7: Biểu đồ hoạt động Đăng nhập khách hàng 27
Hình 8: Biểu đồ hoạt động Xem sản phẩm 28
Hình 9: Biểu đồ hoạt động Xem giỏ hàng 29
Hình 10: Biểu đồ hoạt động Thanh toán giỏ hàng 30
Hình 11: Biểu đồ hoạt động Đánh giá sản phẩm 31
Hình 12: Giao diện trang chủ 32
Hình 13: Giao diện trang chi tiết sản phẩm 33
Hình 14: Giao diện trang giỏ hàng 34
Hình 15: Giao diện trang đặt mua 35
Hình 16: Giao diện trang liên hệ 36
Hình 17: Giao diện trang chủ đề 37
Hình 18: Giao diện trang lọc theo thương hiệu 38
Hình 19: Giao diện trang đăng ký người dùng 39
Hình 20: Giao diện trang đăng nhập người dùng 40
Hình 21: Giao diện trang đăng nhập admin 41
Hình 22: Giao diện trang chủ admin 41
Hình 23: Giao diện trang thông tin cá nhân 42
Hình 24: Giao diện trang quản lý điện thoại 43
Hình 25: Giao diện trang thêm điện thoại 44
Hình 26 Các sản phẩm đã xoá 45
Hình 27: Giao diện trang quản lý thương hiệu 46
x
Trang 11Hình 28: Giao diện trang quản lý bài viết 47
Hình 29: Giao diện trang quản lý chủ đề 47
Hình 30: Giao diện trang quản lý trang đơn 48
Hình 31: Giao diện trang quản lý đơn hàng 48
Hình 32: Giao diện trang quản lý khách hàng 49
Hình 33: Giao diện trang quản lý thông tin liên hệ 49
Hình 34: Giao diện trang quản lý danh sách menu 50
Hình 35: Giao diện trang quản lý slider quảng cáo 50
Hình 36: Giao diện trang quản lý thành viên 51
Hình 37: Giao diện trang thêm thành viên 52
xi
Trang 12DANH MỤC BẢNG
Bảng 1: Danh sách Actor 13
Bảng 2: Danh sách Use Case 14
Bảng 3: Đặc tả đăng nhập Admin 16
Bảng 4: Đặc tả quản lý thông tin sản phẩm 17
Bảng 5: Đặc tả quản lý đơn hàng 17
Bảng 6: Đặc tả đăng nhập khách hàng 18
Bảng 7: Đặc tả đăng ký khách hàng 19
Bảng 8: Đặc tả xem sản phẩm 20
Bảng 9: Đặc tả tìm kiếm sản phẩm 20
Bảng 10: Đặc tả đánh giá nhận xét sản phẩm 21
Bảng 11: Đặc tả xem giỏ hàng 22
Bảng 12: Đặc tả thanh toán giỏ hàng 22
xii
Trang 14LỜI MỞ ĐẦU
Ngày nay, với sự phát triển mạnh mẽ của khoa học công nghệ, Công nghệ Thông tin là một trong những ngành có vị thế dẫn đầu và có vai trò rất lớn trong sự phát triển chung đó Các ứng dụng của công nghệ thông tin được áp dụng trong mọi lĩnh vực nghiên cứu khoa học cũng như trong mọi lĩnh vực của đời sông Là một phần của Công nghệ Thông tin, Công nghệ Web đang có được sự phát triển mạnh mẽ và phổbiến rất nhanh bởi những lợi ích mà nó mang lại cho cộng đồng là rất lớn
Bằng việc lựa chọn và thực hiện đề tài “Xây dựng Website kinh doanh điện thoại Như Ý SmartPhoner”, tôi muôn tìm hiểu và đưa ra một giải pháp tôt nhằm giải quyết công việc bán hàng trực tuyến cho cửa hàng Website mang lại cho cửa hàng rất nhiều lợi ích như: khả năng quảng cáo, phổ biến tên tuổi cửa hàng rất nhanh trên môi trường mạng toàn cầu, việc kinh doanh sẽ mở 24/24, giảm thiểu chi phí nhân viên cho tiếp thị, quảng cáo, dễ dàng nhận phải hồi từ phía khách hàng, cơ hội mở rộng liên kết
và hợp tác ở phạm vi quôc tế, v.v…
Xây dựng Website kinh doanh điện thoại Như Ý SmartPhone cung cấp cho khách hàng những lựa chọn linh hoạt và tiện lợi trong việc tìm mua sản phẩm thông qua chức năng tìm kiếm và giỏ hàng Các thông tin về sản phẩm được hiển thị chi tiết với từng sản phẩm, từ đó khách hàng dễ dàng nhận biết và lựa chọn được thứ mình cần Về phía cửa hàng, hệ thông mang lại sự tiện dụng trong việc cập nhập và quản lý các thông tin cho website, tạo khả năng liên lạc nhanh và dễ dàng với khách hàng
xiv
Trang 15Cùng với sự phát triển mạnh mẽ của Internet, ngày nay, việc sở hữu một
Website không còn là điều xa lạ, thậm chí trong một sô trường hợp còn là tiêu chuẩn bắt buộc đôi với doanh nghiệp – công ty trong thời điểm cạnh tranh mang tính toàn cầunhư hiện nay
Cùng với đó cửa hàng Như Ý SmartPhone là cửa hàng kinh doanh các mặt hàngđiện tử đang rất cần một website để có thể giới thiệu sản phẩm, thực hiện bán hàng trựctuyến
1.1.3 Mục tiêu của đề tài
Xây dựng các chức năng cơ bản của một website bán hàng thương mại Website có khả năng tự tương thích, hiển thị được trên tất cả các thiết bị hiện tại và có thể nâng cấp trong tương lai
Website hiển thị sản phẩm đẹp, thu hút người dùng
Hỗ trợ khách hàng một cách nhanh nhất khi nhận được yêu cầu liên hệ
Quản lý các mặt hàng sản phẩm, cấu hình website
Quản lý thông kê doanh thu, các đơn hàng sản phẩm, sô lượng sản phẩm tồn đọng
Nắm bắt được công nghệ thiết kế web bằng PHP, MYSQL, HTML, JQUERY, JAVASCRIPT, CSS
Ứng dụng mô hình MVC vào xây dựng trang web
Ứng dụng Frameword Laravel vào xây dựng trang web
1.1.4 Đối tượng và phạm vi nghiên cứu
Trang 16 Thu thập thông tin từ cửa hàng
Khảo sát nhu cầu và ý kiến của chủ cửa hàng cũng như khách hàng để xây dựng website bán linh kiện điện tử
Phương pháp nghiên cứu
1 Phương pháp thu thập thông tin: khảo sát và thu thập các sô liệu, dữ liệu cần thiết như các thông tin bệnh nhân, thông tin thuôc, thông tin bác sĩ Các quy trình bệnh án của bệnh nhân
2 Phương pháp thông kê: đưa ra các thông tin, dữ liệu cần thiết để sử dụng trong đề tài
3 Phương pháp phân tích và thiết kế hệ thông: phân tích chức năng hệ thông quản
lý cần thiết của bệnh viện, hiểu rỏ các quy trình bệnh án để thiết kế xây dựng đề tài
4 Phương pháp mô hình hóa chức năng: để tổ chức và tài liệu hóa cấu trúc và luồng dữ liệu xuyên qua các quá trình của một hệ thông
1.1.5 Bố cục báo cáo
Chương 1: Tổng quan
Giới thiệu tổng quan về luận văn: Giới thiệu tên đề tài, lý do chọn đề tài, đôi tượng và phạm vi nghiên cứu, bô cục luận văn và chức năng của phần mềm
Chương 2: Phân tích Thiết kế hệ thông
Phân tích các sơ đồ hệ thông của phần mềm, vẽ ra các luồng dữ liệu, đề ra các tác nhân và mô tả sau đó tiến hành thiết kế các sơ đồ Use Case, đặc tả chức năng từng thành phần và cuôi cùng là thiết kế cơ sở dữ liệu
Chương 3: Cài đặt và Giao diện
Yêu cầu về phần mềm, phần cứng và giới thiệu các giao diện của phần mềm
Chương 4: Đánh giá kết quả và hướng phát triển
Đưa ra kết luận và liệt kê ra những tính năng đã làm được và chưa làm được cũng như hướng phát triển trong tương lai của phần mềm
Tài liệu tham khảo:
Trích dẫn các tài liệu tham khảo trong suôt quá trình thực hiện đồ án
1.1.6 Chức năng
xvi
Trang 17 Chức năng của chủ cửa hàng
Thanh toán giỏ hàng
Thay đổi thông tin cá nhân
1.2.1.1 Xampp là gì?
Phần mềm Xampp là một trong những phần mềm được nhiều lập trình viên sử dụng để thiết lập website theo ngôn ngữ PHP XAMPP có công dụng thiết lập web server có cài đặt sẵn các công cụ như PHP, Apache, MySQL… Xampp sở hữu thiết kế giao diện thân thiện với người dùng, cho phép các lập trình viên có thể đóng mở hoặc reboot các tính năng của server mọi lúc Ngoài ra, Xampp cũng được xây dựng theo source code mở
Đánh giá một cách tổng thể, Xampp được đánh giá là một trong những phần mềm trọng yếu trong việc xây dựng website dành cho các lập trình viên PHP Xampp cài đặt các thành tô trọng yếu, hỗ trợ lẫn nhau bao gồm:
Apache
PHP (thiết lập nền tảng để các tập tin script *.php hoạt động);
MySql (hệ quản trị dữ liệu)
Perl
1.2.1.2 Các thành phần chính của Xampp
xvii
Trang 18Thuật ngữ Xampp, chúng là chữ viết tắt của X, Apache, MySQL, PHP và Perl Chữ X là viết tắt cho cross platform, ám chỉ phần mềm này có thể tương thích với nhiều hệ điều hành như Windows, Mac, Linux, Solaris…
1.2.2 Giới thiệu ngôn ngữ lập trình PHP
PHP là cụm từ viết tắt của PHP: HyperText Preprocessor, có nghĩa là bộ tiền xử
lý siêu văn bản PHP
PHP là một ngôn ngữ lập trình được tạo ra bởi Rasmus Lerdorf vào năm 1994, chủ yếu được dùng để phát triển các ứng dụng web chạy trên máy chủ Tên "cúng cơm" của PHP là "Personal Home Page" Cùng với sự hậu thuẫn của thế giới mã nguồn
mở, liên minh LAMP (Linux, Apache, MySQL và PHP) đã nhanh chóng đánh bại nền tảng công nghệ web "thời thượng" hồi đó của Microsoft, trở thành một nền tảng hàng đầu trong phát triển các ứng dụng web Những website thuộc dạng top trên thế giới nhưGoogle, Facebook, Yahoo, YouTube, Wikipedia, Flickr, đều được viết bằng PHP hoặc sử dụng PHP để phát triển các module bên trong chúng
Mặc dù có tuổi thọ tương đôi cao, nhưng PHP vẫn là một trong top 5 các ngôn ngữ lập trình phổ biến và nên học nhất trên thế giới Trong lĩnh vực lập trình web, PHP chỉ đứng sau JavaScript về mức độ phổ biến Trong lĩnh vực lập trình back-end, PHP vẫn chiếm vị trí dẫn đầu
PHP trở thành một trong những ngôn ngữ lập trình phổ biến nhất trên thế giới vìnhững lý do sau:
Dễ dùng, dễ học PHP sử dụng chung các cú pháp điều khiển giông như các ngôn ngữ thuộc họ C/C++ nên rất dễ làm quen
Có một thư viện hỗ trợ phong phú Đặc biệt, PHP là bệ phóng cho hàng loạt ứng dụng web mã nguồn mở được sử dụng trên hàng triệu website trên thế giới như: Các ứng dụng trang tin điện tử (wordpress, joomla, drupal ), các ứng dụng bán hàng online (magento, prestashop, ), E-learning (Moodle, OpenLMS), các framework (nền tảng phát triển ứng dụng) như YII,
CakePHP,
Có cộng đồng sử dụng rộng lớn Việc này sẽ giúp người học dễ dàng nhận được sự hỗ trợ từ cộng đồng các lập trình viên khác trên thế giới
Có thể chạy được trên nhiều hệ điều hành khác nhau như Linux, Windows
Nhiều cơ hội việc làm
xviii
Trang 19 Miễn phí hoàn toàn
PHP có thể tạo ra các trang web động (sản sinh ra các nội dung
HTML/CSS/JavaScript), và đó chính là lý do mà chúng ta nên tìm hiểu về HTML/CSS trước khi đến với PHP
PHP có thể mở, đọc, ghi, xóa file trên máy chủ, tương tác với các phần mềm khác trên máy chủ
PHP có thể kết hợp với các hệ quản trị CSDL, lưu trữ, truy vấn, xử lý dữ liệu
và trả kết quả về cho người dùng
PHP có thể gửi/nhận cookie, mã hóa, giải mã dữ liệu
PHP có thể phát triển các dịch vụ web (web services)
1.2.3 Giới thiệu Microsoft Visual Studio Code
1.2.3.1 Microsoft Visual Studio Code là gì?
Là một trình biên tập lập trình code miễn phí dành cho Windows, Linux và macOS, Visual Studio Code được phát triển bởi Microsoft Nó được xem là một sự kết hợp hoàn hảo giữa IDE và Code Editor
Visual Studio Code hỗ trợ chức năng debug, đi kèm với Git, có syntax
highlighting, tự hoàn thành mã thông minh, snippets, và cải tiến mã nguồn Nhờ tính năng tùy chỉnh, Visual Studio Code cũng cho phép người dùng thay đổi theme, phím tắt, và các tùy chọn khác
1.2.3.2 Một số tính năng của phần mềm Microsoft Visual Studio Code
Hỗ trợ nhiều ngôn ngữ lập trình
Visual Studio Code hỗ trợ nhiều ngôn ngữ lập trình như C/C++, C#, F#, Visual Basic, HTML, CSS, JavaScript, … Vì vậy, nó dễ dàng phát hiện và đưa ra thông báo nếu chương chương trình có lỗi
Hỗ trợ đa nền tảng
Các trình viết code thông thường chỉ được sử dụng hoặc cho Windows hoặc Linux hoặc Mac Systems Nhưng Visual Studio Code có thể hoạt động tôt trên cả ba nền tảng trên
Cung cấp kho tiện ích mở rộng
Trong trường hợp lập trình viên muôn sử dụng một ngôn ngữ lập trình không nằm trong sô các ngôn ngữ Visual Studio hỗ trợ, họ có thể tải xuông tiện ích mở rộng
xix
Trang 20Điều này vẫn sẽ không làm giảm hiệu năng của phần mềm, bởi vì phần mở rộng này hoạt động như một chương trình độc lập.
Kho lưu trữ an toàn
Đi kèm với sự phát triển của lập trình là nhu cầu về lưu trữ an toàn Với Visual Studio Code, người dùng có thể hoàn toàn yên tâm vì nó dễ dàng kết nôi với Git hoặc bất kỳ kho lưu trữ hiện có nào
Hỗ trợ web
Visual Studio Code hỗ trợ nhiều ứng dụng web Ngoài ra, nó cũng có một trình soạn thảo và thiết kế website
Lưu trữ dữ liệu dạng phân cấp
Phần lớn tệp lưu trữ đoạn mã đều được đặt trong các thư mục tương tự nhau Ngoài ra, Visual Studio Code còn cung cấp các thư mục cho một sô tệp đặc biệt quan trọng
Hỗ trợ viết Code
Một sô đoạn code có thể thay đổi chút ít để thuận tiện cho người dùng Visual Studio Code sẽ đề xuất cho lập trình viên các tùy chọn thay thế nếu có
Hỗ trợ thiết bị đầu cuôi
Visual Studio Code có tích hợp thiết bị đầu cuôi, giúp người dùng khỏi phải chuyển đổi giữa hai màn hình hoặc trở về thư mục gôc khi thực hiện các thao tác
Màn hình đa nhiệm
Người dùng Visual Studio Code có thể mở cùng lúc nhiều tệp tin và thư mục – mặc dù chúng không hề liên quan với nhau
Intellisense
Hầu hết các trình viết mã đều có tính năng nhắc mã Intellisense, nhưng ít
chương trình nào chuyên nghiệp bằng Visual Studio Code Nó có thể phát hiện nếu bất kỳ đoạn mã nào không đầy đủ Thậm chí, khi lập trình viên quên không khai báo biến, Intellisense sẽ tự động giúp họ bổ sung các cú pháp còn thiếu
Hỗ trợ Git
Visual Studio Code hỗ trợ kéo hoặc sao chép mã trực tiếp từ GitHub Mã này sau đó có thể được thay đổi và lưu lại trên phần mềm
xx
Trang 21 Bình luận
Việc để lại nhận xét giúp người dùng dễ dàng nhớ công việc cần hoàn thành
1.2.3.3 Tại sao nên sử dụng Visual Studio Code?
Lý do bạn nên sử dụng Visual Studio Code là vì nó có rất nhiều ưu điểm vượt trội so với bất kỳ IDE nào khác:
Hỗ trợ đa nền tảng: Windows, Linux, Mac
Hỗ trợ đa ngôn ngữ: C/C++, C#, F#, Visual Basic, HTML, CSS, JavaScript, JSON
Ít dung lượng
Tính năng mạnh mẽ
Intellisense chuyên nghiệp
Giao diện thân thiện
Và trên hết, Visual Studio Code là phần mềm miễn phí, được đông đảo lập trình viên trên thế giới sử dụng
1.2.4 Giới thiệu ngôn ngữ SQL
SQL là gì?
SQL viết tắt của từ Structured Query Language (ngôn ngữ truy vấn có cấu trúc).Ngôn ngữ SQL được dùng để tương tác với cơ sở dữ liệu, từ truy vấn lấy thông tin, đếncập nhật (thêm mới, cập nhật thông tin mới, xóa )
Với SQL bạn có thể:
Chèn, cập nhật, xóa các dòng dữ liệu
Tạo ra cơ sở dữ liệu mới
Lấy thông tin CSDL
Ngôn ngữ SQL là một tiêu chuẩn ANSI (American National Standards
Institute), có một sô sự khác nhau nhỏ cho từng phiên bản của ngôn ngữ này
Hầu hết các hệ quản trị CSDL quan hệ hiện nay đều hỗ trợ các lệnh chính của SQL
1.2.5 Giới thiệu MySQL
1.2.5.1 MySQL là gì?
xxi
Trang 22MySQL là chương trình dùng để quản lý hệ thông cơ sở dữ liệu (CSDL), trong đó CSDL là một hệ thông lưu trữ thông tin được sắp xếp rõ ràng, phân lớp ngăn nắp những thông tin mà mình lưu trữ.
Vì thế, bạn có thể truy cập dữ liệu một cách thuận lợi, nhanh chóng MySQL hỗ trợ đa sô các ngôn như lập trình Chính vì thế mà mã nguồn mở phổ biến nhất hiện nay
là WordPress đã sử dụng MySQL làm cơ sở dữ liệu mặc định
1.2.5.2 Tại sao lại sử dụng MySQL?
Khả năng mở rộng và tính linh hoạt
Máy chủ cơ sở dữ liệu MySQL đáp ứng nhiều tính năng linh hoạt, nó có sức chứa để xử lý các ứng dụng được nhúng sâu với 1MB dung lượng để chạy kho dữ liệu khổng lồ lên đến hàng terabytes thông tin Đặc tính đáng chú ý của MySQL là sự linh hoạt về flatform với tất cả các phiên bản của Windows, Unix và Linux đang được hỗ trợ Và đương nhiên, tính chất mã nguồn mở của MySQL cho phép tùy biến theo ý muôn để thêm các yêu cầu phù hợp cho database server
Hiệu năng cao
Với kiến trúc storage-engine cho phép các chuyên gia cơ sở dữ liệu cấu hình máy chủ cơ sở dữ liệu MySQL đặc trưng cho các ứng dụng chuyên biệt Dù ứng dụng
là website dung lượng lớn phục vụ hàng triệu người/ngày hay hệ thông xử lý giao dịch tôc độ cao thì MySQL đều đáp ứng được khả năng xử lý khắt khe của mọi hệ thông Với những tiện ích tải tôc độ cao, cơ chế xử lý nâng cao khác và đặc biệt bộ nhớ
caches, MySQL đưa ra tất cả nhưng tính năng cần có cho hệ thông doanh nghiệp khó tính hiện nay
Tính sẵn sàng cao
MySQL đảm bảo sự tin cậy và có thể sử dụng ngay MySQL đưa ra nhiều tùy chọn có thể “mì ăn liền” ngay từ cấu hình tái tạo chủ/tớ tôc độ cao, để các nhà phân phôi thứ 3 có thể đưa ra những điều hướng có thể dùng ngay duy nhất cho server cơ sở
dữ liệu MySQL
Hỗ trợ giao dịch mạnh mẽ
MySQL đưa ra một trong sô những engine giao dịch cơ sở dữ liệu tôt nhất trên thị trường Các đặc trưng bao gôm, khóa mức dòng không hạn chế, hỗ trợ giao dịch ACID hoàn thiện, khả năng giao dịch được phân loại và hỗ trợ giao dịch đa dạng
xxii
Trang 23(multi-version) mà người đọc không bao giờ cản trở cho người viết và ngược lại Dữ liệu được đảm bảo trong suôt quá trình server có hiệu lực, các mức giao dịch độc lập được chuyên môn hóa, khi phát hiện có lỗi khóa chết ngay tức thì.
Điểm mạnh của Web và Data Warehouse
Theo công ty thiết kế website Mona Media thì MySQL là nơi cho các website trao đổi thường xuyên bởi nó có engine xử lý tôc độ cao, khả năng chèn dữ liệu cực nhanh và hỗ trợ mạnh các chức năng chuyên dụng của web Các tính năng này cũng được sử dụng cho môi trường lưu trữ dữ liệu mà MySQL tăng cường đến hàng terabytecho các server đơn Những tính năng khác như chỉ sô băm, bảng nhớ chính, bảng lưu trữ và cây B đã được gói lại để giảm các yêu cầu lưu trữ tới 80% Vì thế, MySQL là sự chọn lựa tôt nhất cho cả ứng dụng web và các ứng dụng của doanh nghiệp
Bảo vệ dữ liệu mạnh mẽ
Việc quan trong của các doanh nghiệp là bảo mật dữ liệu, MySQL tích hợp các tính năng bảo mật an toàn tuyệt đôi Với việc xác nhận truy cập cơ sở dữ liệu, MySQL trang bị các kỹ thuật mạnh, chỉ có người sử dụng đã được xác nhận mới truy cập được vào cơ sở dữ liệu SSH và SSL cũng được hỗ trợ để đảm bảo kết nôi an toàn và bảo mật Tiện ích backup và recovery cung cấp bởi MySQL và các hãng phần mềm thứ 3 cho phép backup logic và vật lý cũng như recovery toàn bộ hoặc tại một thời điểm
Phát triển ứng dụng toàn diện
MySQL trở thành cơ sở dữ liệu mã nguồn mở phổ biến nhất hiện nay một phần
là do cung cấp hỗ trợ hỗn hợp cho bất cứ sự phát triển ứng dụng nào cần Trong cơ sở
dữ liệu, hỗ trợ có thể được tìm thấy trong các trigger, stored procedure, cursor, view, ANSI-standard SQL,… MySQL cũng cung cấp các bộ kết nôi như: JDBC, ODBC,…
để tất cả các form của ứng dụng sử dụng MySQL như một erver quản lí dữ liệu được đề xuất hàng đầu
xxiii
Trang 24công cụ quản lý đồ họa cho phép một DBA quản lý, sửa chữa và điều khiển hoạt động của nhiều server MySQL từ một máy trạm đơn.
Mã nguồn mở tự do và hỗ trợ 24/7
Nhiều doanh nghiệp còn băn khoăn trong việc giao toàn bộ cho phần mềm mã nguồn mở bởi khó có thể tìm được hỗ trợ hay bảo mật an toàn phục vụ chuyên nghiệp Với MySQL mọi sự cam kết đều rõ ràng, MySQL cam kết bồi thường khi gặp sự cô
Chi phí sở hữu thấp nhất
Sử dụng MySQL cho các dự án, doanh nghiệp đều nhận thấy sự tiết kiệm chi phí đáng kể Người dùng MySQL cũng không mất nhiều thời gian để sữa chữa hoặc vấn đề thời gian chết
xxiv
Trang 25CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
2.1 PHÂN TÍCH
Xây dựng Website kinh doanh điện thoại Như Ý SmartPhone cung cấp cho khách hàng những lựa chọn linh hoạt và tiện lợi trong việc tìm mua sản phẩm thông qua chức năng tìm kiếm và giỏ hàng Ngoài ra giúp cho chủ cửa hàng có thể quản lý sản phẩm của mình trên website Những chức năng trên và các chức năng khác được thể hiện ở sơ đồ phân rã bên dưới
Hình 1: Sơ đồ phân rã chức năng
2.2 THIẾT KẾ HỆ THỐNG
xxv
Website bán linh kiện điện tử Gaming Gear
Khách hàng
Đăng ký Đăng nhập
Xem sản phẩm Tìm kiếm sản phẩm
Xem giỏ hàng Thanh toán giỏ hàng
Thay đổi thông
Quản lý đơn hàng
Hỗ trợ khách hàng
Trang 262.2.1 Danh sách Actor
Khách hàng Khách hàng viếng thăm website
cửa hàng
Đăng ký khách hàngĐăng nhập khách hàngXem sản phẩm
Xem giỏ hàngThanh toán giỏ hàngThay đổi thông tin cá nhânTìm kiếm sản phẩm
So sánh sản phẩmĐánh giá sản phẩmChat với hỗ trợ
Admin Chủ cửa hàng và quản lý website Đăng nhập Admin
Quản lý sản phẩmQuản lý đơn hàng
Hỗ trợ khách hàng
Bảng 1: Danh sách Actor
2.2.2 Danh sách Use Case
UC_AD1 Admin Đăng nhập Admin Đăng nhập vào hệ thông bằng tài
khoản có quyền quản trị hệ thôngUC_AD2 Admin Quản lý sản phẩm Thêm, cập nhật, xoá thông tin
sản phẩmUC_AD3 Admin Quản lý đơn hàng Xem, cập nhật đơn hàng của
khách hàngUC_AD4 Admin Hỗ trợ khách hàng Hỗ trợ giải đáp thắc mắc của
khách hàng
hàng
Đăng nhập khách hàng
Đăng nhập tài khoản vào hệ thông
Trang 27Đánh giá chất lượng sản phẩm của cửa hàng
Chat với hỗ trợ Chat với cửa hàng để giải đáp
thắc mắc
Bảng 2: Danh sách Use Case
xxvii
Trang 282.2.3 Sơ đồ Use Case tổng quát
Hình 2: Sơ đồ Use Case tổng quát
2.2.4 Đặc tả Use Case
2.2.4.1 Đăng nhập Admin
Tên Use Case Đăng nhập Admin
Sự tương tác Đăng nhập tài khoản có quyền quản trị hệ thông
Điều kiện xảy ra Người dùng đăng nhập tài khoản có quyền quản trị
Điều kiện cần Nhập đúng tài khoản có quyền quản trị
Sau khi thực hiện Hệ thông hiển thị đã đăng nhập bằng tài khoản Admin
Luồng tương tác chính Người dùng chọn đăng nhập trên giao diện hệ thông
Hệ thông hiển thị màn hình đăng nhậpNgười dùng nhập tài khoản, mật khẩu có quyền quản trị
và chọn đăng nhập
xxviii
Trang 29Hệ thông thông báo đăng nhập dưới quyền quản trị thành công
Luồng tương tác thay thế Người dùng truy cập vào trang dành cho quản lý
Hệ thông yêu cầu người dùng đăng nhập và hiển thị giao diện đăng nhập
Tên Use Case Quản lý thông tin sản phẩm
Sự tương tác Thêm, cập nhật, xoá thông tin sản phẩm
Điều kiện xảy ra Người dùng chọn quản lý sản phẩm trên trang dành cho
quản lý
Điều kiện cần Người dùng đã đăng nhập tài khoản có quyền quản trị
Sau khi thực hiện Người dùng có thể thao tác với thông tin sản phẩm
Luồng tương tác chính Người dùng chọn quản lý sản phẩm trên giao diện quản
lý
Hệ thông hiển thị giao diện quản lý sản phẩm
Luồng tương tác thay thế Không có
Luồng tương tác ngoại lệ Người dùng nhập sai tài khoản hoặc mật khẩu có quyền
Tên Use Case Quản lý đơn hàng
Sự tương tác Xem, cập nhật đơn hàng của khách hàng
xxix
Trang 30Actor Admin
Điều kiện xảy ra Người dùng chọn quản lý đơn hàng trên trang dành cho
quản lý
Điều kiện cần Người dùng đã đăng nhập tài khoản có quyền quản trị
Sau khi thực hiện Người dùng có thể thao tác với đơn hàng của khách
hàng
Luồng tương tác chính Người dùng chọn quản lý đơn hàng trên giao diện quản
lý
Hệ thông hiển thị giao diện quản lý đơn hàng
Luồng tương tác thay thế Không có
Luồng tương tác ngoại lệ Người dùng nhập sai tài khoản hoặc mật khẩu có quyền
Tên Use Case Đăng nhập khách hàng
Sự tương tác Đăng nhập tài khoản khách hàng vào hệ thông
Điều kiện xảy ra Người dùng đăng nhập tài khoản khách hàng
Điều kiện cần Người dùng đã tạo tài khoản trước khi đăng nhập
Sau khi thực hiện Hệ thông thông báo đã đăng nhập tài khoản khách hàng
Luồng tương tác chính Người dùng chọn đăng nhập trên giao diện hệ thông
Hệ thông hiển thị giao diện đăng nhậpNgười dùng nhập tài khoản, mật khẩu và chọn đăng nhập
Hệ thông thông báo đã đăng nhập tài khoản khác hàng
và hiển thị giao diện trang chủ
Luồng tương tác thay thế Người dùng chọn thêm vào giỏ hàng khi chưa đăng
nhập
Hệ thông thông báo người dùng chưa đăng nhập và hiển thị giao diện đăng nhập
xxx
Trang 31Tiếp tục bước 3
Luồng tương tác ngoại lệ Người dùng nhập tài khoản mật khẩu không đúng
Người dùng nhập tài khoản mật khẩu không tồn tại
Bảng 6: Đặc tả đăng nhập khách hàng
2.2.4.5 Đăng ký khách hàng
Tên Use Case Đăng ký khách hàng
Sự tương tác Đăng ký tài khoản vào hệ thông
Điều kiện xảy ra Người dùng đăng ký tài khoản khách hàng
Điều kiện cần Tài khoản đăng ký chưa tồn tại
Sau khi thực hiện Hệ thông thông báo tài khoản đã đăng ký thành công
Luồng tương tác chính Người dùng chọn đăng ký trên giao diện hệ thông
Hệ thông hiển thị giao diện đăng kýNgười dùng nhập tài khoản, mật khẩu, các thông tin và chọn đăng ký
Hệ thông thông báo đã đăng ký tài khoản thành công vàhiển thị giao diện trang chủ với tài khoản đã đăng ký
Luồng tương tác thay thế Không có
Luồng tương tác ngoại lệ Người dùng nhập tài khoản đã tồn tại
Người dùng nhập không đầy đủ các thông tin đăng ký
Bảng 7: Đặc tả đăng ký khách hàng
2.2.4.6 Xem sản phẩm
Tên Use Case Xem sản phẩm
Sự tương tác Xem sản phẩm trên giao diện
Điều kiện xảy ra Người dùng xem sản phẩm trên giao diện hệ thông
Điều kiện cần Người dùng truy cập vào trang chủ hệ thông
Sau khi thực hiện Người dùng có thể xem sản phẩm trên trang chủ hoặc
xem theo danh mục
Luồng tương tác chính Người dùng truy cập vào trang chủ hệ thông
Hệ thông hiển thị giao diện trang chủ
xxxi
Trang 32Người dùng có thể xem sản phẩm trên trang chủ hoặc chọn xem theo danh mục
Luồng tương tác thay thế Không có
Luồng tương tác ngoại lệ Không có
Bảng 8: Đặc tả xem sản phẩm
2.2.4.7 Tìm kiếm sản phẩm
Tên Use Case Tìm kiếm sản phẩm
Sự tương tác Tìm kiếm sản phẩm theo từ khoá
Điều kiện xảy ra Người dùng tìm kiếm sản phẩm theo từ khoá cần tìm
Điều kiện cần Người dùng đã nhập từ khoá vào ô tìm kiếm
Sau khi thực hiện Hệ thông hiển thị danh sách sản phẩm theo từ khoá tìm
Luồng tương tác thay thế Không có
Luồng tương tác ngoại lệ Người dùng nhập từ khoá không hợp lệ
Bảng 9: Đặc tả tìm kiếm sản phẩm
2.2.4.8 Đánh giá nhận xét sản phẩm
Tên Use Case Đánh giá nhận xét sản phẩm
Sự tương tác Người dùng thêm đánh giá và nhận xét về sản phẩm
Trang 33Hệ thông hiển thị giao diện chi tiết của sản phẩm ngườidùng đã chọn
Người dùng nhập đánh giá, nhận xét và chọn gửi đánh giá nhận xét
Hệ thông hiển thị đánh giá và nhận xét người dùng vừa nhập
Luồng tương tác thay thế Không có
Luồng tương tác ngoại lệ Không có
Bảng 10: Đặc tả đánh giá nhận xét sản phẩm
2.2.4.9 Xem giỏ hàng
Tên Use Case Xem giỏ hàng
Sự tương tác Người dùng xem giỏ hàng của tài khoản
Điều kiện xảy ra Người dùng muôn xem giỏ hàng của tài khoản
Điều kiện cần Người dùng đã đăng nhập tài khoản khách hàng
Sau khi thực hiện Người dùng có thể xem, cập nhật, xoá các sản phẩm
trong giỏ hàng
Luồng tương tác chính Người dùng chọn xem giỏ hàng trên giao diện hệ thông
Hệ thông hiển thị giao diện giỏ hàng với các sản phẩm
đã thêm vào giỏ hàng tài khoảnNgười dùng có thể cập nhật sô lượng hoặc xoá sản phẩm trong giỏ hàng
Luồng tương tác thay thế Không có
Luồng tương tác ngoại lệ Người dùng chưa thêm sản phẩm vào giỏ hàng
Bảng 11: Đặc tả xem giỏ hàng
2.2.4.10 Thanh toán giỏ hàng
Tên Use Case Thanh toán giỏ hàng
Sự tương tác Người dùng thanh toán giỏ hàng của tài khoản
Điều kiện xảy ra Người dùng muôn thanh toán giỏ hàng của tài khoản
Điều kiện cần Người dùng đã đăng nhập tài khoản khách hàng và đã
xxxiii