Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 27 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
27
Dung lượng
794,82 KB
Nội dung
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 TÓM TẮT LUẬN ÁN TIẾN SĨ KỸ THUẬT PHẦN MỀM Hà Nội - 2021 Cơng trình hoàn thành Trường Đại học Bách khoa Hà Nội Người hướng dẫn khoa học: PGS TS Huỳnh Quyết Thắng PGS TS Cao Tuấn Dũng Phản biện 1: Phản biện 2: Phản biện 3: Luận án bảo vệ trước Hội đồng đánh giá luận án tiến sĩ cấp Trường họp Trường Đại học Bách khoa Hà Nội Vào hồi …… giờ, ngày … tháng … năm ……… Có thể tìm hiểu luận án thư viện: Thư viện Tạ Quang Bửu - Trường ĐHBK Hà Nội Thư viện Quốc gia Việt Nam DANH MỤC CÁC CƠNG TRÌNH ĐÃ CƠNG BỐ CỦA LUẬN ÁN Trần Đình Diễn, Huỳnh Quyết Thắng (2015), Phát triển ứng dụng Web hướng mơ hình dựa kỹ thuật WEB UWE, Kỷ yếu Hội nghị Quốc gia lần thứ VIII Nghiên cứu ứng dụng Công nghệ thông tin (FAIR) - Hà Nội, ngày 9-10/7/2015, trang 564-574 ISBN: 978-604-913397-8 Nguyen Thi Thuy Linh, Tran Dinh Dien, Bui Quang Thang, Huynh Quyet Thang (2015), Integration MDA Techniques in Solving A Class of Web Application with Similar Structure, AUN/SEED-Net Regional Conference for Computer and Information Engineering 2015, ngày 01-02/10/2015, trang 78-83 ISBN: 978-604-938-689-3 Dien Tran Dinh, Thang Huynh Quyet, Khanh Tran Quoc (2018), Model Transformation with OCL Integration in UWE In FICTA2018: International Conference on Frontiers of Intelligent Computing: Theory and Applications, November 29-30, 2018 Frontiers in Intelligent Computing: Theory and Applications - Proceedings of the 7th International Conference on FICTA (2018), Volume 1, pp 199-211, ISBN: 978-981-329186-7, SCOPUS Indexed Quyet-Thang Huynh, Dinh-Dien Tran, Thi-Mai-Anh Bui, Phi-Le Nguyen (2019), Development of Rules and Algorithms for Model-Driven Code Generator with UWE Approach New Trends in Intelligent Software Methodologies, Tools and Techniques, Volume 318, 2019, pp 531 - 544 (SOMET 2019), ISBN: 978-1-64368-012-5, DOI 10.3233/FAIA190078, WoS, SCOPUS Indexed Trần Đình Diễn, Huỳnh Quyết Thắng, Bùi Thị Mai Anh, Hoàng Thành Đạt, Nguyễn Phi Lê (2021), Xây dựng thử nghiệm công cụ CODEGER-UWE phát triển ứng dụng Web hướng mơ hình, Journal of Science and Technology (JST), Vol 1, Issue 2, April 2021, trang 035-039, ISSN: 2734 - 9381 Trần Đình Diễn, Huỳnh Quyết Thắng, Hồng Thành Đạt (2021), Phát triển thuật toán sinh code cho ứng dụng web chuẩn đoán bệnh thủy sản với ATL, Tạp chí Nghiên cứu Khoa học Cơng nghệ qn (JMST), số 72, – 2021, trang 102-111, ISSN: 1859-1043 MỞ ĐẦU Lý chọn đề tài Ngày nay, cơng nghiệp phần mềm đóng vai trị quan trọng, tác động đến phát triển kinh tế xã hội xem trụ cột 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 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ả tương tác hay bảo trì hệ thống Đặc biệt phát triển nhanh chóng ngày phức tạp tảng công nghệ Kỹ thuật hướng mô hình (MDE) kỹ thuật cho phát triển sản phẩm phần mềm Kỹ thuật giải phức tạp tảng công nghệ khác việc sử dụng mơ hình (models) tác nhân tồn vịng đời phát triển ứng dụng, giảm phụ thuộc vào tảng công nghệ MDE phát triển dựa ý tưởng xây dựng mơ hình độc lập với tảng hỗ trợ việc chuyển đổi mơ hình thành mã nguồn chương trình Do đó, q trình phát triển phần mềm hướng mơ hình xem chuỗi chuyển đổi mơ hình chuyển đổi mơ hình đóng vai trị quan trọng kỹ thuật hướng mơ hình Các nghiên cứu minh chứng, việc cung cấp 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ừ đến 10 lần, làm giảm yếu tố người, giảm thời gian phát triển ứng dụng web Trong phương pháp phát triển ứng dụng web hướng mơ hình UWE (UML-based Web Engineering) phương pháp hướng đối tượng dựa ngơn ngữ mơ hình hóa UML, phương pháp tiếp cận MDE cho phát triển ứng dụng web Tuy nhiên, nghiên cứu phát triển ứng dụng web hướng mơ hình theo phương pháp UWE, tồn số vấn đề cần tiếp tục sâu nghiên cứu: Thứ nhất: Việc chuyển đổi từ mơ hình u cầu sang mơ hình: Nội dung, điều hướng, xử lý trình bày phải đ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 chi phí; việc đảm bảo tính thống mơ cần cập nhật đồng mơ hình có thay đổi khó khăn Thứ hai: Các nghiên cứu chủ yếu 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 dừng việc tạo khung để kỹ thuật viên lập trình viết mã Khắc phục hạn chế, tồn 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 suất, tiết kiệm thời gian 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 hiệu vấn đề cần thiết, góp phần thúc đẩy phát triển lĩnh vực ứng dụng web, lĩnh vực giàu tiềm bước đầu phát triển Việt Nam Chính vậy, NCS chọn đề tài: “Các kỹ thuật chuyển đổi mơ hình sinh mã phát triển ứng dụng web hướng mơ hình” Hướng tiếp cận đề tài phát triển quy tắc chuyển đổi model to model mode to code theo phương pháp UWE, xây dựng công cụ CODEGER-UWE để hỗ trợ phát triển ứng dựng Web Phương pháp dựa việc tạo mơ hình u cầu mức mơ hình độc lập tính tốn (Computation Independent Model – CIM), sau xây dựng quy tắc chuyển đổi, để chuyển đổi sang mơ hình độc lập tảng (platform-independent model – PIM) mơ hình cụ thể (Platform Specific Model - PSM), từ sinh code tự động cho ứng dụng web Các quy tắc chuyển đổi nghiên cứu, xây dựng với ngôn ngữ chuyển đổi mơ hình ATL Phương pháp tiếp cận giúp đảm bảo tính thống mơ hình sau chuyển đổi, góp phần đảm bảo hiệu chuyển đổi mơ hình sinh code tự động cho phát triển ứng dụng Web hướng mơ hình theo kiến trúc MVC Mục đích nghiên cứu Mục tiêu chung đề tài nghiên cứu kỹ thuật phát triển phần mềm hướng mô hình cho ứng dụng web, nhằm phát triển quy tắc chuyển đổi model to model model to code, theo phương pháp UWE cụ thể hóa quy tắc chuyển đổi, việc xây dựng công cụ hỗ trợ phát triển ứng dụng web theo kiến trúc MVC Đề tài có mục tiêu cụ thể sau: - Tiếp cận kỹ thuật MDE, luận án phát triển quy tắc chuyển đổi từ mơ hình mức CIM sang PIM, sang PSM, sang mã nguồn cho phát triển ứng dụng web hướng mơ hình theo phương pháp UWE - Trên sở 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 trên, nhiệm vụ nghiên cứu đề tài bao gồm: - Tổng hợp, phân tích 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ơ UWE, WebML, WebSA - Phát triển quy tắc chuyển đổi mơ hình - Phát triển 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 đánh giá: Tiến hành kiểm chứng tính khả thi nghiên cứu đề xuất luận án, 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 phạm vi nghiên cứu Đối tượng nghiên cứu đề tài vấn đề chuyển đổi mơ hình sinh mã tự động cho phát triển ứng dụng web theo phương pháp UWE Trên sở đó, đề tài nghiên cứu kiến thức thuộc lý thuyết liên quan đến chuyển đổi mơ hình sinh code từ mơ hình yêu cầu, nội dung, điều hướng, xử lý mô hình trình bày nhằm áp dụng việc phát triển toán thực tế Đề tài nghiên cứu đặc điểm chung phát triển ứng dụng web hướng mơ hình, để xây dựng quy tắc chuyển đổi mơ hình sinh code tự động với ngơn ngữ ATL cho phát triển ứng dụng Web theo kiến trúc MVC Tiếp theo, đề tài phân tích kết á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 nghiên cứu Phương pháp lý thuyết Phương pháp luận án sử dụng để nghiên cứu gồm: - Tiến hành thu thập nghiên cứu tài liệu có liên quan đến luận án - Nghiên cứu lý luận, hệ thống hóa lý thuyết có liên quan xây dựng sở lý luận đề tài: Thực trạng 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ơ UWE, OOWS, WebML, WebSA sử dụng rộng rãi cho việc thiết kế phát triển ứng dụng Web - Tổng hợp, Phân tích kỹ thuật chuyển đổi mơ hình theo phương pháp UWE, bước hình thành vấn đề lý luận việc phát triển quy tắc chuyển đổi mơ hình, sinh code Phương pháp thực nghiệm Tiến hành kiểm chứng tính khả thi nghiên cứu đề xuất luận án, việc áp dụng vào toán điển hình nhiều nghiên cứu lĩnh vực sử dụng để thực nghiệm Đặc biệt, luận án thực nghiệm toán thực tế lĩnh vực chẩn đoán bệnh thủy sản Sử dụng nhiều công cụ khác để kiểm chứng, đánh giá so sánh tính hiệu chúng Ý nghĩa khoa học thực tiễn đề tài Ý nghĩa khoa học Đề tài tổng hợp phân tích kỹ thuật phát triển ứng dụng web hướng mơ hình Kết nghiên cứu làm tài liệu tham khảo cho đơn vị phát triển phần mềm, cần tiến hành phát triển ứng dụng Web hướng mơ hình, cung cấp tài liệu tham khảo vấn đề liên quan Hướng nghiên cứu đề tài có ý nghĩa việc cung cấp giải pháp phát triển ứng dụng web hướng mơ hình, giúp cho việc xây dựng ứng dụng web đạt hiệu cao Ý nghĩa thực tiễn Kết nghiên cứu tài liệu có giá trị tham khảo hoạt động nghiên cứu phát triển ứng dụng web hướng mơ hình Kết nghiên đề xuất quy tắc chuyển đổi mơ hình sinh code cho ứng dụng web, đồng thời cung cấp công cụ hỗ trợ cho phát triển ứng dụng web, giúp cho việc phát triển ứng dụng web hướng mơ hình thuận lợi, doanh nghiệp phát triển ứng dụng web giảm yếu tố người, nâng cao hiệu làm việc Các kết đạt Luận án có cơng trình khoa học cơng bố Trong đó, cơng trình cơng bố cơng trình trình công bố thời gian tới Tất kết luận án đánh giá thông qua cơng trình đăng tải kỷ yếu hội thảo tạp chí Những kết nghiên cứu bao gồm: (1) Tổng hợp lý thuyết từ bổ sung phát triển quy tắc chuyển đổi mơ hình từ CIM to PIM cho phát triển ứng dụng web hướng mơ hình theo phương pháp UWE Tổng hợp, phân tích kỹ thuật phát triển ứng dụng web hướng mơ UWE, WebML, WebSA Nội dung trình bày chương chương 2, có cơng trình cơng bố liên quan: CT1, CT2, CT3, CT7 (2) Xây dựng phương pháp sinh mã tích hợp phát triển cơng cụ CODEGER-UWE sinh code cho ứng dụng web, theo phương pháp UWE với ngôn ngữ chuyển đổi mơ hình ATL Nội dung trình bày chương có cơng trình công bố liên quan: CT4, CT5 (3) Áp dụng xây dựng chuẩn đoán bệnh thủy sản tảng benhthuysan.vn Nội dung trình bày chương (mục 3.4) có cơng trình cơng bố liên quan: CT6, CT8 CHƯƠNG 1: PHÁT TRIỂN PHẦN MỀM HƯỚNG MƠ HÌNH Chương 1, tác giả giới thiệu kiến trúc MDA, tổng hợp, phân tích thành phần MDA mơ hình CIM, PIM, PSM Phân tích, so sách số kỹ thuật Web hướng mơ hình điển OOWS, UWE, WebML, WebSA làm sở để lựa chọn, xây dựng mơ hình quy tắc chuyển đổi chương Tác giả trình bày tình hình nghiên cứu liên quan, phân tích cụ thể điểm mạnh điểm cần cải tiến nghiên cứu dẫn tới lý đề tài luận án 1.1 Kiến trúc MDA Kiến trúc hướng mơ hình (Model Driven Architecture - MDA) kỹ thuật cho phát triển sản phẩm phần mềm Kỹ thuật giải phức tạp tảng công nghệ khác nhau, việc sử dụng mơ hình (models) tác nhân tồn vòng đời phát triển ứng dụng, giảm phụ thuộc vào tảng cơng nghệ Các mơ hình MDA gồm: Hình 1.2 Tiến trình MDA - Mơ hình độc lập tính tốn - Computation Independent Model (CIM): CIM không hiển thị chi tiết kiến trúc hệ thống, CIM đại diện cho tiến trình nghiệp vụ tổ chức xây dựng - Mơ hình độc lập - Platform Independent Model (PIM): Là khung nhìn hệ thống từ điểm nhìn độc lập với công nghệ Một PIM cần thể khơng phụ thuộc cơng nghệ thích hợp cho việc sử dụng, với nhiều cơng nghệ khác tương tự - Mơ hình cụ thể - Platform Specific Model (PSM): Là khung nhìn hệ thống từ góc độ cơng nghệ cụ thể PSM chứa thể PIM, với chi tiết cụ thể công nghệ sử dụng để phát triển phần mềm java, Net 1.1.1 Chuyển đổi mơ hình MDA Chuyển đổi mơ hình trung tâm kỹ thuật phần mềm hướng mơ hình Sự chuyển đổi mơ hình MDA việc sử dụng chế để biến đổi mơ hình mức trừu tượng hố cao, thành mơ hình mức cụ thể chi tiết hơn, dựa định nghĩa quy tắc chuyển đổi Đó chuyển từ CIM sang PIM, từ PIM sang PSM từ PSM chuyển thành mã chương trình 1.1.2 Ngơn ngữ chuyển đổi mơ hình ATL (ATLAS Transformation Language) ngôn ngữ chuyển đổi mô hình ATL cung cấp cho nhà phát triển cách thức để tạo tập mơ hình đích từ tập mơ hình nguồn 1.2 Các chuẩn OMG cho MDA MOF – Meta Object Facility MOF ngôn ngữ dùng để định nghĩa ngôn ngữ mô hình cung cấp khái niệm cơng cụ cho ngơn ngữ mơ hình hóa MOF cơng nghệ cốt lõi MDA UML – Unified modeling Language UML ngơn ngữ mơ hình hố, ngơn ngữ đặc tả ngơn ngữ xây dựng mơ hình q trình phát triển phần mềm, đặc biệt phân tích thiết kế hệ thống hướng đối tượng OCL (Object Constraint Language) OCL ngôn ngữ khai báo cho định nghĩa ràng buộc (giới hạn) như, quy tắc định nghĩa mơ hình cho ngơn ngữ mơ hình dựa MOF OCL xây dựng phát triển với mục đích bổ sung cho đặc tả UML trở nên rõ ràng xác UML Profile Một UML Profile mở rộng UML, định nghĩa tập khuôn mẫu (stereotype), tập ràng buộc liên quan tập giá trị gán nhãn (tag value) Một định nghĩa khn mẫu đặt tên đính kèm vào thành phần meta-model 1.3 Kỹ thuật web hướng mơ hình 1.3.1 UWE (UML-Based Web Engineering) UWE phương pháp hướng đối tượng dựa ngôn ngữ mơ hình hóa UML, kỹ thuật phát triển theo kỹ thuật hướng mơ hình sử dụng nhiều nhất, phù hợp cho kỹ thuật Web hướng mơ hình 1.3.2 Web Software Architecture (WebSA) WebSA 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 MDA thiết lập giai đoạn vòng đời phát triển: Phân tích; thiết kế độc lập tảng, nơi xây dựng mơ hình tảng độc lập (PIM); thiết kế tảng cụ thể, nơi xây dựng mơ hình tảng độc lập (PSM); mã nguồn Phương pháp nhóm mơ hình ứng dụng web thành khung nhìn: Chức kiến trúc 1.3.3 WebML (Web Modeling Language) WebML ngôn ngữ mơ hình Web Phát triển ứng dụng với WebML hỗ trợ WebRatio, công cụ thương mại cho việc thiết kế thực ứng dụng Web WebML có mơ hình đưa ra: (1) Mơ hình cấu trúc (2) Mơ hình siêu văn mơ tả nhiều hypertexts, (3) Mơ hình thể hiện, (4) Mơ hình cá nhân hóa 1.3 OOWS - Object-Oriented Web Solution OOWS phương pháp kỹ thuật Web, cung cấp kỹ thuật để hỗ trợ cho việc phát triển ứng dụng Web OOWS mở rộng phương pháp OO-H OO-H gồm mơ hình: Mơ hình cấu trúc, mơ hình động, mơ hình chức Để phù hợp cho việc phát triển ứng dụng web, OOWS đề xuất mơ hình: Mơ hình người dùng, mơ hình điều hướng mơ hình trình bày Ba mơ hình cho phép mơ tả đầy đủ ứng dụng Web mức PIM Quá trình tạo mã thực công cụ OlivaNova 1.3 Hypertext Modeling Method of MIDAS (MIDAS-HM3) MIDAS (HM3) phương pháp luận cho phát triển nhanh hệ thống Web dựa MDA Nó đề xuất mơ hình hóa hệ thống cách quy định mơ hình độc lập với tính tốn (CIMs), PIMs, PSMs Đề xuất mơ hình hóa hệ thống theo ba khía cạnh: Siêu văn bản, nội dung hành vi Tuy nhiên, MIDSMH3 không đề xuất mơ hình hóa liên quan đến vấn đề kiến trúc 1.4 Các nghiên cứu liên quan nhiệm vụ luận án 1.4.1 Tình hình nghiên cứu ngồi nước Từ việc tìm hiểu cơng bố quốc tế cho thấy lĩnh vực nghiên cứu tồn hai vấn đề Thứ nhất, nghiên cứu chủ yếu tập trung vào chuyển đổi mơ hình, chưa tích hợp phần sinh code cho cơng cụ đề xuất Thứ hai, cịn nhiều vấn đề chuyển đổi model to model, model to code cần nghiên cứu để cải thiện việc sinh thành phần cho mơ hình sinh code cho ứng dụng web 1.4.2 Tình hình nghiên cứu nước Trong trình làm luận án, thân tìm thấy nghiên cứu khóa luận sinh viên Đại học, thạc sĩ tổng hợp dịch từ nghiên cứu nước ngồi sử dụng cơng cụ có sẵn để chuyển đổi mơ hình sinh mã nguồn, chưa thấy có nghiên cứu đề xuất tích hợp công cụ sinh code tự động cho ứng dụng web theo phương pháp UWE B5: Với process class user action tương ứng Đọc output pin user action thêm vào danh sách pin B6: Duyệt pin danh sách thu B5 Tạo thuộc tính tương ứng cho process class Nếu process class tương ứng với user action có gắn thẻ “validated” Thì tạo phương thức validateData (param1, param2, ) danh sách tham số cần kiểm tra cho process class Quy tắc S2C: Chuyển đổi system action thành process class mơ hình xử lý Quy trình thực quy tắc S2C B1: Đọc mơ hình, lấy biểu đồ ca activity diagram B2: Với activity, đọc tất node B3: Duyệt node, với node có stereotype system action Thêm vào danh sách B4 Với system action node duyệt B3 Kiểm tra thẻ node Nếu thẻ “confirmed” tạo confirmation node tương ứng thêm vào danh sách B5: Với phần tử danh sách node lấy sau B3 B4 Tạo process class tương ứng B6: Lấy tất input pin system action Thêm vào danh sách tham số chưa tồn danh sách tham số B7: Nếu system action có thẻ “confirmed” tạo phương thức tương danh sách tham số tương ứng cho “confirmation class” tương ứng với confirmation node B4 Ngược lại, tạo phương thức danh sách tham số tương ứng cho process class node B3 Quy tắc chuyển đổi U2U: Quy tắc chuyển đổi user action activity diagram thành user action mơ hình luồng xử lý Quy trình thực quy tắc U2U B1: Đọc mơ hình, lấy danh sách activity diagram B2: Với activity diagram đọc tất node Nếu node có stereotype user action Tạo user action tương ứng mơ hình luồng xử lý B3: Đọc tất pin node tạo pin tương ứng cho user action tạo B2 B4: Nếu user action có thẻ “validated” Tạo phần tử validate với stereotype system action để thực việc kiểm tra liệu “decision node” để rẽ nhánh true/false tương ứng với hai trường hợp liệu thỏa mãn ràng buộc ngược lại 10 Quy tắc chuyển đổi S2S: Phần tử system action biểu đồ ca sử dụng chuyển đổi tương ứng sang system action mơ hình luồng xử lý Quy trình thực quy tắc S2S B1: Đọc mơ hình, lấy danh sách activity diagram B2: Với activity diagram đọc tất node Nếu node có stereotype system action tạo system action tương ứng mơ hình luồng xử lý B3: Nếu user action có thẻ “confirmed” Tạo confirmation user action để thực việc yêu cầu xác nhận từ người sử dụng “decision node” để rẽ nhánh true/false tương ứng với trường hợp người dùng đồng ý hủy bỏ 2.3.2 Tích hợp OCL mơ hình trình bày Quy trình chuyển đổi bất biến mơ hình u cầu sang mơ hình trình bày B1: Duyệt danh sách presentation group tạo theo quy tắc D2G B2: Với presentation group, đọc lấy danh sách interation pin display action tương ứng B3: Với pin, đọc tất ràng buộc OCL pin Thêm vào danh sách ràng buộc chưa tồn B4: Với ràng buộc danh sách lấy B3 Tạo ràng buộc tương ứng thêm vào cho thành phần tương ứng với pin mơ hình trình bày Bổ sung quy tắc chuyển đổi sang mơ hình trình bày Quy tắc D2G: Display action đại diện cho thành phần thị chuyển đổi thành group element Quy trình thực quy tắc D2G B1: Đọc mơ hình lấy activity diagram tương ứng với process class B2: Đọc tất node activity diagram Nếu stereotype display action Kiểm tra type node tạo thành phần ánh xạ tương ứng với node B3: Nếu type node “validated” tạo button confirm button cancel thêm vào thành phần giao diện tạo B2 Quy tắc P2E: Các pin chuyển đổi tương ứng sang UIElement mơ hình giao diện Quy trình thực quy tắc P2E B1: Đọc mơ hình lấy activity diagram tương ứng với display action quy tắc D2G B2: Với activity diagram B1, đọc tất input pin, thêm vào danh sách B3: Với pin B3 Tạo thành phần tương ứng mơ hình giao diện tương ứng 11 2.4 Phát triển quy tắc chuyển đổi mơ hình với ATL 2.4.1 Giải pháp 2.4.1.1 Siêu mơ hình u cầu 2.4.1.2 Siêu mơ hình: content, navigation, process, 2.4.2 Các quy tắc ATL Hình 2.21 Tổng quan phương pháp đề xuất Hình 2.21 xác định phương pháp chuyển đổi thành mô hình đích tn thủ metamodel PIM, từ mơ hình nguồn mơ hình u cầu phù hợp với metamodel CIM Việc chuyển đổi mô tả quy tắc phù hợp với metamodel ATL Các mơ hình đích thu dựa metamodel CIM PIM Tuy nhiên, metamodel CIM, PIM ATL tuân thủ MOF (đặc tả ngơn ngữ metamodel) a) Quy tắc chuyển sang mơ hình nội dung Chuyển đổi từ mơ hình u cầu sang mơ hình nội dung thực dựa 06 quy tắc, gồm: Model2Package; UseCase2Operation; Actor2Class; Pin2Property; EntralBufferNode2Class; GeneralizationTransform b) Quy tắc chuyển sang mơ hình điều hướng Mơ hình điều hướng mô tả luồng chuyển hướng tương ứng với hành động người sử dụng ứng dụng Web Quá trình điều hướng thể biểu đồ lớp, ngồi cịn có nút, liên kết, menu Tác giả xây dựng quy tắc thực việc chuyển đổi từ mơ hình u cầu sang mơ hình điều hướng, gồm: Model2Package; BrowsingUseCase2NavigationClass; ProcessingUseCase2ProcessClass; NonExtendUseCase2Assocication; Extend2Assocication; Include2Association; CreateSubMenu; NavigationAction2AssociationWithMenu; NavigationAction2AssociationWithoutMenu 12 c) Quy tắc chuyển sang mơ hình xử lý trình bày Tác giả đặc tả lại ngơn ngữ ATL: 04 quy tắc trình bày mục 2.3.1 tương ứng với 05 quy tắc gồm: Lazy rule OutputPin2Property; lazy rule InputPin2Parameter; lazy rule UserAction2ProcessClass; lazy rule SystemAction2ProcessClass; rule Requirement2Process; 02 quy tắc (D2G, P2E) trình bày mục 2.3.2 luận án chia thành nhóm - Nhóm 1: gồm 05 quy tắc để chuyển đổi thành phần display action mơ hình yêu cầu thành thành phần tương ứng mô hình trình bày: Display2Form; Display2IteratedGroup; Display2Page; Display2PresentationAlternatives; Display2PresentationGroup - Nhóm 2: gồm 06 quy tắc: DisplayPin2Image; DisplayPin2Media; DisplayPin2Text; InteractionPin2FileUpload; InteractionPin2TextInput; InteractionPin2Selection Như vậy, tác giả trình bày 31 quy tắc chuyển đổi mơ hình, tác giả hồn thiện đầy đủ việc xây dựng chuyển đổi từ mơ hình u cầu sang mơ hình nội dung, điều hướng, xử lý trình bày với ngơn ngữ chuyển đổi mơ hình ATL Các quy tắc tích hợp để xây dựng công cụ UWE-ATL 2.4.3 Kết thảo luận Công cụ UWE-ATL cho kết tốt chuyển đổi cho mơ hình điều hướng, xử lý trình bày Với mơ hình nội dung, số lượng class sinh class sinh có nhiều attributes operations - Với ví dụ MusicPortal Bảng 2.8 Kết chuyển đổi mơ hình Content, Process - ví dụ MusicPortal Thành Classes Attributes Operations phần /cơng cụ UWE- Magic- UWE- Magic UWE- Magic ATL UWE ATL UWE ATL UWE Tiêu chí Content 3 Process 0 0 Bảng 2.9 Kết chuyển đổi mơ hình Navigation - ví dụ MusicPortal Thành Links phần/công NavigationClasses ProcessClass cụ UWEMagic UWE- Magic UWE- Magic Tiêu chí Navigation ATL UWE ATL UWE ATL UWE 2 13 Bảng 2.10 Kết chuyển đổi mơ hình Presentation - ví dụ MusicPortal Thành Classes Properties phần/công cụ UWE-ATL MagicUWE UWE-ATL MagicUWE Tiêu chí Presentation 2 - Với ví dụ AddressBook Bảng 2.11 Kết chuyển đổi mơ hình Content, Process - ví dụ AddressBook Thành Classes Attributes Operations phần/công cụ UWE- Magic UWE- Magic UWE-ATL Magic ATL UWE ATL UWE UWE Tiêu chí Content 7 Process operations 0 (7 parameters) Bảng 2.12 Kết chuyển đổi mơ hình Navigation - ví dụ AddressBook Thành NavigationClasses ProcessClass Links phần/cơng Magic UWE- Magic UWE- Magic cụ UWEATL UWE ATL UWE ATL UWE Tiêu chí Navigation 3 3 5 Bảng 2.13 Kết chuyển đổi mơ hình Presentation- ví dụ AddressBook Thành Classes Properties phần/cơng cụ UWE-ATL MagicUWE UWE-ATL MagicUWE Tiêu chí Presentation 2 15 16 Tác giả nhận thấy rằng, cách tiếp cận UWE-ATL tiết kiệm nhiều thời gian cho nhà phát triển Vì sau chuyển đổi, mơ hình tạo chi tiết cụ thể MagicUWE, tinh chỉnh thủ công Đây sở tốt cho việc sinh code tự động từ đặc tả yêu cầu cho ứng dụng web 14 CHƯƠNG 3: SINH MÃ TỰ ĐỘNG CHO ỨNG DỤNG WEB HƯỚNG MƠ HÌNH Trong chương này, tác giả trình bày kỹ thuật sinh mã tích hợp phát triển cơng cụ CODEGER-UWE sinh code cho ứng dụng web theo phương pháp UWE, với ngôn ngữ chuyển đổi mơ hình ATL, có cơng trình cơng bố liên quan: CT4, CT5 Tác giả trình bày chi tiết áp dụng xây dựng Chuẩn đoán bệnh thủy sản, tảng benhthuysan.vn, sử dụng kết cơng cụ trình bày chương chương Liên quan đến nội dung này, có 02 cơng trình cơng bố liên quan: CT6, CT8 3.1 Kỹ thuật sinh mã phát triển ứng dụng web hướng mơ hình 3.2.1 Xây dựng quy tắc sinh mã Tác giả đề xuất xây dựng giải thuật để chuyển đổi từ mơ hình PSM sang code theo phương pháp UWE Sử dụng phương pháp khuôn mẫu metamodel với tảng cơng nghệ J2EE mơ hình Web MVC Tác giả xây dựng 03 quy tắc sinh code: Quy tắc CM2M sinh mã thành phần Hình 3.3 Chuyển đổi sang mã nguồn Model từ mơ hình nội dung; theo mơ hình MVC Quy tắc PRES2V sinh mã thành phần View từ mơ hình trình bày; Quy tắc NPROM2C sinh mã thành phần Controller từ mơ hình điều hướng, mơ hình xử lý (Chi tiết bảng 3.1) tích hợp công cụ CODEGER –UWE Bảng 3.1 Danh sách quy tác sinh code xây dựng TT Tên quy tắc Ý nghĩa Thành phần lớp mơ hình nội Quy tắc CM2M dung chuyển đổi sang JavaModel Tạo lớp JavaBean tương ứng với lớp 1.1 UWEClass2JavaClass mơ hình nội dung Mỗi thuộc tính lớp chuyển UWEProperty2JavaClass 1.2 đổi tương ứng thành trường (field) Member JavaBean 15 Ý nghĩa Mỗi thủ tục (operation) chuyển UWEOperation2Java 1.3 đổi tương ứng thành phương thức Method (method) 1.4 JavaModel2SourceCode Sinh mã nguồn Java từ JavaModel Các lớp mơ hình trình bày Quy tắc PRES2V chuyển đổi sang JSPModel Lớp có khn mẫu văn (text), nút 2.1 PreElement2JSP bấm (button),…, chuyển đổi thành thành phần tương ứng JSP Lớp có khn mẫu trang (presentationPage), biểu mẫu 2.2 PreClass2JSP (inputform),… chuyển đổi thành thành phần tương ứng JSP 2.3 JSPModel2SourceCode Sinh mã nguồn Java từ JSPModel Quy tắc sinh mã thành phần Controller từ Quy tắc NPROM2C mơ hình điều hướng sinh mã từ mơ hình xử lý Tạo lớp Controller từ lớp điều hướng 3.1 Navi2JavaClass đánh dấu "isHome" Các lớp xử lý, truy vấn chuyển đổi 3.2 NaviNode2JavaClass thành phương thức lớp Controller Tạo lớp Java tương ứng với lớp 3.3 UWEClass2JavaClass mơ hình xử lý, giữ ngun kế thừa lớp 2.3.2 Xây dựng giải thuật sinh code tự động Tác giả xây dựng 03 giải thuật sinh code, sở phân tích mơ hình UWE quy tắc chuyển đổi tương ứng với kiến trúc MVC: - Giải thuật CM2M: Từ mơ hình nội dung (mức PIM) chuyển đổi sang JavaModel (mức PSM), thể Java metamodel, sau chuyển đổi sang mã nguồn Java - Giải thuật NPROM2C: Từ mô hình điều hướng xử lý chuyển đổi sang JavaModel, sau chuyển đổi sang mã nguồn Java, tương ứng thành phần Controller - Giải thuật PRES2V: Từ mơ hình trình bày chuyển đổi sang JSPModel, thể JSP metamodel, sau chuyển đổi sang mã JSP, tương ứng thành phần View TT Tên quy tắc 16 2.3.3 Thử nghiệm đánh giá Từ quy tắc, giải thuật xây dựng, tác giả xây dựng công cụ CODEGER-UWE để hỗ trợ sinh mã nguồn cho ví dụ “Address Book” Cơng cụ sinh mã CODEGER –UWE cho kết tốt sinh mã nguồn, thể bảng 3.2 Bảng 3.2 Bảng đánh giá mã nguồn Thành phần Tiêu chí Số lượng mã nguồn (tự động/sau chỉnh sửa) Độ hoàn thiện Định dạng mã nguồn Tốc độ sinh mã Thông tin bổ sung bị ghi đè sau tái sinh mã Model View Controller 160/190 150/270 200/230 84% Theo quy chuẩn 55% Theo quy chuẩn ~2s 87% Theo quy chuẩn Bị ghi đè Bị ghi đè Bị ghi đè 3.3 Sinh mã sử dụng ngơn ngữ ATL 3.3.1 Chuyển đổi mơ hình PIM sang PSM theo kiến trúc MVC 3.3.1.1 Tạo phần Model Trong nội dung này, tác giả phát triển quy tắc giải thuật sinh mã nguồn tự động từ mơ hình UWE, để tạo ứng dụng web chẩn đốn bệnh thủy sản (benhthuysan.vn) theo kiến trúc MVC Hình 3.18 Sơ đồ chuyển đổi mơ hình sinh code Module sinh code gồm có thành phần Phần model-to-model cho phép chuyển đổi từ mơ hình mức PIM sang mơ hình mức PSM (mơ hình Java mơ hình JSP) Phần model-to-code cho phép sinh code từ mơ hình mức PSM thu thành file mã nguồn java jsp 17 a Chuyển đổi mô hình nội dung Để chuyển đổi từ mơ hình nội dung sang mơ hình Java thực dựa 08 quy tắc, thể chi tiết bảng 3.3 Bảng 3.3 Các quy tắc chuyển đổi từ mô hình nội dung sang mơ hình java Tên quy tắc Phần tử mơ hình Phần tử Java tương nội dung ứng Package2Package Package Package Class2Class Class Class Property2Field Property Field Property2GetterMethod Property Method (get) Property2SetterMethod Property Method (set) CollectionProperty2Field Property (số nhiều) Field (Set List) CollectionProperty2 Property (số nhiều) Method (get) GetterMethod CollectionProperty2 Property (số nhiều) Method (set) SetterMethod b Chuyển đổi mơ hình xử lý Mơ hình xử lý thể hành vi ứng dụng web mà controller thực Phần tử ProcessClass mô hình xử lý chứa thuộc tính contentClass tham chiếu đến class mơ hình nội dung cho biết hành vi ứng với model nào, hành vi ứng với phương thức service kiến trúc MVC Gói service thuộc thành phần Model, chứa phương thức liên quan đến liệu mà ứng dụng cần gọi đến (truy xuất sở liệu, chuyển đổi, kiểm tra liệu hợp lệ,…) Do đó, hành vi mơ hình xử lý dùng để định nghĩa phương thức cho service (Bảng 3.4) Bảng 3.4 Quy tắc thành phần mơ hình xử lý Java Phần tử Java Tên quy tắc Phần tử mơ hình xử lý tương ứng Package2Package Package Package Class2Class Class (Content class Class (Service ProcessClass tham chiếu) class) Operation2Method Operation (của Method (của ProcessClass) Service class) Parameter2Method Parameter (của MethodParameter Parameter Operation) 18 3.3.1.2 Tạo thành phần Controller Mơ hình điều hướng thể luồng chuyển hướng trang web, phần tử NavigationClass mô hình điều hướng ứng với nút luồng điều hướng từ ứng với yêu cầu từ phía client mà controller cần xử lý Danh sách quy tắc chuyển đổi từ mơ hình điều hướng sang mơ hình Java, thể Bảng 3.5 Bảng 3.5 Các quy tắc chuyển đổi mơ hình điều hướng sang mơ hình Java Tên quy tắc Package2Package Class2Class Class2Method Phần tử mơ hình điều hướng Package Class (Content class NavigationClass tham chiếu) NavigationClass Phần tử Java tương ứng Package Class (Controller class) Method (của Controller class) 3.3.1.3 Tạo thành phần View Mơ hình trình bày cung cấp tập phần tử giao diện dùng để mơ hình hoá giao diện người dùng hiển thị ứng dụng web Phần tử PresentationPage đại diện cho trang web, chứa phần tử giao diện khác: Text, Image, Button, Anchor, TextInput, FileUpload,… Có 08 quy tắc xây dựng để chuyển đổi mơ hình trình bày sang mơ hình JSP, thể bảng 3.6 Bảng 3.6 Các quy tắc chuyển đổi mô hình trình bày sang JSP: Tên quy tắc PresentationPage2JSP PresentationGroup2JSP Text2JSP Image2JSP Button2JSP Anchor2JSP TextInput2JSP FileUpload2JSP Phần tử mơ hình trình bày PresentationPage PresentationGroup Text Image Button Anchor TextInput FileUpload Thẻ JSP tương ứng html head div span img button a input (type=”text”) input (type=”file”) 19 3.3.2 Cấu trúc mơ hình PSM theo kiến trúc MVC Cấu trúc mơ hình PSM theo kiến trúc MVC thể chi tiết mục 3.3.2 luận án 3.3.3 Xây dựng quy tắc chuyển đổi từ PSM sang mã nguồn 3.3.2.1 Sinh code từ mơ hình java Để thực sinh mã nguồn từ mơ hình java nhóm nghiên cứu phát triển 06 truy vấn ATL, thể bảng 3.11 3.11 Các truy vấn sinh mã từ mơ hình java Tên truy vấn Mục đích Java2Code Duyệt tất class, gọi toString() để sinh mã ghi file Sinh mã cho phần tử (package, class, field, toString method, parameter) Sinh mã phần access modifier (private, default, visibility protected, public) scope Sinh mã từ khoá static Sinh mã cho tên package, kiểu liệu kèm theo đường fullName dẫn package đầy đủ modifierAbstract Sinh mã từ khố abstract 3.3.2.2 Sinh code từ mơ hình JSP Để thực sinh mã nguồn từ mô hình JSP, tác giả sử dụng 04 truy vấn ATL, thể bảng 3.12 Hình 3.12 Truy vấn ATL sinh mã mơ hình JSP Tên truy vấn Ý nghĩa JSP2Code Duyệt tất nút Root, với nút Root, gọi getChildren duyệt tất thẻ (mỗi thẻ gọi getAttributes duyệt tất thuộc tính) gọi toCode để sinh mã, ghi vào file tương ứng getChildren Duyệt tất thẻ getAttributes Duyệt tất thuộc tính toCode Sinh mã cho phần tử (thẻ thuộc tính) 3.4 Thử nghiệm sinh mã cho ứng dụng web benhthuysan.vn 3.4.1 Công cụ sinh mã Cơng cụ CODEGER-UWE tác giả đề xuất nhằm tích hợp quy tắc chuyển đổi mơ hình giải thuật sinh mã, nhằm tạo ứng dụng web cách tự động từ mơ hình UWE tương ứng, với thành phần mơ hình Web MVC 20 Hình 3.19 Kiến trúc CODEGER –UWE 3.4.2 Phát triển ứng dụng benhthuysan.vn Để thử nghiệm đánh giá quy tắc xây dựng, tác giả đề xuất áp dụng cơng cụ CODEGER–UWE vào tốn xây dựng ứng dụng web Chẩn đoán bệnh thủy sản (benhthuysan.vn) Áp dụng quy tắc chuyển đổi truy vấn ATL để sinh mã tự động cho ứng dụng web Mã nguồn Java JSP tương ứng với ứng dụng web có gói: Model, controller service (Hình 3.30) Ứng dụng web, mơ chun gia bệnh thủy sản chẩn đốn đưa phác đồ điều trị cho loài thủy sản bị bệnh với giao diện người dùng thân thiện Khi ao nuôi bị bệnh, người dân chưa thể biết Hình 3.30 Cấu trúc mã nguồn bệnh khơng có chun sinh tự động gia bệnh để tư vấn Người nuôi thủy sản lựa chọn triệu chứng (dấu hiệu) mà loại thủy sản ao ni mắc phải, ứng dụng web chẩn đốn đưa phác đồ điều trị bệnh, giúp người ni tự 21 chẩn đốn điều trị sớm dịch bệnh mà ao mắc phải, nhằm giảm thiểu rủi ro dịch bệnh, tăng suất nuôi trồng thủy sản Tác giả thiết kế xây dựng liệu cho 62 loại bệnh loài thủy sản phổ biến, làm sở tri thức để chẩn đoán bệnh Ứng dụng web áp dụng thực tế, giúp người nuôi thủy sản tự chẩn đoán đưa phác đồ điều trị kịp thời, giúp giảm thiểu rủi ro dịch bệnh, tăng suất nâng cao thu nhập cho người nuôi thủy sản 3.4.3 Kết thảo luận Ưu điểm nghiên cứu chuyển đổi mơ hình tạo mã tự động mơ hình hiệu Kết cho thấy, việc chuyển đổi tự động mơ hình UWE tốt nghiên cứu trước công cụ MagicUWE, bao gồm việc mô tả chi tiết thành phần mơ hình sau chuyển đổi thể chi tiết hơn, tiết kiệm thời gian hơn, phải can thiệp thủ cơng Cụ thể, với mơ hình nội dung, xử lý cơng cụ CODEGER-UWE tác giả đề xuất có số lượng class sinh class sinh có nhiều attributes operations (Bảng 3.13) Bảng 3.13 Bảng so sách kết chuyển đổi mơ hình nội dung xử lý Mơ hình CODEGER-UWE Classes Attributes Operations Nội dung Xử lý MagicUWE Classes Attributes Operations 10 operations (2 parameters) 18 10 0 Bảng 3.14 Bảng so sách kết chuyển đổi mơ hình điều hướng CODEGER-UWE Mơ hình Điều hướng MagicUWE Navigation Classes Process Class Links Navigation Classes Process Class Links 10 17 10 18 Bảng 3.15 Bảng so sách kết chuyển đổi mơ hình trình bày Mơ hình Trình bày CODEGER-UWE Classes Properties MagicUWE Classes Properties 22 KẾT LUẬN Luận án trình bày phương pháp tiếp cận MDE để việc tạo ứng dụng Web từ mô hình theo phương pháp UWE Luận án xây dựng thành cơng quy tắc chuyển đổi mơ hình từ CIM sang PIM từ PIM sang PSM, chuyển đổi PSM thành mã chương trình để xây dựng ứng dựng Web benhthuysan.vn, với ngôn ngữ chuyển đổi mô hình ATL Phương pháp tiếp cận giúp đảm bảo tính thống mơ hình sau chuyển đổi, đảm bảo hiệu chuyển đổi mơ hình cho phát triển ứng dụng Web hướng mơ hình Qua nghiên cứu, luận án khẳng định số đóng góp lĩnh vực nghiên cứu là: (1) Tổng hợp lý thuyết, từ bổ sung phát triển quy tắc chuyển đổi mơ hình từ CIM to PIM to PSM to CODE cho phát triển ứng dụng web hướng mơ hình theo phương pháp UWE Nội dung trình bày chương có cơng trình cơng bố liên quan: CT1, CT2, CT3, CT7 (2) Xây dựng phương pháp sinh mã tích hợp phát triển công cụ CODEGER-UWE sinh code cho ứng dụng web, theo phương pháp UWE với ngôn ngữ chuyển đổi mơ hình ATL Nội dung trình bày chương có cơng trình cơng bố liên quan: CT4, CT5 (3) Áp dụng xây dựng Chuẩn đoán bệnh thủy sản tảng benhthuysan.vn Nội dung trình bày chương (mục 3.4) có cơng trình cơng bố liên quan: CT6, CT8 Cụ thể hơn, luận án thực kết sau: - Phân tích tổng quan vấn đề phát triển ứng dụng web hướng mơ hình kỹ thuật chuyển đổi model to model mode to text Đồng thời, bổ sung quy tắc tích hợp OCL vào chuyển đổi sang mơ hình xử lý mơ hình trình bày, nhằm cải tiến, nâng cao hiệu chuyển đổi mơ hình UWE - Xây dựng, bổ sung 31 quy tắc chuyển đổi từ mơ hình u cầu sang mơ hình nội dung, điều hướng, xử lý trình bày với ngơn ngữ chuyển đổi mơ hình ATL 23 - Phát triển quy tắc chuyển đổi từ mơ hình mức PIM sang mơ hình mức PSM (mơ hình Java mơ hình JSP) sinh mã từ mơ hình mức PSM thu thành file mã nguồn java jsp Cách tiếp cận luận án cung cấp giải pháp hiệu cho vấn đề sinh mã tự động, theo phương pháp phát triển ứng dụng Web hướng mơ hình UWE Cụ thể, (1) Xây dựng 23 quy tắc chuyển đổi sang mơ hình java, 12 quy tắc chuyển thành thành phần Model từ mơ hình nội dung, 08 quy tắc tạo thành phần View từ mơ hình trình bày 03 quy tắc tạo thành phần Controller từ mơ hình điều hướng; (2) phát triển 06 truy vấn ATL để sinh mã mơ hình java; 04 truy vấn ATL để sinh mã từ mơ hình JSP - Từ quy tắc, truy vấn ATL luận án xây dựng công cụ CODEGER-UWE để hỗ trợ sinh mã nguồn tạo ứng dụng web benhthuysan.vn Kết cho thấy, xây dựng cơng cụ CODEGER – UWE tích hợp quy tắc xây dựng, cung cấp đầy đủ cách thức thiết kế sinh mơ hình UWE, đảm bảo tính thống hiệu chuyển đổi mơ hình sinh code tự động cho phát triển ứng dụng Web hướng mơ hình Hướng phát triển luận án Định hướng nghiên cứu luận án tiếp tục mở rộng công cụ đề xuất CODEGER –UWE, với khả tích hợp buộc OCL, nhằm tiếp tục nghiên cứu sâu kỹ thuật chuyển đổi mơ hình kỹ thuật sinh code theo phương pháp UWE, để tạo ứng dụng web chuyên nghiệp Theo số nghiên cứu, kiểm thử thường chiếm khoảng 50% chi phí dự án 35% tổng thời gian phát triển phần mềm Vì vậy, hướng nghiên cứu đề tài tích hợp kiểm thử hướng mơ hình, tạo ca kiểm thử tự động từ mơ hình UWE, để kiểm thử ứng dụng Web, nhằm giảm thiểu chi phí cho dự án đảm bảo chất lượng sản phẩm ứng dụng Web 24 ... hợp, phân tích 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ơ UWE, WebML, WebSA - Phát triển quy tắc chuyển đổi mơ hình - Phát triển quy tắc sinh code với... 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ơ UWE, OOWS, WebML, WebSA sử dụng rộng rãi cho việc thiết kế phát triển ứng dụng Web - Tổng hợp, Phân tích kỹ thuật. .. sung phát triển quy tắc chuyển đổi mơ hình từ CIM to PIM cho phát triển ứng dụng web hướng mơ hình theo phương pháp UWE Tổng hợp, phân tích kỹ thuật phát triển ứng dụng web hướng mơ UWE, WebML, WebSA