.Chuẩn hóa trong CSDL quan hệ và mối quan hệ giữa các file dữ liệu

Một phần của tài liệu Xây dựng phần mềm hệ thống quản lý hàng hóa tại công ty TNHH kỹ thuật và thương mại hoàn trang (Trang 34)

2.4.4.1.Tại sao phải chuẩn hóa?

file dữ liệu để giải quyết một bài tốn nào đó, người ta đã nhận ngay ra rằng kết cấu nội tại của từng file dữ liệu đều ảnh hưởng đến việc lưu trữ các file dữ liệu này trong máy hoặc ảnh hưởng đến tốc độ xử lý các file dữ liệu này. Thực chất việc đề xuất ra các hệ thống các file dữ liệu này xuất phát từ yêu cầu thực tiễn. Đứng về khía cạnh tin học các file dữ liệu cịn rất là thơ vì thế một lĩnh vực quan trọng trong CSDL quan hệ là tiến hành chuẩn hóa các file dữ liệu mà thực chất là đưa các file dữ liệu này về dạng chuẩn nằm lưu trữ đỡ tốn kém hơn và tăng tốc độ xử lý file dữ liệu lên. Trong CSDL quan hệ có 2 đầu vào đó là sơ đồ quan hệ và file dữ liệu cho nên ta tiến hành chuấn hóa 2 dạng trên.

Định nghĩa 1NF cho file dữ liệu r={h1,h2,…,hm} là file dữ liệu trên tập cột

R={a1,a2,…,an} được gọi là 1NF nếu i,j: hj(ai) là sơ cấp.

Định nghĩa phụ thuộc hoàn toàn

Giả sử r là file dữ liệu trên tập cột R={a1,…,an} AB là một phụ thuộc hàm của r. Khi đó chúng ta nói rằng B là phụ thuộc hồn tồn vào A nếu không  A’: A’A và A’B.

Định nghĩa 2NF cho file dữ liệu

R là file dữ liệu trên tập cột R={a1,a2,…,an} ta nói rằng r là 2NF nên: r là 1NF  k Kr và  a  R\K, KKr

K {a} là phụ thuộc hoàn toàn.

Nếu một phụ thuộc hàm mà không phải là phụ thuộc hồn tồn thì người ta gọi là phụ thuộc bộ phận.

Định nghĩa bắc cầu

Giả sử r là file dữ liệu trên tập cột R={a1,a2,…,an} A B là phụ thuộc hàm của r. B là phụ thuộc bắc cầu vào A nên có C mà: C ≠ B và A C, CB. Nếu phụ thuộc hàm

AB không là bắc cầu thì gọi là phụ thuộc hàm trực tiếp.

k  Kr và aR\K, K  Kr K  {a} là phụ thuộc trực tiếp

Như vậy một file dữ liệu là dạng chuẩn 3NF thì đương nhiên là dạng chuẩn 2NF, 1NF. Có thể thấy rằng 1 file dữ liệu ở dạng chuẩn 3NF thì tất cả phụ thuộc hàm của nó liên quan đến khóa tối thiểu và thuộc tính thứ cấp đều là hồn tồn và trực tiếp. Tương tự như vậy các phụ thuộc hàm K {a} đối với file dữ liệu 2NF phải phụ thuộc hoàn toàn.

Định nghĩa 2NF cho sơ đồ quan hệ

Cho s=<R,F> là sơ đồ quan hệ. Ta nói rằng s là 2NF nên  k Ks và A là thứ cấp K {a} F+ là phụ thuộc hoàn toàn

Định nghĩa bắc cầu đối với sơ đồ quan hệ

Giả sử s=<S,F>, AB F+ ta nói rằng AB là phụ thuộc bắc cầu nếu có C mà: C≠A, C≠B, AC và CB F+

AB khơng phải là bắc cầu thì gọi là phụ thuộc trực tiếp.

Định nghĩa 3NF cho sơ đồ quan hệ

