Tải bản đầy đủ (.doc) (45 trang)

Đề án môn học Xây dựng phần mềm Quản lý bán thuốc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (387.61 KB, 45 trang )

Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
Lời mở đầu
Lê Đình Tuân Tin học kinh tế
47A
1
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
Chương I .Khái quát tình hình
I. Vai trò của công nghệ thông tin hiện nay
Lịch sử phát triển của xã hội loài người đã chứng minh mối quan hệ
biện chứng giữa công nghệ và phát triển bằng việc tăng cường áp dụng
công nghệ, xã hội loài người đã từng bước chuyển dịch vị thế của mình từ
thế giới tự nhiên sang thế giới nhân đạo… Công nghệ cũng chính là yếu tố
quyết định sự thịnh vượng hay suy vong của một quốc gia.
Trong xã hội hiện đại, vai trò của công nghệ ngày càng tăng lên. Nó
đã và đang trở thành hàng hoá được chuyển giao trên thị trường và được
bảo hộ bằng pháp luật. Những tiến bộ như vũ bão của KH-CN trong hai
thập kỷ qua, đặc biệt là trong các lĩnh vực Công nghệ thông tin, công nghệ
sinh học, công nghệ Nano, tự động hoá đã làm đảo lộn tư duy và chiến lược
của nhiều nước. Không ai còn có thể hoài nghi về vai trò của công nghệ
trong phát triển kinh tế toàn cầu và của mỗi quốc gia.
II. Phần mềm quản lý bán thuốc
Hiện tại mọi hoạt động của cửa hang bán thuốc đêu thực hiện một
cách thủ công chưa được tin học hoá ở bất kì một khâu nào. Do vậy khi nhà
quản lý muốn kiểm tra số liệu về thuốc như lượng nhập, lương thuốc đã
bán hay còn tồn là tương đối mất thời gian và công sức. Các nhân viên phải
tập hợp số liệu từ các hoá đơn bán thuốc, các phiếu nhập thuốc… bằng
phương pháp thủ công.
Từ những bất câp trên việc xây dựng một phần mềm hỗ trợ cho hoạt
động kinh doanh của cửa hàng là hết sức cần thiết nhất là trong thời đại
Công nghệ thông tin đang phát triển mạnh mẽ.
Lê Đình Tuân Tin học kinh tế


47A
2
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
Chương II. Một số vấn đề về phương pháp luận
1. Khái niệm về phần mềm
a. Định nghĩa về phần mềm
Trong công nghệ phần mềm,người ta chấp nhận định nghĩa sau của
nhà tin học người Mỹ : Roger Pressman.
Theo ông thì phần mềm trong công nghệ phần mềm là một tập
hợp gồm ba yếu tố là:
- Các chương trình máy tính.
- Các cấu trúc dữ liệu.
- Hệ thống tài liệu hướng dẫn sử dụng.
b. Vòng đời phát triển của phần mềm
Vòng đời phát triển của phần mềm ( SDLC_System development
life cycle ) là một quá trình từ khi phần mềm ra đời cho đến khi được đưa
vào sử dụng và quá trình nâng cấp bảo trì phần mềm đó.
Ý nghĩa của mô hình thác nước để biểu diễn vòng đời phát triển
của phần mềm :
- Đây là công những công đoạn của một quy trình thống nhất,có
quan hệ mật thiết với nhau và không thể tách rời.
-Trong mô hình này thì các công đoạn phía dưới chịu sự tác động
của công đoạn phía trên.
-Mỗi công đoạn có chức năng chuyên biệt khác nhau nhưng đều
nằm trong mối quan hệ thống nhất.

Lê Đình Tuân Tin học kinh tế
47A
3
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc

