Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 42 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
42
Dung lượng
1,42 MB
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 4: MỨC TỔ CHỨC VÀ VẬT LÝ Chƣơng trình bày nội dung trọng tâm: - Cung cấp phƣơng pháp để xây dựng mơ hình hố vật lý - Học sinh, sinh viên biết lựa chọn kết hợp hƣớng đối tƣợng, hƣớng chức để giải toán cơng cụ thích hợp cho phát triển phần mềm - Học sinh, sinh viên sử dụng cơng cụ để phát triển phần mềm - Giới thiệu số cơng cụ có đƣợc sử dụng rộng rãi thị trƣờng 4.1 MƠ HÌNH TỔ CHỨC VỀ XỬ LÝ Những phƣơng pháp phân tích đại mong muốn hƣớng tới giải toàn phần tồn nêu Tất nhiên phƣơng pháp phân tích đại khơng giải nhƣ tồn tiến trình phân tích ý niệm hố áp dụng tin học, khơng dùng tên để khái niệm Cũng không xem xét tất công cụ tin học dƣới góc độ Song, khẳng định chúng theo mục tiêu chịu ảnh hƣởng định hƣớng dƣới đây: Có tiếp cận toàn cục cách xét phần tử, liệu, chức phận tổng thể toàn vẹn Sự hiểu biết tổng thể toàn vẹn cần thiết cho việc phát triển tốt phận Xét tồn tổ chức, phịng ban, xƣởng, vị trí làm việc v.v phần tử có cấu trúc, hệ thống có dịng vào, dịng ra, quy tắc hoạt động quản lý hệ thơng tin v.v Có cách tiếp cận phân tích ý niệm xuống, hƣớng vào việc nhận thức định tiên cách tổng quát, sau đến đặc thù, thứ nhất, tiếp đến thứ hai v.v Nhận dạng mức trừu tƣợng bất biến hệ thống đƣợc nghiên cứu phụ thuộc vào khoảng thời gian vòng đời, vai trò lớn hay nhỏ việc lựa chọn kỹ thuật tổ chức có liên quan Nhận dạng thành phần, liệu, xử lý, xử lý, v.v… hệ thống mà "thiên vị" chúng Vận dụng cơng cụ thủ cơng, tự động hố trợ giúp cho việc phân tích Nhận dạng điểm đối thoại thoả thuận với ngƣời sử dụng, điểm dùng để đánh dấu chuyển tiếp giai đoạn q trình phân tích 4.1.1 Các yếu tố tổ chức Nhƣ trình bày chƣơng 3, mức tổ chức hƣớng tới việc xây dựng hai mô hình: Mơ hình liệu Mơ hình xử lý Giáo viên biên soạn: Nguyễn Trần Phương 76 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ục tiêu xây dựng mơ hình liệu mức vật lý làm rõ khía cạnh giải pháp thực cụ thể điểm công tác cụ thể ai? đâu? Làm nhƣ nào? Mục tiêu xây dựng mô hình xử lý mức vật lý tính định kỳ, thời hạn đáp ứng hệ thống mức độ tự động hóa phần mềm thực đƣợc Để tƣờng minh xét ví dụ giao dịch tài qua tài khoản ngân hàng: Trƣớc thực thủ công, doanh nghiệp cá nhân lƣu chuyển tiền qua ngân hàng ngƣời ta phải kiểm tra số dƣ tài khoản trƣớc có nghiệp vụ lƣu chuyển sau chủ tài khoản phải điền thơng tin chủ yếu mã số thuế lƣợng tiền cần lƣu chuyển Nhân viên ngân hàng kiểm tra sổ sách đối chiếu để kiểm ghi giá trị tài khoản sau tính tới thuế có Cuối nghiệp vụ giao dịch bổ xung tài phiếu báo có nợ cho tài khoản thƣờng thủ tục phải thực vòng 15 ngày Bây sử dụng phần mềm chẳng hạn nhƣ sử dụng thẻ ATM chủ tài khoản cần ghi nhập số tiền cần chuyển vào tài khoản phần mềm hệ thống tự kiểm tra mã tài khoản, mã số thuế cộng tổng giá trị để có số dƣ có, trả kết tiền mặt sau vài ngày chuyển khoản Còn việc rút tiền đơn giản nhiều sau vài phút Xét mục đích thì rõ ràng hai quy trình nhƣ nhƣng quan niệm giải pháp hồn tồn khác cách tổ chức trình kiểm tra thủ cơng phải có hai cơng đoạn báo nợ báo có cho tài khoản Cịn sử dụng phần mềm lần báo nợ, có mà thơi Sau yếu tố tổ chức đáng quan tâm phát triển dự án cách thức tiếp cận hƣớng đối tƣợng hay tiếp cận hƣớng chức năng: Điểm công tác: Nhƣ trình bày chƣơng tiếp cận hƣớng đối tƣợng ghi nhận hành vi hoạt động cịn tiếp cận hƣớng chức ghi nhận số công đoạn phải thực Bản chất việc xử lý: Thể mức độ tự động hóa Thơng thƣờng hệ thơng tin đủ phức tạp ngƣời ta phối hợp, phân chia thành phân hệ Mỗi phân hệ có đầy đủ đặc tính hệ thống bao gồm Hệ quản trị - Hệ thơng tin - Hệ tác nghiệp Trong hệ quản trị hoạt động bao trùm hệ thống nhiệm vụ tổ chức (có tài liệu cịn gọi hạt nhân hệ thống) Hệ thống tin bao gồm luồng thông tin khối lƣợng thông tin cần trao đổi hệ thống; Hệ tác nghiệp gồm tồn q trình xử lý thơng tin Ví dụ nhƣ xem xét mơ hình tổ chức trƣờng trung cấp ta thấy: Nhiệm vụ đào tạo bao trùm toàn hoạt động, nhiệm vụ bổ trợ nhƣ tài chính, quản lý sở vật chất, quản lý giảng viên, v.v theo mơ hình 4.1 Xử lý tương tác người – Máy: Xử lý máy nhƣng cần thông tin tức thời trình xử lý Giáo viên biên soạn: Nguyễn Trần Phương 77 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 4.1 : Phân hệ trƣờng trung cấp chuyên nghiệp HB Xử lý hàng loạt: Xử lý thứ tự công việc theo theo trình tự cho trƣớc Nhƣng phân biệt khác trạng giửi pháp thiết kế sau Thời gian: Thông thƣờng vấn đề yếu tố thời gian có liên quan đến dây chuyền xử lý, thời hạn tính chu trình thƣờng khơng diễn tả cơng thức đƣợc 4.1.2 Các quy tắc tổ chức Các quy tắc tổ chức phần mức tổ chức Tuy nhiên nhƣ trình quy tắc tổ chức phụ thuộc mức quan niệm Mỗi điểm cơng tác có quy tắc tổ chức liên quan cấu tổ chức ngƣời mối quan hệ đến đối tƣợng Cách thức xử lý phụ thuộc vào hai yếu tố điều kiện kỹ thuật cho phép kỹ ngƣời tham gia hệ thống nằm lẫn công đoạn với quy tắc quản lý 4.1.3 Khái niệm pha Pha chuỗi nhiệm vụ nối tiếp cho chúng xảy điểm công tác cách thức xử lý Pha hoạt động hệ thống có tính đến yếu tố tổ chức Ở mức quan niệm với khái niệm công đoạn, công việc, trình, mơ hình hệ thống nhiệm vụ Trong mức tổ chức nhiệm vụ đƣợc kết hợp với yếu tố tổ chức, theo [GTPTTK.ĐHQG] để diễn tả mơ hình tổ chức xử lý đƣợc sử dụng mơ hình hệ thống tƣơng tự nhƣ mơ hình quan niệm xử lý với số thay đổi nhƣ sau: Đơn vị hệ thống pha Đƣa vào yếu tố tiến trình thời gian theo pha Điểm công tác, chất xử lý theo pha Giáo viên biên soạn: Nguyễn Trần Phương 78 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ó nhiều phƣơng pháp toán học hỗ trợ việc xây dựng, đánh giá mơ hình tổ chức tốt nhƣ sơ đồ PERT đƣợc trình bày chƣơng 4.2 MƠ HÌNH CƠ SỞ DỮ LIỆU Giải pháp tổ chức liệu mơ hình sở liệu (CSDL) đƣợc sử dụng thể tiêu chí : Tính quán liệu cấu trúc quản trị Tính độc lập khơng phục thuộc vào cơng cụ phát triển cụ thể Để quản trị CSDL ngƣời ta xây dựng phần mềm quản trị CSDL gồm chức bản: Tạo lập cấu trúc liệu (loại, kiểu, thành phần, tính chất) Cập nhật liệu Thiết lập quan hệ Kiểm soát ràng buộc Phân quyền truy cập Bảo mật hệ thống Điển hình đƣợc sử dụng nhiều phần mềm quản trị sở liệu (HQTCSDL) Foxpro, Access Đối với cơng cụ cịn hỗ trợ mơi trƣờng lập trình cấp độ khác cho ngƣời sử dụng (SQL, sinh giao diện, sinh báo cáo) Vậy với dự án phần mềm nhỏ việc đặc tả, sinh mã cần sử dụng phần mềm đƣợc nhƣng phần mềm có quy mơ lớn, phức tạp khó khăn khơng nói khơng thể (các dự án phát triển nhiều đội phát triển độc lập với kết hợp cơng cụ hỗ trợ phân tích) Chính điều cơng ty phát triển ngƣời ta sử dụng cơng cụ chun biệt nhƣ CASE; RATION ROSE, AGRO UML; POWER DESIGN;… sử dụng ngôn ngữ UML để phát triển dự án Các công cụ cung cấp phƣơng pháp xây dựng biểu đồ theo cách tiếp cận hƣớng đối tƣợng bao gồm phần chính: Xây dựng biểu đồ sử dụng đối tƣợng (use-case diagram) Xây dựng biểu đồ, lƣợc đồ lớp (class diagram) Xây dựng biểu đồ trình tự Xây dựng biểu đồ cộng tác Xây dựng biểu đồ hoạt động Xây dựng lƣợc đồ thành phần (component diagram) Sinh mã Lập tài liệu 4.2.1 Mơ hình phân cấp Mơ hình phân cấp mơ hình đời vào vào năm 60 kỷ trƣớc Ở liệu đƣợc phân loại theo tiêu chuẩn tầng khác theo cấu trúc dạng Để tìm thơng tin CSDL ta theo nhánh Giáo viên biên soạn: Nguyễn Trần Phương 79 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í dụ: Nhằm diễn tả việc cung cấp chức hệ thống thông tin từ mức tổng quát đến mức chi tiết gần hệ thống cung ứng vật tƣ, biểu đồ có dạng (tree) nhƣ sau: Hình 4.2: Biểu đồ phân cấp chức Hệ thống cung ứng vật tƣ 4.2.2 Mơ hình mạng theo [GTPTTK.ĐHQG] Mơ hình mạng hay cịn gọi mơ hình CODASYL có khái niệm bản: Đơn vị liệu (Data Item): Tƣơng ứng với thuộc tính đối tƣợng cần mơ tả Nhóm liệu (Data agreate): Tƣơng ứng với thuộc tính hợp thành Bản ghi (Record): Là phận có thứ tự đơn vị liệu nhóm liệu Liên kết (Set): Mơ tả quan hệ hai ghi mà tronh có ghi ghi chủ vầ ghi cịn lại thành viên Để biểu diễn mơ hình mạng ngƣời ta dùng đồ thị có hƣớng Ví dụ: Vẽ BĐLDL hệ cung ứng vật tƣ (chỉ xét mặt thông tin) Thông tin thƣơng lƣợng Nhà cung cấp Nhà cung cấp Cheque Đơn đặt Phiếu giao Thanh tốn hàng hàng (+hàng) Hóa đơn Đặt hàng Đơn hàng Hóa xác đơn nhận chi Danh sách đơn hàng Nhận hàng Đối chiếu Dự Dự trù / Đơn hàng trù Danh sách hàng nhận Phân xƣởng Nhận hàng Phiếu phát hàng sản xuất Hình 4.3: BĐLDL hệ cung ứng vật tƣ Giáo viên biên soạn: Nguyễn Trần Phương 80 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 4.2.3 Mơ hình quan hệ Mơ hình đời thời với mơ hình mạng (1970) Đây mơ hình nghiên cứu chƣơng Trong mơ hình có số khái niệm chƣa đề cập nhƣng thể phần chƣơng trƣớc Quan hệ (relation): Mơ hình quan hệ xoay quan khái niệm quan hệ, (tuple) thuộc tính (attribute) Những khái niệm tƣơng ứng với khái niệm tập thực thể, thực thể thuộc tính Hình 3.11: Mơ hình ER mối quan hệ HỌC_VIÊN MÔN_HỌC thể mối quan hệ Miền (Domain): Tập hợp giá trị đƣợc xác định tên có miền giá trị cụ thể Ví dụ miền giới tính có hai giá trị “Nam, “Nữ” Thuộc tính (attribute): Phần giao dịng cột giá trị thuộc tính Giá trị thuộc tính phải giá trị đơn khơng đa trị hay cấu trúc Một quan hệ có giá trị thuộc tính nhƣ quan hệ đạt dạng chuẩn có dạng nhƣ sau: Tên quan hệ Bộ Bộ … Bộ m Tên miền Giá trị Giá trị Giá trị Giá trị Tên miền Giá trị Giá trị Giá trị Giá trị … Tên miền n Giá trị Giá trị Giá trị Giá trị Bộ (tuple): Là giá trị thuộc tính dòng quan hệ Thứ tự xuất thuộc tính khơng ảnh hƣởng đến kết tính tốn Một có tính quan hệ Nghĩa quan hệ khơng thể có hai giống giá trị thuộc tính giống nhau) Một thuộc tính hay nhóm thuộc tính dùng để phân biệt với quan hệ đƣợc gọi khố Khóa quan hệ lại xuất quan hệ khác đƣợc gọi khóa ngoại Quy ƣớc đƣợc đề nghị để biểu diễn: Tên quan hệ đƣợc ghi chữ hoa trƣớc ngoặc tròn tất thuộc tính đƣợc liệt kê ngoặc trịn Khóa gạch chân Khóa ngoại viết nghiêng Khố (key, candidate key): Là tập hợp nhỏ thuộc tính mà giá trị dùng để phân biệt với quan hệ Khóa hợp (composite key): Là khóa có thuộc tính Khóa (primary key): Là khóa đƣợc chọn để cài đặt QTCSDL Khi chọn khóa ta phải ý tính chất sau: áp dụng, nhất, nhỏ nhất, ổn định Khóa có tính áp dụng khơng bỏ sót trƣờng hợp vấn đề Khóa phải có tính dùng để phân biệt với quan hệ Khóa có tính nhỏ ta bỏ thuộc tính khơng cịn tính Giáo viên biên soạn: Nguyễn Trần Phương 81 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 Khóa có tính ổn định giá trị khóa khơng thay đổi Ví dụ khóa khơng ổn định WSE bán lẻ đồ điện, cửa hàng cung cấp hàng NSD Thỏa thuận WSE NSD WSE phải mua tối thiểu 90% hàng NSD WSE mua tối đa 10% hàng nhà cung ứng độc lập khác WSE thiết lập hệ máy tính cho điều hành xử lý đơn hàng Hệ sử dụng mã sản phẩm với NSD tạo mã riêng cho nguồn hàng mua từ nơi khác Ví dụ dẫn tới hai vấn đề nhƣ sau: Khi NSD thay đổi mã hàng mã hàng WSE bị thay đổi theo gây tính ổn định Khi mặt hàng vừa đƣợc cung ứng từ nhà cung ứng độc lập từ NSD gây tình trạng mặt hàng có tới hai mã hàng khác Để tránh tình trạng buộc lịng phải thay đỗi mã hàng Khóa ngoại (foreign key): Trong mơ hình quan hệ, để diễn tả mối kết hợp, ngƣời ta chép khóa từ quan hệ sang quan hệ Trong quan hệ nhận, khoá đƣợc chép sang gọi khóa ngoại Từ ví dụ Hình 3.7 HỌC_VIÊN (Mã học viên, tên học viên,…, mã mơn học) MƠN_HỌC (Mã mơn học, tên mơn học, thời lƣợng) Khóa dự tuyển khóa khác: Ví dụ khóa dự tuyển: ANFD (Liên hiệp nhà phân phối thực phẩm quốc tế) tập đoàn phục vụ khách hàng thơng qua mạng lƣới văn phịng bn bán cấp quốc gia có 150 văn phòng nhƣ ANFD quản lý chi tiết xe văn phòng đại diện quan hệ sau: XE(số đăng bộ, qui cách, hình dáng, màu sắc, số sƣờn, số máy, mã xe, quốc gia) Bƣớc đầu, có số nhóm thuộc tính có khả phân biệt xe với xe Các nhóm thuộc tính đƣợc gọi khóa dự tuyển: (số đăng bộ, quốc gia), (số sƣờn), (số máy), (mã xe) Khóa dự Điều kiện Diễn giải tuyển lựa chọn Số đăng bộ, Áp dụng Gây vấn đề cần lƣu trữ thông tin xe chƣa đăng quốc gia Ổn định Gây vấn đề số đăng có khả thay đổi Khi số đăng thay đổi (khi bán xe) ta phải sửa lại giá trị số đăng xe làm cho khóa khơng ổn định Duy Chỉ riêng số đăng khơng có tính từ quốc gia sangquốc gia khác Nhỏ Không nhỏ phạm vi quốc gia Số sƣờn Áp dụng Khơng có vấn đề xe có số sƣờn khác Ổn định Khơng có vấn đề số sƣờn khơng thay đổi Duy Duy cho xe Nhỏ Chỉ gồm thuộc tính đƣơng nhiên nhỏ Giáo viên biên soạn: Nguyễn Trần Phương 82 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 Số máy Mã xe Áp dụng Ổn định Duy Nhỏ Áp dụng Ổn định Duy Nhỏ Khơng vấn đề Có vấn đề máy có khả đƣợc thay Khơng có vấn đề Chỉ gồm thuộc tính đƣơng nhiên nhỏ Khơng có vấn đề cơng ty tạo Khơng có vấn đề cơng ty tạo Khơng có vấn đề cơng ty tự chịu trách nhiệm bảo đảm chúng phải khác Chúng gồm thuộc tính nên đƣơng nhiên nhỏ Qua bảng phân tích khóa có khả hai thuộc tính sau: Số sƣờn mã xe Do số sƣờn thƣờng dài không đồng nên không tiện công tác quản lý công ty Công ty tự tạo mã xe giải pháp chọn lựa có tính thực tiễn cao Khóa dự tuyển Số đăng bộ, quốc gia Loại khơng có tính Số đăng bộ, quốc gia Số sƣờn Số máy Khóa phụ Mã xe Khóa Hình 4.4: Mối quan hệ khóa dự tuyển, khóa khác khóa Khóa nhân tạo (khóa đại diện) artificial key (surrogate key): Đơi việc xác định khóa khơng phải lúc thực đƣợc bốn tính chất ràng buộc: Áp dụng, ổn định, nhất, nhỏ Trong trƣờng hợp nhƣ vậy, buộc ta phải đƣa vào thuộc tính với mục đích làm khóa đƣợc gọi khóa nhân tạo (artificial key), đơi cịn gọi khóa đại diện (surrogate key) Các khóa nhân tạo nhƣ: mã nhân viên, mã khách hàng, số hóa đơn, mã tài sản cố định Khóa nhân tạo ln ln thỏa tính chất áp dụng, ổn định, nhất, nhỏ Khi sử dụng khóa nhân tạo ta cần ý điều sau: Không gắn ngữ nghĩa vấn đề vào khóa nhƣ mã khách hàng từ đến 1000 khách hàng chi nhánh phía bắc, mã khách hàng lớn 1000 khách hàng chi nhánh phía nam Khơng dùng lại giá trị khóa xóa cho giá trị ảnh hƣởng đến liệu cũ Kiểm tra trƣờng hợp nhập hai giá trị đối tƣợng Khóa phụ (Secondary keys): Khóa phụ thuộc tính hay nhóm thuộc tính thƣờng hay đƣợc sử dụng khai thác liệu Ví dụ vấn đề Trƣờng cao đẳng có thuộc tính tên học viên thuộc tính tên mơn học hay đƣợc dùng Giáo viên biên soạn: Nguyễn Trần Phương 83 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ìm kiếm nên chúng đƣợc xếp để đẩy nhanh tốc độ xử lý Những vùng đƣợc gọi khóa phụ Những tính chất khác mơ hình quan hệ là: Đại số quan hệ, phép tính quan hệ: Đại số quan hệ phép tính quan hệ tạo số chức nhƣ: o o o o Trích số dịng quan hệ Trích số cột quan hệ Kết nối quan hệ thơng qua khóa ngoại Ràng buộc tồn vẹn Mơ hình quan hệ định nghĩa ba mức ràng buộc: Ràng buộc toàn vẹn thực thể (Entity integrity constraint): Thực chất ràng buộc thực thể ràng buộc khóa thỏa mãn tính chất: nhất, khơng rỗng, nhỏ Ràng buộc tồn vẹn tham chiếu (Referential integrity constraint): Ràng buộc tồn địi hỏi giá trị khóa ngoại quan hệ phải tồn quan hệ có khóa tƣơng ứng Mã học viên Sv001 Sv002 Sv003 … Sv055 HỌC VIÊN Tên học viên Nguyễn Văn Thịnh Quách Hữu An Lê Quang Khai … Trần Thanh Quý … … Mã môn học CN001 CN010 CN012 … CN099 Mã môn học CN001 CN010 CN012 … CN055 ? MƠN HỌC Tên mơn học Hệ điều hành Toán rời rạc Hệ QT CSDL … CTDL> Thời lƣợng 45 30 75 … 30 Hình 4.5: Ràng buộc sƣ tồn bị vi phạm học viên Sv055 Ràng buộc toàn vẹn loại liệu (Data type integrity constraint) Ràng buộc miền giá trị (Domain integrity constraint) o Ngôn ngữ hỏi có cấu trúc SQL (Structured Query Language) Các chức đƣợc thể HQTCSDL quan hệ qua ngôn ngữ SQL SQL ngôn ngữ phi thủ tục chúng khai thác liệu cách mô tả truy xuất truy xuất nhƣ Các bƣớc công việc thực mô hình hóa liệu sơ đồ Hình 3.7 đƣợc tóm tắt thành quy tắc giai đoạn thiết kế nhƣ sau: o QT 1: Mỗi tập thực thể mơ hình ER đƣợc chuyển thành quan hệ o QT 2: Mỗi thuộc tính mơ hình ER đƣợc chuyển thành thuộc tính quan hệ tƣơng ứng Giáo viên biên soạn: Nguyễn Trần Phương 84 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 o QT 3: Thuộc tính nhận diện mơ hình ER đƣợc chuyển thành khóa quan hệ tƣơng ứng Trƣờng hợp khóa khơng thỏa bốn tính chất chọn lựa, phải chọn khóa khác hay đƣa vào khóa nhân tạo o QT 4: Thể mối quan hệ thơng qua khóa ngoại: : Chuyển khóa từ quan hệ sang quan hệ hay ngƣợc lại (tức khóa thực thể thành thuộc tính thực thể kia) : n Chuyển khóa từ bên sang bên nhiều (tức chuyển khóa thực thể từ bên sang bên n để làm khóa ngoại) n : n Tạo quan hệ tồn khóa (tức tạo quan hệ có khóa kết hợp khóa hai quan hệ có số kết nối nhiều nhiều để hạ bậc quan hệ hai thực thể thực thể trung gian) 4.2.4 Mơ hình CSDL phân tích thiết kế hƣớng đối tƣợng Với cách tiếp cập theo hƣớng đối tƣợng nhà phát triển lại quan tâm CSDL theo mơ hình lớp xây dựng mối quan hệ lớp 4.2.4.1 Vấn đề xác định lớp Khái niệm phƣơng pháp hƣớng đối tƣợng khái niệm đối tƣợng Một đối tượng hiểu thực thể có thực thực thể khái niệm Mỗi đối tượng mô tả trạng thái hành vi cho biết đối tượng hành động nhận thông điệp từ đối tượng khác Hoạt động hệ thống đƣợc thể qua trạng thái đối tƣợng tƣơng tác đối tƣợng Một nhóm đối tượng có chung thuộc tính phương thức tạo thành lớp Vấn đề xác định lớp trở thành nhiệm vụ phân tích, thiết kế hệ thống hƣớng đối tƣợng Mối tƣơng tác đối tƣợng hệ thống đƣợc biểu diễn thông qua mối quan hệ lớp Các lớp (bao gồm thuộc tính phương thức) với mối quan hệ tạo thành biểu đồ lớp Biểu đồ lớp biểu đồ dạng mơ hình tĩnh Một biểu đồ lớp miêu tả hƣớng nhìn tĩnh hệ thống khái niệm lớp mối quan hệ chúng với Một mục đích biểu đồ lớp tạo tảng cho biểu đồ khác, thể khía cạnh khác hệ thống (ví dụ trạng thái đối tượng hay cộng tác động đối tượng, biểu đồ động) Một lớp biểu đồ lớp đƣợc thực thi trực tiếp ngơn ngữ hƣớng đối tƣợng có hỗ trợ trực tiếp khái niệm lớp Một biểu đồ lớp lớp, nhƣng bên cạnh cịn có biến tấu khác chút đối tƣợng thật thực thể lớp (biểu đồ đối tượng) Xác định lớp bƣớc khó phát triển phần mềm hƣớng đối tƣợng Khơng có quy tắc chung cho viêc xác định lớp hệ thống Kết bƣớc xác định lớp phụ thuộc nhiều vào kinh nghiệm nhóm phát triển phần mềm khác Các phƣơng pháp xác định lớp đƣợc đƣa mang tính định hƣớng cho nhóm phát triển khơng giúp nhóm phát triển tìm cụ thể lớp cần thiết hay không cần thiết, hay sai Giáo viên biên soạn: Nguyễn Trần Phương 85 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 thơng tin, file văn bản, chƣơng trình, liệu, nhƣng dù chúng dãy bit liệu Quản lý file thực thao tác nhƣ lƣu trữ, tìm kiếm, di chuyển, xóa, thiết lập thuộc tính cho file Mặc dù thao tác đƣợc thực thông qua hệ điều hành nhƣng thực tế có nhiều phần mềm đƣợc sử dụng để quản lý file dễ dàng tiện lợi Chú ý tƣơng hợp kích thuớc file nhớ nên đọc/ghi file hệ điều hành sử dụng chiến lƣợc nhớ đệm để lƣu hình ảnh file đoạn file nhớ 4.6.1.5 Các cấu trúc liệu phương thức truy nhập 4.6.1.5.1 Tổ chức file truy nhập tuần tự: Các ghi file đƣợc xếp liên tiếp Việc truy nhập đến nơi file đƣợc thực theo thể thức duyệt lần lƣợc gặp ghi cần tìm Cách thƣờng thời gian nhƣng số trƣờng hợp cách để tìm kiếm thơng tin 4.6.1.5.2 Truy nhập ngẫu nhiên theo hàm băm Trong trƣờng hợp ghi đƣợc chia thành nhiều khối có độ dài nhƣ ngƣời ta xây dựng hàm băm cho phép tính địa khối liệu chứa ghi theo khóa ghi 4.6.1.5.3 Truy nhập theo file mục Các ghi file xếp tùy ý Một file mục đƣợc tạo cho phép xác định đƣợc vị trí ghi cụ thể file gốc Nhƣợc điểm phƣơng pháp phải tốn không gian để lƣu file mục 4.6.1.6 Thiết kế kiểm soát file Nhằm bảo vệ liệu chống lại phá hủy ngƣời khác thông thƣờng ngƣời ta sử dụng hai biện pháp kỹ thuật lƣu mã hóa file liệu 4.6.1.6.1 Thủ tục lƣu file Các file quan trọng cần đƣợc lƣu trữ vào thiết bị riêng theo chu kỳ đƣợc xác định, cần lấy để sử dụng Từ việc nghiên cứu hệ thống, từ kinh nghiệm định file cần lƣu Việc tổ chức lƣu thực phần mềm trợ giúp, phần mềm có nhiệm vụ nhắc nhở ngƣời sử dụng công việc lƣu 4.6.1.6.2 Đặt mật cho chƣơng trình mã hố nội dung file Nhằm bảo đảm an toàn nội dung file, số ứng dụng quân sự, tài chính, thơng thƣờng ngƣời ta đặt mật (password) mã hóa nội dung file File đƣợc mở để làm việc ngƣời sử dụng đƣa dung mật Mã hóa nội dung file chuyển cách biểu diễn liệu file sang dạng khác Nhiều hệ điều hành phần mềm quản lý liệu cung cấp công cụ mã hóa giải mã liệu 4.6.1.7 Xác định quy mô file không gian lưu trữ cần thiết Một ví dụ thiết kế file liệu Giáo viên biên soạn: Nguyễn Trần Phương 103 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 Trong hệ thống thông tin “Quản lý kho hàng ” có mơ hình tổ chức liệu hệ thống quan hệ sau: Nhà CC Kho Khhàng Phiếu nhập Phiếu xuất Hàng Gồm hàng_N Gồm hàng_X Chứa (Mã NCC, Tên NCC, Đchỉ NCC) (Tên kho, Đchỉ kho) (Mã khách, Tên khách, Đchỉ khách) (Số phiếu_N, Ngày nhập, Mã NCC) (Sốphiếu_X, Ngày xuất, Mãkhách) (Mãhàng, Tênhàng, Đơnvị, Đơngiá, Tên kho) (Sốphiếu_N, Mãhàng, SL_nhập) (Sốphiếu_X, Mãhàng, SL_xuất) (Tồn kho, Tên kho, Mã hàng) Dựa vào khảo sát trƣớc quan hệ mô tả chúng dƣới dạng khai báo sau: NHA_CC Data type Field size Format Validation Rule Fieldname MA_NCC (K) TEN_NCC Text Text 30 ĐCHI_NCC Text 50 Chữ hoa Len()=2 Chữ đầu Not null viết hoa Chữ đầu viết hoa KHO Fieldname TENKHO (K) DCHI_KHO Data type Text Text Field size Format Validation Rule Chữ hoa Chữ đầu viết hoa 25 KHHANG Data type Field size Fieldname MAKHACH (K) TENKHACH Text Text 30 ĐCHI_KHACH Text 50 Format Validation Rule Chữ hoa Len()=3 Chữ đầu Not null viết hoa Chữ đầu viết hoa PHIEUXUAT Data type Fieldname SOPHIEU_X (K) Text MAKHACH (FK) Text NGAYXUAT Date Field size Format Validation Rule 8 Chữ số Chữ hoa dd-mm-yy Len()=8 Len()=3 Format Validation Rule PHIEUNHAP Fieldname Data type Giáo viên biên soạn: Nguyễn Trần Phương Field size 104 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 SOPHIEU_N (K) MA_NCC (FK) NGAYNHAP Text Text Date Chữ số Chữ hoa dd-mm-yy 8 Len()=8 Len()=2 HANG Fieldname MAHANG (K) Data type Text Text TENHANG DONVI Text DONGIA TENKHO (FK) Num Text Field size Format Validation Rule Chữ Len()=6 hoa+Chữ số 30 Chữ đầu Not null viết hoa Chữ đầu viết hoa Số nguyên Chữ hoa HANGNHAP Fieldname SOPHIEU_N (K) MAHANG (K) Data type Text Text SL_NHAP Num Field size Format Validation Rule Chữ số Len()=8 Chữ Len()=6 hoa+Chữ số Số nguyên HANGXUAT Fieldname SOPHIEU_X (K) MAHANG (K) SL_XUAT Data type Field size Format Validation Rule Text Chữ số Len()=8 Text Chữ Len()=6 hoa+Chữ số Num Số nguyên CHUA Fieldname TENKHO (K) TONKHO MAHANG (K) Data type Text Num Text Field size Format Validation Rule Chữ hoa Số nguyên Chữ Len()=6 hoa+Chữ số 4.6.2 Các mơ đul xử lý 4.6.2.1 Mục đích: Mơ hình trả lời cho câu hỏi cuối là: công việc hoạt động nhƣ nào? Từ mô hình tổ chức xử lý có, ngƣời phân tích tiến hành xem xét, biến chức năng, công việc thành đơn vị chƣơng trình Ứng với đơn vị Giáo viên biên soạn: Nguyễn Trần Phương 105 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 trình ngƣời phân tích phải viết đặc tả chi tiết để chuẩn bị cho việc lập trình 4.6.2.2 Mơ đun xử lý Mơ đun xử lý thể cơng việc có liên quan với đƣợc thực liền mạch nhằm thực chức Nói chung tiêu chuẩn để xác định mô đun xử lý mờ, nêu lên phƣơng hƣớng phân rã chức mà khơng xác định xác quy mơ mô đun Thông thƣờng mô đun xử lý thể cơng đoạn có chất cập nhật tra cứu liệu thao tác nhóm liệu nhỏ Ví dụ: Chức làm phiếu xuất kho bao gồm mô đun sau: Tra cứu danh sách đại lý để kiểm tra khách hàng Kiểm tra hàng tồn kho Lấy yêu cầu để lập phiếu xuất cập nhật tồn kho 4.6.3 Phân dã mô đul Để dễ dàng việc mã hố, cài đặt chƣơng trình sửa chữa chƣơng trình, ngƣời ta phân rã mơ đun thành nhiều mô đun Một mô đun phân rã đến lúc tách thêm đƣợc đƣợc gọi mô đun sơ cấp Tuy nhiên, việc phân rã phải bảo đảm mối liên hệ mô đun lớn với mô đun Trong thực tế thƣờng xảy trƣờng hợp phân rã mô đun nhỏ đến mức xuất mô đun chung, điều giảm nhẹ công sức lập trình sau Phân rã mơ đun gợi giao diện chọn chức theo kiểu thực đơn chƣơng trình tổng thể sau Để mơ tả việc phân rã mô đun thành nhiều mô đun con, ngƣời ta dùng sơ đồ phân rã chức nhƣ sau: Làm phiếu xuất kho Kiểm tra tƣ cách đại lý Tra cứu tồn kho Nhập yêu cầu, Làm phiếu xuất , Cập nhật tồn kho 4.6.3.1 Các yếu tố để phân rã mô đun 4.6.3.1.1 Phân rã mô đun theo điểm công tác: điều thể chổ nhiều ngƣời nhiều phận có cơng việc nhƣ nhau, nhƣ chức có nơi làm việc đƣợc gom thành mô đun Ví dụ, thơng tin nâng bậc lƣơng, chuyển ngạch, cần cho phận tổ chức mà cịn cho phận kế tốn phải có mơ đun chung để cập nhật, tra cứu thông tin 4.6.3.1.2 Phân rã mô đun theo hướng chức năng: theo cách chức có chung công việc đƣợc tổ chức riêng 4.6.3.1.3 Phân rã mô đun theo thời gian: thời gian yếu tố để phân rã mơ đun Ví dụ, việc in báo cáo kết học tập sinh viên đƣợc thực Giáo viên biên soạn: Nguyễn Trần Phương 106 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ào cuối năm học với hàng loạt báo cáo khác nhƣ báo cáo khối lƣợng công tác giáo viên, 4.6.4 Phân dã chức Dựa kết phân rã mơ đun, ngƣời phân tích phải lên sơ đồ tổng thể chức để hƣớng đến cấu trúc hố chƣơng trình Hiện có vài quan điểm việc gộp mơ đun thành nhóm chức chƣơng trình 4.6.4.1 Gộp mơ đun theo hướng đối tượng: Gộp theo đối tƣợng nhóm chức theo liệu theo tập thực thể Ví dụ, ba tập thực thể hệ thống thông tin “Quản lý đào tạo” sinh viên, giáo viên mơn học Chúng ta gộp mô đun theo tập thực thể theo sơ đồ sau: Hình 4.11a: Gộp chức theo đối tƣợng 4.6.4.2 Gộp mô đun theo kiện: Gộp theo kiện gộp theo hoạt động hệ thống Một kiện gây loạt chức hệ thống Ví dụ, hệ thống thơng tin “Quản lý kho hàng” có ba kiện “Nhập hàng”, “Xuất hàng” “Báo cáo” Chúng ta gộp theo kiện mô đun theo sơ đồ dƣới Giáo viên biên soạn: Nguyễn Trần Phương 107 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 4.11b: Gộp chức theo kiện 4.6.4.3 Gộp mô đun theo tiện lợi: Gộp theo tiện lợi gộp mô đun theo tiêu chuẩn tiện dụng theo ngƣời sử dụng cụ thể theo mạch cơng việc Ví dụ, hệ thống thơng tin “Quản lý khách sạn” thƣờng có mạch công việc nhƣ sau: Tiếp nhận khách bao gồm cơng việc: Cập nhật phịng, Giữ chổ, Check in Dịch vụ bao gồm công việc: cập nhật dịch vụ, ghi nhận dịch vụ, toán Thống kê bao gồm cơng việc: Hệ số sử dụng phịng, Số lƣợng khách, Doanh thu Chúng ta tổ chức mơ đun theo mạch cơng việc nhƣ sau: Hình 4.11c: Gộp chức theo mạch công việc Giáo viên biên soạn: Nguyễn Trần Phương 108 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 4.7 CHUYỂN TỪ MỨC LÔ GIC SANG MỨC VẬT LÝ 4.7.1 Sử dụng ngơn ngữ lập trình Ngày để phát triển dự án ngƣời ta không sử dụng phƣơng pháp Đối với dự án vừa nhỏ ngƣời ta thƣờng sử dụng hệ quản trị sở liệu kết có hỗ trợ mơi trƣờng phát triển Ví dụ Visual Foxpro Access Đối với dự án lớn thƣờng đƣợc kết hợp một ngơn ngữ lập trình có hỗ trợ hệ quản trị sở liệu kết hợp với giao tiếp mạng Ví dụ nhƣ Basic, Java, C++, Ado.net kết hợp SQL Server, v.v 4.7.2 Sử dụng hệ quản trị sở liệu Phƣơng án nhƣ nói trên, thƣờng đƣợc sử dụng dự án có quy mơ nhỏ, việc phân tích thiết kế khơng q phức tạp, mơi trƣờng vận hành có tham gia Xu hƣớng chung sử dụng công cụ hỗ trợ phân tích chí cơng cụ hỗ trợ chuyên biệt theo đặc thù dự án tin học ngồi cơng cụ CASE có từ trƣớc Ví dụ RATIONAL ROSE; AGRO UML; POWER DESIGN…; YAHOO WEB ANALYTICS Cho phép chuyển từ sơ đồ, lƣợc đồ từ giai đoạn phân tích giai đoạn thiết kế thành code theo mong muốn 4.7.3 Giới thiệu rational rose Đây cơng cụ tƣơng đối nhỏ gọn cài đặt máy tính cá nhân đƣợc hỗ trợ ngơn ngữ phân tích thiết kế UML đƣợc sử dụng rộng rãi Việt nam Rational Rose công cụ đƣợc sử dụng cho phát triển hệ phần mềm hƣớng đối tƣợng theo ngôn ngữ mô hình hóa UML Với chức cơng cụ trực quan, Rational Rose cho phép tạo, quan sát, sửa đổi quản lý biểu đồ Tập ký hiệu mà Rational Rose cung cấp thống với ký hiệu UML Ngoài ra, Rational Rose cung cấp chức hỗ trợ quản lý dự án phát triển phần mềm, cung cấp thƣ viện để hỗ trợ sinh khung mã cho hệ thống theo ngơn ngữ lập trình Hình 4.12a: Màn hình khởi động Rational Rose phiên 2003 Giáo viên biên soạn: Nguyễn Trần Phương 109 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àn hình khởi động Rational Rose phiên 2003 nhƣ Hình 4.12a Ngƣời sử dụng chọn thƣ viện dự định cài đặt hệ thống, Rational Rose tải gói tƣơng ứng thƣ viện Các gói (cùng lớp tƣơng ứng) xuất biểu đồ lớp, ngƣời sử dụng tiếp tục phân tích, thiết kế hệ thống dựa thƣ viện Nếu sử dụng Rational Rose để xây dựng hệ thống từ đầu ngƣời sử dụng nên bỏ qua chức Trong giao diện Rational Rose Hình 4.12b, cửa sổ phía bên trái cửa sổ Browser chứa View (hƣớng nhìn, quan điểm), View mơ hình tƣơng ứng UML Có thể xem View cách nhìn theo khía cạnh hệ thống o Use Case View: xem xét khía cạnh chức hệ thống nhìn từ phía tác nhân bên o Logical View: xem xét trình phân tích thiết kế logic hệ thống để thực chức Use Case View o Component View: xem xét khía cạnh tổ chức hệ thống theo thành phần mối liên hệ thành phần o Deployment View: xem xét khía cạnh triển khai hệ thống theo kiến trúc vật lý Cửa sổ phía bên phải hình Rational Rose cửa sổ biểu đồ (Diagram Windows) đƣợc sử dụng để vẽ biểu đồ sử dụng công cụ vẽ tƣơng ứng ToolBox Hầu hết ký hiệu sử dụng để vẽ biểu đồ Rational Rose thống với chuẩn UML Hình 4.12b: Giao diện Rational Rose 2003 Giáo viên biên soạn: Nguyễn Trần Phương 110 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 Giao diện Rational Rose biểu đồ đƣợc chia thành phần nhƣ Hình 4.12b Ý nghĩa thành phần nhƣ sau: o MenuBar ToolBar chứa menu công cụ tƣơng tự nhƣ ứng dụng Windows khác o Phần Browser Window cho phép ngƣời sử dụng chuyển tiếp nhanh biểu đồ View o Phần Doccumentation Window dùng để viết thông tin liên quan đến phần tử mơ hình tƣơng ứng biểu đồ Các thơng tin ràng buộc, mục đích, từ khóa … liên quan đến phần tử mơ hình o Phần ToolBox chứa cơng cụ dùng để vẽ biểu đồ Ứng với dạng biểu đồ có dạng toolbox tƣơng ứng o Phần Diagram Window không gian để vẽ hiệu chỉnh biểu đồ mơ hình tƣơng ứng o Cửa sổ Specification Window đặc tả chi tiết phần tử mơ hình theo trƣờng thơng tin tƣơng ứng với dạng biểu đồ Làm quen với mơi trƣờng Rational Rose 2003 Enterprise Edition Đợi hộp thoại Create New Model xuất nhấn nút Cancel Môi trƣờng làm việc Rational Rose bao gồm cửa sổ Cửa sổ bên trái thể view khác để ngƣời sử dụng thao tác mơ hình khác nhau: Use-case View, Logical View, Component View Deployment View Mỗi view đƣợc trình bày dƣới dạng (click vào dấu + mở ra, click vào dấu - đóng lại) Cửa sổ bên trái dƣới thể documenation phần tử giữ focus (có thể usecase, actor, class…) Cửa sổ lại nằm bên phải thể lƣu đồ Khi double-click vào icon biểu đồ view, sổ bên phải hiển thị lƣu đồ Một số chức quan trọng cần ý q trình thực hiện: Để lƣu mơ hình tạo lập vào file chọn menu File | Save Sau mở menu File| Open Thay đổi font, màu viền màu tô cho phần tử đƣợc tạo • Sử dụng menu Tools | Options • Dùng General Tab • Sửa font màu sắc cần thiết Thay đổi font, màu viền màu tô cho phần tử biểu đồ • Nhấn Ctrl+A menu Edit | Select All để chọn tất phẩn tử có biểu đồ • Sử dụng menu Format | Font Size, Format | Line Color, Format | Fill Color, Format | Font Thay đổi ngơn ngữ mơ hình ngơn ngữ lập trình mặc định Các lớp package tạo đƣợc gán ngơn ngữ lập trình mặc định • Sử dụng menu Tools | Options • Dùng Notation Tab Giáo viên biên soạn: Nguyễn Trần Phương 111 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 • Kiểm tra Default notation Unified Default language Analysis, C++, Java… Hiển thị số biểu đồ (sequence diagram) • Sử dụng menu Tools | Options • Dùng tab Diagram • Chọn Sequence numbering Hiển thị tất thuộc tính tác vụ • Sử dụng menu Tools | Options • Dùng tab Diagram • Chọn Show all Attributes Show all Operations Thay đổi chế độ hiển thị stereotype cho phần tử giữ focus chức menu Format | Stereotype Display Tắt Focus of Control (sequence diagram) • Sử dụng menu Tools | Options • Dùng tab Diagram • Tắt focus of control Xây dựng biểu đồ use-case Phƣơng pháp: Dựa vào chiều tác động actor và/hoặc use-case để thiết lập mối liên kết (association) Các trƣờng hợp tổng quát hóa cụ thể hóa đƣợc thể mối quan hệ generalization Đồng thời quan hệ generalization đƣợc mở rộng thành quan hệ use extend cách sử dụng stereotype Trong phần nhận diện trƣờng hợp sử dụng ta xác định số quan hệ tác nhân trƣờng hợp sử dụng Thực hiện: Click vào dấu + use-case view để mở sau double-click vào Main Click vào hình ngƣời cơng cụ sau click vào biểu đồ Trong lúc hình ngƣời cịn đƣợc chọn, nhập tên cho actor Click vào icon ( ) (generalization) đƣa chuột vào biểu đồ Click vào ký hiệu actor kéo đến actor khác (Chú ý: giữ phím shift click vào biểu đồ tránh đƣợc việc phải chọn lại icon generalization) Click vào icon đƣờng thẳng liền có mũi tên ( ) công cụ đƣa chuột vào biểu đồ Click vào icon hình oval cơng cụ click vào biểu đồ Một số mối liên kết hai chiều chọn menu Navigable Click vào icon ( ) (association) đƣa chuột vào biểu đồ 10 Double-click vào đƣờng nối use-case Double-click vào mũi tên chọn stereotype chọn nhập mô tả nhập từ bàn phím Giáo viên biên soạn: Nguyễn Trần Phương 112 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 11 Có thể click vào ký hiệu actor hay use-case kéo để xếp lại biểu đồ Hoặc sử dụng menu Format | Layout Diagram cho chƣơng trình tự động xếp Chú ý: - Nên nhập phần documentation miêu tả use-case cửa sổ bên phải - Muốn xoá phần tử khỏi mơ hình chọn menu Edit | Delete from Model dùng chuột right-click lên phần tử cần xoá view tương ứng chọn menu Delete Cũng dùng phím tắt Ctrl+ D để xố phần tử focus nó; ý nhấn phím DEL menu Edit | Delete xoá phần tử khỏi lược đồ thao tác mà Xây dựng biểu đồ lớp Phƣơng pháp: Nhận diện mối quan hệ lớp có quan hệ generalization quan hệ dependency Thực hiện: Right-click vào Logical View chọn menu New | Package Gõ vào tên package Right-click vào icon package đặt tên chọn menu New | Class Diagram Gõ vào tên biểu đồ Click vào icon lớp ( ) sau click vào biểu đồ Double-click vào ký hiệu lớp chọn stereotype mong muốn Sau chọn tab Attributes Right-click chọn menu Insert để thêm vào thuộc tính lƣu ý kiểu thuộc tính Click vào icon (generalization) đƣa chuột vào biểu đồ Click vào ký hiệu lớp giữ chuột kéo đến lớp muốn nối Right-click vào icon package chọn menu New | Class Diagram Gõ vào tên biểu đồ Double-click vào ký hiệu lớp chọn stereotype chọn mơ tả nhập từ bàn phím 10 Click vào ký hiệu quan hệ dependency đƣa vào biểu đồ 11 Click vào Interface icon ( ) Click vào biểu đồ 12 Trong lúc ký hiệu đƣợc chọn nhập tên giao diện 13 Click vào icon quan hệ dependency 14 Có thể click vào ký hiệu class hay package kéo để xếp lại biểu đồ cho hợp lý Hoặc sử dụng chức xếp tự động Tool | Layout Diagram Xây dựng biểu đồ Phƣơng pháp: Lƣợc đồ giúp cụ thể hố use-case Nó chuyển thể kiện nối tiếp use-case trở thành chuỗi thông điệp gửi cho đối tƣợng Điều quan trọng phải nhận diện đối tƣợng Giáo viên biên soạn: Nguyễn Trần Phương 113 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 liên quan đến use-case cụ thể Mỗi use-case có nhiều lƣợc đồ dạng cụ thể Mỗi tƣơng ứng với kịch ln ln bắt đầu kích thích từ phía actor Thực hiện: Right-click vào use-case cần tạo biểu đồ Chọn menu New | Sequence Diagram Trong lúc biểu đồ đƣợc chọn nhập tên mong muốn Double-click lên biểu đồ để mở biểu đồ Click vào icon use-case view kéo vào biểu đồ Có thể đặt tên cho actor biểu đồ đối tƣợng biểu đồ cách double-click vào icon gõ tên vào Click vào icon thơng điệp (hình mũi tên) công cụ đƣa vào biểu đồ Click vào đƣờng chấm chấm biểu diễn actor kéo đến đƣờng biểu diễn đối tƣợng mong muốn Double-click vào mũi tên đặt tên cho Chú ý: - Cơng cụ Rational Rose có khả biến đổi lƣợc đồ trở thành lƣợc đồ cộng tác tƣơng ứng cách nhấn F5 thao tác với lƣợc đồ Xây dựng biểu đồ hoạt động Phƣơng pháp: Thiết lập lƣợc đồ hoạt động cho lớp để mô tả thực thi tác vụ Mỗi lƣợc đồ hoạt động có vài lớp tham gia, lớp đƣợc biểu diễn “đƣờng bơi” Thực hiện: Right-click vào lớp cần tạo Chọn New | Activity Diagram Trong lúc biểu đồ đƣợc chọn nhập tên mong muốn Click vào biểu tƣợng “đƣờng bơi” (nằm cuối công cụ) đƣa vào biểu đồ Click vào cạnh biểu đồ để tạo “đƣờng bơi”, có tên NewSwimlane Double - click vào “đƣờng bơi” NewSwimlane để gõ vào tên chọn class cho Click vào biểu tƣợng trạng thái bắt đầu () click vào biểu đồ Xoá tên mặc định NewState trạng thái bắt đầu Click vào biểu tƣợng hành động (hình chữ nhật cạnh tròn) đƣa vào biểu đồ 10 Click vào biểu đồ, lúc hành động đƣợc chọn gõ vào tên mong muốn Giáo viên biên soạn: Nguyễn Trần Phương 114 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 11 Click vào biểu tƣợng trạng thái kết thúc () click vào biểu đồ “đƣờng bơi” 12 Click vào biểu tƣợng dịch chuyển (hình mũi tên) 13 Click vào trạng thái bắt đầu biểu đồ kéo đến hành động mong muốn 14 Click vào biểu tƣợng rẽ nhánh (hình thoi) cơng cụ click vào đƣờng bơi đối tƣợng để tạo rẽ nhánh Chú ý: - Cách xếp hành động và trạng thái bắt đầu nằm “đƣờng bơi” Sắp xếp hành động từ xuống dƣới theo thứ tự xuất chúng Hoàn tất lƣợc đồ lớp Phƣơng pháp: Ta biến đổi thông điệp biểu đồ thành tác vụ lớp sau gán lớp vào đối tƣợng cách click chuột phải lên thông điệp gán tên tác vụ Nếu tên tác vụ chƣa có, chọn menu ta tạo tác vụ cho lớp Trong trình thiết lập biểu đồ tuần tự, số đối tƣợng/lớp khác đƣợc thêm vào, đặc biệt lớp biên Các tác vụ đƣợc bổ sung cho lớp biên điều khiển Chúng ta tinh chế các lớp nhận diện lúc phân tích để làm rõ thuộc tính quan hệ chúng Thực hiện: Trong lƣợc đồ lớp package, tạo quan hệ liên kết chiều usecase Click vào biểu tƣợng link attribute (đoạn thẳng rời nét nối vào đoạn thẳng liền nét) công cụ đƣa vào biểu đồ Click vào đoạn thẳng biểu diễn quan hệ liên kết use-case kéo đến biểu tƣợng use-case khác Xây dựng lƣợc đồ thành phần (component diagram) Phƣơng pháp: Lƣợc đồ thành phần thể thành phần thuộc nhiều loại: file mã nguồn, chƣơng trình thực thi, thƣ viện liên kết tĩnh/động, applet,… Sự phân loại thể qua stereotype thành phần Các thành phần mã nguồn đƣợc gán số lớp Logical view Chúng thƣờng có quan hệ phụ thuộc với Các thành phần thực thi có quan hệ phụ thuộc với thƣ viện liên kết tĩnh/động Nhƣ thông thƣờng tạo lƣợc đồ thành phần: Lƣợc đồ thành phần mã nguồn (tƣơng ứng với thời gian biên dịch) Lƣợc đồ thành phần thực thi thƣ viện (tƣơng ứng với thời gian thực thi) Các lƣợc đồ thành phần đƣợc thiết lập giai đoạn thực, phải xác định rõ ngơn ngữ lập trình nhƣ công nghệ đƣợc áp dụng Chẳng hạn chọn ngôn ngữ Java (nên đặt ngôn ngữ mặc định từ đầu Java) công nghệ JavaServlet Giáo viên biên soạn: Nguyễn Trần Phương 115 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 trình bao gồm servlet: LibServ, StatServ applet CheckReg LibServ servlet đƣợc nhúng vào trang Index.shtml StatServ thực chức thống kê CheckReg có chức kiểm tra sơ đăng ký môn học sinh viên Chúng ta phân chia package logical-view rồi, sinh mã trực tiếp từ lớp Các package đƣợc ánh xạ trở thành package tƣơng ứng mã nguồn Java Do khơng cần thiết tạo thành phần mã nguồn Đối với ngôn ngữ C++ nên tạo thành phần package body package specification gán lớp cho chúng Thực hiện: Click vào dấu + component-view double-click vào Main Click vào icon thành thành phần công cụ chọn menu Tools | Create | Generic Component đƣa vào biểu đồ Click vào biểu đồ Trong lúc ký hiệu đƣợc chọn nhập tên Index.shtml Right-click vào Index.shtml biểu đồ chọn menu Open Standard Specification… Trong dialog xuất đặt stereotype Thực tƣơng tự bƣớc 2-5 để tạo ra: thành phần LibServ có stereotype , thành phần StatServ có stereotype thành phần CheckReg có stereotype Click vào ký hiệu quan hệ phụ thuộc (mũi tên rời nét) chọn menu Tools | Create | Dependency đƣa vào biểu đồ Click vào ký hiệu Index.shtml kéo đến LibServ Thực tƣơng tự bƣớc 7-8 để tạo phụ thuộc khác: từ LibServ đến CheckReg, từ LibServ đến StatServ Sinh mã Phƣơng pháp: Có thể sinh mã Java cho lớp logical-view Chú ý đặt đƣờng dẫn đến thƣ mục chứa mã nguồn Java Cũng sinh mã Visual Basic Visual C++ cách làm tƣơng tƣ nhƣ Java chức Generate/Update Code Thực hiện: Chọn menu Tools | Java | Project Specification… Trong dialog xuất nhấn vào nút bên trái phần Directories để thêm vào đƣờng dẫn đến thƣ mục chứa mã nguồn Java Có thể chọn thƣ mục trực tiếp sử dụng symbol tạo chức File | Edit Path Map Right-click vào ký hiệu lớp Item chọn menu Open Standard Specification… Chọn Export Control Protected Nếu muốn đặt lớp Item abstract vào tab Detail đánh dấu vào nút Abstract Giáo viên biên soạn: Nguyễn Trần Phương 116 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 Right-click vào ký hiệu lớp Item chọn menu Java | Generate Java Trong dialog xuất chọn file nhấn Map Nếu có lỗi xảy mở cửa sổ Log để tìm nguyên nhân Thực tƣơng tự bƣớc 3-5 để sinh mã cho lớp khác Lập tài liệu Thực hiện: Chọn menu Report | Documentation Report Trong dialog xuất chọn lập tài liệu logical-view hay component-view thay đổi đƣờng dẫn đến file Word tạo ra… Giáo viên biên soạn: Nguyễn Trần Phương 117