Luận án tiến sĩ: Sinh mã nguồn thiết bị đeo tay IoT bằng mô hình hóa - Trường ĐH Bách Khoa TP.HCM

Tìm hiểu cách sinh mã nguồn tự động cho thiết bị đeo tay IoT bằng mô hình hóa và tập luật. Phương pháp tối ưu hiệu suất và giảm chi phí phát triển.

Trường ĐH

Trường Đại học Bách Khoa - Đại học Quốc gia Thành phố Hồ Chí Minh

Tác giả

Luan An

Thể loại

Luận án tiến sĩ

Năm xuất bản

Số trang

178

Thời gian đọc

27 phút

Lượt xem

0

Lượt tải

0

Phí lưu trữ

50 Point

Tổng quan nhanh

Chủ đề:
1. Phát triển IoT đeo tay: Giải pháp sinh mã tự động
Số trang:
178 trang
Trường:
Trường Đại học Bách Khoa - Đại học Quốc gia Thành phố Hồ Chí Minh
Chuyên ngành:
Khoa học máy tính
Tác giả:
Năm:

Tóm tắt nội dung luận án

I. Phát triển IoT đeo tay Giải pháp sinh mã tự động

Thị trường thiết bị đeo tay IoT đang tăng trưởng nhanh chóng. Các thiết bị này nhỏ gọn, có kiến trúc đơn giản. Chúng thường giao tiếp theo hướng truyền tải dữ liệu. Mục tiêu là hỗ trợ các giải pháp thông minh. Nhiều lĩnh vực áp dụng các giải pháp này. Bao gồm hệ thống chữa cháy, nhà hàng thức ăn nhanh, và điều trị y tế. Nhu cầu phát triển ứng dụng cho thiết bị đeo tay ngày càng tăng. Các nhà phát triển cần công cụ hỗ trợ nhanh chóng và hiệu quả. Nghiên cứu hiện tại ít tập trung vào phát triển ứng dụng cho thiết bị đeo tay. Lĩnh vực này vẫn còn bỏ ngỏ. Một khung thức mới được đề xuất. Khung thức này hỗ trợ xây dựng ứng dụng nhanh chóng. Nó hiệu quả cho thiết bị đeo tay. Cách tiếp cận này giúp khắc phục hạn chế hiện có. Nó thúc đẩy quá trình tạo ra các ứng dụng phức tạp. Nó tăng tốc độ đưa sản phẩm ra thị trường. Đồng thời, nó nâng cao hiệu quả phát triển phần mềm nhúng. Điều này là cốt lõi cho lập trình nhúng tự động. Tự động hóa phát triển phần mềm nhúng trở thành yếu tố then chốt.

1.1. Nhu cầu phát triển ứng dụng IoT đeo tay

Thiết bị đeo tay IoT ngày càng phổ biến. Chúng nhỏ gọn, kiến trúc đơn giản. Giao tiếp chủ yếu dựa trên dữ liệu. Mục tiêu là hỗ trợ các giải pháp thông minh. Các lĩnh vực áp dụng đa dạng. Ví dụ: hệ thống chữa cháy, nhà hàng, điều trị y tế. Kỷ nguyên số chứng kiến sự gia tăng thiết bị này. Nhu cầu ứng dụng cho chúng cũng tăng cao. Các nhà phát triển cần công cụ hiệu quả. Công cụ này phải hỗ trợ phát triển nhanh chóng. Nghiên cứu hiện tại chưa tập trung đủ. Lĩnh vực phát triển ứng dụng cho thiết bị đeo tay còn bỏ ngỏ. Điều này tạo ra rào cản. Cần có cách tiếp cận mới. Nó phải đẩy nhanh quá trình phát triển. Nó phải đảm bảo chất lượng phần mềm. Điều này liên quan đến kiến trúc phần mềm thiết bị đeo thông minh.

1.2. Thách thức trong tự động hóa lập trình nhúng

Lập trình nhúng tự động gặp nhiều thách thức. Thiết bị đeo tay có tài nguyên hạn chế. Yêu cầu về hiệu suất, năng lượng rất cao. Thời gian phản hồi phải nhanh. Mã nguồn phải tối ưu. Việc phát triển thủ công tốn thời gian. Nó dễ gây ra lỗi. Thiếu công cụ hỗ trợ chuyên biệt. Đặc biệt cho các giải pháp IoT thông minh. Nhu cầu về phát sinh mã tự động IoT là cấp thiết. Nó giúp giảm thiểu công sức. Nó nâng cao độ tin cậy. Các phương pháp truyền thống không đủ. Cần có cách tiếp cận mới. Cách tiếp cận phải tích hợp nhiều kỹ thuật. Nó phải giải quyết vấn đề quy mô. Nó phải đáp ứng tính đa dạng của thiết bị.

II. Khung thức sinh mã cho ứng dụng IoT đeo tay thông minh