Vòng đời phát triển của phần mềm được biểu diễn bởi mô hình thác
nước như hình vẽ sau đây :
Mô hình thác nước vòng đời phát triển của phần mềm.
2. Các phương pháp thiết kế phần mềm
a. Khái niệm module hoá :
Module là một khái niệm quan trọng trong lập trình có cấu trúc.Mỗi
module được coi là một chương trình độc lập có thể gắn kết lại với
nhau.Người ta dùng phương pháp module hoá để phân chia bài toán lớn
thành các bài toán nhỏ hơn,đơn giản hơn theo cấu trúc hình cây.
b. Phương pháp thiết kế Top Down :
Phưong pháp này gồm hai bươc như sau :
- Bước 1: Xác định vấn đề bao quát của toàn bộ bài toán.
- Bước 2: Phân chia nhiệm vụ cần giải quyết thành những nhiệm
vụ cụ thể hơn
c. Phương pháp thiết kế Bottom Up :
Ngược lại với phương pháp Top Down
Phương pháp này gồm hai bước như sau :
-Bước 1 : Giải quyết các vấn đề cụ thể.
Lê Đình Tuân Tin học kinh tế
47A
4
Xác định yêu cầu
phân tích HTTT
Phân tích chi tiết
Thiết kế
Cài đặt
Khai thác và bảo
trì
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
-Bước 2 : Phân chia nhiệm vụ cần giải quyết thành các nhiệm vụ

cụ thể và gộp chúng lại từng nhóm chức năng từ dưới lên trên cho đến
module chính.(Thêm chức năng vào các chức năng chính giúp đầy đủ và
phong phú hơn).
3. Quy trình trong sản xuất phần mềm :
a. Xác định yêu cầu của công ty
• Mục đích : Quy trinh này nhằm xác định chính xác yêu cầu của
khách hàng về phần mềm.
• Dấu hiệu :
- Phân tích nghiệp vụ chuyên sâu
- Lập mô hình hoạt động của hệ thống ( DFD,BFD,ERD )
• Lưu đồ :
Lê Đình Tuân Tin học kinh tế
47A
5
Mở
đầu
Lập kế hoạch xác định yêu cầu
Báo cáo
Phân tích nghiệp vụ
Lập mô hình hệ thống
Xác định yêu cầu của khách hàng
Quản tri viên
dự án duyệt
Kết thúc
Không
thông
qua
Thông qua
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
b. Quy trình xây dựng và quản lý hợp đồng phần mềm

• Mục đích : Xem xét các giải pháp,soạn thảo,kí kết,theo dõi quá
trình thực hiện hợp đồng và thanh toán,thanh lý,nghiệm thu các hợp đồng
phần mềm
• Dấu hiệu : Quy trình xây dựng và quản lý hợp đồng phần mềm tập
trung vào các dấu hiệu sau :
- Xây dựng hợp đồng phần mềm với khách hàng.
- Theo dõi thực hiện hợp đồng với khách hàng.
- Thanh toán,thanh lý hợp đông phần mềm.
• Lưu đồ :
Lê Đình Tuân Tin học kinh tế
47A
6
Mở
đầu
Mở
đầu
Nghiên cứu đề xuất
Xây dựng hợp đồng
phần mềm
Trao đổi hợp đồng
phần mềm
Thanh toán thanh lý
hợp đồng
Báo cáo quy trình
Lập giải pháp
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
c. Quy trình phân tích thiết kế
• Mục đich :
- Xác định đặc tả yêu cầu phần mềm.
- Xác định kiến trúc hệ thống.

