Thạc Sĩ Xây dựng công cụ mô hình hoá tiến trình hỗ trợ mẫu tiến trình

Thảo luận trong 'Khoa Học Công Nghệ' bắt đầu bởi Bích Tuyền Dương, 15/10/12.

  1. Bích Tuyền Dương

    Bài viết:
    2,590
    Được thích:
    0
    Điểm thành tích:
    0
    Xu:
    0Xu
    Giới thiệu
    Từ thập niên 80, nhằm nâng cao hiệu quả và chất lượng của việc phát triển phần mềm, cộng đồng công nghệ phần mềm (Software Engineering) ngày càng chú trọng phát triển hướng nghiên cứu về công nghệ tiến trình (Software Process Technology). Công nghệ tiến trình nhắm đến việc biểu diễn tường minh tiến trình phát triển phần mềm dưới hình thức có thể thực thi được với sự hỗ trợ của các công cụ tự động hoá. Để đạt được mục tiêu này, bước nghiên cứu đầu tiên của công nghệ tiến trình là mô hình hoá tiến trình phần mềm. Tiến trình phần mềm mô tả cách thức thực thi một đề án phát triển phần mềm liên quan đến những yếu tố như sản phẩm phần mềm, vai trò người tham gia, quy trình thực hiện các tác vụ, các ràng buộc về môi trường phát triển, .Mô hình hoá tiến trình (Process modeling) là công việc định nghĩa tường minh tiến trình phần mềm thông qua các mô hình tiến trình. Các mô hình tiến trình này có thể được sử dụng để trao đổi thông tin tiến trình, để hướng dẫn, quản lý việc thực thi tiến trình hay phân tích nhằm nâng cao chất lượng tiến trình. Tiến trình phần mềm về bản chất rất phức tạp và nhiều tiến hoá, do vậy việc mô hình hoá tiến trình phần mềm là một công việc đòi hỏi nhiều công sức, thời gian và kinh nghiệm. Tuy nhiên, các tiến trình phần mềm có những điểm chung có thể áp dụng cho các đề án tương tự nhau. Từ nhận xét này, cộng đồng công nghệ tiến trình hướng đến mục tiêu tái sử dụng mô hình tiến trình nhằm tiết giảm chi phí mô hình hoá tiến trình. Mẫu tiến trình (Process Pattern) là một hướng tiếp cận khá mới mẻ cho việc tái sử dụng các kiến thức về tiến trình. Một mẫu tiến trình mô tả một giải pháp đã được kiểm nghiệm để giải quyết một vấn đề thường gặp trong việc phát triển tiến trình [2]. Giải pháp đề nghị có thể là một phần mô hình của một tiến trình ổn định, cũng như các kinh nghiệm trong việc tổ chức, xây dựng tiến trình. Việc thu thập các kiến thức này và trình bày dưới dạng mẫu giúp việc phổ biến và áp dụng các giải pháp tiến trình được dễ dàng và hiệu quả hơn. Tuy về lý thuyết hướng tiếp cận mẫu tiến trình hứa hẹn nhiều lợi ích, nhưng trong thực tế mẫu tiến trình chưa phát huy được hết sức mạnh của mình và vẫn còn được áp dụng một cách khiêm tốn. Nguyên nhân của sự hạn chế này là do các hướng nghiên cứu về mẫu tiến trình chưa trưởng thành. Phần lớn các nhóm nghiên cứu tập trung vào việc định nghĩa ngôn ngữ biểu diễn mẫu tiến trình. Tuy đạt được một số kết quả lý thuyết bước đầu, nhưng việc áp dụng trực tiếp mẫu tiến trình trong quá trình mô hình hoá tiến trình vẫn chưa khả thi do việc hình thức hoá mẫu tiến trình chưa còn trọn vẹn, thiếu các phương pháp cũng như công cụ hỗ trợ để khai thác mẫu tiến trình một cách có hệ thống và hiệu quả [2]. Trong bối cảnh hiện nay, việc xây dựng một công cụ mô hình hoá tiến trình có sự hỗ trợ tái sử dụng mẫu tiến trình sẽ chứng minh rõ nét hơn lợi ích của hướng tiếp cận này và góp phần thúc đẩy cho hướng nghiên cứu mẫu tiến trình trở nên thực tiễn hơn.
    1.2 Mục tiêu đề tài
    Yêu cầu đặt ra cho đề tài là xây dựng một công cụ mô hình hoá tiến trình phần
    mềm có hỗ trợ các cơ chế để tạo dựng, sửa đổi, tìm kiếm và áp dụng một cách bán
    tự động các mẫu tiến trình.
    1.3 Hướng tiếp cận
    Để hoàn thành mục tiêu đề tài, mô hình lý thuyết và môi trường cài đặt được lựa chọn như sau:
    - Mô hình lý thuyết: Để mô hình hoá tiến trình phần mềm, cần sử dụng một ngôn ngữ mô hình hoá tiến trình có hỗ trợ khái niệm mẫu tiến trình. Trong khuôn khổ đề tài này, chúng tôi sử dụng ngôn ngữ UML-PP [2], một ngôn ngữ được phát triển dựa trên 2 chuẩn SPEM 1.1 [38] và UML 2.0 [39], cho phép mô tả mẫu tiến trình và các tiến trình dựa trên mẫu tiến trình.
    - Môi trường cài đặt: Sử dụng môi trường Visual Studio .NET 2005 với ngôn ngữ lập trình C#.
    1.4 Kết quả đề tài
    Kết quả của đề tài bao gồm:
    - Tóm lược tình hình nghiên cứu về mô hình hoá tiến trình (Process Modeling), mẫu tiến trình (Process Pattern), và các công cụ hỗ trợ 2 nội dung này.
    - Phân tích các yêu cầu đặt ra cho một công cụ mô hình hoá tiến trình có hỗ trợ mẫu tiến trình đồng thời thiết kế và cài đặt một công cụ mô hình hoá thoả mãn các yêu cầu phân tích ở phần trên.
    1.5 Bố cục luận văn
    Luận văn được trình bày gồm các phần chính như sau:
    - Phần mở đầu
    - Tổng quan về mô hình hoá tiến trình phần mềm và mẫu tiến trình
    - Tổng quan về các công cụ hỗ trợ hiện có và đề nghị các chức năng cần thiết cho một công cụ mô hình hoá tiến trình hỗ trợ tái sử dụng mẫu tiến trình.
    - Giới thiệu công cụ mô hình hoá tiến trình PATPRO-MOD
    - Tổng kết
    - Phụ lục A. Ngôn ngữ mô hình hoá UML-PP
    MỤC LỤC
    CHƯƠNG 1. MỞ ĐẦU 8
    1.1 Giới thiệu 8
    1.2 Mục tiêu đề tài 9
    1.3 Hướng tiếp cận 9
    1.4 Kết quả đề tài 10
    1.5 Bố cục luận văn . 10
    CHƯƠNG 2 MÔ HÌNH HOÁ TIẾN TRÌNH VÀ MẪU TIẾN TRÌNH 12
    2.1 Mô hình hoá tiến trình 12
    2.1.1 Giới thiệu 12
    2.1.2 Mục tiêu và lợi ích của việc mô hình hoá . 13
    2.1.3 Mô hình tiến trình . 13
    2.1.4 Ngôn ngữ mô hình hoá tiến trình 15
    2.1.5 Nhu cầu sử dụng lại tiến trình . 16
    2.2 Mẫu tiến trình 17
    2.2.1 Giới thiệu 17
    2.2.2 Các mẫu tiến trình hiện có 18
    2.2.3 Sử dụng mẫu tiến trình 21
    2.3 UML-PP 25
    2.3.1 Mô hình tiến trình . 26
    2.3.2 Mẫu tiến trình 27
    2.4 Case study minh họa nhu cầu sử dụng mẫu tiến trình 28
    CHƯƠNG 3 CÔNG CỤ HỖ TRỢ MÔ HÌNH HOÁ TIẾN TRÌNH . 33
    3.1 Hiện trạng các công cụ hỗ trợ mô hình hoá 33
    3.1.1 Eclipse Process Framework Composer . 33
    3.1.2 Business Process Visual Architect 38
    3.2 Đề nghị các chức năng cần có cho một công cụ mô hình hoá 41
    3.2.1 Hỗ trợ xây dựng và quản lý các mô hình tiến trình và mẫu tiến trình 41
    3.2.2 Hỗ trợ tái sử dụng mẫu tiến trình 42
    3.2.3 Hỗ trợ mô hình hoá trực quan . 43
    3.2.4 Hỗ trợ định dạng mô hình tiến trình . 44
    3.2.5 Hỗ trợ phân tích các luồng thực thi 45
    3.2.6 Hỗ trợ làm việc nhóm với các công cụ quản lý cấu hình 45
    3.2.7 Hỗ trợ phát sinh tài liệu mô hình tiến trình . 45
    3.2.8 Hỗ trợ việc in ấn các mô hình tiến trình . 46
    3.2.9 Giao diện hiệu quả 46
    3.2.10 Các tính năng khác 47
    3.3 Phân tích các khó khăn chính khi xây dựng công cụ 47
    3.3.1 Lựa chọn ngôn ngữ mô hình hoá 47
    3.3.2 Các phương pháp sử dụng lại . 48
    3.3.3 Các công cụ hiện có 49
    3.3.4 Các ngôn ngữ liên quan 49
    3.3.5 Phương pháp lưu trữ . 49
    3.3.6 Phương pháp hỗ trợ tìm kiếm mẫu tiến trình 49
    3
    3.4 Đánh giá các công cụ hiện có theo các chức năng đề nghị . 50
    CHƯƠNG 4 CÔNG CỤ HỖ TRỢ MÔ HÌNH HOÁ PATPRO-MOD 55
    4.1 Giới thiệu 55
    4.2 Yêu cầu cho PATPRO-MOD . 56
    4.2.1 Các yêu cầu chức năng . 56
    4.2.2 Các yêu cầu liên quan đến việc sử dụng lại mẫu tiến trình . 63
    4.2.3 Các yêu cầu phi chức năng . 64
    4.3 Thiết kế và cài đặt PATPRO-MOD 65
    4.3.1 Môi trường cài đặt 65
    4.3.2 Kiến trúc hệ thống . 66
    4.3.3 Thiết kế lớp đối tượng 67
    4.3.4 Thiết kế lưu trữ . 77
    4.3.5 Mô tả các thuật toán 82
    4.4 Các tính năng của PATPRO-MOD . 85
    4.4.1 Nhóm tính năng quản lý các mô hình tiến trình . 87
    4.4.2 Nhóm tính năng quản lý các mẫu tiến trình 92
    4.4.3 Nhóm tính năng quản lý các tri thức tiến trình . 94
    4.4.4 Đánh giá PATPRO-MOD . 95
    4.5 Case study minh họa . 96
    4.5.1 Các mẫu tiến trình được sử dụng lại . 96
    4.5.2 Các bước tạo lập mô hình tiến trình 99
    4.5.3 Nhận xét 110
    CHƯƠNG 5 TỔNG KẾT . 112
    5.1 Một số kết quả đạt được 112
    5.2 Hướng phát triển của đề tài . 113
    TÀI LIỆU THAM KHẢO 114
    PHỤC LỤC A. NGÔN NGỮ MÔ HÌNH HOÁ UML-PP 120
    1 Giới thiệu 120
    2 Process Structure . 120
    2.1 Các thành tố của mô hình tiến trình 121
    2.2 Quan hệ giữa các thành tố tiến trình . 122
    2.3 Product 123
    2.4 Role . 124
    2.5 Task . 127
    2.6 Mô hình tiến trình . 130
    3 ProcessPattern . 134
    3.1 Pattern Problem . 135
    3.2 Pattern Context . 136
    3.3 Process Model . 136
    3.4 Các loại mẫu tiến trình 137
    4 PatternRelationship . 139
    4.1 Các quan hệ áp dụng mẫu tiến trình . 139
    4.2 Các quan hệ tổ chức mẫu tiến trình 143
     

    Các file đính kèm:

Đang tải...