310 likes | 799 Views
Đặc tả hình thức để sinh tự động prototype giao diện người dùng. Trình bày : Phạm Lê Sum GVHD : TS.Bùi Hoài Thắng. Nội dung. Giới thiệu vấn đề Giới thiệu đề tài Các nghiên cứu liên quan Giải pháp của luận văn để giải quyết vấn đề Kế hoạch làm việc Đặt câu hỏi. Giới thiệu vấn đề.
E N D
Đặctảhìnhthứcđểsinhtựđộng prototype giaodiệnngườidùng Trìnhbày: PhạmLê Sum GVHD: TS.BùiHoàiThắng
Nội dung Giớithiệuvấnđề Giớithiệuđềtài Cácnghiêncứuliênquan Giảiphápcủaluậnvănđểgiảiquyếtvấnđề Kếhoạchlàmviệc Đặtcâuhỏi
Giớithiệuvấnđề (tt) Vấnđềgặpphải Nhữngsailầmtrongcácgiaiđoạnđầucủa qui trìnhpháttriểnphầnmềmsẽgâyrahậuquảnghiêmtrọngvềchứcnăngvàgiaodiện.
Giớithiệuvấnđề (tt) Hướnggiảiquyết
Giớithiệuvấnđề (tt) • Giaodiệnngườidùng • Làmộtthànhphầnrấtquantrọngcủaphầnmềm. • Đượcxâydựngvàhoànthiệntrongsuốtquátrìnhpháttriểnhệthống • Prototype giaodiện • Lànhững minh họachogiaodiệnthựcsự • Dễdàngphátthảotronggiaiđoạnphântích
Giớithiệuvấnđề (tt) Vídụmột prototype giaodiện
Nội dung Giớithiệuvấnđề Giớithiệuđềtài Cácnghiêncứuliênquan Giảiphápcủaluậnvănđểgiảiquyếtvấnđề Kếhoạchlàmviệc Đặtcâuhỏi
Giớithiệuđềtài • Mụctiêu • Đưaramộthướngtiếpcậnđểphátsinh prototype giaodiệntựđộng. • Xâydựngmộtthưviệncácthànhphầnmẫunhằmmụcđíchtáisửdụng
Nội dung Giớithiệuvấnđề Giớithiệuđềtài Cácnghiêncứuliênquan Giảiphápcủaluậnvănđểgiảiquyếtvấnđề Kếhoạchlàmviệc Đặtcâuhỏi
Cácnghiêncứuliênquan • Phươngphápdựavào UML • XIS • ELKOUTBI • UML Scenarios và High-level Petri Nets • Phươngphápcủa Cruz • Phươngphápdựavàomôtảhìnhthứccủahệthống (Michael Heymann)
Cácnghiêncứuliênquan (tt) • Phươngphápdựavào UML • Môhìnhhóahệthốngbằngcáclượcđồ UML: Use case, class diagram, state diagram, domain model • Thêmcácmôtảvềgiaodiệnkèmtheocácmôhình. • Tríchxuấtcácthông tin vềgiaodiệnđểphátsinhgiaodiện/prototype giaodiện
Cácnghiêncứuliênquan (tt) • DựavàomôtảhìnhthứccủahệthốngPhươngphápcủaMichael Heymann (2007) • Môtảhìnhthứchệthống: The machine, user’s task, user interface và user model. • Từthông tin tươngtáccủangườidùng, phươngpháplọcranhữngthông tin cầnthiếtchongườidùng. • Xâydựnggiaodiệntừnhữngthông tin tìmđược
Cácnghiêncứuliênquan (tt) • Ưuđiểm • Dùngcáccôngcụphổbiến • Giaodiệnsinhrakháthânthiện • Phươngpháp Cruz chophépphátsinhmãnguồnchươngtrình, data base • Phươngpháp Cruz dùngvònglặpđểcảitiếndầnkếtquả
Cácnghiêncứuliênquan (tt) • Nhượcđiểm • Tốnrấtnhiềucôngsứcđểxâydựngcácmôhình, đặctả. • Giaodiệnsinhrakhôngđượctáisửdụng • Mỗiphươngphápsửdụngmộtcôngcụkhácnhau
Nội dung Giớithiệuvấnđề Giớithiệuđềtài Cácnghiêncứuliênquan Giảiphápcủaluậnvănđểgiảiquyếtvấnđề Kếhoạchlàmviệc Đặtcâuhỏi
Giảipháp • Đềxuấtmộtbộkíhiệuđặctả prototype giaodiện • Gọnnhẹdễsửdụng • Độclậpvớicáccôngcụmôhìnhhóahệthốngnhưngdễdàngtíchhợp. • Dễdàngchuyển qua dạngđặctả logic • Xâydựngmộtthưviệngồmcácđốitượng UI đãđượcdựngsẵnđểtáisửdụng
Giảipháp Môhìnhcủaphươngpháp
Giảipháp • UI specification: Đặctả prototype giaodiện • UI library: Thưviệnchứacácthànhphầngiaodiện: • Basic: thànhphầncơbản : Textfield, button,… • Composite: thànhphầntổnghợp: login form,… • AI Planner: Thựchiện AI planning đểtạokếtquảgiaodiện: Compositehoặcsuggestion
Giảipháp UI prototype: Làkếtquảkhi AI Planner tìmrađượclờigiảithỏamãnđặctảđầuvào. Kếtquảsẽđượcthêmvàothưviện (composite). UI suggestion: Làkếtquảkhi AI Planner khôngthểtìmralờigiảithỏamãnhoàntoàn. Hệthốngsẽđưarakếtquảgầnnhấtvàgợi ý vềphầncònthiếu.
Giảipháp Vídụđặctả prototype giaodiện component login //…phần đặc tả thông thường…// //…Đặc tả giao diện prototype…// UI_precondition: usecase#login.active == true ^ type == page ^ name == “login” ^ username.text != null ^ password.text != null ^ login.action.type == press ^cancel.action.type == press UI_postcondition: (login.action.isActive == true ^ usecase#userdashboard.active == true) v (cancel.action.isActive ==true ^ usecase#mainpage.active == true)
Nội dung Giớithiệuvấnđề Giớithiệuđềtài Cácnghiêncứuliênquan Giảiphápcủaluậnvănđểgiảiquyếtvấnđề Kếhoạchlàmviệc Đặtcâuhỏi
Kếhoạchlàmviệc Đểđảmbảotínhkhảthicủahệthống, luậnvănkếthợpvớinhómnghiêncứuSAVE(System Analysis and Verification). Luậnvănsẽđềxuấtbộcúphápđặctả Đềxuấtphươngánvàphốihợpxâydựng AI Planner. Xâydựngcấutrúcthưviện, tíchhợphệthống.
Kếhoạchlàmviệc • Côngviệccụthểchogiaiđoạntiếptheo • Xâydựngbộkíhiệuđặctảgiaodiện • Xâydựngcôngcụđểchuyểnđặctả sang dạng logic, đềxuấtgiảipháphiệnthực AI Planner • Xâydựngcôngcụđểchuyểnđặctả sang UI • Thamgiaxâydựngthưviện • Tíchhợphệthống • Kiểmtra, đánhgiávàghinhậnkếtquảđạtđược
Tàiliệuthamkhảo [1] António Miguel Rosado da Cruz and João Pascoal Faria, (2011), “Automatic Generation of User Interface Models and Prototypes from Domain and Use Case Models” [2] Cruz, A.M.R., Faria, J.P. (2009). “Automatic generation of user interface models and prototypes from domain and use case models”. In Proceedings of the 4th International Conference on Software Engineering and Data Technologies (ICSoft 2009) , vol. 1, pp169-176, Sofia, Bulgaria, July 2009, INSTICC Press. [3] Michael Heymann (2007), “Formal Analysis and Automatic Generation of User Interfaces: Approach, Methodology, and an Algorithm”, Human Factors: The Journal of the Human Factors and Ergonomics Society April 2007 vol. 49 no. 2 311-330.
Tàiliệuthamkhảo [4] Alberto Rodrigues da Silva, João Saraiva, Rui Silva, Carlos Martins (2007), “XIS-UML Profile for eXtreme Modeling Interactive Systems”, Model-Based Methodologies for Pervasive and Embedded Software, 2007. MOMPES '07. Fourth International Workshop. [5] Mohammed Elkoutbi (2006), “Generating User Interface Prototypes from Scenarios”, 2006 Springer Science + Business Media, Inc. Manufactured in The Netherlands. [6]Mohammed Elkoutbi , Rudolf K. Keller (2000), “User Interface Prototyping based on UML Scenarios and High-level Petri Nets”, Application and Theory of Petri Nets 2000, pp 166-186. [7] Cristian Bogdan, J ¨urgen Falb, Hermann Kaindl, Sevan Kavaldjian, Roman Popp, Helmut Horacek, Edin Arnautovic and Alexander Szep (2008), “Generating an Abstract User Interface from a Discourse Model Inspired by Human Communication”, HICSS '08 Proceedings of the Proceedings of the 41st Annual Hawaii International Conference on System Sciences.
Tàiliệuthamkhảo [8] J ¨urgen Falb, Sevan Kavaldjian, Roman Popp, David Raneburger, Edin Arnautovic, and Hermann Kaindl, Institute of Computer Technology (2009), “Fully Automatic User Interface Generation from Discourse Models”, Proceeding IUI '09 Proceedings of the 14th international conference on Intelligent user interfaces, Pages 475-476 [9] J ¨urgen Falb, Thomas R ¨ock, Edin Arnautovic (2007), “Fully-automatic generation of user interfaces for multiple devices from a high-level model based on communicative acts”, Proceedings of the 40th Hawaii International Conference on System Sciences - 2007 [10] Egbert Schlungbaum , Thomas Elwert (1996), “Automatic user interface generation from declarative models”, University Rostock, Fachbereich Informatik.
Tàiliệuthamkhảo [11] Shaoying Liu (1998), “SOFL: a formal engineering methodology for industrial applications”, Software Engineering, IEEE Transactions. [12] Dennis M. Buede (2009), “The Engineering Design of Systems: Models and Methods” 2nd edition. [13] Gary T. Leavens , Yoonsik Cheon (2006), “Design by contract with JML, Dept. of Computer Science Dept. of Computer Science”; Iowa State University University of Texas at El Paso . [14] Dragan Milicev (Jul 7, 2009), “Model-Driven Development with Executable UML”, Wrox publisher.