Một khung thức mới được đề xuất. Nó hỗ trợ xây dựng ứng dụng nhanh chóng và hiệu quả. Khung thức này dành cho thiết bị đeo tay. Đây là nền tảng kết hợp mô hình hóa thiết bị đeo taytập luật logic thiết bị IoT. Mục tiêu chính là phát sinh mã tự động IoT. Luận án tập trung vào hai phương pháp tiếp cận. Đầu tiên là sử dụng mô hình hóa. Thứ hai là áp dụng các tập luật cho các ràng buộc ứng dụng. Khung thức này định nghĩa một quy trình rõ ràng. Nó bắt đầu từ đặc tả yêu cầu. Sau đó là thiết kế hệ thống. Cuối cùng là tạo ra mã nguồn. Nó cung cấp sự linh hoạt cao. Nó cho phép tích hợp nhiều công nghệ khác nhau. Nó giúp thiết kế hệ thống IoT một cách có cấu trúc. Khung thức này thúc đẩy kỹ thuật hướng mô hình (MDE) cho IoT. Điều này giảm thiểu lỗi thủ công. Nó cải thiện đáng kể năng suất lập trình.

2.1. Kết hợp mô hình hóa và tập luật logic

Khung thức này kết hợp hai yếu tố cốt lõi. Đó là mô hình hóa thiết bị đeo taytập luật logic thiết bị IoT. Mô hình hóa giúp đặc tả hệ thống rõ ràng. Nó mô tả kiến trúc phần cứng và hành vi ứng dụng. Nó cung cấp một góc nhìn trừu tượng. Tập luật logic xử lý các ràng buộc. Nó đảm bảo tính đúng đắn của ứng dụng. Nó áp dụng các quy tắc nghiệp vụ cần thiết. Sự kết hợp này mang lại nhiều lợi ích. Nó tăng cường khả năng tự động hóa. Nó giảm sự phức tạp trong quá trình phát triển. Nó tạo ra mã nguồn chất lượng cao. Các hệ thống dựa trên luật cho IoT trở nên mạnh mẽ hơn. Chúng giúp kiểm soát các tương tác phức tạp. Điều này đảm bảo hệ thống hoạt động chính xác. Khung thức tạo ra một cầu nối hiệu quả. Nó nối từ ý tưởng trừu tượng đến mã nguồn thực thi được.

2.2. Đặc tả kiến trúc phần cứng và ứng dụng

Khung thức cho phép đặc tả chi tiết. Nó bao gồm kiến trúc phần cứng. Nó cũng bao gồm ứng dụng chạy trên thiết bị đeo tay. Việc đặc tả được thực hiện thông qua mô hình hóa. Các mô hình này có sự ánh xạ thống nhất. Sự thống nhất này rất quan trọng. Nó đảm bảo tính toàn vẹn của hệ thống. Nó giúp tránh sai sót tiềm ẩn. Các mô hình này được chuyển đổi thành mã nguồn. Ngôn ngữ lập trình C++ là ngôn ngữ đích. Mã nguồn có thể chạy trên bo mạch Arduino. Đây là một ví dụ về ngôn ngữ miền cụ thể (DSL) thiết bị đeo. DSL giúp mô tả các khía cạnh cụ thể của thiết bị. Nó không cần đi sâu vào chi tiết kỹ thuật phức tạp. Khung thức này đơn giản hóa quá trình phát triển. Nó cho phép các nhà phát triển tập trung. Họ tập trung vào logic nghiệp vụ chính. Họ không cần lo lắng về mã nhúng cấp thấp.

III. Công cụ Micraspis Mô hình hóa và tập luật IoT

Dựa trên khung thức đã đề xuất, một công cụ mới được xây dựng. Công cụ này có tên là Micraspis. Micraspis là một công cụ phát sinh mã tự động IoT. Nó chuyên biệt cho các ứng dụng thiết bị đeo tay. Công cụ này sử dụng mô hình hóa thiết bị đeo taytập luật logic thiết bị IoT. Nó giúp xây dựng các ứng dụng thông minh một cách hiệu quả. Micraspis cho phép đặc tả kiến trúc. Đặc tả này bao gồm cả phần cứng và ứng dụng. Việc đặc tả được thực hiện thông qua mô hình. Các mô hình này có sự ánh xạ thống nhất. Điều này đảm bảo tính nhất quán của hệ thống. Công cụ chuyển đổi các mô hình thành mã nguồn C++. Mã nguồn này tương thích với các bo mạch Arduino. Micraspis đã được thử nghiệm khoa học và khách quan. Nó chứng minh hiệu quả và độ tin cậy. Hơn 65% mã nguồn hoàn thiện được tạo ra tự động. Đây là một tỷ lệ đáng kể. Micraspis hỗ trợ các hệ thống từ đơn giản đến phức tạp. Nó đại diện cho một bước tiến quan trọng. Nó trong tự động hóa phát triển phần mềm nhúng.

3.1. Chức năng chính và cơ chế hoạt động

Micraspis có chức năng chính là sinh mã nguồn. Nó dựa vào mô hình hóa và tập luật logic. Công cụ này đặc tả kiến trúc phần cứng. Nó cũng đặc tả ứng dụng trên thiết bị đeo tay. Tất cả đều được thực hiện thông qua các mô hình. Các mô hình này có mối liên hệ chặt chẽ với nhau. Cơ chế hoạt động của Micraspis dựa trên nguyên tắc chuyển đổi mô hình. Mô hình trừu tượng được biến thành mã nguồn cụ thể. Ngôn ngữ lập trình C++ là đích đến cuối cùng. Mã nguồn này có thể chạy trên bo mạch Arduino. Micraspis giảm thiểu đáng kể công sức lập trình. Nó tăng tốc độ phát triển ứng dụng. Nó là một ví dụ điển hình về kỹ thuật hướng mô hình (MDE) cho IoT. MDE giúp tự động hóa nhiều bước trong quá trình. Từ thiết kế ban đầu đến triển khai cuối cùng. Nó đảm bảo chất lượng mã nguồn tạo ra.