- Thiết kế dữ liệu.
- Thiết kế chương trình.
- Thiết kế giao diện.
Áp dụng lý thuyết quy trình thiết kế trong xây dựng phần mềm
quản lý kho ta có :
- Yêu cầu của phần mềm là : các chức năng mà phần mềm quản lý
kho cần có.
- Kiến trúc hệ thống là : sơ đồ hình cây mô tả cấu trúc của phần mềm
quản lý kho.
- Thiết kế dữ liệu là : thu thập dữ liệu về hoạt động quản lý kho và
xây dựng các tệp lưu trữ dữ liệu trong cơ sỏ dữ liệu.
- Thiết kế chương trình : thiết kế các module mà phần mềm quản lý
kho cần có.
-Thiết kế giao diện : thiết kế màn hình để cập nhật dữ liệu và xuất các
báo cáo.Phần mềm quản lý kho sử dung công cụ có sẵn của Visual Basic
6.0 để thiết kế giao diện và sử dụng Crystant Report để thiết kế báo cáo đầu
ra.
• Dấu hiệu :
-Thiết kế cấu trúc phần mềm.
-Thiết kế kỹ thuật ( gồm có : thiết kế dữ liệu, thiết kế
thủ tục,
thiết kế chương trình,thiết kế giao diện.
Lê Đình Tuân Tin học kinh tế
47A
7
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
• Lưu đồ :
Lê Đình Tuân Tin học kinh tế
47A
8

Không
duyệt
Mở
đầu
Kết
thúc
Lập kế hoạch thiết kế
Thiết kế dữ liệu
Thiết kế thủ tục
Thiết kế chương trình
Thiết kế giao diện
Thiết kế kiến trúc phần
mềm
Hồ sơ thiết kế
Duyệt thiết
kế kiến trúc
duyệt
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
d. Quy trình lập trình
• Mục đích : trên cơ sở của hồ sơ thiết kế,bộ phận lập trình tiến
hành chi
tiết hoá các sơ đồ khối để biến thành các bản vẽ thiết kế tổng thể,
tiến hành lập trình các module tích hợp hệ thống,biên soạn tài liệu mô tả
hệ thống.
• Dấu hiệu :
-Lập trình các thư viện chung.
-Lập trình module.
-Tích hợp hệ thống.
• Lưu đồ :
Lê Đình Tuân Tin học kinh tế

47A
9
Mở
đầu
Kếtthú
c
Lập kế hoạch lập trình
Lập trình Module
Tích hợp hệ thống
Báo cáo quy trình
Lập thư viện chung
Duyệt
Không
duyệt
duyệt
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
e. Quy trình chạy thử nghiệm chương trình
• Mục đích :
- Test hệ thống theo đặc tả yêu cầu của phần mềm.
- Test nghiệm thu theo tiêu chuẩn.
- Test kiểm tra theo yêu cầu của khách hàng.
• Dấu hiệu :
- Lập tiêu chuẩn và kịch bản test.
- Thực hiện test.
- Lập biên bản ghi nhận quá trình test.
• Lưu đồ :
Lưu đồ quy trình Kiểm thử phần mềm
Lê Đình Tuân Tin học kinh tế
47A
10

Mở
đầu
Kết thúc
Lập kế hoạch test
Test hệ thống
Test nghiệm thu
Báo cáo quy trình
Lập kịch bản test
Duyệt
Không
duyệt
duyệt
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
f. Quy trình triển khai và lắp đặt phần mềm
• Mục đích :
- Cài đặt hệ thống cho khách hàng.
- Đào tạo sử dụng cho khách hàng.
- Hỗ trợ việc chuyển từ hệ thống cũ sang hệ thống mới.
• Dấu hiệu :
-Cài đặt máy chủ,máy trạm.
-Cài đặt hệ thống phần mềm.
-Đào tạo người sử dụng.
Lưu đồ :
Lê Đình Tuân Tin học kinh tế
47A
11
Kết
thúc
Không
duyệt

Mở
đầu
Lập kế hoạch triển
khai
Cài đặt phần cứng
Cài đặt phần mềm
Đào tạo người sử dụng
Xây dựng giải pháp
Kiểm tra
diều kiện
duyệt
Tổng hợp kết quả
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
II. Giới thiệu về HQTCSDL Access và ngôn ngữ lập trình Visual Basic
1 HQTCSDL Access
Microsoft Access là một thành phần của chùm phần mềm Microsoft
Office Professional, vì thế mà những đối tượng thuộc giao diện thực đơn,
dải công cụ và hộp thoại rất tương tự như các ứng dụng khác của Office.
Việc trao đổi dữ liệu giữa Access và các ứng dụng khác trong môi trường
Windows như Excel, Word… cũng rất thuận tiện.
Access có rất nhiều chức năng để đáp ứng những nhu cầu khác nhau
về CSDL. Có thể dùng Access để phát triển sáu kiểu ứng dụng phổ biến
nhất, đó là 1) ứng dụng cá nhân, 2) ứng dụng cho doanh nghiệp nhỏ, 3) ứng
dụng trong nội bộ từng phòng ban, 4) ứng dụng cho toàn công ty, 5) ứng
dụng ở tuyến trước cho các CSDL theo mô hình khách/chủ trên phạm vi
toàn doanh nghiệp và 6) ứng dụng trên mạng nội bộ của một cơ quan
-Dùng Access làm nền cho những ứng dụng cá nhân: có thể dùng
Access để phát triển những hệ thống quản lý dữ liệu đơn giản của cá nhân.
Nhiều người đã tự động hóa hầu hết các công việc quản lý dữ liệu cá nhân
cho bản thân mình, từ quản lý tài chính, tài liệu, số điện thoại và quản lý

