Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 22 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
22
Dung lượng
781,68 KB
Nội dung
Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống CHƢƠNG 1: NHỮNG VẤN ĐỀ CHUNG Chương trình bày nội dung trọng tâm: - Các khái niệm - Các hệ thống thông tin vấn đề phát triển hệ thống thông tin - Các giai đoạn trình xây dựng HTTT - Các định hướng cách tiếp cận để thực dự án tin học 1.1 HỆ THỐNG THÔNG TIN 1.1.1 Hệ thống thông tin Hệ thống tập hợp phần tử tương tác tổ chức nhằm thực mục đích xác định Áp dụng định nghĩa vào tổ chức ta cần xác hoá số khái niệm: Các phần tử tập hợp phương tiện vật chất nhân lực Tổ chức tạo thành hệ thống mở, nghĩa liên hệ với môi trường Một số phần tử hệ thống có tương tác với bên ngồi (cung ứng, thương mại, v.v…) Hệ thống thơng tin hệ thống mà mối liên hệ thành phần liên hệ với với hệ thống khác liên hệ thông tin Hệ thống thông tin tổ chức bao gồm nguồn lực quy trình xử lý thông tin tổ chức đương nhiên bỏ qua thơng tin Khi nói đến thơng tin thiết phải kể đến: Kiểu thơng tin: Ví văn bản, số liệu, âm thanh, hình ảnh, tri thức Phương tiện lưu trữ thông tin: Giấy, phim, ảnh, đĩa vv Các quy tắc phương pháp biến đổi thông tin Như hệ thống thơng tin tin học hóa phần mềm tin học cấu thành yếu tố người, thông tin, phương tiện phương pháp xử lý tin 1.1.1.1 Các hệ thống thông tin Ngày nay, ứng dụng công nghệ thông tin áp dụng hầu hết lĩnh vựa khác đời sống xã hội Tuỳ theo quan điểm mà phân loại hệ thống thơng tin theo tiêu chí khác Tuy nhiên xét mặt ứng dụng, hệ thống thơng tin phân chia thành số nhóm sau: Hệ thống thơng tin quản lý: Bao gồm hệ thống thông tin hỗ trợ hoạt động nghiệp vụ quản lý doanh nghiệp, tổ chức Ví dụ hệ thống quản lý nhân sự, hệ thống kế toán, hệ thống tính cước chăm sóc khách hàng, hệ thống quản lý thư viện, hệ thống đào tạo trực tuyến, hệ thống quản lý đại lý bán hàng từ xa Các hệ thống Website: Gồm hệ thống có nhiệm vụ cung cấp thơng tin cho người dùng mơi trường mạng Internet Các hệ thống Website có đặc điểm thông tin cung cấp cho người dùng có tính đa dạng (có thể tin tức dạng file đa phương tiện) cập nhật thường xuyên Giáo viên biên soạn: Nguyễn Trần Phương Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống Gồm hệ thống website đặc biệt cung cấp dịch vụ chủ yếu việc trao đổi mua bán hàng hố mơi trường Internet Hệ thống thương mại điện tử bao gồm tảng hỗ trợ giao thức mua bán, hình thức tốn, chuyển giao hàng hố Hệ thống điều khiển: Gồm hệ thống phần mềm gắn với thiết bị phần cứng hệ thống khác nhằm mục đích điều khiển giám sát hoạt động thiết bị hay hệ thống Ví dụ hệ thống máy tính nhúng dây truyền sản xuất, hệ thống điều khiển lò nung, hệ thống điều khiển cửa phai thủy điện, v.v Mỗi loại hệ thống thơng tin có đặc trưng riêng đặt yêu cầu riêng cho việc phát triển hệ thống Ví dụ, hệ thống điều khiển địi hỏi u cầu mơi trường phát triển, hệ điều hành ngơn ngữ lập trình riêng; hệ website thực thi chức mơi trường mạng phân tán địi hỏi cách phát triển riêng Do vậy, khơng có phương pháp luận chung cho tất dạng hệ thống thơng tin Có cách phân chia khác: Hệ thống thông tin (Information System): Cất giữ, lấy, biến đổi biểu diễn thông tin cho người sử dụng Xử lý khoảng liệu lớn có quan hệ phức tạp , mà chúng lưu trữ sở liệu quan hệ hay hướng đối tượng Hệ thống kỹ thuật (Technical System): Xử lý điều khiển thiết bị kỹ thuật viễn thông, hệ thống quân sự, hay q trình cơng nghiệp Đây loại thiết bị phải xử lý giao tiếp đặc biệt, khơng có phần mềm chuẩn thường hệ thống thời gian thực (real time) Hệ thống nhúng (Embeded System): Thực phần cứng gắn vào thiết bị điện thoại di động, điều khiển xe hơi, … Điều thực việc lập trình mức thấp với hỗ trợ thời gian thực Những hệ thống thường khơng có thiết bị hình đĩa cứng, … Hệ thống phân bố ( Distributed System): Được phân bố số máy cho phép truyền liệu từ nơi đến nơi khác cách dễ dàng Chúng đòi hỏi chế liên lạc đồng để đảm bảo toàn vẹn liệu thường xây dựng số kỹ thuật đối tượng CORBA, COM/DCOM, hay Java Beans/RMI Hệ thống Giao dịch (Business System): Mô tả mục đích, tài nguyên (con người, máy tính, …), quy tắc (luật pháp, chiến thuật kinh doanh, chế, …), công việc hoạt động kinh doanh Phần mềm hệ thống (System Software): Định nghĩa sở hạ tầng kỹ thuật cho phần mềm khác sử dụng, chẳng hạn hệ điều hành, sở liệu, giao diện người sử dụng Giáo viên biên soạn: Nguyễn Trần Phương Trường Trung học Kinh tế Kỹ thuật Hòa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống 1.1.1.2 Các tính hệ thống thơng tin Các tính hệ thống thông tin gồm: o Thời gian trả kết quả: Tức thời gian kể từ hệ thống nhận thơng tin u cầu có định tương ứng với thơng tin u cầu o Khối lượng thông tin xử lý o Độ phức tạp liệu cần xử lý độ phức tạp xử lý o Độ phức tạp cấu trúc hệ thống cho dù quy mô hệ thống không lớn o Độ tin cậy hệ thống phải tính đến chế an tồn, dự phịng cố ngồi mong đợi Bên cạnh xác q trình xử lý thông tin độ ổn hệ thống mà nguyên nhân chủ yếu đề phát sinh từ người 1.2 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG THƠNG TIN Phân tích thiết kế hệ thống thơng tin phương pháp sử dụng để tạo trì hệ thống thơng tin nhằm thực chức lưu trữ, xử lý thông tin truyền thơng tin Mục tiêu phân tích thiết kế hệ thống cải tiến hệ thống cấu trúc theo hay nhóm quy trình, điển hình qua ứng dụng phần mềm, phần mềm giúp đỡ người sử dụng hồn tất cơng việc đơn vị dễ dàng hiệu Là người phân tích hệ thống, bạn phải trung tâm phát triển phần mềm Phân tích thiết kế hệ thống thông tin dựa trên: o Sự hiểu biết bạn mục tiêu, cấu trúc qui trình tổ chức o Kiến thức tin học am hiểu chuyên môn bạn lĩnh vực triển khai công nghệ thông tin nhằm mang lại lợi ích cho tổ chức theo yêu cầu Trên thực tế chưa có phần mềm đưa vào sử dụng trình sử dụng mà khơng có phiếm khuyết Vậy việc nghiên cứu nhu cầu đánh giá trạng phân tích trước thiết kế điều khơng thể thiếu với dự án tin học hóa hệ thống, điều giảm chi phí cho việc phát triển hệ thống Thơng thường phía đầu tư th nhà phát triển với yêu cầu mờ, mơ hồ có dạng “Phần mềm quản lý ” “Trang tin điện tử đơn vị ” khơng nói rõ tin học hóa vấn đề cụ thể Thế vận hành nhà đầu tư quan tâm tới nhu cầu trực tiếp bỏ qua phần tổng thể hệ thống tất nhiên khơng nói đến mối liên hệ cơng tác nhóm đơn vị quy định, quy trình riêng có vận hành đơn vị Vì thiết phải có phương pháp khoa học hướng dẫn việc thực dự án tin học hóa tùy theo mơ hình phát triển Có nhiều quan điểm cách tiếp cận vấn đề việc phân chia giai đoạn cách gọi tên (có tài liệu, giáo trình có bốn giai đoạn, có tài liệu giáo trình phân chia thành tám giai đoạn Tuy nhiên phạm vi khuôn khổ tài liệu điều kiện cụ thể nhà trường, xin phân chia giai đoạn sau: Lập kế hoạch, xác định u cầu; Phân tích; Thiết kế; Thi cơng; Thử Giáo viên biên soạn: Nguyễn Trần Phương Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống nghiệm; Bảo trì nội dung chủ yếu giai đoạn tóm tắt mục tương ứng 1.2.1 Các quan điểm phân tích Quan điểm tiếp cận tổng thể theo thành phần, liệu, chức hợp phần tổng thể hiểu biết tất điều cần thiết cho việc phát triển hệ thống Thế hiểu biết cá thể hữu hạn, điều kiện sống môi trường đào tạo, v.v khác địi hỏi hiểu biết tất có lẽ khả thi Quan điểm cấu trúc xem toàn tổ chức, lĩnh vực, điểm công tác phần tử có cấu trúc tức có quy tắc hoạt động, quy tắc kiểm tra có hệ thống thơng tin riêng Bên cạnh cần phải nói thêm có quy tắc hoạt động ràng buộc hệ thống tin học hóa sau điều khơng phải lúc mơ tả trọn vẹn đơi quy tắc có mâu thuẫn khơng thể dung hịa Để làm điều địi hỏi phải tất quy tắc hoạt động phải đồng hóa Trong năm 70 - 80, quan điểm coi chuẩn mực để phát triển phần mềm Tuy nhiên, ngày với thay đổi, phát triển công nghệ chuẩn tỏ không phù hợp phát triển hệ phần mềm lớn đặc biệt hiệu sử dụng tái sử dụng lại - Một yêu cầu quan trọng công nghiệp phần mềm Quan điểm trừ - xuống (top - down) quan điểm tiếp cận từ xuống, từ tổng thể đến riêng biệt định mức trừu tượng hóa tương ứng với chu trình phát triển hệ thống (Các giai đoạn q trình xây dựng hệ thống thơng tin nói phần 1.3 tài liệu này) đồng thời định kết mong đợi cho giai đoạn Tuy nhiên với quan điểm cần có phương pháp phân tích khoa học đội ngũ phân tích viên chun nghiệp Tóm lại: Cho dù có nhiều quan điểm cách nhìn nhận khác thời điểm bật quan điểm “Chia để trị” kim nam cho việc phân tích thiết kế hệ thống thông tin cần phát triển 1.2.2 Các phƣơng pháp phân tích Có nhiều phương pháp phân tích, Thập niên 90 chứng kiến nở rộ nghiên cứu xây dựng phương pháp luận phát triển phần mềm hướng đối tượng nhanh chóng trở thành phổ biến công nghiệp phần mềm ngày Tuy nhiên phạm vi tài liệu nêu tên thừa nhận kết cịn nghiên cứu, tìm hiểu chuyên sâu dành cho bậc học cao Phương pháp SADT (Structured Analysis and Design Technique): Kỹ thuật phân tích cấu trúc thiết kế, phương pháp xuất phát từ Mỹ Phương pháp phân tích bao gồm sơ đồ luồng liệu (Data Flow Diagram) từ điển liệu (Data Dictionary) ; Phương pháp phân tích MERISE (Method Pour Rassembler les Ideés Sans Effort) theo [GTPTTK.ĐHQG] dựa vào mức bất biến kết hợp với mơ hình Tạm dịch "Các phương pháp tập hợp ý tưởng không cần cố gắng", đời Pháp cuối thập niên 70 Phương pháp MXC (Méthode de Xavier Castellani): Nguồn gốc từ Pháp Giáo viên biên soạn: Nguyễn Trần Phương Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống Phương pháp GALACSI (Groupe d' Animation et de Liaison pour d' Analyse et la Conception de Systeme d' Information): Tạm dịch nguyên văn: "Nhóm cọ vẽ liên lạc để phân tích quan niệm hố hệ thơng tin" đời Pháp vào tháng năm 1982 1.2.2.1 Phương pháp hướng cấu trúc Đặc trưng phương pháp hướng cấu trúc phân chia chương trình thành nhiều chương trình con, chương trình nhằm đến thực công việc xác định Trong phương pháp hướng cấu trúc, phần mềm thiết kế dựa hai hướng: Hướng liệu hướng hành động Cách tiếp cận hướng liệu xây dựng phần mềm dựa việc phân rã phần mềm theo chức cần đáp ứng liệu cho chức Cách tiếp cận hướng liệu giúp cho người phát triển hệ thống dễ dàng xây dựng ngân hàng liệu Cách tiếp cận hướng hành động lại tập trung phân tích hệ phần mềm dựa hoạt động thực thi chức phần mềm Cách thức thực phương pháp hướng cấu trúc phương pháp thiết kế từ xuống (top-down) Phương pháp tiến hành phân rã toán thành toán nhỏ hơn, tiếp tục phân rã toán nhận tốn cài đặt cách sử dụng hàm ngơn ngữ lập trình hướng cấu trúc Phương pháp hướng cấu trúc có ưu điểm tư phân tích thiết kế rõ ràng, chương trình sáng sủa dễ hiểu Tuy nhiên, phương pháp có số nhược điểm sau: o Khơng hỗ trợ việc sử dụng lại Các chương trình hướng cấu trúc phụ thuộc chặt chẽ vào cấu trúc liệu tốn cụ thể, khơng thể dùng lại modul phần mềm cho phần mềm với yêu cầu liệu khác o Tỏ không phù hợp cho phát triển phần mềm lớn có sở sở liệu phân tán Nếu hệ thống thông tin lớn, việc phân thành toán phân toán thành modul quản lý mối quan hệ modul khơng phải dễ dàng dễ gây lỗi phân tích thiết kế hệ thống, khó kiểm thử bảo trì 1.2.2.2 Phương pháp hướng đối tượng Khác với phương pháp hướng cấu trúc tập trung vào liệu vào hành động, phương pháp hướng đối tượng tập trung vào hai khía cạnh hệ thống liệu hành động theo [TĐQ&NMS.PTTK] Hướng đối tượng thuật ngữ thông dụng thời ngành công nghiệp phần mềm Các công ty nhanh chóng tìm cách áp dụng tích hợp công nghệ vào ứng dụng họ Thật đa phần ứng dụng thời mang tính hướng đối tượng Cách tiếp cận hướng đối tượng lối tư theo cách ánh xạ thành phần toán vào đối tượng đời thực Với cách tiếp cận này, hệ thống chia tương ứng thành thành phần nhỏ gọi đối tượng, Giáo viên biên soạn: Nguyễn Trần Phương Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống đối tượng bao gồm đầy đủ liệu hành động liên quan đến đối tượng Các đối tượng hệ thống tương đối độc lập với phần mềm xây dựng cách kết hợp đối tượng lại với thơng qua mối quan hệ tương tác chúng Các nguyên tắc phương pháp hướng đối tượng bao gồm : Trừu tượng hóa (abstraction): Trong phương pháp hướng đối tượng, thực thể phần mềm mơ hình hóa dạng đối tượng Các đối tượng trừu tượng hóa mức cao dựa thuộc tính phương thức mơ tả đối tượng để tạo thành lớp Các lớp trừu tượng hóa mức cao để tạo thành sơ đồ lớp kế thừa lẫn Trong phương pháp hướng đối tượng tồn lớp khơng có đối tượng tương ứng, gọi lớp trừu tượng Như vậy, nguyên tắc để xây dựng khái niệm hướng đối tượng trừu tượng hóa theo mức độ khác Q trình phân tích phạm vi tốn thường bắt đầu với khái niệm then chốt (Key Abstraction) Khái niệm then chốt quan trọng dựa vào tìm lớp (class) : Định nghĩa ranh giới vấn đề Nhấn mạnh đến thực thể có liên quan đến thiết kế hệ thống Loại bỏ thực thể nằm phạm vi hệ thống Các khái niệm then chốt thường trở thành lớp mơ hình phân tích Mỗi lần tìm thấy khái niệm then chốt mới, cần xem xét theo cách nhìn vấn đề, hỏi câu hỏi sau : Những chức thực thực thể ? Điều khiến thực thể loại tạo ? Nếu khơng có câu trả lời thích hợp, cần phải suy nghĩ lại thực thể Mỗi khái niệm then chốt cần phải đặt tên cho thích hợp, miêu tả chức khái niệm Một khái niệm then chốt tóm lại lớp hay đối tượng thuộc chuyên ngành phạm vi tốn Khi trình bày với người sử dụng, chúng có ánh xạ 1-1 với thực thể liên quan tới người sử dụng ví hóa đơn, séc, giấy đề nghị rút tiền, sổ tiết kiệm, thẻ rút tiền tự động, nhân viên thu ngân, nhân viên nhà băng, phịng ban,… Khi phân tích phạm vi toán, cần ý mức độ trừu tượng khái niệm then chốt quan trọng, mức độ trừu tượng cao hay thấp dễ gây nhầm lẫn Mức trừu tượng cao dẫn tới định nghĩa khái quát thực thể, tạo nên nhìn vĩ mô thường không nhắm vào mục tiêu cụ thể Ví dụ nhà băng, ta khơng thể chọn khái niệm then chốt "người", dẫn đến lời miêu tả: "Một người đến nhà băng để gửi tiền vào, số tiền người khác tiếp nhận" Trong yêu cầu quan trọng phải phân biệt nhân viên với khách hàng chức họ khác hẳn Giáo viên biên soạn: Nguyễn Trần Phương Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống Tương tự vậy, mức trừu tượng thấp dễ gây hiểu lầm, thơng tin q vụn vặt chưa thích hợp với thời điểm nghiên cứu Các nguyên tắc phương pháp hướng đối tượng bao gồm: Tính đóng gói (encapsulation) ẩn dấu thơng tin: Các đối tượng có phương thức thuộc tính riêng (kiểu private) mà đối tượng khác sử dụng Dựa nguyên tắc ẩn giấu thông tin này, cài đặt đối tượng hoàn toàn độc lập với đối tượng khác, lớp độc lập với cao cài đặt hệ thống hoàn toàn độc lập với người sử dụng hệ thống khác sử dụng kết Tính modul hóa (modularity): Các toán phân chia thành vấn đề nhỏ hơn, đơn giản quản lý Tính phân cấp (hierarchy): Cấu trúc chung hệ thống hướng đối tượng dạng phân cấp theo mức độ trừu tượng từ cao đến thấp Ưu điểm bật phương pháp hướng đối tượng giải vấn đề nảy sinh với phương pháp hướng cấu trúc: Hỗ trợ sử dụng lại mã nguồn : Chương trình lập trình theo phương pháp hướng đối tượng thường chia thành gói nhóm lớp đối tượng khác Các gói hoạt động tương đối độc lập hồn tồn sử dụng lại hệ thống thông tin tương tự Phù hợp với hệ thống lớn: Phương pháp hướng đối tượng khơng chia tốn thành toán nhỏ mà tập trung vào việc xác định đối tượng, liệu hành động gắn với đối tượng mối quan hệ đối tượng Các đối tượng hoạt động độc lập thực hành động nhận yêu cầu từ đối tượng khác Vì vậy, phương pháp hỗ trợ phân tích, thiết kế quản lý hệ thống lớn, mơ tả hoạt động nghiệp vụ phức tạp q trình phân tích thiết kế không phụ thuộc vào số biến liệu hay số lượng thao tác cần thực mà quan tâm đến đối tượng tồn hệ thống 1.2.2.3 Các khái niệm hướng đối tượng Một số khái niệm hướng đối tượng bao gồm: Đối tƣợng (object): Một đối tượng biểu diễn thực thể vật lý, thực thể khái niệm thực thể phần mềm Có thể định nghĩa đối tượng khái niệm, trừu tượng vật với giới hạn rõ ràng có ý nghĩa với ứng dụng cụ thể Lớp (Class): Là mơ tả nhóm đối tượng có chung thuộc tính, hành vi mối quan hệ Như vậy, đối tượng thể lớp lớp định nghĩa trừu tượng đối tượng Thành phần (component): Là phần hệ thống hoạt động độc lập giữ chức định hệ thống Gói (package): Là cách tổ chức thành phần, phần tử hệ thống thành nhóm Nhiều gói kết hợp với để trở thành hệ thống (subsystem) Giáo viên biên soạn: Nguyễn Trần Phương 10 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống Kế thừa: Trong phương pháp hướng đối tượng, lớp có sử dụng lại thuộc tính phương thức nhiều lớp khác Kiểu quan hệ gọi quan hệ kế thừa, xây dựng dựa mối quan hệ kế thừa toán thực tế Ví dụ, giả sử ta có lớp Người gồm thuộc tính : tên, ngày sinh, quê quán, giới tính ; Lớp Nhân Viên có quan hệ kế thừa từ lớp Người có tất thuộc tính bổ sung thêm thuộc tính gồm : chức vụ, lương Vòng đời phát triển phần mềm hướng đối tượng có pha tương tự vịng đời phát triển phần mềm nói chung Các pha đặc trưng phát triển phần mềm hướng đối tượng bao gồm: Phân tích hƣớng đối tƣợng (Object Oriented Analysis - OOA): xây dựng mơ hình xác để mơ tả hệ thống cần xây dựng Thành phần mơ hình đối tượng gắn với hệ thống thực Là giai đoạn phát triển mơ hình xác súc tích vấn đề, có thành phần đối tượng khái niệm đời thực, dễ hiểu người sử dụng Trong giai đoạn OOA, vấn đề trình bày thuật ngữ tương ứng với đối tượng có thực Thêm vào đó, hệ thống cần phải định nghĩa cho người không chuyên Tin học dễ dàng hiểu Dựa vấn đề có sẵn, nhà phân tích cần ánh xạ đối tượng hay thực thể có thực vào thiết kế để tạo thiết kế gần cận với tình thực Mơ hình thiết kế chứa thực thể vấn đề có thực giữ nguyên mẫu hình cấu trúc, quan hệ hành vi chúng Nói cách khác, sử dụng phương pháp hướng đối tượng mơ hình hóa thực thể thuộc vấn đề có thực mà giữ cấu trúc, quan hệ hành vi chúng Kiểu phân tích kiểu ánh xạ "đời thực” vào máy tính thật ưu điểm lớn phương pháp hướng đối tượng Thế có yếu điểm đơi phân tích viên nhóm phát triển khơng nhìn thấy tính tổng thể dự án tin học hóa phát triển tương lai Do kết toàn dự án không mong đợi bên Điều nguyên nhân dẫn tới thất bại dự án tin học hóa Thiết kế hƣớng đối tƣợng (Object Oriented Design - OOD): Là giai đoạn tổ chức chương trình thành tập hợp đối tượng cộng tác, đối tượng thực thể lớp Kết pha thiết kế cho biết hệ thống xây dựng qua thiết kế kiến trúc thiết kế chi tiết Mục đích giai đoạn OOD tạo thiết kế dựa kết giai đoạn OOA, dựa quy định phi chức năng, yêu cầu môi trường, yêu cầu khả thực thi, OOD tập trung vào việc cải thiện kết OOA, tối ưu hóa giải pháp cung cấp đảm bảo thoả mãn tất yêu cầu xác lập Trong giai đoạn OOD, nhà thiết kế định nghĩa chức năng, thủ tục (operations), thuộc tính (attributes) mối quan hệ hay nhiều lớp (class) định chúng cần phải điều chỉnh cho phù hợp với môi trường phát triển Đây giai đoạn để thiết kế ngân hàng liệu áp dụng kỹ thuật tiêu chuẩn hóa Giáo viên biên soạn: Nguyễn Trần Phương 11 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống Về cuối giai đoạn OOD, nhà thiết kế đưa loạt biểu đồ (diagram) khác Các biểu đồ chia thành hai nhóm tĩnh động Các biểu đồ tĩnh biểu thị lớp đối tượng, biểu đồ động biểu thị tương tác lớp phương thức hoạt động xác chúng Các lớp sau nhóm thành gói (Packages) tức đơn vị thành phần nhỏ ứng dụng Lập trình hƣớng đối tƣợng (Object Oriented Programming - OOP): Thực thiết kế hướng đối tượng cách sử dụng ngôn ngữ lập trình hướng đối tượng (C++, Java, …) Kết chung giai đoạn loạt code chạy được, đưa vào sử dụng sau trải qua nhiều vòng quay nhiều bước thử nghiệm khác Tuy nhiên thực tế ngơn ngữ lập trình hướng đối tượng nêu nhúng hệ quản trị sở liệu (HQTCSDL) Hiện có loại hệ quản trị sở liệu phổ dụng: Loại phân cấp hệ IMS IBM Loại mạng IDMS Cullinet Software Loại tập tin đảo ADABAS Software AG Loại quan hệ như ORACLE Oracle, DB2 IBM, ACCESS Microsoft Access Loại đối tượng Loại tiếp cận thiết kế HQTCSDL việc sử dụng hệ loại sớm trở nên phổ biến Hiện tại, loại HQTCSDL sử dụng cơng nghệ loại HQTCSDL quan hệ (RDBMS) Loại chiếm lĩnh công nghệ 10-15 năm cuối đánh bật loại HQTCSDL phân cấp gần HQTCSDL mạng 1.3 CÁC GIAI ĐOẠN TRONG QUÁ TRÌNH XÂY DỰNG HTTT Việc phát triển hệ thống thông tin không đơn giản lập trình mà ln xem tiến trình hồn chỉnh Tiến trình phần mềm phương cách sản xuất phần mềm với thành phần chủ yếu bao gồm: Mơ hình vịng đời phát triển phần mềm, công cụ hỗ trợ cho phát triển phần mềm người nhóm phát triển phần mềm Như vậy, tiến trình phát triển phần mềm nói chung kết hợp hai khía cạnh kỹ thuật (vòng đời phát triển, phương pháp phát triển, công cụ ngôn ngữ sử dụng, …) khía cạnh quản lý (quản lý dự án phần mềm) Xin lưu ý cách dùng ngôn ngữ số tài liệu giai đoạn trình xây dựng hệ thống thơng tin tương ứng với vòng đời bước phát triển sản phẩm phần mềm Các giai đoạn trình xây dựng hệ thống thông tin gồm bước sau: 1.3.1 Lập kế hoạch, xác định yêu cầu Đây giai đoạn nhằm nghiên cứu thực trạng tổ chức (nhà đầu tư) có nhu cầu tin học hóa q trình nhà phát triển gọi dự án tin học hóa (bản chất xây dựng phần mềm phục vụ mục đích chun dụng tổ chức đó, khơng loại trừ phần mềm thương mại hóa có bán thị trường có số điểm khơng phù hợp với yêu cầu cụ thể đơn vị đó) Nếu dự án tin học hóa lớn người ta tổ chức đấu thầu việc Giáo viên biên soạn: Nguyễn Trần Phương 12 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống đấu thầu xây dựng Điều đặc biệt chỗ trước bỏ thầu nhà phát triển phải khảo sát trạng thực tế sơ bộ, cịn khơng khơn ngoan có lẽ gia cơng số cơng đoạn dự án tin học Trong giai đoạn nhà phát triển phải thiết xác định yêu cầu cụ thể nhà đầu tư trước tiến hành nghiên cứu phát triển dự án Nhà phát triển phải có kế hoạch thống với nhà đầu tư thời gian khảo sát thực tiễn đơn vị bao gồm: Thời gian địa điểm khảo sát Số lượng thành viên, sở vật chất có liên quan, ảnh hưởng đến việc triển khai dự án Khám phá khái niệm liên quan đến việc phát triển phần mềm Trình độ tính sẵn sàng cho việc tin học hóa thành viên đơn vị Xác định xác yêu cầu ràng buộc khách hàng với sản phẩm phần mềm Bên cạnh thống thời gian tiến hành kết thức dự án, giai đoạn trình thực dự án Các vấn đề tài chính, nhân trách nhiệm bên giai đoạn Các hợp đồng thủ tục hành phù hợp với pháp luật quốc gia nơi nhà đầu tư phải ký kết trước tiến hành dự án 1.3.2 Phân tích 1.3.2.1 Phân tích hướng chức theo [GTPTTK.ĐHQG] Đây cơng việc trọng tâm q trình xây dựng hệ thống thông tin Bản thân giai đoạn có khởi điểm nằm giai đoạn khác Đặc biệt nằm trình nghiên cứu trạng giai đoạn lập kế hoạch trước mức độ chi tiết Xây dựng mơ hình xác để mô tả hệ thống cần xây dựng Thành phần mơ hình đối tượng gắn với hệ thống thực Mô tả chức sản phẩm, input sản phẩm output yêu cầu; Khám phá khái niệm miền quan tâm sản phẩm bước đầu đưa giải pháp xây dựng hệ thống Hay nói cách khác xác định phạm vi dự án cần tin học hóa Nghiên cứu trạng: Như nói phần q trình cụ thể hóa tình trạng hệ thống cũ, xem xét nhiệm vụ, vai trò đơn vị thành viên có liên quan, mối quan hệ thông tin, luồng thông tin, trình xử lý thơng tin để hoạt động tổ chức có nhu cầu tin học hóa Tần xuất, thời hạn, hiệu xuất thơng tin hệ thống cũ Các khả giải pháp cho hệ thống tin học phát triển tương lai Xây dựng mơ hình hệ thống: Căn kết nghiên cứu trạng từ làm rõ mơ hình thơng tin mơ hình hoạt động hệ thống Đây giai đoạn quan trọng định thành bại dự án tin học hóa vì: Giáo viên biên soạn: Nguyễn Trần Phương 13 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống Phụ thuộc hoàn toàn vào tài kinh nghiệm phân tích viên Tính thống nhất, hiểu biết chun mơn phân tích viên thành viên tìm hiểu đơn vị thuộc nhà đầu tư Sự hợp tác thành viên tham gia không loại trừ lý tế nhị Khả tài nhà đầu tư phải thay đổi Trình độ ứng dụng tin học trạng thái sẵn sàng thay đổi thành viên đơn vị sử dụng phần mềm tương lai Vì hầu hết phần mềm xây dựng phải thay đổi phần nhỏ quy trình hoạt động tổ chức cho dù khơng muốn điều xảy Lập hồ sơ nhiệm vụ: Lựa chọn giải pháp định hình chức mà hệ thống cần đạt được; Định hình thơ giao diện mơ dul nhất, nguyên mẫu; Chuẩn văn thỏa thuận bên (Phân tích viên, Nhà đầu tư, người sử dụng) 1.3.2.2 Phân tích hướng đối tượng theo UML- Ngơn Ngữ Mơ Hình Hố Thống Nhất (Unifield Modeling Language) [TĐQ&NMS.PTTK] Giai đoạn phân tích quan tâm đến q trình trừu tượng hóa (các lớp đối tượng) chế hữu phạm vi vấn đề Sau nhà phân tích nhận biết lớp thành phần mơ mối quan hệ chúng với nhau, lớp mối quan hệ miêu tả cơng cụ biểu đồ lớp (class diagram) UML Sự cộng tác lớp nhằm thực Use case miêu tả nhờ vào mơ hình động (dynamic models) UML Trong giai đoạn phân tích, lớp có tồn phạm vi vấn đề (các khái niệm đời thực) mơ hình hóa Các lớp kỹ thuật định nghĩa chi tiết giải pháp hệ thống phần mềm, ví dụ lớp cho giao diện người dùng, cho ngân hàng liệu, cho giao tiếp, trùng hợp, v.v , chưa phải mối quan tâm giai đoạn Xây dựng Biểu đồ use case (Use Case Diagram): Dựa tập yêu cầu ban đầu, người phân tích tiến hành xác định tác nhân, use case quan hệ use case để mô tả lại chức hệ thống Một thành phần quan trọng biểu đồ use case kịch mô tả hoạt động hệ thống use case cụ thể Một biểu đồ Use case số lượng tác nhân ngoại cảnh mối liên kết chúng Use case mà hệ thống cung cấp - Hình 1.1 Một Use case lời miêu tả chức mà hệ thống cung cấp Lời miêu tả Use case thường văn tài liệu, kèm theo biểu đồ hoạt động Các Use case miêu tả theo hướng nhìn từ ngồi vào tác nhân (hành vi hệ thống theo mong đợi người sử dụng), không miêu tả chức cung cấp hoạt động nội bên hệ thống Các Use case định nghĩa yêu cầu mặt chức hệ thống Giáo viên biên soạn: Nguyễn Trần Phương 14 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống Hình 1.1: Biểu đồ use case công ty bảo hiểm Xây dựng Biểu đồ lớp (Class Diagram): Xác định tên lớp, thuộc tính lớp, số phương thức mối quan hệ sơ đồ lớp Một biểu đồ lớp cấu trúc tĩnh lớp hệ thống - Hình 1.2 Các lớp đại diện cho “vật” xử lý hệ thống Các lớp quan hệ với nhiều dạng thức: liên kết (associated - nối kết với nhau), phụ thuộc (dependent - lớp phụ thuộc vào lớp khác), chuyên biệt hóa (specialized - lớp kết chuyên biệt hóa lớp khác), hay đóng gói (packaged - hợp với thành đơn vị) Tất mối quan hệ thể biểu đồ lớp, kèm với cấu trúc bên lớp theo khái niệm thuộc tính (attribute) thủ tục (operation) Biểu đồ coi biểu đồ tĩnh theo phương diện cấu trúc miêu tả có hiệu lực thời điểm tồn vịng đời hệ thống Một hệ thống thường có loạt biểu đồ lớp - tất biểu đồ lớp nhập vào biểu đồ lớp tổng thể lớp tham gia vào nhiều biểu đồ lớp Hình 1.2 : Biểu đồ lớp cho đăng nhập chương trình Giáo viên biên soạn: Nguyễn Trần Phương 15 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống Biểu đồ đối tượng (Object Diagram): Một biểu đồ đối tượng phiên biểu đồ lớp thường sử dụng ký hiệu biểu đồ lớp Sự khác biệt hai loại biểu đồ nằm chỗ biểu đồ đối tượng loạt đối tượng thực thể lớp, thay lớp Một biểu đồ đối tượng ví dụ biểu đồ lớp, tranh thực tế xảy hệ thống thực thi: tranh mà hệ thống có thời điểm Biểu đồ đối tượng sử dụng chung ký hiệu biểu đồ lớp, trừ hai ngoại lệ: đối tượng viết với tên gạch tất thực thể mối quan hệ - Hình 1.2 Biểu đồ đối tượng khơng quan trọng biểu đồ lớp, chúng sử dụng để ví dụ hóa biểu đồ lớp phức tạp, với thực thể cụ thể mối quan hệ tranh tồn cảnh Một biểu đồ đối tượng thường thường sử dụng làm thành phần biểu đồ cộng tác (collaboration), lối ứng xử động loạt đối tượng Xây dựng biểu đồ trạng thái (State Diagram): Mô tả trạng thái chuyển tiếp trạng thái hoạt động đối tượng thuộc lớp Một biểu đồ trạng thái thường bổ sung cho lời miêu tả lớp Nó tất trạng thái mà đối tượng lớp có, kiện (event) gây thay đổi trạng thái - Hình 1.3 Một kiện xảy đối tượng tự gửi thơng điệp đến cho - ví dụ để thông báo khoảng thời gian xác định qua – số điều kiện thỏa mãn Một thay đổi trạng thái gọi chuyển đổi trạng thái (State Transition) Một chuyển đổi trạng thái có hành động liên quan, xác định điều phải thực chuyển đổi trạng thái diễn Biểu đồ trạng thái không vẽ cho tất lớp, mà riêng cho lớp có số lượng trạng thái định nghĩa rõ ràng hành vi lớp bị ảnh hưởng thay đổi qua trạng thái khác Biểu đồ trạng thái vẽ cho hệ thống tổng thể Hình 1.3: Biểu đồ trạng thái xây dựng hệ thống quản lý thư viện Giáo viên biên soạn: Nguyễn Trần Phương 16 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống Các biểu đồ cộng tác (Collaboration Diagram): Biểu diễn mối liên hệ đối tượng hệ thống đối tượng với tác nhân bên ngồi Có hai loại biểu đồ tương tác: Biểu đồ trình tự: Biểu diễn mối quan hệ đối tượng đối tượng tác nhân theo thứ tự thời gian Biểu đồ cộng tác: Biểu diễn mối quan hệ đối tượng đối tượng tác nhân nhấn mạnh đến vai trò đối tượng tương tác Biểu đồ hoạt động: Biểu diễn hoạt động đồng bộ, chuyển tiếp hoạt động, thường sử dụng để biểu diễn phương thức phức tạp lớp Biểu đồ thành phần: Định nghĩa thành phần hệ thống mối liên hệ thành phần Biểu đồ triển khai: Mô tả hệ thống triển khai nào, thành phần cài đặt đâu, liên kết vật lý giao thức truyền thông sử dụng 1.3.3 Thiết kế 1.3.3.1 Thiết kế hướng chức theo [GTPTTK.ĐHQG] Xác định cụ thể phần mềm xây dựng Thiết kế bao gồm hai mức thiết kế kiến trúc thiết kế chi tiết Việc thiết kế không dùng giải pháp tin học để mô lại hệ thống có bắt chước hệ thống thơng tin tin học hóa cũ mà phải loại bỏ vấn đề lạc hậu tính kế thừa ưu điểm đồng thời có tính mềm dẻo cho thay đổi tương lai gần Cơng việc thiết kế địi hỏi sáng tạo, bề dày kinh nghiệm, học qua sách Bên cạnh thiết kế có phương pháp nghiêm ngặt học sinh, sinh viên ngành công nghệ thơng tin trường cần có thời gian, mơi trường định Để có phương pháp thiết kế tốt độc giả nên đọc tài liệu, giáo trình môn công nghệ phần mềm Trên thực tế giai đoạn phân tích giai đoạn thiết kế khơng hồn tồn tách rời, chúng đan xen theo chu trình vịng xoắn ốc, nói tóm lại thiết kế gồm: Thiết kế liệu: Định đối tượng cấu trúc liệu tương ứng cho đối tượng Thiết kế chức tập hợp đối tượng cộng tác, đối tượng thực thể lớp Thiết 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, bảo mật hệ thống, hệ thống trợ giúp Thiết kế phần cứng 1.3.3.2 Thiết kế hướng đối tượng [TĐQ&NMS.PTTK] Trong giai đoạn này, kết giai đoạn phân tích mở rộng thành giải pháp kỹ thuật Các lớp bổ sung để tạo thành hạ tầng sở kỹ thuật: Giao diện người dùng, chức để lưu trữ đối tượng ngân hàng liệu, giao tiếp với hệ thống khác, giao diện với thiết bị ngoại Giáo viên biên soạn: Nguyễn Trần Phương 17 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống vi máy móc khác hệ thống, Các lớp thuộc phạm vi vấn đề có từ giai đoạn phân tích "nhúng" vào hạ tầng sở kỹ thuật này, tạo khả thay đổi hai phương diện: Phạm vi vấn đề hạ tầng sở Giai đoạn thiết kế đưa kết đặc tả chi tiết cho giai đoạn xây dựng hệ thống Xây dựng biểu đồ tương tác (gồm biểu đồ cộng tác biểu đồ tuần tự): Mô tả chi tiết hoạt động use case dựa scenario có lớp xác định pha phân tích Xây dựng biểu đồ lớp chi tiết: tiếp tục hoàn thiện biểu đồ lớp bao gồm bổ sung lớp thiếu, dựa biểu đồ trạng thái để bổ sung thuộc tính, dựa biểu đồ tương tác để xác định phương thức mối quan hệ lớp Xây dựng biểu đồ hoạt động: Mô tả hoạt động phương thức phức tạp lớp hoạt động hệ thống có liên quan nhiều lớp Biểu đồ hoạt động sở để cài đặt phương thức lớp Xây dựng biểu đồ thành phần: Xác định gói, thành phần tổ chức phần mềm theo thành phần Xây dựng biểu đồ triển khai hệ thống: Xác định thành phần thiết bị cần thiết để triển khai hệ thống, giao thức dịch vụ hỗ trợ 1.3.4 Thi công 1.3.4.1 Thi công hướng chức theo [GTPTTK.ĐHQG] Xây dựng coding để mã hóa chương trình; Cài đặt chi tiết tích hợp hệ thống phần mềm dựa kết thiết kế Hầu hết cơng cụ phân tích CASE (Computer Aided Software Engineering) chuyển mã (C, v.v …) cho khung phần mềm Tuy nhiên lập trình viên phải hiệu chỉnh đối tượng Ngoài tùy theo kiểu hệ thống phần mềm mà lập trình viên mà lựa chọn cơng cụ thích hợp phát triển để xây dựng mã nguồn Ví dụ “Chương trình tuyển sinh trường học trung cấp chuyên nghiệp” dùng hệ quản trị Foxpro để xây dựng Nhiệm vụ quan trọng giai đoạn xây dựng tài liệu: Tài liệu kỹ thuật tài liệu hướng dẫn sử dụng 1.3.4.2 Thi cơng sử dụng UML [TĐQ&NMS.PTTK] Mơ hình thiết kế (gồm chủ yếu biểu đồ) chuyển thành code Programmer sử dụng UML diagrams giai đoạn thiết kế để hiểu vấn đề tạo code Một công cụ phát triển bàn đến tài liệu Rational Rose chia xẻ chương theo việc sinh mã vấn đề Trong giai đoạn xây dựng (giai đoạn lập trình), lớp giai đoạn thiết kế biến thành dòng code cụ thể ngơn ngữ lập trình hướng đối tượng cụ thể (không nên dùng ngôn ngữ lập trình hướng chức năng!) Phụ thuộc vào khả ngơn ngữ sử dụng, cơng việc khó khăn hay dễ dàng Khi tạo mơ hình phân tích thiết kế UML, tốt nên cố gắng né tránh việc biến đổi mơ hình thành dịng code Trong giai đoạn trước, mơ hình sử dụng để dễ hiểu, dễ giao tiếp tạo nên cấu trúc hệ thống; vậy, vội vàng đưa kết luận việc Giáo viên biên soạn: Nguyễn Trần Phương 18 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống viết code thành trở ngại cho việc tạo mơ hình xác đơn giản Giai đoạn xây dựng giai đoạn riêng biệt, nơi mơ hình chuyển thành code Tất nhiên có điểm chung thi công theo hướng đối tượng thi công theo hướng chức viết tài liệu kỹ thuật tài liệu hướng dẫn sử dụng 1.3.5 Thử nghiệm 1.3.5.1 Thử nghiệm hướng chức theo [GTPTTK.ĐHQG] Thử nghiệm trình tốn thời gian tiền bạc Nhưng có thử nghiệm chính: Thử nghiệm an-pha: Thử nghiệm dành cho người dùng chuyên nghiệp phạm vi lĩnh vực hẹp Thử nghiệm bê - ta: Là thử nghiệm cho người đồng ý dùng thử báo cáo lại vấn đề cho nhà phát triển hệ thống Thử nghiệm gam - mar: Tương tự thử nghiệm bê - ta số lượng người đồng ý dùng thử lớn đa dạng trình độ, ngành nghề Để tìm hiểu kỹ sâu đọc giả tham khảo tài liệu, giáo trình cơng nghệ phần mềm; Quản lý dự án phần mềm 1.3.5.2 Thử nghiệm sử dụng UML [TĐQ&NMS.PTTK] Tương tự trình bày phần thử nghiệm hướng chức bàn chi tiết chương 5, hệ thống phần mềm thường thử nghiệm qua nhiều giai đoạn với nhiều nhóm thử nghiệm khác Các nhóm sử dụng nhiều loại biểu đồ UML khác làm tảng cho cơng việc mình: Thử nghiệm đơn vị sử dụng biểu đồ lớp (class diagram) đặc tả lớp, thử nghiệm tích hợp thường sử dụng biểu đồ thành phần (component diagram) biểu đồ cộng tác (collaboration diagram), giai đoạn thử nghiệm hệ thống sử dụng biểu đồ Use case (use case diagram) để đảm bảo hệ thống có phương thức hoạt động định nghĩa từ ban đầu biểu đồ Sử dụng UML diagrams giai đoạn trước Có hình thức kiểm tra hệ thống: Unit testing (class diagrams & class specifications): kiểm tra đơn thể, dùng để kiểm tra lớp hay nhóm đơn thể Integration testing (integration diagrams & collaboration diagrams): kiểm tra tích hợp kiểm tra kết hợp component với lớp để xem chúng hoạt động với có khơng System testing (use-case diagrams): kiểm tra xem hệ thống có đáp ứng chức mà người sử dụng yêu cầu hay không Acceptance testing: Kiểm tra tính chấp nhận hệ thống, thường thực khách hàng, việc kiểm tra thực tương tự kiểm tra hệ thống 1.3.6 Bảo trì Tiến hành sửa chữa phần mềm có thay đổi Đây giai đoạn không phần quan trọng, tiêu tốn nhiều thời gian chi phí tiến trình phát Giáo viên biên soạn: Nguyễn Trần Phương 19 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống triển phần mềm Để thực vấn đề này, đội ngũ bảo trì phải cung cấp tài liệu kỹ thuật đầy đủ từ giai đoạn thi công Đặc biệt phải xây dựng kênh thông tin người sử dụng đội ngũ bảo trì, lập kế hoạch bảo trì thường xuyên định kỳ sau cài đặt đưa vào sử dụng Cần phải nói thêm có nhiều kiểu phân chia giai đoạn phát triển hệ thống thơng tin tin học hóa hay vịng đời phần mềm hai mơ hình đơn giản sử dụng rộng rãi mơ hình thác nước mơ hình tạo ngun mẫu (làm mẫu nhanh) Giai đoạn bảo trì có liên quan mật thiết từ giai đoạn thiết kế, thi cơng q trình tài liệu kỹ thuật phải lập cách chi tiết Điều thường bị bỏ qua dự án nhỏ tương đối tốn thời gian công sức nhà thiết kế thi cơng Mơ hình xoắn ốc: Là đệ quy mơ hình mơ hình thác nước tức giai đoạn lại thực lại tiến trình mơ hình thác nước Tiến trình dừng lại toán đủ nhỏ để cài đặt thuật tốn hay nói khác tốn giải thuật giải mô tả ngơn ngữ lập trình Mơ hình thác nƣớc: Sau xác định yêu cầu hệ thống Giai đoạn phân tích tiến hành để xây dựng tài liệu Sau tài liệu phân tích khách hàng chấp nhận, nhóm phát triển tiến hành lập kế hoạch lịch biểu cho trình phát triển Sau đó, thiết kế, cài đặt tích hợp tiến hành; Mỗi giai đoạn có phần kiểm tra để cần quay lại sửa đổi tài liệu pha trước Khi phần mềm triển khai chuyển sang giai đoạn bảo trì; Nếu có lỗi thay đổi xảy ra, nhóm thiết kế phải quay trở lại sửa đổi tài liệu cho giai đoạn trước cần quay trở lại thay đổi số yêu cầu ban đầu hệ thống Giáo viên biên soạn: Nguyễn Trần Phương 20 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống Vì giai đoạn nối tiếp cách liên tục thác nước nên mơ hình gọi mơ hình thác nước Tiến trình phần mềm theo mơ hình thác nước biểu diễn Hình 1.4 Mơ hình thác nước có số ưu điểm sau: Có vịng lặp, cho phép trở giai đoạn trước vòng đời phần mềm để sữa chữa phát lỗi có thay đổi Hướng tài liệu: Tất giai đoạn vịng đời phần mềm theo mơ hình thác nước viết tài liệu cẩn thận kiểm tra trước chuyển sang giai đoạn Do vậy, hệ thống dễ dàng bảo trì có thay đổi Tuy nhiên, mơ hình thác nước có nhược điểm sản phẩm phần mềm cuối không thỏa mãn nhu cầu thực khách hàng Lý khách hàng trao đổi lần chưa hình dung sản phẩm nên giai đoạn khơng thực khách hàng cần Tất nhiên nguy thất bại dự án tương đối lớn nguyên nhân rủi khơng đốn định, lường trước có kế hoạch dự phòng Để hiểu biết kỹ vấn đề độc giả tìm hiểu kiến thức tài liệu, giáo trình quản lý dự án phần mềm Hình 1.4: Tiến trình phần mềm theo mơ hình thác nước Giáo viên biên soạn: Nguyễn Trần Phương 21 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống Mơ hình tạo ngun mẫu Trong mơ hình tạo ngun mẫu, bước nhóm phát triển xây dựng mẫu giao cho khách hàng người sử dụng hệ thống dùng thử Khi khách hàng đồng ý chấp nhận mẫu nhóm phát triển tiếp tục tiến hành pha khác vòng đời phần mềm Trong pha tiếp theo, có mẫu nên pha tiến hành liên tục khơng có bước quay pha trước Chỉ hệ thống triển khai chuyển sang pha bảo trì, có thay đổi hay phát lỗi nhóm phát triển quay lại pha trước đó, khơng quay lại pha làm mẫu mẫu chấp nhận Ưu điểm mơ hình “nhanh” sản phẩm phần mềm tạo từ mơ hình làm mẫu nên có khả cao đảm bảo thỏa mãn yêu cầu thực khách hàng Tuy nhiên, mô hình làm mẫu nhanh có nhược điểm pha tiến hành liên tục mà không viết tài liệu Mơ hình làm mẫu nhanh biểu diễn Hình 1.5 Hình 1.5: Phát triển phần mềm theo mơ hình tạo ngun mẫu Giáo viên biên soạn: Nguyễn Trần Phương 22 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống 1.4 CÁC MỨC TRỪU TƢỢNG HÓA Đây phương pháp tiếp cận nhằm mức bất biến hệ thống thông tin phát triển Phương pháp đáp ứng nhu cầu phát triển cho hệ thống thơng tin nói chung hệ thống thơng tin tự động hóa nói riêng, số phương pháp khác khó thỏa mãn nhu cầu phát triển đồng thời cung cấp nhìn tồn diện q trình phát triển dự án tin học, phương pháp thân mức trừu tượng cao để nắm phương pháp đòi hỏi học sinh, sinh viên phải đầu tư thời gian học khổ luyện Các nhu cầu mà phân tích viên phải lưu ý: Mơ hình ngôn ngữ đặc tả đơn giản, đơn nghĩa để xác định u cầu q trình phân tích Mơ hình ngôn ngữ để đối thoại với người không chuyên tin học nghiên cứu trạng tìm hiểu yêu cầu Ví dụ: Quan niệm CSDL người chuyên tin học khơng chun hồn khác đơi cịn trái ngược Bao qt mơ hình tất mức độ trừu tượng hóa khác nhau: Sau ta có mơ hình có sử dụng cơng cụ phân tích để hỗ trợ Do mơ hình cần phải dễ chuyển tải từ lời miêu tả cấp trừu tượng hóa cao hệ thống (tức dạng lượng gói khác nhau) xuống cấp dịng code thật Sau đó, để truy xuất dòng lệnh code cho thủ tục cụ thể lớp đó, bạn cần nhấp chuột vào tên thủ tục biểu đồ Tóm lại: Dù tiếp phương pháp tiếp cận cần tạo mức bất biến hệ thống thông tin phát triển Để khắc phục yếu điểm phân tích viên nhóm phát triển khơng nhìn thấy tính tổng thể dự án tin học hóa phát triển tương lai UML hỗ trợ cách tiếp cận theo hướng nhìn từ nhiều phía theo bảng sau - Bảng 1.1: Khía cạnh Hƣớng nhìn Hướng nhìn tĩnh (static view) Hướng nhìn use case (Use case view) Khía cạnh cấu trúc Hướng nhìn cài đặt hệ thống (implementation view) Hướng nhìn triển khai (deployment view) Hướng nhìn máy trạng thái (state Khía cạnh động machine view) Hướng nhìn hoạt Giáo viên biên soạn: Nguyễn Trần Phương Các biểu đồ Biểu đồ lớp Các khái niệm lớp, liên hệ, kế thừa, phụ thuộc, giao diện Biểu đồ use Use case, tác nhân, liên case hệ, extend, include … Biểu đồ Thành phần, giao diện, thành phần quan hệ phụ thuộc … Node, thành phần, quan Biểu đồ triển hệ phụ thuộc, vị trí khai (location) Biểu đồ Trạng thái, kiện, trạng thái chuyển tiếp, hành động Biểu 23 đồ Trạng thái, kiện, Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống động view) (activity động chuyển tiếp, kết hợp, đồng … Biểu đồ tuần Tương tác, đối tượng, Hướng nhìn tương tự thơng điệp, kích hoạt … tác (interaction Biểu đồ Cộng tác, vai trị cộng view) cộng tác tác, thơng điệp … Khía cạnh quản lý Hướng nhìn quản Gói, hệ thống con, mơ Biểu đồ lớp mơ hình lý mơ hình hình Khía cạnh khả Tất Các ràng buộc, Tất mở rộng stereotype, … Bảng 1.1 - Các hướng nhìn UML 1.4.1 Mức quan niệm Mức quan niệm mơ tả mục đích hệ thống phải tôn trọng mối quan hệ với mục đích hệ thống Việc mơ tả phải độc lập với công cụ phát triển sau cao độc lập với giải pháp sử dụng hệ thống tin phát triển Mức quan niệm cần mô tả: Đối tượng sử dụng hệ thống; Các tượng, mối liên hệ thông tin, môi trường điều kiện để thực mối liên hệ thơng tin Cụ thể quy tắc biến đổi, xử lý thông tin hệ thống Định mối liên hệ trong, mối liên hệ liên hệ chẳng hạn công đoạn rút tiền ngân hàng rút tiền trạm rút tiền ATM ngân hàng Xét quy tắc theo [GTPTTK.ĐHQG] gồm có ba loại quy tắc bản: Quy tắc quản lý quy tắc quy định mục tiêu ràng buộc hệ thống thống Quy tắc tổ chức quy tắc liên quan đến giải pháp hoạt động hệ Quy tắc kỹ thuật liên quan đến yêu cầu kỹ thuật để hệ thống hoạt động Theo cá nhân Quy tắc quản lý nên chia tách thành quy tắc quản lý (nội bộ) quy tắc quản lý ngồi ví dụ như: Chương trình tuyển sinh hàng năm trường trung cấp, cao đẳng đại học phải việc tuân thủ quy định chung Bộ GD&ĐT phải giải toán đặc thù địa phương chia miền theo quy định Tỉnh Các quy tắc mơ tả lời nói, văn bản, công thức bảng chuyển trạng thái 1.4.2 Mức tổ chức Thông tin mô tả theo quan hệ lô gíc chúng hay cịn gọi mức lơ gíc Ở mức bao gồm kiểu khai thác, ràng buộc thời gian hệ thống, trả lời cho câu hỏi câu hỏi hệ thống làm việc nào? Mức tổ chức bất biến với giải pháp lựa chọn hẳn độc giả đồng ý với tác giả giải pháp để giải vấn đề có chắn có giải pháp lựa chọn theo phương châm “Có nhiều Giáo viên biên soạn: Nguyễn Trần Phương 24 Trường Trung học Kinh tế Kỹ thuật Hịa Bình – Ngành Cơng nghệ Thơng tin - Mơn Phân tích & Thiết kế hệ thống đường để tới đích, đến đích đường” Mức tổ chức liên quan chủ yếu đến quy tắc tổ chức 1.4.3 Mức tác nghiệp Mức vật lý hay gọi mức tác nghiệp là phần mềm, phương tiện kỹ thuật phục vụ phần mềm mà đơi đơn giản hóa gọi phần mềm Quy tắc kỹ thuật liên quan đến mức vật lý Nó bao gồm mô tả điều kiện kỹ thuật để tạo môi trường thực thi Mặt khác mức vật lý lại cụ thể hóa mức tổ chức Do mức vật lý hình ảnh mơ hình tổ chức thể trang bị kỹ thuật, cấu trúc chương trình, phương thức truy cập Giáo viên biên soạn: Nguyễn Trần Phương 25