3.2. Hỗ trợ đặc tả với ngôn ngữ miền cụ thể

Micraspis hỗ trợ đặc tả ứng dụng. Nó sử dụng các mô hình ngôn ngữ chuyên biệt. Đây là một dạng của ngôn ngữ miền cụ thể (DSL) thiết bị đeo. DSL giúp định nghĩa rõ ràng. Nó xác định các thành phần của thiết bị. Nó xác định các tương tác của ứng dụng. Điều này làm cho việc đặc tả trở nên dễ dàng hơn. Nó dễ hiểu hơn cho các nhà phát triển. Họ không cần kiến thức quá sâu về lập trình nhúng. Công cụ cung cấp một giao diện trừu tượng. Giao diện này cho phép tập trung vào logic nghiệp vụ. Logic nghiệp vụ của giải pháp thông minh là ưu tiên. Điều này tối ưu hóa quá trình thiết kế. Nó đảm bảo tính chính xác của mô hình. Mô hình sau đó được chuyển đổi hiệu quả. Mã nguồn tạo ra phù hợp với kiến trúc phần mềm thiết bị đeo thông minh.

IV. Kiểm chứng hiệu quả sinh mã tự động IoT cho thiết bị đeo

Việc kiểm chứng tính hiệu quả là vô cùng quan trọng. Công cụ Micraspis đã được thử nghiệm khoa học. Mục tiêu là minh chứng công cụ đạt các tiêu chí đề ra. Các tiêu chí này được đánh giá một cách khách quan. Kết quả thử nghiệm đã thể hiện rõ ràng. Hơn 65% mã nguồn hoàn thiện được tạo ra tự động. Điều này áp dụng cho các hệ thống ứng dụng. Từ các thiết bị đeo đơn giản đến phức tạp. Đây là một tỷ lệ rất đáng kể. Nó chứng minh khả năng vượt trội của công cụ. Khả năng phát sinh mã tự động IoT đã được hiện thực hóa. Bên cạnh đó, các phương pháp kiểm chứng khác cũng được thực hiện. Phỏng vấn người dùng là một trong số đó. Mục đích là thu thập đánh giá từ chuyên gia. Cả từ những lập trình viên chưa có kinh nghiệm. Chất lượng phần mềm cũng được đánh giá kỹ lưỡng. Công cụ chứng tỏ sự hỗ trợ lớn. Nó dành cho lập trình viên trong việc phát triển ứng dụng. Điều này khẳng định giá trị của tự động hóa phát triển phần mềm nhúng.

4.1. Đánh giá định lượng và định tính công cụ Micraspis

Quá trình đánh giá được thực hiện theo hai hướng chính. Đó là định lượng và định tính. Về mặt định lượng: hơn 65% mã nguồn được sinh tự động. Con số này rất cao. Nó chứng minh hiệu quả vượt trội. Nó giảm đáng kể thời gian phát triển. Nó giảm công sức viết mã thủ công. Về mặt định tính: phỏng vấn người dùng. Cả chuyên gia và lập trình viên đều đánh giá cao. Họ ghi nhận Micraspis hỗ trợ rất tốt. Hỗ trợ phát triển ứng dụng cho thiết bị đeo tay. Đặc biệt trong các giải pháp IoT thông minh. Các câu hỏi tập trung vào cách Micraspis hỗ trợ lập trình viên. Hỗ trợ này giúp họ dễ dàng hơn. Dễ dàng hơn với việc tạo các ứng dụng phức tạp. Nó cải thiện trải nghiệm người dùng đáng kể. Nó là minh chứng cho sự thành công của thiết kế hệ thống IoT dựa trên công cụ.

4.2. Xác thực tính đúng đắn của mô hình đặc tả

Để đảm bảo tính đúng đắn tuyệt đối. Đặc biệt của mô hình đặc tả là cần thiết. Ngôn ngữ Alloy đã được sử dụng. Alloy là một ngôn ngữ mô hình hóa chính thức. Nó giúp kiểm tra tính nhất quán. Nó kiểm tra tính logic của các mô hình. Đồng thời, một thuật toán cũng được xây dựng. Thuật toán này nhằm nâng cao chất lượng. Chất lượng của mã nguồn được tạo ra tự động. Việc sử dụng Alloy tăng cường độ tin cậy. Nó đảm bảo các mô hình hoạt động như mong muốn. Điều này quan trọng cho các hệ thống dựa trên luật cho IoT. Các luật này phải được tuân thủ nghiêm ngặt. Việc xác thực này là một bước thiết yếu. Nó giúp loại bỏ các lỗi tiềm ẩn. Lỗi từ giai đoạn thiết kế mô hình. Nó đảm bảo kiến trúc phần mềm thiết bị đeo thông minh vững chắc và đáng tin cậy.

