Tùy theo từng thời điểm hay dựa theo nhu cầu cần bổ sung thuốc trong kho vàtrình lên người quản lý duyệt, nếu được Dược sỹ sẽ liên hệ nhà cung cấp, và đề xuất nhà cung cấp với người qu
Trang 1LỜI NÓI ĐẦU
Trong thời đại công nghệ thông tin phát triển nhanh chóng, được ứng dụng rộng rãi vào các lĩnh vực của đời sống như hiện nay, thì việc xây dựng một phần mềm phục vụ cho việc quản
lý thuốc cũng không có gì xa lạ
Để có thể tạo ra một phần mềm hoàn hảo, đảm bảo đúng yêu cầu của khách hàng và phục
vụ tốt trong quá trình sử dụng thì việc đầu tiên và quan trọng nhất chính là giai đoạn phân tích thiết kế Và một trong những kí thuật phân tích thiết kế hệ thống phổ biến nhất hiện nay
là phân tích thiết kế hướng đối tượng với nhiều ưu điểm so với mô hình phân tích thiết kế hướng chức năng: tính tái sử dụng, tạo ra các phần mềm có tính thích ứng và bền chắc Chính vì những lý do đó mà nhóm chúng em đã áp dụng kí thuật phân tích thiết kế hướng đối tượng này vào trong việc xây dựng chương trình quản lý thuốc của mình Và mục đích chủ yếu là giúp mọi người hiểu rõ hơn thế nào là hướng đối tượng và nó có những đặc điểm
gì, ứng dụng ra sao.
Đây cũng là đồ án phục vụ cho đồ án cuối kì môn Phân tích thiết kế hướng đối tượng và
UML của nhóm chúng em, trong đồ án này chúng em xây dựng theo từng chương để thuận
tiên trong quá trình học tập và theo dõi, gồm các nội dung chính sau:
Chương 1: Tổng quan
Chương 2: Phân tích bài toán
Chương 3: Giao diện
Với kiến thức còn hạn hẹp nên trong đồ án sẽ không tránh khỏi thiếu sót Kính mong thầy
cô cùng bạn bè thông cảm và góp ý để nhóm chúng em có thể sửa chữa kịp thời, phục vụ cho công tác nghiên cứu sau này.
Chúng em xin chân thành cảm ơn cô Nguyễn Thị Hồng Khánh đã hết lòng chỉ bảo để nhóm chúng em hoàn thành tốt đồ án này.
Trang 2MỤC LỤC
LỜI NÓI ĐẦU 1
MỤC LỤC 2
DANH MỤC HÌNH ẢNH 5
CHƯƠNG 1: TỔNG QUAN 7
1.1 KHẢO SÁT HIỆN TRẠNG 7
1.1.1 Khảo sát hiện trạng 7
1.1.2 Đánh giá hiện trạng 7
1.2 MÔ TẢ BÀI TOÁN 7
CHƯƠNG 2: PHÂN TÍCH BÀI TOÁN 9
2.1 CÁC TÁC NHÂN VÀ CA SỬ DỤNG 9
2.1.1 Các tác nhân 9
2.1.2 Xác định các use case 9
2.2 MÔ TẢ USE CASE 10
2.2.1 Use case đăng nhập 10
2.2.2 Use case quản trị người sử dụng 10
2.2.3 Use case mua thuốc 11
2.2.4 Use case cập nhật thuốc 11
2.2.5 Use case thanh lý thuốc 13
2.2.6 Use case Tìm kiếm 13
2.2.7 Use case thống kê, báo cáo 14
2.3 BIỂU ĐỒ USE CASE 15
2.3.1 Biểu đồ use case Hệ thống quản lý thuốc 15
2.3.2 Biểu đồ use case Quản trị người sử dụng 15
Trang 32.3.5 Biểu đồ use case Cập nhật thuốc 17
2.4 BIỂU ĐỒ TRÌNH TỰ 17
2.4.1 Biểu đồ trình tự Đăng nhập 17
2.4.2 Biểu đồ trình tự thêm người sử dụng 18
2.4.6 Biểu đồ trình tự thêm thuốc 21
2.4.7 Biểu đồ trình tự sửa thuốc 22
2.4.8 Biểu đồ trình tự xóa thuốc 23
2.4.9 Biều đố trình tự thanh lý thuốc 24
2.4.9.1 Biểu đồ trình tự tìm kiếm 25
2.4.9.2 Biểu đồ trình tự thống kê, báo cáo 26
2.5 BIỂU ĐỒ CỘNG TÁC 27
2.5.1 Biểu đồ cộng tác đăng nhập hệ thống 27
2.5.2 Biểu đồ cộng tác thêm người sử dụng 27
2.5.3 Biểu đồ cộng tác hiệu chỉnh người sử dụng 28
2.5.4 Biểu đồ cộng tác xóa người sử dụng 28
2.5.5 Biểu đồ cộng tác mua thuốc 29
2.5.6 Biểu đồ cộng tác thêm thuốc 29
2.5.7 Biểu đồ cộng tác sửa thuốc 30
2.5.8 Biểu đồ cộng tác xóa thuốc 30
2.5.9 Biểu đồ cộng tác thanh lý 31
2.5.10 Biểu đồ cộng tác tìm kiếm 31
2.5.11 Biểu đồ cộng tác thống kê, báo cáo 32
2.6 BIỂU ĐỒ TRẠNG THÁI 33
2.6.1 Biểu đồ trạng thái đăng nhập 33
2.6.2 Biểu đồ trạng thái mua thuốc 33
Trang 42.6.5 Biểu đồ trạng thái tìm kiếm 35
2.6.6 Biểu đồ trạng thái thống kê, báo cáo 35
2.7 BIỂU ĐỒ HOẠT ĐỘNG 36
2.7.1 Biểu đồ hoạt động đăng nhập 36
2.7.3 Biểu đồ hoạt động mua thuốc 37
2.7.4 Biểu đồ hoạt động cập nhật thuốc 37
2.7.5 Biểu đồ hoạt động tìm kiếm 38
2.7.6 Biểu đồ hoạt động thống kê, báo cáo 39
2.8 BIỂU ĐỒ LỚP 40
2.8.1 Xác định các đối tượng 40
2.8.2 Biểu đồ lớp 42
2.9 BIỂU ĐỒ TRIỂN KHAI 43
2.10 THIẾT KẾ KIẾN TRÚC VẬT LÝ 44
2.10.1 MÃ TRÌNH: 44
2.10.2 BIỂU ĐỒ THÀNH PHẦN 51
2.10.3 Giao Diện Chính (MAIN FORM) 52
Trang 5DANH MỤC HÌNH ẢN
YHình 2.3.1 Hệ thống quản lý thuốc 13
Hình 2.3.2 Quản trị người sử dụng 14
Hình 2.3.3 Tìm kiếm 14
Hình 2.3.4 Thống kê báo cáo 15
Hình 2.3.5 Cập nhật thuốc 15
Hình 2.4.1 Biểu đồ trình tự đăng nhập 18
Hình 2.4.2 Biểu đồ trình tự thêm NSD 18
Hình 2.4.3 Biểu đồ trình tự hiệu chỉnh NSD 19
Hình 2.4.4 Biểu đồ trình tự xóa NSD 19
Hình 2.4.5 Biểu đồ trình tự mua thuốc 20
Hình 2.4.6 Biểu đồ trình tự thêm thuốc 21
Hình 2.4.7 Biểu đồ trình tự sửa thuốc 22
Hình 2.4.8 Biểu đồ trình tự xóa thuốc 23
Hình 2.4.9 Biểu đồ trình tự thanh lý thuốc 24
Hình 2.4.9.1 Biểu đồ trình tự tìm kiếm 25
Hình 2.4.9.2 Biểu đồ trình tự thống kê báo cáo 26
Hình 2.5.1 Biểu đồ cộng tác đăng nhập hệ thống 27
Hình 2.5.2 Biểu đồ cộng tác thêm NSD 27
Hình 2.5.3 Biểu đồ cộng tác hiệu chỉnh NSD 27
Hình 2.5.4 Biểu đồ cộng tác xóa NSD 28
Hình 2.5.5 Biểu đồ cộng tác mua thuốc 28
Hình 2.5.6 Biểu đồ cộng tác thêm thuốc 29
Hình 2.5.7 Biểu đồ cộng tác sửa thuốc 29
Hình 2.5.8 Biểu đồ cộng tác xóa thuốc 30
Trang 6Hình 2.5.10 Biểu đồ cộng tác tìm kiếm 31
Hình 2.5.11 Biểu đồ cộng tác thống kê, báo cáo 31
Hình 2.6.1 Biểu đồ trạng thái đăng nhập 32
Hình 2.6.2 Biểu đồ trạng thái mua thuốc 32
Hình 2.6.3 Biểu đồ trạng thái cập nhật thuốc 32
Hình 2.6.4 Biểu đồ trạng thái thanh lý thuốc 33
Hình 2.6.5 Biểu đồ trạng thái tìm kiếm 33
Hình 2.6.6 Biểu đồ trạng thái thống kê, báo cáo 33
Hình 2.7.1 Biểu đồ hoạt động đăng nhập 34
Hình 2.7.2 Biểu đồ hoạt động quản trị NSD 35
Hình 2.7.3 Biểu đồ hoạt động mua thuốc 35
Hình 2.7.4 Biểu đồ hoạt động cập nhật thuốc 35
Hình 2.7.5 Biểu đồ hoạt động tìm kiếm 38
Hình 2.7.6 Biểu đồ hoạt động thống kê, báo cáo 37
Hình 2.8.2 Biểu đồ lớp Hệ thống quản lý thuốc 38
Hình 2.9 Biểu đồ triển khai 45
Hình 2.10.2 Biểu đồ thành phần 53
Trang 7CHƯƠNG 1: TỔNG QUAN 1.1 KHẢO SÁT HIỆN TRẠNG
1.1.1 Khảo sát hiện trạng
Nhà thuốc D8 là nơi bán thuốc phục vụ cho nhân dân trong đường Hoàng Quốc Việt
Thời gian mở cửa: từ 7 giờ sáng tới 21 giờ đêm
Nhân viên gồm : 1 Người quản lý, Dược sỹ.
Nhà thuốc là nơi lưu trữ thuốc phục vụ cho khách hàng Nhân viên của nhà thuốc sẽ thực hiện việc quản lý kho thuốc, bán thuốc và thực hiện thống kê báo cáo lên người quản lý theo thời gian quy định
1.1.2 Đánh giá hiện trạng
Qua quá trình khảo sát thực tế nhóm chúng em nhận thấy:
Hiện nay Nhà thuốc D8 đang có nhu cầu nâng cấp cơ sở vật chất và trang thiết bị để phục
vụ nhu cấp mua thuốc của nhân dân trong Thành phố Hà Nội Do nhu cầu mua thuốc tăng,
số lượng thuốc đáp ứng sẽ càng được bổ sung nhiều hơn, do đó việc quản lý thủ công trên
sổ sách sẽ gặp không ít khó khăn, tốn thời gian công sức và hiệu quả không cao.
1.2 MÔ TẢ BÀI TOÁN
Nhà thuốc tổ chức lưu trữ, sắp xếp các thông tin về thuốc được nhập từ các nhà cung cấp sau khi được kiểm duyệt.
Tùy theo từng thời điểm hay dựa theo nhu cầu cần bổ sung thuốc trong kho vàtrình lên người quản lý duyệt, nếu được Dược sỹ sẽ liên hệ nhà cung cấp, và đề xuất nhà cung cấp với người quản lý Nếu được chấp nhận sẽ tiến hành ký hợp đồng với nhà cung cấp, kết thúc đặt mua thuốc.
Sau khi kí hợp đồng mua thuốc với Nhà cung cấp, Dược sỹ sẽ chịu trách nhiệm nhập thuốc từ Nhà cung cấp và thanh toán hóa đơn Sau đó báo cáo với người quản lý, kết thúc quá trình mua thuốc.
Sau khi mua thuốc từ nhà cung cấp, dược sỹ sẽ tiến hành kiểm tra, phân loại thuốc, sắp xếp vào kho, sau đó tiến hành lưu trữ thuốc.
Theo định kì hoặc tùy thời điểm, người quản lý sẽ yêu cầu Dược sỹ thực hiện thống
kê, báo cáo tình hình thuốc trong kho Dược sỹ có trách nhiệm thực hiện thống kê, lập báo
Trang 8CHƯƠNG 2: PHÂN TÍCH BÀI TOÁN
.1 CÁC TÁC NHÂN VÀ CA SỬ DỤNG
.1.1 Các tác nhân
Admin : Là người điều hành cao nhất của hệ thống.
Người quản lý : Là lãnh đạo, chịu trách nhiệm xét duyệt, cấp kinh phí và ra các
quyết định liên quan.
Dược sỹ: Là người trực tiếp sử dụng phần mềm quản lý dược và thực hiện các chức
Trang 92.2 MÔ TẢ USE CASE
2.2.1 Use case đăng nhập
- Tóm tắt:
o Tiêu đề: Đăng nhập vào hệ thống
o Tóm tắt: Use case này cho phép Admin, Người quản lý, Dược sỹ đăng nhập hệ thống
o Tác nhân: Admin, Người quản lý, Dược sỹ
- Mô tả:
o Dòng sự kiện chính:
Bắt đầu khi một tác nhân đăng nhập vào hệ thống.
Hệ thống yêu cầu tác nhân nhập tên đăng nhập và mật khẩu.
Tác nhân cung cấp tên đăng nhập và mật khẩu.
Hệ thống kiểm tra và cho phép tác nhân đăng nhập vào.
o Dòng sự kiện phụ:
Nếu trong dòng sự kiện chính tác nhân nhập sai dữ liệu thì hệ thống sẽ báo lỗi Tác nhân có thể quay về đầu dòng sự kiện hoặc hủy bỏ đăng nhập, kết thúc use case.
o Điều kiện tiên quyết:
Tác nhân phải có tài khoản do người quản trị cung cấp.
Tài khoản phải được cập nhật trong CSDL của hệ thống.
2.2.2 Use case quản lý thuốc:
2.2.2.1 Use case thêm thuốc
- Tóm tắt :
o Tiêu đề: Thêm thuốc
o Tóm tắt: Dược sỹ có trách nhiệm liên hệ với nhà cung cấp để lấy thông tin và tiêu chí chọn nhà cung cấp như chủng loại, chất lượng, giá thành, hình thức thanh toán…và báo với Người quản lý kèm báo giá của Nhà cung cấp Người quản lý đề xuất lãnh đạo duyệt.
o Tác nhân: Dược sỹ, Người quản lý
- Mô tả :
o Dòng sự kiện chính:
Dược sỹ chọn chức năng mua thuốc
Trang 10 Hệ thống hiển thị ra form lập đơn đặt mua thuốc, các thông tin: Mã đơn, Mã thuốc,
Số lượng.
Dược sỹ điền thông tin vào form.
Hệ thống tự động tìm kiếm và hiển thị thông tin: ngày lập đơn, mã nhà cung cấp, mã dược sỹ
Dược sỹ điều chỉnh lại thông tin cho phù hợp
Dược sỹ nhấn nút kết thúc Hệ thống sẽ in đơn đặt mua thuốc.
o Dòng sự kiện phụ:
Nếu thông tin về nhà cung cấp và dược sỹ không có, hệ thống sẽ tự động đưa ra thông báo và yêu cầu dược sỹ phải nhập.
o Điều kiện tiên quyết:
Tác nhân phải đăng nhập vào hệ thống.
2.2.2.2 Use case sửa thuốc
- Tóm tắt:
o Tiêu đề: Sửa thuốc
o Tóm tắt: Sau khi mua thuốc từ nhà cung cấp, dược sỹ sẽ thực hiện kiểm tra, phân loai, nhập thuốc vào kho, tiến hành lưu trữ.
o Tác nhân: Dược sỹ
- Mô tả :
o Dòng sự kiện chính:
Dược sỹ chọn chức năng sửa thuốc
Hệ thống sẽ đưa ra lựa chọn trong việc: Thêm thuốc, Sửa thuốc, Xóa thuốc.
Nếu chức năng sửa thuốc được chọn: hiển thị form sửa thuốc
Dược sỹ nhập thông tin thuốc để cập nhật
Hệ thống sẽ cập nhật thông tin vào CSDL và thông báo kết quả
Dược sỹ chọn nút đóng, use case kết thúc
o Dòng sự kiện phụ:
Chức năng sửa thuốc: Hệ thống sẽ hiển thị thông tin về thuốc cần sửa, dược sỹ nhập thông tin cần sửa, hệ thống sẽ cập nhật lại thông tin.
Trang 11 Nếu chắc chắn Dược sỹ chọn OK, hệ thống sẽ thực hiện thao tác xóa và cập nhật vào CSDL.
o Điều kiện tiên quyết: Tác nhân phải đăng nhập vào hệ thống
Trang 122.2.2.3 Use case xóa thuốc
- Tóm tắt:
o Tiêu đề: Xóa thuốc
o Tóm tắt: Sau khi bán hàng, kiểm tra kho, dược sỹ sẽ thực hiện kiểm tra, xóa thuốc cần xóa
o Tác nhân: Dược sỹ
- Mô tả :
o Dòng sự kiện chính:
Dược sỹ chọn chức năng xóa thuốc
Hệ thống sẽ đưa ra lựa chọn trong việc: Thêm thuốc, Sửa thuốc, Xóa thuốc.
Nếu chức năng xóa thuốc được chọn: hiển thị form xóa thuốc
Dược sỹ xóa thuốc để cập nhật
Hệ thống sẽ cập nhật thông tin vào CSDL và thông báo kết quả
Dược sỹ chọn nút đóng, use case kết thúc
Trang 132.2.2.4 Use case thanh lý thuốc
- Tóm tắt:
o Tiêu đề: Thanh lý thuốc
o Tóm tắt: Sau khi nhập thuốc, dược sỹ kiểm tra hạn dùng cho thuốc cũ và thuốc mới mua Nếu thuốc nào cần thanh lý Dược sỹ báo cáo với Người quản lý để thực hiện thanh lý
o Tác nhân: Dược sỹ, Người quản lý
- Mô tả :
o Dòng sự kiện chính:
Dược sỹ chọn chức năng thanh lý thuốc
Hệ thống sẽ hiển thị form thanh lý thuốc.
Dược sỹ nhập thông tin thuốc cần thanh lý.
Hệ thống sẽ sử lý thông tin, lưu thông tin vào CSDL, sau đó in phiếu thanh lý và thông báo kết quả ra màn hình
o Dòng sự kiện phụ:
Nếu thông tin thuốc cần thanh lý sai, hệ thống sẽ yêu cầu nhập lại Dược sỹ chọn Yes
để nhập lại hoặc chọn No để kết thúc Use case.
o Điều kiện tiên quyết: Tác nhân phải đăng nhập vào hệ thống.
2.2.2.5 Use case thống kê, báo cáo
- Tóm tắt:
o Tiêu đề: thống kê, báo cáo
o Tóm tắt: Dược sỹ dựa vào tình hình sử dụng thuốc để lập báo cáo cho người quản lý theo dõi
o Tác nhân: Người quản lý, Dược sỹ.
- Mô tả :
o Dòng sự kiện chính:
Tác nhân chọn chức năng lập thống kê, báo cáo.
Hệ thống đưa ra yêu cầu chọn hình thức báo cao.
Trang 14 Hệ thống đưa ra bản thống kê và báo cáo
Tác nhân chọn nút để kết thúc.
o Dòng sự kiện phụ:
Tác nhân có thể chọn in báo cáo.
Tác nhân có thể cung cấp thông tin thêm cho việc thống kê và báo cáo
2.2.3 Use case Tìm kiếm
- Tóm tắt:
o Tiêu đề: Tìm kiếm
o Tóm tắt: Dược sỹ và người quản lý tìm kiếm thuốc theo Tên, Loại, Nhà sản xuất, hạn
sử dụng Khi có sai sót cần sửa hoặc cần tra cứu thông tin.
o Tác nhân: Người quản lý, dược sỹ
- Mô tả :
o Dòng sự kiện chính:
Tác nhân chọn chức năng tìm kiếm thông tin thuốc.
Hệ thống hiển thị form tìm kiếm thông tin thuốc.
Tác nhân nhập thông tin cần tìm kiếm.
Hệ thống sẽ xử lý từ khóa tìm kiếm, tạo truy vấn SQL trong CSDL.
Hệ thống sẽ hiển thị kết quả tìm kiếm.
o Dòng sự kiện phụ:
Nếu không có thông tìn phù hợp, hệ thống sẽ thông báo không có thông tin phù hợp với truy vấn
o Điều kiện tiên quyết: Tác nhân phải đăng nhập vào hệ thống
2.2.4 Use case quản lý nhà cung cấp:
2.2.4.1 Use case thêm nhà cung cấp
- Tóm tắt :
o Tiêu đề: Thêm nhà cung cấp
o Tóm tắt: Người quản lý thông báo, đề xuất với Admin xét duyệt thêm nhà cung cấp mới và đợi Admin duyệt.
Tác nhân: Người quản lý, Admin
Trang 15o Tiêu đề: Sửa nhà cung cấp
o Tóm tắt: Người quản lý thông báo, đề xuất với Admin xét duyệt sửa nhà cung cấp và đợi Admin duyệt.
o Tác nhân: Người quản lý, Admin
o Tiêu đề: Thêm nhà cung cấp
o Tóm tắt: Người quản lý thông báo, đề xuất với Admin xét duyệt xóa nhà cung cấp và đợi Admin duyệt.
o Tác nhân: Người quản lý, Admin
- Mô tả :
o Dòng sự kiện chính:
o Người quản lý thông báo, đề xuất với Admin xét duyệt xóa nhà cung cấp mới và đợi Admin duyệt.
Trang 162.3 BIỂU ĐỒ USE CASE
2.3.1 Biểu đồ use case Hệ thống quản lý thuốc
Hình 2.3.1 Hệ thống quản lý thuốc
Trang 172.3.2 Biểu đồ use case Đăng nhập
Hình 2.3.2 Quản lý Đăng nhập
Trang 182.3.3 Biểu đồ use case Quản lý nhà cung cấp
Hình 2.3.3 Quản lý nhà cung cấp
Trang 192.3.4 Biểu đồ use case Quản lý thuốc
Hình 2.3.4 Quản lý thuốc
Trang 202.3.5 Biểu đồ use case Tìm kiếm
Hình 2.3.5 Tìm kiếm
Trang 212.4 BIỂU ĐỒ TRÌNH TỰ
2.4.1 Biểu đồ trình tự Đăng nhập
Hình 2.4.1 Biểu đồ trình tự đăng nhập
Trang 222.4.2 Biểu đồ trình tự thêm nhà cung cấp
Hình 2.4.2 Biểu đồ trình tự thêm Nhà cung cấp
2.4.3 Biểu đồ trình tự sửa nhà cung cấp
Trang 23Hình 2.4.3 Biểu đồ trình tự sửa Nhà cung cấp
2.4.4 Biểu đồ trình tự xóa nhà cung cấp
Trang 24Hình 2.4.4 Biểu đồ trình tự xóa Nhà cung cấp
Trang 252.4.5 Biểu đồ trình tự thêm thuốc
Hình 2.4.5 Biểu đồ trình tự thêm thuốc
Trang 262.4.6 Biểu đồ trình tự sửa thuốc
Hình 2.4.6 Biểu đồ trình tự sửa thuốc
Trang 272.4.7 Biểu đồ trình tự xóa thuốc
Hình 2.4.7 Biểu đồ trình tự xóa thuốc
Trang 282.4.8 Biểu đồ trình tự thanh lý thuốc
Hình 2.4.8 Biểu đồ trình tự Thanh lý thuốc
Trang 292.4.9 Biều đố trình tự Thống kê, báo cáo
Hình 2.4.9 Biểu đồ trình tự thống kê, báo cáo
Trang 302.4.10 Biểu đồ trình tự tìm kiếm
Hình 2.4.10 Biểu đồ trình tự tìm kiếm
Trang 32Hình 2.5.2 Biểu đồ cộng tác thêm Nhà cung cấp
Trang 332.5.3 Biểu đồ cộng tác sửa nhà cung cấp
Hình 2.5.3 Biểu đồ cộng tác Sửa nhà cung cấp
2.5.4 Biểu đồ cộng tác xóa nhà cung cấp
Hình 2.5.4 Biểu đồ cộng tác Xóa nhà cung cấp