Đơn vị chức năng (Funtional Unit)

Một phần của tài liệu Phát triển phương pháp tinh chế mô hình trên seam để hỗ trợ sinh mã tự động (Trang 39 - 43)

V. CỗN BỘ HƯỚNG DẪN (Ghi r› học hˆm, học vị, họ, t•n):

3 Cơ sở lý thuyết

3.5 Đơn vị chức năng (Funtional Unit)

Trong hệ thống, chœng ta định nghĩa một đơn vị chức năng, lˆ m™ tả cho chức năng trong một hệ thống. Chœng ta c— thể thấy, đơn vị chức năng ƠfindÕ b•n dưới c— bốn th™ng số:

- Một tập mˆ chœng ta muốn t“m phần tử

- Điều kiện mˆ chœng ta ‡p dụng để t“m kiếm phần tử (thuộc t’nh) - Gi‡ trị cụ thể mˆ chœng ta muốn so s‡nh với thuộc t’nh

- Phần tử được t“m thấy trong tập hợp bởi những điều kiện đ‹ định sẵn (gi‡ trị đầu ra)

H“nh 9 Ð Th™ng số của đơn vị chức năng

(a)Thiết kế dịch vụ - M™i trường biểu diễn

(b)Đoạn m‹ Alloy Ð Giả lập dịch vụ để chạy

find

Trong tập nˆo (set) Dữ liệu đầu

Điều kiện nˆo ? (attribute)

(c)Một mẩu JSON template được sinh ra từ m™ h“nh (a) H“nh 10 Ð Đơn vị chức năng find trong nhiều m™i trường kh‡c nhau

Dựa tr•n định nghĩa tổng qu‡t nˆy, đơn vị chức năng ƠfindÕ được biểu diễn trong nhiều phần kh‡c nhau của m™i trường, c— thể thấy trong h“nh 10. Trong phần thiết kế dịch vụ, chœng ta c— thể thấy tất cả th™ng số trong sơ đồ như h“nh 10a. Chœ ý rằng trong trường hợp nˆy, ƠcriteriaÕ vˆ ƠwhichSetÕ lˆ những th™ng số được biểu diễn tr•n c•ng một đường thẳng ƠcriteriaAndWhichSetÕ. Lý do lˆ ta muốn bản thiết kế r› rˆng nhất c— thể mˆ kh™ng c— một đường thẳng dư thừa nˆo. Từ đường nˆy được kết nối tới phần tử điều kiện, chœng ta c— thể kết luận ƠwhichSetÕ lˆ phần tử cha của ƠcriteriaÕ.

Tương tự, trong phần giả lập dịch vụ (H“nh 10b) chœng ta đ‹ định nghĩa hˆm Alloy với tất cả th™ng số được định nghĩa. Cuối c•ng, trong phần sinh m‹ cho dịch vụ (H“nh 10c) chœng ta cả thể thấy những th™ng số được d•ng trong m™i trường java dựa tr•n mẫu JSON.

Tương tự như đơn vị chức năng ƠfindÕ, sẽ c— nhiều th™ng số tổng qu‡t kh‡c được định nghĩa cho c‡c đơn vị chức năng kh‡c trong hệ thống.

3.6 Thiết kế dịch vụ, giả lập vˆ qu‡ tr“nh sinh m‹ giả

Một trong những t’nh năng của phương ph‡p của chœng t™i đ— lˆ dữ liệu sẽ ngang hˆng với hˆnh vi, dịch vụ được biểu diễn với một phần hˆnh vi vˆ dữ liệu, tức lˆ với đơn vị chức năng vˆ thuộc t’nh. V“ vậy, chœng ta sẽ th•m vˆo hai lớp m™ h“nh trung gian để đảm bảo sự phụ thuộc từ lớp dịch vụ tr•n c•ng vˆ lớp dịch

vụ IT b•n dưới; một cho phần chi tiết dữ liệu, c‡i c˜n lại cho phần chi tiết hˆnh vi. Những lớp nˆy thể hiện thiết kế x‰y dựng vˆ chức năng, được m™ tả trong [24]. Th™ng qua qu‡ tr“nh chuyển đổi những lớp nˆy, dịch vụ thương mại ban đầu sẽ được mở rộng với những chi tiết cần thiết cho lớp dịch vụ IT b•n dưới. Điều nˆy nhấn mạnh hai kh’a cạnh ch’nh trong hệ thống của chœng ta: hˆnh vi (đơn vị chức năng) vˆ dữ liệu (thuộc t’nh). V“ vậy, người thiết kế c— thể ra quyết định về dữ liệu vˆ hˆnh vi một c‡ch độc lập.

Một li•n kết sẽ được thiết lập giữa những lớp m™ h“nh với ba bước trung gian mˆ qua đ— người thiết kế c— thể ra quyết định về dữ liệu vˆ hˆnh vi.

Người thiết kế sẽ ra quyết định trong một định dạng ma trận đ‹ được định nghĩa trước bằng c‡ch sử dụng phương ph‡p định nghĩa vˆ ph‰n phối (define and

distribute). Điều nˆy c— nghĩa lˆ, trong mỗi bước, người thiết kế định nghĩa những phần tử mới trong hệ thống, vˆ sẽ trở thˆnh cột trong ma trận. Cũng như vậy, người thiết kế ph‰n phối những phần tử c— sẵn đ‹ được biểu diễn dưới dạng hˆng của ma trận cho những phần tử mới

T—m lại, sẽ c— bốn lớp m™ h“nh trong qu‡ tr“nh thiết kế dịch vụ của chœng ta vˆ ba bước ở giữa để giữ lại những quyết định thiết kế trong những định dạng ma trận đ‹ được định nghĩa. Trong h“nh 11, chœng ta thể hiện toˆn bộ qu‡ tr“nh thiết kế dịch vụ vˆ sinh m‹ giả. Hai giai đoạn mˆu cam thể hiện phần sinh m‹ giả của dịch vụ vˆ phần mˆu đen lˆ phần thiết kế dịch vụ. Chœng ta c— thể thấy, sau qu‡ tr“nh thiết kế dịch vụ, lớp cuối c•ng của qu‡ tr“nh thiết kế dịch vụ IT c— thể được chuyển đổi thˆnh một dự ‡n trung gian chứa dữ liệu cần thiết cho c™ng cụ BUD [19] để sinh ra m‹ đơn giản cho chương tr“nh. Ngoˆi ra, ở mỗi lớp của qu‡ tr“nh thiết kế dịch vụ c— thể giả lập tr•n Alloy.

H“nh 11 Ð Qu‡ tr“nh thiết kế dịch vụ, sinh ra m‹ vˆ giả lập

Một phần của tài liệu Phát triển phương pháp tinh chế mô hình trên seam để hỗ trợ sinh mã tự động (Trang 39 - 43)

Tải bản đầy đủ (PDF)

(60 trang)