Xây dựng phần mềm quản lý kho hàng của công ty BNC Trần Huy.
Trang 1LỜI NÓI ĐẦU
Quản lý hàng hóa vật tư là hoạt động có ở bất cứ cơ sở kinh doanh
nào, kể cả nhà nước lẫn tư nhân Việc quản lý hàng hóa vật tư thủ cônglàm mất rất nhiều thời gian, chi phí mà hiêu quả lại không cao Ngày naycùng với sự phát triển của khoa học công nghệ các đơn vị sản xuất dầndần chuyển từng bước áp dụng công nghệ thông tin vào quản lý nhằmgiảm thiểu tối đa chi phí, nâng cao hiệu quả trong công tác quản lý Yêucầu đặt ra đối với một bài toán quản lý hàng hóa đó là quản lý được hànghóa tồn trong kho, có thể biết được hiện nay trong kho này hàng hóa tồnvới số lượng bao nhiêu, chất lượng sản phẩm tồn ra sao Ngoài ra cũngcần quản lý được các đơn vị, tổ chức thường xuyên giao dịch với đơn vịmình, thực hiện việc viết phiếu nhập kho, xuất kho khi phát sinh giaodịch với khách hàng hay nhà cung cấp, cho phép lập các báo cáo về tìnhhình xuất nhập, báo cáo về số lượng hàng tồn kho…gửi lên các cấp lãnhđạo để giúp ban lãnh đạo đưa ra những giải pháp kịp thời, đúng đắn xâydựng công ty ngày càng phát triển
Cấu trúc của chuyên đề tốt nghiệp bao gồm 3 chương:
Chương 1: Tổng quan về công ty BNC Trần Huy và bài toán quản lý
kho hàng
Giới thiệu tổng quan về công ty BNC Trần Huy Lý do lựa chọn đề tài,tính khả thi của đề tài và những công cụ để thực hiện đề tài đó
Chương 2: Cơ sở phương pháp luận xây dựng phần mềm.
Trình bày khái quát các phương pháp luận cơ bản làm cơ sở cho việcnghiên cứu đề tài
Chương 3: Xây dựng phần mềm quản lý kho hàng của công ty BNC
Trần Huy
Trang 2Trình bày quá trình khảo sát thông tin về bài toán ‘quản lý kho’ của
công ty để từ đó tiến hành phân tích và thiết kế chi tiết hệ thống Xây
dựng phần mềm dựa trên cơ sở thiết kế của hệ thống
Em xin chân thành cảm ơn tới các thầy cô giáo trong khoa Tin HọcKinh Tế và đặc biệt là thầy Cao Đình Thi – người đã xem xét và đưa racác ý kiến đóng góp, đánh giá giúp em kịp thời bổ sung những chỗ thiếusót để em hoàn thành tốt chuyên đề thực tập này
Em cũng xin gửi lời cảm ơn tới công ty BNC Trần Huy, anhNguyễn Hữu Dũng người đã tận tình giúp đỡ, tạo điều kiện cho em thựctập tốt và hoàn thành chuyên đề thực tập trong thời gian thực tập vừa qua
Chuyên đề: "Xây dựng phần mềm quản lí kho hàng công ty BNC
Trần Huy” mong sẽ giúp giải quyết được những khó khăn gặp phải trong
công tác quản lý kho hàng kể trên Dù đã cố gắng nhưng do trình độ cònhạn chế nên trong chuyên đề chắc hẳn còn nhiều thiếu sót mong nhậnđược những ý kiến đóng góp quý báu của các thầy cô
Em xin chân thành cảm ơn!
Hà Nội, tháng 05 năm 2009
Sinh viên thực hiện: Trịnh Thuỷ Tiên
Chương 1: Tổng quan về công ty BNC Trần Huy
Trang 3và bài toán quản lý kho hàng.
1.1 Tổng quan về công ty BNC Trần Huy
Trụ sở BNC Trần Huy: Phương Liễu, Quế Võ, Bắc Ninh.
1 Tài khoản:0351000151259
2 Mã số thuế: 2300309265
3 Điện thoại: 0241.811.801 – 0241.893.116 – 0241.893.105
4 Fax: 0241.811.801
6 Giám đốc : Nguyễn Hữu Dũng
Đăng ký kinh doanh số 2102001448 do sở kế hoạch đầu tư Bắc Ninh cấp
Công ty BNC Trần Huy hoạt động trong lĩnh vực công nghệ tinhọc, vừa có thế mạnh là thiết kế website, vừa có khả năng cung cấp cácsản phẩm máy tính đồng bộ PC, laptop, linh kiện máy tính, thiết bị mạng,
máy in, …cho các cá nhân và doanh nghiệp
1.1.1 Quá trình thành lập
Công ty BNC Trần Huy được thành lập năm 2005 với chức năngcung cấp các thiết bị tin học, thiết bị văn phòng, thiết kế các website phụcvụ các cơ quan, doanh nghiệp và các tổ chức phòng ban ; chuyển giaocông nghệ, tư vấn và cung cấp giải pháp tổng thể cho khách hàng Kể từkhi thành lập đến nay, BNC Trần Huy liên tục phát triển các kênh phân
phối thông qua hàng chục công ty trên địa bàn Bắc Ninh và các tỉnh.
Nhờ số lượng nhân viên có trình độ kỹ thuật cao và tinh thần phụctận tình hiệu quả, BNC Trần Huy đã dần đạt được vị thế quan trọng trong
thị trường công nghệ thông tin tại Bắc Ninh
1.1.2 Bộ máy tổ chức :
- Ban giám đốc:
Trang 4Điều hành chung
- Phòng kế toán:
Thực hiện các nghiệp vụ kế toán của doanh nghiệp và cung cấpcác sô liệu cho ban giám đốc cũng như các bộ phận kinh doanh để phântích kịp thời và đưa ra những quyết định đúng đắn trong kinh doanh
- Phòng kinh doanh phân phối và marketing:
Kinh doanh phân phối các sản phẩm tin học cho khách hàng vàcho các công ty, doanh nghiệp khác
Kinh doanh phân phối các thiết bị công nghê tin học
- Phòng kinh doanh dự án:
Tư vấn, thực hiện các dự án về CNTT trên phạm vi toàn quốc
Tư vấn triển khai các dây truyền công nghiệp, thực hiện các dựán về cung cấp thiết bị công nghiêp
- Trung tâm tích hợp hệ thống:
Phân tích thiết kế hệ thống, xây dựng các giải pháp mạng, xâydựng hệ thống quản lý doanh nghiệp
Tư vấn xây dựng các giải pháp mạng cho khách hàng
- Phòng kỹ thuật máy tính:
Hỗ trợ tất cả các dự án, các hợp đồng trong việc đảm bảo lắp đặttoàn bộ hệ thống thiết bị phần cứng, cài đặt phần mềm hệ thống và ứngdụng
Lắp đặt các thiết bị ngoại vi như máy in, projector, scanner, máyvẽ và các thiết bị chuyên dụng như: tapebackup, CD-Writer, Bảo trì các thiết bị mạng, các phần mềm hệ thống, phần mềm ứngdụng
- Phòng kỹ thuật chuyên dụng:
Hỗ trợ tất cả các dự án, các hợp đồng liên quan đến thiết bị viễnthông
Trang 5Nghiên cứu và đưa vào áp dụng những thành tựu mới của khoahọc công nghệ.
- Trung tâm bảo hành:
Tổ chức quản lý, bảo hành toàn bộ các thiết bị mà công ty đã cungcấp
Tiếp nhận thắc mắc của khách hàng và bố trí cán bộ giải quyết thắcmắc
Thay thế sửa chữa các thiết bị hỏng hóc
1.1.3 Các mặt hàng kinh doanh chủ yếu:
- Máy tính nguyên chiếc( PC, Notebook, Server) của các hãng nổitiếng như: Compaq, IBM, HP, DELL, Toshiba, Acer,
- Máy in laser, máy in kim, máy in mạng, máy chiếu projector, máyquét các loại
- Bộ lưu điện, ổn áp dùng cho máy tính và các thiết bị văn phòng
- Máy tính ASEAN được lắp rắp từ những linh kiện sản xuất tại các nướcĐông Nam Á
- Thiết bị mạng: network card, hub, switch, router, modem, cable,
- Thiết bị văn phòng: máy photocopy, máy hủy tài liệu, máy chấmcông, máy in và các phụ kiện kèm theo
- Phần mềm: cung cấp giải pháp phần mềm, chuyên cung cấp thiếtkế website công ty, giải pháp thương mại điện tử
1.2 Bài toán quản lý kho hàng của công ty BNC Trần Huy
- Nghiệp vụ thực hiện
Kỳ nhập liệu đầu tiên, nhập dữ liệu về các máy tính, linh kiện, thiếtbị gồm các thông tin như : mã số, tên hàng, nhà cung cấp, hãng sản xuất,kho, vị trí trong kho …Trước đó phải tiến hành phân loại hàng theo từngnhóm hàng tương ứng để dễ quản lý Từng nhóm hàng được phân theotừng khu vực riêng trong kho Đầu kỳ, tiến hành thống kê tồn kho đầu kỳđể có được số lượng từng loại hàng trong kho Trong kỳ, khi có hoạt
Trang 6động nhập kho hay xuất kho, thủ kho phải cập nhập phiếu nhập kho,phiếu xuất kho, thống kê chi tiết theo từng phiếu nhập, phiếu xuất Có thểlập báo cáo nhập, báo cáo xuất, báo cáo danh mục hàng hoá theo ngày,theo tuần … khi được cấp trên yêu cầu Cuối kỳ, báo cáo, thống kê hànghóa xuất nhập trong mỗi kỳ, lượng hàng tồn cuối kỳ mỗi kho, báo cáoxuất nhập tồn.
- Khó khăn của hệ thống:
Việc quản lý hàng hóa và các kho hàng chủ yếu mang tính thủ công gâynhiều khó khăn cho nhân viên quản lý kho hàng
Quá trình cập nhật nhập xuất hàng hóa chủ yếu là thủ công (làm trênExcel)
Lên báo cáo danh mục hàng, báo xuất, báo cáo nhập, báo cáo xuấtnhập tồn chủ yếu được thực hiện bằng excel nên tốn nhiều thời gian,không kịp thời và còn nhiều bất cập
Việc lưu trữ dữ liệu trên giấy tờ, sổ sách vẫn còn nhiều hạn chế
1.3 Đề xuất giải pháp tin học hóa cho bài toán quản lý kho
-Giải pháp kỹ thuật:
Phần mềm sẽ giúp đơn giản hóa các thao tác để người sử dụng cóthể thực hiện một cách dễ dàng nhất
Phần mềm được viết bằng ngôn ngữ lập trình Visual Basic, sử dụnghệ quản trị cơ sở dữ liệu Microsoft Office Access 2003 và công cụCrystal Report 8.5 để hỗ trợ lập báo cáo
-Giải pháp giao diện:
Phần mềm sẽ sử dụng ngôn ngữ Tiếng Việt đế người dùng dễ sửdụng Các màn hình xử lý cơ bản có sự tương đồng về hình thức Trongquá trình thiết kế, phần mềm có sử dụng một số công cụ hỗ trợ thiết kếgiao diện nên đảm bảo tính thân thiện và thẩm mỹ cao
Trang 7Chương 2: Cơ sở phương pháp luận xây
Phân loại phần mềm:
-Phần mềm hệ thống là những phần mềm đảm nhận công việc tích
hợp và điều khiển các thiết bị phần cứng đồng thời tạo ra môi trườngthuận lợi để các phần mềm khác và người sử dụng có thể thao tác trên đónhư một khối thống nhất mà không cần phải quan tâm đến những chi tiếtkỹ thuật phức tạp bên dưới như cách thức trao đổi dữ liệu giữa bộ nhớchính và đĩa, cách hiển thị văn bản lên màn hình,
-Phần mềm ứng dụng là những phần mềm được dùng để thực hiệnmột công việc xác định nào đó Phần mềm ứng dụng có thể chỉgồm một chương trình đơn giản như chương trình xem ảnh, hoặc mộtnhóm các chương trình cùng tương tác với nhau để thực hiện một côngvịệc nào đó như chương trình xử lý bản tính, chương trình xử lý vănbản,
2.1.2 Các đặc trưng của phần mềm
Phần mềm là phần tử của hệ thống logic chứ không phải là hệ thốngvật lý, do đó nó có những đặc trưng khác với hệ thống phần cứng
Phần mềm có những đặc trưng cơ bản sau:
Trang 8- Phần mềm được kĩ nghệ hóa, nó không được chế tạo theo nghĩa cổđiển.
- Phần mềm không bị hỏng đi trong quá trình sử dụng
- Phần mềm được xây dựng theo đơn đặt hàng chứ không lắp ráp từnhững thành phần có sẵn
2.1.3 Thuộc tính của sản phẩm phần mềm
Thuộc tính của một sản phẩm phần mềm là các đặc tính xuất hiện từsản phẩm một khi nó được cài đặt và được đưa ra dùng Các thuộc tínhnày không bao gồm các dịch vụ được cung cấp kèm theo sản phẩm đó.Các thuộc tính biến đổi tùy theo phần mềm Tuy nhiên những thuộctính tối quan trọng bao gồm:
-Khả năng bảo trì: Nó có khả năng thực hành những tiến triển đểthỏa mãn yêu cầu của khách hàng
-Khả năng tin cậy: Khả năng tin cậy của phần mềm bao gồm mộtloạt các đặc tính như là độ tin cậy, an toàn, và bảo mật Phần mềm tin cậykhông thể tạo ra các thiệt hại vật chất hay kinh tế trong trường hợp hưhỏng
-Độ hữu hiệu: Phần mềm không thể phí phạm các nguồn tài nguyênnhư là bộ nhớ và các chu kì vi xử lý
-Khả năng sử dụng: Phần mềm nên có một giao diện tương đối dễcho người dùng và có đầy đủ các hồ sơ về phần mềm
2.1.4 Khái niệm công nghệ phần mềm
Công nghệ phần mềm ra đời khi tin học phát triển đến một trình độnhất định nào đó Từ những năm 90 trở đi công nghệ phần mềm được nóiđến như một ngành mũi nhọn trong nền kinh tế quốc dân
Công nghệ phần mềm bao gồm một tập hợp với 3 thành phần chủ
chốt – Quy trình công nghệ, Phương pháp phát triển phần mềm, công cụ và môi trường phát triển phần mềm - giúp cho người quản lý có thể kiểm
soát được quá trình phát triển phần mềm và cung cấp cho một nền tảng để
Trang 9xây dựng một phần mềm chất lượng cao.
Quy trình công nghệ phần mềm : Hệ thống các giai đoạn mà quá trìnhphát triển phần mềm phải trải qua Với mỗi giai đoạn cần xác định rõ mụctiêu, kết quả nhận được từ giai đoạn trước đó cũng chính là kết quảchuyển giao cho giai đoạn kế tiếp
Để tiến hành xây dựng một phần mềm, chúng ta có thể áp dụng nhiềuphương pháp khác nhau Mỗi phương pháp sẽ có những hướng dẫn cụ thểcác công việc cần phải thực hiện trong từng giai đoạn trong quy trình xâydựng phần mềm Các phương pháp xây dựng phần mềm được chia làmhai nhóm khác nhau dựa vào tính chất của công việc cần thực hiện:
- Phương pháp xây dựng :
+ Phương pháp hướng chức năng
+ Phương pháp hướng dữ liệu
+ Phương pháp hướng đối tượng
Công nghệ phần mềm
Phương pháp
Công cụ
Thủ tục
Kỹ sư phần mềm
Quản trị dự
án
Trang 10- Phương pháp tổ chức quản lý:
+ Xây dựng dự án
+ Tổ chức nhân sự
+ Ước lượng rủi ro, chi phí
+ Lập và theo dõi kế hoạch triển khai
- Các công cụ và môi trường phát triển phần mềm là các các phần
mềm hỗ trợ chính người sử dụng trong quá trình xây dựng phần mềm.Các phần mềm này gọi chung là CASE tools ( computer Aided SoftwareEngineering ) Việc hỗ trợ của các CASE tools trong một giai đoạn gồm 2hình thức chính:
+ Cho phép lưu trữ, cập nhật trên kết quả chuyển giao với mộtphương pháp nào đó
+ Cho phép phát sinh ra kết quả chuyển giao cho giai đoạn kế tiếp
2.1.5 Vòng đời phát triển của phần mềm
Mỗi phần mềm từ khi ra đời, phát triển đều trải qua một chu kì trongcông nghệ phần mềm gọi là vòng đời phát triển của phần mềm Người tanghiên cứu vòng đời phát triển của phần mềm để hiểu rõ từng giai đoạnđể có biện pháp thích hợp tác động vào giai đoạn đó nhằm đảm bảo chấtlượng của sản phẩm Vòng đời phát triển của phần mềm được biểu diễnbằng mô hình thác nước:
Trang 11Phân tích các yêu cầu và định nghĩa : hệ thống dịch vụ, khó khăn và mục
tiêu được hình thành bởi sự trợ ý của hệ thống người tiêu dùng Sau đó
các yếu tố này được định nghĩa sao cho có thể hiểu được bởi cả người
phát triển và người tiêu dùng
1 Thiết kế phần mềm và hệ thống : thiết kế hệ thống các quá trình,
các bộ phận và các yêu cầu về cả phần mềm lẫn phần cứng Hoàn tất hầu
như tất cả kiến trúc của hệ thống này Thiết kế phần mềm tham gia vào
việc biểu thị các chức năng hệ thống của phần mềm mà có thể được
chuyển dạng thành một hay nhiều chương trình khả thi
2 Thực hiện và thử nghiệm các đơn vị : trong giai đoạn này, thiết
kế phần mềm phải được chứng thực như là một tập hợp nhiều chương
trình hay nhiều đơn vị nhỏ Thử nghiệm các đơn vị bao gồm xác minh
rằng mỗi đơn vị thỏa mãn đặc tả của nó
3 Tổng hợp và thử nghiệm toàn bộ : các đơn vị chương trình riêng
lẻ hay các chương trình được tích hợp lại và thử nghiệm như là một hệ
Định nghĩa
các yêu cầu
Sản xuất và bảo trì
Tổng hợp và thử nghiệm toàn bộ phần mềm
Thực hiện và
thử nghiện từng đơn vị
Thiết kế phần mềm và hệ
thống
Hình 2.2: Vòng đời phát triển của phần mềm
Trang 12thống hoàn tất và chứng tỏ được các yêu cầu của phần mềm được thỏamãn Sau khi thử nghiệm phần mềm được cung ứng cho người tiêu dùng.
4 Sản xuất và bảo trì : thông thường ( nhưng không bắt buộc ) đâylà pha lâu nhất của chu kỳ tồn tại của sản phẩm Phần mềm được cài đặtvà được dùng trong thực tế Bảo trì bao gồm điều chỉnh các lỗi mà chưađược phát hiện trong các giai đoạn trước của chu kỳ mà phần mềm đượccài đặt, nâng cấp sự thực hiện của hệ thống các đơn vị và nâng cao hệthống dịch vụ cho là các phát hiện về yêu cầu mới
2.2 Tổng quan về quy trình phát triển phần mềm
Trong quy trình sản xuất phần mềm người ta thường tuân theo 6quy trình chính sau:
Quy trình xây dựng hợp đồng
Quy trình xác định yêu cầu
Quy trình phân tích thiết kế
Quy trình lập trình
Quy trình test
Quy trình triển khai
Các quy trình có mối liên hệ thống nhất với nhau theo một trình tựnhất định trong đó đầu ra của quy trình này làm đầu vào của quy trìnhtiếp sau
2.2.1 Quy trình 1: Xây dựng và quản lý hợp đồng phần mềm
Mục đích : Nghiên cứu, đề xuất giải pháp kỹ thuật, tiến hành xây dựnghợp đồng với khách hàng, theo dõi tiến trình thực hiện hợp đồng, tổ chứcthanh lý, thanh toán hợp đồng và lập hồ sơ tổng quát về quy trình hợpđồng phần mềm
Nội dung:
- 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
Trang 13Lưu đồ: Quy trình xây dựng và quản lý hợp đồng phần mềm
2.2.2 Quy trình 2 : Xác đinh yêu cầu phần mềm
Phân tích yêu cầu là khâu kỹ thuật gồm nhiều bước nhỏ : nghiên cứutính khả thi, phân tích mô hình hóa, đặc tả thẩm định yêu cầu Giai đoạnnày được tiến hành phối hợp giữa bên phát triển và khách hàng, nó có vaitrò đặc biệt quan trọng trong tiến trình phát triển phần mềm
Đây là bước hình thành bài toán hoặc đề tài Ở bước này trưởngnhóm thiết kế và người phân tích hệ thống phải biết được người đặt hàngmuốn gì Các yêu cầu phải được thu thập đầy đủ và phân tích theo chiềungang và dọc Công cụ chủ yếu được sử dụng ở giai đoạn này là các lược
Đề xuất tham gia hợp đồng phần mềm
Lập hồ sơ phần mềm
Theo dõi thực hiện hợp đồng phần mềm
Thanh toán, thanh lý hợp đồng phần mềm
Báo cáo tổng hợp hợp đồng phần mềm
Xây dựng và thiết kế hợp đồng phần mềm
Kết thúc Mở
đầu
Trang 14đồ, sơ đồ phản ánh rõ ràng các đối tượng của hệ thống: lưu đồ, sơ đồdòng dữ liệu, mạng thực thể quan hệ, sơ đồ cầu trúc phân cấp…
Quá trình phân tích:
- Phân tích phạm vi dự án
- Phân tích mở rộng yêu cầu nghiệp vụ
- Phân tích yêu cầu bảo mật
- Phân tích yêu cầu tốc độ
- Phân tích khả năng vận hành
- Phân tích yếu tố con người
Xác định yêu cầu : xác định thật chính xác và đầy đủ các yêu cầu đặt racho phẩn mềm sẽ được sử dụng
- Yêu cầu và mô tả yêu cầu : Các yêu cầu của phần mềm cần được
mô tả thật rõ ràng, cu thể, đầy đủ chính xác các thông tin liên quan đếncông việc tương ứng Việc mô tả sơ sài, mơ hồ yêu cầu phần mềm sẽ dẫnđến việc hiểu nhầm giữa chuyên viên tin học ( người thực hiện phần mềm) và khách hàng ( người đặt hàng thực hiện phần mềm)
- Phân loại yêu cầu : Bao gồm yêu cầu chức năng và yêu cầu phichức năng
Yêu cầu chức năng là danh sách các công việc sẽ được thực hiệntrên máy tính cùng với các thông tin mô tả tương ứng
Yêu cầu phi chức năng là các yêu cầu liên quan đến chất lượng phầnmềm, là sự ràng buộc cách thức thực hiện các yêu cầu chức năng
- Các bước xác định yêu cầu : Quá trình thực hiện xác định yêu cầugồm 2 bước chính như sau
Bước 1 : Khảo sát hiện trạng, kết quả nhận được là các báo cáo vềhiện trạng
Bước 2 : Lập danh sách các yêu cầu, kết quả nhận được là danh sáchcác yêu cầu sẽ được thực hiện trên máy tính
Mô hình hóa yêu cầu hệ thống : Cho phép ta hiểu một cách chi tiết hơn về
Trang 15ngữ cảnh vấn đề cần giải quyết một cách trực quan và bản chất nhất( thông tin cốt lõi ) yêu cầu Kết quả cho một mô hình mô tả lại hoạt độngcủa hệ thống thực Mỗi phương pháp phân tích đưa ra một kiểu sơ đồ hay
mô hình để xây dựng hệ thống
- Mô hình chức năng kinh doanh BFD ( Business function diagram) :
Mục đích : xác định một cách chính xác và cụ thể các chức năngchính của hệ thống thông tin Trong giai đoạn phân tích chức năng, người
ta phải xác định một cách rõ ràng những gì mà hệ thống sẽ phải thực hiệnmà chưa quan tâm đến phương pháp thực hiện được các chức năng ấy Một chức năng đầy đủ gồm những thành phần sau: tên chức năng,
mô tả các chức năng, đầu vào của chức năng, đầu ra của chức năng
Quy tắc lập sơ đồ chức năng BFD:
o Tuần tự: Ghi chức năng của từng cấp theo thứ tự xuất hiện củachúng
o Lựa chọn: Khi có sự lựa chọn giữa những gì xảy ra thì phải chỉ racách lựa chọn và đánh dấu “0” ở phía trên, góc phải của khối chức năngđó
o Phép lặp: Nếu một quá trình được thực hiện nhiều hơn một lần thìđánh đấu “*” ở phía trên góc phải của khối chức năng
o Tên gọi của sơ đồ chức năng cần được đặt một cách đầy đủ, rõràng để người đọc dễ hiểu và dễ dàng phân biệt giữa tên gọi của các chứcnăng với nhau
o Sơ đồ chức năng trên cùng một cấp cần được xác lập một cáchsáng sủa, đơn giản, chính xác và đầy đủ Các chức năng trên cùng mộtcấp thì có độ phức tạp như nhau
- Sơ đồ dòng dữ liệu DFD ( data flow diagram): Sơ đồ dòng dữ
liệu DFD là một công cụ để mô hình hóa hệ thống thông tin Mô hình
Trang 16DFD trợ giúp cho cả bốn hoạt động chính sau đây của các phân tích viêntrong quá trình phân tích thông tin.
Trong công đoạn phân tích mô hình DFD được dùng để xác địnhyêu cầu của người sử dụng Trong công đoạn thiết kế DFD dùng để vạchkế hoạch và minh họa các phương án cho phân tích viên hệ thống vàngười dùng khi thiết kế hệ thống mới Trong công đoạn biểu diễn hồ sơ,
mô hình DFD là công cụ đơn giản dễ hiểu đối với phân tích viên hệ thốngvà người dùng và biểu diễn tài liệu phân tích hệ thống một cách đầy đủ,súc tích, ngắn gọn
Các bước xây dựng DFD :
o Phân rã chức năng hệ thống
o Liệt kê các tác nhân, các khoản mục dữ liệu
o Vẽ DFD cho các mức
Nguyên tắc :
o Các tiến trình phải có luồng vào, luồng ra
o Không có luồng dữ liệu trực tiếp giữa các tác nhân với tác nhânvà kho dữ liệu
o Luồng dữ liệu không quay lại nơi xuất phát
o Bắt đầu bằng sơ đồ ngữ cảnh, từ sơ đồ ngữ cảnh đó phân rã thànhcác sơ đồ mức 0, mức 1…
- Mô hình thực thể quan hệ ERD ( Entity – Relation Diagram )
o Thực thể : Là đối tượng thế giới thực mà chúng ta muốn xử lý,có thể là đối tượng hay trừu tượng
o Thuộc tính : Đặc điểm của thực thể
o Quan hệ : Là mối liên hệ giữa các thực thể, là thông tin cần lưutrữ, xử lý
o Kế thừa : Là quan hệ kế thừa giữa các thực thể
Trang 17Lưu đồ: Quy trình xây dựng và quản lý hợp đồng phần mềm
2.2.3 Quy trình phân tích thiết kế
Vai trò :
-Thiết kế phần mềm nằm ở trung tâm kỹ thuật của tiến trình công nghệphần mềm Một khi các yêu cầu phần mềm đó được phân tích và đặc tảthì thiết kế phần mềm là một trong những hoạt động cần để kiểm chứngphần mềm
-Thiết kế là nơi chất lượng được nuôi dưỡng trong việc phát triển phầnmềm Thiết kế cung cấp cho ta cách biểu diễn phần mềm có thể được xácnhận về chất lượng Thiết kế là cách duy nhất mà chúng ta có thể dịch
Đề xuất tham gia hợp đồng phần mềm
Lập hồ sơ phần mềm
Theo dõi thực hiện hợp đồng phần mềm
Thanh toán, thanh lý hợp đồng phần mềm
Báo cáo tổng hợp hợp đồng phần mềm
Xây dựng và thiết kế hợp đồng phần mềm
Kết thúc Mở
đầu
Trang 18một cách chính xác các yêu cầu của khách hàng thành sản phẩm hay hệthống phần mềm cuối cùng.
Tiến trình thiết kế : Thiết kế phần mềm là một tiến trình trong đó các yêucầu của kế hoạch được chuyển đổi thành sự biểu diễn phần mềm Biểudiễn phần mềm sẽ mô tả cho quan điểm về tiến bộ phần mềm và quá trìnhtiếp theo sẽ chi tiết hóa biểu diễn phần mềm thành một bản thiết kế gầnchương trình gốc
-Dưới góc độ của các nhà quản lý dự án, tiến trình thiết kế phần mềmđược chia làm hai bước : thiết kế sơ bộ và thiết kế chi tiết Trong đó thiếtkế sơ bộ là việc chuyển đổi yêu cầu thành kiến trúc dữ liệu và phầnmềm Thiết kế chi tiết biểu diễn các kiến trúc để tạo thành cơ sở dữ liệuchi tiết và các thuật toán chi tiết cho phần mềm
-Dưới góc độ kỹ thuật, tiến trình thiết kế bao gồm: thiết kế dữ liệu, thiếtkế kiến trúc, thiết kế các thủ tục, thiết kế giao diện
Thiết kế và chất lượng phần mềm : Để đánh giá chất lượng của một biểudiễn thiết kế, chúng ta phải thiết lập các tiêu chuẩn cho thiết kế tốt
-Thiết kế nêu ra cách tổ chức theo cấp bậc để dùng cách kiểm soát thôngminh trong số các thành phần phần mềm
-Thiết kế theo các module : Tức là phần mềm nên được phân hoạch mộtcách logic thành các thành phần thực hiện những chức năng chính vàchức năng con xác định
-Thiết kế chứa cách biểu diễn phân biệt và tách biệt giữa những dữ liệuvà thủ tục
-Thiết kế được hướng theo cách dùng một phương pháp lặp lại được điểukhiển bởi thông tin có trong phân tích các yêu cầu phần mềm
Phương pháp thiết kế : Có hai phương pháp thiết kế cơ bản là Top downDesign và Bottom up Design
-Thiết kế từ trên xuống ( Top down Design ) : Trước hết người ta xácđịnh các vấn đề chủ đề nhất mà việc giải quyết bài toán yêu cầu, bao quát
Trang 19được toàn bộ bài toán Sau đó phân chia nhiệm vụ cần giải quyết thànhnhững nhiệm vụ cụ thể hơn, tức là chuyển dần từ module chính đến cácmodule con từ trên xuống dưới.
-Thiết kế từ dưới lên ( Bottom up Design ) : Trước hết người ta tiến hànhgiải quyết các vấn đề cụ thể, sau đó trên cơ sở đánh giá mức độ tương tựvề chức năng của các vấn đề này trong việc giải quyết bài toán người tagộp chúng lại thành từng nhóm cùng chức năng từ dưới lên trên cho đếnmodule chính Sau đó sẽ thêm một số chương trình làm phong phú và đầyđủ hơn chức năng của các phân hệ và cuối cùng là thiết kế một chươngtrình làm nhiệm vụ tập hợp các module thành một hệ chương trình thốngnhất hoàn chỉnh
Trang 20Lưu đồ: Quy trình thiết kế
2.2.4 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 chitiết hóa các sơ đồ khối hay các lưu đồ để biến thành các bản vẽ thiết kế
Trang 21sản phẩm phần mềm nhưng bản thân công đoạn lập trình phải trung thànhvới thiết kế kiến trúc của phần mềm, không được làm thay đổi.
Nội dung :
-Lập trình các thư viện chung
-Lập trình module
-Tích hợp hệ thống
Tổng quan về ngôn ngữ lập trình
-Ngôn ngữ thế hệ thứ nhất : Đặc điểm là phụ thuộc rất mạnh vào từngmáy tính cụ thể và mức độ trừu tượng của các chương trình thường rấtthấp Tiêu biểu là hợp ngữ
-Ngôn ngữ thế hệ thứ hai : Phát triển từ cuối những năm 1950 và đầunhững năm 1960 Các ngôn ngữ thứ hai được đặc trưng bởi việc sử dụngmột thư viện các chương trình phần mềm rất lớn được sử dụng rộng rãitrong các lĩnh vực khác nhau Tiêu biểu là : FORTRAN, COBOL,BASIC
-Ngôn ngữ thế hệ thứ 3 : Còn được gọi là ngôn ngữ lập trình hiện đại Nétđặc trưng của ngôn ngữ này là khả năng cấu trúc rất phong phú và các thủtục mạnh Các ngôn ngữ thế hệ thứ 3 chia làm 3 nhóm là : ngôn ngữ cấpcao vạn năng ( PASCAL, MODULA -2, C…), ngôn ngữ cấp cao hướngđối tượng ( C++, Object Pascal, Eiffiel…), ngôn ngữ chuyên dụng
Trang 22
Lưu đồ: Quy trình lập trình
2.2.5 Quy trình test
Mục đích : Sau khi đã có sản phẩm phần mềm, các lập trình viên tiếnhành test chương trình và test toàn bộ phần mềm bao gồm test hệ thống,test tiêu chuẩn nghiệm thu nhằm đảm bảo có một phần mềm chất lượngcao
Nội dung :
-Lập kịch bản test
-Test hệ thống
-Test nghiệm thu
Mở
đầu
Lập kế hoạch lập trình
Lập trình thư viện chung
Tích hợp Test chương trình Thiết kế các module
Tổng kết quy trình lập trình
Kết thúc
Duyệt thư viện chung
Trang 23Lưu đồ: Quy trình test
2.2.6 Quy trình triển khai
Mục đích : Đây là quy trình cuối cùng trong toàn bộ công đoạn khép kíncủa quy trình sản xuất phần mềm Quy trình triển khai có mục đích càiđặt phần mềm cho khách hàng tại các địa điểm triển khai và hướng dẫn,đào tạo sử dụng cho khách hàng
Nội dung :
-Cài đặt máy chủ
-Cài đặt máy mạng
Lập Senario test Test hệ thống
Test nghiệm thu
Ghi nhận kết quả test
Kết thúc
Trang 24-Vận hành phần mềm
-Hướng dẫn đào tạo sử dụng
Lưu đồ: Quy trình triển khai
2.3 Tổng quan về hệ quản trị cơ sở dữ liệu Access và ngôn ngữ lập trình Visual Basic.
2.3.1 Hệ quản trị cơ sở dữ liệu Access
Lập kế hoạch triển khai
Cài đặt máy chủ
Cài đặt máy mạng Vận hành
Kết thúc
Trang 25Hệ quản trị cơ sở dữ liệu quan hệ (Relation Database ManagementSystem ) là hệ thống các chương trình hỗ trợ các tác vụ quản lý, khai thácdữ liệu theo mô hình cơ sở dữ liệu quan hệ.
Những hệ quản trị cơ sở dữ liệu được dùng nhiều nhất là MicrosoftAccess, Microsoft Visual Foxpro, Microsoft SQL Server và Oracle
Microsoft Access là một thành phần của chùm phần mềm MicrosoftOffice Professional, vì thế mà những đối tượng thuộc giao diện như thựcđơn, dải công cụ và hộp thoại đề tương tự như các ứng dụng khác củaoffice mà phần lớn cán bộ văn phòng đã quen dùng Việc trao đổi dữ liệugiữa Access và các ứng dụng khác trong môi trường Windows cũng rấtthuận tiện
Access có rất nhiều chức năng để đáp ứng những nhu cầu khác nhauvề CSDL Có thể dùng Access để phát triển sáu kiểu ứng dụng phổ biếnnhất : ứng dụng cá nhân, ứng dụng cho doanh nghiệp nhỏ, ứng dụng chonội bộ từng phòng ban, ứng dụng cho toàn công ty, ứng dụng ở tuyếntrước cho các CSDL theo mô hình khách chủ trên một phạm vi toàndoanh nghiệp và ứng dụng trên mạng nội bộ của một cơ quan và mạngmáy tính quốc tế
Các thành phần của một cơ sở dữ liệu Access :
-Table ( Bảng ) : các bảng lưu dữ liệu được định dạng theo cột và dòng,
tương tự như việc ứng dụng bảng tính Chúng ta có thể tạo và mở nhiềubảng ( được giới hạn bởi bộ nhớ của máy tính )
-Query ( Truy vấn ) : Mỗi truy vấn là một câu hỏi đơn giản từ cơ sở dữ
liệu cho phép bạn hiển thị dữ liệu thỏa mãn điều kiện hỏi Mỗi lần xemdữ liệu bạn thường không muốn hiển thị toàn bộ dữ liệu trong cơ sở dữliệu, bằng việc dùng các truy vấn bạn có thẻ xác định xem những bản ghinào và những trường nào từ các bảng dữ liệu đã có sẽ được hiển thị
-Form ( Mẫu biểu) : Các form được sử dụng để truy nhập dữ liệu và cập
nhật các dữ liệu hiện thời Các form sẽ hiển thị dữ liệu thường là một bản
Trang 26ghi nhiều hơn là dạng cột và dòng Các form có thể đại diện cho cáctrường trong bảng theo bất kỳ một trật tự nào và làm cho việc nhập dữliệu nhanh hơn và đơn giản hơn.
-Report ( Báo cáo ) : Các báo cáo là tổng hợp các bản in ra của cơ sở dữ
liệu của bạn và được tạo ra trong bất kỳ định dạng nào mà bạn muốn Cácbáo cáo có thể được tạo ra từ bất kỳ bảng hoặc bản mẫu câu hỏi nào màbạn đã thiết kế trước đó
-Macro : Macro có thể tự động hóa các thao tác trong Access Sử dụng
macro bạn có thể tạo cơ sở dữ liệu với đầy đủ chức năng mà không cầnphải viết bất kỳ mã code nào
-Module : Module gồm mã Visual basic, được viết cho bạn hoặc do bạn
viết ra để thực hiện các thao tác mà các macro của Access không thể hỗtrợ được
2.3.2 Ngôn ngữ lập trình Visual Basic 6.0
Visual Basic là một ngôn ngữ lập trình hướng sự kiện ( event –driven ) và môi trường phát triển tích hợp ( IDE ) kết bó được phát triểnđầu tiên bởi Alan Cooper dưới tên dự án Ruby, và sau đó được Microsoftmua và cải tiến nhiều Visual Basic đã được thay thế bằng VisualBasic.NET Phiên bản cũ của Visual Basic bắt nguồn từ phần lớn tứ pháttriển ứng dụng nhanh ( Rapid Application Development, RAD), truy cậpcác cơ sở dữ liệu dùng DAO ( Data Access Object), RDO ( Remote DataObject), hay ADO ( ActiveX Data Object) và lập các kiểu điều khiển vàđối tượng ActiveX
Thuật ngữ “Visual” dùng để nói đến các phương thức dùng để tạogiao diện đồ họa người sử dụng Thay vì viết những dòng mã lệnh để môtả sự xuất hiện và vị trí của những thành phần giao diện ta chỉ cần thêmnhững đối tượng đã được định nghĩa trước ở vị trí nào trên màn hình “Basic “ là nói đến ngôn ngữ Basic – một ngôn ngữ được dùng bởi nhiềunhà lập trình hơn bất cứ ngôn ngữ nào khác trong lịch sử máy tính
Trang 27Visual Basic gắn liền với khái niệm lập trình trực quan, nghĩa là khithiết kế chương trình, ta thấy ngay kết quả qua từng thao tác và giao diệnkhi chương trình thực hiện Đây là thuận lợi lớn so với các ngôn ngữ lậptrình khác, Visual Basic cho phép ta chỉnh sửa đơn giản, nhanh chónghình dáng, màu sắc, kích thước của đối tượng có trong mặt ứng dụng.Mặt khác khả năng của Visual Basic là khả năng kết hợp các thưviện liên kết động DLL ( Dynamic Link Library ) DLL chính là phần mởrộng cho Visual Basic tức là khi ta xây dựng một ứng dụng nào đó có mộtyêu cầu mà Visual Basic không thể đáp ứng được ta có thể viết thêmDLL phụ trợ.
Người dùng Visual Basic cũng thấy tiện lợi khi tiết kiệm được thờigian, công sức so với các ngôn ngữ khác khi xây dựng cùng một ứngdụng
Khi viết chương trình bằng Visual Basic, chúng ta phải trải qua haibước :
- Thiết kế giao diện
- Viết lệnh
Thiết kế giao diện :
Visual Basic là ngôn ngữ lập trình hướng đối tượng nên việc thiết kếgiao diện rất đơn giản Trong hộp Tools box, ta có thể xác định đối tượng,sau đó ta đặt đối tượng vào Form và tiến hành thay đổi một số thuộc tínhcủa đối tượng đó trực tiếp trên đối tượng hoặc thông qua cửa sổ thuộctính Properties Windows
-Form :
Tương tự như trong Access, Form là biểu mẫu mỗi ứng dụng trongVisual Basic Ta dùng Form nhằm định vị và sắp xếp các bộ phận trên nókhi thiết kế các phần giao tiếp với người dùng
Ta có thể xem Form như một bộ phận mà nó chứa các bộ phận khác.Form chính là ứng dụng, các thành phần của nó tương tác với các Form
Trang 28khác, các bộ phạn của chúng tạo nên giao tiếp cho ứng dụng Form chínhlà giao diện chính cho ứng dụng, các Form khác có thể chứa các hộpthoại hiển thị các nhập liệu…
Trong nhiều ứng dụng Visual Basic, kích cỡ và vị trí của biểu mẫuvào lúc hoàn tất thiết kế là kích cỡ và hình dạng người dùng sẽ gặp vàothời gian thực hiện, hoặc lúc chạy Điều này có nghĩa là Visual Basic chophép ta thay đổi kích cỡ và di chuyển vị trí của Form đến bất kỳ nơi nàotrong màn hình khi chạy một đề án bằng cách thay đổi các thuộc tính củanó trong cửa sổ thuộc tính Thực tế, một trong những tính năng thiết yếucủa Visual Basic là khả năng tiến hành những thay đổi động để đáp ứngcác sự kiện của người dùng
-Tools Box :
Bản thân hộp công cụ này chỉ chứa các biểu tượng biểu thị các điềukhiển mà ta có thể bổ sung vào biểu mẫu, là bảng chứa các đối tượngđược định nghĩa sẵn của Visual Basic Các đối tượng này được sử dụngtrong Form để tạo thành giao diện cho các chương trình ứng dụng củaVisual Basic Các đối tượng trong thanh công cụ này là thông dụng nhất -Properties Windows:
Là nơi chứa danh sách thuộc tính của một đối tượng cụ thể Cácthuộc tính này có thể thay đổi để phù hợp với yêu cầu về giao diện củacác chương trình ứng dụng
-Project Explorer :
Do các ứng dụng của Visual thường dùng chung mã hoặc các Formđã tùy biến trước đó, nên Visual Basic tổ chức các ứng dụng thànhProject Mỗi Project có thể có nhiều Form và mã kích hoạt điều khiểntrên một Form sẽ được lưu trữ chung với Form đó trong các tệp tin riêngbiệt Mã lập trình chung mà tất cả các Form trong ứng dụng chia sẻ có thểphân thành các module khác nhau và cũng được lưu trữ tách biệt, gọi là
Trang 29Module mã Project Explorer nêu tất cả các biểu mẫu tùy biến và đượccác Module mã chung, tạo nên một ứng dụng.
Viết lệnh :
-Dòng mã :
Điểm quan trọng phải nhận thức được ở khâu lập trình Visual Basiclà Visual Basic xử lý mã chỉ để áp dụng các sự kiện Thực vậy, khôngnhư nhiều ngôn ngữ lập trình khác, các dòng mã thi hành trong mộtchương trình Visual Basic phải nằm trong thủ tục hoặc các hàm, các dòngmã cô lập sẽ không làm việc
-Cửa sổ code :
Cửa sổ code là nơi viết mã Cửa sổ code có một thành tách ( SplitBar ) nằm bên dưới thành tiêu đề, tại đầu thanh cuộn dọc để có thể xemhai phần cửa sổ code cùng một lúc
Trang 30
Chương 3: Xây dựng phần mềm quản lý
kho hàng của công ty BNC TRầN HUY
3.1 Xác định yêu cầu.
Sau khi nắm bắt được những khó khăn của doanh nghiệp ta xácđịnh những yêu cầu cần có của phần mềm để giải quyết tốt khó khăn trên
Ta quan tâm nghiên cứu đến các yêu cầu chức năng là các yêu cầu quảnlý chính của doanh nghiệp, ngoài ra cần nghiên cứu các yêu cầu phi chứcnăng để phần mềm thân thiện và có những tính năng bảo mật tốt hơn
3.1.1 Yêu cầu chức năng.
* Quản lý danh mục:
- Cập nhật danh mục các loại máy tính, máy in, linh kiện,
- Cập nhật danh mục đơn vị nhập, nhân viên nhập
- Cập nhật danh mục đơn vị xuất, nhân viên xuất
* Quản lý xuất, nhập
- Cập nhật phiếu nhập kho
- Cập nhật phiếu xuất kho
* Quản lý tồn kho
- Cập nhật hàng hóa tồn kho
- Thống kê các mặt hàng, loại hàng theo từng tháng, từng kỳ kinhdoanh
- Tổng hợp các phát sinh xuất, nhập trong kỳ
* Xuất báo cáo
- Báo cáo danh mục hàng hóa
- Lập báo cáo hàng nhập kho theo loại hàng, tên hàng
- Lập báo cáo hàng xuất kho theo loại hàng, tên hàng
- Lập báo cáo hàng tồn kho
3.1.2 Yêu cầu phi chức năng.
- Tạo thêm mới người dùng
Trang 31- Thực hiện phân quyền người dùng
- Thực hiện chức năng bảo mật
Khi đã xác định được những yêu cầu cần có của phần mềm để giúpgiải quyết tốt bài toán của doanh nghiệp ta đi vào xây dựng các lược đồ,
sơ đồ phản ánh rõ ràng các đối tượng của hệ thống: sơ đồ chức năng kinhdoanh, sơ đồ dòng dữ liệu, sơ đồ các mức phân rã
Mô hình hóa yêu cầu hệ thống: Cho phép ta hiểu một cách chi tiếthơn về ngữ cảnh vấn đề cần giải quyết một cách trực quan và bản chấtnhất của yêu cầu Dựa vào những yêu cầu của bài toán quản lý và quakhảo sát thực tế ta đưa ra được những mô hình đặc tả hoạt động quản lý
kho của doanh nghiệp dưới đây:
* Sơ đồ chức năng kinh doanh (BFD):
Quản Lý Kho
Quản lý
nhập kho Quản lý xuất kho Quản lý hàng tồn kho Lập báo cáo
Vào sổ hàng
nhập
Nhận hàng
Nhận, duyệt
phiếu nhập kho Nhận, kiểm tra HĐBH Cập nhật hàng nhập kho
Truy xuất dữ liệu
Cập nhật hàng xuất kho
Lập phiếu
xuất kho
Tính toán, tổng hợp
Vào sổ
hàng xuất
Lên báo cáo
Tổng hợp tồn kho
Hình 3.1: Sơ đồ chức năng kinh doanh phân hệ quản lý kho
Trang 32* Sơ đồ ngữ cảnh hệ thống quản lý kho:
Quản Lý Kho hàng Khách hàng
Ban Quản Lý
Nhà cung cấp
Các phân hệ khác
Thông tin về hàng hóa,
Phiếu xuất hàng
Yêu cầu thông tin, đơn đặt hàng Đơn đặt hàng, phiếu nhập hàng
Thông tin về hàng hóa, HĐBH
Yêu cầu thông tin liên quan
Thông tin liên quan,
phiếu nhập, phiếu
xuất
Yêu cầu báo cáo, ý kiến phản hồi
Báo cáo hàng trong kho
Hình 3.2: Sơ đồ ngữ cảnh hệ thống quản lý kho
Trang 33* Sơ đồ luồng dữ liệu (DFD) mức 0:
Nhà cung cấp
Phân hệ khác
Khách hàng
Phân hệ khác
Khách hàng
1.0 Quản lý nhập kho
2.0 Quản lý xuất kho
3.0 Quản lý tồn kho
4.0 Lập báo cáo
CSDL nhập kho CSDL tồn kho CSDL xuất kho
Thông tin xuất kho Hóa đơn bán hàng
Phiếu xuất hàng trả
lại ngườ i bán
Kiểm tra hàng nhập
Kiểm tra hàng xuất
Báo cáo hàng trong kho
Yêu cầu thông tin
Hình 3.3: Sơ đồ luồng dữ liệu phân hệ quản lý kho
Trang 34Khách hàng Nhà cung cấp
Phân hệ khác
1.1 Duyệt đơn
1.3 Vào sổ hàng nhập
1.2 Nhận hàng
CSDL nhập kho
Hóa đơn nhập
Thông tin nhập kho
Hóa đơn bán hàng
Hàng bán bị trả lại
Phân rã mức 1 “Quản lý nhập kho”
Hình 3.4: Sơ đồ phân rã mức 1 Quản lý nhập kho
Khách hàng Nhà cung cấp
Phân hệ khác
2.1 Lập phiếu xuất kho
1.3 Vào sổ hàng xuất
2.2 Xuất hàng trong kho
CSDL xuất kho
Phiếu xuất kho Thông tin xuất kho
Phiếu xuất hàng trả lại người bán
Hóa đơn bán hàng
Phân rã mức 1 “Quản lý xuất kho"
Hình 3.5: Sơ đồ phân rã mức 1 Quản lý xuất kho
Trang 353.2 Quy trình phân tích thiết kế.
3.1 Quản lý hàng xuất
CSDL xuất kho
CSDL tồn kho CSDL nhập kho
Hình 3.6: Sơ đồ phân rã mức 1 Quản lý tồn kho
4.1 Truy nhập dữ liệu
4.3 Lên báo cáo
4.2 Tính toán tổng hợp
Ban quản lý
Phân rã mức 1 “Lập báo cáo”
Các phân hệ khác
CSDL kho
Yêu cầu truy vấn
Dữ liệu chưa tổng hợp
Dữ liệu tổng hợp
Trang 36Thiết kế phần mềm nằm ở trung tâm kỹ thuật của tiến trình côngnghệ phần mềm Quá trình yêu xác định yêu cầu và phân tích ta đã thựchiện ở phần trước, đó là cơ sở để ta thực hiện thiết kế phần mềm
Thiết kế phần mềm là một tiến trình trong đó các yêu cầu ta nêu trênsẽ được chuyển đổi thành sự biểu diễn phần mềm Dưới góc độ của cácnhà quản lý dự án tiến trình này được chia thành hai bước: thiết kế sơ bộvà thiết kế chi tiết; còn dưới góc độ kỹ thuật tiến trình thiết kế bao gồm:thiết kế dữ liệu, thiết kế các thủ tục, thiết kế giao diện
3.2.1 Thiết kế cơ sơ dữ liệu:
Để thiết kế cơ sở dữ liệu ta cần thực hiện chuẩn hóa dữ liệu Cácthông tin chuẩn hóa được lấy ra từ phiếu nhập và phiếu xuất
Các thông tin đầu ra gồm có:
- Thông tin trên phiếu nhập: mã phiếu nhập, ngày nhập, mã nhânviên, tên nhân viên, ngày sinh, giới tính, mã nhà cung cấp, tên nhà cungcấp, địa chỉ nhà cung cấp, mã hàng , tên hàng, mã kho, tên kho, mã nhómhàng, tên nhóm hàng, số lượng nhập
- Thông tin trên phiếu xuất cũng có các thuộc tính tương tự: mãphiếu xuất, ngày xuất, mã nhân viên, tên nhân viên, ngày sinh giới tính,mã khách hàng, tên khách hàng, địa chỉ khách hàng, mã hàng, tên hàng,mã kho, tên kho, mã nhóm hàng, tên nhóm hàng, số lượng xuất
Từ các thông tin trên ta tiến hành chuẩn hóa dữ liệu, qua các bướcchuẩn hóa 1NF, 2NF, 3NF ta thu được bảng chuẩn hóa cho các dữ liệucủa phiếu nhập và phiếu xuất thể hiện ở hai bảng dưới đây:
Trang 37Chuẩn hóa 2NF
Chuẩn hóa 3NF
Mã nhà cung cấp
Tên nhà cung cấp
Mã nhà cung cấpTên nhà cung cấpĐịa chỉ CC
Điện thoại CC Email CC
Chi Tiết Nhập Kho
Mã phiếu nhậpMã hàng
Số lượng nhậpĐơn giá
Danh mục hàng hoá
Mã hàng
Mã nhóm hàng Đơn vị tính
Mã hãng sản xuất Tên hãng sản xuất Tên hàng
Tên nhóm hàng
Mã kho Tên kho
Phiếu nhập
Mã phiếu nhậpNgày nhậpMã NV
Mã nhà cung cấp
Danh mục nhà C 2Mã nhà cung cấpTên nhà cung cấpĐịa chỉ CC
Điện thoại CCEmail CC
Danh mục NV
Mã NVTên NVNgày sinh Giới tínhĐiện thoại
Chi tiết nhập kho
Mã phiếu nhập
Mã hàng Số lượng nhập Đơn giá
Danh mục hàng hoá
Mã hàng
Mã nhóm hàng
Mã hãng SX
Mã kho Tên hàng Đơn vị tính
Danh mục nhóm
Mã nhóm hàng Tên nhóm
Danh mục hãng SX
Mã hãng SX Tên hãng SX
Kho hàng
Mã kho Tên kho
Trang 38Sau khi tiến hành chuẩn hóa ta xây dựng được các bảng cơ sở dữ liệuphục vụ cho phần mềm quản lý kho như sau:
TrÞnh Thuû Tiªn THKT 47A GVHD: TS Cao §×nh Thi
Mã khách hàng Tên khách hàng
Mã loại KH Tên loại KH Địa chỉ KH Điện thoại KH Email KH
Chi tiết xuất kho
Mã phiếu xuất
Mã hàng Số lượng xuất Đơn giá
Danh mục hàng hóa
Mã hàng
Mã nhóm hàng Đơn vị tính
Mã hãng sản xuất Tên hãng sản xuất Tên hàng
Tên nhóm hàng
Mã kho Tên kho
M ã
n h ó m
h à
n g Đ ơ n
v ị
t í
n h M ã
h ã n g
s ả
n
x u ấ
t T ê n
h ã n g
s ả
n
x u ấ
t T ê n
h à
n g T ê n
n h ó m
h à
n g M ã
k h o T ê n
k h o
M ã
n h ó m
h à
n g Đ ơ n
v ị
t í
n h M ã
h ã n g
s ả
n
x u ấ
t T ê n
h ã n g
s ả
n
x u ấ
t T ê n
h à
n g T ê n
n h ó m
h à
n g M ã
k h o T ê n
k h o
M ã
n h ó m
h à
n g Đ ơ n
v ị
t í
n h M ã
h ã n g
s ả
n
x u ấ
t T ê n
h ã n g
s ả
n
x u ấ
t T ê n
h à
n g T ê n
n h ó m
h à
n g M ã
k h o T ê n k
Phiếu xuất
Mã phiếu xuất Ngày xuất
Mã NV
Mã khách hàng
Danh mục KH
Mã KH Tên KH Địa chỉ KH Điện thoại KH Email KH
Danh mục loại KH
Mã loại KH Tên loại KH
Danh mục NV
Mã NV Tên NV Ngày sinh
…
Chi tiết xuất kho
Mã phiếu xuất
Mã hàng Số lượng xuất Đơn giá
Danh mục hàng hoá
Mã hàng
Mã nhóm hàng
Mã hãng SX Tên hàng Đơn vị tính
Danh mục nhóm
Mã nhóm hàng Tên nhóm
Danh mục hãng SX
Mã hãng SX Tên hãng SX
Kho hàng
Mã kho Tên kho
Hình 3.9: Bảng chuẩn hóa các chi tiết trên phiếu xuất
38
Trang 39Chuyên đề thực tập tốt nghiệp Khoa Tin học kinh tế
Phiờ́u nhọ̃p:
NgayNhap Date/Time dd/mm/yyyy Ngày nhọ̃p
cṍp
Phiờ́u xuṍt:
NgayXuat Date/Time dd/mm/yyyy Ngày xuṍt
Chi tiờ́t phiờ́u nhọ̃p
SoLuong Number Long interger Sụ́ lượng
Tài khoản
Trịnh Thuỷ Tiên THKT 47A GVHD: TS Cao Đình Thi
Mó nhúm hàng Đơn vị tính
Mó hóng sản xuṍt Tờn hóng sản xuṍt Tờn hàng
Tờn nhúm hàng
Mó kho Tờn kho
M ó
n h ú m
h à
n g Đ ơ n
v ị
t í
n h M ó
h ó n g
s ả
n
x u ṍ
t T ờ n
h ó n g
s ả
n
x u ṍ
t T ờ n
h à
n g T ờ n
n h ú m
h à
n g M ó
k h o T ờ n
k h o
M ó
n h ú m
h à
n g Đ ơ n
v ị
t í
n h M ó
h ó n g
s ả
n
x u ṍ
t T ờ n
h ó n g
s ả
n
x u ṍ
t T ờ n
h à
n g T ờ n
n h ú m
h à
n g M ó
k h o T ờ n
k h o
M ó
n h ú m
h à
n g Đ ơ n
v ị
t í
n h M ó
h ó n g
s ả
n
x u ṍ
t T ờ n
h ó n g
s ả
n
x u ṍ
t T ờ n
h à
n g T ờ n
n h ú m
h à
n g M ó
k h o T ờ n k 39
Trang 40Chuyên đề thực tập tốt nghiệp Khoa Tin học kinh tế
Chi tiờ́t phiờ́u xuṍt
Danh mục hàng húa:
Hóng sản xuṍt:
Trịnh Thuỷ Tiên THKT 47A GVHD: TS Cao Đình Thi
Mó nhúm hàng Đơn vị tính
Mó hóng sản xuṍt Tờn hóng sản xuṍt Tờn hàng
Tờn nhúm hàng
Mó kho Tờn kho
M ó
n h ú m
h à
n g Đ ơ n
v ị
t í
n h M ó
h ó n g
s ả
n
x u ṍ
t T ờ n
h ó n g
s ả
n
x u ṍ
t T ờ n
h à
n g T ờ n
n h ú m
h à
n g M ó
k h o T ờ n
k h o
M ó
n h ú m
h à
n g Đ ơ n
v ị
t í
n h M ó
h ó n g
s ả
n
x u ṍ
t T ờ n
h ó n g
s ả
n
x u ṍ
t T ờ n
h à
n g T ờ n
n h ú m
h à
n g M ó
k h o T ờ n
k h o
M ó
n h ú m
h à
n g Đ ơ n
v ị
t í
n h M ó
h ó n g
s ả
n
x u ṍ
t T ờ n
h ó n g
s ả
n
x u ṍ
t T ờ n
h à
n g T ờ n
n h ú m
h à
n g M ó
k h o T ờ n k 40