Cho s=<R,F> là sơ đồ quan hệ. Ta nói rằng s là 3NF nếu:

- s là 2NF

- k  Ks và a R\K, K Kr

K{a}  F+ là phụ thuộc trực tiếp.

Định nghĩa dạng chuẩn BCNF

S=<R,F> là sơ đồ quan hệ. Khi đó r(s) là dạng chuẩn BCNF nếu: AR, ta có Ar+ = R A+ = A hoặc A+ = R

Người ta đã chứng tỏ rằng nếu một sơ đồ quan hệ là BCNF thì nó là 3NF đồng thời một sơ đồ quan hệ là BCNF cũng là 3NF. Do đó dạng chuẩn BCNF là quá mạnh hiếm khi chúng ta đưa về được dạng chuẩn BCNF trong khi đó phổ thơng nhất vẫn

là dạng chuẩn 3NF tức là dạng chuẩn bảo đảm tính phụ thuộc hồn tồn và tính phụ thuộc trực tiếp.

Trong thực hiện ở Việt Nam hầu hết các bài tốn đều nhỏ nên việc chuẩn hóa là ít nhưng đối với bài tốn cấp quốc gia trở lên thì phải tiến hành chuẩn hóa bao gồm một số những HQTCSDL đã có những bộ thiết kế cho phép tiến hành việc chuẩn hóa đối với sơ đồ quan hệ.

2.4.4.2. Định nghĩa về dạng chuẩn của các hệ khóa

Cho K là hệ Sperner trên R, ta nói rằng K là 2NF (3NF, BCNF). Nhờ có định nghĩa này chúng ta phân loại được các hệ Sperner về điều kiện cần và đủ.

a) Định nghĩa về hệ khóa 2NF

Cho K là hệ Sperner trên R={a1,..,an}, đặt Kn = R \ B; B K. Khi đó K là 2NF

 Kn= .

b) Kết quả về hệ khóa 2NF

Cho K là hệ Sperner trên R={a1,..,an}. Khi đó K là 3NF  Kn= .

2.5. Khái quát hệ quản trị cơ sở dữ liệu và ngơn ngữ lập trình Visual Basic 2.5.1.Khái niệm về CSDL 2.5.1.Khái niệm về CSDL

CSDL là một kho chứa thơng tin. Có nhiều loại CSDL, nhưng trong các ứng dụng quản lý thì cơ cở dữ liệu quan hệ là kiểu CSDL được phổ biến nhất.

Một CSDL quan hệ:

- Chứa dữ liệu trong các bảng, được cấu tạo bởi các dòng còn gọi là các bản ghi, và cột được gọi là trường.

- Cho phép lấy về hay còn gọi là truy vấn các tập hợp dữ liệu con từ các bảng.

Bộ máy (Engine) CSDL: Chức năng cơ bản của một CSDL được cung cấp bởi

một bộ máy CSDL, là hệ thống chương trình quản lý cách thức chứa và trả về dữ liệu.

Bảng và trường: Các CSDL được cấu tạo từ các bảng dùng thể hiện các phân

nhóm dữ liệu. Bảng chứa các mẩu tin là các mẫu dữ liệu riêng rẽ bên trong phân nhóm dữ liệu. Mẩu tin cứa các trường. Mỗi trường thể hiện một bộ phận dữ liệu trong một mẩu tin. Ví dụ như mỗi mẩu tin thể hiện một mục trong danh bạ địa chỉ chứa các trường tên và họ, địa chỉ, thành phố, tiểu bang, điện thoại.

Recordset: Một khi ta có khả năng tạo bảng, ta cần phải biết cách thao tác với

chúng. Một Recordset là một cấu trúc dữ liệu thể hiện một tập hợp con các mẩu tin lấy về từ CSDL. Về khái niệm, nó tương tự một bảng, nhưng có thêm một vài thuộc tính riêng biệt quan trọng. Các Recordset được thể hiện như là các đối tượng, về khái niệm tương tự như là các đối tượng giao diện người sử dụng.

2.5.2.Tổng quan về ngơn ngữ lập trình Visual Basic

Visual Basic (VB) là con đường nhanh nhất và đơn giản nhất để tạo ra những ứng dụng chạy trên môi trường MS Windows với những cơng cụ mạnh và hồn chỉnh phục vụ người xây dựng và phát triển ứng dụng.

VB hỗ trợ giao diện đồ họa GUI (Graphic User Interface), thay vì những dịng mã để 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êm vào những đối tượng đã được định nghĩa trước đó vào trên bề mặt form giao diện ứng dụng, bằng cách bấm chuột và kéo.

VB cũng hỗ trợ và phối kết hợp với nhiều các ứng dụng có sẵn của Windows như Word, Excel, Access.

2.5.3. Cấu trúc một ứng dụng VB

Một ứng dụng hay là một tập hợp các chỉ dẫn trực tiếp đến máy tính để thi hành một hay nhiều tác vụ. Cấu trúc của một ứng dụng là phương pháp trong đó các chỉ dẫn được tổ chức, lưu giữ và thi hành theo một trật tự nhất định.

Một ứng dụng xây dựng trên VB cơ bản bao gồm form, module, report, Enviroment…

Form là giao diện để người dùng thao tác. Thành phần chủ yếu trong form là những đối tượng (Object) và những điều khiển (Control). Các đối tượng này được thiết kế trên form. Mỗi đối tượng đều có những đặc tính riêng (Properties) của nó như tên gọi, kích thước, màu sắc, font chữ,… Mỗi đối tượng cũng có những sự kiện (Event) khi người dùng thao tác với đối tượng đó như sự kiện On_click, sự kiện On_Load,… Mỗi đối tượng cũng có những phương thức (Method) riêng của nó như phương thức SetFocus, phương thức Enable, Disable,…

Module chứa những thủ tục sự kiện – những đoạn mã, nơi đặt những chỉ dẫn, cái sẽ được thi hành trong việc đáp ứng những sự kiện chỉ định. Tương ứng với những điều khiển trên Form, có một tập hợp những thủ tục sự kiện trong modul form đó.

Mã khơng chỉ quan hệ với một form chỉ định hay điều khiển có thể được đặt trong một loại module khác – module chuẩn (*.bas). Một thủ tục được dùng để đáp ứng những sự kiện trong những đối tượng khác nhau phải được đặt trong cũng một chuẩn. Một lớp module (*.cls) được dùng để tạo những đối tượng, cái mà có thể được gọi là những thủ tục bên trong ứng dụng.

2.5.4. Những thao tác áp dụng trên VB

- Tạo giao diện người dùng: Giao diện người dùng được xem là thành phần quan trọng nhất của một ứng dụng. Đối với người dùng, giao diện chính là ứng dụng; họ khơng cần chú ý đến thành phần mã thực thi bên dưới. Ứng dụng có thân thiện hay khơng phần lớn phụ thuộc nhiều vào giao diện.

- Sử dụng những điều khiển chuẩn của VB: Dùng những điều khiển để lấy thông tin mà người dùng nhập vào, hiển thị kết xuất. Những điều khiển có thể dùng trong ứng dụng bao gồm hộp văn bản, nút lệnh, danh sách…

- Lập trình với những đối tượng: Những đối tượng là thành phần chủ yếu để lập trình VB. Những đối tượng có thể là form, những điều khiển CSDL.

- Lập trình với thành phần hợp thành: VB có thể phối hợp với các thành phần như MS Excel, MS Word… Tất cả những điều này có thể thực hiện được bằng cách xây dựng những dụng sử dụng các thành phần ActiveX. Hoặc ngay bản thân ứng dụng có thể tạo ra những ActiveX riêng.

