1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng phần mềm quản lý nhà hàng khánh linh

62 1,4K 5

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 62
Dung lượng 2,7 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Giống như việc bạn có thể tái sử dụng các khối xây dựnghay bản sao của nó trong một tòa lâu đài, một ngôi nhà ở, một con tàu vũ trụ, bạn cũng có thể tái sử dụng các thành phần đối tượng

Trang 1

MỤC LỤC

LỜI NÓI ĐẦU 3

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 4

1.1 Phương pháp hướng đối tượng 4

1.1.1 Khái niệm hướng đối tượng 4

1.1.2 Các ưu điểm và các giai đoạn của chu trình phát triển phần mềm với mô hình hướng đối tượng 4

1.1.2.1 Ưu điểm 4

1.1.2.2 Giai đoạn của chu trình phát triển phần mềm với mô hình hướng đối tượng 5

1.2 Chu trình phát triển phần mềm 7

1.2.1- Chu Trình Phát Triển Phần Mềm (Software Development Life Cycle): 7

1.2.2 Các giai đoạn của chu trình phát triển phần mềm .8

1.3 Sơ lược về UML 8

1.3.1 UML là gì? 8

1.3.2 Mô hình khái niệm của UML: 9

1.3.3 Qui trình phát triển phần mềm hướng đối tượng bằng UML: 16

1.4 Cơ sở dữ liệu PostgreSql 17

CHƯƠNG 2: BÀI TOÁN QUẢN LÝ NHÀ HÀNG 18

2.1 Mô tả bài toán 18

2.1.1 Các loại hóa đơn được sử dụng trong nhà hàng 18

2.1.2 Cách tính lương cho nhân viên nhà hàng 20

2.3 Nghiên cứu hiện trạng và giải quyết vấn đề 20

2 4 Yêu cầu tin học hóa 22

2.5 Xác định các Actor 22

2.5.1 Nhân viên quản trị hệ thống 22

2.5.2 Nhân viên kế toán 22

2.5.3 Nhân viên hành chính 22

Trang 2

2.5.4 Nhân viên bán hàng 22

2 6 Use Case Diagram và các sơ đồ hoạt động 23

2.6.1 Mô hình Use case Diagram của Actor quản trị hệ thống 23

2.6.2 Mô hình Use Case Diagram của Actor kế toán 27

2.6.3 Mô hình Use case Diagram của Actor quản lý 33

2.6.4 Mô hình Use case Diagram actor bán hàng 40

2.7 SEQUENCE DIAGRAM 42

2.7.1 Quản trị hệ thống 42

2.7.2 Kế toán 43

2.7.3 Quản lý 46

2.7.4 Bộ phận bán hàng 48

2.8 PHÂN TÍCH CLASS DIAGRAM 50

2.8.1 Xác định các lớp 50

2.8.2 Danh sách các thuộc tính và phương thức 50

2.8.3 Class Diagram 52

CHƯƠNG 3 : THIẾT KẾ CƠ SỞ DỮ LIỆU 53

VÀ CÀI ĐẶT CHƯƠNG TRÌNH 53

3.1 Thiết kế cơ sở dữ liệu 53

3.2 Sơ đồ quan hệ 54

3.3 Cài đặt phần mềm 55

TÀI LIỆU THAM KHẢO 61 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN ERROR! BOOKMARK NOT

DEFINED

Trang 3

LỜI NÓI ĐẦU

Nhịp độ phát triển của Công Nghệ Thông Tin đang là một vấn đề rất được các ngành Khoa Học, Giáo Dục, Kinh Tế… quan tâm Nó hiện hữu với một tầm vóc hết sức mạnh mẽ, to lớn và ngày đang một lớn mạnh thêm

Việc ứng dụng Công Nghệ Thông Tin vào các lĩnh vực làm sao để đạt đuợc một cách có hiệu quả Sự lựa chọn và vận dụng những phần mềm sao cho phù hợp và đạt được kết quả tốt

Để lựa chọn một phần mềm phù hợp bao giờ cũng quan trọng đối với các doanh nghiệp Ngày nay các phần mềm cơ bản đã được ứng dụng và phát triển rộng rãi trong hầu hết mọi doanh nghiệp Thế nhưng yêu cầu của người sử dụng phần mềm ngày càng đa dạng và nhiều tính năng hơn Do đó yêu cầu người làm phần mềm phải đáp ứng được yêu cầu trên

Cũng nhằm mục đích nói trên, mà đề tài “Xây Dựng Phần Mềm Quản Lý Nhà Hàng Khánh Linh” được ra đời

Phần mềm Quản Lý Nhà Hàng là một trong những phần mềm phổ biến hiện nay mà hầu như cơ sở kinh doanh nhà hàng nào cũng cần đến

Em xin chân thành cảm ơn cô giáo Hà Thị Thanh, cùng toàn thể các thầy cô

trong bộ môn công nghệ phần mềm và các bạn trong khoa đã giúp đỡ em hoàn thành đề tài này

Trang 4

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT

1.1 Phương pháp hướng đối tượng

1.1.1 Khái niệm hướng đối tượng