V. Kỹ thuật MDE cho IoT đeo tay Đóng góp chính

Luận án này mang lại nhiều đóng góp quan trọng. Đặc biệt trong lĩnh vực kỹ thuật hướng mô hình (MDE) cho IoT. Một hướng tiếp cận mới đã được đề xuất. Hướng tiếp cận này sinh mã nguồn cho các ứng dụng. Nó hoạt động trong một ngữ cảnh hẹp cụ thể. Nó kết hợp hiệu quả mô hình hóa và tập luật. Đây là một sự đổi mới đáng kể. Nó giải quyết vấn đề phức tạp. Vấn đề của phát triển phần mềm nhúng. Đặc biệt cho thiết bị đeo tay IoT. Khung thức sinh mã cũng được giới thiệu. Nó dành cho các ứng dụng thông minh. Các ứng dụng này chạy trên thiết bị đeo tay. Thuộc lĩnh vực Internet vạn vật. Luận án tập trung vào hai phương pháp chính. Thứ nhất là sử dụng mô hình hóa. Thứ hai là áp dụng tập luật cho các ràng buộc. Những đóng góp này thúc đẩy lập trình nhúng tự động. Chúng mở ra tiềm năng mới. Tiềm năng cho phát triển nhanh chóng. Phát triển ứng dụng IoT đeo tay hiệu quả hơn.

5.1. Đề xuất hướng tiếp cận sinh mã nguồn kết hợp

Luận án đề xuất một hướng tiếp cận độc đáo. Nó kết hợp mô hình hóa và tập luật. Hướng tiếp cận này được thiết kế đặc biệt. Nó dành cho việc sinh mã nguồn. Nó áp dụng cho các ứng dụng trong ngữ cảnh hẹp. Sự kết hợp này là điểm mạnh cốt lõi. Nó tận dụng ưu điểm của cả hai phương pháp. Mô hình hóa giúp trừu tượng hóa. Nó đơn giản hóa quá trình thiết kế. Tập luật giúp xử lý ràng buộc phức tạp. Nó đảm bảo tính đúng đắn. Nó đảm bảo tính nhất quán của hệ thống. Đây là một cách tiếp cận toàn diện. Nó giải quyết nhiều vấn đề tồn tại. Vấn đề từ đặc tả yêu cầu đến triển khai. Nó rất phù hợp cho thiết kế hệ thống IoT phức tạp. Đặc biệt là với các yêu cầu đặc thù của thiết bị đeo. Nó cung cấp sự linh hoạt cao. Nó vẫn duy trì độ chính xác cần thiết.

5.2. Xây dựng khung thức và công cụ Micraspis

Dựa vào hướng tiếp cận đã đề xuất. Một khung thức sinh mã được xây dựng. Khung thức này là nền tảng vững chắc. Nó cho phép phát triển ứng dụng. Đặc biệt là cho thiết bị đeo tay thông minh. Công cụ Micraspis ra đời từ khung thức này. Micraspis là một công cụ sinh mã nguồn. Nó chuyên dụng cho các ứng dụng trên thiết bị đeo tay. Công cụ này là minh chứng rõ ràng. Nó chứng minh tính khả thi của khung thức. Nó thể hiện hiệu quả của phương pháp. Micraspis giúp tự động hóa toàn bộ quá trình. Quá trình phát triển phần mềm nhúng. Nó giảm thiểu lỗi thủ công đáng kể. Nó tăng tốc độ đưa sản phẩm ra thị trường. Đồng thời, luận án cũng đề xuất. Một phương án đánh giá khách quan và tin cậy. Nó đảm bảo tính đúng đắn và hiệu quả của công cụ. Điều này củng cố giá trị của phát sinh mã tự động IoT.

5.3. Tối ưu hóa chất lượng mã nguồn với Alloy

Chất lượng mã nguồn là yếu tố then chốt. Luận án đã sử dụng ngôn ngữ Alloy. Mục đích là để kiểm chứng. Kiểm chứng tính đúng đắn của mô hình đặc tả. Alloy là một công cụ mô hình hóa mạnh mẽ. Nó kiểm tra tính nhất quán. Nó phát hiện các mâu thuẫn trong mô hình. Ngoài ra, một thuật toán đã được xây dựng. Thuật toán này nhằm nâng cao chất lượng. Chất lượng của mã nguồn được tạo ra. Việc này giúp đảm bảo mã nguồn cuối cùng. Mã nguồn không chỉ hoạt động đúng. Nó còn hiệu quả và đáng tin cậy. Điều này đặc biệt quan trọng cho kiến trúc phần mềm thiết bị đeo thông minh. Một kiến trúc phải bền vững. Nó phải hoạt động ổn định trong mọi điều kiện. Việc tối ưu hóa này là bước cuối cùng. Nó đảm bảo sản phẩm đạt chất lượng cao nhất.

Mục lục chi tiết luận án