- Đáp ứng những sự kiện chuột và bàn phím: Các ứng dụng có thể đáp ứng một lượng lớn sự kiện chuột và bàn phím. Ví dụ form, hộp ảnh, và những điều khiển ảnh có thể phát hiện vị trí con trỏ chuột, có thể quyết định phím trái hay phím phải được nhấn, và có thể đáp ứng những tổ hợp phím Ctrl, Shift,Alt. Sử dụng những điều khiển phím, ta có thể lập trình những điều khiển và form để đáp ứng các hành động phím hoặc phiên dịch và xử lý mã ASCII của ký tự. Thêm vào đó, những ứng dụng VB có thể hỗ trợ sự kiện rê và thả chuột cũng như những tính năng của OLE.

- Làm việc với văn bản và đồ họa: VB cung cấp khả năng đồ họa và văn bản phức tạp trong ứng dụng. Những thuộc tính văn bản có thể giúp nhấn mạnh các khái niệm quan trọng và các chi tiết cần quan tâm. VB cũng cũng cung cấp khả năng đồ họa, cho phép thiết kế kèm các hình ảnh, tạo ra các ứng dụng có sử dụng hình ảnh.

- Gỡ rối và quản lý lỗi: Những lỗi có thể xuất hiện trong khi lập trình trên VB. VB cung cấp nhiều cơng cụ giúp người lập trình phân tích ứng dụng làm việc như thế nào, lỗi bị vướng mắc ở đâu, nguồn gốc của lỗi, và các hướng giải quyết bỏ qua, hay cập nhật lại coding.

- Xử lý ổ đĩa, thư mục và file: Khi lập trình Windows, điều rất quan trọng để có khả năng thêm, di chuyển, tạo mới hoặc xóa những thư mục và file, lấy thơng tin ổ đĩa. VB cung cấp cho người lập trình những đối tượng liên quan đến thư mục, file, ổ đĩa.

- Thiết kế cho việc thi hành và tính tương thích: VB chia sẻ hầu hét những tính năng ngơn ngữ cho các ứng dụng khác, đặc biệt là Microsoft Office. VBScript, Asp,… đều là tập hợp con của ngôn ngữ VB.

- Phân phối ứng dụng: Sau khi tạo một ứng dụng VB, có thể tự do phân phối bất kỳ ứng dụng nào đã tạo bằng VB đến bất cứ ai dùng MS Windows.

Cơng nghệ thơng tin phát triển khơng ngừng, vì vậy có rất nhiều ngơn ngữ được sử dụng làm cơng cụ để xây dựng một ứng dụng thành công. Với những tiện ích của Visual Basic 6.0 và sự phù hợp của nó với mục đích cũng như u cầu của bài tốn hệ chương trình quản lý hàng hố, em đã quyết định chọn ngôn ngữ này làm công cụ phục vụ cho chuyên đề thực tập tốt nghiệp của mình.

CHƯƠNG 3

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG THƠNG TIN “ QUẢN LÝ HÀNG HỐ “

3.1. Khái qt hệ thống thơng tin Quản lý hàng hoá

Kế toán hàng hoá liên kết chặt chẽ với bộ phận kế tốn mua hàng và cơng nợ phải trả , bộ phận kế toán bán hàng và công nợ phải thu rồi nhặt số liệu liên quan từ 2 bộ phận này để theo dõi và quản lý xuất nhập tồn hàng hoá. Mối quan hệ của chúng được thể hiện rõ nét trong sơ đồ sau:

3.1.1.Ng

hiệp vụ nhập kho

Nhà cung cấp cấp hàng về đến cơng ty thì bộ phận nhập hàng tiến hành kiểm tra gói hàng( packet ) để xem số lượng hàng có đủ và đúng với lượng hàng mà mình đã

CHỨNG TỪ Phiếu nhập nội bộ, Phiếu nhập điều chỉnh Phiếu xuất nội bộ, Phiếu xuất điều chỉnh Phiếu xuất điều chỉnh

