1. Trang chủ
  2. » Luận Văn - Báo Cáo

(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình

145 29 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 145
Dung lượng 12,61 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình(Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

Trần Đình Diễn

CÁC KỸ THUẬT CHUYỂN ĐỔI MÔ HÌNH VÀ SINH MÃ

TRONG PHÁT TRIỂN ỨNG DỤNG WEB HƯỚNG MÔ HÌNH

LUẬN ÁN TIẾN SĨ KỸ THUẬT PHẦN MỀM

Hà Nội - 2021

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

Trần Đình Diễn

CÁC KỸ THUẬT CHUYỂN ĐỔI MÔ HÌNH VÀ SINH MÃ

TRONG PHÁT TRIỂN ỨNG DỤNG WEB HƯỚNG MÔ HÌNH

Ngành: Kỹ thuật phần mềm

Mã số: 9480103

LUẬN ÁN TIẾN SĨ KỸ THUẬT PHẦN MỀM

NGƯỜI HƯỚNG DẪN KHOA HỌC

1 PGS.TS Huỳnh Quyết Thắng

2 PGS.TS Cao Tuấn Dũng

Hà Nội - 2021

Trang 3

LỜI CAM ĐOAN

Tôi cam đoan đề tài: “Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát

quả nghiên cứu trong luận án là trung thực và chưa từng được tác giả khác công bố

TM Tập thể giáo viên hướng dẫn

PGS.TS Huỳnh Quyết Thắng

Hà Nội, ngày 01 tháng 12 năm 2021

Tác giả

Trần Đình Diễn

Trang 4

LỜI CẢM ƠN

Tôi xin bày tỏ lòng biết ơn sâu sắc nhất tới PGS.TS Huỳnh Quyết Thắng, PGS

TS Cao Tuấn Dũng là người định hướng và hướng dẫn khoa học, đã tận tình giúp đỡ tôi trưởng thành trong công tác nghiên cứu và hoàn thành luận án

Trong suốt quá trình học tập và nghiên cứu tại trường, tôi đã nhận được sự hướng dẫn và giúp đỡ tận tình của tập thể các thầy, cô giáo tại Viện Công nghệ thông tin và Truyền thông, Phòng đào tạo Trường Đại học Bách khoa Hà Nội Tôi xin ghi nhận

và biết ơn sự đóng góp quý báu của các thầy, cô

Tôi xin trân trọng cảm ơn Ban giám hiệu Trường Cao đẳng Kinh tế, Kỹ thuật và Thủy sản cùng các thầy cô tại trường đã tạo điều kiện về thời gian, chuyên môn và nhiều hỗ trợ khác giúp đỡ tôi thực hiện luận án

Trang 5

MỤC LỤC

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT v

DANH MỤC CÁC BẢNG vii

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ viii

MỞ ĐẦU 1

Mục đích nghiên cứu 3

Nhiệm vụ nghiên cứu 3

Đối tượng và phạm vi nghiên cứu 3

Phương pháp nghiên cứu 4

Ý nghĩa khoa học và thực tiễn của đề tài 4

Các kết quả mới đạt được 5

CHƯƠNG 1: PHÁT TRIỂN PHẦN MỀM HƯỚNG MÔ HÌNH 6

1.1 Kiến trúc MDA 6

1.1.1 Chuyển đổi mô hình trong MDA 8

1.1.1.1 Chuyển đổi từ CIM sang PIM 9

1.1.1.2 Chuyển đổi từ PIM sang PSM 9

1.1.1.3 Chuyển đổi từ PSM sang code 13

1.1.2 Ngôn ngữ chuyển đổi mô hình 13

1.1.2.1 Ngôn ngữ ATL 13

1.1.2.2 Ngôn ngữ QVT 21

1.2 Các chuẩn của OMG cho MDA 23

1.2.1 MOF – Meta Object Facility 23

1.2.2 UML – Unified modeling Language 23

1.2.3 OCL (Object Constraint Language) 23

1.2.4 UML Profile 24

1.2.5 CWM (Common Warehouse Metamodel) 24

1.3 Kỹ thuật web hướng mô hình 25

1.3.1 UWE (UML-Based Web Engineering) 26

1.3.2 Web Software Architecture (WebSA) 26

1.3.3 WebML (Web Modeling Language) 27

1.3.4 OOWS - Object-Oriented Web Solution 28

1.3.5 Hypertext Modeling Method of MIDAS (MIDAS-HM3) 28

1.4 Các nghiên cứu liên quan và nhiệm vụ trong luận án 29

1.5 Tiểu kết chương 33

CHƯƠNG 2: KỸ THUẬT CHUYỂN ĐỔI MÔ HÌNH (CIM TO PIM) THEO PHƯƠNG PHÁP UWE CHO PHÁT TRIỂN ỨNG DỤNG WEB 34

2.1 Các mô hình trong UWE 34

2.2 Chuyển đổi mô hình trong UWE 36

Trang 6

2.2.1 Chuyển đổi từ mô hình yêu cầu sang mô hình nội dung 37

2.2.2 Chuyển đổi từ mô hình yêu cầu, nội dung sang mô hình điều hướng 39

2.2.3 Chuyển đổi sang mô hình xử lý 41

2.2.4 Chuyển đổi từ mô hình điều hướng, xử lý sang mô hình trình bày 43

2.3 Phát triển quy tắc chuyển đổi mô hình tích hợp ràng buộc OCL 46

2.3.1 Giới thiệu phương pháp 48

2.3.2 Tích hợp OCL trong mô hình xử lý 49

2.3.3 Tích hợp OCL trong mô hình trình bày 53

2.3.4 Kết quả và thảo luận 56

2.4 Phát triển quy tắc chuyển đổi mô hình với ATL 56

2.4.1 Giải pháp 57

2.4.1.1 Siêu mô hình yêu cầu 57

2.4.1.2 Siêu mô hình: content, navigation, process, presentation 59

2.4.2 Các quy tắc ATL 62

2.4.3 Kết quả và thảo luận 70

2.5 Tiểu kết chương 76

CHƯƠNG 3: SINH MÃ TỰ ĐỘNG CHO ỨNG DỤNG WEB HƯỚNG MÔ HÌNH 77 3.1 Kỹ thuật sinh mã trong phát triển ứng dụng web hướng mô hình 77

3.2 Sinh mã dựa trên thuật toán theo kiến trúc MVC 78

3.2.1 Xây dựng quy tắc sinh mã 79

3.2.2 Xây dựng giải thuật sinh code tự động 86

3.2.3 Thử nghiệm và đánh giá 90

3.3 Sinh mã sử dụng ngôn ngữ ATL 96

3.3.1 Chuyển đổi mô hình PIM sang PSM theo kiến trúc MVC 96

3.3.1.1 Tạo phần Model 96

3.3.1.2 Tạo thành phần Controller 101

3.3.1.3 Tạo thành phần View 103

3.3.2 Cấu trúc mô hình PSM theo kiến trúc MVC 105

3.3.2.1 Thành phần model 105

3.3.2.3 Thành phần Controler 108

3.3.2.3 Thành phần View 109

3.3.3 Xây dựng quy tắc chuyển đổi từ PSM sang mã nguồn 110

3.3.3.1 Sinh code từ mô hình java 110

3.3.3.2 Sinh code từ mô hình JSP 111

3.4 Thử nghiệm sinh mã cho ứng dụng web benhthuysan.vn 111

3.4.1 Công cụ sinh mã CODEGER-UWE 111

3.4.2 Phát triển ứng dụng benhthuysan.vn 115

3.4.3 Kết quả và thảo luận 120

3.5 Tiểu kết chương 121

KẾT LUẬN 123

DANH MỤC CÁC CÔNG TRÌNH ĐÃ CÔNG BỐ CỦA LUẬN ÁN 125

TÀI LIỆU THAM KHẢO 126

Trang 7

DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT

Trang 8

Chữ viết tắt Chú giải

Trang 9

DANH MỤC CÁC BẢNG

Bảng 2.1 Thành phần DisplayAction type và Prentation element 55

Bảng 2.2 Các thành phần tương ứng với Pin type và giao diện 55

Bảng 2.3 Các khuôn mẫu được sử dụng trong biều đồ hoạt động 62

Bảng 2.4 Quy tắc chuyển đổi từ mô hình yêu cầu sang mô hình nội dung 63

Bảng 2.5 Quy tắc chuyển đổi từ mô hình yêu cầu sang mô hình điều hướng 65

Bảng 2.6 Thành phần DisplayAction type và Prentation element 69

Bảng 2.7 Các thành phần tương ứng với Pin type và giao diện 70

Bảng 2.8 Kết quả chuyển đổi mô hình Content, Process - ví dụ MusicPortal 74

Bảng 2.9 Kết quả chuyển đổi mô hình Navigation - ví dụ MusicPortal 74

Bảng 2.10 Kết quả chuyển đổi mô hình Presentation - ví dụ MusicPortal 75

Bảng 2.11 Kết quả chuyển đổi mô hình Content, Process - ví dụ AddressBook 75

Bảng 2.12 Kết quả chuyển đổi mô hình Navigation - ví dụ AddressBook 75

Bảng 2.13 Kết quả chuyển đổi mô hình Presentation - ví dụ AddressBook 75

Bảng 3.1 Danh sách các quy tắc sinh code xây dựng 81

Bảng 3.2 Bảng đánh giá mã nguồn 95

Bảng 3.3 Các quy tắc chuyển đổi từ mô hình nội dung sang mô hình java 97

Bảng 3.4 Quy tắc và các thành phần của mô hình xử lý và Java 100

Bảng 3.5 Các quy tắc chuyển đổi mô hình điều hướng sang mô hình Java 103

Bảng 3.6 Các quy tắc chuyển đổi mô hình trình bày sang JSP: 105

Bảng 3.7 Cấu trúc thành phần model 106

Bảng 3.8 Cấu trúc thành phần service 107

Bảng 3.9 Cấu trúc thành phần Controller 108

Bảng 3.10 Cấu trúc mô hình JSP 109

Bảng 3.11 Các truy vấn sinh mã từ mô hình java 110

Bảng 3.12 Truy vấn ATL sinh mã mô hình JSP 111

Bảng 3.13 Bảng so sách kết quả chuyển đổi mô hình nội dung và xử lý 120

Bảng 3.14 Bảng so sách kết quả chuyển đổi mô hình điều hướng 120

Bảng 3.15 Bảng so sách kết quả chuyển đổi mô hình trình bày 120

Trang 10

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ

Hình 1.1 Tổng quan về MDA 6

Hình 1.2 Tiến trình MDA 7

Hình 1.3 Sự phân loại các mô hình chính trong MDA 8

Hình 1.4 Chuyển đổi mô hình trong MDA 8

Hình 1.5 Mô hình chuyển từ CIM sang PIM 9

Hình 1.6 Đánh dấu mô hình 9

Hình 1.7 Quá trình biến đổi Metalmodel 10

Hình 1.8 Quá trình biến đổi mô hình 10

Hình 1.9 Ứng dụng mẫu 11

Hình 1.10 Một cách khác để sử dụng các mẫu 11

Hình 1.11 Mô hình kết hợp 12

Hình 1.12 Bổ sung thông tin để chuyển sang PSM 12

Hình 1.13 Sử dụng thông tin bổ sung trong kỹ thuật biến đổi cụ thể 12

Hình 1.14 Tổng quan chuyển đổi mô hình trong ATL 14

Hình 1.15 Phần lõi ATL 19

Hình 1.16 Lược đồ hoạt động máy ảo ATL 20

Hình 1.17 Lược đồ ACG 21

Hình 1.18 Kiến trúc QVT 22

Hình 1.19 Cấu trúc MDA cho kỹ thuật web 25

Hình 1.20 Quy trình chung của UWE 26

Hình 1.21 Quy trình phát triển WebSA 27

Hình 1.22 Tổng quan về chuyển đổi mô hình của ActionUWE 30

Hình 1.23 Tổng quan về cách tiếp cận trong 31

Hình 1.24 Tổng quan về quy trình chuyển đổi mô hình trong 31

Siêu mô hình điều hướng (Navigation Metamodel) 34

Siêu mô hình xử lý (Process Metamodel) 35

Siêu mô hình trình bày (Presentation Metamodel) 36

Chuyển đổi từ CIM tới PIM trong UWE 36

Chuyển đổi mô hình từ PIM san PSM trong UWE 37

Chuyển đổi Requirements to Content 37

Mô tả các quy tắc để thêm các hoạt động 38

Chuyển đổi RequirementsAndContent2Navigation 39

Chuyển đổi sang mô hình xử lý 42

Chuyển đổi AvigationAndProcess to Presentation 43

Chuyển đổi mô hình và mã nguồn tích hợp ràng buộc OCL 49

Biểu đồ diễn tiến chuyển đổi bất biến trong mô hình xử lý 50

Trang 11

Biểu đồ chuyển đổi tiền điều kiện – hậu điều kiện mô hình xử lý 51

Biểu đồ chuyển đổi ràng buộc bất biên mô hình trình bày 54

Use Case meta-model 57

Activity Diagram Metamodel 58

Content Metamodel 60

Navigation Metamodel 60

Process Metamodel 61

Presentation Metamodel 61

Tổng quan phương pháp đề xuất 62

Biểu đồ Use Cases của MusicPortal 70

Biểu đồ Activity cho quy trình BuyAlbum 71

Mô hình nội dung của MusicPortal 72

Mô hình điều hướng của MusicPortal 72

Mô hình xử lý của MusicPortal 73

Mô hình trình bày của MusicPortal 74

Hình 3.1 Chuyển đổi mô hình sang mã nguồn theo MDA 77

Hình 3.2 Sinh code trong UWE 79

Hình 3.3 Chuyển đổi sang mã nguồn theo mô hình MVC 80

Hình 3.4 Các quy tắc cấu thành giải thuật CM2M 82

Hình 3.5 Các quy tắc cấu thành giải thuật PRES2V 83

Hình 3.6 Các quy tắc cấu thành giải thuật NM2C 85

Hình 3.7 Các quy tắc cấu thành giải thuật PROM2C 86

Hình 3.8 Kiến trúc MagicDraw và CODEGER –UWE 91

Hình 3.9 Giao diện công cụ CODEGER –UWE 91

Hình 3.10 Mô hình nội dung 92

Hình 3.11 Mô hình điều hướng 92

Hình 3.12 Mô hình xử lý 92

Hình 3.13 Mô hình trình bày 93

Hình 3.14 Mã nguồn sinh ra từ bốn mô hình UWE 93

Hình 3.15 Khung ứng dụng Web 94

Hình 3.16 Giao diện trang web 94

Hình 3.17 Giao diện tạo mới Contact 95

Hình 3.18 Sơ đồ chuyển đổi mô hình và sinh code 97

Hình 3.19 Kiến trúc CODEGER –UWE 112

Hình 3.20 Quy trình sinh mã nguồn từ mô hình nội dung 113

Hình 3.21 Quy trình sinh mã nguồn từ mô hình điều hướng 114

Hình 3.22 Quy trình chuyển đổi sinh mã nguồn từ mô hình xử lý 114

Hình 3.23 Quy trình sinh mã JSP từ mô hình trình bày 115

Hình 3.24 Biểu đồ use case, mô hình đầu vào của ứng dụng 116

Trang 12

Hình 3.25 Biểu đồ Activity, mô hình đầu vào của ứng dụng 117

Hình 3.26 Mô hình nội dung 117

Hình 3.27 Mô hình điều hướng 118

Hình 3.28 Mô hình xử lý 118

Hình 3.29 Mô hình trình bày 118

Hình 3.30 Cấu trúc mã nguồn được sinh tự động 119

Hình 3.31 Giao diện web benhthuysan.vn 119

Hình 3.32 Kết quả đánh giá thử nghiệm benhthuysan.vn 121

Trang 13

MỞ ĐẦU

Ngày nay, công nghiệp phần mềm đóng vai trò quan trọng, tác động đến sự phát triển kinh tế xã hội và được xem là một trong những trụ cột chính của tăng trưởng kinh tế ở nhiều nước Tuy nhiên, việc phát triển phần mềm theo cách truyền thống ngày càng phải đối mặt với nhiều khó khăn như vấn đề phát triển, vấn đề tính khả chuyển, khả năng tương tác hay với sự phát triển nhanh chóng của các nền tảng công nghệ mới Do đó, những nhà phát triển phần mềm phải dành nhiều công sức và thời gian để điều chỉnh ứng dụng (thường theo cách thủ công là sửa mã nguồn) sao cho

có thể hoạt động được trên các nền tảng công nghệ mới Chính vì vậy, một xu hướng phát triển phần mềm mới nhằm khắc phục những khó khăn trên đã được nghiên cứu

và phát triển, đó là phát triển phần mềm hướng mô hình (MDSD: Model driven software development)

Kỹ thuật hướng mô hình (MDE) là kỹ thuật mới cho sự phát triển sản phẩm phần mềm Kỹ thuật này giải quyết được sự phức tạp của nền tảng công nghệ khác nhau bằng việc sử dụng các mô hình (models) như là tác nhân chính trong toàn bộ vòng đời phát triển ứng dụng, giảm sự phụ thuộc vào nền tảng công nghệ [1-3] MDE phát triển dựa trên ý tưởng xây dựng các mô hình độc lập với nền tảng và hỗ trợ việc chuyển đổi mô hình thành mã nguồn của chương trình Do đó, quá trình phát triển phần mềm hướng mô hình được xem như là một chuỗi các chuyển đổi mô hình và chuyển đổi mô hình đóng một vai trò quan trọng trong kỹ thuật hướng mô hình [4] Phát triển phần mềm hướng mô hình đang trở thành một phương pháp tiếp cận, được chấp nhận rộng rãi để phát triển các ứng dụng phức tạp và ngày càng giành được nhiều sự quan tâm của cộng đồng nghiên cứu, cũng như giới công nghiệp phần mềm [1] Sinh mã tự động là nền tảng thiết yếu của các phương pháp tiếp cận theo hướng

mô hình để phát triển phần mềm.Việc sinh mã tự động giúp cho việc phát triển ứng dụng trở nên hiệu quả hơn, hứa hẹn sẽ là một bước tiến mới trong phát triển phần mềm, giúp lập trình viên nâng cao được hiệu xuất làm việc và ngày càng được sử dụng nhiều trong tiến trình phát triển phần mềm [5]

Các nghiên cứu đã minh chứng, phương pháp sinh mã hướng mô hình cho tiến trình phần mềm đã tăng tốc độ tổng thể từ 3 đến 10 lần [5-7], làm giảm yếu tố con người [8, 9], giảm thời gian phát triển ứng dụng web [9-12] Việc sử dụng các mô hình để tạo

mã chương trình, có thể tạo ra các sản phẩm phần mềm có khả năng tương thích và sử dụng trên các nền tảng khác nhau [13], trong [14] đã chứng minh việc sử dụng phương pháp này cho phép tiết kiệm rất nhiều chi phí (nhất là chi phí bảo trì cho ứng dụng), vì chúng làm giảm sự cần thiết phải thay đổi sau khi đưa ứng dụng vào sử dụng

Các ứng dụng Web bao gồm nhiều thành phần khác nhau, có thể được cung cấp bởi những nhà phát triển khác nhau, nên việc sử dụng các kỹ thuật phát triển phần mềm hướng mô hình cho các ứng dụng web đặc biệt hữu ích [1, 15, 16]

Trang 14

Trong những phương pháp phát triển ứng dụng web hướng mô hình hiện nay UWE (UML-based Web Engineering) là một hướng tiếp cận cho phép phát triển ứng dụng web hướng mô hình dựa trên kiến trúc MDA UWE cung cấp một quy trình và công

cụ, giúp mô hình hoá và xây dựng các ứng dụng web, do nhóm nghiên cứu trường đại học LMU, Đức thực hiện với mục đích tự động hoá quy trình phát triển ứng dụng web và giảm thiểu tối đa việc lập trình cài đặt mã nguồn cho ứng dụng

UWE cung cấp một tập các mô hình tương ứng với từng khía cạnh của ứng dụng web bao gồm: Mô hình yêu cầu (requirements models), mô hình nội dung (content models), mô hình điều hướng (navigation models), mô hình xử lý (process models),

mô hình trình bày (presentation models) và sử dụng biểu đồ UML 2.0 cho việc mô hình hoá Một trong những ưu điểm quan trọng của UWE là tất cả các mô hình của

nó đều là phần mở rộng của UML UWE sử dụng ký pháp đồ họa hoàn toàn dựa trên UML Nó cho phép sử dụng các công cụ dựa trên UML và giảm thiểu thời gian nghiên cứu của các nhà phát triển Web, những người đã quen thuộc với UML[17]

Tuy nhiên, các nghiên cứu phát triển ứng dụng web hướng mô hình theo phương pháp UWE, còn tồn tại một số vấn đề cần tiếp tục đi sâu nghiên cứu:

Thứ nhất: Việc chuyển đổi từ mô hình yêu cầu sang các mô hình: Nội dung, điều hướng, xử lý và trình bày vẫn phải được điều chỉnh thủ công, làm cho việc phát triển ứng dụng Web tốn thời gian và chi phí; việc đảm bảo tính thống nhất giữa các mô hình cũng như cần cập nhật đồng bộ giữa các mô hình khi có thay đổi là rất khó khăn Thứ hai: Các nghiên cứu chủ yếu mới chỉ tập trung cho việc mô hình hóa, việc sinh code tự động còn nhiều hạn chế, chủ yếu mới chỉ dừng ở việc tạo ra khung để

kỹ thuật viên lập trình viết mã

Khắc phục những hạn chế, tồn tại nêu trên, việc nghiên cứu xây dựng phương pháp chuyển đổi mô hình tự động, cải tiến kỹ thuật sinh mã để nâng cao chất lượng mã nguồn, tăng năng suất, tiết kiệm thời gian và chi phí cho ứng dụng web, giúp phát triển ứng dụng web đơn giản, linh hoạt, nhanh chóng và hiệu quả hơn là vấn đề cần thiết, góp phần thúc đẩy sự phát triển của lĩnh vực ứng dụng web, một lĩnh vực giàu tiềm năng nhưng mới chỉ là bước đầu phát triển tại Việt Nam Chính vì vậy, NCS

chọn đề tài: “Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng

dụng web hướng mô hình”

Hướng tiếp cận của đề tài là phát triển bộ quy tắc chuyển đổi model to model và mode to code theo phương pháp UWE, xây dựng công cụ CODEGER-UWE để hỗ trợ phát triển các ứng dựng Web theo kiến trúc MVC Phương pháp dựa trên việc tạo

mô hình yêu cầu ở mức mô hình độc lập tính toán (Computation Independent Model – CIM), sau đó xây dựng các quy tắc chuyển đổi, để chuyển đổi sang mức mô hình độc lập nền tảng (platform-independent model – PIM) và mô hình nền cụ thể (Platform Specific Model - PSM), từ đó sinh code tự động cho ứng dụng web theo

Trang 15

kiến trúc MVC Các quy tắc chuyển đổi của nghiên cứu được xây dựng với ngôn ngữ chuyển đổi mô hình (ATLAS Transformation Language – ATL) Áp dụng phát triển ứng dụng web Chẩn đoán bệnh thủy sản “benhthuysan.vn” Phương pháp tiếp cận giúp đảm bảo tính thống nhất giữa các mô hình sau khi chuyển đổi, góp phần đảm bảo hiệu quả chuyển đổi mô hình và sinh code tự động cho phát triển ứng dụng Web hướng mô hình theo kiến trúc MVC

- Trên cơ sở các quy tắc đã phát triển, xây dựng công cụ sinh mã tự động cho ứng dụng web Thực nghiệm vào phát triển ứng dụng web Chẩn đoán bệnh thủy sản (benhthuysan.vn)

Nhiệm vụ nghiên cứu

Với mục tiêu đặt ra ở trên, nhiệm vụ nghiên cứu của đề tài bao gồm:

- Tổng hợp, phân tích các kỹ thuật phát triển phần mềm hướng mô hình, kỹ thuật phát triển ứng dụng web hướng mô hình như UWE, WebML, WebSA

- Phát triển các quy tắc chuyển đổi mô hình

- Phát triển các quy tắc sinh code với ngôn ngữ ATL cho phát triển ứng dụng web hướng mô hình theo phương pháp UWE

- Xây dựng công cụ sinh code tự động cho ứng dụng web theo kiến trúc MVC

- Thực nghiệm và đánh giá: Tiến hành kiểm chứng tính khả thi của nghiên cứu

đề xuất trong luận án, bằng việc áp dụng vào phát triển ứng dụng web Chẩn đoán bệnh thủy sản (benhthuysan.vn)

Đối tượng và phạm vi nghiên cứu

Đối tượng nghiên cứu của đề tài là vấn đề chuyển đổi mô hình và sinh mã tự động cho phát triển ứng dụng web theo phương pháp UWE Trên cơ sở đó, đề tài nghiên cứu các kiến thức thuộc về lý thuyết liên quan đến chuyển đổi mô hình và sinh code

từ các mô hình yêu cầu, nội dung, điều hướng, xử lý và mô hình trình bày nhằm áp dụng trong việc phát triển các bài toán thực tế

Đề tài nghiên cứu các đặc điểm chung của phát triển ứng dụng web hướng mô hình, để xây dựng các quy tắc chuyển đổi mô hình và sinh code tự động với ngôn ngữ

Trang 36

OCL được xây dựng và phát triển với mục đích bổ sung cho các đặc tả UML trở nên rõ ràng và chính xác hơn, các biểu thức viết trong OCL thêm các thông tin quan trọng cho các mô hình và OCL trở thành chuẩn ngôn ngữ đặc tả cho các biểu đồ trong UML trong thực tế [55, 56] Hiện nay, OCL là một thành phần chính của khuyến nghị tiêu chuẩn OMG cho chuyển đổi mô hình

1.2.4 UML Profile

Một UML Profile là sự mở rộng của UML, cung cấp cơ chế mở rộng chung để xây dựng mô hình UML trong các miền cụ thể như J2EE, NET… Chúng dựa trên các khuôn mẫu (stereotype) và một tập các giá trị được gán nhãn (tag value) được áp dụng cho các phần tử: Attributes, Methods, Links…

Stereotype, một sự mở rộng cho từ vựng của ngôn ngữ, cho phép chúng ta gắn thêm một ngữ nghĩa mới vào phần tử của mô hình Stereotype có thể áp dụng (apply) cho gần như toàn bộ phần tử của mô hình và thường được biểu diễn dưới dạng một string giữa một cặp dấu << >> Tuy nhiên, chúng cũng có thể mô tả bằng một icon Tagged value, một sự mở rộng cho một thuộc tính của một phần tử của mô hình,

là sự định nghĩa một thuộc tính mới có thể kết hợp với một phần tử mô hình Hầu hết các phần tử của mô hình đều có các thuộc tính kết hợp với chúng Một tagged value được biểu diễn trong diagram dưới dạng một string

1.2.5 CWM (Common Warehouse Metamodel)

CWM (Common Warehouse Metamodel) là một chuẩn của OMG và được áp dụng cho việc trao đổi siêu dữ liệu trong môi trường kho dữ liệu [57] Bởi vì, kho dữ liệu là công nghệ kết hợp thông tin từ nhiều nguồn, nên CWM meta-model được dùng cho nhiều nguồn khác nhau [58]:

- Cơ sở dữ liệu quan hệ

- Bản ghi hay cấu trúc

- OLAP (Online Analytical Processing)

- XML

- Chuyển đổi (Transformations)

- Hình ảnh thông tin (Visualization of information)

- Khai phá dữ liệu (Data mining)

- Cơ sở dữ liệu đa hướng (Multidimensional databases)

- Meta-data cho doanh nghiệp (Business metadata)

- Quy trình xử lý kho lưu (Warehouse processes)

- Hoạt động kho lưu (Warehouse operation)

CWM meta-model được mô hình hóa bằng cách sử dụng MOF Do đó, chúng có thể được sử dụng như nguồn hoặc đích cho chuyển đổi MDA

Trang 37

1.3 Kỹ thuật web hướng mô hình

Khi những kỹ thuật dựa trên mô hình như MDSD ngày càng trở nên phổ biến trong cộng đồng phát triển phần mềm, thì các phương pháp kỹ thuật phát triển ứng dụng web cũng bắt đầu thay đổi về ký pháp và quy trình phù hợp với kỹ thuật MDSD, nhằm tạo ra các ứng dụng web nhanh chóng và có chất lượng Sự thay đổi này thể

hiện một thiết kế trên nền tảng ngôn ngữ mô hình Web như UML (Unified Modeling Language), MOF (Meta Object Facility), XMI (XML Metadata Interchange) và

CWM (Common Warehouse Metamodel) [16] Sự thay đổi phù hợp với MDSD để tạo ra ứng dụng web được gọi là Kỹ thuật web hướng mô hình (MDWE) Hình 1.19

mô tả cấu trúc phát triển ứng dụng web hướng mô hình [17]

Kỹ thuật Web là một lĩnh vực cụ thể, trong đó phát triển phần mềm hướng mô hình có thể được áp dụng thành công Hiện tại có một số phương pháp tiếp cận kỹ thuật Web hướng mô hình như OO-H, UWE hoặc WebML… đã cung cấp một bộ ký pháp phù hợp với phương pháp và các công cụ cho việc thiết kế, phát triển các ứng dụng Web [59] Với MDWE, để tạo ra ứng dụng web gồm 3 giai đoạn [16]: (1) xây dựng các siêu mô hình và mô hình trong miền ứng dụng Web; (2) định nghĩa và thực hiện các chuyển đổi từ mô hình đến mô hình, chuyển đổi từ mô hình đến mã nguồn với mục đích đạt được một phần trong toàn bộ quá trình thực hiện; và (3) kết nối hoặc phát triển công cụ để hỗ trợ thiết lập, chuyển đổi các mô hình, tạo mã Với cách này, MDWE giúp thu hẹp khoảng cách giữa mô hình thiết kế cấp cao và mã thực hiện Web cấp thấp [16]

Hình 1.19 Cấu trúc MDA cho kỹ thuật web

Trang 38

1.3.1 UWE (UML-Based Web Engineering)

UWE là phương pháp hướng đối tượng dựa trên ngôn ngữ mô hình hóa UML [1],

là một trong những kỹ thuật đầu tiên phát triển theo kỹ thuật hướng mô hình và được

sử dụng nhiều nhất, phù hợp nhất cho kỹ thuật Web hướng mô hình [60] [17] UWE

là một kỹ thuật phát triển ứng dụng web hoàn chỉnh, nhưng chủ yếu tập trung vào giai đoạn phân tích và thiết kế Một trong những ưu điểm quan trọng của UWE, là tất cả các mô hình của nó đều là phần mở rộng của UML UWE sử dụng ký pháp đồ họa hoàn toàn dựa trên UML Nó cho phép sử dụng các công cụ dựa trên UML và giảm thiểu thời gian nghiên cứu của các nhà phát triển Web, những người đã quen thuộc với UML[17]

Cách tiếp cận MDE của UWE có lẽ là một trong những phương pháp hoàn thiện nhất, vì nó đưa ra một siêu mô hình tương ứng mỗi mô hình của UWE như: Yêu cầu, Nội dung, Điều hướng, Thể hiện và Xử lý, các mô hình này kết hợp với sự chuyển đổi mô hình nhằm thu được mô hình từ các mô hình khác Mô hình nội dung dựa trên

sơ đồ lớp của UML, trong khi mô hình yêu cầu dựa trên WebRE Thêm vào đó, UWE định nghĩa các hồ sơ để tương tác với các siêu mô hình Đây là sự kết hợp hiệu quả các siêu mô hình UWE trong bất kỳ công cụ thiết kế dựa trên UML nào [17]

Hình 1.20 Quy trình chung của UWE [61]

Về chuyển đổi mô hình, kỹ thuật nổi nên gần đây trong chuyển đổi mô hình được

sử dụng trong UWE là ATL và QVT [4, 61] Một trong công cụ thực hiện công việc này là UWE4JSF, nó bao gồm 1 công cụ đính kèm được xác định với EMF, cho phép khởi tạo ứng dụng Web đối với nền tảng JSF (Java Server Faces) [17]

UWE được hỗ trợ bởi nhiều công cụ như: ArgoUWE dựa trên ArgoUML, MagicUWE đi cùng với công cụ MagicDraw và TopUWE-plugin đã được phát triển bởi Topcased [62]

1.3.2 Web Software Architecture (WebSA)

WebSA là một cách tiếp cận hướng mô hình cho phát triển ứng dụng web Quá trình phát triển dựa trên MDA thiết lập 4 giai đoạn của vòng đời phát triển: Phân tích;

Trang 39

thiết kế độc lập nền tảng, nơi xây dựng mô hình nền tảng độc lập (PIM); thiết kế nền tảng cụ thể, nơi xây dựng mô hình nền tảng cụ thể (PSM); và mã chương trình [16] Phương pháp này nhóm các mô hình ứng dụng web thành 2 khung nhìn: Chức năng

và kiến trúc (Hình 2.21) [4, 63]

WebSA sử dụng mô hình đề xuất trong hai phương pháp: UWE và OO-H [16] [63] Trong giai đoạn phân tích, đặc điểm kỹ thuật Web được chia thành mô hình chức năng và các mô hình kiến trúc khái niệm

Ở giai đoạn thiết kế độc lập nền, thực hiện chuyển đổi PIM sang PIM (T1) cung cấp một tập hợp các đối tượng Trong đó, các thành phần khái niệm của giai đoạn phân tích được sơ đồ hóa nhằm tập trung các thành phần biểu thị thông tin về chức năng và kiến trúc tích hợp Các mô hình thu được gọi là mô hình tích hợp, trong đó tập hợp mô hình kiến trúc đơn lẻ, các thông tin thu thập được trong khung nhìn chức năng, các thông tin được cung cấp bởi mô hình cấu hình và mô hình hệ thống [63] Những mô hình ở giai đoạn thứ hai, được chuyển đổi thành các mô hình nền tảng

cụ thể (PSM), bằng sự chuyển đổi PIM sang PSM và tạo ra các đặc điểm của ứng dụng Web đối với nền tảng nhất định Ở giai đoạn cuối cùng, chuyển đổi PSM sang

Mã được thực hiện thông qua các mẫu [16]

Hình 1.21 Quy trình phát triển WebSA

1.3.3 WebML (Web Modeling Language)

WebML là một ngôn ngữ mô hình Web [17, 64] Phát triển ứng dụng với WebML được hỗ trợ bởi WebRatio, một công cụ thương mại cho việc thiết kế và thực hiện

Web Functional Viewpoint Web Architectural Viewpoint

Trang 40

các ứng dụng Web [65, 66] Phương pháp này sử dụng ký hiệu (notation) riêng và không sử dụng meta-model tuân thủ MOF, mà sử dụng Document Type Definition (DTD) để lưu các mô hình nội dung và điều hướng Ví dụ định nghĩa dạng ngữ pháp (grammar-like definition) cho cấu trúc của tài liệu XML DTD không có tính trừu tượng như MOF và thiếu ký hiệu dễ hiểu Ngôn ngữ chuyển đổi XSLT (Extensible Stylesheet Language Transformation) được sử dụng cho việc chuyển đổi mô hình sang mã nguồn (hỗ trợ Java và JSP) XSLT không phù hợp với những chuyến đổi phức tạp, khó phát triển chương trình và dễ bị lỗi [1] Tuy nhiên, phương pháp tiếp cận mô hình định hướng của WebML đặc biệt hiệu quả trong việc tạo các trang Web

hỗ trợ đa thiết bị [67]

Theo [67] có 4 mô hình được đưa ra: (1) Mô hình cấu trúc, thể hiện các nội dung

dữ liệu của trang web trong thực thể và quan hệ, WebML không xác định ký pháp của mình mà thay vào đó đề xuất sử dụng kỹ thuật mô hình hóa chuẩn như Sơ đồ thực thể - quan hệ hoặc sơ đồ lớp UML (2) Mô hình siêu văn bản mô tả một hoặc nhiều hypertexts có thể được công bố trên trang web Mỗi một siêu văn bản xác định một trang web, bao gồm một tiểu mô hình thành phần và một tiểu mô hình điều hướng

Mô hình đầu tiên xác định các trang tạo nên siêu văn bản và các đơn vị nội dung kết cấu nên trang web, mô hình thứ hai mô tả cách các trang và các đơn vị nội dung được liên kết từ siêu văn bản (3) Mô hình thể hiện, nó trình bày các lớp và các đồ họa được thể hiện của trang web, độc lập với thiết bị đầu ra và ngôn ngữ thể hiện (4) Mô hình

cá nhân hóa, trong đó người sử dụng và nhóm được mô hình hóa một cách rõ ràng theo thực thể đã được xác định trước [67]

1.3.4 OOWS - Object-Oriented Web Solution

OOWS là phương pháp kỹ thuật Web, nó cung cấp kỹ thuật để hỗ trợ cho việc phát triển ứng dụng Web OOWS là sự mở rộng của phương pháp OO-H [65] OO-H gồm 3 mô hình: Mô hình cấu trúc, mô hình động và mô hình chức năng Để phù hợp cho việc phát triển ứng dụng web, OOWS đề xuất mới 3 mô hình: Mô hình người dùng, mô hình điều hướng và mô hình trình bày Ba mô hình mới cho phép mô tả đầy

đủ các ứng dụng Web tại mức PIM Quá trình tạo mã thực hiện bởi công cụ OlivaNova

1.3.5 Hypertext Modeling Method of MIDAS (MIDAS-HM3)

MIDAS (HM3) là một phương pháp luận cho sự phát triển nhanh hệ thống Web dựa trên MDA Nó đề xuất mô hình hóa hệ thống bằng cách quy định mô hình độc lập với tính toán (CIMs), PIMs, PSMs và sơ đồ hóa các nguyên tắc giữa các mô hình này [16, 68] Đề xuất mô hình hóa hệ thống theo ba khía cạnh cơ bản: Siêu văn bản, nội dung và hành vi Tuy nhiên, MIDSMH3 không đề xuất bất cứ mô hình hóa nào liên quan đến các vấn đề về kiến trúc Tất cả các mô hình trong MIDAS được tạo ra

Ngày đăng: 25/04/2022, 20:06

HÌNH ẢNH LIÊN QUAN

CÁC KỸ THUẬT CHUYỂN ĐỔI MÔ HÌNH VÀ SINH MÃ  TRONG PHÁT TRIỂN ỨNG DỤNG WEB HƯỚNG MÔ HÌNH - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
CÁC KỸ THUẬT CHUYỂN ĐỔI MÔ HÌNH VÀ SINH MÃ TRONG PHÁT TRIỂN ỨNG DỤNG WEB HƯỚNG MÔ HÌNH (Trang 2)
1.3. Kỹ thuật web hướng mô hình - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
1.3. Kỹ thuật web hướng mô hình (Trang 37)
UWE là phương pháp hướng đối tượng dựa trên ngôn ngữ mô hình hóa UML [1], là một trong những kỹ thuật đầu tiên phát triển theo kỹ thuật hướng mô hình và được  sử dụng nhiều nhất, phù hợp nhất cho kỹ thuật Web hướng mô hình [60] [17] - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
l à phương pháp hướng đối tượng dựa trên ngôn ngữ mô hình hóa UML [1], là một trong những kỹ thuật đầu tiên phát triển theo kỹ thuật hướng mô hình và được sử dụng nhiều nhất, phù hợp nhất cho kỹ thuật Web hướng mô hình [60] [17] (Trang 38)
thiết kế độc lập nền tảng, nơi xây dựng mô hình nền tảng độc lập (PIM); thiết kế nền tảng cụ thể, nơi xây dựng mô hình nền tảng cụ thể (PSM); và mã chương trình [16] - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
thi ết kế độc lập nền tảng, nơi xây dựng mô hình nền tảng độc lập (PIM); thiết kế nền tảng cụ thể, nơi xây dựng mô hình nền tảng cụ thể (PSM); và mã chương trình [16] (Trang 39)
Hình 1.22. Tổng quan về chuyển đổi mô hình của ActionUWE [73] - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
Hình 1.22. Tổng quan về chuyển đổi mô hình của ActionUWE [73] (Trang 42)
Hình 1.23. Tổng quan về cách tiếp cận trong [74] - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
Hình 1.23. Tổng quan về cách tiếp cận trong [74] (Trang 43)
Mô hình xử lý (Process Model): Mô hình xử lý đặc tả hành vi của ứng dụng - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
h ình xử lý (Process Model): Mô hình xử lý đặc tả hành vi của ứng dụng (Trang 47)
2.2. Chuyển đổi mô hình trong UWE - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
2.2. Chuyển đổi mô hình trong UWE (Trang 48)
Siêu mô hình trình bày (Presentation Metamodel) [77] - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
i êu mô hình trình bày (Presentation Metamodel) [77] (Trang 48)
Chuyển đổi mô hình từ PIM san PSM trong UWE [1] - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
huy ển đổi mô hình từ PIM san PSM trong UWE [1] (Trang 49)
2.3.2. Tích hợp OCL trong mô hình xử lý - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
2.3.2. Tích hợp OCL trong mô hình xử lý (Trang 61)
Biểu đồ diễn tiến chuyển đổi bất biến trong mô hình xử lý - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
i ểu đồ diễn tiến chuyển đổi bất biến trong mô hình xử lý (Trang 62)
Biểu đồ chuyển đổi tiền điều kiện – hậu điều kiện mô hình xử lý - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
i ểu đồ chuyển đổi tiền điều kiện – hậu điều kiện mô hình xử lý (Trang 63)
Hình 3.3. Chuyển đổi sang mã nguồn theo mô hình MVC - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
Hình 3.3. Chuyển đổi sang mã nguồn theo mô hình MVC (Trang 92)
Hình 3.8. Kiến trúc MagicDraw và CODEGER –UWE - (Luận án tiến sĩ) Các kỹ thuật chuyển đổi mô hình và sinh mã trong phát triển ứng dụng web hướng mô hình
Hình 3.8. Kiến trúc MagicDraw và CODEGER –UWE (Trang 103)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm