Nghiên Cứu Xây Dựng Hệ Thống Giao Diện Người Dùng Theo Hướng Tiếp Cận Mô...
description
Transcript of Nghiên Cứu Xây Dựng Hệ Thống Giao Diện Người Dùng Theo Hướng Tiếp Cận Mô...
© 2010 DH KHTN. 1
Nghiên Cứu Xây DựngHệ Thống Giao Diện Người
DùngTheo Hướng Tiếp Cận Mô
HìnhHọc viên Cao Học: Bùi Tấn LộcCán bộ hướng dẫn: TS. Trần Hạnh Nhi
© 2010 DH KHTN. 2
Sự phụ thuộc của ứng dụng vào platform
•Loại SDK•Phiên bản SDK
•API cộng thêm của nhà sản xuất thiết bị
•…
SDK•Loại OS•Phiên bản OS
•…OS
•Kích thước màn hình
•Có/không có cảm ứng
•Bàn phím•…
Hardware
© 2010 DH KHTN. 3
Nhu cầu của người phát triển ứng dụng
Skype trên AndroidSkype trên J2ME
Skype trên Windows Mobile
Vấn đề
Sự phụ thuộc của ứng dụng vào platform
Giảm chi phí cho việcphát triển cùng một ứng
dụngtrên những platform
khác nhau
© 2010 DH KHTN. 4
Nhánh nghiên cứu MUID
• MUID – Multiple User Interface Development [2]
STT Các nghiên cứu Năm công bố
Còn nghiên cứu
Ghi chú
1 CAMELEONE Reference Framework [13], [18]
2001 Dựa trên hướng tiếp cận MBUID [13] và MDD [5].Kết quả chưa hoàn chỉnh.
2 TERESA XML [1] 2005
3 UsiXML [4] 2005
4 MANTRA [16] 2006 (Chưa tìm được thông tin sau 2007)
5 ….
Ứng dụng
Mã nguồn 1 Platform 1
… …
Mã nguồn n Platform n
• Cùng ứng dụng
• Nhiều mã nguồn
• Nhiều platform
© 2010 DH KHTN. 5
Liệu có thể áp dụng các công trình nghiên cứu hiện tại về
MUID để phát triển ứng dụng form trên platform di động?
Nội dung và mục tiêu nghiên cứu
Trả lời câu hỏi nghiên cứu
Xây dựng DGUIMSE
Form
MDD,MBUID
.NET CF,Android
Câu hỏi nghiên
cứu
2.Giới hạn nghiên
cứu
1.Nội dung tìm hiểu, nghiên
cứu
3.Mục tiêu nghiên
cứu
• DGUIMSE – Dynamically Generating User Interface for Mobile System Environment
© 2010 DH KHTN. 6
Các nghiên cứu hiện tại về MUID theo hướng tiếp cập MDD và MBUIDSTT Nghiên cứu Bài toán giao
diện
Ngôn ngữ phát sinh Công cụ Ghi chú
1 Tổng quát N/A N/A N/A Còn nghiên cứu
2 CAMELEON
Reference
Framework
Web, Form Còn nghiên cứu Chưa công bố Các mô hình chưa đủ.
Còn nghiên cứu
3 TERESA
XML
Web XHTML,
VoiceXML, X+V,
SVG, Xlet
Đã công bố Còn nghiên cứu
4 UsiXML Form, Web HTML, Java, C++ Công bố một
phần
Các mô hình chưa đủ.
Còn nghiên cứu
5 MANTRA Form, Web ASP.NET, C#,
VB.NET
Chưa công bố Các mô hình chưa đủ.
Không tìm thấy thông tin
sau 2007
Liệu có thể áp dụng các công trình nghiên cứu hiện tại về
MUID để phát triển ứng dụng form trên platform di động?
Câu hỏi nghiên
cứu
Các công trình nghiên cứu hiện tại chưa giải quyết trọn vẹn bài toán
phát triển ứng dụng form trên platform di động
© 2010 DH KHTN. 7
Đề xuất phương pháp luận DGUIMS
Transformation model
Sử dụng cách phân loại trong MANTRA
AAUI, CUI metamodel
Transformation
metamodel
Áp dụng kiến trúc MDA
Áp dụng MDA View Point
Luật chuyển đổi m2m, m2t
Các model trong DGUIMS
Các metamodelKiến trúc MDA trong DGUIMS
MDA View Point trong DGUIMS
Phân loại mô hình
Môi trư
ờn
g p
hát triể
n D
GU
IMSE
AAUI, CUI model
© 2010 DH KHTN. 8
Các chức năng trong DGUIMSE
© 2010 DH KHTN. 9
Xây dựng DGUIMSE
© 2010 DH KHTN. 10
Một phần AAUI metamodel
AAUI metamodel, AAUI model
Một phần AAUI model
© 2010 DH KHTN. 11
Một phần CUI metamodel
CUI metamodel, CUI model
Một phần CUI model
Một phần FUI model
© 2010 DH KHTN. 12
Transformation metamodel, Transformation model
Một phần Transformation model Một phần Transformation metamodel
© 2010 DH KHTN. 13
Luật chuyển đổi ATL m2m
rule SingleChoice2ComboBox{ from src: adaptedaui2cf35cui!SingleChoice( src.implementation = #ComboBox ) to dest: cfcui!ComboBox( name <- src.name, text <- src.name )}
Transformation model
CUI model
© 2010 DH KHTN. 14
Luật chuyển đổi Acceleo m2t
namespace [p.name.toUpperFirst()/]{ partical class [f.name.toUpperFirst()/] { [for (c:PresentationComponent |f.components)] [if (oclIsKindOf(Button))] private System.Windows.Forms.Button [c.name.toLowerFirst()/]; [elseif (oclIsKindOf(ComboBox))] private System.Windows.Forms.ComboBox
[c.name.toLowerFirst()/]; [elseif (oclIsKindOf(DomainUpDown))] private System.Windows.Forms.DomainUpDown
[c.name.toLowerFirst()/]; [/if] [/for] }}
Các đối tượng và thuộc tính trong CUI model
© 2010 DH KHTN. 15
Kết luận – Lý thuyết
• Lý thuyết:• Quy trình DGUIMS tổng quát và rút gọn
• Kiến trúc hướng mô hình DGUIMS theo MDA và MBUID
• AAUI metamodel mô tả giao diện trừu tượng
• CUI metamodel mô tả giao diện cho .NET CF 3.5
• CUI metamodel mô tả giao diện cho Android 7
• Transformation metamodel cho việc chuyển đổi từ AAUI model sang CUI model trên .NET CF 3.5
• Transformation metamodel cho việc chuyển đổi từ AAUI model sang CUI model trên Android 7
© 2010 DH KHTN. 16
Kết luận – Ứng dụng
17
Kết luận – Cài đặt
Mô hình hóa AAUI, CUI
AAUI
CUI .NET CF
CUI Android
Mô hình hóa Transformation
Model
AAUI 2 CUI .NE
T CF
AAUI 2 CUI
Android
22 loại đối tượng
61 loại đối tượng
49 loại đối tượng
8 loại đối tượng
8 loại đối tượng
Engine AAUI 2 Transformation
Model
.NET CF
Android
Engine Transformation
Model 2 CUI
.NET CF
Android
12 luật
12 luật
39 luật
27 luật
Engine CUI 2 FUI
.NET CF
Android
Chuyển đổi 39 loại đối tượng
Chuyển đổi 27 loại đối tượng
© 2010 DH KHTN. 18
Kết luận – hạn chế & hướng phát triển
• Lý thuyết:• Định nghĩa thêm task metamodel, AUI metamodel,
application metamodel
• Định nghĩa thêm CUI metamodel cho các platform khác .NET CF, Android
• Ứng dụng:• Mã nguồn được phát sinh, phải chỉnh sửa thêm mới có thể
chạy được cần phải bổ sung thêm luật trong m2t.
• Chưa kiểm chứng nhiều trên các loại ứng dụng giao diện cần kiểm chứng nhiều để có thể bổ sung các đối tượng trong AAUI, CUI metamodel và bổ sung tập luật trong m2m.
© 2010 DH KHTN. 19
Cảm ơn quý Thầy/Cô đã quan tâm theo dõi!