LỜI CAM ĐOAN
TÓM TẮT LUẬN ÁN
ABSTRACT
LỜI CÁM ƠN
DANH MỤC CÁC HÌNH ẢNH
DANH MỤC CÁC BẢNG BIỂU
TỪ ĐIỂN THUẬT NGỮ
1. CHƯƠNG 1: GIỚI THIỆU BÀI TOÁN
1.1. Bối cảnh nghiên cứu
1.1.1. Vấn đề sinh mã nguồn trên các thiết bị đeo tay
1.1.2. Bài toán sinh mã nguồn cho các ứng dụng chạy trên các thiết bị đeo tay trong lĩnh vực Internet vạn vật
1.1.3. Phát biểu vấn đề
1.1.4. Mục tiêu nghiên cứu
1.1.5. Câu hỏi nghiên cứu
1.1.6. Những đóng góp chính của nghiên cứu
1.1.7. Tầm quan trọng của nghiên cứu
1.1.8. Giới hạn của nghiên cứu
1.1.9. Bố cục của luận án
2. CHƯƠNG 2: TÌNH HÌNH NGHIÊN CỨU VÀ KIẾN THỨC NỀN TẢNG
2.1. Tình hình nghiên cứu
2.1.1. Ngôn ngữ chuyên biệt hóa trong ngữ cảnh hẹp
2.1.2. Ngôn ngữ chuyên biệt hóa trong lĩnh vực Internet vạn vật
2.1.3. Những ứng dụng trên thiết bị đeo tay (IoWT) trong các giải pháp thông minh
2.1.4. Những thách thức trong bài toán sinh mã nguồn cho thiết bị đeo tay
2.2. Kiến thức nền tảng
2.2.1. Phát triển phần mềm theo kỹ thuật dựa trên mô hình (MDE)
2.2.2. Sinh mã nguồn dựa theo hướng phát triển mô hình MDD
2.2.3. Sinh mã nguồn dựa theo kiến trúc hướng mô hình MDA
2.2.4. Sinh mã nguồn dựa vào đặc tả theo ngữ nghĩa
2.3. Tổng kết chương
3. CHƯƠNG 3: KHUNG THỨC TỔNG QUÁT XÂY DỰNG NGÔN NGỮ CHUYÊN BIỆT HÓA TRONG NGỮ CẢNH HẸP CHO LĨNH VỰC INTERNET VẠN VẬT
3.1. Cơ sở cho cách tiếp cận xây dựng khung thức cho bài toán sinh mã nguồn theo hướng mô hình
3.2. Các khung thức sinh mã nguồn theo hướng mô hình
3.3. Khung thức đề xuất
3.4. Cơ chế sinh mã của khung thức tổng quát
3.5. Tổng kết chương
4. CHƯƠNG 4: CÔNG CỤ SINH MÃ NGUỒN CHO CÁC ỨNG DỤNG CHẠY TRÊN THIẾT BỊ ĐEO TAY MICRASPIS
4.1. Thư viện EMF và GEF
4.2. Ví dụ minh họa
4.3. Kiến trúc tổng quát
4.4. Tầng thiết kế phần cứng và đặc tả ứng dụng
4.4.1. Thiết kế phần cứng
4.4.2. Thiết kế ứng dụng
4.5. Tầng kiểm tra cú pháp và ràng buộc dựa trên tập luật
4.5.1. Sub-phase 1: Kiểm tra ràng buộc
4.5.2. Sub-phase 2: Kiểm tra cú pháp
4.6. Sinh mã nguồn cho chương trình
4.6.1. Sinh mã nguồn theo đặc tả cụ thể
4.6.2. Sinh mã nguồn theo đặc tả trừu tượng
4.6.3. Sinh mã theo khai báo trực quan
4.7. So sánh kết quả
4.8. Tổng kết chương
5. CHƯƠNG 5: TỔ CHỨC THỬ NGHIỆM VÀ ĐÁNH GIÁ
5.1. Tổ chức thử nghiệm
5.1.1. Triển khai Micraspis trong các trường học
5.1.2. Triển khai Micraspis trong môi trường công nghiệp
5.1.3. Tỷ lệ độ hài lòng với công cụ Micraspis
5.1.4. Tỷ lệ mã nguồn tạo ra tự động với công cụ Micraspis
5.1.5. Chất lượng mã nguồn tạo ra từ công cụ Micraspis
5.2. Tổng kết chương
6. CHƯƠNG 6: MÔ HÌNH HÓA ĐẶC TẢ NGHIỆP VỤ CÁC GIẢI PHÁP THÔNG MINH BẰNG NGÔN NGỮ ALLOY
6.2. Dùng Alloy kiểm soát các đối tượng trong ứng dụng chạy trên thiết bị đeo tay
6.2.1. Ví dụ minh họa
6.2.2. Mô hình đề xuất
6.2.3. Giải thuật kiểm soát đối tượng thông qua các tập luật
6.2.4. Kết quả thực nghiệm
6.3. Tổng kết chương
7. CHƯƠNG 7: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
7.2. Hướng phát triển
7.2.1. Mở rộng nền tảng Web
7.2.2. Mở rộng các thành phần phần cứng
7.2.3. Mở rộng phạm vi sinh mã nguồn
7.2.4. Một số hướng nghiên cứu mở rộng khác
DANH MỤC CÁC CÔNG TRÌNH ĐÃ CÔNG BỐ
CÁC ĐỀ TÀI ĐÃ HOÀN TẤT
Tài liệu tham khảo
A Danh sách các Case-study
Xem trước tài liệu
Tải đầy đủ để xem toàn bộ nội dung
Sinh mã nguồn cho các thiết bị đeo tay trong các giải pháp thông minh trên nền tảng internet vạn vật bằng mô hình hóa và tập luật