SỐ LIỆU CHUYỂN TỪ PHÂN HỆ KHÁC SANG Mua hàng, ( bán hàng) SỐ LIỆU CHUYỂN ĐÊN CÁC PHÂN HỆ KHÁC T ( ổng hợp ) BÁO CÁO Thẻ kho, sổ chi tiết hàng hoá Báo cáo hàng tồn kho Tổng hợp nhập xuất tồn Báo cáo kiểm kê hàng tồn kho

PHÂN HỆ

Kế toán hàng

đặt hay khơng, kế tốn viên của bộ phận kế tốn hàng tồn kho sẽ theo mã hàng để viết phiếu nhập kho. Thủ kho sẽ nhập vào kho theo đúng số phiếu và đầy đủ thông tin trên phiếu.

3.1.2.Nghiệp vụ xuất kho

Khi có đơn đặt hàng qua bất kỳ phương tiện nào thì nhân viên quản lý bán hàng tiếp nhận thơng tin và thơng báo cho kế tốn viên để viết phiếu xuất. Phiếu xuất sau khi hợp lệ sẽ chuyển xuống bộ phận kho hàng, thủ kho sẽ tiến hành xuất hàng theo đúng số phiếu xuất.

3.1.3.Nghiệp vụ báo cáo

Nhân viên phòng kinh doanh là trực tiếp làm thủ tục nhập hàng hoá về từ nhà cung cấp. Vì vậy khi hàng về đến kho thì mọi thơng tin của hàng hố như thiếu, hỏng… sẽ được báo cáo lên phòng kinh doanh. Mỗi khi Giám đốc hay phịng kinh doanh có yêu cầu báo cáo về tổng hàng nhập cũng như tổng hàng xuất thì thủ kho sẽ tính tốn dựa vào những thơng tin của phiếu xuất, nhập đã được nhập vào máy. Kết quả tính tốn sẽ báo cáo tới Giám đốc hoặc phòng kinh doanh.

3.2. Sơ đồ chức năng của hệ thống (BDF)

3.2.1.Khái niệm về mơ hình nghiệp vụ:

Mơ hình nghiệp vụ là mơ tả một các chức năng nghiệp vụ của một tổ chức và những mối quan hệ bên trong giữa các chức năng đó cũng như các mối quan hệ bên trong của chúng với mơi trường bên ngồi. Mơ hình nghiệp vụ được thể hiện bằng một số dạng khác nhau. Mỗi dạng mơ tả một nghiệp vụ khía cạnh của hoạt động nghiệp vụ.

Tất cả các dạng đó cho ta một bức tranh hoàn toàn về hoạt động của nghiệp vụ.

3.2.2.Biểu đồ chức năng của hệ thống

Một trong những cách thể hiện của mơ hình nghiệp vụ là biểu đồ phân rã chức năng. Nó cho ta thấy được các chức năng nghiệp vụ của tổ chức được phân chia thành các chức năng nhỏ hơn theo một thứ bậc xác định. Hệ thống thông tin quản lý

Sơ đồ chức năng của hệ thống( BFD)

3.3. Sơ đồ luồng dữ liệu của hệ thống (DFD)

1.Sơ đồ DFD mức ngữ cảnh

Hình 1.5: Sơ đồ DFD mức ngữ cảnh

Hệ thống quản lý hàng hoá sẽ yêu cầu kế tốn kho đưa thơng tin về các mặt hàng cịn tồn trong kho và nhận lại kết quả đã yêu cầu.Từ thơng tin trên bộ phận quản lý hàng hố sẽ đưa ra được quyết định về các mặt hàng cần thiết, sau đó tiến hành lập đơn đặt hàng gửi đến nhà cung cấp, nếu đáp ứng được yêu cầu này nhà cung cấp sẽ tiến hành giao hàng.Trong xuất hàng, khi nhận được hoá đơn bán hàng sau khi

Một phần của tài liệu Xây dựng phần mềm hệ thống quản lý hàng hóa tại công ty TNHH kỹ thuật và thương mại hoàn trang (Trang 34)

Tải bản đầy đủ (PDF)

(66 trang)