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

Một phần của tài liệu 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 41 - 45)

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

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

Phát triển theo hướng mơ hình là một giải pháp thay thế cho phát triển phần mềm thông thường. Chuyển đổi mơ hình và sinh mã tự động từ các mơ hình là một lĩnh vực nghiên cứu tiềm năng. Theo [69], nhóm tác giảđã xác định được 50 nghiên cứu chính trong số 2.145 bài viết liên quan đến MDA trong giai đoạn 2008–2018. Nghiên cứu chỉ ra rằng, có 5 lĩnh vực được quan tâm chính là: “Phát triển ứng dụng di động, mô phỏng và xác minh, bảo mật, kỹ thuật web và phát triển GUI”. Nghiên cứu cho biết rằng, hầu hết các phương pháp tiếp cận được nghiên cứu chỉ sử dụng mơ hình PIM và PSM, không sử dụng CIM vào kiến trúc mơ hình. Tuy nhiên, quy trình phát triển ứng dụng web của luận án được bắt đầu từ mơ hình CIM.

Năm 2019, Kahani cùng các cộng sự [70] đã xác định được 60 công cụ được sử dụng để chuyển đổi mơ hình. Trong số 60 cơng cụ đã xác định, có 31 cơng cụ thực hiện chuyển đổi mơ hình thành mã nguồn. Nghiên cứu đưa ra một bức tranh tổng thể về các công cụ và kỹ thuật chuyển đổi mơ hình. Tạo mã nguồn 100% là mục đích cuối cùng của lĩnh vực hướng mơ hình. Thật khơng may, mục tiêu thay thế lập trình bằng mơ hình hóa vẫn chưa đạt được. Cho đến nay, đã có nhiều nghiên cứu thực nghiệm cho thấy rằng việc áp dụng hướng mơ hình mang lại một phần tạo mã. Sau đây, luận án đề cập đến một vài nghiên cứu trong số đó:

Một số nghiên cứu [1, 61, 71, 72] đã phát triển kỹ thuật chuyển đổi mơ hình từ CIM sang PIM theo phương pháp UWE. Kết quả chuyển đổi cho ra bốn mơ hình: Nội dung, điều hướng, xử lý và trình bày. Marianne Busch và Nora Koch [71, 72] đã xây dựng công cụ MagicUWE là một plugin cho MagicDraw, được phát triển để hỗ trợ thiết kế các ứng dụng web bằng phương pháp UWE. MagicUWE được phát triển để hỗ trợ cho nhà thiết kế các hoạt động tạo lập mơ hình, bằng cách sử dụng cấu hình UWE và chuyển đổi mơ hình bán tự động. Trong thực tế, vẫn cịn nhiều thành phần của mơ hình nhà thiết kế phải vẽ lại thủ công và MagicUWE chủ yếu tập trung vào các yếu tố mơ hình hóa cho các ứng dụng. Công cụ mới chỉ dừng lại ở việc tạo và chuyển đổi model to model, chưa thực hiện việc chuyển đổi model to code. Tài liệu [1] cũng trình bày các quy tắc chuyển đổi mơ hình PIM sang PSM, chuyển đổi PSM

sang mã. Tuy nhiên các quy tắc được đưa ra chưa được đầy đủ, chưa có sơ đồ chuyển đổi một cách tổng quan và cũng không phát triển công cụ riêng để tạo ứng dụng web. Nhóm tác giả Miguel Ángel, García de Dios [73], đã tạo ra cơng cụ chuyển đổi có tên là ActionUWE từ các mơ hình UWE. ActionUWE thực hiện chuyển đổi các mơ hình theo phương pháp UWE như sau: i) Ánh xạ cấu trúc dữ liệu và tạo một cửa sổ chính cho ứng dụng Web và chuyển đổi các menu được mô phỏng trong UWE; ii) Chuyển đổi phần cịn lại của mơ hình trình bày UWE sang ActionGUI; iii) Chuyển đổi thơng tin trong mơ hình điều hướng từ mơ hình trạng thái điều hướng UWE sang mơ hình ActionGUI; iv) Ánh xạ tính năng bảo mật. Việc chuyển đổi các mơ hình UWE thành các mơ hình ActionGUI. Nhóm tác giả chuyển đổi từ UWE thành ActionGUI, vì các mơ hình ActionGUI có thể được chuyển đổi thành mã. Tuy nhiên, ActionUWE cũng chỉ tiếp cận để tạo mã bán tự động, sinh ra các khung để kỹ thuật viên lập trình tạo câu lệnh.

Hình 1.22. Tổng quan về chuyển đổi mơ hình của ActionUWE [73]

Nghiên cứu của Imane Essebaa, Chantit Salima, Mohammed Ramdani [74] là một minh chứng cho việcứng dụng MDE cho phát triển ứng dụng Web. Nghiên cứu đề xuất cơng cụ MoDAr-WA nhằm mục đích tự động hóa các chuyển đổi từ CIM sang mã. Các tác giả sử dụng các quy tắc QVT để chuyển đổi giữa các mơ hình (CIM sang PIM và PIM sang PSM) và Acceleo để tạo mã tuân theo kiến trúc MVC từ các mơ hình PSM. Các tác giả so sánh đề xuất của họ với một số lượng lớn các cơng trình liên quan và đã kết luận, giải pháp của họ là giải pháp duy nhất cung cấp các mô đun chuyển đổi tự động giữa CIM và PIM. Hạn chế của nghiên cứu là không sử dụng công cụ riêng để sinh mã, mà sử dụng Acceleo là cơng cụ có sẵn để sinh mã.

