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

Bước 1: Nhân viên bán hàng sẽ tư vấn, hỗ trợ khách hàng thông tin về sản phẩm. Bước 2: Sau khi khách hàng đã chọn được sản phẩm ưng ý, nhân viên bán hàng sẽ tiến hành lập hóa đơn với những thông tin của sản phâm mà khách hàng đã chọn Bước 3: Kiểm tra số lượng sản phẩm mà khách hàng yêu cầu trong kho hàng có đáp ứng được không? Nếu còn đủ hàng thì tiến hành thêm hóa đơn và chuyển xuống bộ phận giao hàng cho khách hàng. Ngược lại thông báo cho khách hàng và tick vào ô đã hết hàng để gửi 1 thông báo cho bộ phận nhập hàng biết.

doc65 trang | Chia sẻ: tuandn | Lượt xem: 21098 | Lượt tải: 2download
Bạn đang xem trước 20 trang tài liệu Xây dựng phần mềm quản lý bán hàng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
MỤC LỤC GIỚI THIỆU TÀI LIỆU Mục đích của tài liệu Nhắm xây dựng một phần mềm quản lý Nhân sự và bán máy tính của công ty TNHH Thương Mại & Dịch Vụ Phố Hiến, đáp ứng được các nhu cầu của Nhân sự sử dụng phần mềm bên phía công ty Phạm vi của tài liệu Áp dụng cho công ty có mô hình mô hình tổ chức và kinh doanh về mày tính. Thuật ngữ và chữ cái viết tắt Từ viết tắt Từ đầy đủ Giải thích TNHH Trách nhiệm hữu hạn PM Phần Mềm TM&DV Thương mại Và Dịch Vụ CN Chức năng QL Quản lý THÔNG TIN KHẢO SÁT Thông tin chung Thời gian, địa điểm khảo sát Thời gian Địa điểm Thành phần tham gia Thành phần cung cấp thông tin Nội dung khảo sát Thông tin tham chiếu từ đơn vị Thông tin liên hệ Thông tin dự án Cơ cấu tổ chức của đơn vị Giám Đốc Bán Hàng Kế Toán Bảo Hành Cơ sở hạ tầng của khách hàng Hệ thống mang: Mạng dây và không dây Hệ thống máy :Có 4 mày để bàn và một laptop Phần mềm sử dụng: phần mềm kế toán misa Yêu cầu của khách hàng STT Tên yêu cầu 1 Tính bảo mật cao, phân quyền người sử dụng 2 Giao diện đẹp dễ sử dụng 3 Tính chính sác tuyệt đối 4 Đầy đủ chức năng , in báo cáo , sửa, xóa, thêm, cảnh Báo 5 Chức năng rõ ràng tách bạch theo phân quyền người sử dụng … … Quy trình nghiệp vụ Quy trình nhập hàng Bước 1: Nhân viên nhập hàng sẽ điền đầy đủ thông tin của sản phẩm Bước 2: Kiểm tra các thông số kỹ thuật, chất lượng của sản phẩm Bước 3: Tiến hành nhập sản phẩm vào hệ thống thông qua phần mềm quản lý bán hàng. Quy trình bán hàng Bước 1: Nhân viên bán hàng sẽ tư vấn, hỗ trợ khách hàng thông tin về sản phẩm. Bước 2: Sau khi khách hàng đã chọn được sản phẩm ưng ý, nhân viên bán hàng sẽ tiến hành lập hóa đơn với những thông tin của sản phâm mà khách hàng đã chọn Bước 3: Kiểm tra số lượng sản phẩm mà khách hàng yêu cầu trong kho hàng có đáp ứng được không? Nếu còn đủ hàng thì tiến hành thêm hóa đơn và chuyển xuống bộ phận giao hàng cho khách hàng. Ngược lại thông báo cho khách hàng và tick vào ô đã hết hàng để gửi 1 thông báo cho bộ phận nhập hàng biết. Các biểu mẫu, tài liệu và quy định liên quan Danh mục tài liệu STT Tên tài liệu Mô tả tài liệu Nghiệp vụ liên quan 1 Tài liệu tham khảo đấu thầu 2 Tài liều báo cáo tài chính 3 Tài liệu Quản lý nhân sự cũ của công ty 4 Tài liệu word,Excel, lưu trữ thông tin nhập , xuất hàng … … Danh mục các quy định liên quan STT Tên quy định Mô tả quy định Nghiệp vụ liên quan 1 Quy định sử phạt khen thưởng, Tính lương cho nhân viên 2 Quy định bán hàng và phong cách phục vụ khách hàng Bán hàng, quản lý thông tin khách hàng 3 Quy định Nhập ,xuất hàng Nhập hàng, Bán hàng 4 Quy định sử dụng phần mềm để thống kê báo cáo Thống kê, báo cáo Danh mục các biểu mẫu CƠ SỞ LÝ THUYẾT Tổng quan về UML UML là gì? UML là ngôn ngữ dùng để: Trực quan hóa Chi tiết hóa Sinh ra mã ở dạng nguyên mẫu Lập và cung cấp tài liệu Các sơ đồ lớp Sơ đồ lớp (Class Diagram) Bao gồm một tập hợp các lớp, các giao diện, sơ đồ hợp tác và mối quan hệ giữa chúng. Nó thể hiện mặt tĩnh của hệ thống. Sơ đồ đối tượng (Object Diagram) Bao gồm một tập hợp các đối tượng và mối quan hệ giữa chúng. Đối tượng là một thể hiện của lớp, sơ đồ đối tượng là một thể hiện của sơ đồ lớp. Sơ đồ Use case (Use Case Diagram) Khái niệm actor: là những người dùng(tác nhân) hay hệ thống khác ở bên ngoài phạm vi của hệ thống mà có tương tác với hệ thống. Sơ đồ Use case bao gồm một tập hợp các Use case, các actor và thể hiện mối quan hệ tương tác giữa actor và Use case. Nó rất quan trọng trong việc tổ chức và mô hình hóa hành vi của hệ thống Sơ đồ tuần tự (Sequence Diagram) Là một dạng biểu đồ tương tác (interaction), biểu diễn sự tương tác giữa các đối tượng theo thứ tự thời gian. Nó mô tả các đối tượng liên quan trong một tình huống cụ thể và các bước tuần tự trong việc trao đổi các thông báo(message) giữa các đối tượng đó để thực hiện một chức năng nào đó của hệ thống. Sơ đồ hợp tác (Collaboration) Gần giống như sơ đồ Sequence, sơ đồ hợp tác là một cách khác để thể hiện một tình huống có thể xảy ra trong hệ thống. Nhưng nó tập trung vào việc thể hiện việc trao đổi qua lại các thông báo giữa các đối tượng chứ không quan tâm đến thứ tự của các thông báo đó. Có nghĩa là qua đó chúng ta sẽ biết được nhanh chóng giữa 2 đối tượng cụ thể nào đó có trao đổi những thông báo gì cho nhau. Sơ đồ chuyển trạng thái (Statechart) Chỉ ra một máy chuyển trạng thái, bao gồm các trạng thái, các bước chuyển trạng thái và các hoạt động. Nó đặc biệt quan trọng trong việc mô hình hóa hành vi của một lớp giao diện(interface class) hay hợp tác và nó nhấn mạnh vào các đáp ứng theo sự kiện của một đối tượng, điều này rất hữu ích khi mô hình hóa một hệ thống phản ứng(reactive). Sơ đồ hoạt động (Activity) Là một dạng đặc biệt của sơ đồ chuyển trạng. Nó chỉ ra luồng đi từ hoạt động này sang hoạt động khác trong một hệ thống. Nó đặc biệt quan trọng trong việc xây dựng mô hình chức năng của hệ thống và nhấn mạnh tới việc chuyển đổi quyền kiểm soát giữa các đối tượng Sơ đồ thành phần (Component) Chỉ ra cách tổ chức và sự phụ thuộc của các thành phần(component). Nó liên quan tới sơ đồ lớp, trong đó một thành phần thường ánh xạ tới một hay nhiều lớp, giao diện, collaboration. Quan hệ Thừa kế (Generalization) Chỉ ra cấu hình của hệ thống khi thực thi. Kiến trúc của hệ thống Khi xem xét một hệ thống, chúng ta cần xây dựng các mô hình từ những khía cạnh khác nhau, xuất phát từ thực tế là những người làm việc với hệ thống với những vai trò khác nhau sẽ nhìn hệ thống từ những khía cạnh khác nhau. UML xét hệ thống trên 5 khía cạnh: Hình 1: Kiến trúc hệ thống Use Case view: Mô tả cách ứng xử của hệ thống. Logical view: Mô tả các đối tượng. Process view: Mô tả việc đồng bộ hoá và các xử lý đồng thời. Implementation view: Mô tả sự phụ thuộc và kết hợp giữa các component. Deployment view: Chỉ ra cấu hình phần cứng. Sơ đồ Use Case (Use Case diagram) Mô tả toàn cảnh hệ thống, đơn giản và ít ký hiệu Mục đích của sơ đồ Use Case Mô hình hoá chuỗi hành động Cung cấp tổng thể hệ thống. Đưa ra cơ sở để xác định giao tiếp giữa người, máy đối với hệ thống. Mô hình hoá cho một Use Case. Cho người dùng hiểu và giao tiếp với hệ thống. Làm cơ sở cho phát thảo các đặc tả kiểm tra. Các ký hiệu cơ bản Khái niệm Ký hiệu Ý nghĩa Actor Người dùng hệ thống, một hệ thống khác hoặc một sự kiện thời gian. Actor có thể: Chỉ cung cấp thông tin cho hệ thống, chỉ lấy thông tin từ hệ thống, hoặc nhận thông tin từ hệ thống và cung cấp thông tin cho hệ thống. Use Case Là một khối chức năng được thực hiện bởi hệ thống để mang lại một kết quả có giá trị đối với một Actor nào đó. Quy ước đặt tên Use Case: động từ đi trước, danh từ hoặc cụm từ theo sau. Relationship Quan hệ giữa các phần tử trong mô hình, bao gồm kết hợp (association), tổng quát hoá (generalization). Include Một Use Case có thể có chức năng của một Use Case khác Extend Dùng để chỉ các hành vi tự chọn (có thể hoặc không), các hành vi theo điều kiện nhất định. Sơ đồ lớp Khái niệm Đối tượng (Object) Mô hình hoá một vật hoặc một khái niệm trong thế giới thực. Một đối tượng có các đặc điểm như: Trạng thái (state), ứng xử (behavior), định danh (indentity). Lớp (class) Là tập hợp các đối tượng có chung các thuộc tính, các ứng xử và ngữ nghĩa. Là một khuôn mẫu để tạo ra đối tượng. Đối tượng là một thể hiện của một lớp. Gói ( package) Là tập hợp các lớp hay các gói có liên quan với nhau. Sơ đồ lớp ( Class diagram) Cung cấp một bức tranh mô tả một số hoặc tất cả các lớp trong mô hình Thể hiện cấu trúc và ứng xử của một hay nhiều lớp. Thể hiện mối quan hệ thừa kế giữa các lớp. Các kiểu lớp Khái niệm Ký hiệu Ý nghĩa Lớp thực thể (Entity class) Mô hình hoá các thông tin lưu trữ trong hệ thống. Độc lập với các đối tượng xung quanh. Lớp biên (Boundary class) Giao diện tương tác với hệ thống. Lớp điều khiển ( Control class) Thể hiện trình tự ứng xử trong hệ thống. Điều phối các hoạt động cần thực hiện Sơ đồ tuần tự Sơ đồ tuần tự biểu diễn sự tương tác của các đối tượng theo thứ tự thời gian. Đặc điểm của biểu đồ tuần tự là phản ánh cấu trúc của biểu đồ lớp và thứ tự tương tác. Mục đích Lập mô hình tương tác đối tượng. Hiện thực hoá Use Case Lập mô hình các kịch bản sử dụng của Use Case Khám phá tính logic của một phép toán, hàm hay thủ tục phức tạp. Môi trường phát triển Kiến trúc .NET framework Khi Microsoft thông báo phát minh .NET với ngôn ngữ C# vào tháng 7/2000, mãi đến tháng 4/2003 phiên bản 1.1 của bộ .NET Framework mới được lưu hành, nó là một Framework triển khai phần mềm hoàn toàn mới, một cách tiếp cận mới làm cho lập trình dễ hơn. Cách dễ hiểu nhất để nghĩ về .NET Framework là một môi trường mà code của bạn sẽ hoạt động. Có nghĩa là .NET sẽ quản lý việc thi hành chương trình, khởi động chương trình, cấp phép hoạt động, cấp phát ký ức để dữ liệu làm việc, hổ trợ việc thu hồi tài nguyên và ký ức không dùng đến, …Tuy nhiên ngoài việc tiến hành những công tác vừa nêu trên, .NET còn chuẩn bị sẵn một thư viện lớp được gọi là .NET Framework base class library cho phép thực hiện nhiều tác vụ trên windowns. Tóm lại, .NET Framework giữ vai trò: quản lý việc thi hành chương trình của bạn và cung cấp dịch vụ mà chương trình của bạn cần đến. .NET Framework Data and XMl classes (ADO.NET, SQL, XSLT, Xpath, XML,…) Framework Base Classes Library (IO, string, net, security, threading, text, reflection, collections, GUI, XML/SOAP,…) Common Language Runtime (CLR) Common Tye Speciication (CTS) Common Language Speciication (CLS) Web Service Windows Forms Web Forms Windows Platform Hình 2 : Kiến trúc .NET Framework Các thành phần chính của .NET Framework là: Common Language Runtime(CLR) và Framework Base Classes Library. Common Language Runtime(CLR): Là bộ phận quản lý việc thi hành đoạn mã của bạn, nạp chương trình cho chạy đoạn mã theo những tiến trình nhất định cũng như quản lý các tiến trình này và cung cấp tất cả các dịch vụ cho tiến trình. CLR tạo một môi trường mà chương trình được thi hành. CLR bao gồm một virtual machine tương tự như java virtual machine. Ở cấp cao, CLR cho biên dịch các đối tượng, tiến hành các kiểm tra an toàn đối với các đối tượng này, bố trí chúng lên kí ức, cho thi hành và cuối cùng là thu hồi kí ức mà chúng chiếm dụng trong thời gian thi hành nhưng không còn sử dụng nữa. CRL được xem là linh hồn của .NET Framework. Framework Base Classes Library: Đây là một thư viện lớp rất đồ sộ chứa những code đã viết sẵn, cung cấp một API thiên đối tượng bao gồm tất cả các chức năng được bao trùm bởi .NET Framework. Với hơn 5000 lớp khác nhau, Framework Classes Library cung cấp những tiện nghi giúp triển khai nhanh chóng các ứng dụng trên desktop, client server, các dịch vụ web và các ứng dụng khác. Ngôn ngữ C# Ngôn ngữ C# là một trong số các ngôn ngữ được .NET Framework hỗ trợ, C# khá đơn giản, chỉ khoảng 80 từ khóa và hơn mười mấy kiểu dữ liệu được xây dựng sẵn. Tuy nhiên, ngôn ngữ C# có ý nghĩa cao khi nó thực thi những khái niệm lập trình hiện đại. C# bao gồm tất cả những hỗ trợ cho cấu trúc, thành phần component, lập trình hướng đối tượng. Những tính chất đó hiện diện trong một ngôn ngữ lập trình hiện đại. Và ngôn ngữ C# hội đủ những điều kiện như vậy, hơn nữa nó được xây dựng trên nền tảng của hai ngôn ngữ mạnh nhất là C++ và Java. Microsoft SQL server 2000 SQL Server 2000 là một hệ quản trị 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 2000 đượ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 2000 có thể hoạt động kết hợp tốt với các server khác như Microsoft Internet Information Server (IIS), E-Commerce Server, Proxy Server.... SQL Server 2000 được cấu tạo bởi nhiều thành phần như Relational Database Engine, Analysis Service và English Query.... 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 MÔ TẢ YÊU CẦU HỆ THỐNG Các yêu cầu chức năng Chức năng Đăng nhập Mô tả: Người dùng đăng nhập vào hệ thống. Điều kiện tiên quyết: Hệ thống chưa được đăng nhập. Trình tự thực hiện: Từ giao diện chính, người dùng chọn đăng nhập vào hệ thống. Hệ thống yêu cầu nhập thông tin đăng nhập (tên đăng nhập và mật khẩu). Người dùng nhập thông tin đăng nhập. Người dùng nhấn nút Đăng Nhập. [Ngoại lệ a] Hệ thống kiểm tra thông tin đăng nhập. [Ngoại lệ b] Hệ thống thông báo đăng nhập thành công. Use case kết thúc. Ngoại lệ a: Người dùng nhấn nút Hủy Bỏ. a.4. Người dùng nhấn nút Hủy Bỏ khi không muốn đăng nhập nữa . a.5. Use case kết thúc. Ngoại lệ b: Thông tin không hợp lệ. b.5. Thông tin đăng nhập không hợp lệ. b.6. Hệ thống thông báo thông tin đăng nhập không hợp lệ, đăng nhập không thành công. b.7. Use case kết thúc. Kết quả: Đăng nhập thành công. Chức năng Quản lý người dùng Mô tả : Chức năng này cho phép quản trị viên quản lý thông tin người dùng bao gồm thêm, cập nhật và xóa người dùng thông tin người dùng. Điều kiện tiên quyết: Người dùng phải đăng nhập vào hệ thống với quyền là người quản trị (Admin). Trình tự thực hiện: Từ giao diện chính người dùng chọn quản lý người dùng. Hệ thống hiển thị giao diện quản lý người dùng. a. Thêm người dùng: Quản trị viên muốn thêm người dùng mới. a.3. Quản trị viên chọn nút Thêm Mới. a.4. Hệ thống yêu cầu nhập thông tin người dùng cần thêm. a.5. Quản trị viên nhập thông tin người dùng cần thêm. a.6. Quản trị viên chọn Lưu. [Ngoại lệ d] a.7. Hệ thống kiểm tra thông tin người dùng. [Ngoại lệ e] a.8. Thêm thành công, kết thúc use case Thêm người dùng. Ngoại lệ d: Quản trị viên không muốn thêm nũa. d.6. Quản trị viên không chọn nút Bỏ qua. d.7. Người dùng không được thêm, use case Thêm người dùng kết thúc. Ngoại lệ e: Thông tin người dùng không hợp lệ. e.7. Hệ thống thông báo thông tin người dùng cần thêm không hợp lệ, yêu cầu người dùng nhập lại. e.8. Trở lại bước a.5. Kết quả: Một người dùng được thêm vào hệ thống. b. Cập nhật người dùng: Quản trị viên muốn cập nhật thông tin người dùng. b.3. Quản trị viên chọn người dùng cần cập nhật. b.4. Quản trị viên nhập lại thông tin người dùng cần cập nhật. b.5. Quản trị viên chọn nút Lưu.[Ngoại lệ f] b.6. Hệ thống kiểm tra thông tin người dùng. [Ngoại lệ g] b.7.Cập nhật thành công, use case Cập nhật người dùng kết thúc. Ngoại lệ f: Quản trị viên không muốn cập nhật thông tin người dùng nữa. f.5. Quản trị viên chọn nút Bỏ qua. f.6. Quản trị viên không cập nhật người dùng nữa, use case Cập nhật người dùng kết thúc. Ngoại lệ g: Thông tin người dùng không hợp lệ. g.6. Hệ thống thông báo thông tin người dùng cần thêm không hợp lệ, yêu cầu người dùng nhập lại. g.7. Trở lại bước b.4. Kết quả: Thông tin của một người dùng trong hệ thống được cập nhật. c. Xóa người dùng: Quản trị viên muốn xóa người dùng. c.3. Quản trị viên chọn người dùng cần xóa. c.4. Quản trị viên chọn nút xoá. c.5. Hệ thống yêu cầu xác nhận lại có thật sự muốn xóa hay không. c.6. Quản trị viên xác nhận là muốn xóa. [Ngoại lệ h] c.7. Hệ thống kiểm tra các mối ràng buộc. [Ngoại lệ i] c.8 Người dùng được chọn bị xóa ra khỏi hệ thống, use case Xóa người dùng kết thúc. Ngoại lệ h: h.6. Quản trị viên xác nhận là không muốn xóa. h.7. Không xóa người dùng, use case Xóa người dùng kết thúc. Ngoại lệ i: Có sự ràng buộc i.7. Hệ thống thông báo có sự ràng buộc, không thể xoá, use case xoá kết thúc. Kết quả: Một người dùng bị xóa khỏi hệ thống. Chức năng Đổi mật khẩu Mô tả: Chức năng này cho phép người dùng thay đổi mật khẩu đang sử dụng Điều kiện tiên quyết: Người dùng phải đăng nhập vào hệ thống. Trình tự thực hiện: Từ giao diện chính người dùng chọn đổi mật khẩu. Hệ thống hiển thị giao diện đổi mật khẩu. Hệ thống yêu cầu nhập thông tin: mật khẩu cũ, mật khẩu mới, xác nhận mật khẩu mới. Người dùng nhập thông tin yêu cầu Người dùng chọn nút Đồng ý.[Ngoại lệ a] Hệ thống kiểm tra thông tin. .[Ngoại lệ b] Đổi mật khẩu thành công. Ngoại lệ a: Người dùng không muốn đổi mật khẩu. a.5. Người dùng chọn hủy bỏ. a.6. Kết thúc use case Đổi mật khẩu Ngoại lệ b: Mật khẩu không hợp lệ b.6. Hệ thống thông báo sai mật khẩu, yêu cầu nhập lại thông tin mật khẩu. b.7. Trở lại bước 4. Kết quả: đổi mật khẩu thành công. Chức năng Nhập hàng Mô tả: Chức năng này cho phép nhân viên nhập hàng tiến hành nhập hàng bao gồm: thêm, sửa xóa,..thông tin hóa đơn nhập hàng. Điều kiện tiên quyết: Người dùng phải đăng nhập vào hệ thống với quyền là người quản lý. Trình tự thực hiện: Từ giao diện chính người dùng chọn quản lý nhập hàng. Hệ thống hiển thị giao diện quản lý nhập hàng. a. Thêm hóa đơn: Người dùng muốn thêm hóa đơn mới. a.3. Người dùng chọn nút Thêm Mới. a.4. Hệ thống yêu cầu nhập thông tin hóa đơn cần thêm. a.5. Người dùng nhập thông tin hóa đơn cần thêm. a.6. Người dùng chọn Lưu. [Ngoại lệ d] a.7. Hệ thống kiểm tra thông tin hóa đơn [Ngoại lệ e] a.8. Thêm thành công, kết thúc use case thêm hóa đơn. Ngoại lệ d: Người dùng không muốn thêm hóa đơn mới. d.5. Người dùng chọn nút Bỏ qua. d.6. Người dùng không muốn thêm hóa đơn nữa, kết thúc use case thêm hóa đơn. Ngoại lệ e: Thông tin hóa đơn không hợp lệ. e.7. Hệ thống thông báo thông tin hóa đơn cần thêm không hợp lệ, yêu cầu người dùng nhập lại. e.8. Trở lại bước a.5. Kết quả: Một hóa đơn được thêm vào hệ thống. b. Cập nhật hóa đơn: Người dùng muốn cập nhật thông tin hóa đơn. b.3. Người dùng chọn hóa đơn cần cập nhật. b.4. Người dùng nhập lại thông tin hóa đơn. b.4. Người dùng chọn Lưu. [Ngoại lệ f] b.5. Hệ thống kiểm tra thông tin hóa đơn. [Ngoại lệ g] b.6.Cập nhật thành công, use case Cập nhật hóa đơn kết thúc. Ngoại lệ f: Người dùng không muốn cập nhật thông tin hóa đơn nữa. f.3. Người dùng không cập nhật hóa đơn nữa người dùng chọn nút bỏ qua. f.4. Kết thúc use case Cập nhật hóa đơn. Ngoại lệ g: Thông tin hóa đơn không hợp lệ. g.5. Hệ thống thông báo thông tin hóa đơn cần thêm không hợp lệ, yêu cầu nhập lại. g.6. Trở lại bước b.4. Kết quả: Thông tin của một hóa đơn trong hệ thống được cập nhật. c. Xóa hóa đơn: Người dùng muốn xóa hóa đơn. c.3. Người dùng chọn hóa đơn cần xóa. c.4 Người dùng chọn nút Xoá. c.5. Hệ thống yêu cầu xác nhận lại có thật sự muốn xóa không. c.6. Người dùng xác nhận là muốn xóa. [Ngoại lệ h] c.7. Hệ thống kiểm tra ràng buộc.[Ngoại lệ g] c.8. Hóa đơn được chọn bị xóa ra khỏi hệ thống, use case Xóa hóa đơn kết thúc. Ngoại lệ h: Người dùng không muốn xoá hóa đơn h.6. Người dùng xác nhận là không muốn xóa. h.7. Không xóa hóa đơn, use case Xóa hóa đơn kết thúc. Ngoại lệ g: có ràng buộc g.7. Hệ thống thông báo có sự ràng buộc, không thể xoá, use case xoá kết thúc. Kết quả: Một hóa đơn bị xóa khỏi hệ thống. Chức năng Bán hàng Mô tả: Chức năng này cho phép nhân viên bán hàng tiến hành bán hàng bao gồm: thêm, sửa xóa,..thông tin hóa đơn bán hàng. Điều kiện tiên quyết: Người dùng phải đăng nhập vào hệ thống với quyền là người quản lý. Trình tự thực hiện: Từ giao diện chính người dùng chọn quản lý bán hàng. Hệ thống hiển thị giao diện quản lý bán hàng. a. Thêm hóa đơn: Người dùng muốn thêm hóa đơn mới. a.3. Người dùng chọn nút Thêm Mới. a.4. Hệ thống yêu cầu nhập thông tin hóa đơn cần thêm. a.5. Người dùng nhập thông tin hóa đơn cần thêm. a.6. Người dùng chọn Lưu. [Ngoại lệ d] a.7. Hệ thống kiểm tra thông tin hóa đơn [Ngoại lệ e] a.8. Thêm thành công, kết thúc use case thêm hóa đơn. Ngoại lệ d: Người dùng không muốn thêm hóa đơn mới. d.5. Người dùng chọn nút Bỏ qua. d.6. Người dùng không muốn thêm hóa đơn nữa, kết thúc use case thêm hóa đơn. Ngoại lệ e: Thông tin hóa đơn không hợp lệ. e.7. Hệ thống thông báo thông tin hóa đơn cầ