Hướng đối tượng là thuật ngữ thông dụng hiện thời của nghành công nghiệp phần mềm Các công ty đang nhanh chóng tìm cách áp dụng và tích hợp công nghệ mới này vào các ứng dụng của họ Thật sự là đa phần các ứng dụng hiện thời đều mang tính hướng đối tượng Nhưng hướng đối tượng có nghĩa là gì? Lối tiếp cận hướng đối tượng là một nối tư duy về vấn đề theo lối ánh xạ các thành phần trong bài toán vào các đối tượng ngoài đời thực Với lối tiếp cận này, chúng ta chia ứng dụng thành các thành phần nhỏ, gọi là các đối tượng, chúng tương đối độc lập với nhau Sau đó ta lại có thể xây dựng ứng dụng bằng cách chắp các đối tượng đó lại với nhau Hãy nghĩ đến trò chơi xây lâu đài bằng các mẩu gỗ Bước đầu tiên là tạo hay mua một vài loại mẩu gỗ căn bản, từ đó tạo nên các khối xây dựng căn bản của mình Một khi đã có những khối xây dựng đó bạn

có thể chắp ráp chúng lại với nhau để tạo lâu đài Tương tự như vậy một khi xây dựng một số đối tượng căn bản trong thế giới máy tính, bạn có thể chắp chúng lại với nhau để tạo ứng dụng của mình

1.1.2 Các ưu điểm và các giai đoạn của chu trình phát triển phần mềm với

mô hình hướng đối tượng

1.1.2.1 Ưu điểm

Tính tái sử dụng(Reusable): Phương pháp phân tích và thiết kế hướng đối tượng thực hiện theo các thuật ngữ và khái niệm của phạm vi lĩnh vực ứng dụng(Tức là của doanh nghiệp hay đơn vị mà hệ thống tương lai cần phục vụ), nên nó tạo sự tiếp cận tương ứng giữa hệ thống và vấn đề thực ngoài đời Vì quá trình phát triển phần mềm đồng thời là quá trình cộng tác của khách hang,/người dung, nhà phân tích nhà thiết kế, nhà phát triển, chuyên gia lĩnh vực, chuyên gia

kỹ thuật,… nên lối tiếp cận này khiến cho việc giao tiếp giữa họ với nhau được

dễ dàng hơn

Trang 5

Một trong những ưu điểm quan trọng bậc nhất của phương pháp phân tích thiết kế hướng đối tượng là tính tái sử dụng: bạn có thể tạo các thành phần(đối tượng) một lần và dùng chúng nhiều lần sau đó Giống như việc bạn có thể tái sử dụng các khối xây dựng(hay bản sao của nó) trong một tòa lâu đài, một ngôi nhà

ở, một con tàu vũ trụ, bạn cũng có thể tái sử dụng các thành phần (đối tượng) căn bản trong các thiết kế hướng đối tượng cũng như code của một hệ thống kế toán,

hệ thống kiểm kê, hoặc một hệ thống đặt hàng

Vì các đối tượng đã được thử nghiệm kỹ càng trong lần dùng trước đó, nên khả năng tái sử dụng đối tượng có tác dụng giảm thiểu lỗi và các khó khăn trong việc bảo trì, giúp tăng tốc độ thiết kế và phát triển phần mềm

Phương pháp hướng đối tượng giúp chúng ta xử lý các vấn đề phức tạp trong phát triển phần mềm và tạo ra các thế hệ phần mềm có khả năng thích ứng và bền chắc

- Quy ước truyền thông điệp giữa các đối tượng đảm bảo cho việc mô tả các giao diện giữa các đối tượng thành phần bên trong với hệ thống bên ngoài dễ dàng hơn

- Nguyên lý bao bọc và che giấu thông tin hỗ trợ cho hệ thống an toàn hơn(public, private, protectec, package)

- Nguyên lý kế thừa dựa chính vào dữ liệu phù hợp với ngữ cảnh trong cài đặt

- Phương pháp hướng đối tượng được hỗ trợ bởi các công cụ rất hữu hiệu(đủ mạnh, đủ hiệu quả)

- Xóa bỏ được hố ngăn cách giữa các pha phân tích thiết kế cài đặt trong quá trình phát triển phần mềm

1.1.2.2 Giai đoạn của chu trình phát triển phần mềm với mô hình hướng đối tượng

Phân tích hướng đối tượng(Object Oriented Analysis - OOA)

Là giai đoạn phát triển một mô hình chính xác và súc tích của vấn đề, có thành phần là các đối tượng và khái niệm đời thực, dễ hiểu đối với người sử dụng

Trang 6

Trong giai đoạn OOA, vấn đề được trình bày bằng các thuật ngữ tương ứng với các đối tượng có thực Thêm vào đó, hệ thống cần phải được định nghĩa sao cho người dùng không chuyên tin học cũng có thể dễ dàng hiểu được

Dựa trên một vấn đề có sẵn, nhà phân tích cần ánh xạ các đối tượng hay thực thể có thực như khách hang, ô tô, người bán hang,… vào thiết kế để tạo ra được bản thiết kế gần cận với tình huống thực Mô hình thiết kế sẽ chứa các thực thể trong một vấn đề có thực và giữ nguyên các mẫu hình về cấu trúc, quan hệ, cũng như hành vi của chúng Nói một cách khác, sử dụng phương pháp hướng đối tượng chúng ta có thể mô hình hóa các thực thể thuộc một vấn đề thực mà vẫn giữ được cấu trúc, quan hệ cũng như hành vi của chúng

Thiết kế hướng đối tượng (Object Oriented Design - OOD):

Là giai đoạn tổ chức chương trình thành các tập hợp đối tượng cộng tác,mỗi đối tượng trong đó là thực thể của một lớp Các lớp là thành viên của một cây cấu trúc với mối quan hệ kế thừa

Mục đích của giai đoạn OOD là tạo thiết kế dựa trên kết quả của giai đoạn OOA, dựa trên những quy định phi chức năng, những yêu cầu về môi trường, những yêu cầu về khả năng thực thi,… OOD tập trung vào việc cải thiện kết quả của OOA, tối ưu hóa giải pháp đã được cung cấp trong khi vẫn đảm bảo thỏa mãn tất

cả các yêu cầu đã được xác lập

Trong giai đoạn OOD, nhà thiết kế định nghĩa các chức năng, thủ tục(operation), thuộc tính(attributes) cũng như mối quan hệ của một hay nhiều lớp(classs) và quyết định chúng ta cần phải được điều chỉnh sao cho phù hợp với môi trường phát triển Đây cũng là giai đoạn để thiết kế ngân hang dữ liệu và áp dụng các kỹ thuật tiêu chuẩn hóa

Về cuối giai đoạn OOD, nhà thiết kế đưa ra một loạt các biểu đồ(diagram) khác nhau Các biểu đồ này có thể được chia thành hai nhóm chính là tĩnh và động Các biểu đồ này tĩnh biểu thị các lớp và đối tượng, trong khi đó biểu đồ động biểu thị tương tác giữa các lớp và phương thức hoạt động chính xác của chúng Các lớp đó sau này có thể được nhóm thành các gói (Packages) tức là các đơn vị thành phần nhỏ hơn của ứng dụng

Trang 7

Lập trình hướng đối tượng (Object Oriented Proggamming - OOP)

Giai đoạn xây dựng phần mềm có thế được thực hiện sử dụng kỹ thuật lập trình hướng đối tượng Đó là phương thức thực hiện thiết kế hướng đối tượng qua việc sử dụng một ngôn ngữ lập trình có hỗ trợ các tính năng hướng đối tượng Một vài ngôn ngữ hướng đối tượng thường được nhắc đến là C++, Java, C#,… Kết quả chung cuộc của giai đoạn này là một loạt các code chạy được, nó chỉ được đưa vào sử dụng sau khi đã trải qua nhiều vòng quay của nhiều bước thử nghiệm khác nhau

Chu Trình Phát Triển Phần Mềm là một chuỗi các hoạt động của nhà phân tích (Analyst), nhà thiết kế (Designer), người phát triển (Developer) và người dùng (User) để phát triển và thực hiện một hệ thống thông tin Những hoạt động này được thực hiện trong nhiều giai đọan khác nhau

Nhà phân tích (Analyst): là người nghiên cứu yêu cầu của khách hàng/người

dùng để định nghĩa một phạm vi bài toán, nhận dạng nhu cầu của một tổ chức, xác định xem nhân lực, phương pháp và công nghệ máy tính có thể làm sao để cải thiện một cách tốt nhất công tác của tổ chức này

Nhà thiết kế (Designer): thiết kế hệ thống theo hướng cấu trúc của database,

screens, forms và reports – quyết định các yêu cầu về phần cứng và phần mềm cho hệ thống cần được phát triển

Chuyên gia lĩnh vực (Domain Experts): là những người hiểu thực chất vấn

đề cùng tất cả những sự phức tạp của hệ thống cần tin học hoá Họ không nhất

Trang 8

thiết phải là nhà lập trình, nhưng họ có thể giúp nhà lập trình hiểu yêu cầu đặt ra đối với hệ thống cần phát triển Quá trình phát triển phần mềm sẽ có rất nhiều thuận lợi nếu đội ngũ làm phần mềm có được sự trợ giúp của họ

Lập trình viên (Programmer): là những người dựa trên các phân tích và thiết

kế để viết chương trình (coding) cho hệ thống bằng ngôn ngữ lập trình đã được thống nhất

Người dùng (User): là đối tượng phục vụ của hệ thống cần được phát triển 1.2.2 Các giai đoạn của chu trình phát triển phần mềm

Chu trình của một phần mềm có thể được chia thành các giai đoạn như sau:

Nghiên cứu sơ bộ (Preliminary Investigation hay còn gọi là Feasibility Study) Phân tích yêu cầu (Analysis)

Thiết kế hệ thống (Design of the System)

Xây dựng phần mềm (Software Construction)

Thử nghiệm hệ thống (System Testing)

Thực hiện, triển khai (System Implementation)

Bảo trì, nâng cấp (System Maintenance)

1.3 Sơ lược về UML

1.3.1 UML là gì?

UML là ngôn ngữ chuẩn để viết kế hoạch chi tiết phần mềm Nó phù hợp cho việc mô hình hoá các hệ thống như hệ thống thông tin doanh nghiệp, các ứng dụng phân tán trên nền web, hệ thống thời gian thực… UML là ngôn ngữ mô hình hoá, đặc tả, hiển thị, xây dựng làm tài liệu vật phẩm của phân tích hình thức

và thiết kế

* UML là ngôn ngữ: Ngôn ngữ ở đây không giống như ngôn ngữ tự nhiên hay

ngôn ngữ lập trình Tuy nhiên, nó cũng có một tập các qui luật xác định cách sử

Trang 9

Từ vựng và qui tắc ngôn ngữ UML cho ta cách thức xây dựng mô hình và đọc

mô hình, nhưng không cho biết mô hình nào cần phải được lập và khi nào lập chúng

* UML là ngôn ngữ hiển thị

* UML là ngôn ngữ đặc tả: Đặc tả là mô tả rõ ràng những điểm mấu chốt của

vấn đề UML cho phép mô tả mô hình chính xác, không nhập nhằng và hoàn thiện UML hướng tới đặc tả thiết kế, phân tích và quyết định cài đặt trong quá trình phát triển, triển khai hệ thống phần mềm

