Giới thiệu về SQL Server 2005: SQL Server 2019 là một hệ thống quản lý cơ sở dữ liệu Relational Database Management System RDBMS sử dụng Transact – SQL để trao đổi dữ liệu giữa Client
Trang 11
BÁO CÁO BÀI TẬP LỚN
MÔN: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
THÔNG TIN
CHỦ ĐỀ : QUẢN LÝ CỬA HÀNG ĐỒ ĂN
NHANH BURGER KING
Giảng viên hướng dẫn: Phạm Thị Miên
Sinh viên thực hiện:
◘ Nguyễn Văn Duẩn
Trang 2PHÂN CÔNG NHIỆM VỤ
Nguyễn Văn Duẩn:
-Tổng hợp, hoàn thiện giao diện người
dùng, hoàn thiện code( quản lý nhân
viên, giao diện chính, báo cáo thông kê,
xuất báo cáo)
100%
Nguyễn Hoàn Tín
-Hoàn thiện cơ sở dữ liệu
-Hoàn thiện code (các form bàn ăn, danh
mục)
-Hoàn thiện word
100%
Lê Hùng Vỹ:
-Hoàn thiện code (các form: quản lý giao
dịch, lịch sử giao dịch, hoá đơn)
-Hoàn thiện word
100%
Trần Công Đại:
-Hoàn thiện code (các form: đăng
nhập-phân quyền người dùng, quản lý tài
Trang 3Trong quá trình thực hành và làm tiểu luận, kiến thức của các thành viên trong nhóm còn hạn chế, do vậy khó tránh khỏi sự thiếu sót, cả Nhóm rất mong nhận những
ý kiến đóng góp quý báu của Thầy/Cô giảng viên và toàn thể các bạn học cùng lớp
để chúng em nhận ra những khuyết điểm và ưu điểm từ đó cải thiện và hoàn thiện phát triển hơn
Sau cùng, tập thể thành viên Nhóm xin kính chúc Cô Phạm Thị Miên thật dồi dào sức khỏe để tiếp tục thực hiện sứ mệnh cao đẹp là truyền đạt kiến thức cho thế
hệ chúng em và mai sau
Trân trọng!
Trang 4Lời mở đầu
Chúng ta đang sống trong thời 4.0 Thời đại mà mọi thứ đều được số hóa và
tự động hóa trong hầu hết trong tất cả các lĩnh vực như dịch vụ, kinh doanh lớn hoặc nhỏ cũng như giải trí….Tiếp cận đến tất cả ngành nghề từ nông nghiệp, công nghiệp, kinh tế, giáo dục cho đến y tế Trong các cửa hàng đồ ăn, việc số hóa buôn bản và quản lý bằng phần mền quản lý cửa hàng hỗ trợ chủ cửa hàng quả lý sản phẩm, doanh thu hiệu quả là điều thiết yếu trong việc phát triển cửa hàng Tuy nhiên để làm
ra 1 phần mền thân thiện, dễ sử dụng, dễ tiếp cận với người dùng không phải chuyện
dễ dàng Chính vì thế mà chúng ta cần phải thu thập thông tin, phân tích và thiết kế
hệ thống nhằm làm ra 1 phần mền hỗ trợ cho chủ cửa hàng dễ dàng tiếp cận và sử dụng phần mền hiểu quả tốt nhất, nhanh chóng, chính xác, tránh được những sự cố mất mát không đáng có
Trang 5NHẬN XÉT CỦA GIẢNG VIÊN
Tp Hồ Chí Minh, ngày … tháng … năm …
Giảng viên hướng dẫn
Trang 6MỤC LỤC
1
CHƯƠNG I: TỔNG QUAN VỀ CÔNG TY 1
1.1 Giới thiệu về cơ sở nơi khảo sát 1
1.2 Cơ cấu tổ chức 1
CHƯƠNG II: CƠ SỞ LÝ THUYẾT 2
2.1 Một số khái niệm: 2
2.2 Môi trường: 3
2.2.1 Môi trường lập trình: 3
2.2.2 Ngôn ngữ lập trình và cài đặt: 3
2.2.3 Hệ quản trị cơ sở dữ liệu: 4
2.2.4 Công cụ hỗ trợ: 7
2.2.5 Công cụ tạo tài liệu hướng dẫn: 7
2.2.6 Các gói hỗ trợ: 7
CHƯƠNG III: PHÂN TÍCH HỆ THỐNG 7
3.1 Mô tả bài toán 7
3.2 Sơ đồ phân rã chức năng BFD 8
3.3 Bảng phân tích xác định tiến trình, tác nhân và hồ sơ 8
3.4 Biểu đồ luồng dữ liệu (mức ngữ cảnh, mức đỉnh, mức dưới đỉnh) 9
CHƯƠNG IV: THIẾT KẾ HỆ THỐNG 11
4.1 Thiết kế CSDL 11
4.1.1 Các thực thể & thuộc tính 11
4.1.2 Xây dựng mô hình thực thể liên kết 14
4.1.3 Chuyển từ mô hình thực thể liên kết sang mô hình quan hệ 14
4.1.4 Chuẩn hóa 15
4.2 Xây dựng chương trình 17
Trang 74.2.1 Thiết kế giao diện chính 17
4.2.2 Thiết kế giao diện xữ lý dữ liệu 18
Mục lục hình ảnh Hình 1.Sơ đồ phân rã chức năng 8
Hình 2.Mức ngữ cảnh 9
Hình 3.Mức đỉnh 10
Hình 4.Mức dưới đỉnh-Tìm kiếm 10
Hình 5.Mức dưới đỉnh - Quản lý cửa hàng 11
Hình 6.Mức dưới đỉnh - Quản lý hệ thống 11
Hình 7.Mức dưới đỉnh-Thống kê 11
Hình 8 Mô hình thực thể 14
Hình 9.Giao diện đăng nhập cho nhân viên 17
Hình 10.Giao diện chính 18
Hình 11.Giao diện chọn món 18
Hình 12.Hoá đơn thanh toán 19
Hình 13.Chi tiết hoá đơn 19
Mục lục bảng Bảng 1.Bảng phân tích xác định tiến trình 9
Bảng 2.Bảng thực thể nhân viên 12
Bảng 3.Bảng hoá đơn 12
Bảng 4.Bảng chi tiết hoá đơn 13
Bảng 5.Bảng loại món 13
Bảng 6.Bảng món ăn 13
Bảng 7.Bảng bàn ăn 13
Bảng 8.Bảng đăng nhập 14
Trang 9CHƯƠNG I: TỔNG QUAN VỀ CÔNG TY
1.1 Giới thiệu về cơ sở nơi khảo sát
Cơ sở:
Được thành lập vào năm 1954, BURGER KING hiện là 1 trong chuỗi nhà hàng thức ăn nhanh lớn trên thế giới Mỗi ngày, có hơn 11 triệu thực khách đến với các nhà hàng BURGER KING trên khắp thế giới để thưởng thức các món Burger truyền thống đến các món tráng miệng của BURGER KING
Dịch vụ:
BURGER KING phục vụ các dịch vụ cơ bản gồm bánh mì kẹp thịt, khoai tây chiên, sô-đa và sữa lắc sang một bộ sản phẩm lớn hơn và đa dạng hơn Năm 1957, " Whopper " đã trở thành sự bổ sung lớn đầu tiên vào thực đơn và nó đã trở thành sản phẩm đặc trưng của Burger King kể từ đó
Ngoài ra còn có các chế độ chăm sóc khác hàng như: Khuyến mãi giảm giá, giao hàng tận nơi…
1.2 Cơ cấu tổ chức
1 Ban giám đốc
Có vai trò chính là điều hành, giám sát, quản lý tất cả mọi công việc của đội ngũ nhân viên và doanh thu Là người đưa ra mọi quyết định cuối cùng về chiến lược, định hướng, kế hoạch phát triển trong tương lai Mọi vấn đề phát sinh có tính chất nghiêm trọng đều phải thông qua Ban giám đốc
2 Quản lý nhân viên
Quản lý, phân công công việc trong cửa hàng một cách hợp lý và chặt chẽ
3 Nhân viên
Bao gồm các nhân viên:
- Nhân viên chế biến: chế biến món ăn theo thực đơn của BURGER KING,
chuyển thức ăn của khác cho thu ngân hoặc cho nhân viên giao hàng tận nơi, quản lý các nguyên liệu trong bếp, các dụng cụ nhà bếp, nhận nguyên liệu theo phiếu xuất kho do quản lý kho nhập
- Nhân viên phục vụ quầy: Tiếp nhận thông tin khác hàng đặt hàng theo
thực đơn tại quầy, thông báo nhận món cho khách, thu tiền của khách từ hóa đơn, hướng dẫn khác đến chỗ ngồi và tự phục vụ, nhận yêu cầu của khách, giải đáp thắc mắc của khách, tiếp nhận thông tin khách hàng, đặt hàng theo thực đơn giao hàng tại nhà
- Phục vụ: Dọn dẹp sau khi khách đã ăn xong và ra về
Trang 106 Giữ xe
Nhận giữ xe khi khách đến cửa hàng và trả xe khi khách về
CHƯƠNG II: CƠ SỞ LÝ THUYẾT
2.1 Một số khái niệm:
Hệ thống (system): Là một khái niệm được xuất phát từ rất lâu trong tự nhiên
Một cách tổng quát, hệ thống là tập hợp các thành phần liên kết lại với nhau, thể hiện qua một phạm vi (boundary) xác định, hoạt động kết hợp với nhau nhằm tạo nên những mục đích xác định Một hệ thống gồm có 9 đặc điểm:
• Thành phần (component): Một hệ thống được hình thành từ một tập hợp các
thành phần Một thành phần là một phần đơn giản nhất hay là một sự kết hợp của những thành phần khác nhau, còn được gọi là hệ thống con (subsystem)
• Liên kết giữa các thành phần (inter–ralated components): Một chức năng
hay hoạt động của một thành phần liên kết một cách nào đó với chức năng hay hoạt động của những thành phần khác Nói cách khác, đây chính là sự phụ thuộc của một
hệ thống con vào một hệ thống con khác
• Ranh giới (boundary): Hệ thống luôn có một ranh giới xác định phạm vi hệ
thống, bên trong ranh giới chứa đựng tất cả các thành phần, ranh giới giới hạn phạm
vi của hệ thống, tách biệt hệ thống này với hệ thống khác Các thành phần bên trong phạm vi có thể bị thay đổi trong khi đó các sự vật bên ngoài hệ thống đó không thể
bị thay đổi
• Mục đích (purpose): Tất cả các thành phần trong hệ thống hoạt động với nhau
để đạt được những mục đích toàn cục của hệ thống, mục đích này chính là lý do để tồn tại hệ thống
Trang 11• Môi trường (environment): Hệ thống luôn tồn tại bên trong môi trường của
nó, là mọi thứ bên ngoài ranh giới tác động lên hệ thống, trao đổi với hệ thống, tạo đầu vào cho hệ thống cũng như tiếp nhận đầu ra của hệ thống
• Giao diện (interface): Là nơi mà hệ thống trao đổi với môi trường
• Đầu vào (input): Tất cả các sự vật cung cấp cho hệ thống từ môi trường
• Đầu ra (output): Tất cả các sự vật mà hệ thống gửi tới môi trường, đây chính
là kết quả vận hành của hệ thống Một đầu ra của hệ thống luôn xác định các đối tượng môi trường mà hệ thống gởi tới
• Ràng buộc (constraints): Các quy định giới hạn ảnh hưởng tới xử lý và mục
đích của hệ thống Những ràng buộc này có thể xuất phát từ bên trong hoặc bên ngoài
hệ thống
2.2 Môi trường:
2.2.1 Môi trường lập trình:
• Microsoft NET Frameword SDK v2.0
.NET Framework là môi trường để đoạn mã của chương trình thực thi Điều này
có nghĩa là NET Framework quản lý việc thi hành chương trình, cấp phát bộ nhớ, thu hồi các bộ nhớ không dùng đến Ngoài ra, NET Framework còn chứa một tập thư viện lớp NET bases class, cho phép thực hiện vô số các tác vụ trên Window
Để triển khai các ứng dụng có thể sử dụng công cụ Visual Studio NET, một môi trường triển khai tổng thể cho phép bạn viết đoạn mã, biên dịch, gỡ rối dựa trên tất cả các ngôn ngữ của NET, chẳng hạn C#, VB NET, kể cả những trang ASP.NET 2.2.2 Ngôn ngữ lập trình và cài đặt:
Trang 12C# có chứa những từ chốt cho phép khai báo những lớp mới, thuộc tính và các hàm hành sự, kế thừa, đa hình … Trên C#, mọi việc liên quan đến khai báo một lớp nằm ngay trong bản thân phần khai báo lớp
C# cũng hỗ trợ giao diện (Interface), một kiểu khế ước với một lớp liên quan đến những dịch vụ mà giao diện đề ra Ngôn ngữ C# định nghĩa một lớp chỉ có thể kế thừa từ một lớp khác nhưng có thể thiết đặt vô số giao diện Khi thiết đặt một giao diện, lớp phải cài đặt tất cả các hàm hành sự của giao diện
2.2.3 Hệ quản trị cơ sở dữ liệu:
a) Giới thiệu về SQL Server 2005:
SQL Server 2019 là một hệ thống quản lý cơ sở dữ liệu (Relational Database Management System (RDBMS) ) sử dụng Transact – SQL để trao đổi dữ liệu giữa Client computer và SQL Server computer 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 2019 đượ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 2005 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
Các phiên bản của SQL Server 2019:
Enterprise: Hỗ trợ không giới hạn số lượng CPU và kích thước Database Hỗ trợ không giới hạn RAM (nhưng tùy thuộc vào kích thước RAM tối đa mà HĐH hỗ trợ) và các hệ thống 64bit
Standard: Tương tự như bản Enterprise nhưng chỉ hỗ trợ 4 CPU Ngoài ra phiên bản này cũng không được trang bị một số tính năng cao cấp khác
Workgroup: Tương tự bản Standard nhưng chỉ hỗ trợ 2 CPU và tối đa 3GB RAM Express: Bản miễn phí, hỗ trợ tối đa 1CPU, 1GB RAM và kích thước Database giới hạn trong 4GB
b) SQL là ngôn ngữ của cơ sở dữ liệu quan hệ:
Trang 13SQL, viết tắt của Structured Query Language, là công cụ sử dụng để tổ chức, quản lý và truy xuất dữ liệu đuợc lưu trữ trong các cơ sở dữ liệu SQL là một
hệ thống ngôn ngữ bao gồm tập các câu lệnh sử dụng để tương tác với cơ sở dữ liệu quan hệ
Khả năng của SQL vượt xa so với một công cụ truy xuất dữ liệu, mặc dù đây là mục đích ban đầu khi SQL được xây dựng nên và truy xuất dữ liệu vẫn còn là một trong những chức năng quan trọng của nó SQL được sử dụng để điều khiển tất cả các chức năng mà một hệ quản trị cơ sở dữ liệu cung cấp cho người dùng bao gồm :
- Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các cơ sở dữ liệu, các cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các thành phần dữ liệu
- Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng thực hiện các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các cơ sở dữ liệu
- Điều khiển truy cập: SQL có thể được sử dụng để cấp phát và kiểm soát các thao tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho cơ sở dữ liệu
- Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc toàn vẹn trong cơ
sở dữ liệu nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các thao tác cập nhật cũng như các lỗi của hệ thống
Như vậy, có thể nói rằng SQL là một ngôn ngữ hoàn thiện được sử dụng trong các hệ thống cơ sở dữ liệu và là một thành phần không thể thiếu trong các hệ quản trị
cơ sở dữ liệu
- Mặc dù SQL không phải là một ngôn ngữ lập trình như C, C++, Java song các câu lệnh mà SQL cung cấp có thể được nhúng vào trong các ngôn ngữ lập trình nhằm xây dựng các ứng dụng tương tác với cơ sở dữ liệu
- Khác với các ngôn ngữ lập trình quen thuộc như C, C++, Java, SQL là ngôn ngữ có tính khai báo Với SQL, người dùng chỉ cần mô tả các yêu cầu cần phải thực hiện trên cơ sở dữ liệu mà không cần phải chỉ ra cách thức thực hiện các yêu cầu như thế nào Chính vì vậy, SQL là ngôn ngữ dễ tiếp cận và dễ sử dụng
c) Vai trò của SQL:
Trang 14Bản thân SQL không phải là một hệ quản trị cơ sở dữ liệu, nó không thể tồn tại độc lập
- SQL thực sự là một phần của hệ quản trị cơ sở dữ liệu, nó xuất hiện trong các
hệ quản trị cơ sở dữ liệu với vai trò ngôn ngữ và là công cụ giao tiếp giữa người sử dụng và hệ quản trị cơ sở dữ liệu
- Trong hầu hết các hệ quản trị cơ sở dữ liệu quan hệ, SQL có những vai trò như sau :
- SQL là ngôn ngữ truy vấn có tính tương tác : Người sử dụng có thể dễ dàng thông qua các trình tiện ích để gởi các yêu cầu dưới dạng các câu lệnh SQL đến
cơ sở dữ liệu và nhận kết quả trả về từ cơ sở dữ liệu
- SQL là ngôn ngữ lập trình cơ sở dữ liệu : Các lập trình viên có thể nhúng các câu lệnh SQL vào trong các ngôn ngữ lập trình để xây dựng nên các chương trình ứng dụng giao tiếp với cơ sở dữ liệu
- SQL là ngôn ngữ quản trị cơ sở dữ liệu : Thông qua SQL, người quản trị cơ sở
dữ liệu có thể quản lý được cơ sở dữ liệu, định nghĩa các cấu trúc lưu trữ dữ liệu, điều khiển truy cập cơ sở dữ liệu
- SQL là ngôn ngữ cho các hệ thống khách/chủ (client/server) : Trong các hệ thống cơ sở dữ liệu khách/chủ, SQL được sử dụng như là công cụ để giao tiếp giữa các trình ứng dụng phía máy khách với máy chủ cơ sở dữ liệu
- SQL là ngôn ngữ truy cập dữ liệu trên Internet : Cho đến nay, hầu hết các máy chủ Web cũng như các máy chủ trên Internet sử dụng SQL với vai trò là ngôn ngữ để tương tác với dữ liệu trong các cơ sở dữ liệu
- SQL là ngôn ngữ cơ sở dữ liệu phân tán : Đối với các hệ quản trị cơ sở dữ liệu phân tán, mỗi một hệ thống sử dụng SQL để giao tiếp với các hệ thống khác trên mạng, gởi và nhận các yêu cầu truy xuất dữ liệu với nhau
- SQL là ngôn ngữ sử dụng cho các cổng giao tiếp cơ sở dữ liệu : Trong một hệ thống mạng máy tính với nhiều hệ quản trị cơ sở dữ liệu khác nhau, SQL thường được
sử dụng như là một chuẩn ngôn ngữ để giao tiếp giữa các hệ quản trị cơ sở dữ liệu
Trang 15-Hệ quản trị cơ sở dữ liệu SQL Server 2005
-Bộ gõ tiếng việt hỗ trợ Unicode: Unikey
CHƯƠNG III: PHÂN TÍCH HỆ THỐNG
3.1 Mô tả bài toán
Bán hàng: Khách vào quán, chọn bàn, chọn món tại quầy Nhân viên phục vụ
quầy chọn món trên bảng điện tử ,chi tiết hóa đơn chuyển về bộ phận làm bếp, khách khi thanh toán sẽ gữi hóa đơn
Quản lý món: Mỗi khi có món mới, quản lý sẽ cập nhập danh sách món vào
menu Mỗi món mới cũng cần có định lượng cụ thể và giá xác định Nếu quyết định bớt món thì cũng chỉ đơn thuần xóa ra khỏi menu Quán cũng thường xuyên có nhu cầu cập nhật món Việc cập nhật chủ yếu là về giá hoặc chiết khấu
Thống kế: Việc thống kê của quán do quản lý thực hiện, dựa trên hóa đơn thanh
toán Bên cạnh thực hiện thống kê thu-chi theo định kỳ hàng tuần, hàng tháng hay theo quý Ngoài ra, còn có xuất ra phiếu báo cáo
Quản lý nhân viên: Lưu trữ thông tin nhân viên bao gồm: mã nhân viên, tên
nhân viên, năm sinh, giới tính, điện thoại