CHƯƠNG I : ĐẠI CƯƠNG VÀ KHẢO SÁT HỆ THỐNG
I.CƠ SỞ LÝ THUYẾT
1. Nghiên cứu – khảo sát hệ thống cũ để làm gì ?
2. Chiến lược điều tra và quy trình khảo sát hệ thống
3. Xây dựng dự án
II. MÔ TẢ HỆ THỐNG KHẢO SÁT
1. Giới thiệu về công ty TNHH Thương mại AN VIỆT NHẬT
2. Mô tả nghiệp vụ bán hàng của công ty
III. MỤC TIÊU – YÊU CẦU CHO HỆ THỐNG MỚI
1. Đánh giá về hệ thống hiện hành
2. Mục tiêu của hệ thống mới
3. Yêu cầu của hệ thống
4. Giải pháp xây dựng hệ thống mới
CHƯƠNG II : PHÂN TÍCH HỆ THỐNG VỀ CHỨC NĂNG
I. CƠ SỞ LÝ THUYẾT
1. Biểu đồ phân cấp chức năng
2. Biểu đồ luồng dữ liệu
3. Phân rã luồng dữ liệu theo mức
II. XÂY DỰNG HỆ THỐNG VỀ CHỨC NĂNG
1. Phân rã chức năng
2. Biểu đồ phân cấp chức năng
3. Biểu đồ luồng dữ liệu
4. Đặc tả tiến trình
5. Kết luận
CHƯƠNG III : PHÂN TÍCH HỆ THỐNG VỀ DỮ LIỆU
I. CƠ SỞ LÝ THUYẾT
1. Giới thiệu
2. Các khái niệm cơ bản
II. XÂY DỰNG MÔ HÌNH
1. Mô hình thực thể liên kết E/A mở rộng
2. Mô hình thực thể liên kết E/A kinh điển
3. Mô hình thực thể liên kết E/A hạn chế
4. Mô hình quan hệ
CHƯƠNG IV : THIẾT KẾ HỆ THỐNG
I.CƠ SỞ LÝ THUYẾT
1. Nhiệm vụ của thiết kế hệ thống
2. Phân định nhiệm vụ người và máy
II. THIẾT KẾ HỆ THỐNG
1. Thiết kế kiểm soát
2. Thiết kế cơ sở dữ liệu
3. Thiết kế chương trình
4. Thiết kế giao diện
5. Hướng dẫn cài đặt
KẾT LUẬN
68 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 13359 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Phân tích thiết kế hệ thông quản lý bán hàng của công ty TNHH Thương mại Việt Bình, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
gọi : Động từ kèm bổ ngữ nếu cần.
Phân rã luồng dữ liệu theo mức
Với biểu đồ luồng dữ liệu thì quá trình phân rã từ trên xuống lại là quá trình thàn lập dần dần các BLD diễn tả các chức năng của hệ thống theo từng mức.
Mỗi mức là tập hợp của các BLD :
Mức bối cảnh hay khung cảnh ( mức 0) chỉ có một BLD, trong đó chỉ có một chức năng duy nhất – chức năng tổng quát của hệ thống và các luồng thông tin trao đổi với tác nhân ngoài.
Mức đỉnh (mức1) cũng chỉ có một BLD gồm các chức năng chính của hệ thống.
Mức dưới đỉnh ( mức 2,3,4,5...) mỗi mức gồm nhiều biểu đồ luồng dữ liệu.
Công cụ sử dụng để phân rã : có 2 phương pháp chính.
Phương pháp Topdown : Từ chức năng tổng quát liên tiếp phân rã thành các chức năng con cho đến khi nhận được chức năng đơn giản nhất không thể phân rã được nữa.
Phương pháp Bootom up : Từ chi tiết đến tổng quát, gom nhóm các chức năng để thành mức chức năng cao hơn, thực hiện cho đến khi thu được chức năng của toàn hệ thống.
II. XÂY DỰNG HỆ THỐNG VỀ CHỨC NĂNG
Phân rã chức năng
Từ hệ thống thực tế đã khảo sát, việc đầu tiên là phải xác định được các chức năng nghiệp vụ cần phải tiến hành đối với hệ thống dự định xây dựng.
Từ những lý thuyết cơ bản của sơ đồ chức năng nghiệp vụ kết hợp với mô hình hệ thông trong thực tế.
Trong bài này ta sử dụng phương pháp Topdown để xây dựng và thiết kế hệ thống về mặt chức năng.
Với cơ cấu tổ chức gồm: Ban giám đốc, bộ phận bán hàng, bộ phận tài chính, bộ phận nhập hàng, bộ phận kho hàng, bộ phận giao hàng.
Mô hình chức năng tổng thể
Hệ thống bao gồm các chức năng chính sau đây :
Mô tả hệ thống :
Quản lý bán hàng : do bộ phận bán hàng và bộ phận giao hàng đảm nhiệm. Quản lý tất cả các sản phẩm bán ra và các thông tin về khách hàng, đồng thời đảm nhiệm việc vận chuyển và bàn giao sản phẩm đến tận tay khách hàng.
Quản lý tài chính : do bộ phận tài chính đảm nhiệm. Với chức năng Thu – chi, quản lý công nợ đối với khách hàng. Đây là phần quan trọng nhất quyết định đến sự vận hàng của cả công ty.
Quản lý nhập hàng : do bộ phận nhập hàng đảm nhiệm. Với công việc là gửi đơn đặt hàng đến nhà sản xuất, trực tiếp theo dõi việc chuyển và nhận hàng từ nhà cung cấp đến kho hàng của công ty.
Quản lý kho hàng : do bộ phận kho hàng đảm nhiệm. Với chức năng lưu trữ hàng hóa, theo dõi « nhập – xuất – tồn », lưu chuyển hàng hóa từ nhà cung cấp đến người tiêu dùng thông qua quy trình bán hàng.
Mô hình chức năng Quản lý Bán hàng
Quản lý bán hàng do bộ phận bán hàng và bộ phận giao hàng trực tiếp đảm nhiệm.
Mô tả chức năng :
Lập đơn đặt hàng : Khi tiếp nhận yêu cầu về sản phẩm từ phía khách hàng, kiểm tra thấy đủ điều kiện cung cấp sản phẩm cho khách hàng. Bộ phận bán hàng sẽ lập đơn đặt hàng.
Lập hóa đơn bán hàng : Sau khi đã thương lượng với khách hàng xong. Đơn đặt hàng đã có, bộ phận bán hàng sẽ lập hóa đơn bán hàng để thanh toán với khách hàng.
Lập phiếu xuất hàng : Sau khi xác định trong kho có sản phẩm khách hàng cần. Bộ phận bán hàng lập phiếu xuất hàng gửi xuống kho để lấy sản phẩm bàn giao cho khách hàng.
Cập nhật thông tin khách hàng : lấy thông tin khách hàng, lưu vào kho dữ liệu, chuyển giao thông tin khách hàng cho bộ phận tài chính.
Lập báo cáo bán hàng : Báo cáo về tình hình bán hàng trong tháng sẽ được gửi về ban giám đốc công ty.
Giao hàng : có nhiệm vụ bàn giao sản phẩm đã được yêu cầu đến tay khách hàng, trực tiếp thực hiện việc thanh toán đối với khách hàng sau đó chuyển đến cho phòng tài chính.
Mô hình chức năng Quản lý Tài chính
Quản lý tài chính do bộ phận tài chính đảm nhiệm.
Mô tả chức năng :
Nhận hóa đơn thanh toán : sau khi hàng được chuyển đến tay khách hàng. Khách hàng sẽ thanh toán hóa đơn bán hàng hoặc nợ lại theo các điều khoản đã ghi trong hợp đồng. Bộ phận bán hàng sẽ gửi trả lại và báo cáo với bộ phạn tài chính về hóa đơn thanh toán của khách hàng. Từ đó bộ phận tài chính sẽ quản lý công nợ đối với khách hàng thông qua hóa đơn thanh toán.
Quản lý thu – chi – công nợ : là nhiệm vụ đặc trưng của bộ phận tài chính. Nó có chức năng quan trọng để đảm bảo hoạt động của công ty.
Cân đối hóa đơn : là công việc để thống kê các khoản đã thu và đã chi sau đó báo cáo lên ban giám đốc công ty.
Báo cáo cân đối = Hóa đơn bán hàng – hóa đơn nhập hàng.
Thống kê : tổng hợp các khoản thu tiền thu được từ hóa đơn bán hàng. Tổng hợp các khoản chi để mua sản phẩm từ nhà cung cấp cũng như trả lương cho nhân viên công ty, cơ sở vật chất phục vụ cho công ty.
Mô hình chức năng Quản lý Nhập hàng
Quản lý nhập hàng do bộ phận nhập hàng trực tiếp đảm nhiệm và giao dịch với nhà cung cấp sản phẩm nhằm mục đích có đủ số lượng hàng phục vụ cho quá trình buôn bán của công ty.
Mô tả chức năng :
Cập nhật yêu cầu : là nơi tiếp nhận yêu cầu nhập hàng của bộ phận kho hàng và của ban giám đốc.Từ đó kiểm tra yêu cầu, liên hệ với nhà cung cấp để có được thông tin chính xác về sản phẩm cần nhập. Sau đó mới lập đơn đặt hàng gửi đến cho nhà cung cấp.
Lập đơn đặt hàng : Sau khi có các thông tin đầy đủ từ nhà cung cấp sản phẩm. Bộ phận nhập hàng sẽ tiến hàng lập đơn đặt hàng để mua sản phẩm.
Cập nhật kết quả hóa đơn : là khâu cuối cùng trong quản lý nhập hàng. Sản phẩm, thông tin, phiếu giao hàng từ nhà cung cấp sẽ được tiếp nhận. Đồng thời có nhiệm vụ thanh toán với nhà cung cấp.
Mô hình chức năng Quản lý Kho hàng
Quản lý kho hàng do Bộ phận kho hàng đảm nhiệm, quản lý việc nhập hàng và xuất hàng, theo dõi hàng hóa trong kho về nhập – xuất – tồn để thông báo lại với ban giám đốc và cập nhật thông tin đến bộ phận bán hàng.
Mô tả chức năng :
Lập phiếu xuất kho : sau khi bộ phận bán hàng đã thương lượng và thống nhất với khách hàng. Bộ phận bán hàng sẽ lập phiếu xuất hàng gửi tới kho hàng, yêu cầu xuất hàng
cho khách đúng chủng loại, số lượng... Sau đó kho hàng sẽ xuất hàng và lập phiếu xuất kho.
Lập phiếu nhập kho : khi có hàng mới về, bộ phận nhập hàng sẽ chuyển hàng đến kho hàng của công ty. Sau khi tiếp nhận đủ về số lượng hàng, chủng loại hàng, bộ phận kho hàng sẽ lập phiếu nhập kho để chứng nhận rằng đã nhận đủ lượng hàng vào kho của công ty.
Cập nhật thông tin nhập – xuất – tồn : đây là khâu quan trọng, nó quyết định trực tiếp đến hoạt động của công ty. Từ lượng hàng bán ra, lượng hàng nhập vào, những sản phẩm nào bán ít, bán chạy, còn lại trong kho...Việc thống kê đó sẽ giúp ban giám đốc vạch định rõ ràng kế hoạch cho những tháng tiếp theo. Nhằm mục đích cuối cùng đem lại doanh thu cao nhất cho công ty.
Báo cáo – thống kê : là việc không thể thiếu, để báo cáo tình hình hàng trong kho đến ban giám đốc. Qua đó thông tin cho bộ phận bán hàng về lượng hàng có trong kho để trao đổi buôn bán với khách hàng. Thông tin đến bộ phận nhập hàng để báo hàng nào còn, hàng nào hết.
Biểu đồ phân cấp chức năng
Dựa vào chức năng chi tiết của hệ thống đã phân tích ở trên, ta xây dựng biểu đồ phân cấp chức ngăn của hệ thống quản lý bán hàng như sau :
Biểu đồ luồng dữ liệu
Biểu đồ luồng dữ liệu mức khung cảnh( mức 0 )
Biểu đồ mức khung cảnh cho ta cái nhìn khái quát về hệ thống. Trong đó chỉ có một chức năng duy nhất đó là hệ thống quản lý bán hàng. Xác nhận các tác nhân đối với hệ thống.
Tác nhân ngoài của hệ thống là Khách hàng, nhà cung cấp...Với các luồng dữ liệu trao đối giữa hệ thống và các tác nhân ngoài.
Sau đây là biểu đồ luồng dữ liệu ở mức khung cảnh hay còn gọi là mức 0 :
Biểu đồ luồng dữ liệu mức khung cảnh
Biểu đồ luồng dữ liệu mức đỉnh( mức 1 )
Biểu đồ mức đỉnh miêu tả các chức năng chính của hệ thống, xác định rõ hơn mối quan hệ giứa các tác nhân trong của hệ thống. Chức năng chính của hệ thống có 4 chức năng cơ bản đó là :
Quản lý bán hàng.
Quản lý tài chính.
Quản lý nhập hàng.
Quản lý kho hàng.
Trong đó còn xác định thêm kho dữ liệu : Khách hàng, hóa đơn bán hàng.
Biểu đồ luồng dữ liệu mức dưới đỉnh ( mức 2 )
Đối với mỗi chức năng trên ta thành lập biểu đồ luồng dữ liệu dưới đỉnh định nghĩa và diễn tả các chức năng đó theo cách sau :
+ Phân rã chức năng đó thành nhiều chức năng con.
+ Thay các chức năng trên bằng các chức năng con thích hợp.
+ Nghiên cứu các quan hệ của chức năng con từ đó bổ sung các luồng dữ liệu nội bộ và các kho dữ liệu nội bộ.
Chức năng Quản lý bán hàng
Các chức năng chính trong quản lý bán hàng đó là :
1.1. Lập đơn đặt hàng
1.2. Lập hóa đơn bán hàng
1.3. Lập phiếu xuất hàng
1.4. Cập nhật thông tin khách hàng
1.5. Giao hàng
Chức năng Quản lý tài chính
Các chức năng chính trong quản lý tài chính đó là :
2.1. Nhận hóa đơn thanh toán
2.2. Quản lý thu – chi – công nợ
2.3. Cân đối hóa đơn
2.4. Thống kê
Kho dữ liệu gồm có : + Hóa đơn
+ Nhập – Xuất – Tồn
Chức năng Quản lý Nhập hàng
Chức năng chính trong quản lý nhập hàng đó là :
3.1. Cập nhật yêu cầu
3.2. Lập đơn đặt hàng
3.3. Cập nhật kết quả đơn hàng
Trong đó có :
Kho dữ liệu là Hóa đơn.
Các tác nhân : + Nhà cung cấp.
+ Bộ phận kho hàng.
+ Bộ phận tài chính
+ Ban giám đốc.
Chức năng Quản lý kho hàng
Các chức năng chính trong quản lý kho hàng gồm có :
4.1. Lập phiếu xuất kho
4.2. Lập phiếu nhập kho
4.3. Cập nhật thông tin Nhập – Xuất – Tồn
4.4. Lập báo cáo thống kê
Các kho dữ liệu là : + Phiếu xuất hàng.
+ Phiếu nhập hàng.
+ Nhập – Xuất – Tồn.
Đặc tả tiến trình
Một đặc điểm chung trong việc sử dụng BPC và BLD là diễn tả một chức năng phức tạp ta phân rã nó ra thành nhiều chức năng con đơn giản. Nói cách khác là từ một hộp đen, ta có thể giải thích nó bằng cách tách ra nhiều hộp đen. Các chức năng thu được ở mức cuối cùng tuy đơn giản nhưng cũng nên giải thích cho người đọc dễ hiểu. Bấy giờ sự giải thích chức năng được thực hiện bằng các phương tiên diễn tả trực tiếp. Gọi đó là sự đặc tả chức năng, thường gọi tắt là P-Spec (Process Specification).
Trong phần này, chúng ta chỉ làm 1 vài chức năng để xem xét cách đặc tả một tiến trình ra sao. Các chức năng trong bài đều rất đơn giản dễ hiểu, chính vì thế chúng ta có thể ngầm hiểu với nhau về từng chức năng. Sau đây là các chức năng được đặc tả :
Chức năng – Lập đơn đặt hàng
Phần đầu để :
+ Tên : Lập đơn đặt hàng.
+ Các dữ liêu :
Dữ liệu vào : dữ liệu về đơn đặt hàng, dữ liệu hàng trong kho, dữ liệu về giá sản phẩm, dữ liệu về khách hàng.
Dữ liệu ra : dữ liệu khách hàng, đơn đặt hàng.
Phần thân :
+ Nhận đơn đặt hàng của khách hàng.
+ Nếu khách hàng là mới thì cập nhật thông tin khách hàng.
+ Nếu khách hàng là cũ, thì xem xét số nợ của khách hàng ở hóa đơn thanh toán lần trước.
Nếu khách hàng còn nợ, mà khoản nợ đó lớn hơn so với quy định của công ty thì đơn đặt hàng không được chấp nhận.
Nếu khách hàng đã trả hết nợ thì có thể lập đơn đặt hàng.
+ Cập nhật thông tin hàng hóa trong kho để báo cho khách hàng.
Nếu hàng trong kho đủ. Tiến hàng lập đơn đặt hàng.
Nếu không còn hàng trong kho. Thì bộ phận bán hàng sẽ thông báo đến khách hàng, tư vấn nên chọn sản phẩm khác. Nếu khách hàng không muốn, sẽ không lập đơn đặt hàng nữa.
Chức năng – Lập Hoá đơn bán hàng
Phần đầu đề :
+ Tên : Lập hoá đơn bán hàng.
+ Dữ liệu :
Đầu vào : Thông tin về khách hàng và đơn hàng.
Đầu ra : Lập hoá đơn bán hàng.
Phần thân :
Sơ đồ khối đặc tả chức năng :
Chức năng – Lập phiếu nhập kho
Phần đầu đề :
+ Tên : Lập phiếu nhập kho.
+ Dữ liệu :
Đầu vào : Thông tin đơn đặt hàng, Thông tin nhập hàng.
Đầu ra : Lập phiếu nhập.
Phần thân : Sơ đồ khối đặc tả chức năng.
Chức năng – Lập phiếu xuất kho
Phần đầu đề :
+ Tên : Lập phiếu xuất kho.
+ Dữ liệu :
Đầu vào : Thông tin về khách hàng và hoá đơn bán hàng.
Đầu ra : Lập phiếu xuất kho.
Phần thân :
Sơ đồ khối đặc tả chức năng :
Chức năng – Cập nhật thông tin Nhập – Xuất – Tồn
Phần đầu đề :
+ Tên : Cập nhật thông tin Nhập – Xuất – Tồn.
+ Dữ liệu :
Đầu vào : Số lượng hàng nhập, số lượng hàng xuất, số lượng hàng tồn kho.
Đầu ra : Cập nhật thông tin Nhập – Xuất – Tồn.
Phần thân :
+ Lấy dữ liệu số lượng hàng nhập.
+ Lấy dữ liệu số lượng xuất nhập.
+ Số lượng hàng tồn = số lượng hàng nhập – số lượng hàng xuất.
+ Lấy dữ liệu hàng tồn trong kho để kiểm tra.
+ Tổng hàng = Nhập + Xuất + Tồn.
Chức năng - Thống kê
Phần đầu đề :
+ Tên : Thống kê.
+ Đầu vào: - Hoá đơn thanh toán thu – chi.
Số lượng khách hàng.
Số lượng hàng nhập - xuất.
+ Đầu ra : Lập báo cáo thống kê theo tháng về doanh thu, về số lượng khách mua, về số lượng hàng
Phần thân :
Lập báo cáo thống kê theo tháng.
+ Doanh thu = Tổng Thu - tổng chi
+ Tổng số lượng khách hàng đã mua hàng.
Kết luận
Sau khi phân tích hệ thống về mặt chức năng ta thấy :
+ Tất cả chức năng trong hệ thống cơ bản đã được hình thành. Có thể triển khai một cách có hiệu quả trong việc quản lý bán hàng tại công ty TNHH Thương mại An Việt Nhật.
+ Xác định được cách thức hoạt động của từng chức năng( dữ liệu đầu vào, dữ liệu đầu ra...)
+ Phân tích hệ thống về mặt chức năng chính là tiền đề để thiết kế hệ thông.
CHƯƠNG III : PHÂN TÍCH HỆ THỐNG VỀ DỮ LIỆU
I. CƠ SỞ LÝ THUYẾT.
1. Giới thiệu.
Một hệ thống trong trạng thái vận động bao gồm hai yếu tố là các chức năng xử lý và dữ liệu. Giữa xử lý và dữ liệu có mối quan hệ mật thiết chặt chẽ và bản thân dữ liệu có mối liên kết nội bộ không liên quan đến xử lý đó là tính độc lập dữ liệu. Mô tả dữ liệu được xem như việc xác định tên, dạng dữ liệu và tính chất của dữ liệu. Dữ liệu không phụ thuộc vào người sử dụng đồng thời không phụ thuộc vào yêu cầu tìm kiếm và thay đổi thông tin.
Trong mục này để thuận tiện cho phương pháp nghiên cứu chúng ta chỉ tập trung đến các phương tiện và mô hình diễn tả dữ liệu. Đó là các thông tin được quan tâm đến trong quản lý, nó được lưu trữ lâu dài, được xử lý và sử dụng trong hệ thống thông tin quản lý.
Có nhiều công cụ để mô tả dữ liệu. Các công cụ này là các cách trừu tượng hoá dữ liệu đặc biệt là mối quan hệ của dữ liệu nhằm phổ biến những cái chung nhất mà con người ta có thể trao đổi với nhau. Trong phần này chúng ta đề cập đến 2 công cụ phân tích chủ yếu:
Mô hình thực thể liên kết.
Mô hình quan hệ .
Cơ sở dữ liệu của hệ thống là những thông tin đảm bảo cho các chức năng, tiến trình hoặc chương trình tương ứng trong hệ thống hoạt độn, những thông tin cần lưu giữ trong hệ thống.
Mục tiêu của việc phân tích hệ thống về mặt dữ liệu là để làm rõ cách thức tổ chức lưu trữ dự liệu trong hệ thống. Nhiệm vụ là phải đưa ra được lược đồ khái quát về dữ liệu, là cơ sở để thiết kế sau này.
Các khái niệm cơ bản
Thực thể
Thực thể (entity) là một một vật thể cụ thể hay trừu tượng, tồn tại thực sự và khá ổn định trong thể giới thực, mà ta muốn phản ánh nó trong hệ thống thông tin.
Kiểu thực thể (entity type) là một tập hợp các thực thể mô tả một đối tượng nào đó trong hệ thống, nói một cách khác, kiểu thực thể là định nghĩa về một loại thông tin nào đó.
Tên của kiểu thực thể là danh từ chỉ lớp đối tượng trong thể giới thực.
Ví dụ :
+ Thực thể cụ thể là sinh viên Khúc Minh Hiếu, số hoá đơn 001.
+ Thực thể trìu tượng là Khoa Công nghệ thông tin.
Thuộc tính
Thuộc tính (attribute) là một đặc trưng của thực thể, thể hiện một khía cạnh nào đó của thực thể có liên quan tới hệ thống.
Thuộc tính chia làm 4 loại :
+ Thuộc tính định danh.
+ Thuộc tính mô tả.
+ Thuộc tính phức hợp.
+ Thuộc tính đa trị.
Ví dụ : Khách hàng Khúc Minh Hiếu có Mã khách hàng là 001.
Kiểu thuộc tính là tập hợp các thuộc tính có chức năng giống nhau, mô tả cùng một khía cạnh của thực thể.
Tên gọi của kiểu thuộc tính là danh từ thể hiện nó.
Liên kết
Một liên kết là một sự gom nhóm các thực thể trong đó một thực thể có một vai trò nhất định.
Ví dụ:
+ Khách hàng Khúc Minh Hiếu đã nhận hoá đơn bán hàng 001.
+ Đơn hàng 001 gồm các mặt hàng MH001 và MH002.
Một kiểu liên kết (asociation type) là một tập hợp các liên kết có cùng ý nghĩa. Một kiểu liên kết là được định nghĩa giữa nhiều kiểu thực thể. Tên của kiểu liên kết thường được dùng là một động từ ( chủ động hay bị động) phản ánh ý nghĩa của nó.
Ví dụ:
+ Kiểu liên kết nhận giữa kiểu thực thể Khách hàng và kiểu thực thể hoá đơn bán hàng.
+ Kiểu liên kết đặt mua giữa kiểu thực thể Đơn hàng và kiểu thực thể Mặt hàng.
Ở đây chúng ta nghiên cứu các kiểu liên kết sau:
1(1..1) Một và chỉ một
0..1 không hay một
0..* hay * từ không tới nhiều
1..* từ một tới nhiều
m..n từ m tới n
Hay nói chung chúng ta nghiên cứu các liên kết chính là:
+ Liên kết 1 – 1.
+ Liên kết 1 – nhiều.
+ Liên kết nhiều – nhiều.
Từ những cơ sở lý thuyết trên, dự vào dữ liệu thiết kế ta xây dựng mô hình thực thể liên kết và mô hình quan hệ .
II. XÂY DỰNG MÔ HÌNH
Mô hình thực thể liên kết là một công cụ dùng để mô tả và tập hợp các thông tin dữ liệu trong hệ thống.
Chúng ta sử dụng phân tích là:
+ Mô hình thực thể liên kết E/A mở rộng.
+ Mô hình thực thể liên kết E/A kinh điển.
+ Mô hình thực thể liên kết E/A hạn chế.
Các bước tiến hành:
+ Xác định thực thể có trong hệ thống, các thuộc tính của chúng và mối quan hệ.
+ Xây dựng mô hình thực thể liên kết E/A mở rộng.
+ Chuyển từ mô hình thực thể liên kết E/A mở rộng sang mô hình thực thể liên kết E/A kinh điển.
+ Chuyển từ mô hình thực thể liên kết E/A kinh điển mở rộng sang mô hình thực thể liên kết E/A hạn chế.
Dữ liệu của hệ thống gồm có :
+ Nhân viên, Khách hàng, Nhà cung cấp, Mặt hàng.
+ Phiếu xuất, Phiếu nhập, Đơn đặt bán hàng, Hoá đơn bán hàng, Hoá đơn mua hàng, Đơn đặt mua hàng, Phiếu giao hàng, Phiếu bảo hành.
Kiểu thực thể và các thuộc tính của nó :
+ Nhân viên (Mã NV, Tên NV, ngày sinh, giới tính, CMTND, bộ phận, địa chỉ, điện thoại).
+ Khách hàng (Mã KH, Tên KH, địa chỉ, điện thoại, tài khoản, tại ngân hàng, mã TK).
+ Nhà cung cấp (Mã NCC, Tên NCC, địa chỉ, điện thoại, mã hàng, đơn vị tính, đơn giá chuẩn).
+ Mặt hàng (Mã hàng, tên hàng, đơn vị tính).
+ Phiếu xuất (Mã PX, mã KH, tên KH, mã NV, tên NV, ngày xuất, mã hàng, số lượng, giá bán, thành tiền, tổng tiền).
+ Phiếu nhập (Mã PN, mã NV, tên NV , ngày nhập, mã hàng, số lượng, giá bán, thành tiền, tổng tiền).
+ Đơn đặt bán hàng (Mã đơn hàng, mã KH, tên KH, mã hàng, số lượng).
+ Hoá đơn bán hàng (Số hoá đơn, ngày, mã KH, tên KH, mã NV, tên NV, mã hàng, số lượng, giá bán, thành tiền, tổng tiền, thanh toán hết, hạn thanh toán, thuế GTGT).
+ Hoá đơn mua hàng (Số hoá đơn, ngày, mã NCC, tên NCC, mã hàng, số lượng, đơn giá chuẩn, thành tiền, tổng tiền, mã phiếu giao).
+ Phiếu giao hàng (Mã phiếu giao, tên NCC, ngày, mã hàng, số lượng, mã đơn hàng).
+ Đơn đặt mua hàng (Mã đơn hàng, tên NCC, ngày, mã hàng, số lượng).
+ Phiếu bảo hành ( Số phiếu BH, tên NCC, mã hàng, tên hàng, hạn BH).
Trong đó dữ liệu được gạch chân chính là khoá chính liên kết giữa các thực thể khác trong toàn mô hình.
Dựa vào cơ sở dữ liệu thực thể và các thuộc tính đã lập ra, chúng ta thiết lập mô hình thực thể liên kết với các quan hệ của chúng. Đưa ra một hệ thống hoàn chỉnh về mặt dữ liệu cần có.
Mô hình thực thể liên kết E/A mở rộng
Khái quát
Các kiểu thuộc tính:
+ Các kiểu thuộc tính đa trị: trong mô hình thực thể được phép dùng kiểu thuộc tính đa trị. Nghĩa là tồn tại kiểu thuộc tính mà giá trị của nó đối với một thực thể có thể là một dãy hay một tập các giá trị.
+ Các kiểu thuộc tính phức hợp: cho phép dùng kiểu thuộc tính phức hợp từ các thuộc tính sơ đẳng, tức là sự kết hợp giữa nhiều kiểu thuộc tính khác. Mặc định mỗi giá trị của kiểu thuộc tính phức hợp là sự ghép các giá trị của các thuộc tính sơ đẳng tương ứng.
Biểu diễn các thực thể :
Các kiểu liên kết và biểu diễn quan hệ :
+ Liên kết 1 – 0
+ Liên kết 1 – 1
+ Liên kết 1 – n
+ Liên kết n – n
Biểu diễn quan hệ bằng đường nối
Xây dựng mô hình thực thể liên kết E/A mở rộng
Mô hình thực thể liên kết E/A kinh điển
Chuyển đổi từ mô hình thực thể liên kết E/A mở rộng sang mô hình thực thể liên kết E/A kinh điển
+ Quy tắc 1: Chuyển các thuộc tính đa trị về các thuộc tính có giá trị duy nhất. Thay một kiểu thuộc tính đa trị T của kiểu thực thể A bởi một kiểu thực thể mới E-T và kết nối A với E-T bởi một kiểu liên kết. Đưa vào kiểu thực thể E-T một kiểu thuộc tính đơn trị t, tương ứng với các giá trị thành phần của T. Nghiên cứu các ứng số cho kiểu liên kết mới (giữa A và E-T).
Ví dụ : Kiểu thực thể Nhân viên có thuộc tính đa trị là các ngoại ngữ.
Chú ý: Kiểu thực thể Nhân viên
Mã NV
Họ tên
Các NN
chuyển thành
Nhân viên
Mã NV
Họ tên
Ngoại ngữ
Tên NN
0..*
0..*
Biết
nói trên được gọi là kiểu thực thể phụ thuộc; nó chỉ tồn tại cùng với kiểu thực thể chính.
+ Quy tắc 2: Xử lý các thuộc tính đa trị của một kiểu liên kết. Thực thể hoá liên kết kiểu đó, rồi áp dụng quy tắc 1 cho kiểu thựcthể mới lập.
+ Quy tắc 3: Xử lý các kiểu thuộc tính phức hợp. Thay kiểu thuộc tính phức hợp bởi các kiểu thuộc tính mà tích hợp thành.
Ví dụ: Kiểu thuộc tính Địa chỉ thay bằng các thuộc tính Số nhà, Đường phố, Quận huyện, Tỉnh thành.
+ Quy tắc 4: Xử lý các kiểu thực thể con.
Giả sử B là thực thể con của thực thể A. Có hai cách xử lý:
- Loại bỏ kiểu thực thể B và bổ sung mọi kiểu thuộc tính của B vào trong A, đồng thời thêm một kiểu thuộc tính cho phép phân loại các thực thể của A (thuộc B hay không thuộc B). Chuyển mọi kiểu liên kết với B sang A, và nghiên cứu lại các ứng số cho chúng.
- Thay đổi mối quan hệ thừa kế giữa A và B bằng một kiểu liên kết giữa A và B mà các ứng số tối đa bằng 1. Nghiên cứu cụ thể các ứng số tối thiểu.
Xây dựng mô hình thực thể liên kết E/A kinh điển
Từ mô hình thực thể liên kết E/A mở rộng, bằng phương pháp chuyển đổi qua 4 quy tắc ở trên, ta thấy nhiều thực thể là đa trị khi nó nhận được nhiều hơn một giá trị trong hệ thống. Từ đó ta cần phải khử những thực thể đó.
Trong đó các thuộc tính đa trị như : mã hàng, số lượng, giá bán, thành tiền... cũng có các thực thể như : hoá đơn bán hàng, hoá đơn mua hàng, phiếu xuất, phiếu nhập, phiếu giao hàng, đơn đặt bán hàng, đơn đặt mua hàng...
Chúng ta áp dụng quy tắc để khử các thuộc tính đa trị:
+ Tách làm hai kiểu thực thể:
Kiểu thực thể chính: gồm các thuộc tính đơn trị.
Kiểu thực thể phụ : gồm các thuộc tính đa trị.
+ Đưa vào các thực thể phụ một thuộc tính đơn trị ( khoá chính) của thực thể đó.
+ Xác định kiểu liên kết giữa thực thể chính và thực thể phụ.
+ Xác định kiểu liên kết giữa các thực thể trong toàn bộ mô hình thực thể liên kết E/A kinh điển sao cho phù hợp với mô hình thực thể liên kết E/A mở rộng.
Sau đây chúng ta xây dựng mô hình thực thể liên kết E/A kinh điển :
Mô hình thực thể liên kết E/A hạn chế
Khái quát
Mô hình thực thể liên kết hạn chế bị hạn chế nhiều về hình thức diễn tả nhưng lại gần với mô hình quan hệ và do đó dễ chuyển sang cài đặt với một hệ quản trị cơ sở dữ liệu.
Ngoài các ràng buộc các thuộc tính có giá trị duy nhất và có tính sơ đẳng thì mô hình E/A hạn chế có bổ sung thêm các ràng buộc sau:
+ Đối với liên kết 2 ngôi :
thì chỉ có dùng liên kết 1 - nhiều
Như vậy các liên kết 1 – 1(n=1 và q=1), cũng như các kiểu liên kết nhiều nhiều (n>1 và q>1) đều không thể hiện tường minh ở mô hình E/A hạn chế. Do đó mô hình E/A hạn chế còn được gọi là mô hình E/A một - nhiều.
+ Đối với kiểu liên kết nhiều ngôi (>2) thì không có hình thức biểu diễn tường minh trong mô hình E/A hạn chế.
Chuyển đổi từ mô hình thực thể liên kết E/A kinh điển sang mô hình thực thể liên kết E/A hạn chế
Tuy bị hạn chế về hình thức biểu diễn, song khả năng diễn tả của mô hình E/A hạn chế vẫn tốt. Ta có thể biến đổi mọi mô hình E/A kinh điển về mô hình hạn chế bằng cách áp dụng các quy tắc sau:
+ Quy tắc 1: Xử lý kiểu liên kết 1-1. Ta có thể thực hiện bằng 1 trong 2 cách sau:
Cách 1: Xem kiểu liên kết 1-1 là trường hợp riêng của liên kết 1-nhiều (nhiều ở đây là p..*, khi p=0 sẽ được hiểu là 0,1 hay nhiều) và vẽ lại nó bằng đường nối thẳng hay một đường nối có chân vịt ở một đầu. Cách làm này vi phạm sự hạn chế của mô hình, hay gây hiểu nhầm nên ít dùng.
Cách 2: Gộp hai thực thể có quan hệ 1-1 thành một kiểu thực thể duy nhất bằng cách hoà trộn hai danh sách các kiểu thuộc tính với nhau.
+ Quy tắc 2: Xử lý các kiểu liên kết 2 ngôi n - n và các kiểu liên kết nhiều ngôi.
Thực thể hoá mỗi kiểu liên kết đó bằng một kiểu thực thể mới có chứa các kiểu thuộc tính là khoá của các kiểu thực thể tham gia (tập hợp các khoá này là khoá bội của kiểu thực thể mới). Nối thực thể này với các thực thể tham gia liên kết bằng các liên kết 1-n (phía nhiều ở thực thể mới này).
Biểu diễn các liên kết trong mô hình :
Gạch chân các thuộc tính khoá và biểu diễn các thực thể như mô hình trước.
Xây dựng mô hình thực thể liên kết E/A hạn chế
Mô hình quan hệ
Mô hình thực thể liên kết được trình bày ở trên có một số nhược điểm, trong đó đang chú ý nhất đó là việc dư thừa dữ liệu trong các thực thể mà ta đã xây dựng. Chính vì thế, việc lập ra một mô hình quan hệ sẽ góp phần làm giảm đi sự cồng kềnh về mặt dữ liệu. Chuyển từ mô hình thực thể liên kết sang mô hình quan hệ chính là sự chuẩn hoá làm giảm đi dữ liệu đó.
Chuẩn hoá
Định nghĩa : Chuẩn hoá là sự phân rã không làm mất mát thông tin của một quan hệ R thành một tập hợp các quan hệ ở dạng chuẩn 3NF.
Thực hiện chuẩn hoá dần dần từ 1NF ® 2NF ® 3NF
Đưa về dạng chuẩn 1NF : Thực hiện tách các thuộc tính lặp.Chọn khoá cho nó. Nhóm các thuộc tính đơn toạ thành một quan hệ. Chọn khoá cho nó. Nhóm các thuộc tính lặp tách ra, tăng thêm khoá của quan hệ trên tạo thành một quan hệ. Chọn khoá cho các quan hệ này, thường là khoá bội, trong đó khoá của quan hệ trên là một thành phần.
Đưa về dạng chuẩn 2NF : Thực hiện tách các thuộc tính phụ thuộc hàm vào một phần của khóa. Nhóm thuộc tính không bị tách tạo thành một quan hệ với khoá như cũ. Mỗi nhóm tách ra (gồm các thuộc tính cùng phụ thuộc vào một phần thuộc tính nào đó của khoá) cộng thêm các thuộc tính mà chúng phụ thuộc tạo thành một quan hệ với khoá là các thuộc tính được thêm này.
Đưa về dạng chuẩn 3NF : Thực hiện tách các nhóm thuộc tính phụ thuộc một hay một số các thuộc tính ngoài khoá. Nhóm thuộc tính còn lại tạo thành một quan hệ với khoá như cũ. Thực hiện như với chuẩn hoá 2NF.
Thực hiện chuẩn hoá:
Đơn đặt mua hàng :
Danh sách các thuộc tính
1NF
2NF
3NF
Mã đơn hàng
Mã KH
Tên KH
Mã hàng
Số lượng
Mã đơn hàng
Mã KH
Tên KH
Mã đơn hàng
Mã hàng
Số lượng
→
Mã đơn hàng
Mã hàng
Mã hàng
Số lượng
Mã đơn hàng
Mã KH
Mã KH
Tên KH
→
→
Nhà cung cấp
Danh sách các thuộc tính
1NF
2NF
3NF
Mã NCC
Tên NCC
Địa chỉ
Mã hàng
Đơn vị tính
Đơn giá chuẩn
Mã NCC
Tên NCC
Địa chỉ
Mã NCC
Mã hàng
Đơn vị tính
Đơn giá chuẩn
→
Mã NCC
Mã hàng
Mã hàng
Đơn vị tính
Giá chuẩn
→
→
→
Hóa đơn bán hàng
Danh sách các thuộc tính
1NF
2NF
3NF
Số hoá đơn
Ngày
Mã KH
Tên KH
Mã NV
Tên NV
Mã hàng
Số lượng
Giá bán
Thành tiền
Tổng tiền
Thanh toán hết
Hạn thanh toán
Thuế GTGT
Số hoá đơn
Ngày
Mã KH
Tên KH
Mã NV
Tên NV
Tổng tiền
Thanh toán hết
Hạn thanh toán
Thuế GTGT
Số hoá đơn
Mã hàng
Số lượng
Giá bán
Thành tiền
→
Số hoá đơn
Mã hàng
Mã hàng
Số lượng
Giá bán
Thành tiền
Số hoá đơn
Ngày
Mã KH
Mã NV
Tổng tiền
Thanh toán hết
Hạn thanh toán
Thuể GTGT
Mã KH
Tên KH
Mã NV
Tên NV
→
→
Tương tự cách chuẩn hoá trên, chúng ta tiến hành chuẩn hoá cho các thực thể còn lại trong mô hình thực thể liên kết để từng bước chuyển sang thiết lập lược đồ mô hình quan hệ.
Phương pháp lập lược đồ dữ liệu theo mô hình quan hệ
Thành lập danh sách các thuộc tính, gọi là danh sách xuất phát. Có thể xem đây là một quan hệ với một ý nghĩa khái quát nào đó. Có 2 cách để tiếp cận danh sách xuất phát:
+ Tập hợp các thông tin cơ bản phát hiện được trong một phạm vi điều tra.
+ Xuất phát từ một cái ra của hệ thống.
Tu chỉnh lại danh sách xuất phát :
+ Loại bỏ bớt các tên đồng nghĩa.
+ Loại bỏ các thuộc tính tính toán.
+ Kết nạp thêm các thuộc tính dùng để tính toán.
+ Có thể thay thế các thuộc tính không đơn thành thuộc tính đơn.
Tìm các phụ thuộc hàm trong danh sách các thuộc tính.
+ Trước hết là khả năng có các phụ thuộc hàm giữa từng cặp các thuộc tính trong danh sách.
+ Sau đó xét phụ thuộc hàm có vế trái 2,3...thuộc tính.
Tiến hành chuẩn hoá dựa trên các phụ thuộc hàm đã được thành lập ở trên, dựa trên phương pháp chuẩn hoá đã biết ở trên. Kết quả thu được là một tập các lược đồ quan hệ ở dạng chuẩn 3NF.
Lặp lại các bước trên cho đến khi quét sách hết phạm vi khảo sát. Ta được tập lược đồ quan hệ 3NF.
Tập hợp tạo thành một lược đồ quan hệ.
Mô hình quan hệ
Dựa vào cách xây dựng lược đồ quan hệ, ta xây dựng mô hình quan hệ cho hệ thống quản lý bán hàng mà chúng ta đang thiết kế.
Áp dụng các bước trong mô hình thực thế liên kết chuyển sang mô hình quan hệ.
+ Trước hết ta xác định các thuộc tính khoá chính và các khoá ngoài để liên kết các thuộc tính.
+ Thuộc tính tính toán như Thành tiền, tổng tiền trong các bảng Hoá đơn bán hàng, Hoá đơn mua hàng, Phiếu xuất, Phiếu nhập.... đều bị loại bỏ bởi chỉ cần áp dụng công thức tính :
Thành tiền = Số lượng * Giá
Tổng tiền = ∑ Thành tiền
+ Đối với các thực thể như : dòng phiếu xuất, dòng NCC, dòng phiếu nhập...chúng ta cần chèn thêm thuộc tính khoá chính tương ứng vào trong các thực thể đó.
+ Biểu diễm các thực thể : Khoá chính gạch chân, thực thể được biểu diễn bằng hình chữ nhật có các thuộc tính bên trong.
Tên thực thể
+ Khoá chính
+ Thuộc tính 2
...
+ Thuộc tính n
Bằng cách xây dựng mô hình quan hệ, ta có mô hình quan hệ sau đây :
CHƯƠNG IV : THIẾT KẾ HỆ THỐNG
CƠ SỞ LÝ THUYẾT
Nhiệm vụ của thiết kế hệ thống
Nhiệm vụ của thiết kế hệ thống là chuyển các đặc tả logic của hệ thống về mặt chức năng, về dữ liệu,… thành các đặc tả vật lý của hệ thống có tính đến các ràng buộc về vật lý.
Đầu vào của công việc thiết kế bao gồm:
+ Các đặc tả logic của hệ thống.
+ Các yêu cầu và ràng buộc về các điều kiện vật lý cụ thể.
Đầu ra của công việc thiết kế là các quyết định về:
+ Một kiến trúc tổng thể của hệ thống.
+ Các hình thức trao đổi của hệ thống với bên ngoài hệ thống (các mẫu thu thập, các tài liệu in ra, giao diện người/máy).
+ Các kiểm soát nhằm phòng ngừa các sự cố vật lý và các ý đồ phá hại.
+ Tổ chức vật lý của CSDL
+ Tổ chức của chương trình theo các modul.
Nhiệm vụ của thiết kế tổng thể là nhằm đưa ra một kiến trúc tổng thể của hệ thống. Kiến trúc này thể hiện sự phân chia hệ thống thành nhiều hệ thống con và sự chia tách phần thực hiện thủ công với phần thực hiện bằng máy tính trong mỗi hệ thống con đó.
Phân định nhiệm vụ người và máy
Đây là công việc đầu tiên trong quá trình thiết kế, và nó sử dụng sơ đồ dòng dữ liệu làm đầu vào. Công cụ được sử dụng trong tiến trình này có dạng biểu đồ luồng dữ liệu, và có tên là sơ đồ dòng dữ liệu “hệ thống”.
Đối với chức năng : nó xét xem chức năng nào được làm bằng máy tính và chức năng nào được làm bởi con người. Một chức năng có thể thực hiện hoàn toàn bằng máy tính hay thủ công, hoặc nó có thể làm một phần bằng máy tính, một phần là thủ công.
Đối với các kho dữ liệu : nó phân định xem dữ liệu được lưu trữ ở đâu, dưới dạng nào.
+ Các tệp thủ công : sổ sách, giấy tờ, bảng biểu, các hồ sơ văn phòng...
+ Các tệp bằng máy tính : đó là các file dữ liệu hay cơ sở dữ liệu được lưu trong ổ cứng của máy tính.
Tuỳ theo từng cách làm việc, theo sự phân công công việc, theo hệ thống nhân viên của công ty đó, mà chúng ta đưa ra sự phân công cho phù hợp với từng hệ thống cụ thể.
Trong hệ thống quản lý bán hàng của công ty TNHH Thương mại Việt Bình. Chúng ta cũng cần phân định nhiệm vụ giữa người và máy. Chúng ta xét từng chức năng cụ thể của hệ thống như sau :
Quản lý bán hàng
Dựa vào biểu đồ luồng dữ liệu đã có
Phân định công việc giữa người và máy như sau :
Người :
+ Lập đơn đặt hàng : Nhận đơn đặt hàng của khách, hay từ yêu cầu của khách hàng để lập đơn đặt hàng. Công cụ sử dụng có thể là 1 đơn đặt hàng mẫu sẵn có trong Word, Excel để lập. Không liên quan đến chương trình quản lý bán hàng mà chúng ta đang xây dựng về mặt dữ liệu. Các đơn đặt hàng được lưu lại tới hết hợp đồng bán hàng.
+ Cập nhật thông tin khách hàng : ghi lại thông tin khách hàng một cách nhanh nhất, sau đó mới đưa vào máy tính.
+ Giao hàng : chuyển hàng cho khách hàng, thanh toán hoá đơn bán hàng với khách hàng.
Máy :
+ Lập hoá đơn bán hàng : Sau khi cập nhật đơn đặt hàng, thông tin khách hàng đã đưa vào dữ liệu hệ thống. Tiến hàng lập hoá đơn bán hàng dựa theo đơn đặt hàng có sẵn.
+ Lập phiếu xuất hàng : dựa theo hoá đơn đã được lập.
Quản lý tài chính
Dựa vào biểu đồ luồng dữ liệu, phân định nhiệm vụ người và máy như sau :
Người :
+ Nhận hoá đơn thanh toán : nhận tiền thanh toán hoá đơn từ khách hàng, gửi hoá đơn bán hàng cho khách hàng.
+ Cân đối hoá đơn : kiểm tra, cân đối lại sổ sách, hoá đơn trước khi báo cáo lên ban giám đốc.
Máy :
+ Quản lý thu – chi – công nợ : dựa vào hoá đơn bán hàng, dữ liệu từ bảng Công nợ khách hàng, cho đến hoá đơn mua hàng. Máy tính sẽ thực hiện việc tính toán, thống kê, in báo cáo gửi ban giám đốc.
Quản lý nhập hàng
Dựa vào biểu đồ luồng dữ liệu về quản lý nhập hàng, chúng ta có thể phân định nhiệm vụ giữa người và máy như sau :
Người :
+ Cập nhật yêu cầu : tiếp nhận yêu cầu cần nhập hàng từ ban giám đốc, từ bộ phận bán hàng, từ bộ phận kho hàng bằng văn bản.
+ Lập đơn đặt hàng : lập theo yêu cầu đã nhận.
+ Cập nhật kết quả đơn hàng : nhận thông tin về hàng từ nhà cung cấp, nhận hàng, hoá đơn bán hàng...
Máy :
+ Cập nhật kết quả đơn hàng : đưa vào hệ thống quản lý bán hàng dữ liệu về các mặt hàng,số lượng hàng nhập, đơn giá, nhà cung cấp... để thực hiện việc thống kê thu chi, báo cáo Nhập hàng...
Quản lý kho hàng
Dựa vào biểu đồ luồng dữ liệu, phân định nhiệm vụ giữa người và máy :
Người :
+ Lập phiếu xuất kho : tiếp nhận yêu cầu xuất hàng từ bộ phận bán hàng. Xuất hàng, phiếu bảo hành.
+ Lập phiếu nhập kho : khi hàng về thì nhận hàng, xác nhận đã nhận hàng về số lượng, chủng loại...
Máy :
+ Lập phiếu xuất kho : in phiếu xuất kho theo hoá đơn bán hàng, đưa ra thông tin về số lượng, chủng loại hàng xuất.
+ Lập phiếu nhập kho : cập nhật danh mục hàng hoá, cập nhật số lượng, giá bán của từng loại mặt hàng.
+ Cập nhật thông tin nhập – xuất – tồn và lập báo cáo thống kê : máy tính sẽ tổng hợp lượng hàng xuất ra, lượng hàng nhập vào, từ đó báo cáo thống kê gửi đến bộ phận bán hàng,bộ phận nhập hàng, ban giám đốc...
THIẾT KẾ HỆ THỐNG
Thiết kế kiểm soát
Thiết kế kiểm soát là đề xuất những biện pháp nhằm đảm bảo cho hệ thống :
+ Tính chính xác : nghĩa là làm cho hệ thống có những báo cáo, thống kê một cách chính xác nhất. Giúp nhà điều hành có những thông tin kịp thời và đáng tin cậy.
+ Tính an toàn : hệ thống không bị xâm hại khi có sự cố kỹ thuật.
+ Tính nghiêm mật : hệ thống có khả năng ngăn ngừa các xâm hại cố tình hay hữu ý.
+ Tính riêng tư : quyền truy cập riền cho từng người dùng.
Chúng ta có thể xây dựng hệ thống bán hàng cho Công ty TNHH Thương mại An Việt Nhật như sau :
Phân quyền sử dụng : tức là mỗi một nhân viên phụ trách ở bộ phận nào, chỉ được quyền đăng nhập để thay đổi, cập nhật, sửa chữa thông tin ở những mục thuộc quyền hạn của mình. Ban giám đốc là có quyền tối cao với cả hệ thống, điều hành sự hoạt động của tất cả các khâu trong hệ thống.
Thống kê – báo cáo : cần có được các công thức tính toán đúng và hợp lý để có những thống kê, báo cáo một cách chính xác nhất.
An toàn : các cơ sở dữ liệu nhập vào trong máy tính. Sau khi thoát ra khỏi chương trình quản lý sẽ được back up vào 1 file để lưu trữ thông tin một cách an toàn.
Trên đây là những phương pháp để kiểm soát và vận hành hệ thống chúng ta đang xây dựng một cách có hiệu quả nhất.
Thiết kế cơ sở dữ liệu
Cơ sở dữ liệu là nơi lưu trữ lâu dài các dữ liệu của hệ thống ở bộ nhớ ngoài. Các dữ liệu này được tổ chức theo 2 tiêu chí :
+ Hợp lý : nghĩa là không dư thừa.
+ Truy nhập thuận lợi : nghĩa là tìm kiếm, bổ sung, cập nhật và loại bỏ các thông tin một cách nhanh chóng và thuận tiện.
Công cụ sử dụng để thiết kế dữ liệu cho hệ thống là Microsoft SQL Server.
Việc thiết kế cơ sở dữ liệu này là dùng cho các nhiệm vụ sử dụng máy tính làm công cụ quản lý. Trong phân định nhiệm vụ người và máy đã phân ra các nhiệm vụ mà máy phải làm trong hệ thống.
Sau đây chúng ta thiết kế các bảng dữ liệu cần có để vận hành hệ thống :
Bảng Khách hàng
+ Đây là bảng lưu trữ các thông tin về mọi Khách hàng đã mua hàng ở công ty.
+ Khoá chính : MaKH
STT
Tên trường
Kiểu dữ liệu
Null
Mô tả
1
2
3
4
5
6
7
MaKH
TenKH
DiaChi
DienThoai
TaiKhoan
TaiNH
MaSoTK
Char (8)
Nvarchar(50)
Nvarchar(100)
Number
Bit
Nvarchar(50)
Nvarchar(20)
X
X
Mã của Khách hàng
Tên của Khách hàng
Địa chỉ của Khách hàng
Điện thoại của Khách hàng
Tài khoản của KH (có/không)
Tài khoản tại ngân hàng nào
Mã số tài khoản là bao nhiêu
Bảng Nhân viên
+ Đây là bảng lưu trữ tất cả các thông tin về Nhân viên có trong các bộ phận của công ty.
+ Khoá chính : MaNV,CMTND
STT
Tên trường
Kiểu dữ liệu
Null
Mô tả
1
2
3
4
5
6
7
8
MaNV
TenNV
NgaySinh
GioiTinh
CMTND
BoPhan
DiaChi
DienThoai
Char (8)
Nvarchar(50)
Datetime (8)
Bit
Number
Nvarchar(50)
Nvarchar(100)
Number
Mã của Nhân viên
Tên của Nhân viên
Ngày sinh của Nhân viên
Giới tính của Nhân viên
Chứng minh thư nhân dân
Bộ phận đang làm việc
Địa chỉ của Nhân viên
Điện thoại của Nhân viên
Bảng Nhà cung cấp
+ Đây là bảng lưu trữ các thông tin về Nhà cung cấp sản phẩm chính cho công ty.
+ Khoá chính : MaNCC
STT
Tên trường
Kiểu dữ liệu
Null
Mô tả
1
2
3
4
5
MaNCC
TenNCC
DiaChi
DienThoai
MaLH
Char (8)
Nvarchar(50)
Nvarchar(100)
Number
Char(8)
Mã của Nhà cung cấp
Tên của Nhà cung cấp
Địa chỉ của Nhà cung cấp
Điện thoại của Nhà cung cấp
Mã loại hàng mà NCC cung cấp
Bảng Loại hàng
+ Đây là bảng lưu trữ thông tin về các loại mặt hàng mà công ty đang bán ra.
+ Khoá chính : MaLH
STT
Tên trường
Kiểu dữ liệu
Null
Mô tả
1
2
3
4
MaLH
TenLH
Donvitinh
GhiChu
Char (8)
Nvarchar(50)
Char(10)
Nvarchar(200)
X
Mã của Loại hàng
Tên của Loại hàng
Đơn vị tính ( Cái / Chiếc )
Ghi chú
Bảng Mặt hàng
+ Đây là bảng lưu trữ thông tin về các mặt hàng mà công ty đang bán, cập nhật giá cả các mặt hàng.
+ Khoá chính : MaHang
STT
Tên trường
Kiểu dữ liệu
Null
Mô tả
1
2
3
4
5
6
7
MaHang
TenHang
MaNCC
MaLH
Donvitinh
GiaBan
Ghichu
Char (8)
Nvarchar (50)
Char (8)
Char (8)
Char (10)
Number
Nvarchar(200)
X
Mã của Hàng
Tên của Hàng
Mã của Nhà cung cấp
Mã của Loại hàng
Đơn vị tính ( Cái / Chiếc )
Giá bán
Ghi chú
Bảng Hoá đơn bán hàng
+ Đây là bảng lưu trữ lại các giao dịch đối với khách hàng thông qua hoá đơn bán hàng.
+ Khoá chính : SoHoaDon
STT
Tên trường
Kiểu dữ liệu
Null
Mô tả
1
2
3
4
5
6
7
8
9
10
SoHoaDon
NgayBan
MaKH
TenKH
MaNV
TenNV
TongTien
ThanhToan
HanTT
Ghichu
Char (8)
Datetime
Char (8)
Nvarchar (50)
Char (8)
Nvarchar (50)
Number
Bit
Datetime
Nvarchar(200)
X
X
Số hoá đơn
Ngày bán
Mã của Khách hàng
Tên của Khách hàng
Mã của Nhân viên
Tên của Nhân viên
Tổng tiền hoá đơn
Thanh toán hết hay không
Hạn thanh toán số còn lại
Ghi chú
Bảng Dòng Hóa đơn bán hàng
+ Đây là bảng lưu trữ thông tin về các mặt hàng đã được bán trong từng hoá đơn một.
+ Khoá chính : STT ( số thứ tự đánh tự động )
STT
Tên trường
Kiểu dữ liệu
Null
Mô tả
1
2
3
4
5
6
STT
SoHoaDon
MaHang
SoLuong
GiaBan
ThanhTien
Number
Char (8)
Char (8)
Char (8)
Char (10)
Number
Số thứ tự
Số hoá đơn
Mã của Mặt hàng
Số lượng hàng
Giá bán
Thành tiền
Bảng Nhập hàng
+ Đây là bảng cập nhật số lượng từng mặt hàng nhập vào kho, giá mà công ty phải trả để mua mặt hàng đó để tính toán thu chi. Dữ liệu nhập vào được căn cứ theo hoá đơn mua hàng của công ty đối với nhà cung cấp sản phẩm.
+ Khoá chính : STT ( số thứ tự được đánh tự động )
STT
Tên trường
Kiểu dữ liệu
Null
Mô tả
1
2
3
4
5
6
STT
MaHang
NgayNhap
SoLuong
GiaNhap
ThanhTien
Number
Char (8)
Datetime
Number
Number
Number
Số thứ tự
Mã của Mặt hàng
Ngày nhập hàng
Số lượng hàng
Giá Nhập
Thành tiền
Bảng Công nợ
+ Đây là bảng theo dõi công nợ của khách hàng đối với công ty. Dựa trên hoá đơn bán hàng, ta có số tiền mà khách hàng còn phải trả công ty theo một kỳ hạn đã định sẵn.
+ Khoá chính : STT ( số thứ tự được đánh số tự động )
STT
Tên trường
Kiểu dữ liệu
Null
Mô tả
1
2
3
4
5
6
7
8
STT
MaKH
TenKH
DiaChi
DienThoai
Ngay
SoTienNo
HanTT
Number
Char (8)
Nvarchar (50)
Nvarchar(100)
Number
Datetime
Number
Datetime
Số thứ tự
Mã của Khách hàng
Tên Khách hàng
Địa chỉ Khách hàng
Số điện thoại Khách hàng
Ngày mua hàng
Số tiền khách hàng còn nợ
Hạn phải thanh toán
Bảng Đăng nhập
+ Đây là bảng lưu trữ các thông tin về Username và Password của các nhân viên trong công ty, phân định quyền sử dụng đối với mỗi nhân viên thông qua hình thức đăng nhập vào hệ thống.
+ Khoá chính : Username
STT
Tên trường
Kiểu dữ liệu
Null
Mô tả
1
2
3
Username
Password
BoPhan
Nvarchar (20)
Nvarchar (20)
Nvarchar (50)
Username tên đăng nhập
Mật khẩu đăng nhập
Bộ phận làm việc
Thiết kế chương trình
Ta nhận thấy, các chức năng trong biểu đồ luồng dữ liệu chỉ là các chức năng logic, đặc tả tiến trình của hệ thống (thuộc vào lĩnh vực của bài toán quản lý), mà chưa có các chức năng phụ cần thiết cho một hệ thống làm việc:
+ Chức năng xử lý lỗi.
+ Chức năng kiểm soát người dùng.
+ Chức năng tìm kiếm cơ sở dữ liệu.
+ Các chức năng điều khiển khác.
Dưới đây là phần menu chương trình đã được thiết kế để phân cấp các chức năng trong hệ thống quản lý bán hàng mà chúng ta đang xây dựng.
Thiết kế giao diện
Có nhiều kiểu thiết kế tạo ra nhằm phục vụ cho giao diện người và máy. Mỗi kiểu đều có những đặc tính và khả năng khác nhau. Song một điều rất quan trọng là mỗi kiểu thiết kế được chọn phải phù hợp với yêu cầu được giao (đảm bảo được chức năng) và với người sử dụng (trình độ, thói quen, sở thích...), người sẽ tham gia vào đối thoại người và máy.
Chỉ tiêu cho mỗi giao diện đó là :
Dễ sử dụng.
Dễ học, dễ nhớ.
Có khả năng thao tác nhanh.
Sự tinh vi.
Kiểm soát tốt.
Dễ phát triển.
Chương trình sử dụng ngôn ngữ Microsoft Visual Studio 2005 là công cụ chính. Đây là một bộ công cụ tương đối hữu hiệu để người sử dụng xây dựng và viết các chương trình ứng dụng hoàn chỉnh và chuyên nghiệp cao. Với khả năng mang lại cơ sở đồ hoạ đẹp mắt người sử dụng từ Form, menu đến các báo biểu (Report) với rất nhiều tính năng mà nó mang lại.
Trong bài này ta sử dụng Visual Studio 2005 để thiết kế giao diện cho chương trình, đồng thời liên kết với cơ sở dữ liệu tạo thành một chương trình quản lý bán hàng như ta mong muốn.
4.1. Form Đăng Nhập
Đối với một chương trình quản lý, việc quản lý các tệp tin, các dữ liệu là hết sức quan trọng. Chính vì thế, chỉ cho phép các nhân viên trong công ty mới có quyền sử dụng chương trình này để bảo đảm an toàn cho dữ liệu. Mỗi nhân viên sẽ có một username và password để đăng nhập. Sau đó sẽ được phân cho quyền sử dụng một số chức năng phục vụ cho công việc của từng bộ phận mình.
Giao diện đăng nhập có dạng sau :
User name : Co Huong
Password : 11
Sau khi nhập username và password xong, người dùng sẽ đăng nhập vào chương trình, đưa người sử dụng đến Menu chính của chương trình quản lý bán hàng của Công ty.
Người sử dụng có thể sử dụng nút Thoát để huỷ bỏ đăng nhập và thoát khỏi chương trình.
4.2. Form Menu
Menu chính của chương trình là nơi người sử dụng có thể giao tiếp với máy tính thông qua các giao diện, các nút bấm (button)... Sử dụng các chức năng trong chương trình thông qua giao diện chính của chương trình.
Người sử dụng có thể thao tác hệ thống qua 2 cách:
+ Sử dụng menu ở phía trên. Với ưu điểm là Menu này đầy đủ hết các chức năng mà người sử dụng cần.
+ Sử dụng Button Menu. Các nút bấm chọn chức năng như : Nhập hàng, Xuất hàng, Cập nhật, In ấn, Tìm kiếm. Khi chọn, các chức năng tương ứng sẽ đượng hiện sang bên phải như trên hình (chọn Cập nhật thì ta được các cập nhật : Nhà SX, Khách hàng, Nhân viên). Hạn chế là không thể đưa hết các chức năng ra đây.
Form Cập nhật
Form cập nhật có chức năng cập nhật các thông tin về:
+ Cập nhật Nhà cung cấp.
+ Cập nhật Loại hàng.
+ Cập nhật Mặt hàng.
+ Cập nhật Khách hàng.
+ Cập nhật Nhân viên.
Để cập nhật được dữ liệu Visual Basic phải liên kết với chương trình tạo cơ sở dữ liệu SQL Server. Qua giao diện mà chúng ta đã thiết kế, bằng các nút lệnh với code của chương trình, dữ liệu được đưa vào cơ sở dữ liệu đang có. Từ đó, chúng ta có thể thực hiện các chức năng cho một yêu cầu cập nhật như : Thêm – Sửa – Xoá.
Người sử dụng dựa vào các thông tin thu thập được, trên giấy tờ, báo biểu để từ đó nhập các thông tin đó vào cơ sở dữ liệu của công ty thông qua phương tiện duy nhất đó là giao diện của chương trình.
4.4.1. Cập nhật danh mục nhân viên
Form này thực hiện chức năng cập nhật thông tin về nhân viên mới và cũ làm việc trong công ty.
+ Thông tin đầu vào : Tên nhân viên, ngày sinh, giới tính, địa chỉ, chứng minh thư nhân dân, số điện thoại...Thông tin đầu vào được
+ Thông tin đầu ra : là danh sách các nhân viên có trong công ty, làm ở phòng ban nào. Trong đó còn có liên kết với bảng tìm kiếm nhân viên để thuận tiện cho người sử dụng nếu muốn tìm kiếm ngay thông tin cụ thể về một nhân viên nào đó.
+ Hoạt động của Form : Các thông tin được nhập vào các ô Text ở trên theo từng Label.
Thêm : Nếu có nhân viên mới thì nhập thông tin vào sau đó ấn nút Thêm.
Sửa : nếu muốn sửa một nhân viên nào đó ta chọn Nhân viên đó ở bảng danh sách nhân viên. Sau đó ấn nút sửa. Sửa các thông tin cần thiết và ấn nút Ghi để kết thúc hoặc ấn Huỷ để huỷ bỏ thao tác.
Xoá : muốn xoá nhân viên nào đó chỉ cần chọn nhân viên và ấn nút xoá. Hộp hội thoại hỏi đáp sẽ hiện lên với nội dung : “ Bạn có muốn xoá nhân viên này không ? Có/Không”
Thoát : để thoát khỏi Form cập nhật nhân viên.
Tìm kiếm nhân viên : để kết nối với form Tìm kiếm một cách thuận lợi, người sử dụng có thể tìm kiếm một cách dễ dàng.
4.4.2. Danh mục nhà cung cấp
4.4.3. Danh mục loại hàng
4.4.4. Danh mục Mặt hang
Bạn có thể kết nối với form tìm kiếm giá hàng, qua đó chọn cho mình hàng mặt hàng có giá hợp túi tiền.
4.4.5. Danh mục khách hàng
Khi cập nhật mới 1 khách hàng, ta có thể kết nối với form Hóa đơn bán hàng để lập hóa đơn.
Hoặc bạn có thể tìm kiếm một khách hàng nào đó khi họ đã mua hàng 1 vài lần rồi qua mã số hoặc các thông tin mà người đó cung cấp cho bạn thông qua nút kết nối với Form tìm kiếm.
4.4.6. Form nhập hàng
Người dùng có thể quản lý việc nhập hàng thông qua Form Nhập hàng. Đối với mỗi 1 loại hàng được nhập vào sẽ được lưu trong cơ sở dữ liệu để tiện việc quản lý Nhập xuất tồn sau này.
( Nhập số lượng hàng mua xong, hãy ấn vào nút VND để hoàn tất việc tính Thành tiền)
Hóa đơn bán hàng và quản lý công nợ
Sau khi nhập thông tin về khách hàng, chúng ta được kết nối với Form Hóa đơn bán hàng chi tiết thông qua nút Hóa đơn bán hàng trên Form Khách hàng.
Form Hóa đơn bán hàng chi tiết
Mỗi hóa đơn bán hàng có thể mua nhiều sản phẩm.
Khi đã nhập dữ liệu các mặt hàng đã mua vào, hãy kích vào nút In hóa đơn bán hàng để chuyển sang Form Hóa đơn bán hàng.
Form Tìm kiếm
Chức năng tìm kiếm là chức năng thường có trong tất cả các chương trình quản lý. Nó giúp người sử dụng nhanh chóng tìm ra các thông tin cần thiết phục vụ cho công việc của mình.
Chỉ cần chọn tìm kiếm theo mã, theo tên....Người sử dụng đã có thể có trong tay thông tin mà mình cần có.
Trong bài này ta đưa ra tìm kiếm nhân viên. Có thể tìm theo Mã nhân viên, tên nhân viên, giới tính, CMTND hệ thống sẽ đưa ra danh sách các nhân viên có đủ các yếu tố mà chúng ta đang cần. Form tìm kiếm có dạng như sau :
Người sử dụng có thể tìm kiếm khách hàng còn nợ công ty qua form tìm kiếm công nợ theo Tên khách hàng, số tiền nợ, hoặc hạn thanh toán của khách hàng.
+ Người sử dụng cũng có thể tìm kiếm các mặt hàng theo giá bán. Tìm mặt hàng trong khoảng bao nhiêu tiền.
Thống kê
+ Thống kê doanh thu hàng tháng.
+ Thống kê số lượng hàng Nhập – xuất – tồn.
Có thể nói rằng, thiết kế chương trình là một trong những công đoạn hết sức cần thiết của việc xây dựng một hệ thống quản lý, hay bất cứ một hệ thống nào khác.
Lập trình giải quyết bài toán về quản lý là một trong những bài toán được áp dụng phủ biến nhất việc áp dụng công nghệ thông tin vào phát triển nền kinh tế xã hội.
Hướng dẫn cài đặt
Kết nối cơ sở dữ liệu : Trong bài này dùng cơ sở dữ liệu là SQL server 2000. Tên của Database cần phải backup từ file VIETBINH đó là Database : VIETBINH.
Cài đặt SQL server 2000 ở chế độ Mixed Mode (windows authentication and SQL Server authentication) với username là “sa” và pass để trống.
Bộ chương trình được viết trên ngôn ngữ VB.Net 2005. Để có thể chạy được chương trình phải cài bộ chương trình Microsoft Visual studio 2005.
Đăng nhập chương trình : Username :admin
Password : admin
KẾT LUẬN
Để xây dựng được bài phân tích thiết kế hệ thống thông tin, việc đầu tiên cần làm trước hết đó là phải xây dựng hệ thống sát với thực tế. Khảo sát hệ thống là một công việc hết sức quan trọng, nó giúp thu thập dữ liệu một cách chính xác và chi tiết để tiếp tục xây dựng các bước tiếp theo.
Đối với hệ thống thông thường, việc xây dựng cơ sở dữ liệu là một bước cần thiết, tuy chưa thật sự tối ưu nhưng hệ thống có thể tồn tại trong một thời gian dài và đảm bảo tính linh động hiệu quả cho hệ thống.
Việc phân tích dữ liệu một cách chính xác sẽ giúp chúng ta thiết lập các chức năng một cách hợp lý nhằm phát huy sử dụng và điều khiển hệ thống, làm cho hệ thống thân thiện với người sử dụng.
Thiết kế giao diện với màu sắc và bố cục hài hoà tạo cho người sử dụng cảm thấy thoái mái khi tiếp xúc, đồng thời, các tiện ích hay đem lại sự hiệu quả hơn trong khi làm việc. Từ đó, hệ thống góp phần không nhỏ thúc đẩy quá trình sản xuất kinh doanh của công ty, đem lại cho công ty lợi nhuận cao nhất.
Trên đây là một bài phân tích và thiết kế hệ thống hoàn chỉnh về hệ thống quản lý bán hàng ở Công ty TNHH Thương mại Viêt Bình. Tuy nhiên do đây là bài phân tích đầu tiên của em, do bản thân còn thiếu kinh nghiệm nên không thể tránh khỏi một số sai sót trong quá trình thực hiện cũng như bài báo cáo chưa thật sự mang nhiều tính thực tiễn. Kính mong sự chỉ bảo của cô giáo để em có thể hoàn thành tốt hơn trong những hệ thống sắp tới.
Một lần nữa cho em được gửi đến cô lời cảm ơn chân thành khi nhận đc sự hướng dẫn và giúp đỡ tận tình của cô trong suốt thời gian học tập và nghiên cứu môn học này.
Các file đính kèm theo tài liệu này:
- Phân tích thiết kế hệ thông quản lý bán hàng của công ty TNHH Thương mại Việt Bình.doc