* UML là ngôn ngữ để xây dựng: UML không phải là ngôn ngữ trực quan, nhưng

mô hình của nó có thể kết nối trực tiếp tới các ngôn ngữ lập trình khác nhau Có nghĩa rằng có thể ánh xạ mô hình trong UML tới các ngôn ngữ lập trình khác nhau như Java, C++ hay các bảng CSDL quan hệ, csdl hướng đối tượng Ánh xạ này cho khả năng biến đổi ngược lại từ cài đặt về mô hình UML; có nghĩa rằng

nó cho khả năng làm việc với văn bản hay đồ hoạ một cách nhất quán

* UML là ngôn ngữ làm tài liệu: UML hướng tới làm tài liệu kiến trúc hẹ thống

và các chi tiết của nó UML cho khả năng biểu diễn yêu cầu, thử nghiệm, mô hình hoá các hoạt động lập kế hoạch và quản lý sản phẩm

1.3.2 Mô hình khái niệm của UML:

Để hiểu được UML ta phải hình dung được mô hình khái niệm của ngôn ngữ

Nó đòi hỏi nắm được ba vấn đề chính, bao gồm các phần tử cơ bản để xây dựng

mô hình, quy tắc liên kết các phần tử mô hình và một số cơ chế chung sử dụng cho ngôn ngữ Khi nắm vững được các vấn đề này thì ta có thể đọc được mô hình UML và tạo ra một vài mô hình cơ bản

Phần tử cấu trúc là các danh từ trong mô hình UML Chúng là bộ phận tĩnh của

mô hình để biểu diễn các thành phần khái niệm hay vật lý Có bảy loại phần tử

cấu trúc sau:

Trang 10

Lớp Lớp là mô tả tập hợp các đối tượng cùng chung thuộc tính, thao tác,

quan hệ và ngữ nghĩa Biểu diễn đồ hoạ lớp bằng hình chữ nhật, thông thường

chúng có tên, thuộc tính và phương thức (Hình 1.2)

Giao diện: Giao diện là tập hợp các thao tác làm dịch vụ của lớp hay

thành phần Giao diện mô tả hành vi thấy được từ ngoài của thành phần Giao diện biểu diễn toàn bộ hay một phần hành vi của lớp Giao diện định nghĩa tập

đặc tả thao tác chứ không định nghĩa cài đặt của chúng (Hình 1.3)

Phần tử cộng tác: Phần tử cộng tác mô tả ngữ cảnh của tương tác Ký

pháp đồ hoạ của nó là hình elip với đường nét đứt, kèm theo tên như trên hình

1.4

thống sẽ thực hiện để đạt được một kết quả cho tác nhân nào đó Tác nhân là những gì bên ngoài tương tác với hệ thống Tập hợp các UC của hệ thống sẽ hình thành các trường hợp mà hệ thống được sử dụng Sử dụng UC để cấu trúc các phần tử có tính chất hành vi trong mô hình Nó được thực hiện hoá bởi phần tử

cộng tác như mô tả trên (Hình 1.5)

Lớp tích cực (active class): Lớp tích cực là lớp có đối tượng làm chủ một

hay nhiều tiến trình hay luồng Lớp tích cực được xem như lớp thông thường nhưng đối tượng của nó biểu diễn các thành phần có hành vi đang tương tranh

Trang 11

với các phần tử khác Ký pháp đồ hoạ tương tự như lớp bình thường nhưng biên

của nó được tô đậm

Thành phần: Thành phần biểu diễn vật lý mã nguồn, các tệp nhị phân

trong quá trình phát triển hệ thống Ký pháp đồ hoạ của nó thể hiện trong hình

1.6

Nút (note): Nút là thể hiện thành phần vật lý, tồn tại khi chương trình chạy

và biểu diễn các tài nguyên tính toán Có thể đặt tập các thành phần (Hình 1.7)

Phần tử hành vi là bộ phận động của mô hình UML Chúng là các động từ của

mô hình, biểu diễn hành vi theo thời gian và không gian Có hai loại chính là

tương tác và trạng thái

trao đổi giữa các đối tượng trong ngữ cảnh cụ thể để thực hiện mục đích cụ thể Hành vi của nhóm đối tượng hay của mỗi thao tác có thể được chỉ ra bằng tương

tác Biểu diễn đồ hoạ của thông điệp được thể hiện như trên hình 1.8

Máy trạng thái: Máy trạng thái là hành vi chỉ ra trật tự các trạng thái

mà đối tượng hay tương tác sẽ đi qua để đáp ứng sự kiện Hành vi của lớp hay công tác của lớp có thể được xác định bằng máy trạng thái Máy trạng thái kích hoạt nhiều phần tử, bao gồm trạng thái, chuyển tiếp (từ máy trạng thái này sang máy trạng thái khác), sự kiện và hoạt động (đáp ứng sự kiện) Ký pháp đồ hoạ

của trạng thái được thể hiện trên hình 1.9, nó chứa tên và trạng thái con nếu có

Trang 12

Phần tử nhóm: Phần tử nhóm là bộ phận tổ chức của mô hình UML Chỉ có

một phần tử thuộc nhóm này có tên là gói (package) Gói là cơ chế đa năng để tổ chức các phần tử nhóm Các phần tử cấu trúc, hành vi và ngay cả phần tử nhóm

có thể cho vào gói Không giống thành phần (component), phần tử nhóm hoàn toàn là khái niệm, có nghĩa rằng chúng chỉ tồn tại vào thời điểm phát triển hệ thống chứ không tồn tại vào thời gian chạy chương trình Ký pháp đồ hoạ của

nhóm được biểu diễn hình 1.10 Gói cho phép ta quan sát hệ thống ở mức tổng

quát hơn

Chú thích: Phần tử chú thích là bộ phận chú giải của mô hình UML Đó là

lời giải thích áp dụng để mô tả các phần tử khác trong mô hình Phần tử chú thích

được gọi là lời ghi chú (note) Ký pháp đồ hoạ của chúng được thể hiện trên hình

1.10

Có bốn loại quan hệ trong UML, bao gồm quan hệ phụ thuộc, kết hợp, khái quát hoá và hiện thực hoá Chúng là các khối cơ sở để xây dựng mọi quan hệ trong UML

 Phụ thuộc (dependency): Phụ thuộc là quan hệ ngữ nghĩa giữa hai phần tử

trong đó thay đổi phần tử độc lập sẽ tác động đến ngữ nghĩa của phần tử phụ

thuộc Ký pháp đồ hoạ của nó được thể hiện trên hình 1.11

Trang 13

 Kết hợp (association): Kết hợp là quan hệ cấu trúc để mô tả tập liên kết

(một liên kết là kết nối giữa các đối tượng) Khi đối tượng của lớp này gửi / nhận thông điệp đến từ đối tượng của lớp kia thì ta gọi chúng lầ có quan hệ kết hợp

Ký pháp đồ hoạ của kết hợp được mô tả trên hình 1.12, chúng có thể chứa tên

nhiệm vụ và tính nhiều (multiplicity)

 Tụ hợp (arggegation): là dạng đặc biệt của nó trên hình 1.13 Một dạng đặc

biệt của tập hợp là quan hệ hợp thành (composition), trong đó nếu như đối tượng toàn thể bị huỷ bỏ thì các đối tượng bộ phận của nó cũng bị huỷ bỏ theo Biểu

diễn đồ hoạ của tập hợp như trên hình 1.14

 Khái quát hoá (generalization): Khái quát hoá là quan hệ đặc biệt hoá khái

quát hoá trong đó đối tượng cụ thể sẽ kế thừa các thuộc tính và phương pháp của đối tượng tổng quát Ký pháp đồ hoạ của khái quát hoá được mô tả trên hình

1.15

 Hiện thực hoá (ralization): Hiện thực hoá là quan hệ ngữ nghĩa giữa giao

diện và lớp (hay thành phần) hiện thực lớp; giữa UC và hợp tác hiện thực UC

Biểu diễn đồ hoạ của nó được mô tả trên hình 1.16

 Biểu đồ UML:

Biểu đồ là biểu diễn đồ hoạ tập các phần tử mô hình Vẽ biểu đồ để biểu diễn

hệ thống đang xây dựng dưới các góc độ quan sát khác nhau Có thể hiểu biểu

Trang 14

đồ là ánh xạ của hệ thống Một phần tử có thể xuất hiện ở một hay nhiều biểu đồ

Về lý thuyết thì biểu đồ có thể bao gồm tổ hợp vô số phần tử và quan hệ vừa mô

tả trên UML cho khả năng xây dựng một vài biểu đồ trực quan để biểu diễn các khía cạnh khác nhau của hệ thống, bao gồm biểu đồ trường hợp sử dụng (use case diagram), biểu đồ trình tự (sequence diagram), biểu đồ cộng tác (collaboration diagram), biểu đồ lớp (class diagram), biểu đồ trạng thái (state transition diagram), biểu đồ thành phần (component diagram), và biểu đồ triển khai (deployment diagram)

 Biều đồ trường hợp sử dụng (Use case):

Biểu đồ này chỉ ra tương tác giữa các UC và tác nhân UC biểu diễn các chức năng của hệ thống Tác nhân là con người hay hệ thống khác cung cấp hay thu nhận thông tin từ hệ thống Biểu đồ UC tập trung vào quan sát trạng thái tĩnh của các UC trong hệ thống Nó đặc biệt quan trọng trong việc tổ chức và mô hình hoá

hệ thống Vì UC biểu diễn yêu cầu hệ thống từ góc nhìn của người dùng, cho nên

UC là chức năng mà hệ thống phải có Biểu đồ chỉ ra tác nhân nào khởi động

UC và khi nào tác nhân nhận thông tin từ hệ thống Biểu đồ hình 2.16 chỉ ra tương tác giữa các UC và tác nhân của hệ thống rút tiền tự động ATM

 Biểu đồ trình tự (sequence):

Biểu đồ trình tự chỉ ra luồng chức năng xuyên qua các UC, nó là biểu đồ mô tả tương tác giữa các đối tượng và tập trung vào mô tả trật tự các thông điệp theo

Trang 15

 Biểu đồ cộng tác (collaboration):

Biểu đồ cộng tác chỉ ra các thông tin như biểu đồ trình tự nhưng theo cách khác, nó tập trung vào tổ chức cấu trúc của các đối tượng gửi và nhận thông điệp

 Biểu đồ lớp (class diagram):

Biểu đồ lớp chỉ ra tương tác giữa các lớp trong hệ thống Các lớp được xem

như kế hoạch chi tiết của các đối tượng Thí dụ biểu đồ lớp cho UC Rút tiền

được mô tả trên hình 1.19

 Biểu đồ chuyển trạng thái (state transition):

Trang 16

Biểu đồ chuyển trạng thái mô tả vòng đời của đối tượng, từ khi nó được sinh ra đến khi nó bị phá huỷ Biểu đồ chuyển trạng thái cung cấp cách thức mô hình hoá các trạng thái khác nhau của đối tượng Trong khi biểu đồ lớp cung cấp bức tranh tĩnh về các lớp và quan hệ của chúng thì biểu đồ chuyển trạng thái được sử dụng