địa chỉ đến băng đĩa, gia phả…Với những ứng dụng không cầu kì, Access
đặc biệt dễ dùng. Những “phép mầu nhiệm” ẩn dụ trong các Wizard (thuật
sĩ) làm cho Access có vẻ như sản phẩm mà ai cũng có thể dùng được. Khi
lần đầu tiên Microsoft đưa Access ra thị trường, một vài chuyên gia lập
trình máy tính đã cảm thấy phảng phất nỗi e ngại trước nguy cơ thất nghiệp
vì dường như ai cũng có thể phát triển đựợc những ứng dụng Access. Thực
tế thì không dễ đến như vậy: khi các ứng dụng Access càng phức tạp thì
càng đòi hỏi phải lập trình với mức độ ở mức độ chuyên nghiệp, trong đó
sử dụng Visual Basic làm công cụ
-Ứng dụng Access cho những doanh nghiệp nhỏ: Access là một công
cụ tuyệt vời để phát triển những ứng dụng phục vụ công tác quản lý và điều
hành một doanh nghiệp nhỏ. Những Wizard của Access cho phép dễ dàng
Lê Đình Tuân Tin học kinh tế
47A
12
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
và nhanh chóng xây dựng nền móng cho một ứng dụng. Khả năng đưa vào
ứng dụng Access những đơn vị (module) chương trình viết bằng Visual
Basic giúp cán bộ lập trình tạo ra các thư viện bao gồm những thủ tục (sub)
và những hàm (function) có thể sử dụng lại (reusable). Khả năng bổ sung
chương trình vào “phía sau” những mẫu (form) và báo cáo (report) cho
phép họ thiết kế được những giao diện hoạt động trôi chảy và ứng xử linh
hoạt trước những sự kiện do người dùng gây ra. Tuy nhiên, quá trình sử
dụng Access để phát triển một ứng dụng chuyên biệt cho một doanh nghiệp
nhỏ cũng đòi hỏi đáng kể về thời gian, tài chính và trình độ chuyên nghiệp.
Nhiều người dùng Wizard để khởi đầu quá trình này nhưng chẳng bao lâu
đã nhận thấy không thể tự mình hoàn thiện tất được những công đoạn phức
tạp. Nhu cầu của các doanh nghiệp lớn hơn nhiều so với cá nhân. Vì vậy
khi sử dụng Access như một công cụ để phát triển những ứng dụng cho
doanh nghiệp nhỏ ta cũng phải xem xét các điều kiện cụ thể về thời gian và

tài chính hiện có.
-Ứng dụng Access ở cấp phòng ban: Access cũng rất thuận tiện dùng
để phát triển những ứng dụng cấp phòng ban thuộc những công ty lớn. Hầu
hết các phòng ban thuộc công ty lớn đều có đủ ngân sách để tạo ra những
ứng dụng được thiết kế một cách hoàn hảo. Hơn nữa, nhiều phòng ban còn
có những nhân viên rất hăng say thiết kế mẫu và báo cáo. Họ sẵn sang phối
hợp với các chuyên gia phần mềm để tạo nên những ứng dụng đáp ứng một
cách mỹ mãn những nhu cầu thông tin của phòng ban.
-Ứng dụng Access cho toàn doanh nghiệp: mặc dù Access thích hợp
nhất cho những ứng dụng ở cấp phòng ban nhưng vẫn có thể dùng nó để
tạo ra những ứng dụng xử lý dữ liệu và cung cấp thông tin trên toàn bộ
phạm vi của một cơ quan với quy mô vừa phải. Cần lưu ý là khi số người
sử dụng đồng thời quá lớn (hàng ngàn) thì hiệu năng của Access suy giảm
đáng kể, đặc biệt là khi cường độ giao thông trên mạng đã quá cao. Nếu
Lê Đình Tuân Tin học kinh tế
47A
13
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
hiệu năng giảm đến mức không chấp nhận được thì chỉ nên dùng Access
như công cụ ở tuyến trước (front-end) cho một CSDL kiểu khách/chủ.
-Dùng Access như phần mềm ở tuyến trước cho các ứng dụng
khách/chủ trên phạm vi toàn doanh nghiệp: Một HQTCSDL mạnh hơn ở
tuyến sau xử lý các lệnh truy vấn (query) trên máy chủ và truyền kết quả về
máy trạm. Bản thân phần mềm ở máy chủ không thể trực tiếp trình bày
thông tin trước người dùng mà chính đây là nơi cần có sự tham gia của
phần mềm ở tuyến trước như Access. Hoạt động ở tuyến trước, Access đảm
đương việc hiện thông tin tim được từ máy chủ dưới dạng những mẫu, báo
cáo hay trang dữ liệu (datasheet). Khi người dùng cập nhật dữ liệu qua một
trình duyệt Web như Internet Explorer chắng hạn. Các trang tiếp cận dữ
liệu là những tài liệu HTML bị ràng buộc trực tiếp vào một CSDL Access.

Ngoài các trang tiếp cận dữ liệu, Access còn cho phép xuất bản các đối
tượng của CSDL thành những trang HTML hay XML. Những trang động
được xuất bản qua máy chủ dạng Web (Web Server) và cung cấp cho người
dùng dữ liệu mới nhất lấy từ CSDL.
Trên đây là những luận cứ xác đáng biện hộ cho quyết định lựa chọn
HQTCSDL Microsoft Access làm phương tiện để trình bày các khái niệm
liên quan đến một ứng dụng CSDL.
2 Ngôn ngữ lập trình Visual Basic
Visual Basic là ngôn ngữ lập trình đa năng, dễ sử dụng để phát triển
phần mềm chạy trong môi trường Windows hay trên mạng Internet
-Ưu điểm: bao gồm mọi đặc điểm của ngôn ngữ Basic trước kia nên
rất quen thuộc và dễ dùng, cung cấp nhiều công cụ điều khiển có sẵn hỗ trợ
lập trình viên nhất là trong lập trình ứng dụng CSDL. Đây là ngôn ngữ lập
trình có tính trực quan rất cao, có cấu trúc logic chặt chẽ ở mức độ vừa phải
rất dễ học thành thạo
-Nhược điểm: Một điều khó trong Visual Basic là nó không hỗ trợ
phông chữ Unicode
Lê Đình Tuân Tin học kinh tế
47A
14
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
III. Xây dựng CSDL phục vụ quản lý bán hàng tại cửa hàng thuốc
1. Mục đích của việc xây dựng CSDL
Hiện tại mọi giao dịch mua bán thuốc tại cửa hàng đều thực hiện thủ
công chưa được tin học hóa tại bất cứ khâu nào, khi muốn xem xét thống
kê lại các giao dịch này tốn rất nhiều công sức và thời gian. Việc quản lý
các loại thuốc còn tồn hay đã bán hết cũng gặp khó khăn do số lượng là khá
lớn
Yêu cầu đặt ra đòi hỏi phải xây dựng một CSDL để hỗ trợ:
-Việc tìm kiếm loại thuốc theo tên, theo công dụng…

