Đồ án xây dựng website kinh doanh nhà hàng ẩm thực nhật bản nihonfood
- 58 trang
- file .pdf
lOMoARcPSD|16911414
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN HỌC PHẦN
Tên học phần: LẬP TRÌNH WEB
XÂY DỰNG WEBSITE KINH DOANH
NHÀ HÀNG ẨM THỰC NHẬT BẢN
NIHONFOOD
Giảng viên hướng dẫn: ThS. Dương Thành Phết
Sinh viên thực hiện:
MSSV Họ và tên Lớp
191106064 Võ Thị Cẩm Vy 19DTHJA
6 2
191106247 Trương Thiên Lảnh 19DTHJA
1 2
191106125 Trần Ngọc Hưng 19DTHJA
4 2
TP. Hồ Chí Minh, 4/2022
lOMoARcPSD|16911414
2
lOMoARcPSD|16911414
LỜI NÓI ĐẦU
Cùng với sự phát triển của các lĩnh vực kinh tế, xã hội, nhu
cầu ứng dụng công nghệ thông tin ngày càng cao và không ngừng
biến đổi. Khi hệ thống càng phát triển, càng phức tạp thì các
phương thức quản lý cổ điển truyền thống sẽ trở nên cồng kềnh và
khó có thể đáp ứng yêu cầu ngày càng cao của hệ thống. Để xử lý
các thông tin một cách nhanh chóng, chính xác và có hiệu quả, đòi
hỏi phải có sự hỗ trợ của một công cụ hiện đại, đó chính là công
nghệ thông tin. Sự phát triển nhảy vọt của công nghệ thông tin đã
tác động mạnh mẽ đến các hoạt động xã hội, làm thay đổi một
cách sâu sắc đến phong cách sống và làm việc của một xã hội.
Công nghệ thông tin đã trở thành trụ cột chính của nền kinh
tế tri thức, ứng dụng công nghệ thông tin vào việc quản lý các
hoạt động xã hội và nghiên cứu hay trao đổi mua bán. Phạm vi
ứng dụng của công nghệ thông tin ngày càng mở rộng trên nhiều
lĩnh vực: Truyền thông, đo lường, tự động hoá, quản lý các hoạt
động của con người và xã hội . Những lợi ích mà các phần mềm
ứng dụng mang lại là đáng kể như: Xử lý thông tin nhanh chóng,
chính xác, khoa học, giảm bớt nhân lực và công sức, phí tổn thấp
và hiệu quả công việc nâng cao một cách rõ rệt.
Việc ứng dụng tin học vào các lĩnh vực cửa cuộc sống ngày
càng được quan tâm và sử dụng hiệu quả. Đem lại lợi ích to lớn về
mọi mặt. Với đề tài “ website kinh doanh nhà hàng ẩm thực Nhật
Bản Nihonfood” website được xây dựng với nhu cầu của sự nhanh
– tiện, người dùng có thể đặt đồ ăn online chỉ bằng vài thao tác
đơn giản
1
lOMoARcPSD|16911414
LỜI CẢM ƠN
Chúng em xin gửi lời cảm ơn chân thành đến thầy Dương
Thành Phết đã hướng dẫn chúng tôi trong suốt quá trình học và
quá trình làm báo cáo đồ án này. Xin gửi lời cảm ơn đến các bạn
trong nhóm đã nhiệt tình cống hiến trong suốt thời gian học tập
nhằm thực hiện tốt dự án và học hỏi thêm nhiều kinh nghiệm quý
báu.
Mặc dù đã nỗ lực hết sức mình nhưng đồ án của chúng em
khó tránh khỏi những thiếu sót. Chúng em rất mong nhận được sự
thông cảm và sự chỉ bảo tận tình của quý thầy cô và các bạn để
thực hiện tốt đồ án này.
Do chưa có nhiều kinh nghiệm nghiên cứu, thực hành nên đề
tài thực hiện còn nhiều thiếu sót, chúng em mong nhận được đóng
góp ý kiến của thầy để đề tài được hoàn thiện hơn.
Chúng em xin chân thành cảm ơn!
Sinh viên thực hiện
Võ Thị Cẩm Vy
Trương Thiên Lảnh
Trần Ngọc Hưng
2
lOMoARcPSD|16911414
PHIẾU PHÂN CÔNG NHIỆM VỤ
THỰC HIỆN ĐỒ ÁN HỌC PHẦN: LẬP TRÌNH WEB
1. Tên đề tài: XÂY DỰNG WEBSITE KINH DOANH NHÀ HÀNG ẨM
THỰC NHẬT BẢN NIHONFOOD
2. Giảng viên hướng dẫn: ThS. Dương Thành Phết
Tự đánh giá
Nội dung công việc thực
TT MSS/Họ tên Tỷ lệ &
hiện
Điểm
1911061254 – Sản phẩm và chi tiết
- – Đăng ký, đăng nhập
– Đăng nhập admin,
1 Trần Ngọc Hưng trang chủ admin 30%
– Các chức năng của
Admin 8.5
– Báo cáo, chương 1,2
1911062471
- – Giao diện
Trương Thiên Lảnh – Trang chủ
– Phân trang
2 – Giao diện Form News 40%
– Giao diện Form About 9
– Nhúng API
– Báo cáo, chương 5
1911060646 – Các sơ đồ UC
- – Cơ sở dữ liệu 30%
– Giỏ hàng
Võ Thị Cẩm Vy – Đặt hàng 8.5
3
– Báo cáo, chương 3,4
3
lOMoARcPSD|16911414
MỤC LỤC
Chương I: GIỚI THIỆU ĐỀ TÀI..................................................................6
1.1 LÝ DO CHỌN ĐỀ TÀI...................................................................6
1.2 MỤC TIÊU CỦA NHÓM..............................................................6
1.3 GIỚI THIỆU ĐỀ TÀI......................................................................7
1.4 MỘT SỐ CÔNG NGHỆ SỬ DỤNG..........................................7
1.4.1 ASP.NET MVC 5..........................................................................7
1.4.2 JQUERY......................................................................................8
1.4.3 NODEJS......................................................................................8
1.4.4 REACTJS.....................................................................................8
1.4.5 API...............................................................................................9
1.4.6 SQL..............................................................................................9
1.4.7 Mô Hình ENTITY FRAMEWORK.............................................11
1.5 HỆ THỐNG NGƯỜI DÙNG......................................................12
1.6 YÊU CẦU CHỨC NĂNG............................................................13
1.6.1. Đối với người quảng trị................................................................13
1.6.2. Đối với người dùng......................................................................13
1.7 YÊU CẦU PHI CHỨC NĂNG...................................................13
1.8 PHẠM VI DỰ ÁN.........................................................................13
Chương II: PHÂN TÍCH THIẾT KẾ HỆ THỐNG...................................15
2.1 MÔ TẢ CHỨC NĂNG.................................................................15
2.2 TRANG NGƯỜI DÙNG..............................................................15
2.3 TRANG NGƯỜI QUẢN LÍ (ADMIN)....................................16
2.4 PHÂN TÍCH CHỨC NĂNG NGƯỜI DÙNG........................17
2.5 PHÂN TÍCH CHỨC NĂNG CỦA ADMIN............................18
2.6 SƠ ĐỒ TỔNG QUÁT USE CASE...........................................19
2.6.1 Use case quản lý nghiệp vụ............................................19
2.6.2 Use case quản lý đối tượng cơ bản..............................21
2.6.3 Use case quản lý đối tượng ngoài................................21
2.6.4 Use case phân rã chức năng quản lý giỏ hàng.......23
2.6.5 Class Diagram......................................................................24
4
lOMoARcPSD|16911414
Chương III: CƠ SỞ DỮ LIỆU.....................................................................25
Chương IV: THỰC HIỆN SẢN PHẨM......................................................28
4.1 GIAO DIỆN NGƯỜI DÙNG......................................................28
4.1.1 Giao diện tổng quát...........................................................28
4.1.2 Giao diện trang chủ...........................................................29
4.1.3 Giao diện Menu....................................................................29
4.1.4 Giao diện chi tiết sản phẩm............................................32
4.1.5 Giao diện giỏ hàng.............................................................33
4.1.6 Chức năng phân trang......................................................35
4.1.7 Bảng tin..................................................................................35
4.1.8 Chi tiết bảng tin...................................................................37
4.1.10 Thanh toán............................................................................40
4.1.11 Plugin Facebook..................................................................41
4.1.12 API Google Maps.................................................................42
4.2 GIAO DIỆN NGƯỜI QUẢN LÝ (ADMIN)..........................42
4.2.1 Đăng nhập ADMIN..............................................................42
4.2.2 Chức năng quản lý món ăn.............................................44
Chương V: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN................................49
5.1 KẾT LUẬN........................................................................................49
5.1.1 Kết quả đạt được.......................................................................49
5.1.2 Hướng phát triển.......................................................................49
5.2 KIẾN NGHỊ.........................................................................................49
TÀI LIỆU THAM KHẢO............................................................................50
5
lOMoARcPSD|16911414
Chương I: GIỚI THIỆU ĐỀ TÀI
1.1 LÝ DO CHỌN ĐỀ TÀI
– Mang văn hóa và ẩm thực Nhật Bản đến Việt Nam.
– Đáp ứng được nhu cầu nhanh – tiện.
– Đáp ứng nhu cầu đặt đồ ăn online. Khách hàng có thể đặt đồ
ăn, ở nhà hàng ở mọi nơi và sẽ được giao đến tận nơi một
cách nhanh chóng tiện lợi.
– Đáp ứng được vấn đề hết bàn vào phút cuối, hủy bàn, hủy
kèo vào những thời điểm tụ tập bạn bè. Với chức năng online,
khách hàng có thể đặt trước bàn ưa thích cho thời gian họp
bạn muốn và được thông báo trước nếu có bất kỳ sự hủy bỏ
nào và vẫn có cơ hội đặt bàn trước ở một chi nhánh khác của
nhà hàng.
– Việc có mặt trực tuyến sẽ giúp chủ nhà hàng tiếp cận rộng
rãi với những khách hàng thường xuyên đặt món từ nhà hàng
và bạn có thể tăng doanh thu một cách suôn sẻ trong cùng
một khoản đầu tư.
1.2 MỤC TIÊU CỦA NHÓM
– Mang văn hóa và ẩm thực Nhật Bản đến Việt Nam.
– Cung cấp chuỗi nhà hàng tiện lợi mang phong cách Nhật
Bản.
– Phát triển nhà hàng với qui mô lớn hơn để từ đó nhiều người
sẽ biết tới hơn và trọn nhà hàng là nơi thưởng thức ẩm thực
Nhật Bản.
– Tạo ra nét đặc trưng, riêng biệt của chuỗi nhà hàng Nhật.
– Nắm vững các kiến thức cơ bản về lập trình web.
– Tìm hiểu về ASP.NET MVC, ENTITY FRAMEWORK, HTML, CSS.
– Bảo mật thông tin trên website, thông tin cá nhân người
dùng.
6
lOMoARcPSD|16911414
– Màu sắc cân đối đẹp mắt và thân thiện.
– Giao diện hỗ trợ đa màn hình, tương thích với từng thiết bị và
trình duyệt.
7
lOMoARcPSD|16911414
1.3 GIỚI THIỆU ĐỀ TÀI
Nhà hàng NihonFood là nhà hàng với phong cách Nhật Bản
có địa chỉ tại số ….. Nhà hàng có không gian rộng với tổng diện
tích sử dụng gần 600 m2 gồm 3 phòng VIP lớn phục vụ từ 10 đến
30 khách, nhà sàn với sức chứa 140 khách. Nhà Sàn với diện tích
280m2 được coi là nhà hàng mang phong cách Nhật Bản đẹp và
lớn nhất thành phố HCM , được đặt tại vị trí rất thuận lợi cho giao
thông nhưng vẫn tách biệt gần như với sự ồn ào vốn có của một
thành phố. Không gian nhà hàng, từ những chậu cây xanh được bố
trí như những điểm nhấn sinh động cho đến những luồng gió mát
được thổi từ nhiều hướng.
Không chỉ nổi tiếng những món sashimi , sushi trứ danh với
các nguyên liệu tươi ngon nhất được đánh bắt tại Việt Nam hoặc
vận chuyển trực tiếp từ chợ hải sản lừng danh Tsukiji và Osaka của
Nhật Bản, nhà hàng nhật bản Nihon còn có khu Yakitori &Beer
Kitchen, nơi các đầu bếp thực hiện món nướng yakitori với các
nguyên liệu cũng nổi bật không kém như bò Wagyu hay bò Angus
được nướng trên bếp than đỏ rực để mang lại những hương vị
tuyệt vời nhất. Tinh hoa ẩm thực Nhật Bản với mỗi món ăn là một
tác phẩm nghệ thuật cùng sự tận tâm của hơn 20 đầu bếp hàng
đầu đã làm nên hương vị Nhật Bản thuần khiết.
1.4 MỘT SỐ CÔNG NGHỆ SỬ DỤNG
1.4.1 ASP.NET MVC 5
Asp.Net MVC là một Framework sử dụng .Net Framework cho
việc phát triển ứng dụng web động, trước khi Asp.Net MVC ra đời,
lập trình viên sử dụng công nghệ Asp.Net Web Form trên nền
tảng .Net Framework để phát triển ứng dụng Web động.
Asp.Net MVC phát triển trên mẫu thiết kế chuẩn MVC, cho
phép người sử dụng phát triển các ứng dụng phần mềm. MVC là
tên một mẫu phát triển ứng dụng, phương pháp này chia nhỏ một
8
lOMoARcPSD|16911414
ứng dụng thành ba thành phần để cài đặt, mỗi thành phần đóng
một vai trò khác nhau và ảnh hưởng lẫn nhau, đó là models, views,
và controllers.
Tách bạch các tác vụ của ứng dụng (logic nhập liệu, business
logic, và logic giao diện), dễ dàng kiểm thử và mặc định áp dụng
hướng phát triển TDD. Tất cả các tính năng chính của mô hình
MVC được cài đặt dựa trên interface và được kiểm thử bằng cách
sử dụng các đối tượng mocks, mock object là các đối tượng mô
phỏng các tính năng của những đối tượng thực sự trong ứng dụng.
Bạn có thể kiểm thử unit-test cho ứng dụng mà không cần chạy
controller trong tiến trình ASP.NET, và điều đó giúp unit test được
áp dụng nhanh chóng và tiện dụng. Bạn có thể sử dụng bất kỳ nền
tảng unit-testing nào tương thích với nền tảng .NET.
1.4.2 JQUERY
JQuery là thư viện được viết từ JavaScript, jQuery giúp xây
dựng các chức năng bằng Javascript dễ dàng, nhanh và giàu tính
năng hơn.
JQuery không phải là một ngôn ngữ lập trình riêng biệt mà
hoạt động liên kết với JavaScript. Với jQuery, bạn có thể làm được
nhiều việc hơn mà lại tốn ít công sức hơn. jQuery cung cấp các API
giúp việc duyệt tài liệu HTML, hoạt ảnh, xử lý sự kiện và thao tác
AJAX đơn giản hơn. JQuery hoạt động tốt trên nhiều loại trình duyệt
khác nhau.
1.4.3 NODEJS
NodeJS là một nền tảng được xây dựng trên V8 JavaScript
Engine – trình thông dịch thực thi mã JavaScript, giúp xây dựng các
ứng dụng web một cách đơn giản và dễ dàng mở rộng.
Phần Core bên dưới của Nodejs được viết hầu hết bằng C++
nên cho tốc độ xử lý và hiệu năng khá cao.
9
lOMoARcPSD|16911414
Nodejs tạo ra được các ứng dụng có tốc độ xử lý nhanh,
realtime thời gian thực và được áp dụng cho các sản phẩm có
lượng truy cập lớn, cần mở rộng nhanh, cần đổi mới công nghệ,
hoặc tạo ra các dự án Startup nhanh nhất có thể.
1.4.4 REACTJS
ReactJS được hiểu nôm na là một thư viện trong đó có chứa
nhiều JavaScript mã nguồn mở và cha đẻ của ReactJS đó chính là
một ông lớn với cái tên ai cũng biết đó chính là Facebook. Mục đích
của việc tạo ra ReactJS là để tạo ra những ứng dụng website hấp
dẫn với tốc độ nhanh và hiệu quả cao với những mã hóa tối thiểu.
Và mục đích chủ chốt của ReactJS đó chính là mỗi website khi đã
sử dụng ReactJS thì phải chạy thật mượt thật nhanh và có khả
năng mở rộng cao và đơn giản thực hiện.
Trong React, thay vì thường xuyên sử dụng JavaScript để thiết
kế bố cục trang web thì sẽ dùng JSX. JSX được đánh giá là sử dụng
đơn giản hơn JavaScript và cho phép trích dẫn HTML cũng như việc
sử dụng các cú pháp thẻ HTML để render các subcomponent. JSX
tối ưu hóa code khi biên soạn, vì vậy nó chạy nhanh hơn so với
code JavaScript tương đương.
1.4.5 API
API là viết tắt của Application Programming Interface –
phương thức trung gian kết nối các ứng dụng và thư viện khác
nhau. Nó cung cấp khả năng truy xuất đến một tập các hàm hay
dùng, từ đó có thể trao đổi dữ liệu giữa các ứng dụng.
Web API: là hệ thống API được sử dụng trong các hệ thống
website. Hầu hết các website đều ứng dụng đến Web API cho phép
bạn kết nối, lấy dữ liệu hoặc cập nhật cơ sở dữ liệu. Ví dụ: Bạn
thiết kế chức nằng login thông Google, Facebook, Twitter, Github…
Điều này có nghĩa là bạn đang gọi đến API của. Hoặc như các ứng
dụng di động đều lấy dữ liệu thông qua API.
10
lOMoARcPSD|16911414
1.4.6 SQL
– Hệ quản trị cơ sở dữ liệu SQL Server
SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ
(Relational Database Management System (RDBMS) sử dụng câu
lệnh SQL (Transact-SQL) để trao đổi dữ liệu giữa máy Client và máy
cài SQL Server. Một RDBMS bao gồm databases, database engine
và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác
nhau trong RDBMS.
SQL Server được tối ưu để có thể chạy trên môi trường cơ sở
dữ liệu rất lớn (Very Large Database Environment) lên đến Tera-
Byte và có thể phục vụ cùng lúc cho hàng ngàn user. SQL Server
có thể kết hợp “ăn ý” với các server khác như Microsoft Internet
Information Server (IIS), E-Commerce Server, Proxy Server….
Một vài ấn bản SQL Server: Enterprise Standard developer
Workgroup Express.
– Các thành phần cơ bản trong SQL Server
SQL Server được cấu tạo bởi nhiều thành phần như Database
Engine, Reporting Services, Notification Services, Integration
Services, Full Text Search Service…. Các thành phần này khi phối
hợp với nhau tạo thành một giải pháp hoàn chỉnh giúp cho việc lưu
trữ và phân tích dữ liệu một cách dễ dàng.
– Các thành phần chính SQL Server:
Database Engine: Đây là một engine có khả năng chứa dữ
liệu ở các quy mô dưới dạng support và table. Ngoài ra, nó còn có
khả năng tự điều chỉnh ví dụ: trả lại tài nguyên cho hệ điều hành
khi một user log off và sử dụng thêm các tài nguyên của máy khi
cần.
Integration Services: là tập hợp các đối tượng lập trình và các
công cụ đồ họa cho việc sao chép, di chuyển và chuyển đổi dữ
11
lOMoARcPSD|16911414
liệu. Khi bạn làm việc trong một công ty lớn thì dữ liệu được lưu
trữ ở nhiều nơi khác nhau như được chứa trong: Oracle, SQL
Server, DB2, Microsoft Access… và bạn chắc chắn sẽ có nhu cầu di
chuyển dữ liệu giữa các server này. Ngoài ra, bạn còn muốn định
dạng dữ liệu trước khi lưu vào database. Chắc chắn Integration
Services sẽ giúp bạn giải quyết được công việc này dễ dàng.
Analysis Services: Đây là một dịch vụ phân tích dữ liệu rất
hay của Microsoft. Dữ liệu khi được lưu trữ vào trong database mà
bạn không thể lấy được những thông tin bổ ích thì coi như không
có ý nghĩa gì. Chính vì thế, công cụ này ra đời giúp bạn trong việc
phân tích dữ liệu một cách hiệu quả và dễ dàng bằng cách dùng
kỹ thuật khai thác dữ liệu – Data mining và khái niệm hình khối
nhiều chiều – multidimensional cubes.
Notification Services: Dịch vụ thông báo này là nền tảng cho
sự phát triển và triển khai các ứng dụng soạn và gửi thông báo.
Ngoài ra, dịch vụ này còn có chức năng gửi thông báo theo dịch
thời đến hàng ngàn người đăng ký sử dụng trên nhiều loại thiết bị
khác nhau.
Reporting Services: là một công cụ tạo, quản lý và triển khai
báo cáo bao gồm: server và client. Ngoài ra, nó còn là nền tảng
cho việc phát triển và xây dựng các ứng dụng báo cáo.
Full Text Search Service: là một thành phần đặc biệt trong
việc truy vấn và đánh chỉ mục dữ liệu văn bản không cấu trúc được
lưu trữ trong các cơ sở dữ liệu SQL Server.
1.4.7 Mô Hình ENTITY FRAMEWORK
– Khái niệm Entity Framework.
Entity Framework được phát hành lần đầu tiên vào năm
2008, nó là phương tiện tương tác chính giữa các ứng dụng .NET
và cơ sở dữ liệu quan hệ. Entity Framework là một ánh xạ quan hệ
đối tượng (ORM), một loại công cụ giúp đơn giản hóa ánh xạ giữa
12
lOMoARcPSD|16911414
các đối tượng trong phần mềm của bạn với các bảng và cột của cơ
sở dữ liệu quan hệ. Entity Framework có mã nguồn mở độc lập
với .NET Framework.
Entity Framework đảm nhiệm việc tạo các kết nối cơ sở dữ
liệu và thực thi các lệnh, cũng như lấy kết quả truy vấn và tự động
ánh xạ các kết quả đó thành các đối tượng trong ứng dụng của
bạn. Ngoài ra, Entity Framework giúp theo dõi các thay đổi của đối
tượng và cập nhật các thay đổi đó trở lại cơ sở dữ liệu cho bạn.
Entity Framework được thiết kế nhằm mục đích tăng năng
suất của nhà phát triển bằng cách giảm các công việc dư thừa như
là duy trì dữ liệu được sử dụng trong các ứng dụng.
Entity Framework có thể tạo các câu lệnh truy cấn cần thiết
để đọc hoặc ghi dữ liệu trong cơ sở dữ liệu và thực thi chúng cho
bạn.
Entity Framework sẽ thực hiện các truy vấn có liên quan
trong cơ sở dữ liệu và sau đó ánh xạ kết quả trả về thành các đối
tượng để bạn làm việc trong ứng dụng của mình.
Entity Framework có lớp ánh xạ chi tiết hơn để bạn có thể tùy
chỉnh ánh xạ. Ví dụ, bằng cách ánh xạ một thực thể vào nhiều
bảng trong cơ sở dữ liệu hoặc thậm chí nhiều thực thể vào một
bảng.
– Kiến trúc của Entity Framework
Application (ứng dụng): Tầng chứa giao diện tương tác với
người dùng, có thể là ứng dụng web hoặc ứng dụng Windows
Forms. Tầng này thường sử dụng Repository pattern để làm việc
với cơ sở dữ liệu thông qua Entity Framework.
Object Services: Tầng chứa quá trình tương tác giữa ứng
dụng và database, hay nói cách khác nó là nơi chủ yếu để truy cập
dữ liệu từ database và trả ngược kết quả về giao diện. Object
13
lOMoARcPSD|16911414
Services cung cấp các tiện ích để truy vết các thay đổi và cập nhật
thay đổi trở lại ở database.
EntityClient Data Provider: Đây là tầng cung cấp các kết nối,
diễn dịch các truy vấn thực thể thành truy vấn nguồn dữ liệu, trả
về data reader để EF dùng chuyển dữ liệu thực thể thành các đối
tượng. Phần này kết nối ADO.NET Data Providers để gửi hoặc lấy
dữ liệu từ database.
ADO.NET Data Providers: Đây là tầng thấp nhấp để dịch các
truy vấn LINQ to Entity thành các câu lệnh SQL và thực thi các câu
lệnh trong hệ thống DBMS. Tầng này kết với database sử dụng
ADO.NET.
Entity Data Model (EDM): Entity Data Model gồm 3 phần
chính: mô hình khái niệm (CSDL – Conceptual schema definition
language), mô hình ánh xạ (MSL – mapping specification language)
và mô hình lưu trữ (SSDL – store schema definition language).
Entity Data Model khác với EntityClient Data Provider ở chỗ nó sử
dụng LINQ là ngôn ngữ truy vấn tương tác với database.
Mô hình khái niệm (CSDL): Mô hình khái niệm chứa các lớp
mô hình và mối quan hệ giữa các lớp này. Nó độc lập với mô hình
quan hệ các bảng trong database.
Mô hình lưu trữ (SSDL): Mô hình lưu trữ là 1 mô hình thiết kế
database bao gồm các table, view, stored procedure, mối quan hệ
giữa chúng các bảng và khóa. Mô hình này thể hiện gần giống mô
hình quan hệ các bảng trong database.
Mô hình ánh xạ (MSL): Mô hình ánh xạ gồm thông tin về cách
mô hình khái niệm được ánh xạ đến mô hình lưu trữ.
1.5 HỆ THỐNG NGƯỜI DÙNG
Website sẽ có 3 loại người dùng:
14
lOMoARcPSD|16911414
– Người dùng không có tài khoản trên website: Có thể sử dụng
các chức năng đặt đồ ăn, tìm kiếm thông tin món ăn, xem tin
tức văn hóa ẩm thực Nhật.
– Người dùng có tài khoản trên website: Có thể sử dụng tất cả
chức năng của trang web như, đặt món ăn, ngoài ra còn được
giảm giá, rút thăm trúng thưởng...
– Người dùng là Admin của hệ thống: Quản lí tài khoản người
dùng và quản trị nội dung website.
1.6 YÊU CẦU CHỨC NĂNG
1.6.1. Đối với người quảng trị
– Quản lí tài khoản khách hàng, quản lí về nhà hàng, món
ăn tin tức văn hóa. ẩm thực thông qua các tác vụ thêm,
xóa, sửa.
– Xử lí khắc phục các lỗi trên website.
– Tạo tài khoản, cấp quyền cho thành viên quản trị.
1.6.2. Đối với người dùng
– Đăng nhập và đăng kí.
– Xem tin tức về văn hóa ẩm thực Nhật.
– Xem những thôn tin món ăn của nhà hàng.
– Đặt đồ ăn trực tuyến.
1.7 YÊU CẦU PHI CHỨC NĂNG
– Hỗ trợ khách hàng khi sử dụng các dịch vụ của nhà hàng
như thông tin cá nhân liên quan đến khách hàng được
đảm bảo an toàn.
– Giao diện thân thiện và đơn giản với người dùng. Ẩm thực
và tin tức văn hóa Nhật được trình bày bắt mắt, dễ dàng
tìm kiếm.
– Website có dung lượng không quá lớn, tốc độ xử lý nhanh.
– Việc tính toán đảm bảo tính chính xác cao và không chấp
nhận sai sót.
– Đảm bảo an toàn dữ liệu khi chạy.
15
lOMoARcPSD|16911414
– Mang đến trải nghiệm tuyệt vời về văn hóa sứ mặt trời
mọc cho những người chưa từng tiếp xúc.
1.8 PHẠM VI DỰ ÁN
Xây dựng website ẩm thực chạy trên đa màn hình, đa trình
duyệt, sử dụng công nghệ ASP.NET MVC, ENTITY FRAMEWORK,
HTML, CSS, chạy được trên đa nền tảng. Tạo được một trang web
giúp người tiêu dùng tiết kiệm thời gian thay vì phải bỏ ra để tìm
hiểu trực tiếp. Mang văn hóa ẩm thực sứ hoa anh đào đến với
người Việt. Ngoài ra, chủ nhà hàng còn có thể thu lại một khoảng
tiền với các quảng cáo, hợp tác trên website của mình mang lại..
16
lOMoARcPSD|16911414
Chương II: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
2.1 MÔ TẢ CHỨC NĂNG
Qua quá trình khảo sát theo những tiêu chí của các trang
web về lĩnh vực ẩm thực và ý kiến khách quan từ nhiều nguồn
xung quanh như bạn bè, anh chị, người khách hàng đã và đang sử
dụng các dịch vụ online mua hàng đặt biệt là những người đã từng
sử dụng dịch vụ từ đó chúng tôi đã thiết kế ra 2 giao diện chính đó
là giao diện người dùng và giao diện quản trị viên.
2.2 TRANG NGƯỜI DÙNG
Khách hàng là những người có nhu cầu về sử dụng dịch vụ tại
nhà hàng và khi đến với trang web thì phải có giao diện bắt mắt,
người dùng dễ thao tác và sử dụng vì vậy giao diện được thiết kế
với những tiêu chí sau đây:
– Hiển thị các món ăn mới nhất, các món ăn hot hay được bán
chạy nhất.
– Hiển thị các món ăn được sắp xếp theo một tiêu chí cụ thể
giúp khách hàng dễ dàng tìm kiếm.
– Có menu chi tiết cụ thể và đầy đủ về thức ăn, đồ uống.
– Các món ăn được đặt hàng nhiều nhất sẽ hiện ở trang chủ
giúp người mua dễ dàng lựa chọn sản phẩm.
– Phân bố dàn trang logic, dễ theo dõi.
– Màu sắc trang nhã, sử dụng màu sắc trendy.
– Link trang thân thiện giúp người dùng dễ dàng tìm kiếm.
– Có các bài viết về nguồn gốc và câu chuyện của nó tạo sự
hứng thú, quan tâm cho người dùng.
Về sản phẩm của nhà hàng:
– Phân loại thành nhiều chuyên mục loại sản phẩm khác
nhau.
17
lOMoARcPSD|16911414
– Ngoài sản phẩm chính ra khách hàng có thể nhìn thấy
được sản phẩm tương tự mà không cần phải tìm kiếm.
– Có thể thêm, bớt, xóa, sửa nội dung trong trang linh
hoạt.
Về trang chi tiết món ăn:
– Nội dung có bố cục khoa học, đẹp mắt, thân thiện với
khách hàng, hiển thị đầy đủ chi tiết thông tin về các loại
sản phẩm.
– Sản phẩm liên quan đến sản phẩm đang xem.
– Thể hiện đầy đủ kích cỡ, số lượng một cách chi tiết.
– Nút đặt hàng cho mỗi sản phẩm.
– Có thể thêm sản phẩm, giảm sản phẩm và xóa sản phẩm.
Thông tin khách hàng – đăng kí đăng nhập:
– Có thể xem được chi tiết thông tin của cá nhân và cập
nhật thêm thông tin cho bản thân.
– Muốn thay đổi mật khẩu có thể thay đổi ngay khi đã đăng
nhập.
– Xem thông tin đơn hàng đã được xử lý.
– Đăng ký thành viên, để được giảm giá
– Đăng nhập để đặt món ăn.
– Tích hợp thanh toán trực tuyến từ nhiều hình thức khác
nhau như VN PAY, Momo…
2.3 TRANG NGƯỜI QUẢN LÍ (ADMIN)
Đăng nhập để quản trị tất cả nội dung trên website, người làm chủ
ứng dụng có quyền kiểm soát mọi hoạt động của hệ thống, nó đòi
hỏi sự chính xác các thao tác quản trị. Người này được cấp
username và password để đăng nhập hệ thống thực hiện chức
năng của mình như:
Quản lý danh mục sản phẩm:
18
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
ĐỒ ÁN HỌC PHẦN
Tên học phần: LẬP TRÌNH WEB
XÂY DỰNG WEBSITE KINH DOANH
NHÀ HÀNG ẨM THỰC NHẬT BẢN
NIHONFOOD
Giảng viên hướng dẫn: ThS. Dương Thành Phết
Sinh viên thực hiện:
MSSV Họ và tên Lớp
191106064 Võ Thị Cẩm Vy 19DTHJA
6 2
191106247 Trương Thiên Lảnh 19DTHJA
1 2
191106125 Trần Ngọc Hưng 19DTHJA
4 2
TP. Hồ Chí Minh, 4/2022
lOMoARcPSD|16911414
2
lOMoARcPSD|16911414
LỜI NÓI ĐẦU
Cùng với sự phát triển của các lĩnh vực kinh tế, xã hội, nhu
cầu ứng dụng công nghệ thông tin ngày càng cao và không ngừng
biến đổi. Khi hệ thống càng phát triển, càng phức tạp thì các
phương thức quản lý cổ điển truyền thống sẽ trở nên cồng kềnh và
khó có thể đáp ứng yêu cầu ngày càng cao của hệ thống. Để xử lý
các thông tin một cách nhanh chóng, chính xác và có hiệu quả, đòi
hỏi phải có sự hỗ trợ của một công cụ hiện đại, đó chính là công
nghệ thông tin. Sự phát triển nhảy vọt của công nghệ thông tin đã
tác động mạnh mẽ đến các hoạt động xã hội, làm thay đổi một
cách sâu sắc đến phong cách sống và làm việc của một xã hội.
Công nghệ thông tin đã trở thành trụ cột chính của nền kinh
tế tri thức, ứng dụng công nghệ thông tin vào việc quản lý các
hoạt động xã hội và nghiên cứu hay trao đổi mua bán. Phạm vi
ứng dụng của công nghệ thông tin ngày càng mở rộng trên nhiều
lĩnh vực: Truyền thông, đo lường, tự động hoá, quản lý các hoạt
động của con người và xã hội . Những lợi ích mà các phần mềm
ứng dụng mang lại là đáng kể như: Xử lý thông tin nhanh chóng,
chính xác, khoa học, giảm bớt nhân lực và công sức, phí tổn thấp
và hiệu quả công việc nâng cao một cách rõ rệt.
Việc ứng dụng tin học vào các lĩnh vực cửa cuộc sống ngày
càng được quan tâm và sử dụng hiệu quả. Đem lại lợi ích to lớn về
mọi mặt. Với đề tài “ website kinh doanh nhà hàng ẩm thực Nhật
Bản Nihonfood” website được xây dựng với nhu cầu của sự nhanh
– tiện, người dùng có thể đặt đồ ăn online chỉ bằng vài thao tác
đơn giản
1
lOMoARcPSD|16911414
LỜI CẢM ƠN
Chúng em xin gửi lời cảm ơn chân thành đến thầy Dương
Thành Phết đã hướng dẫn chúng tôi trong suốt quá trình học và
quá trình làm báo cáo đồ án này. Xin gửi lời cảm ơn đến các bạn
trong nhóm đã nhiệt tình cống hiến trong suốt thời gian học tập
nhằm thực hiện tốt dự án và học hỏi thêm nhiều kinh nghiệm quý
báu.
Mặc dù đã nỗ lực hết sức mình nhưng đồ án của chúng em
khó tránh khỏi những thiếu sót. Chúng em rất mong nhận được sự
thông cảm và sự chỉ bảo tận tình của quý thầy cô và các bạn để
thực hiện tốt đồ án này.
Do chưa có nhiều kinh nghiệm nghiên cứu, thực hành nên đề
tài thực hiện còn nhiều thiếu sót, chúng em mong nhận được đóng
góp ý kiến của thầy để đề tài được hoàn thiện hơn.
Chúng em xin chân thành cảm ơn!
Sinh viên thực hiện
Võ Thị Cẩm Vy
Trương Thiên Lảnh
Trần Ngọc Hưng
2
lOMoARcPSD|16911414
PHIẾU PHÂN CÔNG NHIỆM VỤ
THỰC HIỆN ĐỒ ÁN HỌC PHẦN: LẬP TRÌNH WEB
1. Tên đề tài: XÂY DỰNG WEBSITE KINH DOANH NHÀ HÀNG ẨM
THỰC NHẬT BẢN NIHONFOOD
2. Giảng viên hướng dẫn: ThS. Dương Thành Phết
Tự đánh giá
Nội dung công việc thực
TT MSS/Họ tên Tỷ lệ &
hiện
Điểm
1911061254 – Sản phẩm và chi tiết
- – Đăng ký, đăng nhập
– Đăng nhập admin,
1 Trần Ngọc Hưng trang chủ admin 30%
– Các chức năng của
Admin 8.5
– Báo cáo, chương 1,2
1911062471
- – Giao diện
Trương Thiên Lảnh – Trang chủ
– Phân trang
2 – Giao diện Form News 40%
– Giao diện Form About 9
– Nhúng API
– Báo cáo, chương 5
1911060646 – Các sơ đồ UC
- – Cơ sở dữ liệu 30%
– Giỏ hàng
Võ Thị Cẩm Vy – Đặt hàng 8.5
3
– Báo cáo, chương 3,4
3
lOMoARcPSD|16911414
MỤC LỤC
Chương I: GIỚI THIỆU ĐỀ TÀI..................................................................6
1.1 LÝ DO CHỌN ĐỀ TÀI...................................................................6
1.2 MỤC TIÊU CỦA NHÓM..............................................................6
1.3 GIỚI THIỆU ĐỀ TÀI......................................................................7
1.4 MỘT SỐ CÔNG NGHỆ SỬ DỤNG..........................................7
1.4.1 ASP.NET MVC 5..........................................................................7
1.4.2 JQUERY......................................................................................8
1.4.3 NODEJS......................................................................................8
1.4.4 REACTJS.....................................................................................8
1.4.5 API...............................................................................................9
1.4.6 SQL..............................................................................................9
1.4.7 Mô Hình ENTITY FRAMEWORK.............................................11
1.5 HỆ THỐNG NGƯỜI DÙNG......................................................12
1.6 YÊU CẦU CHỨC NĂNG............................................................13
1.6.1. Đối với người quảng trị................................................................13
1.6.2. Đối với người dùng......................................................................13
1.7 YÊU CẦU PHI CHỨC NĂNG...................................................13
1.8 PHẠM VI DỰ ÁN.........................................................................13
Chương II: PHÂN TÍCH THIẾT KẾ HỆ THỐNG...................................15
2.1 MÔ TẢ CHỨC NĂNG.................................................................15
2.2 TRANG NGƯỜI DÙNG..............................................................15
2.3 TRANG NGƯỜI QUẢN LÍ (ADMIN)....................................16
2.4 PHÂN TÍCH CHỨC NĂNG NGƯỜI DÙNG........................17
2.5 PHÂN TÍCH CHỨC NĂNG CỦA ADMIN............................18
2.6 SƠ ĐỒ TỔNG QUÁT USE CASE...........................................19
2.6.1 Use case quản lý nghiệp vụ............................................19
2.6.2 Use case quản lý đối tượng cơ bản..............................21
2.6.3 Use case quản lý đối tượng ngoài................................21
2.6.4 Use case phân rã chức năng quản lý giỏ hàng.......23
2.6.5 Class Diagram......................................................................24
4
lOMoARcPSD|16911414
Chương III: CƠ SỞ DỮ LIỆU.....................................................................25
Chương IV: THỰC HIỆN SẢN PHẨM......................................................28
4.1 GIAO DIỆN NGƯỜI DÙNG......................................................28
4.1.1 Giao diện tổng quát...........................................................28
4.1.2 Giao diện trang chủ...........................................................29
4.1.3 Giao diện Menu....................................................................29
4.1.4 Giao diện chi tiết sản phẩm............................................32
4.1.5 Giao diện giỏ hàng.............................................................33
4.1.6 Chức năng phân trang......................................................35
4.1.7 Bảng tin..................................................................................35
4.1.8 Chi tiết bảng tin...................................................................37
4.1.10 Thanh toán............................................................................40
4.1.11 Plugin Facebook..................................................................41
4.1.12 API Google Maps.................................................................42
4.2 GIAO DIỆN NGƯỜI QUẢN LÝ (ADMIN)..........................42
4.2.1 Đăng nhập ADMIN..............................................................42
4.2.2 Chức năng quản lý món ăn.............................................44
Chương V: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN................................49
5.1 KẾT LUẬN........................................................................................49
5.1.1 Kết quả đạt được.......................................................................49
5.1.2 Hướng phát triển.......................................................................49
5.2 KIẾN NGHỊ.........................................................................................49
TÀI LIỆU THAM KHẢO............................................................................50
5
lOMoARcPSD|16911414
Chương I: GIỚI THIỆU ĐỀ TÀI
1.1 LÝ DO CHỌN ĐỀ TÀI
– Mang văn hóa và ẩm thực Nhật Bản đến Việt Nam.
– Đáp ứng được nhu cầu nhanh – tiện.
– Đáp ứng nhu cầu đặt đồ ăn online. Khách hàng có thể đặt đồ
ăn, ở nhà hàng ở mọi nơi và sẽ được giao đến tận nơi một
cách nhanh chóng tiện lợi.
– Đáp ứng được vấn đề hết bàn vào phút cuối, hủy bàn, hủy
kèo vào những thời điểm tụ tập bạn bè. Với chức năng online,
khách hàng có thể đặt trước bàn ưa thích cho thời gian họp
bạn muốn và được thông báo trước nếu có bất kỳ sự hủy bỏ
nào và vẫn có cơ hội đặt bàn trước ở một chi nhánh khác của
nhà hàng.
– Việc có mặt trực tuyến sẽ giúp chủ nhà hàng tiếp cận rộng
rãi với những khách hàng thường xuyên đặt món từ nhà hàng
và bạn có thể tăng doanh thu một cách suôn sẻ trong cùng
một khoản đầu tư.
1.2 MỤC TIÊU CỦA NHÓM
– Mang văn hóa và ẩm thực Nhật Bản đến Việt Nam.
– Cung cấp chuỗi nhà hàng tiện lợi mang phong cách Nhật
Bản.
– Phát triển nhà hàng với qui mô lớn hơn để từ đó nhiều người
sẽ biết tới hơn và trọn nhà hàng là nơi thưởng thức ẩm thực
Nhật Bản.
– Tạo ra nét đặc trưng, riêng biệt của chuỗi nhà hàng Nhật.
– Nắm vững các kiến thức cơ bản về lập trình web.
– Tìm hiểu về ASP.NET MVC, ENTITY FRAMEWORK, HTML, CSS.
– Bảo mật thông tin trên website, thông tin cá nhân người
dùng.
6
lOMoARcPSD|16911414
– Màu sắc cân đối đẹp mắt và thân thiện.
– Giao diện hỗ trợ đa màn hình, tương thích với từng thiết bị và
trình duyệt.
7
lOMoARcPSD|16911414
1.3 GIỚI THIỆU ĐỀ TÀI
Nhà hàng NihonFood là nhà hàng với phong cách Nhật Bản
có địa chỉ tại số ….. Nhà hàng có không gian rộng với tổng diện
tích sử dụng gần 600 m2 gồm 3 phòng VIP lớn phục vụ từ 10 đến
30 khách, nhà sàn với sức chứa 140 khách. Nhà Sàn với diện tích
280m2 được coi là nhà hàng mang phong cách Nhật Bản đẹp và
lớn nhất thành phố HCM , được đặt tại vị trí rất thuận lợi cho giao
thông nhưng vẫn tách biệt gần như với sự ồn ào vốn có của một
thành phố. Không gian nhà hàng, từ những chậu cây xanh được bố
trí như những điểm nhấn sinh động cho đến những luồng gió mát
được thổi từ nhiều hướng.
Không chỉ nổi tiếng những món sashimi , sushi trứ danh với
các nguyên liệu tươi ngon nhất được đánh bắt tại Việt Nam hoặc
vận chuyển trực tiếp từ chợ hải sản lừng danh Tsukiji và Osaka của
Nhật Bản, nhà hàng nhật bản Nihon còn có khu Yakitori &Beer
Kitchen, nơi các đầu bếp thực hiện món nướng yakitori với các
nguyên liệu cũng nổi bật không kém như bò Wagyu hay bò Angus
được nướng trên bếp than đỏ rực để mang lại những hương vị
tuyệt vời nhất. Tinh hoa ẩm thực Nhật Bản với mỗi món ăn là một
tác phẩm nghệ thuật cùng sự tận tâm của hơn 20 đầu bếp hàng
đầu đã làm nên hương vị Nhật Bản thuần khiết.
1.4 MỘT SỐ CÔNG NGHỆ SỬ DỤNG
1.4.1 ASP.NET MVC 5
Asp.Net MVC là một Framework sử dụng .Net Framework cho
việc phát triển ứng dụng web động, trước khi Asp.Net MVC ra đời,
lập trình viên sử dụng công nghệ Asp.Net Web Form trên nền
tảng .Net Framework để phát triển ứng dụng Web động.
Asp.Net MVC phát triển trên mẫu thiết kế chuẩn MVC, cho
phép người sử dụng phát triển các ứng dụng phần mềm. MVC là
tên một mẫu phát triển ứng dụng, phương pháp này chia nhỏ một
8
lOMoARcPSD|16911414
ứng dụng thành ba thành phần để cài đặt, mỗi thành phần đóng
một vai trò khác nhau và ảnh hưởng lẫn nhau, đó là models, views,
và controllers.
Tách bạch các tác vụ của ứng dụng (logic nhập liệu, business
logic, và logic giao diện), dễ dàng kiểm thử và mặc định áp dụng
hướng phát triển TDD. Tất cả các tính năng chính của mô hình
MVC được cài đặt dựa trên interface và được kiểm thử bằng cách
sử dụng các đối tượng mocks, mock object là các đối tượng mô
phỏng các tính năng của những đối tượng thực sự trong ứng dụng.
Bạn có thể kiểm thử unit-test cho ứng dụng mà không cần chạy
controller trong tiến trình ASP.NET, và điều đó giúp unit test được
áp dụng nhanh chóng và tiện dụng. Bạn có thể sử dụng bất kỳ nền
tảng unit-testing nào tương thích với nền tảng .NET.
1.4.2 JQUERY
JQuery là thư viện được viết từ JavaScript, jQuery giúp xây
dựng các chức năng bằng Javascript dễ dàng, nhanh và giàu tính
năng hơn.
JQuery không phải là một ngôn ngữ lập trình riêng biệt mà
hoạt động liên kết với JavaScript. Với jQuery, bạn có thể làm được
nhiều việc hơn mà lại tốn ít công sức hơn. jQuery cung cấp các API
giúp việc duyệt tài liệu HTML, hoạt ảnh, xử lý sự kiện và thao tác
AJAX đơn giản hơn. JQuery hoạt động tốt trên nhiều loại trình duyệt
khác nhau.
1.4.3 NODEJS
NodeJS là một nền tảng được xây dựng trên V8 JavaScript
Engine – trình thông dịch thực thi mã JavaScript, giúp xây dựng các
ứng dụng web một cách đơn giản và dễ dàng mở rộng.
Phần Core bên dưới của Nodejs được viết hầu hết bằng C++
nên cho tốc độ xử lý và hiệu năng khá cao.
9
lOMoARcPSD|16911414
Nodejs tạo ra được các ứng dụng có tốc độ xử lý nhanh,
realtime thời gian thực và được áp dụng cho các sản phẩm có
lượng truy cập lớn, cần mở rộng nhanh, cần đổi mới công nghệ,
hoặc tạo ra các dự án Startup nhanh nhất có thể.
1.4.4 REACTJS
ReactJS được hiểu nôm na là một thư viện trong đó có chứa
nhiều JavaScript mã nguồn mở và cha đẻ của ReactJS đó chính là
một ông lớn với cái tên ai cũng biết đó chính là Facebook. Mục đích
của việc tạo ra ReactJS là để tạo ra những ứng dụng website hấp
dẫn với tốc độ nhanh và hiệu quả cao với những mã hóa tối thiểu.
Và mục đích chủ chốt của ReactJS đó chính là mỗi website khi đã
sử dụng ReactJS thì phải chạy thật mượt thật nhanh và có khả
năng mở rộng cao và đơn giản thực hiện.
Trong React, thay vì thường xuyên sử dụng JavaScript để thiết
kế bố cục trang web thì sẽ dùng JSX. JSX được đánh giá là sử dụng
đơn giản hơn JavaScript và cho phép trích dẫn HTML cũng như việc
sử dụng các cú pháp thẻ HTML để render các subcomponent. JSX
tối ưu hóa code khi biên soạn, vì vậy nó chạy nhanh hơn so với
code JavaScript tương đương.
1.4.5 API
API là viết tắt của Application Programming Interface –
phương thức trung gian kết nối các ứng dụng và thư viện khác
nhau. Nó cung cấp khả năng truy xuất đến một tập các hàm hay
dùng, từ đó có thể trao đổi dữ liệu giữa các ứng dụng.
Web API: là hệ thống API được sử dụng trong các hệ thống
website. Hầu hết các website đều ứng dụng đến Web API cho phép
bạn kết nối, lấy dữ liệu hoặc cập nhật cơ sở dữ liệu. Ví dụ: Bạn
thiết kế chức nằng login thông Google, Facebook, Twitter, Github…
Điều này có nghĩa là bạn đang gọi đến API của. Hoặc như các ứng
dụng di động đều lấy dữ liệu thông qua API.
10
lOMoARcPSD|16911414
1.4.6 SQL
– Hệ quản trị cơ sở dữ liệu SQL Server
SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ
(Relational Database Management System (RDBMS) sử dụng câu
lệnh SQL (Transact-SQL) để trao đổi dữ liệu giữa máy Client và máy
cài SQL Server. Một RDBMS bao gồm databases, database engine
và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác
nhau trong RDBMS.
SQL Server được tối ưu để có thể chạy trên môi trường cơ sở
dữ liệu rất lớn (Very Large Database Environment) lên đến Tera-
Byte và có thể phục vụ cùng lúc cho hàng ngàn user. SQL Server
có thể kết hợp “ăn ý” với các server khác như Microsoft Internet
Information Server (IIS), E-Commerce Server, Proxy Server….
Một vài ấn bản SQL Server: Enterprise Standard developer
Workgroup Express.
– Các thành phần cơ bản trong SQL Server
SQL Server được cấu tạo bởi nhiều thành phần như Database
Engine, Reporting Services, Notification Services, Integration
Services, Full Text Search Service…. Các thành phần này khi phối
hợp với nhau tạo thành một giải pháp hoàn chỉnh giúp cho việc lưu
trữ và phân tích dữ liệu một cách dễ dàng.
– Các thành phần chính SQL Server:
Database Engine: Đây là một engine có khả năng chứa dữ
liệu ở các quy mô dưới dạng support và table. Ngoài ra, nó còn có
khả năng tự điều chỉnh ví dụ: trả lại tài nguyên cho hệ điều hành
khi một user log off và sử dụng thêm các tài nguyên của máy khi
cần.
Integration Services: là tập hợp các đối tượng lập trình và các
công cụ đồ họa cho việc sao chép, di chuyển và chuyển đổi dữ
11
lOMoARcPSD|16911414
liệu. Khi bạn làm việc trong một công ty lớn thì dữ liệu được lưu
trữ ở nhiều nơi khác nhau như được chứa trong: Oracle, SQL
Server, DB2, Microsoft Access… và bạn chắc chắn sẽ có nhu cầu di
chuyển dữ liệu giữa các server này. Ngoài ra, bạn còn muốn định
dạng dữ liệu trước khi lưu vào database. Chắc chắn Integration
Services sẽ giúp bạn giải quyết được công việc này dễ dàng.
Analysis Services: Đây là một dịch vụ phân tích dữ liệu rất
hay của Microsoft. Dữ liệu khi được lưu trữ vào trong database mà
bạn không thể lấy được những thông tin bổ ích thì coi như không
có ý nghĩa gì. Chính vì thế, công cụ này ra đời giúp bạn trong việc
phân tích dữ liệu một cách hiệu quả và dễ dàng bằng cách dùng
kỹ thuật khai thác dữ liệu – Data mining và khái niệm hình khối
nhiều chiều – multidimensional cubes.
Notification Services: Dịch vụ thông báo này là nền tảng cho
sự phát triển và triển khai các ứng dụng soạn và gửi thông báo.
Ngoài ra, dịch vụ này còn có chức năng gửi thông báo theo dịch
thời đến hàng ngàn người đăng ký sử dụng trên nhiều loại thiết bị
khác nhau.
Reporting Services: là một công cụ tạo, quản lý và triển khai
báo cáo bao gồm: server và client. Ngoài ra, nó còn là nền tảng
cho việc phát triển và xây dựng các ứng dụng báo cáo.
Full Text Search Service: là một thành phần đặc biệt trong
việc truy vấn và đánh chỉ mục dữ liệu văn bản không cấu trúc được
lưu trữ trong các cơ sở dữ liệu SQL Server.
1.4.7 Mô Hình ENTITY FRAMEWORK
– Khái niệm Entity Framework.
Entity Framework được phát hành lần đầu tiên vào năm
2008, nó là phương tiện tương tác chính giữa các ứng dụng .NET
và cơ sở dữ liệu quan hệ. Entity Framework là một ánh xạ quan hệ
đối tượng (ORM), một loại công cụ giúp đơn giản hóa ánh xạ giữa
12
lOMoARcPSD|16911414
các đối tượng trong phần mềm của bạn với các bảng và cột của cơ
sở dữ liệu quan hệ. Entity Framework có mã nguồn mở độc lập
với .NET Framework.
Entity Framework đảm nhiệm việc tạo các kết nối cơ sở dữ
liệu và thực thi các lệnh, cũng như lấy kết quả truy vấn và tự động
ánh xạ các kết quả đó thành các đối tượng trong ứng dụng của
bạn. Ngoài ra, Entity Framework giúp theo dõi các thay đổi của đối
tượng và cập nhật các thay đổi đó trở lại cơ sở dữ liệu cho bạn.
Entity Framework được thiết kế nhằm mục đích tăng năng
suất của nhà phát triển bằng cách giảm các công việc dư thừa như
là duy trì dữ liệu được sử dụng trong các ứng dụng.
Entity Framework có thể tạo các câu lệnh truy cấn cần thiết
để đọc hoặc ghi dữ liệu trong cơ sở dữ liệu và thực thi chúng cho
bạn.
Entity Framework sẽ thực hiện các truy vấn có liên quan
trong cơ sở dữ liệu và sau đó ánh xạ kết quả trả về thành các đối
tượng để bạn làm việc trong ứng dụng của mình.
Entity Framework có lớp ánh xạ chi tiết hơn để bạn có thể tùy
chỉnh ánh xạ. Ví dụ, bằng cách ánh xạ một thực thể vào nhiều
bảng trong cơ sở dữ liệu hoặc thậm chí nhiều thực thể vào một
bảng.
– Kiến trúc của Entity Framework
Application (ứng dụng): Tầng chứa giao diện tương tác với
người dùng, có thể là ứng dụng web hoặc ứng dụng Windows
Forms. Tầng này thường sử dụng Repository pattern để làm việc
với cơ sở dữ liệu thông qua Entity Framework.
Object Services: Tầng chứa quá trình tương tác giữa ứng
dụng và database, hay nói cách khác nó là nơi chủ yếu để truy cập
dữ liệu từ database và trả ngược kết quả về giao diện. Object
13
lOMoARcPSD|16911414
Services cung cấp các tiện ích để truy vết các thay đổi và cập nhật
thay đổi trở lại ở database.
EntityClient Data Provider: Đây là tầng cung cấp các kết nối,
diễn dịch các truy vấn thực thể thành truy vấn nguồn dữ liệu, trả
về data reader để EF dùng chuyển dữ liệu thực thể thành các đối
tượng. Phần này kết nối ADO.NET Data Providers để gửi hoặc lấy
dữ liệu từ database.
ADO.NET Data Providers: Đây là tầng thấp nhấp để dịch các
truy vấn LINQ to Entity thành các câu lệnh SQL và thực thi các câu
lệnh trong hệ thống DBMS. Tầng này kết với database sử dụng
ADO.NET.
Entity Data Model (EDM): Entity Data Model gồm 3 phần
chính: mô hình khái niệm (CSDL – Conceptual schema definition
language), mô hình ánh xạ (MSL – mapping specification language)
và mô hình lưu trữ (SSDL – store schema definition language).
Entity Data Model khác với EntityClient Data Provider ở chỗ nó sử
dụng LINQ là ngôn ngữ truy vấn tương tác với database.
Mô hình khái niệm (CSDL): Mô hình khái niệm chứa các lớp
mô hình và mối quan hệ giữa các lớp này. Nó độc lập với mô hình
quan hệ các bảng trong database.
Mô hình lưu trữ (SSDL): Mô hình lưu trữ là 1 mô hình thiết kế
database bao gồm các table, view, stored procedure, mối quan hệ
giữa chúng các bảng và khóa. Mô hình này thể hiện gần giống mô
hình quan hệ các bảng trong database.
Mô hình ánh xạ (MSL): Mô hình ánh xạ gồm thông tin về cách
mô hình khái niệm được ánh xạ đến mô hình lưu trữ.
1.5 HỆ THỐNG NGƯỜI DÙNG
Website sẽ có 3 loại người dùng:
14
lOMoARcPSD|16911414
– Người dùng không có tài khoản trên website: Có thể sử dụng
các chức năng đặt đồ ăn, tìm kiếm thông tin món ăn, xem tin
tức văn hóa ẩm thực Nhật.
– Người dùng có tài khoản trên website: Có thể sử dụng tất cả
chức năng của trang web như, đặt món ăn, ngoài ra còn được
giảm giá, rút thăm trúng thưởng...
– Người dùng là Admin của hệ thống: Quản lí tài khoản người
dùng và quản trị nội dung website.
1.6 YÊU CẦU CHỨC NĂNG
1.6.1. Đối với người quảng trị
– Quản lí tài khoản khách hàng, quản lí về nhà hàng, món
ăn tin tức văn hóa. ẩm thực thông qua các tác vụ thêm,
xóa, sửa.
– Xử lí khắc phục các lỗi trên website.
– Tạo tài khoản, cấp quyền cho thành viên quản trị.
1.6.2. Đối với người dùng
– Đăng nhập và đăng kí.
– Xem tin tức về văn hóa ẩm thực Nhật.
– Xem những thôn tin món ăn của nhà hàng.
– Đặt đồ ăn trực tuyến.
1.7 YÊU CẦU PHI CHỨC NĂNG
– Hỗ trợ khách hàng khi sử dụng các dịch vụ của nhà hàng
như thông tin cá nhân liên quan đến khách hàng được
đảm bảo an toàn.
– Giao diện thân thiện và đơn giản với người dùng. Ẩm thực
và tin tức văn hóa Nhật được trình bày bắt mắt, dễ dàng
tìm kiếm.
– Website có dung lượng không quá lớn, tốc độ xử lý nhanh.
– Việc tính toán đảm bảo tính chính xác cao và không chấp
nhận sai sót.
– Đảm bảo an toàn dữ liệu khi chạy.
15
lOMoARcPSD|16911414
– Mang đến trải nghiệm tuyệt vời về văn hóa sứ mặt trời
mọc cho những người chưa từng tiếp xúc.
1.8 PHẠM VI DỰ ÁN
Xây dựng website ẩm thực chạy trên đa màn hình, đa trình
duyệt, sử dụng công nghệ ASP.NET MVC, ENTITY FRAMEWORK,
HTML, CSS, chạy được trên đa nền tảng. Tạo được một trang web
giúp người tiêu dùng tiết kiệm thời gian thay vì phải bỏ ra để tìm
hiểu trực tiếp. Mang văn hóa ẩm thực sứ hoa anh đào đến với
người Việt. Ngoài ra, chủ nhà hàng còn có thể thu lại một khoảng
tiền với các quảng cáo, hợp tác trên website của mình mang lại..
16
lOMoARcPSD|16911414
Chương II: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
2.1 MÔ TẢ CHỨC NĂNG
Qua quá trình khảo sát theo những tiêu chí của các trang
web về lĩnh vực ẩm thực và ý kiến khách quan từ nhiều nguồn
xung quanh như bạn bè, anh chị, người khách hàng đã và đang sử
dụng các dịch vụ online mua hàng đặt biệt là những người đã từng
sử dụng dịch vụ từ đó chúng tôi đã thiết kế ra 2 giao diện chính đó
là giao diện người dùng và giao diện quản trị viên.
2.2 TRANG NGƯỜI DÙNG
Khách hàng là những người có nhu cầu về sử dụng dịch vụ tại
nhà hàng và khi đến với trang web thì phải có giao diện bắt mắt,
người dùng dễ thao tác và sử dụng vì vậy giao diện được thiết kế
với những tiêu chí sau đây:
– Hiển thị các món ăn mới nhất, các món ăn hot hay được bán
chạy nhất.
– Hiển thị các món ăn được sắp xếp theo một tiêu chí cụ thể
giúp khách hàng dễ dàng tìm kiếm.
– Có menu chi tiết cụ thể và đầy đủ về thức ăn, đồ uống.
– Các món ăn được đặt hàng nhiều nhất sẽ hiện ở trang chủ
giúp người mua dễ dàng lựa chọn sản phẩm.
– Phân bố dàn trang logic, dễ theo dõi.
– Màu sắc trang nhã, sử dụng màu sắc trendy.
– Link trang thân thiện giúp người dùng dễ dàng tìm kiếm.
– Có các bài viết về nguồn gốc và câu chuyện của nó tạo sự
hứng thú, quan tâm cho người dùng.
Về sản phẩm của nhà hàng:
– Phân loại thành nhiều chuyên mục loại sản phẩm khác
nhau.
17
lOMoARcPSD|16911414
– Ngoài sản phẩm chính ra khách hàng có thể nhìn thấy
được sản phẩm tương tự mà không cần phải tìm kiếm.
– Có thể thêm, bớt, xóa, sửa nội dung trong trang linh
hoạt.
Về trang chi tiết món ăn:
– Nội dung có bố cục khoa học, đẹp mắt, thân thiện với
khách hàng, hiển thị đầy đủ chi tiết thông tin về các loại
sản phẩm.
– Sản phẩm liên quan đến sản phẩm đang xem.
– Thể hiện đầy đủ kích cỡ, số lượng một cách chi tiết.
– Nút đặt hàng cho mỗi sản phẩm.
– Có thể thêm sản phẩm, giảm sản phẩm và xóa sản phẩm.
Thông tin khách hàng – đăng kí đăng nhập:
– Có thể xem được chi tiết thông tin của cá nhân và cập
nhật thêm thông tin cho bản thân.
– Muốn thay đổi mật khẩu có thể thay đổi ngay khi đã đăng
nhập.
– Xem thông tin đơn hàng đã được xử lý.
– Đăng ký thành viên, để được giảm giá
– Đăng nhập để đặt món ăn.
– Tích hợp thanh toán trực tuyến từ nhiều hình thức khác
nhau như VN PAY, Momo…
2.3 TRANG NGƯỜI QUẢN LÍ (ADMIN)
Đăng nhập để quản trị tất cả nội dung trên website, người làm chủ
ứng dụng có quyền kiểm soát mọi hoạt động của hệ thống, nó đòi
hỏi sự chính xác các thao tác quản trị. Người này được cấp
username và password để đăng nhập hệ thống thực hiện chức
năng của mình như:
Quản lý danh mục sản phẩm:
18