để mô hình hoá các hành vi động của hệ thống Biểu đồ chuyển trạng thái chỉ ra hành vi động của đối tượng Thí dụ, đối tượng tài khoản trong ngân hàng có thể ở trong một vài trạng thái như mở, đóng, hay rút quá mức Tài khoản sẽ ứng xử khác nhau với mỗi trạng thái khác nhau Hình 1.20 là thí dụ biểu đồ chuyển trạng

thái của lớp Tài khoản

Hình 1.20 Biểu đồ chuyển trạng thái của lơp tài khoản

 Biểu đồ thành phần (component):

Biểu đồ thành phần cho ta cái nhìn vật lý của mô hình Biểu đồ thành phần cho

ta thấy các thành phần phần mềm trong hệ thống và quan hệ giữa chúng Hai loại thành phần trong biểu đồ, đó là thành phần khả thực và thành phần thư viện

 Biểu đồ triển khai (deployment):

Biểu đồ triển khai chỉ ra bố cục vật lý của mạng và các thành phần hệ thống sẽ đặt ở đâu Trong thí dụ hệ thống ATM thì ATM gồm nhiều hệ thống con chạy tách biệt trên các thiết bị vật lý khác nhau hay còn gọi là nút

1.3.3 Qui trình phát triển phần mềm hướng đối tượng bằng UML:

Quy trình phát triển phần mềm hướng đối tượng bằng UML gồm có các giai đoạn sau:

Trang 17

Đặc tả yêu cầu (Requirement Specification): Trong giai đoạn này, mục

đích chính là nắm bắt được các yêu cầu của khách hàng đối với hệ thống, tạo ra

mô hình Use case và mô hình khái niệm

Thiết kế (design): Giai đoạn này tập trung vào tạo các biểu đồ tương tác

(interaction diagrams) và thiết kế các biểu đồ lớp (class diagrams)

Sự thực thi hay thi hành dự án (Implementation): Đây là một quy trình

vạch ra chiến lược đưa ra các bước thiết kế mã trong ngôn ngữ lập trình thực sự

1.4 Cơ sở dữ liệu PostgreSql

PostgreSQL là một hệ quản trị cơ sở dữ liệu quan hệ và đối tượng dựa trên

POSTGRES, bản 4.2, được khoa điện toán của đại học California tại Berkeley phát triển POSTGRES mở đường cho nhiều khái niệm quan trọng mà các hệ

quản trị dữ liệu thương mại rất lâu sau mới có

PostgreSQL là một chương trình mã nguồn mở xây dựng trên mã nguồn ban đầu của đại học Berkeley Nó theo chuẩn SQL99 và có nhiều đặc điểm hiện đại:

Câu truy vấn phức hợp (complex query)

Khóa ngoại (foreign key)

Thủ tục sự kiện (trigger)

Các khung nhìn (view)

Tính toàn vẹn của các giao dịch (integrity transactions)

