Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 136 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
136
Dung lượng
3,51 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI ĐẠI HỌC CÔNG NGHỆ - Trần Thịnh Phong SỬ DỤNG HIỆU QUẢ NGÔN NGỮ ĐẶC TẢ UML TRONG PHÁT TRIỂN PHẦN MỀM LUẬN VĂN THẠC SĨ Hà Nội - 2008 ĐẠI HỌC QUỐC GIA HÀ NỘI ĐẠI HỌC CÔNG NGHỆ - Trần Thịnh Phong SỬ DỤNG HIỆU QUẢ NGÔN NGỮ ĐẶC TẢ UML TRONG PHÁT TRIỂN PHẦN MỀM Ngành: Công nghệ thông tin Mã số: 1.01.10 LUẬN VĂN THẠC SĨ NGƯỜI HƯỚNG DẪN KHOA HỌC PGS.TSKH Nguyễn Xuân Huy Hà Nội - 2008 Mục l Mở đầu Chương 1: Tổng qu 1.1 Mô tả vấn đề 1.2 Mục tiêu Chương 2: Ngôn ngữ mơ hình hóa thống UML 2.1 Khái quát 2.2 Các biểu đồ UML 2.2.1 Use Cas 2.2.2 Class Di 2.2.3 Statecha 2.2.4 Activity 2.2.5 Sequenc 2.2.6 Collabor 2.2.7 Compon 2.2.8 Deploym Chương 3: Phương pháp hướng đối tượng 3.1 Lập trình hƣớng cấu trúc 3.2 Cách tiếp cận hƣớng đối tƣợng 3.3 Phân tích Thiết kế hƣớng đối tƣợng Chương 4: Quy trình phát triển phần mềm 4.1 Mơ hình thác nƣớc 4.2 Mơ hình xoắn ốc 4.3 Cơ cấu lặp, tăng dần – Iterative, Incremen 4.3.1 Pha khở 4.3.2 Pha chuẩ 4.3.3 Pha xây 4.3.4 Pha chuy 4.3.5 Phân bổ 4.4 Microsoft Solution Framework 4.5 Rational Unified Process (RUP) Chương 5: Áp dụng UML 5.1 Pha khởi đầu (Inception) Trang 5.1.1 Khái quát 29 5.1.2 Các sản phẩm(Artifact) bắt đầu pha khởi đầu 30 5.1.3 Tìm hiểu yêu cầu(Requirement) 30 5.1.4 Mơ hình Use Case: Viết yêu cầu ngữ cảnh 31 5.2 Pha chuẩn bị - Vòng lặp 33 5.2.1 Mơ hình Use Case: Vẽ Sơ đồ hệ thống 33 5.2.2 Mô hình Nghiệp vụ: Hình tƣợng hóa Khái niệm .34 5.2.3 Mơ hình Nghiệp vụ: Thêm Liên kết 35 5.2.4 Mơ hình Nghiệp vụ: Thêm Thuộc tính 36 5.2.5 Các biểu đồ tƣơng tác 36 5.2.6 GRASP: Thiết kế đối tƣợng Trách nhiệm 37 5.2.7 Mơ hình Thiết kế: Hiện thực hóa Use Case với khn mẫu GRASP 38 5.2.8 Mơ hình Thiết kế: Xác định tính khả thấy đƣợc 39 5.2.9 Mơ hình Thiết kế: Tạo Biểu đồ Lớp Thiết kế 40 Chương 6: Áp dụng UML để phân tích thiết kế ứng dụng .41 6.1 PHÁT BIỂU BÀI TOÁN 41 6.2 SƠ ĐỒ TỔNG THỂ NGHIỆP VỤ BÀI TOÁN 43 6.3 SƠ ĐỒ USE CASE 44 6.3.1 Sơ đồ use case Main: 44 6.3.2 Sơ đồ use case Main 2: 45 6.4 CÁC TÁC NHÂN 46 6.4.1 Tác nhân – Cán tiếp nhận 46 6.4.2 Tác nhân – Trƣởng phòng 46 6.4.3 Tác nhân – Cán thụ lý 46 6.4.4 Tác nhân – Văn thƣ lƣu trữ 46 6.4.5 Tác nhân – Lãnh đạo 46 6.4.6 Tác nhân – Ngƣời quản trị 46 6.5 MÔ TẢ CHI TIẾT CÁC USE CASE 47 6.5.1 Use Case – Tiếp nhận hồ sơ 47 6.5.2 Use Case – Thụ lý 57 6.5.3 Use Case – Phê duyệt 68 6.5.4 Use Case – Trả hồ sơ thu lệ phí 73 6.5.5 Use Case – Quản lý sau cấp phép 77 Trang 6.5.6 Use Case – Lập báo cáo 83 6.5.7 Use Case – Tra cứu WEB 87 6.5.8 Use Case – Tiện ích hỗ trợ 89 6.5.9 Use Case – Quản trị hệ thống 98 6.5.10 Use Case – Quản lý danh mục 103 Kết luận 113 Tài liệu tham khảo 114 Trang Danh mục hình vẽ Hình 2.1 Ví dụ biểu đồ Use case Hình 2.2 Ví dụ biểu đồ lớp 10 Hình 2.3 Ví dụ biểu đồ trạng thái 11 Hình 2.4 Ví dụ biểu đồ hoạt động 12 Hình 2.5 Ví dụ biểu đồ 13 Hình 2.6 Ví dụ biểu đồ cộng tác 14 Hình 2.7 Ví dụ biểu đồ thành phần 15 Hình 2.8 Ví dụ biểu đồ triển khai 16 Hình 4.1 Mơ hình “Thác nƣớc” truyền thống 19 Hình 4.2 Nguy chi phí xử lý lỗi mơ hình “Thác nƣớc” 20 Hình 4.2 Một quy trình “Xoắn ốc” 21 Hình 4.4 Bốn pha “Cơ cấu lặp, tăng dần” 22 Hình 4.5 Pha “Xây dựng” bao gồm chuỗi “Thác nƣớc nhỏ” 23 Hình 4.6 Độ dài pha cho dự án dài năm 24 Hình 4.7 Mơ hình quy trình MSF 24 Hình 4.8 Các pha mốc thời gian mơ hình quy trình MSF 25 Hình 4.9 Các discipline RUP 27 Hình 4.10 Các Artifact(sản phẩm) khung thời gian RUP 28 Hình 5.1 Biểu đồ hệ thống cho tình xử lý bán hàng 34 Hình 5.2 Một mơ hình nghiệp vụ 35 Hình 5.3 Một mơ hình nghiệp vụ với liên kết 36 Hình 5.4 Biểu đồ cộng tác 37 Hình 5.5 Biểu đồ 37 Hình 5.6 Biểu đồ dùng thực hóa Use Case 39 Hình 5.7 Minh họa khả nhìn thấy 40 Hình 5.8 Minh họa biểu đồ lớp thiết kế 40 Trang Bảng thuật ngữ chuyên môn Artifact Association Business Modeling Class Diagram Development Case Discipline Domain Model GRASP Interaction Diagram Problem Domain RUP Scenario SSD UML Use Case Visibility Trang Mở đầu Nền kinh tế phát triển với tốc độ ngày cao với nhu cầu cạnh tranh giữ vững thị trƣờng ngày lớn Trong thời đại thƣơng mại điện tử, kinh doanh điện tử nhƣ phát triển hệ thống theo kiểu truyền thống khơng cịn thích hợp Hệ thống cần phải đƣợc phát triển “thời gian Internet”, nhu cầu với hệ thống có độ mềm dẻo cao tăng lên, điều đòi hỏi việc thay đổi hệ thống phải đƣợc thực nhanh Đây lúc mà UML(Unified Modeling Language – Ngôn ngữ mơ hình hóa thống nhất) xuất để giải vấn đề UML hệ thống ký hiệu chuẩn công nghiệp để mơ hình hóa cho hệ thống hƣớng đối tƣợng tảng cho khả phát triển nhanh ứng dụng Tuy nhiên thực tế cho thấy khả sử dụng hiệu UML phát triển phần mềm cịn hạn chế cơng ty phần mềm Việt nam, luận văn nghiên cứu trình bày cách thức sử dụng UML cách hiệu dự án phần mềm Trang Chương 1: Tổng quan 1.1 Mô tả vấn đề Công cụ sản xuất phần mềm với trợ giúp máy tính (CASE tool) cơng cụ sử dụng máy tính để hỗ trợ quy trình phát triển phần mềm, nhờ tăng suất giảm thiểu khả thất bại dự án CASE tool trình dịch (Compiler) để tạo phần mềm từ mã nguồn Một kiểu khác CASE tool không tham gia trực tiếp vào việc tạo sản phẩm phần mềm Ví dụ nhƣ công cụ đánh giá hoạch định, để đánh giá chi phí dự án phát triển phần mềm giúp quản lý nguồn lực cho dự án phát triển phần mềm Phƣơng pháp phát triển phần mềm đƣa hạng mục cho quy trình phát triển phần mềm Một phƣơng pháp phát triển phần mềm đƣợc hỗ trợ CASE tool Mục đích công cụ nhƣ bao phủ thông tin mà có quan hệ với sản phẩm phần mềm Nó cung cấp khả quản lý tất từ yêu cầu cấu trúc ứng dụng mô đun thành phần phần mềm nhƣ quan hệ chúng Mơ hình sản phẩm phần mềm giúp ta hiểu đƣợc quan hệ yêu cầu kiến trúc ứng dụng hữu dụng có yêu cầu thay đổi sản phẩm Thông thƣờng ký hiệu đồ họa đƣợc sử dụng để biểu diễn mơ hình này, dễ đọc ngƣời Trong khứ ngƣời ta sử dụng nhiều ngơn ngữ hình tƣợng để biểu diễn mơ hình sản phẩm phần mềm Hiện Ngơn ngữ Mơ hình hóa Hợp (UML) ngơn ngữ hình tƣợng chuẩn cho mục đích UML định nghĩa làm để mô tả đối tƣợng phần mềm trừu tƣợng Có nghĩa UML độc lập với ngôn ngữ môi trƣờng lập trình mơ tả kiến trúc phần mềm mà ta triển khai mơi trƣờng phát triển Phát triển phần mềm dựa phƣơng pháp hƣớng đối tƣợng, có ƣu vƣợt trội so với phƣơng pháp hƣớng cấu trúc, đời để đáp ứng toán lớn phức tạp Và UML ngôn ngữ phù hợp dành cho phân tích thiết kế hƣớng đối tƣợng Việc áp dụng hiệu UML vào trình phát triển phần mềm đem lại lợi ích lớn cho dự án phần mềm Để áp dụng hiệu UML cần hiểu rõ nó, cách thức áp dụng công cụ hỗ trợ liên quan 1.2 Mục tiêu Đồ án có mục tiêu sau: Nghiên cứu trình bày vai trị UML cơng nghệ phần mềm Nghiên cứu trình bày Quy trình phát triển phần mềm tiêu biểu Trình bày phƣơng pháp ứng dụng UML phân tích thiết kế Áp dụng UML phân tích thiết kế ứng dụng hệ thông tin quản lý cụ thể: “Chương trình quản lý cấp phép xây dựng” Trang 106 6.5.10.6 Thiết kế giao diện: Các danh mục quận 6.5.10.7 Sơ đồ Class Diagram CD-Danh mục phƣờng (xã) - OnClick() CtlFindPhuong # GetObject ( ) - OnClick to add - OnDoubleClick() to edit - OnClick() FrmMainCpmApp Người quản trị CtlPhuong # # # # OnNew ( ) OnEdit ( ) OnDelete ( ) OnSave ( ) Trang 107 6.5.10.8 Sơ đồ Sequence Diagram: Danh mục cán : Người quản trị Người quản trị định nghĩa danh mục Cán Bộ Người quản trị thay đổi danh mục Cán Bộ định nghĩa định nghĩa thêm danh mục Cán Bộ xóa danh mục Cán Bộ 6.5.10.9 : Chọn : \"Danh mục tài liệu"\ : \OnUpdateDataSource\ : OnNew ( ) : Chọn : \"Danh mục tài liệu"\ Sơ đồ Sequence Diagram: Danh mục quận huyện : Người quản trị Người quản trị định nghĩa : Chọn : \"Danh mục tài li danh mục Quận Người quản trị thay đổi danh mục Quận định : Chọn : \"Danh mục tài li nghĩa định nghĩa thêm danh mục Quận xóa danh mục Quận Trang 108 6.5.10.10 Sơ đồ Sequence Diagram: Danh mục phường xã : Người quản trị Người quản trị định : Chọn : \"Dan nghĩa danh mục Phường Người quản trị thay đổi danh mục Phường : Chọn : \"Dan định nghĩa định nghĩa thêm danh mục Phường xóa danh mục Phường 6.5.10.11 Sơ đồ Sequence Diagram: Danh mục phố thôn : Người quản trị Người quản trị định nghĩa : Chọn : danh mục Phố Người quản trị thay đổi danh mục Phố định nghĩa : Chọn : định nghĩa thêm danh mục Phố xóa danh mục Phố Trang 109 6.5.10.12 Sơ đồ Sequence Diagram: Danh mục cấp hạng : Người quản trị Người quản trị định nghĩa danh mục Cấp Hạng Người quản trị thay đổi danh mục Cấp Hạng định nghĩa định nghĩa thêm danh mục Cấp Hạng xóa danh mục Cấp Hạng 6.5.10.13 : \Chọn "Quản lý danh mục"\ : \Chọn quản lý danh mục Sơ đồ Sequence Diagram: Danh mục loại tài liệu : Người quản trị Người quản trị định nghĩa danh mục Loại Tài Liệu Người quản trị thay đổi danh mục Loại Tài Liệu định nghĩa định nghĩa thêm danh mục Loại Tài Liệu xóa danh mục Loại Tài Liệu : Chọn : \"Danh mục tài liệu"\ : Chọn : \"Danh mục tài liệu"\ Trang 110 6.5.10.14 Sơ đồ Sequence Diagram: Danh mục quan cấp phép : Người quản trị Người quản trị định : Chọn : \"Danh mục tài liệu"\ nghĩa danh mục Cơ Quan Cấp Phép Người quản trị thay đổi danh mục Cơ Quan Cấp Phép định : Chọn : \"Danh mục tài liệu"\ nghĩa định nghĩa thêm danh mục Cơ Quan Cấp Phép xóa danh mục Cơ Quan Cấp Phép 6.5.10.15 Sơ đồ Sequence Diagram: Danh mục quan chức : Người quản trị danh mục Cơ Quan Chức Năng định nghĩa định nghĩa thêm danh mục Cơ Quan Chức Năng xóa danh mục Cơ Quan Chức Năng Người quản trị định nghĩa danh mục Cơ Quan Chức Năng Người quản trị thay đổi : Chọn : \"Danh mục tài liệu"\ : Chọn : \"Danh mục tài liệu"\ : OnUpdateDataSource ( ) : OnNew ( ) : OnSave ( ) : OnDelete ( ) Trang 111 6.5.10.16 Sơ đồ Sequence Diagram: Danh mục giá xây dựng : Người quản trị Người quản trị định nghĩa danh : Chọn mục Giá Xây Dựng Người quản trị thay đổi danh mục Giá Xây Dựng định nghĩa : Chọn định nghĩa thêm danh mục Giá Xây Dựng xóa danh mục Giá Xây Dựng 6.5.10.17 Sơ đồ Sequence Diagram: Danh mục loại chứng nhận sở hữu : Người quản trị danh mục Loại Chứng Nhận định nghĩa định nghĩa thêm danh mục Loại Chứng Nhận xóa danh mục Loại Chứng Nhận Người quản trị định nghĩa danh mục Loại Chứng Nhận Người quản trị thay đổi : Chọn : \"Quản lý danh mục : Chon : \"Quản lý danh mục"\ Trang 112 6.5.10.18 Sơ đồ Sequence Diagram: Danh mục loại dự án : Người quản trị Người quản trị định nghĩa danh mục Loại Dự Án Người quản trị thay đổi danh mục Loại Dự Án định nghĩa định nghĩa thêm danh mục Loại Dự Án xóa danh mục Loại Dự Án 6.5.10.19 : Chọn : \"Danh mục tài liệu"\ : Chọn : \"Danh mục tài liệu"\ Sơ đồ Sequence Diagram: Danh mục mục đích sử dụng : Người quản trị Người quản trị định nghĩa : Chon : \"Da danh mục Mục Đích Sử Dụng Người quản trị thay đổi danh mục Mục Đích Sử Dụng định nghĩa : Chọn : \"Da định nghĩa thêm danh mục Mục Đích Sử Dụng xóa danh mục Mục Đích Sử Dụng Trang 113 6.5.10.20 Sơ đồ Sequence Diagram: Danh mục phần trăm vốn : Người quản trị Người quản trị định nghĩa danh mục Phần Trăm Vốn Kết luận Kết đạt Sau nghiên cứu khái niệm UML nhƣ phƣơng pháp sử dụng UML quy trình phát triển phần mềm, ta hiểu rõ cách thức áp dụng UML cách hiệu quả, đặc biệt việc phân tích thiết kế hƣớng đối tƣợng cho dự án phần mềm Luận văn xây dựng thành công sản phẩm phần mềm: “Quản lý cấp phép xây dựng” dựa việc áp dụng UML phân tích thiết kế Hướng phát triển Tác giả mong muốn tiếp tục nghiên cứu sâu UML nhƣ kỹ thuật phân tích thiết kế hƣớng đối tƣợng, quy trình phát triển phần mềm RUP để góp phần nâng cao lực thiết kế đội ngũ làm phần mềm Việt nam Trang 114 Tài liệu tham khảo Tiếng Anh Wendy Boggs and Michael Boggs(2002), Mastering UML with Rational Rose 2002, SYBEX Inc, California Ariadne(2001), UML Applied - Object Oriented Analysis and Design Using the UML, Ariadne Training Limited Craig Larman(2001), Applying Uml And Patterns- An Introduction To Object-Oriented Analysis And Design And The Unified Process, Prentice Hall ... GIA HÀ NỘI ĐẠI HỌC CÔNG NGHỆ - Trần Thịnh Phong SỬ DỤNG HIỆU QUẢ NGÔN NGỮ ĐẶC TẢ UML TRONG PHÁT TRIỂN PHẦN MỀM Ngành: Công nghệ thông tin Mã số: 1. 01. 10 LUẬN VĂN THẠC SĨ NGƯỜI HƯỚNG... mềm hạn chế công ty phần mềm Việt nam, luận văn nghiên cứu trình bày cách thức sử dụng UML cách hiệu dự án phần mềm Trang Chương 1: Tổng quan 1. 1 Mô tả vấn đề Công cụ sản xuất phần mềm với trợ... nghiệm mà sử dụng RUP, đội phát triển tận dụng đƣợc nhiều lợi Sau sáu kinh nghiệm RUP phát triển phần mềm: Phát triển phần mềm theo chu kỳ lặp Quản lý yêu cầu Sử dụng kiến trúc dựa thành phần