-Quản lý các giao dịch mua bán thuốc diễn ra hàng ngày
-Lên các báo cáo về số thuốc nhập vào, bán ra hay báo cáo doanh thu
đạt được
2. Sơ đồ chức năng BFD của hệ thống
Lê Đình Tuân Tin học kinh tế
47A
Quản lý bán hàng
Quản lý xuất – nhập Quản lý tìm kiếm
Thống kê – Báo cáo
Nhận y/c xuất nhập
Xử lý y/c Tìm theo công dụng
Báo cáo doanh thu
Tìm theo tên thuốc
Báo cáo nhập-xuất
Thuốc tồn
Tìm theo người bánThực hiện y/c
15
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
3. Sơ đồ DFD
a. DFD ngữ cảnh
Lê Đình Tuân Tin học kinh tế
47A
Khách hàng
Nhà cung cấp
Nhà quản lý
Quản lý bán thuốc
Thuốc đặt mua
Báo cáo
Thuốc
đặt

mua
Yêu
cầu
mua
thuốc
16
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
b. Sơ đồ DFD mức 0
Lê Đình Tuân Tin học kinh tế
47A
17
1.0
Quản lý
xuất - nhập
3.0
Thống kê –
Báo cáo
2.0
Quản lý tìm
kiếm
CSDL thuốc
Nhà quản lý
Báo cáo
Khách hàng
Nhà cung cấp
Đơn đặt hàng
Thuốc đặt mua
Yêu cầu mua thuốc
Thuốc đặt mua
Nhân viên

Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
c. Sơ đồ DFD mức 1
 Quản lý xuất nhập
Lê Đình Tuân Tin học kinh tế
47A
1.1
Nhận y/c
xuất-nhập
1.2
Xử lý y/c
1.3
Thực hiện
xuất-nhập
Khách hàng
Nhà cung cấp
Đơn đặt hàng
Thuốc đặt mua
Đơn đặt hàng, PNM
Y/c
đã
qua
xử

Khách hàng
Thuốc đặt mua
Nhà cung cấp
Y/c mua thuốc
Đơn đặt hàng,
PNM
18

Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
 Quản lý tìm kiếm
Lê Đình Tuân Tin học kinh tế
47A
Nhân viên
Nhà quản lý
2.2
Tìm theo
công dụng
2.1
Tìm theo tên
2.1
Tìm theo
người bán
CSDL thuốc
Y/c tìm theo tên
Nhân viên
Nhà quản lý
Kết quả tìm
Nhân viên
Nhân viên
Nhân viên
Nhân viên
Nhà quản lý
Nhà quản lý
Nhà quản lý
Nhà quản lý
y/c
tìm
y/c

tìm
Kết
quả
tìm
Kết
quả
tìm
19
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
 Thống kê – Báo cáo