Tải xuống file đầy đủ để xem toàn bộ nội dung

Tải đầy đủ (178 trang)

Trích đoạn nội dung luận án

Tải xuống để đọc toàn bộ

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA TÔN LONG PHƯỚC SINH MÃ NGUỒN CHO CÁC THIẾT BỊ ĐEO TAY TRONG CÁC GIẢI PHÁP THÔNG MINH TRÊN NỀN TẢNG INTERNET VẠN VẬT BẰNG MÔ HÌNH HÓA VÀ TẬP LUẬT LUẬN ÁN TIẾN SĨ TP. H CHÍ MINH - N M 2022 IăH CăQU CăGIA TP. HCM TR NGă IăH CăBÁCHăKHOA TÔN LONG PH C SINH MÃ NGU N CHO CÁC THI T B EO TAY TRONG CÁC GI I PHÁP THÔNG MINH TRÊN N N T NG INTERNET V N V T B NG MÔ HÌNH HÓA VÀ T P LU T Chuyên ngành: Khoaăh cămáyătính Mưăs ăchuyênăngƠnh: 62.01 Ph năbi năđ căl p: PGS. Nguy n Thái Nghe Ph năbi năđ căl p: TS.ă oàn Duy Ph năbi n:ă PGS.ă ng Tr n Khánh Ph năbi n:ă PGS.ăTr n Minh Quang Ph năbi n:ă TS.

Lê Kim Hùng NG I H NGăD N: 1. PH M HOÀNG ANH i LỜI CAM ĐOAN Tác giả xin cam đoan đây là công trình nghiên cứu của bản thân tác giả. Các kết quả nghiên cứu và các kết luận trong luận án này là trung thực, và không sao chép từ bất kỳ một nguồn nào và dưới bất kỳ hình thức nào. Việc tham khảo các nguồn tài liệu (nếu có) đã được thực hiện trích dẫn và ghi nguồn tài liệu tham khảo đúng quy định.

Tác giả luận án Tôn Long Phước ii TÓM TẮT LUẬN ÁN Các thiết bị đeo tay trong lĩnh vực Internet vạn vật là những thiết bị nhỏ gọn, kiến trúc đơn giản và thường giao tiếp với nhau theo hướng truyền tải dữ liệu nhằm hỗ trợ các giải pháp thông minh. Những giải pháp này có thể được triển khai trong nhiều lĩnh vực như hệ thống hỗ trợ chữa cháy, nhà hàng thức ăn nhanh hay trong lĩnh vực điều trị y tế. Hiện nay, với sự gia tăng các thiết bị số nhỏ gọn được xem là các thiết bị đeo tay trong kỷ nguyên số, nhu cầu phát triển các ứng dụng chạy trên các thiết bị này cũng ngày càng phát triển. Từ đó, các nhà phát triển ứng dụng phần mềm cho các thiết bị này cần có những công cụ hỗ trợ phát triển các ứng dụng một cách nhanh chóng và hiệu quả.

Hiện các nghiên cứu trong học thuật cũng như trong công nghiệp đều rất quan tâm đến các công cụ phát triển ứng dụng tự động, hoặc bán tự động nhưng lĩnh vực hỗ trợ phát triển ứng dụng cho các thiết bị đeo tay vẫn còn bỏ ngỏ. Từ đó, chúng tôi đề xuất một khung thức hỗ trợ xây dựng ứng dụng chạy trên các thiết bị đeo tay một cách nhanh chóng và hiệu quả. Từ khung thức này, chúng tôi xây dựng một công cụ có tên là Micraspis, cho phép sinh mã các ứng dụng dựa vào mô hình hóa và tập luật. Công cụ này cho phép đặc tả kiến trúc phần cứng và ứng dụng chạy trên phép thiết bị đeo tay bằng mô hình hóa, đồng thời có sự ánh xạ thống nhất giữa hai mô hình đặc tả này.

Công cụ hoạt động dựa vào nguyên tắc chuyển đổi mô hình sang mã nguồn (ngôn ngữ lập trình C++) có thể chạy các ứng dụng trên các bo mạch dòng Arduino. Chúng tôi cũng đã thử nghiệm một cách khoa học và khách quan nhằm minh chứng công cụ Micarspis đạt được các tiêu chí đề ra. Kết quả thử nghiệm thể hiện như sau: hơn 65% mã nguồn hoàn thiện được tạo ra tự động từ công cụ Micraspis cho các hệ thống ứng dụng trên các thiết bị đeo đơn giản đến phức tạp. Bên cạnh đó, chúng tôi cũng thực hiện các phương pháp kiểm chứng khác như phỏng vấn người dùng nhằm thu thập đánh giá từ chuyên gia đến những lập trình viên chưa kinh nghiệm hay chất lượng phần mềm.