Hình 1.23. Tổng quan về cách tiếp cận trong [74]

Mostapha Melouka, Yassine Rhazalib, Hadi Youssef [30] đề giải pháp chuyển đổi bán tự động từ CIM sang PIM cho đến PSM. Các quy tắc chuyển đổi được xác định rõ ràng để có được các mơ hình CIM tập trung, giúp đơn giản hóa việc chuyển đổi sang cấp PIM. Các quy tắc chuyển đổi được thực hiện bởi ATL (ngôn ngữ chuyển đổi ATL) được sử dụng để tự động chuyển đổi từ cấp CIM sang cấp PIM và từ PIM sang PSM, bằng cách tinh chỉnh các mơ hình PIM với giao diện người dùng theo định hướng web. Mơ hình CIM được thể hiện bằng các mơ hình quy trình nghiệp vụ. Mơ hình PIM được phân chia phù hợp với ba chế độ: Xem mơ hình cổ điển UML bao gồm chế độ xem chức năng, tĩnh và động. Mơ hình biểu đồ tình huống sử dụng là mơ hình đầu tiên của PIM xác định chức năng của hệ thống thông tin (chế độ xem chức năng), mơ hình biểu đồ trạng thái trình bày trạng thái hệ thống (chế độ xem động), mơ hình biểu đồ lớp cho biết các lớp hệ thống và mối quan hệ của chúng (chế độ xem tĩnh) và tất cả các lớp được cấu trúc thành các gói trong mơ hình sơ đồ gói (dạng xem tĩnh). Tiếp theo, tác giảsử dụng IFML [16], tiêu chuẩn OMG của mô hình hóa giao diện người dùng để điều chỉnh các mơ hình PIM với giao diện người dùng hướng web. Để tự động hóa chuyển đổi CIM sang PIM, PIM sang PIM và PIM sang PSM, tác giảtiếp cận dựa trên các quy tắc chuyển đổi được thực hiện bởi ATL (ngôn ngữ chuyển đổi ATL).

Nghiên cứu [28] đề xuất cải tiến quy trình chuyển đổi mơ hình CIM sang PIM theo hướng tiếp cận MDA. Mơ hình CIM được trình bày bởi mơ hình quy trình nghiệp vụ BPMN là quy trình "quản lý bệnh nhân COVID-19". Quá trình chuyển đổi của [28] bắt đầu với việc phát triển siêu mơ hình nguồn và đích. Việc chuyển đổi giữa hai mơ hình này được thựchiện theo phương thức bán tự động. Đầu tiên, tiến hành chuyển đổi thủ công thông qua xây dựng một tập các quy tắc chuyển đổi từ mơ hình BPMN thành biểu đồ lớp. Sau đó, tiến hành chuyển đổi tự động bằng cách sử dụng ngôn ngữ chuyển đổi ATL, mô tả các quy tắc được mơ tả thủ cơng trước đó. Đóng góp của nghiên cứu là sự lai tạo cả hai loại chuyển đổi thủ công và tự động, đồng thời chuyển đổi mơ hình bằng cách sử dụng một nghiên cứu điển hình cụ thể được trình bày bằng quy trình "Quản lý bệnh nhân COVID-19".

Hình 1.24 thể hiện quy trình mà nghiên cứusẽ tuân theo để đảm bảo việc chuyển đổi mơ hình CIM thành mơ hình PIM, bằng cách chuyển đổi mơ hình BPMN thành một sơ đồ lớp. Mơ hình nguồn BPMN được chuyển thành CLASS. Việc chuyển đổi được chỉ dẫn theo một chương trình chuyển đổi MM1ToME2.atl được viết bằng ATL. Mơ hình nguồn và mơ hình đích cũng như chương trình chuyển đổi, tn thủ theo các mơ hình meta tương ứng của chúng: MM1, MM2 và ATL. Các mơ hình meta này tuân theo siêu mơ hình meta-Ecore.

[75, 76], các tác giả áp dụng MDA để phát triển ứng dụng web theo cấu trúc MVC. Nghiên cứu đều sử dụng ngơn ngữ chuyển đổi mơ hình chun nghiệp như ATL và QVT làm ngơn ngữ chuyển đổi mơ hình và thực hiện các phép biến đổi đến mã nguồn Java. Nhưng cả hai nghiên cứu đều không sử dụng phương pháp UWE, mà sử dụng các biểu đồ UML để phát triển ứng dụng web theo kiến trúc MVC.

Trong nước, những năm gần đây, một số tổ chức nghiên cứu và phát triển phần mềm đã bắt đầu có nhiều quan tâm đến các kỹ thuật, công nghệ mới để phát triển phần mềm, giúp cho việc phát triển các hệ thống phần mềm ngày càng đơn giản hơn, đảm bảo chất lượng hơn. Tuy nhiên, vấn đề phát triển phần mềm hướng mơ hình cho ứng dụng web cịn khá mới mẻ, hầu như chưa được quan tâm nghiên cứu ở trong nước. Thời điểm hiện tại, bản thân chỉ mới tìm thấycác nghiên cứu là khóa luận sinh viên Đại học, thạc sĩđược tổng hợp và dịch bài từ các nghiên cứu nước ngồi.

Từ việc tìm hiểu các cơng bốtrong và ngồi nước cho thấy, 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: (i) Kết quả chuyển đổi mơ hình 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í; (ii) 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ã.

- 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 UWE.

- 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).

Một phần của tài liệu 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 41 - 45)

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

(145 trang)