Tin học hóa trong quản lý giúpcho các nhà quản lý điều hành công việc một cách khoa học, chính xác vàhiệu quả hơn.Trong công tác nghiệp vụ quản lý quán ăn việc quản lý quán ănkhông chỉ l
Trang 1TRƯỜNG ĐẠI HỌC PHENIKAA
BÁO CÁO HỌC PHẦN: PHÂN TÍCH VÀ THIẾT KẾ PHẦN MỀM
Đề tài:
“PHẦN MỀM QUẢN LÝ QUÁN ĂN”
Giảng viên hướng dẫn : TS Trịnh Thanh Bình
Trang 2STT Họ và tên Mã sinh viên Nô ̣i dung công viê ̣c
+ Tổng quan+ Yêu cầu+ Tổng hợp hoàn thiệnbáo cáo
Demo:
+ Code phần DTO+ Quản lí View
2 Nguyễn Văn Tài
Anh
+ Phân tích trường hợp sử dụng
Demo:
+ Code phần sevice+ Code phần
nhanvienview
+ Cơ sở lí thuyết+ Thiết kế cơ sở dữ liệu
+ Làm slideDemo:
+ Code phần DAO+ Đăng nhập
Trang 3+ Tìm ảnh
+ Thiết kếDemo:
+ Code phần report+ Database
MỤC LỤ
Trang 4BẢNG PHÂN CHIA CÔNG VIỆC 0
PHẦN MỞ ĐẦU 8
CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN 10
1 Đặc tả yêu cầu 10
1.1: Lí do chọn đề tài 10
1.2: Tên đề tài 10
Phần mềm quản lí quán ăn 11
1.3: Mục tiêu dự án 11
2 Thuật ngữ (Glosary) 11
CHƯƠNG 2: CƠ SỞ LÍ THUYẾT 11
1 Tổng quan về Java 12
2 Ngôn ngữ lập trình 12
2.1 Tổng quan về ngôn ngữ lập trình Java 12
2.2 Ứng dụng của ngôn ngữ lập trình Java 14
3 Giới thiệu về mô hình 3 lớp 15
4 Giới thiệu công nghệ Java Swing 16
4.1: Tổng quan về lập trình Java Swing 16
4.2: Ứng dụng của Java Swing 17
4.3: Cấu trúc phân cấp lớp Java Swing 18
4.4: Các phương thức được sử dụng phổ biến của Component Class .19
5 Giới thiệu về SQL Sever 20
5.1 SQL Sever là gì ? 20
5.2: Mục đích sử dụng SQL Server ? 21
5.3: Các phiên bản SQL Sever ? 22
CHƯƠNG 3: YÊU CẦU (REQUIREMENTS) 27
1 Đặc tả yêu cầu 27
Trang 52.2 Hình ảnh giao diện chính của phần mềm 37
2.3 Hình ảnh giao diện Hóa đơn 38
2.4 Hình ảnh giao diện Chi tiết hóa đơn 39
2.5 Hình ảnh giao diện Món ăn 40
2.6 Hình ảnh giao diện Doanh thu 41
2.7 Hình ảnh giao diện Nhân viên 42
2.8 Hình ảnh giao diện Tài khoản 43
2.9 Hình ảnh giao diện Khuyến mại 44
2.10 Hình ảnh giao diện hóa đơn được in 45
2.11 Hình ảnh giao diện cài lại mật khẩu 46
CHƯƠNG 4 PHÂN TÍCH TRƯỜNG HỢP SỬ DỤNG 47
1 Phân tích kiến trúc 47
2 Thực thi trường hợp sử dụng (Use case relizations) 49
2.1 Các biểu đồ tuần tự 49
2.1.1 Đăng nhập 49
2.1.2 Đăng kí 50
2.1.3 Quản lí Hoá Đơn 51
2.1.4 Quản lí Nhân Viên 54
2.1.5 Quản Lý Món Ăn 57
2.1.6 Quản lí Tài Khoản 60
2.1.7 Quản lí Doanh Thu 64
2.1.8 Đăng xuất 65
2.2 Biểu đồ lớp pha phân tích 66
2.2.1 Đăng nhập 66
2.2.2 Đăng kí 67
2.2.3 Quản lí Hóa Đơn 68
Trang 62.2.8 Đăng xuất 81
CHƯƠNG 5 THIẾT KẾ (USE CASE DESIGN) 82
1 Xác định các thành phần thiết kế (Identifi design elements) 82
1.1 Cơ chế Persistency-ObjectStore OODBMS 82
1.1.1 Khởi tạo dữ liệu 82
1.1.2 Đóng cơ sở dữ liệu 83
1.1.3 Đọc dữ liệu 84
1.1.4 Thay đổi thông tin tài khoản 85
1.1.5 Đăng kí tài khoản 86
2 Thiết kế trường hợp sử dụng 87
2.1 Thiết kế các biểu đồ tuần tự (Design sequence diagrams) 87
2.1.1 Đăng nhập tài khoản 87
2.1.2 Đăng xuất/ Thoát 88
2.1.3 Hóa đơn cho Nhân viên 89
2.1.4 Chi tiết Hóa Đơn 90
2.1.5 Tạo thông tin Món Ăn 91
2.1.6 Cập nhật thông tin Món Ăn 92
2.1.7 Thống kê Doanh Thu 93
2.1.8 Tạo thông tin về Nhân Viên 94
2.1.9 Sửa thông tin về Nhân Viên 95
2.1.10 Xóa thông tin về Nhân Viên 96
2.1.11 Tạo tài khoản 97
2.1.12 Sửa tài khoản 98
2.1.13 Xóa tài khoản 99
2.1.14 Tạo danh mục Khuyến mại 100
2.1.15 Cập nhật danh mục Khuyến mại 101
2.1.16 Danh mục Khuyến Mại 102
Trang 72.2.3 Đăng kí tài khoản 105
2.2.4 Đăng nhập 106
2.2.5 Thanh toán Hóa đơn 107
3 Thiết kế hệ thống con (Subsystem Design) 108
3.1 Phân hạch cấu trúc chức năng phần mềm 108
3.2 Thiết kế tạo Hóa Đơn 109
3.3 Tạo thông tin Nhân Viên 110
3.4 Tạo thống kê Doanh Thu 111
3.5 User Subsystem 112
3.6 Hàm lập Hóa Đơn 113
4 Thiết kế lớp 114
4.1 Lớp admin 114
4.2 Lớp Nhân Viên 114
4.3 Lớp Hóa Đơn 115
4.4 Lớp Chi tiết Hóa đơn 116
4.5 Lớp tài Khoản 116
5 Thiết kế cơ sở dữ liệu (Database design) 117
5.1 Thiết kế cơ sở dữ liệu 117
5.1.1 Bảng hóa đơn thanh toán 117
5.1.2 Bảng khuyến mại 117
5.1.3 Bảng danh mục Món Ăn 117
5.1.4 Bảng Món ăn 118
5.1.5 Bảng Nhân Viên 118
5.1.6 Bảng tài khoản 118
5.2 Sơ đồ cơ sở dữ liệu 119
Trang 8Trong thời gian gần đây, khoa học công nghệ tại Việt Nam chúng ta
đã và đang hội nhập vào dòng chảy của khoa học công nghệ tiên tiến trênthế giới Công nghệ thông tin ở đất nước ta cũng đang có tốc độ phát triểnkhá nhanh và mạnh, dần chiếm một vị trí quan trọng trong các ngành khoahọc công nghệ Một trong những lĩnh vực đang được ứng dụng tin học hóarất phổ biến ở nước ta là lĩnh vực quản lý Tin học hóa trong quản lý giúpcho các nhà quản lý điều hành công việc một cách khoa học, chính xác vàhiệu quả hơn
Trong công tác nghiệp vụ quản lý quán ăn việc quản lý quán ănkhông chỉ là quản lý trong nhà hàng, quán ăn mà nó còn có những khâuquản lí khác như: quản lí kho nguyên liệu, quản lí đặt hàng và giao hàng,quản lí nhân viên, tính thuế và tổng hợp doanh thu hàng tháng cho cửahàng
Ngày nay, nhịp sống càng trở nên vội vã và phát triển nhanh chóngtrong thời đại công nghệ 4.0 như hiện nay mọi các dự án di chuyển côngcộng mang tính tương lại cũng đang dần được nhanh chóng hoàn thiện điểnhình như tuyến đường sắt trên cao Cát Linh – Hà Đông đã đi vào hoạt động
và các tuyến đường khác đang được dần hoàn thiện để kết nối việc đi lại tại
Hà Nội Điều này giúp cho mỗi người dân có được phương án di chuyểnnhanh chóng, thuận tiện nhất để phục vụ cho các nhu cầu đi lại, công việcđược thuận tiện hơn Để mọi người không phải lo ngại việc hôm nay ăn gì
mà lại phải đi xa, cũng như việc các nhà quản lí nhà hàng quán ăn của họ
có thể quản lí nhà hàng của họ được tốt hơn, giảm thiểu gánh nặng lên nhânviên phục vụ và cũng như có thể có được sự phục vụ đến các khách hàngmột cách được nhanh chóng và chính xác hơn thì nhóm chúng em mạnh
Trang 9theo nhiều cách khách nhau Đối với việc quản lí các nhà hàng, quán ăntheo cách truyền thống thì việc lưu trữ hóa đơn của các khách hàng hauviệc nhận đơn đặt hàng của các khách hàng và giao đến tay khách hàngđang còn là một vấn đề khá khó khan và dễ gây nhầm lẫn cho người giaohàng cũng như khách hàng.
Tuy vậy, trong quá trình thực hiện dự án này kinh nghiệm của nhómchúng em còn hạn chế nên không thể tránh khỏi việc còn những thiếu sóttrong quá trình hoàn thành, vì vậy chúng em kính mong nhận được những ýkiến, những lời nhận xét chân thật nhất của thầy cô để chúng em có thể bổsung hoàn thiện dự án của mình được tối ưu và hoàn chỉnh nhất
Trang 101 Đặc tả yêu cầu
1.1: Lí do chọn đề tài
Ngày nay, nhịp sống càng trở nên vội vã và phát triển nhanhchóng trong thời đại công nghệ 4.0 như hiện nay mọi các dự án dichuyển công cộng mang tính tương lại cũng đang dần được nhanhchóng hoàn thiện điển hình như tuyến đường sắt trên cao Cát Linh– Hà Đông đã đi vào hoạt động và các tuyến đường khác đang đượcdần hoàn thiện để kết nối việc đi lại tại Hà Nội Điều này giúp chomỗi người dân có được phương án di chuyển nhanh chóng, thuậntiện nhất để phục vụ cho các nhu cầu đi lại, công việc được thuậntiện hơn Để mọi người không phải lo ngại việc hôm nay ăn gì màlại phải đi xa, cũng như việc các nhà quản lí nhà hàng quán ăn của
họ có thể quản lí nhà hàng của họ được tốt hơn, giảm thiểu gánhnặng lên nhân viên phục vụ và cũng như có thể có được sự phục vụđến các khách hàng một cách được nhanh chóng và chính xác hơnthì nhóm chúng em mạnh dạn đưa ra ý tưởng tạo ra một phần mềmquản lí quán ăn Phần mềm mang lại lợi ích cho người sử dụng,quản lí có thể dễ dàng quản lí nhân viên, nhà hàng (quán ăn), tối ưuhóa được việc đặt và giao hàng, dễ dàng thanh toán theo nhiều cáchkhách nhau Đối với việc quản lí các nhà hàng, quán ăn theo cáchtruyền thống thì việc lưu trữ hóa đơn của các khách hàng hau việcnhận đơn đặt hàng của các khách hàng và giao đến tay khách hàngđang còn là một vấn đề khá khó khan và dễ gây nhầm lẫn chongười giao hàng cũng như khách hàng
Trang 11Phần mềm quản lí quán ăn.
Là người sử dụng phần mềm này, yêu cầu có tài khoản đăng nhập
hệ thống Là người sử dụng các tính năng được cho phép theo chứcnăng người dùng của phần mềm
Hệ quản trị cơ sở:
Là một gói phần mềm được thiết kế để xác định, thao tác, truy xuất
và quản lí dữ liệu trong cơ sở dữ liệu Hệ quản trị cơ sở dữ liệuquản lí
Cơ sở dữ liệu:
Là một tập hợp các dữ liệu có tổ chức được quản lí bằng hệ quản trị
cơ sở dữ liệu Trong hệ thống có ba cơ sở dữ liệu bao gồm cơ sở dữliệu người dùng, cơ sở dữ liệu các thông tin về số lượng bàn ăncũng như các thông tin về món ăn và thực phẩm
Doanh thu:
Là tổng giá trị mang tính kinh tế mang về cho nhà hàng, quán ăn
Trang 121 Tổng quan về Java
Java được phát triển bởi Sun Microsystem, giới thiệu vào tháng 6 năm
1995 Từ đó, nó đã trở thành một công cụ lập trình của các lập trình viênchuyên nghiệp Java được xây dựng trên nền tảng của C và C++, do đó, nó
sử dụng các cú pháp của C cũng như các đặc trưng hướng đối tượng củaC++
Với khẩu hiệu " viết một lần, chạy mọi nơi ", cho đến năm 2018, Java làmột trong những ngôn ngữ được dùng phổ biến nhất trên thế giới, đặc biệtcho các ứng dụng web client- server Theo thống kê, trên thế giới cókhoảng 9 triệu lập trình viên Java
2 Ngôn ngữ lập trình
2.1 Tổng quan về ngôn ngữ lập trình Java
- Ngôn ngữ lập trình: Java là một ngôn ngữ lập trình bậc cao, hướng
đối tượng, bảo mật và mạnh mẽ
▪Platform: Bất cứ môi trường phần cứng hoặc phần mềm nào mà
Trang 13Java được gọi là Platform.
- Các đặc trưng cơ bản của ngôn ngữ Java:
▪Đơn giản: Những người thiết kế mong muốn phát triển một ngôn
ngữ dễ học và quen thuộc với đa số lập trình viên Do đó, Java được loại bỏ các đặc trưng phức tạp của C và C++ như thao tác con trỏ, thao tác nạp đè (overload) Java không sử dụng lệnh
"goto" cũng như file header(.h) Cấu trúc "struct" và "union" cũngđược loại bỏ khỏi Java
▪Hướng đối tượng: Trong Java, mọi thứ đều là một Object Java
có thể dễ dàng mở rộng và bảo trì vì nó được xây dựng dựa trên
mô hình Object
▪Độc lập phần cứng và hệ điều hành: Nhờ đặc trưng này, giúp
một chương trình được viết tại một máy nhưng có thể được chạy
ở bất kì đâu
▪Mạnh mẽ: Java yêu cầu chặt chẽ về kiểu dữ liệu và phải mô tả rõ
ràng khi viết chương trình Chúng sẽ được kiểm tra lúc biên dịch
và cả trong thời gian thông dịch Vì vậy, Java loại bỏ được các kiểu dữ liệu dễ gây ra lỗi
▪Bảo mật: Với tính năng an toàn của Java, nó cho phép phát triển
các hệ thống không có virut, giả mạo Các kỹ thuật xác thực dựa trên mã hoá khóa công khai
▪Phân tán: Java có thể dùng để xây dựng các ứng dụng có thể làm
Trang 14khác nhau.
▪Đa luồng: Chương trình Java sử dụng kỹ thuật đa tiến trình
(Multithread) để thực thi các công việc đồng thời Chúng cũng cung cấp giải pháp đồng bộ giữa các tiến trình Đặc tính hỗ trợ đa tiến trình này cho phép xây dựng các ứng dụng trên mạng chạy uyển chuyển
▪Động: Java được thiết kế như một ngôn ngữ động để đáp ứng cho
những môi trường mở Các chương trình Java bổ sung các thông tin cho các đối tượng tại thời gian thực thi Điều này cho phép khả năng liên kết động các mã
2.2 Ứng dụng của ngôn ngữ lập trình Java
1 Các ứng dụng cho hệ điều hành Android: Nếu bạn có một chiếc
điện thoại Android thì đồng nghĩa với việc mọi ứng dụng mà bạnđang sử dụng đều được hình thành và phát triển trên nền tảng Javabởi vì hệ điều hành Android được lập trình Java hỗ trợ tối đa Vậynên đây quả là một cơ hội lớn cho các lập trình viên Java khi sựphát triển của Android ngày càng lớn mạnh Android tuy sử dụngmáy ảo JVM và các package khác, nhưng phần code thì vẫn đượcviết bằng Java
2 Các ứng dụng bảo mật cao: Java là ngôn ngữ lập trình có tính bảo
mật cao nên nó thường được sử dụng vào trong các dịch vụ tàichính, ngân hàng Trên thế giới hiện nay có rất nhiều ngân hàng sửdụng Java để viết các hệ thống giao dịch điện tử, các hệ thống xácnhận và kiểm toán, các dự án xử lý dữ liệu và một số công việc
Trang 15Charted và các ngân hàng khác.
3 Các ứng dụng web Java: Lập trình Java không chỉ được sử dụng
trên thiết bị di động mà còn được biết đến là nền tảng của của cácứng dụng website Đây cũng là ngôn ngữ được sử dụng nhiều trongcác ứng dụng web và thương mại điện tử Nhiều tổ chức chính phủ,
y tế, bảo hiểm, giáo dục, quốc phòng và một số bộ phận khác cóứng dụng web được xây dựng bằng Java
4 Các công cụ phần mềm: Hiện nay có rất nhiều các công cụ phát
triển và phần mềm hữu ích được viết bằng Java, ví dụ: Eclipse,InetelliJ Idea và Netbans IDE
5 Không gian nhúng: Ban đầu Java được phát triển để phục vụ cho
các thiết bị nhúng nhưng sau đó ngày càng được phát triển mở rộng
ra các lĩnh vực khác Bởi vậy với châm ngôn "viết một lần, chạymọi nơi" cho thấy rằng Java đang mang lại nhiều lợi ích to lớn
6 Các công nghệ Big Data: Hadoop và các công nghệ big data khác
cũng đang sử dụng Java theo cách này hay cách khác, ví dụ:HBase, Accumulo (mã nguồn mở) và ElasticSearch
7 Trong lĩnh vực giao dịch chứng khoán: Java có một lợi thế nữa
đó là sử dụng phù hợp với các hệ thống có hiệu suất cao, bởi vìmặc dù hiệu suất có thua chút ít so với ngôn ngữ native, nhưng bạnlại có được sự an toàn, linh động và bảo trì với tốc độ nhanh hơn
8 Các ứng dụng khoa học: Hiện nay Java thường là một lựa chọn
mặc định cho các ứng dụng khoa học, bao gồm cả xử lý ngôn ngữ
tự nhiên
Trang 16liệu, lớp này là lớp để truy xuất với CSDL, chỉ duy nhất lớp nàyđược làm việc với DATABASE.
- DTO: Lớp trung gian, lớp định nghĩa các table trong DATABASE,
định nghĩa cột của nó cũng như để ta gán data khi query lấy dữ liệu
- VIEW(Form): Lớp này là lớp hiển thị giao diện và các chức năng để
người dùng cuối sử dụng
4 Giới thiệu công nghệ Java Swing
4.1: Tổng quan về lập trình Java Swing
Java Swing là cách gọi rút gọn khi người ta nhắc đến Swing của Java Foundation (JFC) Nó là bộ công cụ GUI mà Sun Microsystems pháttriển để xây dựng các ứng dụng tối ưu dùng cho window (bao gồm các thành phần như nút, thanh cuộn…)
Trang 17Java Tuy nhiên, nó lại khác với AWT ở chỗ bộ công cụ này thuộc loại nền tảng độc lập, bao gồm các thành phần nhẹ và phức tạp hơn AWT.
Các gói javax.swing bao gồm các lớp cho Java Swing API như JMenu, JButton, JTextField, JRadioButton, JColorChooser,…
Việc xây dựng ứng dụng sẽ trở nên dễ dàng hơn với Java Swing vì chúng ta có các bộ công cụ GUI giúp đỡ công việc
Swing được chính thức phát hành vào tháng 3/1998 Nó đi kèm với thư viện Swing 1.0 với hơn 250 lớp, 80 giao tiếp
Hiện nay con số này đã được tăng lên, ở phiên bản Swing 1.4 có 451 lớp và 85 giao tiếp
Các bản phát hành Java 2 (SDK 1.2 và các phiên bản mới hơn) đều bao gồm Swing trong runtime environment
4.2: Ứng dụng của Java Swing
- Java Swing được dùng để hỗ trợ tạo giao diện đồ hoạ người dùng(với Java)
- Bộ công cụ này cung cấp các bộ điều khiển nâng cao như thanhtrượt, colorpicker, Tree, TabbedPane và bảng điều khiển
- Swing có những đặc điểm:
▪Độc lập với thiết bị
▪Có thể tuỳ chỉnh, mở rộng
Trang 18▪Có thể cấu hình
Ngoài ra bạn cũng có thể tùy chỉnh các điều khiển xoay một cách dễ dàng mà không ảnh hưởng đến các thành phần khác
4.3: Cấu trúc phân cấp lớp Java Swing
- Phân cấp của API Java swing như liệt kê ở hình dưới đây:
Trang 19Jcomponent như JButton, JComboBox, JList, JLabel đều có thể đượcthêm vào lớp Container.
- Container là các window như Frame và Dialog Các container này chỉ có thể thêm một thành phần vào chính nó
4.4: Các phương thức được sử dụng phổ biến của Component Class.
Có một số phương thức trong lớp Component được sử dụng khá phổbiến, đó là:
public void add(Component c) Bổ sung một thành phần trên một phần
khácpublic void setSize(int width,int
Trang 205 Giới thiệu về SQL Sever
5.1 SQL Sever là gì ?
Trang 21SQL server hay còn được gọi là Microsoft SQL Server, nó từ viết tắt của
MS SQL Server Đây chính là một loại phần mềm đã được phát triển bởiMicrosoft và nó được sử dụng để có thể dễ dàng lưu trữ cho những dữ liệudựa theo tiêu chuẩn RDBMS
SQL Server có khả năng cung cấp đầy đủ các công cụ cho việc quản lý từgiao diện GUI đến sử dụng ngôn ngữ cho việc truy vấn SQL Điểm mạnhcủa SQL là có nhiều nền tảng được kết hợp cùng như: ASP.NET, C# đểxây dựng Winform cũng chính nó có khả năng hoạt động độc lập Tuy
Trang 22▪ T-SQL là một trong những loại ngôn ngữ thuộc quyền sở hữucủa Microsoft và được gọi với cái tên Transact-SQL Nó thường cung
cấp thêm rất nhiều cho các khả năng khai báo biến, thủ tục lưu trữ và
▪Giúp người sử dụng có thể duy trì việc lưu trữ bền vững
▪Cho phép bạn tạo ra nhiều cơ sở dữ liệu hơn
▪Có khả năng phân tích dữ liệu bằng SSAS
▪Nó có khả năng bảo mật cao
▪Việc tạo ra được các báo cáo bằng SSRS — SQL Server ReportingServices sẽ được dễ dàng hơn
▪Các quá trình sẽ được thực hiện bằng SSIS — SQL ServerIntegration Services
Trang 235.3: Các phiên bản SQL Sever ?
Phiên bản 1: SQL Server 2012
Bản 2012 được cung cấp các tính năng mới như chỉ mục cột, có thể được
sử dụng để thực hiện các lưu trữ theo hướng định dạng trên cột dành chocác ứng dụng Ngoài ra, việc phân tích dữ liệu luôn được sẵn sàng và trang
bị công nghệ để có thể khắc phục các thảm họa
Trang 25Phiên bản 3: Microsoft SQL Server 2016
Phiên bản này cũng có thêm nhiều tính năng bao gồm sự điều chỉnh hiệusuất, phân tích hoạt động cho thời gian thực, sự hỗ trợ của đám mây
Trang 26Phiên bản 4: SQL Server 2017
SQL Server 2017 đã được mở rộng để hỗ trợ Docker được thêm các hệthống Windows dựa trên phiên bản trước để bao gồm các thùng chứa dựatrên Linux SQL Server 2017 hỗ trợ lập trình Python, vì là ngôn ngữ mởnguồn và được sử dụng tương đối rộng rãi trong các ứng dụng phân tích
Trang 27Phiên bản 5: SQL Server 2019
Bản 2019 cho phép người được sử dụng để tham gia vào các thùng chứaSQL Server, HDFS và Spark cùng nhau bằng nhiều tính năng Ngoài ra, nócòn giới thiệu cho việc xây dựng chỉ mục cột, xây dựng lại cũng như chegiấu đi dữ liệu tĩnh Từ đó, phục hồi dữ liệu tăng tốc mới và thực hiện,
Trang 28Includes None
Extends Đăng kí
Dòng sự kiện
Dòng sự kiện chính B1 Từ giao diện người dung chọn mục tài khoản
B2 Người dung chọn nhân viên để tạo tài khoản hoặc cập nhật tài khoản cho người đó
B3 Hệ thống hiển thị giao diện đăng kí, yêu cầu người dung nhập thông tin vào form đăng kí
B4 Sau khi nhập thông tin người dung cập nhật tài khoản Dòng sự kiện thay
Trang 29UC- Đăng nhập
Định nghĩa Người dung sau khi có tài khoản hệ thống muốn đăng
nhập vào hệ thống Actor Quản lí, nhân viên
Includes None
Extends Đăng nhập
Điều kiện tiên quyết Người dung có tài khoản đăng nhập vào hệ thống
Dòng sự kiện
Dòng sự kiện chính B1 Sau khi truy cập vào phần mềm hiển thị giao diện
yêu cầu người dùng đăng nhập tài khoản B2 Người dung đăng nhập hệ thống theo tài khoản đã được đăng kí
B3 Hệ thống kiểm tra thông tin và xử lí yêu cầu Dòng sự kiện thay
Trang 30UC- Món ăn
Định nghĩa Quản lí danh sách món ăn của nhà hàng và giá tiền cũng
như số lượng món ăn Actor Quản lí, nhân viên
Includes None
Extends Quản lí món ăn
Điều kiện tiên quyết Để có thể xem danh sách quản lí món ăn người dung bắt
buộc phải có tài khoản truy cập hệ thống và đăng nhập
hệ thống Dòng sự kiện
Dòng sự kiện chính B1 Người dung chọn mục chức năng món ăn
B2 Hiển thị giao diện danh sách quản lí món ăn B3 Người dung có thể cập nhật danh sách món ăn bằng cách thêm, sửa, xóa món ăn
B4 Lưu Dòng sự kiện thay
thế
Điều kiện sau
Trang 31Bảng 4 Use case Hóa đơn
UC- Hóa đơn
Định nghĩa Quản lí hóa đơn theo danh sách món ăn khách hàng đã
lựa chọn và tính toán giá tiền, thanh toán hóa đơn cho khách hàng
Actor Quản lí, nhân viên
Includes None
Extends Hóa đơn
Điều kiện tiên quyết Để có thể xem hóa đơn người dung bắt buộc phải có tài
khoản truy cập hệ thống và đăng nhập hệ thống Dòng sự kiện
Dòng sự kiện chính B1 Người dung chọn mục chức năng hóa đơn
B2 Hiển thị giao diện hóa đơn đầy đủ thông tin hóa đơn của khách hàng
B3 Người dung có thể chọn các chức năng thêm, sửa, xóa, CT khuyến mại nếu cần
B4 Chọn chức năng Thanh toán Dòng sự kiện thay
thế
Điều kiện sau
Trang 32Bảng 5 Use case CT Hóa đơn
UC- CT Hóa đơn
Tên Lịch sử hóa đơn
Định nghĩa Quản lí lịch sử các hóa đơn thanh toán và nội dung chi
tiết từng hóa đơn Actor Quản lí, nhân viên
Includes None
Extends Quản lí lịch sử danh sách hóa đơn
Điều kiện tiên quyết Để có thể xem danh sách lịch sử hóa đơn người dung bắt
buộc phải có tài khoản truy cập hệ thống và đăng nhập
hệ thống Các hóa đơn đã được khách hàng chọn món và được lưu lại
Dòng sự kiện
Dòng sự kiện chính B1 Người dung chọn mục chức năng CT hóa đơn
B2 Hiển thị giao diện lịch sử hóa đơn B3 Người dung chọn hóa đơn cần làm việc B4 Hiển thị thông tin chi tiết hóa đơn đó B5 Người dung kiểm tra các thông tin hóa đơn B6 Người dung có quyền chỉnh sửa các thông tin cho chi tiết hóa đơn đó
B6 Cập nhật, hoặc xóa thông tin vừa chỉnh sửa của hóa đơn đó
B7 Sau khi chỉnh sửa cập nhật lại hóa đơn xong, in hóa đơn
Dòng sự kiện thay
thế
Điều kiện sau
Trang 33Bảng 6 Use case Doanh thu
UC- Doanh thu
Định nghĩa Quản lí doanh thu của nhà hàng theo từng loại món ăn
khác nhau, theo từng nhân viên hóa mốc thời gian Actor Quản lí
Includes None
Extends Doanh thu
Điều kiện tiên quyết Để có thể xem doanh người dung bắt buộc phải có tài
khoản của quản lí để truy cập hệ thống và đăng nhập hệ thống Các hóa đơn đã được hoàn thiện và thanh toán Dòng sự kiện
Dòng sự kiện chính B1 Người dung chọn mục chức năng doanh thu
B2 Hiển thị giao diện thống kê doanh thu B3 Người dùng có thể chọn các chức năng món ăn, nhân viên, thời gian để tìm kiếm
B4 Sau khi chọn chức năng người dung sử dụng chức năng tìm kiếm để kiểm tra doanh thu theo chức năng đang sử dụng
B5 Bấm nút tìm kiếm và kiểm tra thông tin Dòng sự kiện thay
thế
Điều kiện sau
Trang 34Bảng 7 Use case Nhân viên
UC- Nhân viên
Định nghĩa Quản lí nhân viên nhà hàng với các thông tin của nhân
viên, có thể cập nhật, chỉnh sửa hoặc thêm thông tin nhân viên
Actor Quản lí
Includes None
Extends Nhân viên
Điều kiện tiên quyết Để có thể xem và chỉnh sửa thông tin nhân viên thì yêu
cầu người đó phải là quản lí, có tài khoản hệ thống và đã đăng nhập vào hệ thống
Dòng sự kiện
Dòng sự kiện chính B1 Người quản lí chọn chức năng nhân viên
B2 Hiển thị giao diện của nhân viên với các thông tin về nhân viên đó
B3 Người dung có thể chọn các chức năng thêm, sửa, xóa hoăc lưu thông tin nhân viên
B4 Chọn tên nhân viên để xem và kiểm tra thông tin Dòng sự kiện thay
thế
Điều kiện sau
Trang 35Bảng 8 Use case tài khoản
UC- Tài khoản
Định nghĩa Quản lí tài khoản nhân viên nhà hàng với các thông tin
của nhân viên, có thể thêm, sửa, xóa hoặc lưu tài khoản nhân viên Thậm chí người quản lí có thể cài lại mật khẩu đối với nhân viên quên mật khẩu đăng nhập
Actor Quản lí
Includes None
Extends Quản lí tài khoản
Điều kiện tiên quyết Để có thể xem và chỉnh sửa thông tin quản lí tài khoản
thì yêu cầu người đó phải là quản lí, có tài khoản hệ thống và đã đăng nhập vào hệ thống
Dòng sự kiện
Dòng sự kiện chính B1 Người quản lí chọn chức năng tài khoản
B2 Hiển thị giao diện thông tin về tài khoản của nhân viên với các thông tin của từng nhân viên đó
B3 Người dung có thể chọn các chức năng thêm, sửa, xóa hoăc lưu thông tin tài khoản nhân viên
B4 Chọn tên nhân viên để xem hoặc để chỉnh sửa B5 Lưu thông tin đã chỉnh sửa
B6 Đối với tài khoản quên mật khẩu chọn chức năng cài lại mật khẩu để thay đổi mật khẩu mới
Dòng sự kiện thay
thế
Điều kiện sau
Trang 36Bảng 9 Use case tìm kiếm
UC- Tìm kiếm
Định nghĩa Tìm kiếm các thông tin cần thiết tùy thuộc vào các chức
năng của phần mềm giúp người dung tìm kiếm các thông tin một cách nhanh chóng và chính xác
Actor Quản lí, nhân viên
Includes None
Extends Tìm kiếm
Điều kiện tiên quyết Người dùng cần có tài khoản đăng nhập sử dụng hệ
thống Kết quả có thể hiển thị yêu cầu cần có dữ liệu Dòng sự kiện
Dòng sự kiện chính B1 Người dung sử dụng nút tìm kiếm
B2 Người dung tìm kiếm nội dung cần thiết B3 Nhấn nút tìm kiếm
B4 Hệ thống kiểm tra thông tin và tìm kiếm B5 Nếu tồn tại hệ thống sẽ hiển thị
Dòng sự kiện thay
thế
Điều kiện sau Hiển thị kết quả tìm kiếm
Trang 372.1 Hình ảnh giao diện đăng nhập