Nội dung phỏng vấn chúng tôi tập trung việc đánh giá về cách công cụ Micraspis đã hỗ trợ cho lập trình viên trong việc phát triển các ứng dụng chạy trên thiết bị đeo tay trong các giải pháp thông minh thuộc lĩnh vực Internet vạn vật như thế nào. Ngoài ra, để kiểm chứng tính đúng đắn của mô hình đặc tả, chúng tôi cũng dùng ngôn ngữ Alloy và xây dựng thuật toán nhằm nâng cao chất lượng mã nguồn tạo ra. Các đóng góp chính của luận án được tóm tắt như sau: 1. Đề xuất hướng tiếp cận sinh mã nguồn cho các ứng dụng trong ngữ cảnh hẹp với sự kết hợp mô hình hóa và tập luật.

Đề xuất khung thức sinh mã cho các ứng dụng chạy trên thiết bị đeo tay trong giải pháp thông minh thuộc lĩnh vực Internet vạn vật. Luận án tập trung vào vấn đề sinh mã nguồn cho các ứng dụng với hai hướng tiếp cận: (i) sử dụng mô hình hóa; (ii) sử dụng các tập luật cho các ràng buộc trong ứng dụng. Dựa vào khung thức đề xuất, xây dựng công cụ sinh mã nguồn có tên gọi là Micraspis nhằm sinh mã nguồn cho các ứng dụng chạy trên thiết bị đeo tay trong các giải pháp thông minh. Đồng thời, luận án đề xuất phương án đánh giá công cụ về tính đúng đắn, hiệu quả một cách khách quan và tin cậy.

Keywords: Sinh mã nguồn, mô hình hóa, ứng dụng trong IoT, thiết bị đeo tay, Internet vạn vật, ngôn ngữ chuyên biệt trong ngữ cảnh hẹp, giải pháp thông minh, Alloy, đặc tả ứng dụng, mô hình máy trạng thái. iii ABSTRACT A wearable is a lightweight body-worn device that relies on data-driven communications to keep people connected purposefully, for instance, for fire-fighting, prompting fast-food clients, and medical treatment. With rise of wearable computing in the era of IoT-driven smart appli- cations, programmers now expect the time to market for these devices to be shortened. While support for IoT programming in general has gathered traction, tool proposals that automate the development of smart solutions based on the Internet of Wearable Things, though of paramount importance, still stay on the sidelines.

We propose a code generation tool called Micraspis that allows a wearable to be described both functionally and architecturally - as if they are two sides of the same coin. The tool has an underlying model-to-code transformation mechanism to gen- erates source code that is executable on a specific IoT programming platform such as Arduino. Our experiments demonstrate that programming code generated by Micraspis amounts to at least 65% of the source code needed to fulfill the business logic of ordinary wearable devices. We conduct an interview to meticulously collect programmers’ assessment on how Micraspis assists them in programming and architecting smart IoT wearables.

A total of 161 program- mers responded to a Likert scale questionnaire, with which at least 65% of them either agree or strongly agree. Overall, the results show that Micraspis has promising applicability in supporting IoWT-enabled smart solutions. The main contributions of the thesis are summarized as follows. Propose a source code generation approach for applications by a combination of model- driven and rule-based development.

Generating source code for applications in software engi- neering has always been a concern of software developers in the field. The challenge of properly defining application domains as well as specifying applications is always a difficult question for source code generation. Propose a code generation framework for smart IoT wearable applications in software- intensive systems. The thesis focuses on the problem of generating source code for applications with two approaches: (i) using modeling; (ii) using rule sets for constraints in the application.

Based on the proposed framework, build a tool called Micraspis to generate source code for applications running on smart IoT wearables. At the same time, the thesis proposes a method to evaluate the tool for correctness and effectiveness in an objective and reliable manner. Keywords: code generation, modeling, IoT application, wearable, Internet of Things, domain specific lan- guage, smart solution, Alloy, application specification, state machine. iv LỜI CÁM ƠN Tôi xin trân trọng cám ơn sự hướng dẫn tận tình của TS.

Lê Lam Sơn và TS. Phạm Hoàng Anh trong suốt quá trình học tập nghiên cứu sinh của tôi. Đặc biệt cám ơn TS. Lê Lam Sơn đã hướng dẫn tôi xuyên suốt trong qua trình học tập và nghiên cứu.

Tôi rất biết ơn về sự hướng dẫn, truyền đạt và động viên của Thầy. Đồng thời tôi xin gửi lời cảm ơn chân thành đến bộ môn Công nghệ phần mềm, khoa Khoa Học và Kỹ Thuật Máy Tính, phòng Đào Tạo Sau Đại Học trường Đại Học Bách Khoa – Đại Học Quốc Gia thành phố Hồ Chí Minh đã tạo điều kiện cho tôi trong suốt thời gian học tập và nghiên cứu. Tôi cũng xin chân thành cám ơn đến quý Thầy Cô và các Nhà khoa học phản biện, đã nhiệt tình hỗ trợ và đóng góp ý kiến cho việc hoàn thiện luận án tiến sĩ này. Tôi cũng xin gửi lời cảm ơn chân thành đến các thành viên gia đình của tôi đã đồng hành với tôi trong suốt quá trình học tập, nghiên cứu và hoàn thành luận án này.

