Giáo trình Phân tích thiết kế hệ thống (Bản đẹp)

pdf 190 trang ngocly 1800
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Phân tích thiết kế hệ thống (Bản đẹp)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfgiao_trinh_phan_tich_thiet_ke_he_thong_ban_dep.pdf

Nội dung text: Giáo trình Phân tích thiết kế hệ thống (Bản đẹp)

  1. 2 LỜI NÓI ĐẦU Phân tích thiết kế hệ thống là một giai đoạn quan trọng để xây dựng thành công một hệ thống thông tin. Xây dựng một hệ thống thông tin được gọi là thành công nếu hệ thống này đáp ứng được các yêu cầu của tổ chức đặt ra, có chu kỳ sống (life cycle) chấp nhận được, và hơn thế nữa có thể phát triển khi hệ thống yêu cầu. Trong thực tế nhiều hệ thống thông tin chỉ tồn tại trong một thời gian ngắn và sau đó không còn đáp ứng được nhu cầu của người sử dụng. Một trong những lý do là không quan tâm đến giai đoạn phân tích và thiết kế, để rồi khi tổ chức phát triển thì hệ thống không còn khả năng đáp ứng. Một lý do khác không kém phần quan trọng, là các nhà xây dựng hệ thống thông tin không được trang bị một cách đầy đủ các kiến thức và phương pháp cơ bản để có thể tiến hành việc xây dựng một hệ thống thông tin. Nếu phần phân tích thiết kế không hoàn chỉnh và đúng đắn thì sẽ dẫn đến việc cài đặt thất bại. Môn phân tích thiết kế hệ thống là một môn học chính cho các sinh viên chuyên ngành công nghệ thông tin trong các trường đại học và cao đẳng. Hiện nay có khá nhiều sách vỡ, tài liệu mô tả khá đầy đủ về các phương pháp phân tích thiết kế hệ thống thông tin của các chuyên gia tin học đầu ngành nhưng cũng không ít những tài liệu quá cô đọng hoặc rườm rà khó tiếp cận được. Trước nhu cầu học tập của đông đảo sinh viên chuyên ngành, với những kinh nghiệm thực tế và kinh nghiệm qua nhiều năm giảng dạy chúng tôi mạnh dạn viết giáo trình này. Đây cũng là một tài liệu tham khảo tốt cho những ai quan tâm đến việc phân tích thiết kế hệ thống thông tin. Trong giáo trình chúng tôi sử dụng các kiến thức về cơ sở dữ liệu, kiến thức và kỹ thuật lập trình do đó đòi hỏi người học cần trang bị trước những phần kiến thức liên quan. Giáo trình gồm 2 phần: phần thứ 1, gồm 5 chương đầu. nói về các phương pháp phân tích thiết kế hệ thống thông tin theo hướng chức năng; phần thứ 2, nói về phương pháp phân tích thiết kế hệ thống thông tin theo hướng đối tượng (bằng UML). Trong mỗi chương, mỗi nội dung chúng tôi có đưa các ví dụ thực tiễn, khuyến cáo cho độc giả những sai lầm có thể xảy ra trong quá trình phân tích thiết kế để phân tích viên khỏi mắc sai lầm khi làm việc. Chương đầu tiên giới thiệu tổng quan về hệ thống thông tin. Chương 2, chúng tôi trình bày các kỹ thuật thu thập và xử lý sơ bộ dữ liệu trong quá trình nghiên cứu hiện trạng một hệ thống thông tin. Các chương 3 và 4 chúng tôi trình bày khá chi tiết mô hình quan niệm và tổ chức của hệ thống thông tin. Chương cuối cùng, mức vật lý của hệ thống thông tin, trình bày các bước quan trọng để người phân tích chuẩn bị công việc mã hóa và cài đặt. Các chương của giáo trình được trình bày với những ví dụ thực tế để người đọc thấy được bức tranh toàn cục của hệ thống qua các bước thiết kế. Trong quá trình biên soạn, mặc dù đã cố gắng tham khảo nhiều tài liệu và giáo trình khác nhưng tác giả không khỏi tránh được những thiếu sót và hạn chế. Tác giả chân thành mong đợi những nhận xét, đánh giá và góp ý để cuốn giáo trình ngày một hoàn thiện hơn. Huế, Ngày 20 tháng 12 năm 2006 Tác giả
  2. 4 Chương 1 TỔNG QUAN VỀ PHÂN TÍCH THIẾT KẾ HỆ THỐNG THÔNG TIN I. Tổng quan về hệ thống thông tin 1. Đặt vấn đề: Hệ thống thông tin tin học hoá là một trong những ứng dụng đầy đủ và toàn diện nhất các thành tựu của công nghệ thông tin vào một tổ chức. Nhiều ứng dụng tin học được xây dựng một cách tự phát nhưng vẫn được sử dụng trong nhiều lĩnh vực của xã hội. Câu hỏi đạt ra đối với những người xây dựng các phần mềm là: “Tại sao phải phân tích và thiết kế hệ thống thông tin?” . Có một cái nhìn đầy đủ, đúng đắn và chính xác về hệ thống thông tin được xây dựng trong tương lai. . Tránh sai lầm trong thiết kế và cài đặt. . Tăng vòng đời (life cycle) hệ thống . Dễ sửa chữa, bổ sung và phát triển hệ thống trong quá trình sử dụng hoặc khi hệ thống yêu cầu. Để thấy được sự cần thiết của việc phân tích và thiết kế hệ thống thông tin tự động, chúng ta xem các số liệu liên quan đến xây dựng các phần mềm mà công ty IBM đã thống kê được trong giai đoạn 1970-1980. Phân tích về sai sót: Ý niệm /quan niệm : 45% Mã hóa : 25% Soạn thảo : 7% Các sai sót ở mức 2 : 20% Các sai sót không xếp loại : 3% Phân tích về chi phí Bảo trì : 54% Phát triển : 46% Phân tích phân bổ hoạt động Sản xuất mã : 15% Phát hiện và sửa chữa sai sót : 50% Khác : 35% Các số liệu trên cho thấy sai sót lớn nhất trong tất cả các loại sai sót mắc phải là ở phần ý niệm, quan niệm, tức là nằm trong việc phân tích và thiết kế. Chi phí chiếm tỉ trọng lớn nhất là chi phí bảo hành, lượng công việc chiếm tỷ lệ lớn nhất là phát hiện và sửa chữa. Tình trạng này bắt nguồn từ các thiếu sót trong phân tích và thiết kế, do đó các nhà tin học luôn tìm ra một phương pháp phân tích hữu hiệu nhất nhằm khắc phục các tình trạng trên.
  3. 5 2. Hệ thống - Hệ thống thông tin Hệ thống là tập hợp các phần tử có quan hệ qua lại với nhau cùng hoạt động hướng đến một mục tiêu chung thông qua việc tiếp nhận các đầu vào và sản xuất các đầu ra nhờ một quá trình chuyển đổi được tổ chức. Hệ thống này còn được gọi là hệ thống động (Dynamic System). Hệ thống thông tin là một tập hợp gồm nhiều thành phần mà mối liên hệ giữa các thành phần này cũng như liên hệ giữa chúng với các hệ thống khác là liên hệ thông tin với nhau. II. Các hệ thống thông tin thông dụng Trong thực tế, bốn hệ thống thông tin dưới đây thường được sử dụng. 1. Hệ xử lý dữ liệu (DPS-Data Processing System) Chức năng - Xử lý các giao dịch và ghi lại những dữ liệu cho từng chức năng đặc thù. - Dữ liệu đưa vào được thường xuyên cập nhật. Dữ liệu đầu ra định kỳ bao gồm các tài liệu hoạt động và báo cáo. Hệ xử lý dữ liệu có tính cục bộ thường dành cho các cho các nhà quản lý cấp tác nghiệp. 2. Hệ thông tin quản lý (MIS-Management Information System) Hệ thông tin quản lý là một hệ thống thông tin được sử dụng trong các tổ chức kinh tế xã hội, hệ gồm nhiều thành phần, mỗi thành phần là một hệ thống con hoàn chỉnh. Ví dụ: hệ thống thông tin quản lý trong một xí nghiệp có các hệ thống con là hệ thống “Quản lý vật tư”, hệ thống “Quản lý tài chính”, , hệ thống thông tin quản lý trong một trường đại học có các hệ thống con là hệ thống “Quản lý vật tư”, hệ thống “Quản lý đào tạo”, hệ thống “Quản lý NCKH”, Chức năng - Hỗ trợ các chức năng xử lý dữ liệu trong giao dịch và lưu trữ. - Dùng một cơ sở dữ liệu hợp nhất và hỗ trợ cho nhiều chức năng. - Cung cấp cho các nhà quản lý các thông tin theo thời gian của hệ thống. - Có cơ chế bảo mật thông tin theo từng cấp độ có thẩm quyền sử dụng. Cách xem xét tốt nhất một hệ thống thông tin quản lý là đặt nó trong mục đích của tổ chức đang sử dụng hệ thống đó, một trong các cách như vậy là nhìn hệ thống thông tin dưới góc độ của một hệ hỗ trợ ra quyết định. 3. Hệ hỗ trợ quyết định (DSS- Decision Support System) Mục đích của hệ là giúp cho tổ chức những thông tin cần thiết để ra quyết định hợp lý và đủ độ tin cậy. Khả năng của hệ: - Cung cấp, sắp xếp các phương án theo tiêu chuẩn của người làm quyết định. - Cung cấp và phân tích dữ liệu, biểu diễn dữ liệu bằng đồ thị một cách tự động. - Chọn lựa giúp một phương án tối ưu trên cơ sở các thông tin đưa vào. Đặc trưng của DSS - Hỗ trợ các nhà làm quyết định trong quá trình ra quyết định.
  4. 6 - Tạo những mô hình đa chức năng, có khả năng mô phỏng và có các công cụ phân tích. - Tạo thuận lợi cho liên lạc giữa các mức làm quyết định. 4. Hệ chuyên gia (ES-Expert System) Hệ thông tin giúp các nhà quản lý giải quyết và thực hiện vấn đề ở mức cao hơn DSS. Hệ này liên quan đến lĩnh vực trí tuệ nhân tạo, làm cho máy tính có khả năng lập luận, học tập, tự hoàn thiện như con người. Chẳng hạn các chương trình lập kế hoạch tài chính, chẩn đóan bệnh, dịch máy, III. Các thành phần của một hệ thống thông tin quản lý Theo quan điểm của hệ thống thì một hệ thống thông tin quản lý thường có 3 thành phần: - Thành phần quyết định: thực hiện chức năng ra quyết định. - Thành phần thông tin: thực hiện chức năng tiếp nhận, xử lý, truyền tin và lưu trữ thông tin trong hệ thống. - Thành phần tác nghiệp: là thành phần bảo đảm các hoạt động cơ sở của một tổ chức. Ví dụ: hệ thống thông tin quản lý trong một xí nghiệp có thành phần quyết định là Ban Giám đốc, thành phần thông tin là các phòng ban chức năng, thành phần tác nghiệp là các phân xưởng, cơ sở sản xuất. Chúng ta có thể thấy mối quan hệ giữa các thành phần của một hệ thống thông tin qua sơ đồ dưới đây. Hình 1.1: Hệ thống thông tin theo quan điểm hệ hỗ trợ ra quyết định T P QUYẾT ĐỊNH Quyết Báo cáo Thông tin T P Thông tin ra vào từ môi THÔNG TIN từ môi trường ngoài trường ngoài Thông tin Thông tin Điều Kiểm tra T P Nguyên liệu TÁC NGHIỆP Sản phẩm ra
  5. 7 Chúng ta đi đến một định nghĩa có tính chất mô tả của một hệ thống thông tin: Hệ thống thông tin của một tổ chức là tập hợp các phương tiện, nhân lực, thông tin và phương pháp xử lý tin nhằm cung cấp các thông tin cho quá trình ra quyết định đúng thời hạn và đủ độ tin cậy. Trong đó: Tổ chức: có thể là cơ quan, xí nghiệp, trường học Phương tiện (phần cứng-phần mềm): cơ sở vật chất dùng để thu nhập, xử lý, lưu trữ, chuyển tải thông tin trong hệ thống như máy tính, máy in, điện thoại Nhân lực: bao gồm tập thể, cá nhân tham gia vào việc thu thập dữ liệu, xử lý, truyền tin, những người phát triển và duy trì hệ thống. Thông tin (dữ liệu): Các thông tin được sử dụng trong hệ thống, các thông tin từ môi trường bên ngoài vào hệ thống, các thông tin từ hệ thống ra môi trường bên ngoài. Tuy nhiên, khi nói đến thông tin phải nói đến các yếu tố kèm theo nó như: .Giá mang thông tin: là các phương tiện lưu trữ tin như giấy, đĩa từ, âm thanh .Kiểu thông tin: thông tin văn bản, âm thanh, hình ảnh, tri thức. .Qui tắc tiếp nhận và hành trình của thông tin. .Vai trò của thông tin trong hoạt động tác nghiệp, trong việc đưa ra quyết định. Phương pháp xử lý tin: là các tài nguyên phi vật chất như các mô hình toán học, các thuật toán, tri thức của con người trong hệ thống, các phần mềm tin học. Tóm lại, hệ thống thông tin được cấu thành từ 4 yếu tố chính: thông tin, phương pháp xử lý tin, con người và phương tiện. IV. Các tính năng của một hệ thống thông tin - Thời gian trả lời: được tính bằng khoảng thời gian từ khi thông tin được hệ thống tiếp nhận đến khi hệ thống tác nghiệp nhận được quyết định tương ứng với thông tin đến. - Bản chất của quyết định thuộc loại tự động hóa được hay không. - Kiểu sản phẩm của hệ thống tác nghiệp. - Khối lượng thông tin được xử lý. - Độ phức tạp của dữ liệu. - Độ phức tạp của xử lý. - Độ phức tạp về cấu trúc của hệ thống. - Độ tin cậy của hệ thống. V. Mục đích, yêu cầu phương pháp phân tích thiết kế HTTT 1. Mục đích - HTTT có vòng đời dài (long life cycle) - Có chức năng là một hệ hỗ trợ ra quyết định - Chương trình cài đặt dễ sửa chữa, bảo hành - Hệ thống dỄ sử dụng, có độ chính xác cao.
  6. 8 2. Yêu cầu - Quan điểm tiếp cận tổng thể: bằng cách xem mọi bộ phận, dữ liệu, chức năng là các phần tử trong hệ thống là các đối tượng phải được nghiên cứu. Do đó hiểu biết tất cả những điều đó là cần thiết cho phát triển của hệ thống. - Quan điểm top-down: là quan điểm phân tích từ trên xuống theo hướng từ tiếp cận tổng thể đến riêng biệt. - Nhận dạng được các mức trừu tượng và bất biến của hệ thống ứng với chu trình phát triển hệ thống - Nhận dạng được các thành phần dữ liệu và xử lý của hệ thống. - Định ra được các kết quả cần đạt được cho từng giai đoạn phát triển hệ thống và các thủ tục cần thiết trong mỗi giai đoạn. VI. Xây dựng thành công một hệ thống thông tin 1. Khái niệm về một dự án công nghệ thông tin thành công Trong thực tế chưa có một tiêu chuẩn cụ thể nào để xác định được một hệ thống thông tin được xem là thành công. Ngay cả một hệ thống thông tin nhỏ đang hoạt động tốt thì mọi người vẫn không đồng ý với nhau về hiệu quả của nó. Tuy nhiên để có cơ cở cho việc đánh giá một hệ thống thông tin người ta đưa ra một số tiêu chuẩn và quy tắc sau: Một hệ thống thông tin được xem là có hiệu lực nếu nó góp phần nâng cao chất lượng hoạt động và quản lý tổng thể của một tổ chức, nó thể hiện cụ thể trên các mặt: - Phù hợp với chiến lược hoạt động của tổ chức. - Đạt được mục tiêu thiết kế đề ra của tổ chức. - Chi phí vận hành là chấp nhận được. - Có độ tin cậy cao, đáp ứng được các chuẩn mực của một hệ thống thông tin hiện hành. Chẳng hạn như tính sẵn sàng: thời gian làm việc trong ngày, tuần; thời gian thực hiện một dịch vụ, một tìm kiếm; các kết xuất thông tin đúng yêu cầu như biểu mẫu, số chỉ tiêu - Sản phẩm có giá trị xác đáng: thông tin đưa ra là đúng đắn, kịp thời, có ý nghĩa thiết thực đối với hoạt động chức năng và quản lý, nâng cao chất lượng sản phẩm và dịch vụ của tổ chức, các sai sót có thể cho phép. - Dễ học, dễ nhớ và dễ sử dụng. - Mềm dẽo, hướng mở, dễ bảo trì. 2. Quản lý và phát triển một dự án công nghệ thông tin Mục tiêu của việc quản lý dự án là đảm bảo cho các dự án phát triển HTTT đáp ứng được sự mong đợi của khách hàng và được thực hiện trong phạm vi giới hạn cho phép (như ngân sách, thời gian, điều kiện của tổ chức). Đây là một khâu quan trọng của việc phát triển HTTT. Quản lý một dự án là sự tiến hành có kế hoạch một loạt các hoạt động có liên quan với nhau để đạt một mục tiêu, có điểm bắt đầu và điểm kết thúc. Nó bao gồm 4 pha: Khởi tạo dự
  7. 9 án - Lập kế hoạch dự án - Thực hiện dự án - Kết thúc dự án. Mỗi pha của dự án yêu cầu một số công việc phải được thực hiện. 2.1. Khởi tạo dự án Đây là bước đầu tiên của quá trình quản lý dự án mà trong đó cần thực hiện một số hoạt động để đánh giá quy mô, phạm vi và sự phức tạp của dự án. Các hoạt động đó là: - Thiết lập đội dự án ban đầu - Thiết lập mối quan hệ với khách hàng - Thiết lập dự án sơ bộ: công việc này bao gồm: xác định quy mô và phạm vi dự án, lập lịch trình cho các cuộc họp - Thiết lập các thủ tục quản lý: để bảo đảm cho sự thành công của dự án, cần phải lập các thủ tục quản lý có hiệu quả như: thủ tục báo cáo, truyền thông, xét duyệt, thay đổi dự án, xác định thời hạn cấp vốn, hoàn tất chứng từ, - Thiết lập môi trường quản lý dự án và lập nhật ký công việc dự án: Nhật ký dự án nhằm ghi lại các công việc, các sự kiện, cái vào, cái ra, thủ tục, các chuẩn sử dụng cho việc kiểm tra dự án. 2.2. Lập kế hoạch dự án Giai đoạn này tập trung vào việc xác định và mô tả các hoạt động và công việc cần thiết của mỗi hoạt động cụ thể trong dự án. Nội dung lập kế hoạch dự án bao gồm: - Phát hoạ một kế hoạch truyền thông - Xác định các chuẩn và các thủ tục dự án - Mô tả phạm vi dự án, các phương án có thể và đánh giá khả thi - Phân chia dự án thành các nhiệm vụ có thể quản lý được - Phát triển một lịch trình sơ bộ - Xác định và đánh giá các rủi ro - Lập kế hoạch và ngân sách ban đầu - Thiết lập mô tả công việc - Lập kế hoạch dự án cơ sở 2.3. Thực hiện dự án Thực hiện dự án là đưa kế hoạch dự án cơ sở vào thực hiện. Nội dung của việc thực hiện dự án bao gồm: - Triển khai kế hoạch dự án cơ sở, đưa dự án cơ sở vào thực hiện: bao gồm khởi động dự án, nhận và phân bổ nguồn lực, định hướng và đào tạo thành viên mới, theo dõi tình hình thực hiện đảm bảo chất lượng của sản phẩm tạo ra. - Thúc đẩy tiến trình thực hiện dự án theo kế hoạch cơ sở: đánh giá kết quả thực hiện, điều chỉnh hoạt động, nguồn lực và ngân sách. Trong trường hợp có thể phải sửa đổi kế hoạch dự án cơ sở cho phù hợp.
  8. 10 - Quản lý sự thay đổi đối với kế hoạch dự án cơ sở: mọi thay đổi cần được phản ảnh trong kế hoạch dự án cơ sở và nhật ký công việc của dự án. - Bổ sung nhật ký công việc của dự án: tất cả các sự kiện diễn ra của dự án cần phải được ghi vào nhật ký công việc. Nó cung cấp cho những thành viên mới các thông tin để làm quen với nhiệm vụ của dự án. Nó cung cấp tài liệu lịch sử để phân tích, ra các quyết định và lập báo cáo. - Thông báo về tình trạng dự án: mục đích là để giữ mối liên hệ giữa các thành viên của dự án. Việc thông báo kịp thời các diễn tiến của dự án là một yêu cầu để có được những hiểu biết giữa các thành viên cùng làm việc với nhau. Đảm bảo sự phối hợp hành động một cách có hiệu quả. 2.4. Kết thúc dự án Mục tiêu của giai đoạn này là hoàn tất dự án, bao gồm các công việc sau: - Đóng dự án lại: cần thực hiện một số các hoạt động như đánh giá các thành viên và kiến nghị lợi ích cho họ, hoàn tất các tài liệu và chứng từ thanh toán. Cám ơn những người đã đóng góp, tham gia và hỗ trợ trong quá trình thực hiện dự án. - Tổng kết sau dự án: mục tiêu là xác định được mặt mạnh, mặt yếu từ các sản phẩm của dự án, của quá trình hình thành lên nó và quá trình quản lý dự án, từ đó rút ra những kinh nghiệm cho các dự án sau. - Kết thúc mọi hợp đồng: ký kết các bản thanh lý hợp đồng với các bên liên quan. VII. Giới thiệu một vài phương pháp phân tích thiết kế thông dụng 1. Phương pháp phân tích thiết kế có cấu trúc (SADT-Structured Analysis and Design Technique) Phương pháp này xuất phát từ Mỹ, ý tưởng cơ bản của nó là phân rã một hệ thống lớn thành các hệ thống con đơn giản. SADT được xây dựng dựa trên 7 nguyên lý sau: - Sử dụng một mô hình - Phân tích kiểu Top-down. - Dùng một mô hình chức năng và một mô hình quan niệm (còn được gọi là “mô hình thiết kế” để mô tả hệ thống. - Thể hiện tính đối ngẫu của hệ thống - Sử dụng các biểu diễn dưới dạng đồ hoạ - Phối hợp các hoạt động của nhóm - Ưu tiên tuyệt đối cho hồ sơ viết. Công cụ để phân tích: - Sử dụng sơ đồ chức năng công việc BFD (Business Function Diagram) và lưu đồ luồng dữ liệu DFD (Data Flow Diagram) . - Mô hình dữ liệu (Data Modes)
  9. 11 - Ngôn ngữ có cấu trúc SL (Structured Language) - Từ điển dữ liệu (Data Dictionary) - Bảng và cây quyết định (Warnier/orr) - Đặc tả các tiến trình (Process Specification). Phương pháp phân tích thiết kế SADT có ưu điểm là dựa vào nguyên lý phân tích có cấu trúc, thiết kế theo lối phân cấp, bảo đảm từ một dữ liệu vào sản xuất nhiều dữ liệu ra. Nhược điểm của phương pháp này là không bao gồm toàn bộ các tiến trình phân tích do đó nếu không thận trọng có thể đưa đén tình trạng trùng lặp thông tin. 2. Phương pháp phân tích thiết kế Merise MERISE viết tắt từ cụm từ Methode pour Rassembler les Ideés Sans Effort (phương pháp tập hợp các ý tưởng không cần cố gắng). Phương pháp này ra đời vào những năm cuối của thập niên 70. Xuất phát từ những suy nghĩ của một nhóm nghiên cứu đứng đầu bởi J.L.Lemoigne tại trường đại học Aix-En-Provence - Pháp và những nghiên cứu hiện thực đồng thời ở Trung tâm nghiên cứu trang bị kỹ thuật (CETE), dưới sự lãnh đạo của H.Tardien.Trong sự phát triển nhanh chóng của công nghệ mới, MERISE còn được dùng để điều hành dự án không chỉ trong công sở mà còn trong nhiều xí nghiệp đủ loại khác nhau. Ý tưởng cơ bản của phương pháp Merise: Ý tưởng cơ bản của phương pháp phân tích thiết kế Merise dựa trên 3 mặt cơ bản sau: Mặt thứ nhất: quan tâm đến chu kỳ sống (life cycle) của hệ thống thông tin qua các giai đoạn: Thai nghén (Gestation) - Quan niệm/Ý niệm - Quản trị - Chết. Chu kỳ sống này có thể kéo dài từ 15đến 20 năm đối với các hệ thống thông tin lớn. Mặt thứ hai: đề cập đến chu kỳ đặc trưng của hệ thống thông tin, còn được gọi là chu kỳ trừu tượng. Mỗi tầng được mô tả dưới dạng mô hình tập trung bao gồm tập hợp các thông số chính xác. Theo đó khi những thông số của tầng dưới tăng trưởng, tầng đang mô tả không biến đổi và nó chỉ thay đổi khi các thông số của mình thay đổi. Mỗi mô hình được mô tả thông qua một hình thức dựa trên các quy tắc, nguyên lý ngữ vựng và cú pháp quy định. Có những quy tắc cho phép chuyển từ mô hình này sang mô hình khác một cách tự động nhiều hoặc ít. Mặt thứ ba: mặt này liên quan đến chu kỳ các quyết định cần phải đưa ra trong các chu kỳ sống của sản phẩm. Đặc trưng của phương pháp Merise là tách rời dữ liệu và xử lý nhằm đảm bảo tính khách quan trong quá trình phân tích và cung cấp đầy đủ các mô hình để diễn đạt các bước cập nhật. Hệ thống bao gồm dữ liệu và xử lý được biểu diễn ở ba mức: - Mức quan niệm (Concept): xác định các thành phần của dữ liệu và xử lý . - Mức tổ chức (Oganization): chi tiết hóa những quan hệ giữa chúng. - Mức tác nghiệp (Physic): các thành phần được thể hiện trong thực tế như thế nào. Công cụ để phân tích: Trên cơ sở ba mức bất biến của hệ thống thông tin, phương pháp phân tích thiết kế Merise sử dụng các mô hình tương ứng trên các mức này để phân tích thiết kế một hệ thống thông tin.
  10. 12 MỨC DỮ LIỆU XỬ LÝ Mức quan niệm MH quan niệm về dữ liệu MH quan niệm về xử lý Mức tổ chức MH tổ chức về dữ liệu MH tổ chức về xử lý Mức vật lý MH vật lý về dữ liệu MH vật lý về xử lý Ưu điểm của phương pháp phân tích thiết kế MERISE là có cơ sở khoa học vững chắc. Hiện là một trong những phương pháp được dùng nhiều ở Pháp và Châu Âu khi phải phân tích các hệ thống lớn. Nhược điểm của phương pháp này là cồng kềnh. Do đó, để giải quyết các ứng dụng nhỏ phương pháp này thường đưa đến việc kéo dài thời gian. Trong giáo trình này, chúng tôi sẽ bám sát phương pháp này để trình bày các bước phân tích thiết kế một hệ thống thông tin Có thể hình dung các bước phát triển của một hệ thống thông tin thông qua mô hình không gian ba chiều: chiều các thành phần của hệ thống thông tin, chiều các mức bất biến của hệ thống thông tin và chiều các giai đoạn phân tích thiết kế một hệ thống thông tin. Hình 1.2 Các bước phát triển của một hệ thống thông tin Mức vật lý Mức tổ chức Mức quan niệm thiết bị con người Xử lý Thông tin Lập kế hoạch Phân tích Thiết kế Thực hiện
  11. 13 3. Phương pháp phân tích MCX (Méthode de xavier castellani) Phương pháp phân tích MCX có nguồn gốc từ Pháp, do giáo sư của Học viện Tin học cho các xí nghiệp IIE (Institut Informatique d’Entrerise) sáng tạo. Phương pháp phân tích MCX dựa trên các nguyên lý và đặc trưng cơ bản sau: Cho phép xây dựng được một mô hình tổng quát chính xác để biểu diễn hệ thống thông tin hoặc các phân hệ của hệ thống thông tin. Cho phép phân tích, nắm dữ liệu, quá trình xử lý và truyền thông của hệ thống thông tin. Cho phép lượng hoá các xử lý. MCX có ưu điểm là thích hợp với việc thực hành. Nhược điểm là rườm rà. 4. Phương pháp phân tích GLACSI (Groupe d’ Animation et de Liaison pour l’ Analyse et de conception de Système d’ Information) Phương pháp này cũng có nguồn gôc từ Pháp, ra đời vào tháng 4 năm 1982. Tác giả của nó là một nhóm giáo sư của Học viện Công nghệ Pháp (IUT). Nội dung cơ bản của phương pháp là trình bày một tập hợp các công cụ và nguyên liệu để tiến hành các giai đoạn cơ bản sau đây của tiến trình phân tích: - Nghiên cứu hệ thống - Nghiên cứu hiện trạng - Nghiên cứu khả thi - Phân tích chức năng - Mô hình dữ liệu - Mô hình xử lý - Phân tích cấu trúc - Tổ chức dữ liệu: ở mức logic và mức vật lý - Tổ chức xử lý: xử lý theo lô, xử lý theo thời gian thực - Môi trường tiếp nhận: máy tính, mạng máy tính, ngôn ngữ, các phần mềm chuyên dụng - Giao diện người-máy Nhược điểm của phương pháp là chưa thử nghiệm nhiều trong thực tế. Ưu điểm của phương pháp là một công cụ tốt để giảng dạy. Ngoài các phương pháp phân tích thiết kế đã nói ở trên còn có phương pháp phân tích hướng đối tượng (OOA: Object Oriented Analysis) sẽ được bàn đến ở chương cuối cùng. VIII. Những sai lầm có thể xẩy ra khi phân tích thiết kế HTTT Những phương pháp phân tích hiện đại mong muốn và hướng tới giải quyết toàn bộ hoặc từng phần các tồn tại và khiếm khuyết trong quá trình phân tích như sau: - Thiếu sự tiếp cận tổng thể trong phát triển hệ thống: - Người phân tích bị ảnh hưởng đến nhu cầu trực tiếp của chủ đầu tư và NSD. - Thu thập nhiều lần cùng một thông tin
  12. 14 - Dùng các thuật ngữ khác nhau đối với cùng một quan niệm - Sự phiến diện, không đầy đủ của hồ sơ - Sự bất hợp tác của người sử dụng. - Thiếu một chuẩn thống nhất - Người phân tích thiếu một chuẩn thống nhất để mô tả, cài đặt các ứng dụng trong hệ thống. IX. Các giai đoạn xây dựng một hệ thống thông tin tin học hóa Mọi phương pháp phân tích thiết kế hệ thống thông tin phải trải qua các giai đoạn sau: - Nghiên cứu nhu cầu (hệ thống cần gì?) - Nghiên cứu khả thi (cân nhắc giữa nhu cầu và khả năng) - Đề xuất một kiểu kiến trúc mới của hệ thống - Mã hóa (tổ chức dữ liệu và lập trình) - Thử nghiệm và khai thác Quá trình phát triển của hệ thống thông tin phải bắt đầu từ tình trạng của hệ thống thông tin cũ và từ sự thiếu hiệu quả của hệ thống cũ so với nhiệm vụ đặt ra của tổ chức. 1. Lập kế hoạch (khảo sát hệ thống) Đây là giai đoạn đầu tiên thông qua việc tiếp xúc giữa người phân tích và chủ đầu tư nhằm xác định các công việc cần thiết trước khi có thể tiến hành nghiên cứu các lĩnh vực, bộ phận, hệ thống con, các tổ chức có liên quan đến hệ thống thông tin cần xây dựng. Giai đoạn này là làm rõ được ý muốn của chủ đầu tư là: xây dựng 1 hệ thống thông tin mới hay nâng cấp 1 hệ thống thông tin cũ. Mục đích cần làm sáng tỏ những vấn đề sau: Có cần thiết xây dựng hệ thống thông tin mới hoặc nâng cấp HTTT cũ không? Nếu có, - Thời gian bắt đầu, thời gian kết thúc - Ước tính chi phí thực hiện - Nhân lực, vật lực phục vụ cho hệ thống tương lai. - Có ích lợi và những cản trở gì. - Trách nhiệm mỗi bên cũng được thỏa thuận sơ bộ vào giai đoạn này. Nói tóm lại, kết thúc của giai đoạn này là một hợp đồng không chính thức giữa người phân tích thiết kế và chủ đầu tư.
  13. 15 Hình 1.2: Sơ đồ xây dựng một hệ thống thông tin tin học hóa PHÂN TÍCH THIẾT KẾ Hệ thống cũ họat động như Hệ thống mới Xác định hệ thống thế nào? phải làm gì? mới phải làm như thế nào? Tìm hiểu yêu cầu Hệ thống cũ THỰC HIỆN thực tế và yêu cầu làm gì? sử dụng. Mã hóa, chuyển giao, bảo trì. Bắt đầu 2. Phân tích Là giai đoạn trung tâm khi xây dựng 1 hệ thống thông tin, giai đoạn này bao gồm các giai đoạn và khởi sự ngay trong giai đoạn lập kế hoạch. Phân tích bao gồm các công đoạn sau: 2.1 Phân tích hiện trạng: Giai đoạn này nhằm hiểu rõ tình trạng hoạt động của hệ thống cũ trong mục đích hoạt động của tổ chức. Cụ thể, nó bao gồm các công việc: - Tìm hiểu hiện trạng: thông qua việc nghiên cứu hồ sơ, tài liệu để tìm hiểu thông tin chung về ngành dọc của tổ chức. - Tìm hiểu hoạt động hiện tại của tổ chức - Xác định các thành phần tham gia trong tổ chức - Các nhiệm vụ của các tổ chức thành viên và các tổ chức bên ngoài có liên quan - Các mối quan hệ thông tin giữa các thành viên trong tổ chức 2.2. Phân tích khả thi và lập hồ sơ nhiệm vụ: Phân tích khả thi phải tiến hành trên 3 mặt: - Phân tích khả thi về kỹ thuật: xem xét khả năng kỹ thuật hiện có để đề xuất giải pháp kỹ thuật áp dụng cho hệ thống thông tin mới.
  14. 16 - Phân tích khả thi kinh tế: xem xét khả năng tài chính để chi trả cho việc xây dựng hệ thống thông tin mới cũng như chỉ ra những lợi ích mà hệ thống sẽ đem lại. - Phân tích khả thi hoạt động: khả năng vận hành hệ thống trong điều kiện khuôn khổ, điều kiện tổ chức và quản lý cho phép của tổ chức. Sau đó, người phân tích phải định ra một vài giải pháp và so sánh, cân nhắc các điểm tốt và không tốt của từng giải pháp. Tóm lại, trong giai đoạn này người phân tích phải tìm ra một điểm cân bằng giữa nhu cầu và khả năng. Sau khi đã chọn lựa xong giải pháp người phân tích cần phải lập hồ sơ nhiệm vụ. Công việc này nhằm mục đích: - Định hình các chức năng hệ thống cần đạt được. - Định ra các thủ tục xây dựng quan niệm và thực hiện hệ thống. - Định hình sơ lược giao diện của hệ thống với người sử dụng trong tương lai. Làm các bản mẫu (prototype) để NSD hình dung được hệ thống trong tương lai. Tóm lại, lập hồ sơ nhiệm vụ là một thỏa thuận không chính thức giữa 3 phía: Người phân tích, Chủ đầu tư và Người sử dụng. 2.3. Xây dựng mô hình hệ thống chức năng: Người phân tích dựa vào kết quả phân tích để xây dựng mô hình nghiệp vụ của hệ thống, từ đó làm rõ mô hình thông tin và mô hình họat động của hệ thống. Trong toàn bộ hoạt động phân tích thì đây là giai đoạn quan trọng nhất. Quá trình tìm hiểu và xây dựng mô hình hệ thống được gọi là hoàn tất nếu không còn một phản hồi nào từ phía chủ đầu tư. 3. Thiết kế Thiết kế và phân tích không phải là hai giai đoạn rời nhau. Thiết kế hệ thống sẽ cho một phương án tổng thể hay một mô hình đầy đủ của hệ thống thông tin. Nó bao gồm tất cả các đặc tả về hình thức và cấu trúc của hệ thống. Trong giai đoạn thiết kế người phân tích phải xác định một cách chi tiết: - Các thông tin. - Các qui tắc phát sinh, tiếp nhận và xử lý thông tin - Các kiểu khai thác - Các phương tiện cứng và mềm được sử dụng trong hệ thống. Tóm lại, thiết kế bao gồm các công việc sau: - Thiết kế dữ liệu: xác định các đối tượng (tập thực thể) và cấu trúc dữ liệu được sử dụng trong hệ thống. - Thiết kế chức năng: định ra các modun xử lý thể hiện các chức năng xử lý của hệ thống thông tin. - Thiết kế giao diện: chi tiết hóa hình thức giao tiếp người - máy - Thiết kế an toàn hệ thống - Thiết kế phần cứng: tính toán các yêu cầu kỹ thuật cho hệ thống - Dự kiến nhân sự tại các vị trí công tác của hệ thống.
  15. 17 4. Giai đoạn thực hiện Trong giai đoạn này xây dựng hệ thống bao gồm xây dựng các file cơ bản. Viết các chương trình thực hiện các chức năng của hệ thống mới tương ứng với các kiểu khai thác đã đặt ra. Thực chất của giai đoạn này là thực hiện mã hóa dữ liệu và giải thuật nên còn được gọi là giai đoạn mã hóa (coding) Một trong những nhiệm vụ quan trọng của giai đoạn này là làm tài liệu sử dụng để cho hướng dẫn cho người sử dụng và làm tài liệu kỹ thuật cho các chuyên gia tin học phát triển hệ thống sau này. 5. Chuyển giao hệ thống Giai đoạn này là giai đoạn cuối cùng để người phân tích hiệu chỉnh hệ thống thông tin và đưa hệ thống vào khai thác, vận hành thử bằng số liệu giả để phát hiện sai sot. Sau đo người phân tích phải đào tạo người sử dụng tại mỗi vị trí trong hệ thống. 6. Bảo trì Bảo trì là quá trình sửa đổi, khắc phục những thiếu sót của hệ thống thông tin để làm cho hệ thống thích nghi hơn, thuận tiện hơn trong sử dụng. Tóm lại, quá trình xây dựng một hệ thống thông tin có thể mô tả theo sơ đồ dưới đây: Hình 1.3: Quá trình xây dựng một hệ thống thông tin LË p k Õ h o ¹ c h Ph ©n t Ýc h Th iÕt k Õ Th ùc h iÖn Ch uy Ón g ia o B¶ o t r ×
  16. 18 X. Các mức bất biến của một hệ thống thông tin Việc định ra các mức trừu tượng hóa của một hệ thống thông tin xuất phát từ nhu cầu của các nhà phân tích. Các nhu cầu đó bao gồm: - Cần có một mô hình hoặc một ngôn ngữ đặc tả đơn giản nhưng đơn nghĩa để xác định những yêu cầu trong mỗi giai đoạn phân tích. - Cần có một mô hình hoặc một ngôn ngữ để đối thoại với những người không chuyên tin học trong hệ thống thông tin. - Cần có một ngôn ngữ mô tả các mức quan niệm khác nhau của hệ thống thông tin liên quan đến chu kỳ sống của hệ thống. Có 3 mức trừu tượng của một hệ thống thông tin: 1. Mức quan niệm Mức quan niệm của một hệ thống thông tin là sự mô tả mục đích hệ thống thông tin đó và những ràng buộc phải tôn trọng trong mối quan hệ với mục đích của hệ thống. Các mô tả này phải độc lập với mọi giải pháp cài đặt sau này. Ví dụ, hệ thống thông tin quản lý các chuyến bay của một công ty hành không. Cụ thể, ở mức quan niệm người ta cần mô tả: - Các đối tượng được sử dụng trong hệ thống. - Các hiện tượng và các mối quan hệ thông tin giữa các đối tượng, giữa các hệ thống con trong hệ thống và giữa hệ thống với môi trường bên ngoài. - Thứ tự công việc được thực hiện trong hệ thống. - Các qui tắc biên đổi, công thức tinh toán, thuật toán. - Các nhiệm vụ mà hệ thống phải thực hiện và các ràng buộc mà hệ thống phải tôn trọng. Có 3 loại quy tắc: Qui tắc quản lyy : qui đinh mục tiêu và ràng buộc của hệ thống (thường là những quy đinh, luật lệ áp đặt từ môi trường ngoài). Ví dụ: "SV phải nộp học phí khi vào học", "doanh nghiệp phải đong thuế VAT". Một cách để xem xét một quy tắc có phải là quy tắc quản lý không là nếu hủy bỏ quy tắc này thì hệ thống có nguy cơ bị phá vỡ không? Qui tắc tổ chức: qui tắc liên quan đến giải pháp họat động của hệ thống. Qui tắc kỹ thuật: qui tắc liên quan đến các yêu cầu kỹ thuật để đảm bảo hệ thống có thể họat động được. Tóm lại ở mức quan niệm cần trả lời các câu hỏi: - Chức năng của hệ thống thông tin là gì? - Hệ thống thông tin cần những yếu tố gì? - Hệ thống gồm những dữ liệu và các quy tắc quản lý như thế nào?
  17. 19 2. Mức tổ chức (logic) Mục đích của mức tổ chức là xác định các phương tiện, nhân lực, máy móc, cách tổ chức để cung cấp các thông tin cho người sử dụng đúng thời hạn và đủ độ tin cậy. Tại mức này, cần trả lời các câu hỏi: Ai làm? Làm ở đâu? Làm khi nào? Thông tin ở mức tổ chức được mô tả theo giải pháp cơ sở dữ liệu và thực chất là quan hệ logic của chúng. Do đó, đối với dữ liệu mức tổ chức còn gọi là mức logic. .3. Mức vật lý (tác nghiệp) Đây là mức ít trừu tượng nhất vì nó chính là hệ thống có thể họat động và vận hành. Tại mức này, cần trả lời các câu hỏi hệ thống hoạt động như thế nào? Mục tiêu của mức vật lý là xác định cách thực hiện của hệ thống thông tin trong một môi trường cài đặt nào đó, thông tin ở đây được mô tả với các cấu trúc, giá mang và phương thức truy nhập. Hình 1.4: Mô hình không gian phát triển hệ thống MVL MTC MQN TTin XLý Cngười Thbị Lập kế hoạch Phân tích Thiết kế
  18. 20 Có thể xem mỗi bước trong quá trình phân tích thiết kế hệ thống là một điểm trong không gian 3 chiều trong hình vẽ ở trên. Mức Dữ liệu Xử lý Quan niệm Mô hình quan niệm về dữ liệu Mô hình quan niệm về xử lý Logic Mô hình tổ chức dữ liệu Mô hình tổ chức xử lý Vật lý Mô hình vật lý dữ liệu Mô hình vật lý xử lý H ết chương 1
  19. 21 Chương 2 NGHIÊN CỨU HIỆN TRẠNG CỦA HỆ THỐNG THÔNG TIN I. Một số vấn đề chung khi nghiên cứu hệ thống 1. Thực trạng của các hệ thống thông tin đang sử dụng Trong thực tế gần 75% các hệ thống thông tin lớn và phức tạp đã hoạt động yếu kém, không đạt được mục tiêu đề ra ban đầu. Những yếu kém này thường rơi vào các vấn đề cơ bản sau: 1.1. Sai lầm về thiết kế: Không hiểu biết đầy đủ các yêu cầu thông tin của tổ chức. Nhiều chức năng của tổ chức không được đáp ứng. Giao diện người-máy nghèo nàn, khó sử dụng. Cấu trúc rối rắm, phức tạp khó bảo trì và hạn chế công việc phát triển. Chương trình không mềm dẻo. Nguyên nhân của sai lầm này thực chất là do việc phân tích không đầy đủ về hệ thống. 1.2. Sai lầm về dữ liệu Dữ liệu trong hệ thống không thống nhất, không đầy đủ hoặc không thích hợp cho mục đích của hệ thống, đôi khi còn sai lệch vô nghĩa. 1.3. Hoạt động yếu kém Hệ thống hoạt động không hiệu quả, làm mất nhiều thời gian để bảo trì sửa chữa, chưa đáp ứng chức năng của một hệ hỗ trợ ra quyết định. Không đạt được yêu cầu các chuẩn về thông tin, người dùng không muốn sử dụng. 1.4. Không bảo đảm tính năng hoàn vốn đầu tư Hệ thống hoạt động với chi phí cao, tốn kém nhân lực. Đôi khi không sử dụng hệ thống còn tốt hơn, nhanh hơn. Những vấn đề trên đã được nghiên cứu và cải thiện từng bước tương ứng với mỗi nguyên nhân gây ra chúng. Cách thức giải quyết các vấn đề trên tập trung vào ba mặt: - Nâng cao kỹ năng của các nhà phát triển hệ thống. - Không ngừng hoàn thiện và phát triển công nghệ, tăng cường sử dụng các công cụ tiện ích để tự động hoá ngày càng nhiều các hoạt động phát triển, làm cho hệ thống có tính mở (openning) cao. - Hoàn thiện quá trình quản lý các dự án phát triển phần mềm. 2. Yêu cầu đặt ra đối với hệ thống thông tin tin học hóa Mỗi tập thể hoặc cá nhân tham gia vào việc phát triển hệ thống thường có những quan điểm khác nhau tuỳ theo vị trí của họ trong hệ thống. 2.1. Yêu cầu từ phía chủ đầu tư (người lãnh đạo): Với tư cách là người đại diện cho quuyền lợi của tổ chức, người lãnh đạo quan niệm hệ thống theo khía cạnh lợi ích có tính chiến lược. Các yêu cầu mà chủ đầu tư thường đặt ra đối với những người phát triển hệ thống là:
  20. 22 - Hệ thống thông tin tin học hoá phải phù hợp với chiến lược hoạt động của tổ chức. Yêu cầu cầu này là hiển nhiên, vì mục đích của việc tin học hoá là làm thế nào để có những thông tin chính xác và nhanh nhất để phục vụ cho quá trình ra quyết định phù hợp với hoạt động của tổ chức. - Hệ thống thông tin tin học hoá phải có chức năng hỗ trợ ra quyết định và giảm thời gian ra quyết định. Trong thực tế nhiều người nhầm lẫn rằng, một công việc nào đó được thực hiện trên máy tính là một hệ thống thông tin, ví dụ nhập điểm và in điểm cho sinh viên ở một trường đại học, nhập số KW điện tiêu thụ hàng của khách hàng để in ra hoá đơn tiền tiền điện, chỉ là một công đoạn nào đó trong hệ thống thông tin bởi vì kết quả của công đoạn này không có chức năng hỗ trợ ra quyết định. - Hệ thống thông tin tin học hoá phải cho sản phẩm hoặc dịch vụ mới tốt hơn. Ví dụ nếu hệ thống thông tin quản lý trong ngân hàng không được tin học hoá thì việc chuyển khoản, thanh toán không có hiệu quả tức thời, cũng không nãy sinh ra các dịch vụ tiện lợi khác như rút tiền tự động trên các máy ATM, Credit Card, mua hàng hoá trừ vào tài khoản, - Khả năng hoàn vốn đầu tư: không nên hiểu hoàn vốn là chuyển nhượng hệ thống thông tin này cho những tổ chức khác để thu lợi nhuận. Một hệ thống thông tin có khả năng hoàn vốn đầu tư nếu hệ thống đó có thể đem lại cho tổ chức nhiều dịch vụ, tạo ra ưu thế cạnh tranh, đưa ra thông tin có giá trị giúp cho tổ chức có những chiến lược đúng đắn. 2.2. Yêu cầu từ phía người sử dụng: Người sử dụng đầu cuối thường quan niệm hệ thống như là một sự mô phỏng công việc thường ngày chỉ có khác là có sự tham gia của máy tính. Các yêu cầu mà người sử dụng thường đặt ra đối với những người phát triển hệ thống là: - Hệ thống thông tin phải có nhiều khả năng. Nghĩa là hệ thống phải làm được các công việc của người sử dụng đầu cuối. Ví dụ, trong hệ thống thông tin “Quản lý nhân sự” có thể in ấn và thống kê theo một hoặc nhiều điều kiện khác nhau của cán bộ công chức trong cơ quan. - Hệ thống thông tin phải dễ sử dụng và có ích thực sự cho người sử dụng: hệ thống phải làm cho người sử dụng thấy được sự nổi trội, hơn hẳn so với khi chưa sử dụng hệ thống. Tuy nhiên, người phát triển hệ thống phải làm thế nào để hệ thống thân thiện và dễ sử dụng nhất. - Hệ thống phải có độ tin cậy cao Người kỹ thuật viên quan niệm hệ thống như là sự tổ chức lại các công việc theo mục đích xử lý thông tin. Các quan niệm này đôi khi mâu thuẩn nhau mà sự thành công của hệ thống đòi hỏi chúng ta phải dung hoà các quan niệm có thể rất khác nhau. Quan niệm đúng đắn nhất là hệ thống thông tin đã tồn tại ngay trong hoạt động của tổ chức, và nó phục vụ cho mục đích chiến lược của tổ chức. Như vậy đối với hệ thống thông tin tin học hoá thì trước hết phải phục vụ cho mục đích chiến lược của tổ chức sau đó mới đến nhu cầu cụ thể của người sử dụng cũng như nhân viên kỹ thuật. 3. Quy mô tin học hóa
  21. 23 Quy mô tin học hoá của một tổ chức cho biết trình độ quản lý và mức độ tin học hoá của tổ chức đó, nó phụ thuộc vào các yếu tố sau: - Tổ chức có nhu cầu tin học hoá nhiều hay ít. - Trình độ quản lý của tổ chức cao hay thấp. - Quy mô hoạt động của tổ chức Trong thực tế việc tin học hoá một hệ thống thông tin xẩy ra một trong hai dạng: tin học hoá toàn thể và tin học hoá từng bộ phận. Việc tin học hoá toàn thể thường đòi hỏi một tập thể người phân tích đồng thời tham gia và phải có một đầu tư lớn ban đầu, thời gian xây dựng đối với tin học hoá loại này cũng dài hơn. Một khó khăn đối với tin học hoá toàn bộ là vấn đề tâm lý, bởi vì nó thay đổi hầu như toàn bộ các hoạt động cơ bản của tổ chức và thói quen của người sử dụng. Nhưng có một ưu điểm là hệ thống đồng hoạt động đồng bộ, không manh múm, chắp vá. Việc tin học hoá từng bộ phận thường xẩy ra đối với tổ chức lớn. Phương pháp này có nhiều ưu điểm: không gây xáo trộn hoạt động của tổ chức, đầu tư dần dần. Tuy nhiên, phương pháp này có nhược điểm là sự không nhất quán giữa các phân hệ thông tin trong hệ thống. Điều này thường xẩy ra đối với các hệ thống thông tin mà những người phát triển hệ thống không cùng trong một tập thể phân tích hoặc hoạt động độc lập lẫn nhau. 4. Vai trò của những người tham gia phát triển hệ thống thông tin Một trong những yếu tố quyết định sự thành công của một hệ thống thông tin là tập thể và cá nhân tham gia vào quá trình phát triển hệ thống. Thông thường có sáu đối tượng tham gia vào công việc này. 4.1. Người quản lý hệ thống thông tin: Đó là những người được lãnh đạo của tổ chức giao trách nhiệm đưa ra các yêu cầu chi tiết cho phân tích viên và triển khai tổ chức thực hiện khi hệ thống hoạt động. Đối với các hệ thống thông tin vừa và nhỏ thì người quản lý hệ thống thông tin thường là các trưởng phòng ban chức năng có nhiệm vụ cung cấp tình hình, số liệu, phương thức xử lý, công thức tính toán, trong hoạt động nội bộ của phòng mình và mối quan hệ thông tin giữa phòng mình với các bộ phận khác. 4.2. Người phân tích hệ thống Là người chủ chốt trong quá trình phát triển hệ thống, những người nầy sẽ quyết định vòng đời của hệ thống. Trong các hệ thống thông tin vừa và nhỏ một phân tích viên có thể là là người lập trình cho hệ thống. Tuy nhiên đối với các HTTT lớn thì bộ phận phân tích viên phải là một tập thể, vì như thế mới có đủ khả năng nắm bắt các lĩnh vực và hoạt động của tổ chức. Một phân tích viên được gọi là có năng lực nếu họ hội đủ các điều kiện sau: . Có kỹ năng phân tích: có thể hiểu được tổ chức và sự hoạt động của nó. Có thể xác định được các vấn đề đặt ra và giải quyết chúng. Có khả năng suy nghĩ mang tính chiến lược và hệ thống. . Có kỹ năng kỹ thuật: hiểu biết về thiết bị và phần mềm. Biết chọn lựa các giải pháp phần cứng và mềm cho các ứng dụng đặc biệt nơi cần tin học hoá. Hiểu biết công việc của người lập trình và người sử dụng đầu cuối. . Có kỹ năng quản lý: có khả năng quản lý nhóm làm việc, biết được điểm mạnh, điểm yếu của những người làm việc trong nhóm. Biết lắng nghe, đề xuất và giải quyết vấn đề. Có khả năng lập kế hoạch, điều phối các nguồn lực. . Có kỹ năng giao tiếp: phân tích viên phải đóng vai trò chính trong việc liên kết giữa các đối tượng: chủ đầu tư, người sử dụng, người lập trình và các thành phần khác
  22. 24 trong hệ thống. Kỹ năng giao tiếp của phân tích viên thể hiện ở chổ: năng lực diễn đạt và thuyết phục, khả năng hoà hợp với mọi người trong nhóm làm việc. Có khả năng tổ chức và điều hành các cuộc họp. 4.3. Người lập trình Là tập thể hoặc cá nhân có nhiệm vụ mã hoá các đặc tả được thiết kế bởi phân tích viên thành các cấu trúc mà máy tính có thể hiểu và vận hành được. Người lập trình cũng phải viết các tài liệu chương trình và các chương trình thử nghiệm hệ thống, chuẩn bị các số liệu giả để kiểm định độ chính xác của hệ thống. 4.4. Người sử dụng đầu cuối Trong quá trình phân tích thiết kế phân tích viên phải làm việc với người sử dụng để biết được chi tiết các thông tin của từng bộ phận, từng mảng công việc trong hệ thống. Người sử dụng sẽ cho phân tích viên biết ưu điểm và nhược điểm của hệ thống thông tin cũ, cho nên những ý kiến của họ có ý nghĩa quan trọng đến việc sử dụng hệ thống một cách có hiệu quả. 4.5. Kỹ thuật viên Là bộ phận phụ trách về mảng kỹ thuật của hệ thống như: bảo đảm sự hoạt động của phần cứng máy tính, đường truyền dữ liệu từ bộ phận này đến bộ phận khác trong hệ thống và từ hệ thống đến môi trường ngoài. 4.6. Chủ đầu tư Thường là thành phần quyết định của tổ chức, là người cung cấp cho phân tích viên những thông tin chung của tổ chức. Hệ thống thông tin tin học hóa bao giờ cũng có chức năng hỗ trợ ra quyết định, chức năng này giúp cho lãnh đạo của tổ chức những thông tin cần thiết trong quá trình ra quyết định. II. Nghiên cứu hiện trạng 1. Mục đích Trong thực tế một hệ thống thông tin mới được xây dựng là nhằm để thay thế hệ thống thông tin cũ đã bộc lộ nhiều yếu kém. Vì vậy mà việc tìm hiểu nhu cầu đối với hệ thống mới thường bắt đầu từ việc khảo sát và đánh giá hệ thống cũ đó. Vì rằng hệ thống này đang tồn tại và đang hoạt động nên chúng ta gọi là hiện trạng. Nghiên cứu hiện trạng một hệ thống thông tin là nhằm các mục đích sau: - Tiếp cận với nghiệp vụ chuyên môn, môi trường hoạt động của hệ thống. - Tìm hiểu các chức năng, nhiệm vụ và cung cách hoạt động của hệ thống. - Chỉ ra các ưu điểm của hệ thống để kế thừa và các khuyết điểm của hệ thống để nghiên cứu khắc phục. Tóm lại, mục đích của việc nghiên cứu hiện trạng là trả lời cho được các câu hỏi sau: - Hệ thống đang làm gì? Gồm những công việc gì? Đang quản lý cái gì? - Những công việc trong hệ thống do ai làm? Làm ở đâu? Khi nào làm? - Mỗi công việc được thực hiện như thế nào? Mỗi công việc liên quan đến dữ liệu nào? - Chu kỳ, tần suất, khối lượng công việc?
  23. 25 - Đánh giá các công việc hiện tại: tầm quan trọng như thế nào? Các thuận lợi, khó khăn? Nguyên nhân dẫn đến khó khăn? 2. Nội dung nghiên cứu và đánh giá hiện trạng Với mục đích đã nói trên, để nghiên cứu hiện trạng một hệ thống thông tin, phân tích viên nên khảo sát các nội dung sau: Tìm hiểu môi trường xã hội, kinh tế và kỹ thuật của hệ thống. Nghiên cứu cơ cấu tổ chức của cơ quan chủ quản của hệ thống đó. - Nghiên cứu các chức trách, nhiệm vụ, các trung tâm ra quyết định và điều hành, sự phân cấp quyền hạn trong tổ chức (sơ đồ tổ chức). - Thu thập và nghiên cứu các hồ sơ, sổ sách, các file dữ liệu cùng với các phương thức xử lý các thông tin đó. - Thu thập và mô tả các quy tắc quản lý, tức là các quy định, các quy tắc, các công thức tính toán, - Thu thập và tìm hiểu các chứng từ giao dịch. Mô tả các luồng thông tin và tài liệu giao dịch được luân chuyển như thế nào. - Thống kê các phương tiện và tài nguyên đã và có thể sử dụng. - Thu thập và tìm hiểu các ý kiến khen chê về hệ thống thông tin cũ và những yêu cầu, đòi hỏi về hệ thống tương lai. - Lập hồ sơ tổng hợp về hiện trạng Một trong những yếu tố quan trọng quyết định sự thành công của hệ thống thông tin là giai đoạn nghiên cứu hiện trạng của hệ thống. Điều này đòi hỏi phân tích viên phải làm việc nghiêm túc và chính xác. 3. Các kỹ thuật thu thập thông tin 3.1. Các khái niệm và thuật ngữ sử dụng trong khảo sát hiện trạng Điểm công tác (nơi làm việc) Là các điểm, đầu mối phát sinh hoặc thu nhận thông tin. Thông thường thì điểm phát sinh hoặc thu nhận thông tin cũng là nơi lưu trữ và xử lý nó. Có hai loại điểm công tác: điểm công tác trong và điểm công tác ngoài. Điểm công tác trong có thể là nơi lưu trữ, xử lý, thu nhận và phát sinh thông tin. Trong khi đó điểm công tác ngoài chỉ có thể là nơi phát sinh hoặc thu nhận thông tin. Trong SADT điểm công tác trong và điểm công tác ngoài còn được gọi là tác nhân trong và tác nhân ngoài. Ví dụ, trong HTTT “Quản lý kho hàng” thì điểm công tác Kế toán kho là điểm công tác trong, vì đây là nơi lưu trữ, xử lý, phát sinh và thu nhận thông tin. Trong khi đó điểm công tác Nhà cung cấp phải là điểm công tác ngoài, vì ở đây không cần thiết phải lưu trữ thông tin của hệ thống mà chỉ là nơi phát sinh hoặc thu nhận thông tin mà thôi. Tài liệu Được dùng với ý nghĩa là mọi giá mang thông tin được sử dụng trong hệ thống. Ví dụ: tài liệu giấy như hoá đơn, hồ sơ, ; tài liệu số hoá như các file dữ liệu, ảnh số, Tài liệu lưu trữ-Kho dữ liệu Các thông tin được lưu trữ để phục vụ cho các chức năng công việc của hệ thống. Chức năng-Công việc
  24. 26 Một chức năng được hiểu là một hoặc nhiều công việc nhằm thực hiện một nhiệm vụ ở một phạm vi nào đó có tác động trực tiếp lên dữ liệu và thông tin của hệ thống đó. Những tác động trực tiếp lên dữ liệu và thông tin thường được nhắc đến như: cập nhật, lưu trữ, truyền thông tin, xử lý và biểu diễn thông tin. Kết thúc một chức năng thường cho một sản phẩm cũng là thông tin và có thể là sản phẩm trung gian hoặc sản phẩm cuối cùng. Ví dụ, trong HTTT “Quản lý đào tạo” ở một trường đại học, chức năng Xếp loại sinh viên được thực hiện khi các công việc Nhập điểm thi, Tính điểm trung bình được thực hiện. Kết thúc của chức năng này là một danh sách (thông tin) sinh viên đã được xếp loại. Quy tắc nghiệp vụ Quy tắc nghiệp vụ là những quy định hoặc những hướng dẫn được chấp nhận mà chúng sẽ chi phối các hoạt động của tổ chức nhằm bảo đảm cho hoạt động của tổ chức đạt được các mục tiêu đề ra trong những điều kiện cụ thể. Các quy tắc nghiệp vụ được chia làm 3 loại: - Quy tắc về quản lý: là các quy tắc quy định mục tiêu và ràng buộc của hệ thống. Các quy tắc này có thể được áp đặt từ bên ngoài hệ thống, cũng có thể là do tổ chức quy định. Ví dụ, “Sinh viên có có số tiết vắng học lơn hơn 1/3 tổng số tiết của học phần thì không được dự thi kết thúc học phần” hoặc “Doanh nghiệp phải đóng thuế VAT là 5% và thuế lợi tức là 35%” là các quy tắc về quản lý được áp đặt từ bên ngoài hệ thống. Xét quy tắc, “ Sinh viên có thể học lại lần thứ 3 theo phương pháp tự học.” là quy tắc do hệ thống quy định. - Quy tắc về tổ chức: là các quy tắc liên quan đến giải pháp hoạt động của hệ thống. Đây là các quy định, trình tự làm việc cần tuân thủ để đạt được mục tiêu trong điều kiện của tổ chức. Ví dụ, quy tắc “Chỉ tổ chức thi lần 2 cho sinh viên sau khi đã hoàn tất việc thi lần 1“ là một quy tắc tổ chức. - Quy tắc về kỹ thuật: là các quy tắc liên quan đến các yêu cầu kỹ thuật để bảo đảm sự hoạt động của hệ thống. Ví dụ, quy tắc “máy in không được sử dụng liên tục quá 1 giờ” là một quy tắc kỹ thuật. Để xác định hiện trạng của hệ thống thông tin, phân tích viên cần nghiên cứu, tìm hiểu để nắm được tình trạng hoạt động của HTTT cũ, các công việc, quy tắc hoạt động của mỗi bộ phận trong tổ chức, trên cơ sở đó để quyết định phải làm gì và làm như thế nào. Có nhiều phương pháp để nghiên cứu hiện trạng một HTTT như: phương pháp quan sát, phương pháp điều tra bằng phiếu thăm dò, phương pháp phỏng vấn, 3.2. Các phương pháp nghiên cứu hiện trạng 3.2.1. Phương pháp quan sát Phương pháp này phân tích viên có thể quan sát trực tiềp hoặc gián tiếp (quan sát qua phương tiện hoặc đọc tài liệu) về hiện trạng hệ thống thông tin. Với phương pháp này phân tích viên phải ghi chép lại các yêu cầu sau: - Các bộ phận trong tổ chức - Mối quan hệ nghiệp vụ giữa các bộ phận trong tổ chức - Các hoạt động tác nghiệp của mỗi bộ phận - Cách thức giao tiếp và trao đổi thông tin giữa các bộ phận - Khối lượng công việc của mỗi bộ phận - Những yếu tố bất thường để xác định tính khả thi của dự án mà trong giai đoạn lập kế hoạch trước đây chúng ta chưa lường được hết.
  25. 27 Phương pháp này có nhiều khiếm khuyết: - Mang lại một kết quả có tính chủ quan do sự thiếu hiểu biết của người phân tích. - Khó giới hạn được lĩnh vực nghiên cứu vi phân tích viên có phần thụ động trước các hiện tượng. - Chỉ có thể nắm bắt được các yếu tố bên ngoài - Gây tâm lý khó chịu cho người bị quan sát Tuy nhiên, phương pháp này cho một bức tranh khái quát về hệ thống thông tin tương lai. Chúng ta nên sử dụng phương pháp quan sát kết hợp với các phương pháp khác thì có hiệu quả hơn. 3.2.2. Phương pháp điều tra bằng phiếu thăm dò Phương pháp này thường được sử dụng trong xã hội học, những điều tra mang tính vĩ mô. Đối với việc nghiên cứu hiện trạng một hệ thống thông tin phương pháp này ít được sử dụng, nó chỉ thích hợp với mục đích điều tra tần suất trong nghiên cứu khả thi. Thông thường phương pháp này chỉ lấy những thông tin mang tính định hướng. 3.2.3. Phương pháp phỏng vấn Phương pháp này thường được sử dụng trong các hệ thống thông tin kinh tế xã hội, bởi vì nó mang lại những thông tin xác thực và chi tiết cho quá trình phân tích và thiết kế. Phân tích viên cần phải phỏng vấn: Ban lãnh đạo và các điểm công tác. Phỏng vấn lãnh đạo: Mục đích là nắm các thông tin chung nhất của tổ chức, có thể là cần nắm: - Nhiệm vụ chung của tổ chức - Sơ đồ tổ chức - Chúng sẽ cho danh sách các điểm công tác và vai trò của chúng trong hệ thống - Các số liệu chung - Chúng sẽ cho biết quy mô của hệ thống - Các lĩnh vực cần nghiên cứu có liên quan đến hệ thống thông tin sắp được xây dựng Phỏng vấn các điểm công tác: Mục đích là thu thập các thông tin chi tiết liên quan đến các hoạt động cụ thể và tất cả các thông tin liên quan đến hệ thống thông tin. Tại mỗi điểm công tác cần phải mô tả và liệt kê các quy trình của công việc phải thực hiện. Mỗi qui trình phải nắm cho được: - Phương thức hoạt động: công việc được thực hiện tự động hay thủ công. - Các thông tin và khối lượng thông tin liên quan đến công việc, các quy tắc thực hiện công việc. - Điều kiện khởi động: khi nào, với điều kiện nào thì công việc được khởi động. - Thời gian và chu kỳ thực hiện công việc: công việc được thực hiện khi nào và khoảng thời gian bao lâu thi công việc được thực hiện lại. - Ngoài ra, phân tích viên cũng phải nắm: - Ngôn ngữ công việc tại mỗi điểm công tác để thiết kế giao diện người-máy giữa người sử dụng với hệ thống thông tin tương lai. - Các luồng thông tin tác nghiệp đi từ điểm công tác này đến điểm công tác khác hoặc đến môi trường ngoài của hệ thống.
  26. 28 Tổ chức phỏng vấn Trước khi phỏng vấn phân tích viên nên thông báo trước thời gian, địa điểm và nội dung phỏng vấn với người được phỏng vấn. Phỏng vấn với lãnh đạo và các điểm công tác không phải là một lần duy nhất, nên phân tích viên phải tạo tạo quan hệ tốt với người được phỏng vấn. Cần mở đầu hợp lý, biểu lộ thiện cảm, sự tin cậy và tôn trọng đối với người được phỏng vấn. Sau khi phỏng vấn xong, phân tích viên phải tóm tắt nội dung đã phỏng vấn, khẳng định các thoả thuận, để ngỏ khả năng tranh luận để phát huy tính tích cực của người được phỏng vấn. Để có được tài liệu tổng kết giai đoạn nghiên cứu hiện trạng, sau mỗi lần phỏng vấn phân tích viên phải ghi chép lại các thông tin về cuộc phỏng vấn như: người được phỏng vấn, chức vụ, chủ đề phỏng vấn, tên dự án, ai hỏi, thời gian hỏi, địa điểm hỏi, các câu hỏi, các câu trả lời tương ứng, đánh giá của người phỏng vấn, ngày tháng năm phỏng vấn, các thông tin này nên tổ chức trên các phiếu phỏng vấn như sau: Tên dự án: PHIẾU PHỎNG VẤN Số: Tên dự án con: Nơi phỏng vấn: Nội dung phỏng vấn (các câu hỏi và các câu trả lời) Các thoả thuận tiếp theo Một số đánh giá của người phỏng vấn Người phỏng vấn (Họ tên và chữ ký) Nội dung một phiếu phỏng vấn Nghiên cứu các tài liệu Nghiên cứu tài liệu cũng là một phần công việc của nghiên cứu hiện trạng. Qua các tài liệu của hệ thống phân tích viên có thể nắm được: - Các chức năng của tổ chức. - Các quy tắc, công thức tính toán, tại mỗi điểm công tác. - Các tài liệu nghiên cứu bao gồm: . Các văn bản pháp quy, quy định về chức năng, nhiệm vụ của tổ chức. . Các văn bản pháp quy, quy định về tiêu chuẩn, quy tắc, phương thức làm việc. . Các chủ trương chính sách của tổ chức nhà nước đã ban hành. . Các báo cáo, báo biểu, thống kê đã có.
  27. 29 Phân tích hiện trạng một hệ thống thông tin là việc làm rất quan trọng, quyết định sự thành công của dự án, thông thường phân tích viên phải sử dụng tất cả các phương pháp trên một cách khéo léo để đạt được mục tiêu đề ra. 4. Các công việc sau khảo sát hiện trạng Sau khi dùng các phương pháp khác nhau để thu thập thông tin và dữ liệu liên quan đến hệ thống tương lai, phân tích viên phải xử lý sơ bộ, phân loại và tổng hợp các dữ liệu thu được để tiện việc theo dõi, quản lý, phục vụ trực tiếp quá trình khảo sát và làm tư liệu cho các bước tiếp theo. 4.1. Xử lý sơ bộ kết quả khảo sát Dữ liệu thu thập được trong quá trình khảo sát hiện trạng là một khối các dữ liệu thô, phân tích viên phải xem lại và hoàn thiện tài liệu thu được. Công việc này bao gồm việc phân loại, sắp xếp, bổ sung, làm cho nó trở nên đầy đủ, chính xác, cân đối, gọn gàng, dễ kiểm tra và dễ theo dõi. Phát hiện chổ thiếu để bổ sung, chổ sai để sửa chữa. Những việc cần làm là: . Làm rõ các chức năng của hệ thống: qua khảo sát hoặc bằng kinh nghiệm phân tích viên có thể xác định được các chức năng và dữ liệu của hệ thống: như các đối tượng, các điểm công tác, các hoạt động. Đối với mỗi chức năng cần làm rõ: điều kiện khởi động, kết quả thu được, thời gian thực hiện, tần số, chu kỳ, các quy tắc phải tuân thủ. . Rà soát lại dữ liệu: ngoài các kết quả của phỏng vấn, phân tích viên nên sao chụp lại các bảng biểu, tài liệu để tách các thông tin cần sử dụng. Kiểm tra lại các thông tin sau về dữ liệu: - Tên dữ liệu: do người phân tích lựa chọn - Định nghĩa về dữ liệu: mô tả bằng lời hoặc bằng công thức - Kiểu dữ liệu (số, chuỗi, ) - Loại: là dữ liệu cơ sở hay dữ liệu được suy từ dữ liệu khác. - Ràng buộc về giá trị 4.2. Tổng hợp kết quả khảo sát Việc phỏng vấn tại các điểm công tác chưa nói lên được mối quan hệ giữa các điểm công tác với nhau như thế nào. Lúc này người phân tích cần tổng hợp lại để có được một bức tranh tổng thể của hệ thống. Việc tổng hợp được tiến hành theo hai loại: tổng hợp các xử lý và tổng hợp theo dữ liệu. 4.2.1. Tổng hợp các xử lý Mục đích của tổng hợp các xử lý là làm rõ các thiếu sót và sự rời rạc của các yếu tố liên quan đến công việc khi phỏng vấn. Có hai cách tổng hợp các xử lý: tổng hợp kết hợp với yếu tố tổ chức và tổng hợp tách rời các yếu tố tổ chức. . Tổng hợp kết hợp với yếu tố tổ chức Tổng hợp kết hợp với yếu tố tổ chức sẽ kết hợp các chức năng với điểm công tác. Tổng hợp này cho phép chúng ta kết nối được những công việc cùng thuộc một chức năng chung nhưng liên quan đến nhiều điểm công tác. Thông qua tổng hợp này chúng ta sẽ rà soát được các khiếm khuyết của việc điều tra tại các điểm công tác khác nhau. Tổng hợp kết hợp với yếu tố tổ chức dựa trên cơ sở lĩnh vực hoạt động trong hệ thống. Lĩnh vực hoạt động là một tập hợp các nhiệm vụ cùng liên quan đến một tập dữ liệu và một nhóm quy tắc quản lý. Để tách ra một lĩnh vực hoạt động cần phải:
  28. 30 - Nhóm các hoạt động có mối quan hệ với nhau theo mục đích - Kết hợp các hành động đó với một tập hợp các quy tắc quản lý chung. - Kết hợp các hành động đó với một tập hợp các dữ liệu chung. . Tổng hợp tách rời các yếu tố tổ chức Mục đích của tổng hợp loại này là làm xuất hiện mức bất biến cao nhất (mức quan niệm) của hệ thống. Nếu bỏ đi các yếu tố tổ chức (như các điểm công tác) và yếu tố kỹ thuật thì hệ thống chỉ còn lại các điểm công tác ngoài, các chức năng và thông tin về các đối tượng được xử lý. 4.2.2. Tổng hợp các dữ liệu Mục đích của tổng hợp dữ liệu là liệt kê ra tất cả các dữ liệu có liên quan đến hệ thống nhằm xây dựng một từ điển dữ liệu chung cho toàn nhóm phân tích. Nếu không sau này có thể gây nhiều rắc rối khi xây dựng quan niệm và mã hoá hệ thống. Các mục từ đưa vào từ điển cần phải chọn lọc và chính xác hoá, loại bỏ những từ đồng nghĩa và đa nghĩa. Ví dụ: Bảng tổng hợp hồ sơ, tài liệu theo thực thể dữ liệu STT Tên - vai trò Công việc liên quan 1 PHIẾU VẬT TƯ: ghi hàng hoá xuất hoặc nhập T1 2 ĐƠN ĐẠT HÀNG: ghi lượng hàng hoá đặt gửi nhà cung cấp T1 3 PHIẾU GIAO HÀNG: ghi số lượng hàng của Nhà cung cấp T2,T3 phát ra 4 SỔ ĐẶT HÀNG: tập hợp các đơn hàng đã đặt T1,T2 Ví dụ: Bảng tổng hợp từ điển dữ liệu STT Tên gọi - Ý nghĩa Kiểu cỡ Khuôn Lĩnh vực Quy tắc, ràng dạng buộc 1 SỐ HOÁ ĐƠN ký tự 8 Kế toán Chữ hoa 2 TÊN HÀNG ký tự 20 Kế toán 3 NGÀY HOÁ ĐƠN ngày 8 dd-mm-yy Kế toán 4.3. Hợp thức hoá kết quả khảo sát Mục đích của việc hợp thức hoá kết quả khảo sát là nhằm xác định tính đúng đắn của thông tin và dữ liệu phản ánh yêu cầu thông tin của hệ thống và bảo đảm tính pháp lý của nó cho việc sử dụng sau này. Hợp thức hoá kết quả khảo sát bao gồm các công việc: - Hoàn chỉnh và trình bày các dữ liệu thu được để người sử dụng xem xét và cho ý kiến. - Tổng hợp các tài liệu để các nhà quản lý và các nhà lãnh đạo đánh giá và bổ sung. - Đề đạt thêm một số quy tắc mới (như các quy tắc về an toàn hệ thống, các yêu cầu về nhân sự, ) Do đó hợp thức hoá còn mang ý nghĩa là sự thoả thuận các quy tắc mới.
  29. 31 Hợp thức hóa là một khâu không thể bỏ qua, nếu không có thể sẽ đối mặt với những khó khăn không lường trước được khi triển khai dự án. 5. Giới thiệu nghiên cứu hiện trạng của một số HTTT Dưới đây chúng ta hãy xét một số nghiên cứu hiện trạng của hệ thống thông tin thông thường trong thực tế. Các hệ thống thông tin này được sử dụng trong các chương sau. 5.1. Hệ thống thông tin "Quản lý kho hàng" Một công ty sản xuất bánh kẹo, có nhiều kho để chứa vật tư và hàng hoá: . Kho nguyên liệu: chứa đường, bột, hương liệu, bao bì, . Kho nhiên liệu: chứa xăng, dầu, than . Kho phụ tùng: chứa các thiết bị thay thế . Kho thành phẩm: chứa bánh kẹo đã sản xuất được Mỗi kho đều có thủ kho chuyên trách. Nhiệm vụ của thủ kho là xuất nhập vật tư hàng hoá theo phiếu xuất hoặc phiếu nhập do người quản lý kho viết ra. Ví dụ, phiếu xuất hoặc phiếu nhập kho thành phẩm do bộ phận kinh doanh viết, phiếu xuất hoặc phiếu nhập kho nguyên liệu do phòng cung ứng viết theo công việc thực tế. Ngoài ra định kỳ, người thủ kho phải kiểm kê và báo cáo tồn kho từng loại mặt hàng trong kho. Báo cáo tồn kho được dùng với mục đích sau: . Để làm kế hoạch sản xuất, ví dụ xem xét khả năng có thể đáp ứng một hợp đồng hay không. . Đối chiếu với các chứng từ xuất nhập xem tồn kho trên thực tế có phù hợp với tồn kho theo chứng từ hay không. Công việc này nhằm mục đích xem có thất thoát về vật tư hoặc có nhầm lẫn về chứng từ không. . Để bảo đảm sản xuất ổn định, một số mặt hàng và vật tư phải đạt được một độ dự trữ lớn hơn một mức nào đó được gọi là dự trữ tối thiểu, nếu mức dự trữ này thấp hơn thì quản lý kho phải làm đơn đạt hàng bổ sung. Mô số mặt hàng nào đó cũng quy định một mức gọi là dự trữ tối đa, nếu tồn kho vượt quá mức này thì phải có biện pháp khắc phục để tránh đọng vốn trên nguyên vật liệu hoặc hàng hoá không tiêu thụ được. Nếu không có sự phù hợp giữa thực tế và theo chứng từ thì hoặc có sự thất thoát về vật tư hàng hoá hoặc có sự nhầm lẫn về chứng từ. Cần kiểm tra. Để tiện theo dõi xuất nhập theo chứng từ, thủ kho lập cho mỗi mặt hàng một thẻ kho. Mỗi lần xuất hoặc nhập hàng đều ghi vào thẻ kho đó số lượng xuất, số lượng nhập, số lượng tồn kho tương ứng. Bản báo cáo tồn kho có dạng như trong tài liệu A và thẻ khó có dạng như trong tài liệu B. Người quản lý kho không trực tiếp xuất nhập hàng hoá mà chỉ là nơi phát sinh các chứng từ xuất nhập. Các chứng từ chủ yếu là chứng từ xuất hoặc nhập. Khi có nhu cầu về vật tư, người quản lý kho tiếp xúc với Nhà cung cấp để làm đơn đặt hàng. Khi hàng về, sau khi giám định chất lượng, người quản lý kho viết phiếu nhập lưu lại một bản, một bản gửi cho kế toán để thanh toán, một bản gửi cho Nhà cung cấp và một bản cho thủ kho để làm thủ tục nhập kho. Đối với kho thành phẩm, việc nhập kho chỉ là thủ tục nội bộ theo thông báo của các phân xưởng dưới sự kiểm tra của nhà máy. Một phiếu nhập kho cũng có thể có nhiều mặt hàng nhưng chỉ từ một Nhà cung cấp hoặc từ một phân xưởng mà thôi. Phiếu nhập kho có dạng như tài liệu C. Đối với kho nguyên liệu hoặc kho nhiên liệu, phiếu xuất kho được thực hiện theo yêu cầu của sản xuất do Ban giám đốc ra lệnh.
  30. 32 Đối với kho thành phẩm, việc xuất kho chính là bán hàng, phiếu xuất kho được viết theo lệnh của Phòng kinh doanh. Một phiếu xuất cũng gồm bốn bản như phiếu nhập. Hoá đơn kiêm Phiếu xuất kho có dạng như tài liệu D. Công ty không bán lẻ mà bán buôn cho một số đại lý có hợp đồng với công ty, vì vậy các phiếu xuất không nhất thiết phải thanh toán ngay. tuy nhiên, nếu khách hàng thanh toán ngay sẽ được một khoản khấu trừ trên giá gọi là chiết khấu. Hồ sơ khách hàng (lập từ hợp đồng đại lý) cũng được lưu trữ để xác nhận khi họ đến lấy hàng. Hồ sơ có dạng như trong tài liệu E Định kỳ (hàng ngày, hàng tuần, hàng tháng, hàng quý, hàng năm) người quản lý kho phải báo cáo với Ban lãnh đạo biến động của kho hàng bao gồm: tồn kho mỗi mặt hàng đầu kỳ, số lượng nhập, số lượng xuất trong kỳ và tồn kho cuối kỳ. Ban lãnh đạo căn cứ vào các số liệu này để nắm tình hình kinh doanh của công ty. Báo cáo tồn kho có dạng như trong tài liệu F. Một số tài liệu liên quan đến HTTT “Quản lý kho hàng". Tài liệu A Công ty Hải Hà BÁO CÁO TỒN KHO TÍNH ĐẾN NGÀY Stt Tên hàng Mã hàng Đơn vị Đơn giá Tồn kho Ghi chú 1 Bánh Chocola A01 Kg 356 2 Kẹo chanh B07 Kg 250 3 Bánh quy bơ A12 Kg 57 4 Tài liệu B Công ty Hải Hà THẺ KHO SỐ Tên kho: Kho Thành phẩm Tên vật tư hàng hoá: Kẹo Chocola Mã hàng: A01 Dự trữ tối thiểu: 50Kg Đơn giá: 2500đ Dự trữ tối đa: 500Kg Đơn vị tính: Kg Ngày Số chứng từ Nhập Xuất Tồn Tồn đầu kỳ 25 12/01/2004 8345 200 225 16/01/2004 5467 150 75 02/03/2004 2345 20 55
  31. 33 Tài liệu C Công ty Hải Hà PHIẾU NHẬP KHO Ngày Kho Nguyên liệu Số phiếu: 015 Họ tên người giao: Tô thị Đẹp Địa chỉ: 16 Phan Đình Phùng Đơn vị: Công ty Nông sản thực phẩm Tỉnh TT Huế Theo Hợp đồng số: 1234/KT Ngày 12/10/2004 Stt Tên hàng Mã hàng Đơn vị Đơn giá Số lượng Thànhtiền 1 Đường RE C09 Kg 5000 12000 60000000 2 Bột mì Pháp B14 Kg 2500 5000 12500000 3 Sữa Hà lan B16 Lit 8000 1500 12000000 Tổng cộng: 84500000 Người giao Người kiểm tra Thủ kho Thủ trưởng Tài liệu D Công ty Hải Hà HOÁ ĐƠN KIÊM PHIẾU XUẤT KHO Kho Thành phẩm Ngày xuất Số phiếu: 215 Họ tên người nhận: Hoàng Dùi Địa chỉ: 18 Hùng vương Đơn vị: Đại lý số 4 Theo Hợp đồng đại lý số : 124/HDDL ngày 12/02/2004 Stt Tên hàng Mã hàng Đơn vị Đơn giá Số lượng Thànhtiền 1 Kẹo Chôcôla A09 Kg 7000 120 840000 2 Bánh quy bơ A14 Kg 3000 50 150000 3 Kẹo sữa C16 Kg 8000 10 80000 Tổng cộng: 1070000 Người nhận Người viét phiếu Kế toán Thủ kho Thủ trưởng
  32. 34 Tài liệu E Công ty Hải Hà DANH SÁCH ĐẠI LÝ Mã Tên đại lý Địa chỉ Số hợp Ngày ký Đại diện Số CMND đồng D1 Cửa hàng 1-5 01-Lê Duẫn 1356 1/2/03 Bà Năm 1234567 D2 Bà Nọi 12 Lê lợi 5678 4/6/02 Chị Tèo 9876544 D3 Kế toán Thủ trưởng Tài liệu F Công ty Hải Hà BẢNG CÂN ĐỐI KHO Kho Thành phẩm Tính từ ngày đến ngày Stt Tên vật tư Mã Đơn Tồn đầu kỳ Lượng Lượng Tồn cuối kỳ hàng hoá vị xuất nhập 1 Kẹo Chôcôla A09 Kg 120 200 150 70 2 Bánh quy bơ A14 Kg 80 20 0 60 3 Kẹo sữa C16 Kg 40 250 300 90 5.2. Hệ thống thông tin " Quản lý công chức" Một cơ quan hành chính sự nghiệp cần tin học hoá việc quản lý cán bộ công chức của cơ quan mình. Qua nghiên cứu hiện trạng phân tích viên đã nắm được các thông tin sau:
  33. 35 Mỗi công chức được cơ quan quản lý các thông tin sau đây: Họ tên, đơn vị công tác, giới tính, ngày sinh, nơi sinh, địa chỉ, dân tộc, tôn giáo, chính trị, trình độ văn hóa, ngoại ngữ, loại hình đào tạo, cựu chiến binh, ngày vào cơ quan, ngày vào biên chế, cha mẹ, vợ chồng, con, khen thưởng, kỷ luật. Trong lý lịch, quản lý: Nơi sinh chỉ quản lý cấp huyện và tỉnh. Địa chỉ được phân làm hai loại: Nếu địa chỉ thành thị thì quản lý số nhà, đường phố. Nếu địa chỉ nông thôn thì quản lý xã, huyện. Cha mẹ bao gồm Tên, nghề nghiệp, cơ quan, chức vụ của cha và mẹ. Vợ chồng bao gồm: Tên, ngày sinh, nghề nghiệp, cơ quan và chức vụ của vợ hay chồng. Con bao gồm: Tên, ngày sinh, nghề nghiệp của từng đứa con. Chính trị bao gồm Đoàn viên, Đảng viên. Nếu là Đảng viên thì quản lý: Ngày VĐ, ngày CT, nơi vào Đảng (Tỉnh). Đi nước ngoài vào thời gian nào, nước đi. Cựu chiến binh: Ngày NN, ngày XN, binh chủng, cấp bậc khi xuất ngũ. Công việc tin học hoá hệ thống nhằm đáp ứng: . Bất kỳ lúc nào cũng có thể trả lời các thông tin chính xác về tình hình công tác, lí lịch của một công chức. . Thống kê theo mọi lĩnh vực. 5.3. Hệ thống thông tin "Quản lý đào tạo" Một trường đại học dân lập cần tin học hoá việc quản lý đào tạo của trường, qua nghiên cứu hiện trạng, một phân tích viên đã nắm được các thông tin như sau: Trường đại học dân lập này chỉ gồm một bộ máy quản lý, còn toàn bộ giáo viên phải thuê từ các trường đại học khác và các viện nghiên cứu dưới danh nghĩa cộng tác viên. Trường đã lập sẵn một hồ sơ các cộng tác viên gồm tên, tuổi, giới tính, địa chỉ, trình độ chuyên môn (cử nhân, thạc sĩ, tiến sĩ). Tùy theo trình độ, cộng tác viên được trả một thù lao (tính theo tiết) khác nhau. Trường có một số lớp, mỗi lớp có thể có số sinh viên khác nhau. Các môn học được tuân theo một chương trình đào tạo được Bộ GD & ĐT phê duyệt về nội dung chuyên môn và số tiết cần thiết. Trường phải thuê một số phòng học ở nhiều nơi nên phải có một hồ sơ về các phòng học bao gồm số phòng và địa chỉ. Việc xếp lịch học cho các lớp phải phù hợp với số chổ của mỗi phòng học. Đầu năm học, hội đồng nhà trường lập một bảng phân công giảng dạy gồm thầy nào, dạy lớp nào, môn nào. Còn giáo vụ phải xếp lịch học và phòng học. Dĩ nhiên một thầy có thể dạy nhiều môn và nhiều lớp khác nhau. Do thời gian của giáo viên phụ thuộc rất nhiều thời gian công tác của họ tại cơ quan, nên thời khóa biểu chỉ có thể lập và điều chỉnh theo từng tuần. Giáo viên phải đề đạt yêu cầu của họ vào thứ năm hàng tuần để kịp làm lịch học cho tuần sau. Trong thời khóa biểu sẽ chỉ ra thứ mấy, từ tiết nào đến tiết nào, ai dạy lớp nào, môn nào, ở phòng học nào. Trong thời khóa biểu phát cho các lớp, mỗi ô của thời khóa biểu đều có để một khoảng trống để giáo viên ký xác nhận giảng dạy. Vì vậy những bản này cũng gọi là phiếu giảng dạy. Cuối tuần các lớp phải nộp lại cho giáo vụ phiếu giảng dạy này.
  34. 36 Hàng tháng căn cứ vào bảng xác nhận, nhà trường làm bảng thanh toán cho giáo viên trên cơ sở số giờ thực dạy. Đôi khi cũng phải lập bảng thanh toán theo yêu cầu của giáo viên hay hiệu trưởng trong những trường hợp đặc biệt, ví dụ như giáo viên chấm dứt hợp đồng giảng dạy giữa tháng. Cuối mỗi học kỳ, giáo vụ căn cứ vào bảng xác nhận để xác định số giờ đã dạy của mỗi môn. Nếu môn nào của lớp nào dạy chưa đủ thời gian thì lập kế hoạch dạy bù. Ngoài việc quản lý và thanh toán giảng dạy, hệ thống thông tin này còn phải đáp ứng được các thông tin về giáo viên, học sinh, môn học, các phòng học cơ hữu và các phòng học thuê mướn của trường. 6. Phân tích hệ thống về chức năng Để có thể mô tả các kết quả nghiên cứu qua từng giai đoạn và mô tả các chức năng nghiệp vụ của hệ thống, người phân tích cần sử dụng một số phương tiện và mô hình được nói dưới đây. 6.1 Các mức độ diễn tả chức năng Chức năng được nói ở đây là các chức năng xử lý thông tin trong các hệ thống thông tin quản lý. Tuỳ theo ngữ cảnh mà việc mô tả các chức năng của hệ thống được thể hiện ở nhiều mức độ khác nhau. 6.1.1. Mô tả vật lý và mô tả logic Mô tả chức năng ở mức độ vật lý đòi hỏi phải nói rõ mục đích và cách thực hiện của quá trình xử lý, nghĩa là phải trả lời câu hỏi: làm gì? và làm như thế nào?. Sự mô tả chức năng ở mức độ logic lại đơn giản hơn, chỉ cần trả lời đầy đủ câu hỏi làm gì? Nghĩa là chỉ diễn tả mục đích, bản chất của quá trình xử lý mà không cần quan tâm đến các yếu tố về thực hiện, cài đặt như phương pháp, phương tiện, tác nhân, thời điểm, thời gian, Thông thường mô tả vật lý được sử dụng trong giai đoạn khảo sát sơ bộ một hệ thống có sẵn, còn mô tả logic được sử dụng trong giai đoạn thiết kế. Có thể thấy sự thay đổi mức độ mô tả vật lý/logic trong hình dưới đây, trong đó các bước chuyển đổi (1) và (2) thuộc giai đoạn phân tích còn bước chuyển đổi (3) thuộc giai đoạn thiết kế. Một trình tự mô hình hoá hệ thống Mô tả HT cũ Mô tả HT mới làm như thế làm như thế nào? nào? (1) (3 ) Mức vật lý Mức logic (2 Mô tả HT cũ ) Mô tả HT mới làm gì? làm gì?
  35. 37 6.1.2. Mô tả đại thể và mô tả chi tiết Ở mức độ đại thể một chức năng được mô tả dưới dạng hộp đen. Nội dung bên trong hộp đen không được chỉ rõ mà chỉ mô tả các thông tin vào và ra hộp đen đó. Ví dụ quá trình “lập hoá đơn” để xuất hàng được mô tả qua hộp đen như sau: Đơn đặt hàng Lập Phiếu xuất kho Hoá đơn Thông tin về tồn kho Ở mức độ chi tiết thì nội dung của quá trình xử lý phải được chỉ rõ hơn. Thông thường thì cần chỉ ra các chức năng con, các mối quan hệ thông tin và điều khiển giữa những chức năng đó. Nếu một chức năng có nhiều chức năng con thì để mô tả chi tiết người phân tích phải phân rã các chức năng con này thành nhiều mức. Các mức này được biểu diễn qua biểu đồ phân cấp chức năng dưới đây. 6.2. Biểu đồ chức năng nghiệp vụ BFD (Business Function Diagram) Biểu đồ chức năng nghiệp vụ là một sơ đồ hình học dùng để mô tả sự phân rã có thứ bậc các chức năng của hệ thống từ đại thể đến chi tiết. Mỗi nút trong biểu đồ là một chức năng, các chức năng này có quan hệ bao hàm với nhau và chúng được nối với nhau bằng các cung để tạo nên một cấu trúc cây. Ví dụ: Biểu đồ chức năng nghiệp vụ của hệ thống thông tin “Quản lý doanh nghiệp” Quản lý Doanh nghiệp Quản lý Quản lý Quản lý Nhân sự Vật tư Tài chính Tài sản Thiết Lương Kế cố định bị tiền toán Có hai dạng để biểu diễn mô hình chức năng nghiệp vụ là dạng phân cấp chức năng và dạng phân tích công ty. 6.2.1. Xây dựng BFD theo phân cấp chức năng: Để hình thành biểu đồ phân cấp chức năng người ta phân chia một chức năng của một bộ phận thành các chức năng con và dựa trên nguyên tắc sau: - Tính thực chất của mỗi chức năng: mỗi chức năng được phân rã từ một chức năng ở mức trên phải là một bộ phận thực sự tham gia thực hiện chức năng đã phân rã ra nó.
  36. 38 Do đó, để hình thành một mức tiếp theo, người phân tích phải đặt câu hỏi “để hoàn thành chức năng này thì các chức năng con nào sẽ được thực hiện?” - Tính đầy đủ của mỗi chức năng con: Việc thực hiện các chức năng ở mức kế tiếp phải bảo đảm thực hiện được chức năng mức trên đã phân rã ra chúng - Bố trí, sắp xếp các chức năng: khi thiết lập biểu đồ BFD không nên có quá 6 mức, một hệ thống nhỏ thông thường có khoảng 3 mức. Mỗi chức năng trong mô hình có thể có nhiều chức năng con. Ở mỗi mức các chức năng con nên đặt trên cùng một hàng. Sơ đồ nên cân bằng, nghĩa là các chức năng cùng một mức nên có kích thước và độ phức tạp tương đương nhau. - Đặt tên cho chức năng: Mỗi chức năng nên có một tên riêng đơn giản nhưng thể hiện bao quát các chức năng con và phản ánh được thực tế nghiệp vụ của nó. - Mô tả chi tiết chức năng lá: các chức năng cuối cùng của một BFD được gọi là chức năng lá. Các chức năng này thực hiện trực tiếp công việc của hệ thống nên nó cần phải được mô tả một cách trình tự và chi tiết. Ví dụ: Một BFD về “Quản lý trông giữ xe” Quản lý trông giữ xe 1. Nhận xe 2. Trả xe 3. Giải quyết sự cố 1.1 Nhận dạng xe 2.1 Kiểm tra vé 3.1 Kiểm tra sổ gửi 1.2 Ktra chổ trống 2.2 Đối chiếu vé 3.2 Ktra hiện trường 1.3 Ghi vé xe 2.3 Thanh toán 3.3 Lập biên bản 1.4 Ghi số xe vào 2.4 Ghi số xe ra 3.4 Thanh toán sự cố 6.2.2. Xây dựng BFD theo dạng công ty: BFD dạng công ty được sử dụng để mô tả chức năng tổng quát của tổ chức, thường được sử dụng trong các hệ thống lớn, đòi hỏi phải phân tích sao cho dữ liệu phải được xử lý và sử dụng chung trong toàn bộ hệ thống. Để mô tả BFD dạng công ty phân tích viên phải xác định tất cả các chức năng nghiệp vụ ở mức cao nhất của tổ chức và chú ý rằng bất kỳ dự án nào cũng là bộ phận của một hoặc nhiều chức năng cao nhất này. Ví dụ: Biểu đồ chức năng nghiệp vụ mức cao nhất (dạng công ty) của hệ thống thông tin quản lý đào tạo trong một trường đại học.
  37. 39 Quản lý Đào tạo Quản lý Quản lý Quản lý Sinh viên Giáo viên Môn học Chú ý: cần phân biệt một BFD với một sơ đồ tổ chức của một cơ quan. Sơ đồ tổ chức của một cơ quan mô tả các bộ phận, các tổ chức hợp thành của cơ quan đó nên cũng có dạng hình cây. Sơ đồ tổ chức thường dùng để mô tả luồng thông tin đi từ bộ phận này đến bộ phận khác trong tổ chức. 7. Mô hình hoá các tiến trình của hệ thống Trong quá trình phân tích, một yêu cầu thông tin cần phải được mô tả khi hệ thống vận hành đó là các luồng dữ liệu đi từ vị trí này đến vị trí khác của tổ chức. Hai loại biểu đồ thường được các phương pháp phân tích thiết kế hệ thống sử dụng là sơ đồ ngữ cảnh và các loại biểu đồ luồng dữ liệu. Chúng thể hiện việc chuyển tải, lưu trữ thông tin trong hệ thống, giúp phân tích viên hình dung được các loại thông tin được sử dụng và lưu chuyển như thế nào. 7.1. Sơ đồ ngữ cảnh 7.1.1. Các biểu tượng để trình bày tài liệu Điểm công Điểm công Tài liệu Tài liệu tác trong tác ngoài lưu trữ Nhiệm vụ hoặc CSDL Luồng dữ liệu chức năng Sự kiện 7.1.2. Sơ đồ ngữ cảnh: Sơ đồ ngữ cảnh là một sơ đồ hình học được xây dựng theo điểm công tác nào đó dùng để làm rõ mối quan hệ thông tin giữa các điểm công tác của hệ thống. Điểm trung tâm là điểm đang xét, các điểm công tác khác có liên hệ thông tin với điểm trung tâm sẽ được mô tả bằng mũi tên và ghi chú kèm theo. Ví dụ: Sơ đồ ngữ cảnh của bài toán "quản lý kho". Điểm trung tâm là Người quản lý kho
  38. 40 Thủ kho Phiếu Xuất/Nhập Kế toán Đại lý Phiếu Xuất Phiếu Xuất/Nhập Người quản lý kho Phiếu Xuất/Nhập Báo cáo Phiếu Nhập Phân xưởng Lãnh đạo Nhà cung cấp 7.2. Biểu đồ luồng dữ liệu DFD Biểu đồ luồng dữ liệu (DFD-Data Flow Diagram ) là một sơ đồ hình học nhằm diễn tả các luồng tài liệu thông qua các chức năng của hệ thống. Những hỗ trợ của DFD - Xác định yêu cầu của người dùng. - Lập kế hoạch và minh hoạ những phương án cho phân tích viên và người dùng xem xét. - Trao đổi giữa những phân tích viên và người dùng trong hệ thống. - Làm tài liệu đặc tả yêu cầu hình thức và đặc tả thiết kế hệ thống. Các thành phần của một DFD: - Luồng dữ liệu (Data flow): mô tả dữ liệu di chuyển từ một vị trí này đến một vị trí khác, một DFD được mô tả bởi một mũi tên với tên dữ liệu kèm theo, chiều của mũi tên chỉ hướng di chuyển của dữ Đại lý liệu. Tên của luồng dữ liệu thể hiện trạng thái logic của thông tin chứ không phải dạng vật lý Phiếu Xuất của nó. Người quản Ví dụ: Một luồng dữ liệu là lý kho “Phiếu xuất” đi từ tác nhân trong “Người quản lý kho” đến tác nhân ngoài “Đại lý”
  39. 41 - Kho dữ liệu (Data store): là các dữ liệu được lưu giữ tại một nơi nào đó trong hệ thống. Về mặt vật lý, kho dữ liệu là các tập tin dữ liệu trong máy tính hoặc những tập tài liệu được lưu trữ ở văn phòng. Do đó một kho dữ liệu có thể biểu diễn các dữ liệu được lưu trữ ở nhiều vị trí không gian khác nhau, như các thư mục khác nhau, các máy tính khác nhau, Kho dữ liệu là các dữ liệu được lưu giữ trên giá mang nó, vì vậy người ta thường lấy tên của vật mang nó làm tên của kho dữ liệu. Ví dụ: “ Phiếu xuất kho”, “Đơn đặt hàng” D Phiếu xuất kho Đơn đặt hàng D - Tiến trình (Proccess) hoặc chức năng: là một công việc hoặc một hành động có tác động lên dữ liệu làm cho chúng di chuyển, thay đổi hoặc được phân phối. Chỉ được xem là một tiến trình trong DFD nếu chúng nhận thông tin đầu vào và có thông tin đầu ra. - Ví dụ: Tiến trình “Làm hoá đơn” trong hệ thống Làm hoá đơn thông tin “Quản lý Kho hàng” Làm hoá Trong SADT một tiến trình còn đơn được ký hiệu bởi một vòng tròn - Tác nhân ngoài (extenal entity): Tác nhân ngoài còn được gọi là đối tác, là một cá nhân hoặc một tổ chức ở bên ngoài lĩnh vực nghiên cứu của hệ thống, có thể hiểu tác nhân ngoài như là điểm công tác ngoài. Nghĩa là nơi thu nhận, nơi phát sinh thông tin nhưng không phải là nơi lưu trũ chúng. Tác nhân ngoài là phần sống còn của hệ thống, bởi vì chúng là nguồn cung cấp thông tin cho hệ thống và là nguyên nhân kích hoạt hệ thống. Ví dụ: một luồng dữ liệu là “Phiếu nhập” đến một tác nhân ngoài là “Nhà cung cấp”. Nhà cung cấp Phiếu nhập - Tác nhân trong (intenal entity): tương tự như điểm công tác trong. Nghĩa là, có thể là nơi thu nhận, nơi phát sinh và nơi lưu trữ và xử lý thông tin. Ví dụ: một luồng dữ liệu là “Phiếu xuất/nhập” đến một tác nhân trong là “Thủ kho” Thủ kho Phiếu nhập/xuất
  40. 42 Các chú ý khi xây dựng một DFD Để xây dựng một DFD người ta dựa vào biểu đồ chức năng nghiệp vụ và sơ đồ ngữ cảnh. Sử dụng BFD để xác định các tiến trình theo từng mức cho DFD. Bởi vì BFD được thực hiện phân rã thành các mức nên nó dùng để chỉ ra các mức tương ứng trong DFD. Sử dụng sơ đồ ngữ cảnh để nhận dạng ra được các luồng dữ liệu vào và ra hệ thống, các tác nhân ngoài của hệ thống. Tuy nhiên đê kiểm tra tính đúng đắn của các thành phẩm trong một DFD cần phải dựa vào các đặc trưng dưới đây. Tiến trình: - Không một tiến trình nào chỉ có cái vào mà không có cái ra. Nếu một đối tượng nào đó mà chỉ có cái vào thì đó có thể là một tác nhân (đích-thu nhận thông tin). - Không một tiến trình nào chỉ có cái ra mà không có cái vào. Nếu một đối tượng nào đó mà chỉ có cái ra thì đó có thể là một tác nhân (nguồn-phát sinh thông tin). - Cái vào của một tiến trình phải khác với cái ra của tiến trình đó. - Tên một tiến trình phải là một mệnh đề chỉ hành động. Kho dữ liệu: - Tên một kho dữ liệu phải là một mệnh đề danh từ. - Dữ liệu không thể di chuyển trực tiếp từ một kho dữ liệu này đến một kho dữ liệu khác. - Không thể di chuyển trực tiếp dữ liệu từ một tác nhân đến một kho dữ liệu. - Không thể di chuyển trực tiếp dữ liệu từ một kho dữ liệu đến một tác nhân. Tác nhân: - Tên một tác nhân phải là một mệnh đề danh từ. - Dữ liệu không thể di chuyển trực tiếp từ một tác nhân này đến một tác nhân khác. Luồng dữ liệu: - Tên một luồng dữ liệu phải là một mệnh đề danh từ. - Một luồng dữ liệu chỉ có một hướng chỉ hướng di chuyển của dữ liệu. - Một luồng dữ liệu không thể quay lui nơi nó vừa đi khỏi. - Một luồng dữ liệu đi vào một kho có nghĩa là kho được cập nhật dữ liệu. - Một luồng dữ liệu đi ra khỏi một kho có nghĩa là kho dữ liệu được đọc. 7.3. Kỹ thuật phân mức Căn cứ vào việc phân rã chức năng của một BFD, chúng ta có thể mô tả một DFD theo nhiều mức khác nhau. Mỗi mức được thể hiện trong một hoặc nhiều trang. . Mức 0: còn gọi là mức bối cảnh, chỉ gồm một DFD, trong đó chỉ có một chức năng duy nhất (chức năng tổng quát của hệ thống) trao đổi các luồng thông tin với các đối tác. Tên của trang mức 0 là tên của hệ thống. . Mức 1: còn gọi là mức đỉnh, cũng chỉ gồm một DFD, và các mức 2,3,4, mỗi mức gồm nhiều DFD được thành lập như sau: . Cứ mỗi chức năng ở mức trên, ta thành lập một DFD ở mức dưới, gọi là biểu DFD định nghĩa chức năng đó theo cách sau:
  41. 43 - Phân rã chức năng đó thành nhiều chức năng con; - Vẽ lại các luồng dữ liệu vào và ra chức năng trên, nhưng bây giờ phải vào hoặc ra chức năng con thích hợp; - Nghiên cứu các quan hệ về dữ liệu giữa các chức năng con, nhờ đố bổ sung các luồng dữ liệu nội bộ hoặc các kho dữ liệu nội bộ. . Các chức năng được đánh số theo ký pháp chấm để tiên theo dõi vệt triển khai từ trên xuống. Tổng quát, có thể định nghĩa một cách quy nạp biểu đồ luồng dữ liệu các mức như sau: Biểu đồ luồng dữ liệu mức n là biểu đồ luồng dữ liệu nhận được từ việc phân rã một tiến trình thuộc biểu đồ luồng dữ liệu mức n-1. Như vậy biểu đồ luồng dữ liệu ở mỗi mức là tập hợp các DFD ở mức đó. Các mức trong quá trình phân rã biểu đồ luồng dữ liệu 0 mức 0 3.0 Biểu đồ phân rã mức 0 1.0 2.0 3.1 1.0 2.3 3.2 2.1 2.2 Biểu đồ phân rã mức 1 2.1 2.2.2 Biểu đồ phân rã mức 2 2.2.1 2.2.3
  42. 44 Ví dụ: Xét hệ thống thông tin “Quản lý tín dụng” có BFD như sau: Quản lý tín dụng Cho vay Thu nợ Nhận đơn Duyệt vay Trả lời đơn Xác định kỳ Xử lý nợ trả Xử lý nợ trả hạn trả trong hạn ngoài hạn Hãy xây dựng các DFD của các mức được phân rã từ BFD đã cho. . Mức 0: chức năng tổng quát của hệ thống là: “Quản lý tín dụng”. Tác nhân của hệ thống là “Khách vay”. Ta có DFD ở mức bối cảnh như sau: Trả lời đơn vay Đơn vay Khách vay Quản lý tín dụng Nợ hoàn trả DFD ở mức 0 (mức bối cảnh) . Mức 1: chức năng ở mức 0 được phân rã thành 2 chức năng con là “Cho vay” và “Thu nợ”. Ngoài ba luồng dữ liệu đã có ở chức năng 0 phải được bảo toàn, thì ta thấy luồng dữ liệu trao đổi giữa hai chức năng “Cho vay” và “Thu nợ” không trực tiếp mà phải thông qua một kho dữ liệu đó là “Sổ nợ”. Ta có DFD mức đỉnh như hình dưới đây.
  43. 45 Trả lời đơn vay 1.Cho vay Đơn vay Sổ nợ Khách vay 2. Thu nợ Nợ hoàn trả . DFD ở mức 1 (mức đỉnh) Mức 2: chức năng “Cho vay” ở mức 1 được phân rã thành 3 chức năng con là “Nhận đơn”, “Duyệt vay” và “Trả lời đơn”; chức năng “Thu nợ” ở mức 1 được phân rã thành 3 chức năng con là “Xác định kỳ hạn trả”, “Xử lý nợ trả trong hạn” và “Xử lý nợ trả ngoài hạn”. Để bảo toàn các luồng dữ liệu vào/ra và thêm các luồng dữ liệu nội bộ ta thành lập được hai DFD định nghĩa cho hai chức năng 1 và 2 như sau: Đơn đã kiểm tra Đơn vay Khách vay 1.1 Nhận đơn 1.2 Duyệt vay Đơn đã duyệt Sổ nợ Từ chối vay 1.3 Trả lời đơn Đáp ứng vay DFD ở mức 2 (định nghĩa chức năng 1: Chovay)
  44. 46 Nợ trả trong hạn 2.2 Xử lý nợ trả trong hạn Nợ hoàn trả Khách vay 2.1 Xác định kỳ hạn trả Sổ nợ 2.3 Xử lý nợ trả ngoài hạn Nợ trả ngoài hạn DFD ở mức 2 (định nghĩa chức năng 2: Thu nợ) Chú ý: - Quá trình phân rã thành các mức không thể kéo dài mãi mà phải dừng sau một số mức. Ta quyết định dừng việc phân rã khi có những biểu hiện sau: . Các chức năng được phân rã cuối cùng khá đơn giản . Nếu phân rã tiếp sẽ vượt ra ngoài câu hỏi “Làm gì?” và bắt đầu sang câu hỏi “Làm như thế nào?” - Số mức vào khoảng 7±2 (tuỳ thuộc hệ thống là đơn giản hoặc phức tạp) Hết chương 2
  45. 47 Chương 3 MÔ HÌNH QUAN NIỆM CỦA HỆ THỐNG THÔNG TIN I. Giới thiệu về mô hình quan niệm Mô hình quan niệm của một hệ thống thông tin được thiết lập từ hai mô hình liên quan đến nhau là mô hình quan niệm về dữ liệu và mô hình quan niệm về xử lý. Mô hình quan niệm về dữ liệu: là sự mô tả toàn bộ dữ liệu của hệ thống, những mô tả này độc lập với các lựa chọn môi trường cài đặt, là công cụ cho phép người phân tích thể hiện dữ liệu của hệ thống ở mức quan niệm. Mô hình có thể mô tả bằng ngôn ngữ tự nhiên hoặc bằng hình vẽ. Mô hình quan niệm về xử lý: mô tả toàn bộ các quy tắc xử lý được áp dụng cho dữ liệu của hệ thống. Mô hình quan niệm cũng là cơ sở để trao đổi giữa những người phân tích thiết kế hệ thống. II. Mô hình thực thể-mối quan hệ (mô hình ER) 1. Ý nghĩa của mô hình Mô hình ER (Entity Relationship) do Peter Chen đề xuất năm 1976, được sử dụng rộng rãi từ năm 1988. ANSI đã chọn nó làm mô hình chuẩn cho IRDS. Mô hình ER là một cách để mô tả thế giới thực gần gủi với quan niệm và cách nhìn nhận bình thường. Mô hình này là một mô tả logic chi tiết dữ liệu của một tổ chức hoặc một lĩnh vực nghiệp vụ, nó còn là công cụ để phân tích thông tin nghiệp vụ. Mô hình được sử dụng rộng rãi trong các phần mềm thiết kế như ER Designer CASE (Chen và Associates 1988), trong các phần mềm trợ giúp thiết kế bằng máy tính. 2. Các thành phần của mô hình ER Mô hình ER có các thành phần cơ bản sau: - Các tập thực thể - Các mối quan hệ giữa các thực thể - Các thuộc tính của các thực thể và các mối quan hệ - Các mối quan hệ để mô tả kiểu kết nối giữa các thực thể (hoặc các bản số của các thực thể thông qua các mối quan hệ tương ứng) 2.1. Thực thể và tập thực thể Một tập thực thể là mô hình của một lớp đối tượng cụ thể hoặc trừu tượng của thế giới thực. Mỗi thể hiện trong một tập thực thể được gọi là một thực thể hoặc cá thể (bản thể) của tập thực thể đó. Các đối tượng trong một tập thực thể tồn tại khách quan và độc lập tương đối lẫn nhau. Sự tồn tại của chúng không phụ thuộc vào hoạt động của hệ thống và chúng liên hệ với nhau thông qua tổ chức của hệ thống hoặc hoạt động của hệ thống. Một thực thể được nhận diện bằng một số các đặc trưng của nó gọi là thuộc tính. Như vậy thuộc tính (Attribute) là các yếu tố thông tin cụ thể để nhận biết một tập thực thể. 47
  46. 48 Mỗi tập thực thể được đặc trưng bởi một tên và danh sách các thuộc tính của nó. Người ta dùng một trong các ký hiệu sau để mô tả một tập thực thể. Thuộc tính - Thuộc tính 1 - Thuộc tính 2 hoặc - - Thuộc tính N - Thuộc tính Thuộc tính Ví dụ: Mã số nhân viên, họ tên, ngày sinh, đơn vị, nơi sinh là các yếu tố thông tin tạo thành tập tập thực thể NHÂN VIÊN. §¬n vÞ M· nh©n viªn Nh©n viªn - M· nh©n hoặc viªn NHÂN VIÊN - Hä Tªn - Ngµy sinh - §¬n vÞ Hä Tªn Ngµy sinh 2.2. Thuộc tính Thuộc tính của một thực thể có thể phân thành các loại chủ yếu sau: thuộc tính đơn, thuộc tính lặp (đa trị), thuộc tính định danh. 2.2.1. Thuộc tính đơn Thuộc tính đơn là thuộc tính mà giá trị của nó không thể phân tách được trong các xử lý theo một ý nghĩa tương đối nào đó. Ví dụ: Thuộc tính HỌTÊN là thuộc tính đơn trong hệ thống thông tin “Quản lý nhân sự” bởi vì trong hệ thống này người ta không có nhu cầu tách thuộc tính HỌTÊN thành hai thuộc tính HỌLÓT và TÊN, tuy nhiên điều này không còn đúng nữa khi ở trong hệ thống thông tin “Quản lý Đào tạo” 2.2.2. Thuộc tính phức hợp Thuộc tính phức hợp là thuộc tính được tạo từ những thuộc tính đơn khác nhau. Ví dụ: Thuộc tính Ngày sinh là gộp của 3 thuộc tính ngày, tháng và năm sinh. Thuộc tính HỌTÊN được tạo từ hai thuộc tính HỌLÓT và TÊN 2.2.3. Thuộc tính lặp (đa trị): Thuộc tính có thể nhận nhiều hơn một giá trị đối với mỗi thực thể. Ví dụ: KỸNĂNG, TRÌNHĐỘNGNGỮ là các thuộc tính lặp trong tập thực thể NHÂNVIÊN vì mỗi nhân viên có thể có nhiều kỹ năng và trình độ ngoại ngữ khác nhau. 2.2.4. Thuộc tính định danh (khóa) 48
  47. 49 Thuộc tính định danh là một hoặc một số tối thiểu các thuộc tính của một tập thực thể mà giá trị của nó cho phép phân biệt các thực thể khác nhau trong tập thực thể. Trong một tập thực thể có thể có nhiều thuộc tính định danh khác nhau. Thông thường người ta chọn thuộc tính định danh là một thuộc tính đơn duy nhất. Ví dụ: Trong tập thực thể NHÂNVIÊN thuộc tính MÃNV, SỐCMND là các thuộc tính có thể làm thuộc tính định danh. Để tiện cho việc tổ chức dữ liệu và xử lý sau này, khi chọn thuộc tính định danh nên chú ý đến các yếu tố sau: . Chọn định danh sao cho giá trị của nó không thay đổi trong suốt vòng đời của thực thể. Ví dụ, SỐCMND ít khi được chọn làm thuộc tính định danh vì mỗi nhân viên có thể có nhiều chứng minh nhân dân khác nhau và có thể không có chứng minh nhân dân. . Chọn định danh phải bảo đảm giá trị của nó đối với thực thể thuộc tập thực thể phải khác rỗng (NOT NULL). Nếu định danh là hợp bởi một số thuộc tính khác nhau thì phải bảo đảm mỗi thuộc tính thành phần phải khác rỗng. . Tránh sử dụng các định danh áp đặt mà cấu trúc của nó có thành phần chỉ sự phân loại, địa điểm. 3. Mối quan hệ giữa các tập thực thể 3.1 Mối quan hệ Khái niệm tập thực thể với các thuộc tính không nói lên được mối liên quan giữa các tập thực thể với nhau. Mối quan hệ là sự mô tả sự liên hệ giữa các phần tử của các tập thực thể với nhau, chúng là các gắn kết các tập thực thể với nhau. Chúng ta có thể diễn tả khái niệm mối quan hệ giữa các tập thực thể một cách hình thức như sau: Mối quan hệ R giữa các tập thực thể E1, E2, , Ek là một tập con của tích Descartes F1x F2x x Fn , trong đó Fi∈{E1, E2, , Ek}. Một thể hiện của mối quan hệ R là một tập các n-bộ (e1,e2, ,en), trong đó ei ∈Fi (i=1 n). Nếu n-bộ (e1, e2, , en) là một thể hiện của R thì ta nói rằng e1,e2 , , en có mối quan hệ R với nhau. Ta có thể phân loại các mối quan hệ giữa các tập thực thể như sau: Mối quan hệ giữa các tập thực thể có thể là một mối quan hệ sở hữu hoặc phụ thuộc hoặc mô tả sự tương tác giữa chúng. Một mối quan hệ có thể có thuộc tính riêng của nó. Để mô tả một mối quan hệ người ta dùng một hình ellip trong đó ghi tên của mối quan hệ và các thuộc tính riêng của nó nếu có. Sinh viên Điểm thi Môn học Mã SV Lần Mã MH Họ SV Điểm Tên MH Tên SV Số ĐVHT Ngày sinh 49
  48. 50 Số Mã SV hoặc Sinh viên Điểm Môn học Họ SV Mã Tên Ngàysin h Tên Lần Điểm Khi định nghĩa một mối quan hệ cần phải nêu ý nghĩa của nó. Ví dụ: (e1,e2) ∈ điểm thi có ý nghĩa: sinh viên e1 thi một môn học e2 lần thứ mấy và được bao nhiêu điểm. Một tập thực thể có thể tham gia nhiều mối quan hệ và giữa hai tập thực thể có thể có nhiều mối quan hệ khác nhau. Ví dụ: Giữa hai tập thực thể Sinh viên và Môn học có hai mối quan hệ là ĐKMH và Điểm thi. Chiều của mối quan hệ: là số tập thực thể tham gia vào mối quan hệ đó. Mối quan hệ một chiều (đệ quy-phản xạ): mối quan hệ giữa các thực thể của cùng một tập thực thể. Ký hiệu: Ví dụ: Người Nhân viên Mã Kết Mã NV Quản lý Họ hôn Họ tên Tên Ngày sinh Mối quan hệ hai chiều: là sự kết nối giữa hai tập thực thể, còn gọi là mô hình nhị nguyên. Mối quan hệ này thường được sử dụng trong thực tế. Ví dụ: NGƯỜI Sở NHÀ Hoten hữu Sốnhà SoCM Đườngphố Dtich Mối quan hệ nhiều chiều: mối quan hệ có số tập thực thể tham gia lớn hơn 2, còn gọi là mô hình đa nguyên. Trong thực tế, người ta thường dưa các mối quan hệ nhiều chiều về mối quan hệ hai chiều. 50
  49. 51 Giáo viên Sinh viên Họtên Dạy Họtên QQuán QQuán Môn học Tên MH Số tiết Mối quan hệ ba chiều Mối quan hệ Dạy có ý nghĩa: (a,b,c) ∈ Dạy : Giáo viên a (Họtên, QQuán) Dạy Sinh viên b (Họtên, QQuán) Môn học c (Tên MH, Số tiết). M«n häc Gi¸o viªn M· MH M· GV Tªn MH Tªn GV TKB Ngµy t t TiÕt häc p häc M· ngµy M· TH M· phßng Tªn ngµy Giê B§ Tªnphßng Mối quan hệ năm chiều (a,b,c,d,e) ∈ TKB : Giáo viên a Dạy Sinh viên b Môn học c tại Phòng học d vào tiết thứ e. 3.2. Bản số Xác định mối quan hệ giữa các tâp thực thể như ở trên chưa nói lên độ phức tạp của chúng. Chẳng hạn, khó có thể biết được mỗi thực thể của tập thực thể này có liên hệ với bao nhiêu thực thể của tập thực thể kia thông qua mối quan hệ. Để diễn tả tần suất xuất hiện của các phần tử của tập thực thể trong một mối quan hệ người ta dùng một khái niệm là bản số. Bản số (Cardinality) là một cặp số nguyên (i,j), chứa số tối thiểu và số tối đa trường hợp có thể có của các phần tử của tập thực thể tham gia vào mối quan hệ. Bản số của tập thực thể nào thì được ghi trên nhánh của tập thực thể đó. Nếu i,j nhận giá trị lớn hơn 1 thì quy ước thay chúng bởi ký tự n. Ví dụ Sinh viên Lớp học Mã SV (1,1) học (1,n) Mã lớp Họ tên Tên lớp Bản số (1,1): Một sinh viên học ít nhất là 1 lớp và nhiều nhất là 1 lớp. 51
  50. 52 Bản số (1,n): một lớp có ít nhất là 1 sinh viên và nhiều nhất là n sinh viên. Các ví dụ: a. Giả sử một người phải ở và chỉ ở trong một nhà, khi đó bản số của các tập thực thể NGƯỜI và NHÀ qua mối quan hệ Ở là (1,1) (1,n) (1,1) (1,n) Người ở Nhà - Họ tên Năm - Số nhà - Số - Đường CMND - Dtích b. Bản số của mối quan hệ Kết hôn của công dân Việt nam (0,1) (0,1) Nhân viên Người Kết Quản Mã NV Họ tên hôn Họ tên Số CMND Quê quán (0,1) Gtính (0,1) c. Giả sử mọi vật tư của công ty phải được chứa trong các kho hàng và một vật tư chỉ ở trong một kho mà thôi, khi đó bản số của các tập thực thể VÂT TƯ và KHO qua mối quan hệ Chứa trong là (1,1) (1,n) (1,1) VẬT TƯ (1,n) KHO Chứa trong MaVT Tenkho TenVT Đchi d. Bản số của các tập thực thể THẦY và TRÒ qua mối quan hệ Dạy học THAY (1,n) Dạy (1,n) TRÒ MaGV MaSV TenGV HTen Các trường hợp có thể xảy ra của các cặp bản số: (1,1) (1,1) hoặc (0,1) (0,1) hoặc (0,1) (1,1) (1,1) (1,n) hoặc (0,1) (1,n) hoặc (1,1) (0,n) (1,n) (1,n) hoặc (0,n) (1,n) hoặc (1,1) (0,n) 3.3. Bản số trực tiếp giữa các mối quan hệ 52
  51. 53 Trong một số phương pháp phân tích người ta không biểu diễn một cách rõ ràng bản số của một tập thực thể trong mối quan hệ mà chỉ biểu diễn bản số trực tiếp giữa hai tập thực thể. Bản số trực tiếp giữa hai tập thực thể: Giả sử tập thực thể E1 có bản số trong mối quan hệ là (i1:j1); tập thực thể E2 có bản số trong mối quan hệ là(i2:j2). Khi đó bản số trực tiếp giữa hai tập thực thể E1,E2 là (j2:j1). Người ta dùng các ký hiệu sau để mô tả bản số trực tiếp của hai tập thực thể: (1:1) (n:n) (1:n) hoặc (1:1) (n:n) (1:n) hoặc sử dụng các ký hiệu : , , tương ứng với: 0, 1, n Ví dụ: (n:n) Sinh viên Khóa học Mối quan hệ ISA (cha-con): Cho hai tập thực thể A và B. Ta nói A có mối quan hệ ISA với B nếu mỗi thực thể trong A cũng là một thực thể trong B (còn gọi là A là con của B). Ký hiệu TTThể con ISA TTThể cha - Ttinh1 - Ttinh1 - - - Ttính n - Ttính m Ví dụ: Tập thực thể NHÂNVIÊN có tập thực thể ĐẢNGVIÊN là tập thực thể con. Vậy: ĐẢNGVIÊN ISA NHÂNVIÊN 3.4. Tách một mối quan hệ đa nguyên thành các mối quan hệ nhị nguyên Trong mô hình ER người ta xem bậc (degree) của một mối quan hệ là số các tập thực thể tham gia vào mối quan hệ này. Chẳng hạn mối quan hệ bậc hai, còn được gọi là mối quan hệ nhị nguyên, là mối quan hệ giữa hai tập thực thể. Trên thực tế để đơn giản và tiện cho việc thiết kế cài đặt các CSDL, hầu hết các mối quan hệ đa nguyên đều được chuyển đổi thành các mối quan hệ nhị nguyên. Dựa vào khả năng chuyển đổi này của mối quan hệ đa nguyên, một số công cụ thiết kế CSDL chỉ cho phép sử dụng các mối quan hệ nhị nguyên. Cụ thể phương pháp chuyển đổi được thực hiện như sau. Thuật toán 3.1. Tách một mối quan hệ đa nguyên thành các mối quan hệ nhị nguyên không kèm thuộc tính. Input: Mối quan hệ R giữa các tập thực thể E1, E2, , En là mối quan hệ bậc n (n > 2). Bản số đính kèm trên cung nối tập Ei và R là (mini, maxi), với i=1, 2, , n. 53
  52. 54 Output: Các mối quan hệ nhị nguyên Method: Thay R bởi n mối quan hệ Ri (không kèm thuộc tính) giữa các tập thực thể Ei với tập thực thể E (biểu diễn mối quan hệ R), với i =1, 2, , n. Procedure Chuyen_doi_MQH_da_nguyen; 1. Mối quan hệ R được thay thế bởi tập thực thể E có cùng tập các thuộc tính; 2. For i:=1 to n do 3. Xây dựng mối quan hệ nhị nguyên Ri giữa tập thực thể Ei với tập thực thể E; 4. Gán bản số của cung nối Ri với Ei là (mini, maxi); 5. Gán bản số của cung nối Ri và E là (1, 1); 6. Endfor; End Chuyen_doi_MQH_da_nguyen; Lúc này ta hiểu rằng: mỗi thể hiện (e1, e2, , en) thuộc R (mối quan hệ cũ), với ei ∈ Ei (i = 1, 2, , n), sẽ cho tương ứng với một thực thể e thuộc E (tập thực thể mới tạo lập), sao cho các thể hiện (e, ei) thuộc Ri (các mối quan hệ mới tạo lập). Ví dụ. Hình sau đây trình bày một ví dụ về một mối quan hệ tam nguyên, và trình bày kết quả chuyển đổi thành ba mối quan hệ nhị nguyên. GIÁO VIÊNMSGV HOTEN (0,n) Dạy Thời gian (1,n) (1,n) Hình a MÔN LỚPMALOP TENLOP HỌCMSMON SOTIET 54
  53. 55 GIÁO VIÊNMSGV HOTEN (1,1) Dạy (0,n) LỊCH DẠYTHỜI (1,1) GIAN (1,1) Bố trí Gồm có (1,n) (1,n) MÔN LỚPMALOP HỌCMSMON TENLOP SOTIET Hình b Hình 3.1. Minh hoạ việc chuyển đổi một mối quan hệ tam nguyên. (a) Ví dụ về một mối quan hệ tam nguyên. (b) Kết quả chuyển đổi thành ba mối quan hệ nhị nguyên. Ví dụ trên cho thấy rằng, mối quan hệ DAY trong hình a được chuyển đổi thành tập thực thể LICHDAY đóng vai trò như một tập thực thể yếu không có khoá bộ phận và có ba mối quan hệ định danh là GIANG, BOTRI và GOMCO. Ba tập thực thể tham gia vào các mối quan hệ này là GIAOVIEN, LOP, MONHOC đều là các tập thực thể chủ của tập thực thể LICHDAY. Vì vậy, mỗi thực thể thuộc tập thực thể yếu LICHDAY được định danh bởi sự phối hợp của ba thực thể lần lượt thuộc ba tập thực thể chủ GIAOVIEN, LOP và MONHOC. Rõ ràng, ta cũng có thể sử dụng thuật toán 3.1. để phân tách một mối quan hệ nhị nguyên (đặc biệt là mối quan hệ nhị nguyên có kèm thuộc tính) thành các mối quan hệ nhị nguyên không kèm thuộc tính. 3.5. Ràng buộc phụ thuộc hàm trên mối quan hệ đa nguyên Xét mối quan hệ R là mối quan hệ đa nguyên bậc n (n > 2) giữa n tập thực thể E1, E2, , En. Khác với mối quan hệ nhị nguyên, đối với mối quan hệ đa nguyên R, ngoài ràng buộc về bản số đính kèm trên mỗi cung nối tập Ei và R là (mini, maxi), với i = 1, 2, , n; ta cần bổ sung một loại ràng buộc khác được gọi là ràng buộc phụ thuộc hàm giữa các tập 55
  54. 56 thực thể tham gia vào mối quan hệ R (gọi tắt là ràng buộc phụ thuộc hàm trên R). Một cách hình thức, ta lần lượt xét các định nghĩa sau: Thể hiện của một mối quan hệ: Gọi R là mối quan hệ đa nguyên bậc n (n > 2) giữa n tập thực thể E1, E2, , En; gọi tắt là mối quan hệ R trên {E1, E2, , En}. Gọi e1, e2, , en lần lượt là các thực thể thuộc các tập thực thể E1, E2, , En. Khi đó, một bộ t gồm n thành phần (e1, e2, , en), ký hiệu t = (e1, e2, , en), được gọi là một thể hiện của mối quan hệ R, nếu và chỉ nếu (e1, e2, , en) thuộc mối quan hệ R. Chiếu của một thể hiện: Xét mối quan hệ R trên Ω = {E1, E2, , En}, X là một tập con của Ω, và t = (e1, e2, , en) ∈ R. Khi đó, chiếu của t trên X, ký hiệu là t[X], là bộ t chỉ chứa các thành phần tương ứng với các thực thể của các tập thực thể có trong X. Phụ thuộc hàm giữa các tập thực thể: Xét mối quan hệ R trên Ω, gọi X và Y là các tập con của Ω. Khi đó, ta nói rằng R thoả phụ thuộc hàm X → Y (đọc là: X xác định Y, hoặc Y phụ thuộc hàm vào X) nếu và chỉ nếu: với mọi t1, t2 ∈ R ta có: t1[X] = t2[X] kéo theo t1[Y]= t2[Y]. Một mối quan hệ R được gọi là thoả F - tập các phụ thuộc hàm trên R, nếu R thoả tất cả các phụ thuộc hàm trong F. Từ những định nghĩa hình thức được nêu ở trên, ta có thể nhận thấy rằng, có sự tương ứng 1-1 giữa một số khái niệm này với các khái niệm của lý thuyết phụ thuộc hàm trong mô hình quan hệ. Cụ thể: - Một mối quan hệ đa nguyên R tương ứng với một lược đồ quan hệ trên mô hình quan hệ. Và tập các thể hiện của mối quan hệ đa nguyên này tương ứng với một quan hệ trong lược đồ quan hệ trên. Tức là, một thể hiện của mối quan hệ R tương ứng với một bộ thuộc quan hệ đó. - Các tập thực thể tham gia vào R tương ứng với các thuộc tính có trong một lược đồ quan hệ. - Một ràng buộc phụ thuộc hàm trên một mối quan hệ R tương ứng với một ràng buộc phụ thuộc hàm trong một lược đồ quan hệ. Thành phần của một bộ trong một quan hệ là giá trị của một thuộc tính, nhưng một thành phần của một thể hiện trong mối quan hệ R là một thực thể. Vì vậy, hai thực thể e và e′ được gọi là bằng nhau, ký hiệu là e = e’, nếu e và e’ cùng tham chiếu đến một đối tượng trong cùng một tập thực thể. Từ việc so sánh này, cho phép một loạt các định nghĩa (bao đóng của tập các phụ thuộc hàm trên một mối quan hệ, bao đóng của tập các tập thực thể, khoá của một mối quan hệ, ), các tính chất và các thuật toán (thuật toán tìm bao đóng của tập các tập thực thể, bài toán thành viên, thuật toán tìm khoá của một mối quan hệ, ) được xây dựng một cách tương tự như đối với lý thuyết phụ thuộc hàm trên mô hình quan hệ. Chẳng hạn, chúng ta có thể định nghĩa khoá của một mối quan hệ đa nguyên như sau. Khoá của một mối quan hệ đa nguyên: Xét mối quan hệ đa nguyên R trên Ω thoả tập phụ thuộc hàm F, gọi X là một tập con của Ω. Khi đó, X được gọi là khoá của R nếu thoả mãn hai điều kiện sau: (1). R thoả phụ thuộc hàm X → Ω, hay ta gọi X là một siêu khoá trên R. (2). Không tồn tại tập X’ ⊂ X (X’ là tập con thực sự của X) thoả điều kiện trên. Từ định nghĩa này, cho thấy rằng Ω là một siêu khoá của mối quan hệ R. Và thuật toán xác định một khoá của mối quan hệ được xây dựng như sau. 56