4. Thiết kế cơ sở dữ liệu logic
a. Thiết kế các bảng trong CSDL
Khi thiết kế các tệp máy tính, các nguồn dữ liệu thường được tổ hợp
với nhau để sử dụng trong cùng một tiến trình hoặc có thể được dùng trong
những tiến trình khác nhau. Điều đó có nghĩa là một số dữ liệu có thể bị sao
chép lặp lại và cũng được lưu giữ ở nhiều nơi khác nhau, nó không chỉ tốn
không gian lưu trữ mà còn không thống nhất dữ liệu giữa các tệp nếu
không cập nhật đầy đủ. Thiết kế cơ sở dữ liệu trên cơ sở các thông tin đầu
ra nhằm để xác định các thông tin cơ sở có ích cho hệ thống, nó xác định
các mối quan hệ bên trong hoặc tham trỏ chéo với nhau giữa các thực thể.
Điều đó có nghĩa là mọi phần tử dữ liệu chỉ được lưu giữ một lần trong
toàn bộ hệ thống và có thể được truy cập bất cứ tiến trình nào. Kết quả của
việc thiết kế cơ sở dữ liệu logic sẽ cho ta một tập hợp các tệp dữ liệu và
chúng liên kết với nhau theo hồ sơ cấu trúc dữ liệu để tạo thành môt cơ sở
dữ liệu hoàn chỉnh.
Lê Đình Tuân Tin học kinh tế
47A
3.1
Tồn thuốc
3.3

Báo cáo
doanh thu
3.2
Báo cáo
nhập-xuất
CSDL thuốc
Nhà quản lý
Nhà quản lý
Báo
cáo
Báo cáo
Báo
cáo
20
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
Việc thiết kế cơ sở dữ liệu logic cho hệ thống bán hàng được tiến
hành như sau:
Bước 1
Dựa vào các thông tin đầu ra đã thu thập được, xác định các tệp cần
thiết cung cấp đủ dữ liệu cho việc tạo ra từ đầu ra. Liệt kê các phần tử
thông tin đầu ra:
Mã hóa đơn
Mã KH
Tên KH
Địa chỉ KH
Số TT
Mã thuốc
Tên thuốc
Ngày sản xuất
Hạn dùng

Công dụng
Đơn vị tính
Số lượng
Thành tiền
Thuế
Cộng tiền
Tiền thuế
Tổng tiền thanh toán
Tổng số tiền ghi bằng chữ
Ngày lập
Người lập
Số phiếu nhập
Mã nhà cung cấp
Tên nhà cung cấp
Địa chỉ nhà cung cấp
Bước 2
Lê Đình Tuân Tin học kinh tế
47A
21
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
Thực hiện chuẩn hóa các danh sách thuộc tính đã liệt kê thông tin đầu
ra. Chuẩn hóa là quá trình cải tiến một bản thiết kế Cơ sở dữ liệu tồi sao
cho nó khắc phục được những điều bất thường khi đổi mới dữ liệu và tránh
được hiện tượng không nhất quán về dữ liệu.
Quá trình chuẩn hóa dữ liệu thường bao gồm việc áp dụng liên tiếp 3
mức chuẩn hóa sau:
Chuẩn hóa mức1 (1NF): đảm bảo không tồn tại các thuộc tính lặp
trong danh sách. Nếu có thì phải tách các thuộc tính lặp ra thành các danh
sách con có một ý nghĩa dưới góc độ quản lý. Gán thêm cho nó một tên
đồng thời tìm cho nó thuộc tính đinh danh riêng và thêm thuộc tính đinh

danh của danh sách gốc.
Chuẩn hóa mức 2 (2NF): qui định rằng trong một danh sách chuẩn
hóa mỗi thuộc tính phải phụ thuộc hàm vào toàn bộ khóa Chuẩn hóa chứ
không chỉ phụ thuộc một phần của khóa. Nếu có sự phụ thuộc thì phải tách
những thuộc tính phụ thuộc vào bộ phận khóa thành một danh sách Chuẩn
hóa con mới.
Chuẩn hóa mức 3 (3NF): trong một danh sách Chuẩn hóa không
được phép có sự phụ thuộc bắc cầu giữa các thuộc tính. Nếu có sự phụ
thuộc bắc cầu xảy ra thì phải tách chúng thành các danh sách mới trong đó
chỉ còn sự phụ thuộc hàm của các thuộc tính khóa.
Sau khi chuẩn hóa CSDL ta thu được các tệp CSDL sau:
Thuoc (Mathuoc, Tenthuoc, Ngaysanxuat, Handung, Congdung,
Donvitinh,Dongia)
HoaDonThuoc (MaHD, MaKH, Ngaylap, SoTT, Mathuoc, Tenthuoc,
Soluong, Thanhtien, Nhanvien)
KhachHang ( MaKH, TenKH, Diachi)
NhaCungCap (MaNCC, TenNCC, DiachiNCC)
Thue (Mathue, Thuesuat)
PhieuNhapThuoc ( SoPN, Mathuoc, Soluongnhap)
Bước 3
Xác định mối quan hệ giữa các bảng trong CSDL
Lê Đình Tuân Tin học kinh tế
47A
22
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
b. Mối quan hệ giữa các bảng trong CSDL
Lê Đình Tuân Tin học kinh tế
47A
23
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc

c. Cấu trúc các tệp CSDL
Bảng Thuoc (Thuốc)
ST
T
Tên trường Kiểu dữ liệu Độ rộng Not Null/Null Giải thích
1 Mathuoc Text 10 Not Null Mã thuốc
2 Tenthuoc Text 20 Tên thuốc
3 Ngaysanxuat Date/Time Ngày sản xuất
4 Handung Date/Time Hạn dùng
5 Đơn vị tính Text 10 Đơn vị tính
6 Đơn giá Number Đơn giá
7 Mathue Text 10 Mã thuế
Bảng HD-Thuoc (Hóa đơn-Thuốc)
STT Tên trường Kiểu dữ liệu Độ rộng Not Null/Null Giải thích
1 MaHD Text 10 Not Null Mã hóa đơn
2 Mathuoc Text 10 Not Null Mã thuốc
3 Ngaylap Date/Time Ngày lập
Bảng HDThuoc (Hóa đơn thuốc)
ST
T
Tên trường Kiểu dữ liệu Độ rộng Not Null/Null Giải thích
1 MaHD Text 10 Not Null Mã hóa đơn
2 MaKH Text 20 Mã khách
hàng
3 STT Number Số thứ tự
4 Soluong Number Số lượng
5 Thanhtien Number 10 Thành tiền
6 Nguoilap Text 20 Người lập
Bảng KhachHang (Khách Hàng)
Lê Đình Tuân Tin học kinh tế

47A
24
Đề án môn học Xây dựng phần mềm Quản lý bán thuốc
ST
T
Tên trường Kiểu dữ liệu Độ rộng Not Null/Null Giải thích
1 MaKH Text 10 Not Null Mã khách hàng
2 TenKH Text 20 Tên khách hàng
3 Diachi Text 30 Địa chỉ
Bảng KH-HD (Khách hàng-Hóa đơn)
STT Tên trường Kiểu dữ
liệu
Độ rộng Not Null/Null Giải thích
1 MaKH Text 10 Not Null Mã khách hàng
2 MaHD Text 20 Not Null Mã khách hàng
Bảng NhaCungCap (Nhà cung cấp)
STT Tên trường Kiểu dữ liệu Độ rộng Not Null/Null Giải thích
1 MaNCC Text 10 Not Null Mã nhà cung cấp
2 TenNCC Text 20 Tên nhà cung cấp
3 DiachiNCC Text 30 Địa chỉ NCC
Bảng NhanVien (Nhân viên)
ST
T
Tên trường Kiểu dữ liệu Độ rộng Not Null/Null Giải thích
1 MaNV Text 10 Not Null Mã nhân viên
2 TenNV Text 20 Tên nhân viên

Bảng NV-HD (Nhân viên -Hóa đơn)
STT Tên trường Kiểu dữ liệu Độ rộng Not Null/Null Giải thích
1 MaNV Text 10 Not Null Mã nhân viên

2 MaHD Text 10 Not Null Mã hóa đơn
Bảng PhieuNhapThuoc (Phiếu Nhập Thuốc)
ST
T
Tên trường Kiểu dữ liệu Độ rộng Not Null/Null Giải thích
Lê Đình Tuân Tin học kinh tế
47A
25

×