Tôi cũng xin chân thành cám ơn các đồng nghiệp của tôi, các thành viên trong ESP-Lab đã hỗ trợ, động viên và chia sẻ giúp tôi an tâm để học tập và nghiên cứu trong thời gian qua. Một lần nữa xin chân thành cám ơn. v Mục lục DANH MỤC CÁC HÌNH ẢNH ix DANH MỤC CÁC BẢNG BIỂU xi TỪ ĐIỂN THUẬT NGỮ xii 1 GIỚI THIỆU BÀI TOÁN 1 1.1 Bối cảnh nghiên cứu .1 Vấn đề sinh mã nguồn trên các thiết bị đeo tay .2 Bài toán sinh mã nguồn cho các ứng dụng chạy trên các thiết bị đeo tay trong lĩnh vực Internet vạn vật .2 Phát biểu vấn đề .3 Mục tiêu nghiên cứu .4 Câu hỏi nghiên cứu .5 Những đóng góp chính của nghiên cứu .6 Tầm quan trọng của nghiên cứu .7 Giới hạn của nghiên cứu .8 Bố cục của luận án. 12 2 TÌNH HÌNH NGHIÊN CỨU VÀ KIẾN THỨC NỀN TẢNG 15 2.1 Tình hình nghiên cứu .1 Ngôn ngữ chuyên biệt hóa trong ngữ cảnh hẹp .2 Ngôn ngữ chuyên biệt hóa trong lĩnh vực Internet vạn vật .3 Những ứng dụng trên thiết bị đeo tay (IoWT) trong các giải pháp thông minh .4 Những thách thức trong bài toán sinh mã nguồn cho thiết bị đeo tay .2 Kiến thức nền tảng .1 Phát triển phần mềm theo kỹ thuật dựa trên mô hình (MDE) .2 Sinh mã nguồn dựa theo hướng phát triển mô hình MDD .3 Sinh mã nguồn dựa theo kiến trúc hướng mô hình MDA .4 Sinh mã nguồn dựa vào đặc tả theo ngữ nghĩa .3 Tổng kết chương.

26 3 KHUNG THỨC TỔNG QUÁT XÂY DỰNG NGÔN NGỮ CHUYÊN BIỆT HÓA TRONG NGỮ CẢNH HẸP CHO LĨNH VỰC INTERNET VẠN VẬT 27 3.1 Cơ sở cho cách tiếp cận xây dựng khung thức cho bài toán sinh mã nguồn theo hướng mô hình .2 Các khung thức sinh mã nguồn theo hướng mô hình .3 Khung thức đề xuất .4 Cơ chế sinh mã của khung thức tổng quát .5 Tổng kết chương. 43 4 CÔNG CỤ SINH MÃ NGUỒN CHO CÁC ỨNG DỤNG CHẠY TRÊN THIẾT BỊ ĐEO TAY MICRASPIS 45 4.1 Thư viện EMF và GEF .2 Ví dụ minh họa .2 Kiến trúc tổng quát .

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Trích dẫn luận án này

Tôn Long Phước (2022). Sinh mã nguồn thiết bị đeo tay IoT bằng mô hình hóa và tập luật [Luận án tiến sĩ, Trường Đại học Bách Khoa - Đại học Quốc gia Thành phố Hồ Chí Minh]. LuanAn.net. https://luanan.net/cong-nghe-thong-tin/he-thong-thong-tin/sinh-ma-nguon-thiet-bi-deo-tay-iot-bang-mo-hinh-hoa-va-tap-luat

Câu hỏi thường gặp

Luận án "Sinh mã nguồn thiết bị đeo tay IoT bằng mô hình hóa và tập luật" nghiên cứu về vấn đề gì?

Tìm hiểu cách sinh mã nguồn tự động cho thiết bị đeo tay IoT bằng mô hình hóa và tập luật. Phương pháp tối ưu hiệu suất và giảm chi phí phát triển.

Luận án "Sinh mã nguồn thiết bị đeo tay IoT bằng mô hình hóa và tập luật" được bảo vệ tại trường nào?

Luận án này được bảo vệ tại Trường Đại học Bách Khoa - Đại học Quốc gia Thành phố Hồ Chí Minh. Năm bảo vệ: 2022.

Luận án "Sinh mã nguồn thiết bị đeo tay IoT bằng mô hình hóa và tập luật" thuộc chuyên ngành gì?

Luận án "Sinh mã nguồn thiết bị đeo tay IoT bằng mô hình hóa và tập luật" thuộc chuyên ngành Khoa học máy tính. Danh mục: Hệ Thống Thông Tin.

Luận án "Sinh mã nguồn thiết bị đeo tay IoT bằng mô hình hóa và tập luật" có bao nhiêu trang?

Luận án "Sinh mã nguồn thiết bị đeo tay IoT bằng mô hình hóa và tập luật" có 178 trang. Bạn có thể xem trước một phần tài liệu ngay trên trang web trước khi tải về.

Cách tải luận án "Sinh mã nguồn thiết bị đeo tay IoT bằng mô hình hóa và tập luật" về máy như thế nào?

Để tải luận án về máy, bạn nhấn nút "Tải xuống ngay" trên trang này, sau đó hoàn tất thanh toán phí lưu trữ. File sẽ được tải xuống ngay sau khi thanh toán thành công. Hỗ trợ qua Zalo: 0559 297 239.

Luận án liên quan

Chia sẻ tài liệu: Facebook Twitter