Việc kiểm tra truy cập đồng thời đa phiên bản (multiversion concurrency

Trang 18

CHƯƠNG 2: BÀI TOÁN QUẢN LÝ NHÀ HÀNG

KHẢO SÁT BÀI TOÁN THỰC TẾ VÀ GIẢI QUYẾT VẤN ĐỀ

2.1 Mô tả bài toán

Nhà hàng Khánh Linh là nhà hàng cao cấp, chuyên phục vụ những khách hàng

có nhu cầu về ẩm thực Nhà hàng có một thực đơn phong phú với nhiều món ăn ngon và mới lạ Nhà hàng có một số lượng nhân viên lớn, với nhiều nhà cung cấp

và rất nhiều khách hàng Công việc quản lý nhà hàng từ trước tới nay chủ yếu là dựa trên sổ sách giấy tờ Việc cập nhật các thông tin và kết xuất thông tin đều làm bằng tay vì vậy khó tránh khỏi sai sót, thêm vào đó cùng một thông tin nhiều khi phải vào nhiều lần ở nhiều sổ sách khác nhau

Vì vậy công việc thiết kế và xây dựng một phần mềm quản lý nhà hàng để giúp cho việc quản lý nhà hàng có hiệu quả, nhanh chóng, chính xác là nhu cầu thực tế và hoàn toàn cần thiết

2.1.1 Các loại hóa đơn được sử dụng trong nhà hàng

2.1.1.1 Hóa đơn bán hàng

Khi khách hàng thanh toán tiền thì nhân viên nhà hàng phải đưa cho khách hàng hóa đơn thanh toán Mẫu hóa đơn như sau:

Trang 19

2.1.1.2 Phiếu đặt bàn

Khi khách hàng có nhu cầu đặt bàn trước thì nhân viên bán hàng sẽ lập một phiếu đặt bàn, việc lập phiếu đặt bàn giúp cho việc quản lý được dễ dàng hơn Mẫu phiếu đặt bàn:

2.1.1.3 Hóa đơn nhập hàng

Khi Nhà cung cấp đến cung cấp hàng cho nhà hàng, nhân viên nhà hàng có nhiệm vụ nhập hàng và lập hóa đơn nhập hàng

Trang 20

2.1.2 Cách tính lương cho nhân viên nhà hàng

Do đặc thù của việc kinh doanh nhà hàng lên nhân viên nhà hàng có mức lương là cố định, mỗi nhân viên có một mức lương cụ thể(mức lương này do người quản lý nhà hàng đề xuất), việc tính lương của nhân viên dựa vào số ngày công của nhân viên nhân với mức lương cơ bản tính theo ngày của nhân viên(Mức lương cơ bản hàng ngày = Lương tháng/ 27 ngày)

2.2 Các vấn đề chính của công tác quản lý nhà hàng

Công tác quản lý nhà hàng gồm các vấn đề chính: Quản lý hàng hóa(các loại thực phẩm để chế biến món ăn), quản lý món ăn, quản lý đặt bàn, quản lý món

ăn, quản lý nhân viên, nhà cung cấp, quản lý tính lương cho nhân viên

2.3 Nghiên cứu hiện trạng và giải quyết vấn đề

Trong nhà hàng Khánh Linh hệ thống tổ chức có sự hỗ trợ lẫn nhau bao gồm:

Bộ phận điều hành, bộ phận hành chính, bộ phận bán hàng(nhân viên), bộ phận đầu bếp, bộ phận kế toán

2.3.1 Bộ phận điều hành

- Quản lý phân phối hoạt động của nhà hàng

- Quản lý và điều hành hoạt động của nhân viên

- Phân loại khách hàng

- Quyết định giá chính thức cho từng món ăn

- Nhận báo cáo từ các bộ phận khác như: kế toán, nhân viên bán hàng, đầu bếp…Để từ đó có cách nhìn cụ thể về nhà hàng và thị hiếu của khách hàng, để từ

đó có kế hoạch định hướng phát triển nhằm đáp ứng yêu cầu thị hiếu của khách hàng và tiến triển của cho công ty

2.3.2 Bộ phận hành chính

Ghi chép những chi phí vận chuyển, mua hàng từ nhà cung cấp, chế độ tiền lương công ty

Theo dõi quá trình làm việc để có chế độ khen thưởng đối với những người

có đóng góp tích cực vào quá trình phát triển của nhà hàng hoặc kỷ luật đối với những cá nhân không hoàn thành nhiệm vụ hoặc có biểu hiện tiêu cực

Trang 21

Bên cạnh đó phải có sự theo dõi về biến động giá cả và đây là biến động theo thời gian Để từ đó có sự điều chỉnh về giá cả trong nhà hàng

2.3.3 Bộ phận bán hàng(nhân viên)

Làm việc trực tiếp tại cửa hàng: Tại cửa hàng công việc bán hàng là lập đơn đặt bàn, đặt món ăn và yêu cầu món ăn của khách, sau đó đưa cho bộ phận kế toán để nhập dữ liệu vào máy tính Khi khách hàng có yêu cầu đặt bàn trước khách hàng phải đăng ký ở bộ phận bán hàng các thông tin về mình để dễ liên lạc

và quản lý như: tên khách hàng, địa chỉ liên lạc, số điện thoại…

Khách hàng có thể chọn các món ăn từ bảng thực đơn sau đó chuyển qua nhân viên để được phục vụ Khi khách hàng có nhu cầu gọi món ăn nào hay đặt bàn nào thì nhân viên bán hàng phải trao đổi thông tin với khách hàng, như vậy việc phục vụ khách hàng sẽ được thuận tiện hơn

Khi khách hàng đã thỏa mãn nhu cầu của mình(đã ăn uống xong) nhân viên bán hàng chuyển qua bộ phận kế toán để nhân viên kế toán in hóa đơn thanh toán

và thanh toán cho khách hàng

3.3 Bộ phận đầu bếp

Bộ phận này có nhiệm vụ chính là chế biến các món ăn theo các thực đơn của khách hàng Theo dõi số lượng các loại thực phẩm để báo lên bộ phận hành chính

3.4 Bộ phận kế toán

Công việc của bộ phận này là thực hiện các nghiệp vụ như thống kê các hóa đơn bán hàng, các phiếu nhập hàng, các đơn đặt hàng và doanh thu chi của cửa hàng vào cuối mỗi kỳ

Thống kê các loại thực phẩm và đồ uống: Nhân viên kế toán phải kiểm tra quá trình nhập hàng, bán hàng Đa phần các chứng từ là phiếu nhập, hóa đơn thanh toán, đơn đặt hàng… thống kê các món ăn, đồ uống bán chạy nhất hay chậm nhất

Thống kê năng suất của nhân viên trong từng công việc

Trang 22

2 4 Yêu cầu tin học hóa

Với nhu cầu thông tin và kinh doanh của nhà hàng, tạo sự thuận lợi cho quá trình quản lý Vì vậy chương trình được xây dựng cần phải tiện lợi, đơn giản đẹp mắt, dễ dùng và cách hướng dẫn sử dụng chương trình sao cho dễ hiểu, các thao tác dễ dàng, việc cập nhật dữ liệu thuận tiện

PHÂN TÍCH BÀI TOÁN

2.5 Xác định các Actor

2.5.1 Nhân viên quản trị hệ thống

Người sử dụng thuộc nhóm này sẽ được toàn quyền truy xuất những chức năng trong hệ thống và có thể cấp quyền hay thay đổi quyền của những người sử dụng khác Quyền này thường dành riêng cho người quản trị chương trình

2.5.2 Nhân viên kế toán

Người dùng thuộc nhóm này có thể truy xuất được một số các chức năng trong menu hệ thống: phần quản lý nhân viên, nghiệp vụ…

2.5.3 Nhân viên hành chính

Coi được tất cả báo cáo và theo dõi, nhưng không thể truy xuất chức năng cập nhật hay điều chỉnh dữ liệu

2.5.4 Nhân viên bán hàng

Người dung thuộc nhóm này chỉ có thể truy suất vào chức năng đặt bàn trong

hệ thống quản lý, còn mọi việc đều được thông qua nhân viên kế toán

Trang 23

2 6 Use Case Diagram và các sơ đồ hoạt động

2.6.1 Mô hình Use case Diagram của Actor quản trị hệ thống

Điều kiện tiên quyết : Actor phải đang nhập vào hệ thống

Kết quả : Use Case thực hiện xong sẽ lưu thông tin người dùng

Tác nhân chính : Actor quản trị hệ thống nhập thông tin người dùng hoặc sửa quyền của người dùng

Trang 24

2 Kịch bản chính:

Các bước của luồng các sự kiện chính bao gồm:

1 Hoạt vụ bắt đầu khi người sử dụng khởi động chương trình

2 Người sử dụng nhập vào tên và password

3 Hệ thống sẽ đăng nhập vào chương trình

4 Hoạt vụ kết thúc

Sơ đồ hoạt động

tiep tuc Kiem tra

no

Nhap ten va pas s word

Cho dang nha p

vao h e thong yes

Điều kiện tiên quyết : Actor phải đang nhập vào hệ thống

Kết quả : Use Case thực hiện xong sẽ lưu thông tin người dùng

Trang 25

Tác nhân chính : Actor quản trị hệ thống nhập thông tin người dùng hoặc sửa quyền của người dùng

2 Kịch bản chính :

Các bước của luồng các sự kiện chính bao gồm:

1 Hoạt vụ bắt đầu khi quản trị hệ thống tùy chọn đổi người dùng

2 Người quản trị hệ thống nhập vào thông tin người dùng hay sửa thông tin người dùng

3 Hệ thống sẽ lưu thông tin

4 Hoạt vụ kết thúc

3 Kịch bản mở rộng : <Sơ đồ hoạt động>

Doi nguoi dung

Huy nguoi dung Them nguoi Thay doi quyen

Trang 26

Thay đổi quyền

Mục đích sử dụng : Use Case “ đổi quyền sử dụng ” cho phép nhân viên nhà hàng đổi quyền sử dụng

Điều kiện tiên quyết: Actor phải đăng nhập hệ thống

Actor Đổi password : Actor nhập tên và password cũ và sau đó nhập password mới

2 Kịch bản chính :

Các bước của luồng các sự kiện chính bao gồm:

1 Hoạt vụ bắt đầu khi người sử dụng lựa trùy chọn đổi password

2 Người sử dụng nhập vào tên và password cũ, sau đó nhập password mới

3 Hệ thống sẽ đổi password người sử dụng

4 Hoạt vụ kết thúc

Trang 27

2.6.2 Mô hình Use Case Diagram của Actor kế toán

Dang Nhap

Doi Password

Tinh Luong

Ke toan

Sua cham cong

<<uses>>

<<uses>>

<<uses>>

Them BH Ban Hang

Sua BH

<<uses>>

Sua HH Xoa HH

Trang 28

Phân tích Use case của Actor kế toán

Điều kiện tiên quyết : Actor phải đăng nhập vào hệ thống

Kết quả : Use case thực hiện xong sẽ chấm công được cho các nhân viên của nhà hàng

Actor Chấm công : Kế toán chấm công cho nhân viên

2 Kịch bản chính

Các bước của luồng sự kiện chính bao gồm:

1 Hoạt vụ bắt đầu khi nhân viên kế toán lựa chọn chức năng chấm công

2 Người kế toán nhập những thông tin cho việc chấm công của nhân viên

3 Hệ thống lưu thông tin

4 Hoạt vụ kết thúc

Trang 30

Them BH Sua BH

Ke toan

Ban hang

Kết quả : Use Case thực hiện xong sẽ lưu thông tin về khách hàng và những đồ

ăn thức uống đã bán cho khách hàng

Actor Bán hang : Nhập thông tin khách hàng và những đồ ăn thức uống đã bán

2 Kịch bản chính

1 Hoạt vụ bắt đầu khi khách hàng vào bàn gọi món ăn hoặc khách hàng đặt bàn

2 Người kế toán nhập thông tin về khách hàng và những món ăn, thức uống khách hàng yêu cầu

3 Hệ thống sẽ lưu thông tin về khách hàng, món ăn của khách, và tổng số tiền cần phải thanh toán

Sửa bán hàng

Trang 31

Mục đích sử dụng : Use case “Sửa bán hàng” cho phép nhân viên kế toán sửa thông tin về bàn ăn đang được sử dụng, ở đây kế toán chỉ thêm những đồ ăn thức uống mà khách hàng yêu cầu thêm và những thay đổi đồ ăn thức uống của khách hàng

Các bước của luồng sự kiện chính bao gồm:

1 Hoạt vụ bắt đầu khi nhân viên kế toán lựa chọn tùy chọn nhập hàng hóa

2 Nhân viên kế toán nhập thông tin về hàng hóa

3 Hệ thống sẽ lưu những thông tin về hàng hóa đã được nhập

4 Hoạt vụ kết thúc

Ngày đăng: 09/08/2016, 11:47

HÌNH ẢNH LIÊN QUAN

Hình 1.20 Biểu đồ chuyển trạng thái của lơp tài khoản - Xây dựng phần mềm quản lý nhà hàng khánh linh
Hình 1.20 Biểu đồ chuyển trạng thái của lơp tài khoản (Trang 16)
3.2  Sơ đồ quan hệ - Xây dựng phần mềm quản lý nhà hàng khánh linh
3.2 Sơ đồ quan hệ (Trang 54)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w