W4 ucl@md day2011

  • Upload
    mdday11

  • View
    687

  • Download
    1

Embed Size (px)

DESCRIPTION

 

Citation preview

  • 1. Teaching Model-Driven Engineeringof Information Systems to students: could they use it? Pascal Beaujeant, Jean Vanderdonckt Universit catholique de Louvain (UCL) Louvain School of Management (IAG)Pole of Research on Information and Services Management and Engineering (PRISME) Louvain Interaction Laboratory (Lilab) Place des Doyens, 1 B-1348 Louvain-la-Neuve - Belgium [email protected] - http://www.lilab.be 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 1
  • 2. Who are we? Pascal Beaujeant Jean Vanderdonckt [email protected] [email protected] http://www.uclouvain.be/pascal.beaujeant http://www.uclouvain.be/jean.vanderdonckt 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 2
  • 3. Outline MDE to students: could they use it? MDE of user interfaces MDE of user interfaces for mobile platforms Conclusion 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 3
  • 4. Teaching: Current situation How to teach Computer Science to two different types of students? Computer Science (CS) students Management Sciences (MS) students Not just Management (of) Information Systems (MIS) 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 4
  • 5. Current situation MS students Learned programming for 2 years, but experienced several problems Too much time spent on language understanding, code writing and bug fixing Not enough time spent on the real problem to solve Too complex for them to master Tend to assimilate computer science to Internet browsing: all ISs should be Web 2.0 Pure programming: only hackers can make it Not their favorite concern, apart a few (~5%) Have little or no idea of what IS modeling is 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 5
  • 6. Current situation CS students Learned extensively programming for years, but Still requiring a lot of resources for them to master Tend sometimes to assimilate CS to rush-to-code approach: code first, test after Advanced programming: test sophisticated techniques first Is their favorite concern, apart a few (~15%) Have some idea of what IS modeling is, but Is not systematically applied Never really experienced Model-Driven Engineering (MDE) on a real case study I will need the same time to develop your IS than to model it 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 6
  • 7. What are the skills required for students? CS / MS students Axis #1: Acquire scientific & technical knowledge 1.1 Identify and apply concepts, laws, and reasoning relevant to a given problem 1.2 Identify and use modeling/computational software to solve a given problem 1.3 Verify adequacy and confirm validity of results with respect to the type of given problem Axis #2: Acquire engineering skills 2.1 Analyse a problem or the functional requirements to satisfy and write specifications accordingly 2.2 Model a problem and conceive one or many original technical solutions in order to address requirements 2.3 Evaluate and classify solutions with respect to quality criteria 2.4 Implement and test a selected solution as a mockup, prototype or numerical model 2.5 Write recommendations in order to improve operationalisation of a 2011 LSM selected solution EXCELLENCE AND ETHICS IN BUSINESS 7
  • 8. What are the skills required for students? CS / MS students Axis #2: Acquire engineering skills 2.1 Analyse a problem or the functional requirements to satisfy and write specifications accordingly 2.2 Model a problem and conceive one or many original technical solutions in order to address requirements 2.3 Evaluate and classify solutions with respect to quality criteria 2.4 Implement and test a selected solution as a mockup, prototype or numerical model 2.5 Write recommendations in order to improve operationalisation of a selected solution Axis #3: Acquire Research & Development skills Axis #4: Ability for Project management Axis #5: Ability for Communication Axis #6: Ethics and Professionalism 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 8
  • 9. Hypotheses MS students Are able to model an entire IS by relying on MDA Are able to produce a real IS Thus, addressing most axes CS students (not covered here) Are also able to apply MDA in a way that should be superior in principle Are able to optimize the path for acquiring some skills Thus, also addressing most axes 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 9
  • 10. Method (1/4) Define explicitly one modeling life cycle (MLC) MDA The following definition was approved unanimously by 17 participants of the ORMSC plenary session meeting in Montreal on 23-26 August 2004. The stated purpose of these two paragraphs was to provide principles to be followed in the revision of the MDA guide. MDA is an OMG initiative that proposes to define a set of non-proprietary standards that will specify interoperable technologies with which to realize model- driven development with automated transformations. Not all of these technologies will directly concern the transformation involved in MDA. MDA does not necessarily rely on the UML, but, as a specialized kind of MDD (Model Driven Development), MDA necessarily involves the use of model(s) in development, which entails that at least one modeling language must be used. Any modeling language used in MDA must be described in terms of the MOF language to enable the metadata to be understood in a standard manner, which is a precondition for any activity to perform automated transformation. 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 10
  • 11. Method (2/4): One Modeling Life Cycle (MLC) Contextualisation Decontextualisation Recontextualisation Start End Acquirng the First elicitation of Model input in Model-driven IS deployment Evaluation case study requirements Writing ONME models OlivaNova engineering (M2M, M2C) of results -Writing the various models 1. Object model - Evaluation 2. Dynamic model questionnaires 3. Functional model -Parametrizing of generation targets - Focus groups-Textual statement, scenario -Targets possible 4. Presentation model- Material : documents, pictures, -1. Web application (HTML) 5. Execution model diagrams, interview of a real-world -2. Web application (Java) representative -3. Local application (DotNet) - Project reception by e- mail or FTP - Installing the system -Running the system - First identification of objects, services, - Graphical editing of models (partial / and users fro material total) - First transformation into modeling 2011 LSM elements -Detailed specifications for each model EXCELLENCE AND ETHICS IN BUSINESS 11
  • 12. Pastor, O., Molina, J.C., Model-Driven Architecture in Practice: A Method (3/4) Software Production Environment Based on Conceptual Modeling, Springer, Heidelberg, 2007. ISBN 978-3-540-71867-3 Define explicitly one MLC = one MLC Apply it consistently W1 W2 W3 W4 W5 W6 W7 W8 W9 W10 W11 W12 W13 Final examination Face-to-face course(theoretical and practical) Individual pedagogical path Collective pedagogical path 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 12
  • 13. Method (4/4) Management Information System of Nabaztag (MindScape) Outside Inside Why: service oriented, original, funny 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 13
  • 14. Results 2009 (similar 2010) 397 MS students distributed into 60 groups of 6-9 members 8 teaching assistants Course (30h + 30h = 60h) Started Feb 2009 to end of May 2009 Case study: for end of May 2009 Examination: June 2009 Supported by Claroline (www.claroline.net) 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 14
  • 15. 90 Results 80 70 60 Overall score 50 40 Srie1 30 20 10 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 Per model scores Models Average score Standard (on 10) deviation (on 10) Object model 7,66 0,47 Dynamic model 7,20 1,13 Functional model 4,83 1,64 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 15
  • 16. Conclusion for 2009 and 2010 Some potential explanations Data-centered design is a design methodology that is prevalent over Services-centered design (dynamic model) Process-centered design (functional model) User-centered design (presentation model) Although MDA promotes model flexible transformation, MDA is understood linearly Object model, then Dynamic model, then Functional model, then Presentation model, then Execution model Propagation across models are understood lately 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 16
  • 17. Conclusion for 2009 and 2010 Some potential explanation Teaching MDE in a streamlined way is too demanding A bit of everything at once, then iterate E.g., object + dynamics first Too many models at once Better intertwining of the approach "Agile modelling" approach to be tested Environment was too complicated Change it! => Leonardi 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 17
  • 18. Modeling issues Put everything USER SHERPA in the same +Email: String [30] -Password: String [10] +NameUser: String [30] model +FirstnameUser: String [15] +Street: String [30] +No: Integer [4] +ZipCode: Integer [4] +City: String [30] + Country: String [30] +Phone: String [14] +Mobile: String [14] +Gender: Char = {M,F} +Lanquage: String [2] = {DE, EN, FR, NL} +isInformed: Boolean +hasSeat: Boolean +SeatNumber: Integer +SeatPrice: Real +CreateUser () +ReadUser() +UpdateUser() +DeleteUser() 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 18
  • 19. Modeling issues Dynamic model Common mistakes: too many states, irrelevant states, transition without semantics [Admin]: CloseEvt() [Admin]: DeleteEvt() Event Free Booking Creat Seats closed [Admin]: OpenEvt() ed [Admin]: CreateEvt() [UserSherpa]: BookTicket() Booked Seats [UserSherpa]: PayTicket() Paid Seats 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 19
  • 20. Modeling issues Update object model with newly identified services: disturbing for students constitue Place Utilisateur Sherpa est achet Ticket ForestNat est constitu de par +NoPlace: Integer[6] 1 achte +CatgoriePlace : String [10] +LogInUtil() +NoTicket: Integer[6] 1..n +LogOutUtil() 1 0..n +PrixTotal : Real +CreatePlace() +ModePaiement: +ReadPlace() String [10] +UpdatePlace() +estPay : Boolean Administrateur +DeletePlace +estRserv : Boolean +CreateTicket() +ReadTicket() Caractrisation +UpdateTicket() +DeleteTicket() +Disponibilit : Boolean +PrixUnitaire : Real Evenement +RserverTicket() est relatif +QtCommande : Integer [2] 1..n +PayerTicket() 1 +CalculerPrixTotal() +OuvrirEvt() est couvert +ClturerEvt() par 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 20
  • 21. Modeling issues 7 specification sins (adapted from Meyer) Noise: existence of a model element that does not convey any information to any problem feature Synonyms: redundancy, remorse Silence: existence of a problem feature that is not covered by any model element Overspecification: existence of a model element that does not cover any problem feature, but to a solution feature Contradiction: existence of two or more model elements that cover a problem feature in an incompatible way Ambiguity: existence of two or more model elements that cover a problem feature in at least two different ways Synonyms: inconsistency, incoherence Forward reference: existence of a model element that refers to a problem feature that is later defined Wishful thinking: existence of a model element intended to cover a problem feature in an irrealistic way (that cannot be validated) 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 21
  • 22. Modeling issues 7 specification sins (adapted from Meyer) Sin Representation Observed frequency Noise High at beginning, low after (students add unspecified elements) Silence Moderate (usually simply forgotten) Overspecification Very low Contradiction Moderate (unnoticed) Ambiguity High (no unicity, duplication) Forward reference {o} Low Wishful thinking Low 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 22
  • 23. Modeling issues Which Model quality propertiesProperty DefinitionCompleteness Ability of a model to abstract all real world aspects of interest via appropriate concepts and relations Stylistic Ability of a model to represent all real world aspects of interest via appropriate stylistics of the IDEcompleteness concepts and relationsConsistency Ability of a model to produce an abstraction in a way that reproduces the behaviour of the real world aspect of interest in the same way throughout the model and that preserves this behaviour throughout any manipulation of the model.Correction Ability of a model to produce an abstraction in a way that correctly reproduces the behaviour of the real world aspect of interest Expressivenes Ability of a model to express via an abstraction any real world aspect of interests Concision Ability of a model to produce concise, compact abstractions to abstract real world aspects of interest Separability Ability of models to univocally classify any abstraction of a real world aspect of interest into one single model (based on the principle of Separation of Concerns from Dijkstra [8]) IDECorrelability Ability of models to univocally and unambiguously establish relationships between models to IDE represent a real world aspect of interestIntegrability Ability of models to concentrate and integrate abstractions of real world aspects of interest into IDE a single model or a small list of them. 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 23
  • 24. Results (2011) 205 MS students distributed into 34 groups of 6-9 members 3 teaching assistants Course (30h + 30h = 60h) Started Feb 2011 to end of May 2011 Case study: for end of May 2011 Examination: June 2011 Supported by Claroline (www.claroline.net) Technical support from W4 (thanks a lot for this!) 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 24
  • 25. Why W4 Leonardi was selected? Domain model is the starting point Important because domain is well understood Dynamics are simplified Important because students do not need to master them before running an actual system Full Automated generation Important because students need to see immediately the results of their model Pattern-based approach Important because no need to master functional aspects 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 25
  • 26. Repartition Results 80 70 Leonardi score 60 50 40 30 20 10 0 0 5 6 7 8 9 10 12 13 14 15 16 17 Srie1 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 26
  • 27. Results 70 60 50 40 Overall score 30 Srie1 20 10 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Per model scores Models Average score Standard (on 10) deviation (on 10) Object model 7,46 1,12 Dynamic model 6,90 0,70 Functional model 6,43 1,05 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 27
  • 28. Next academic year (2012) 400 MS students distributed into 60 groups of 6-9 members 4 teaching assistants Course (30h + 30h = 60h) Started Feb 2012 to end of May 2012 Case study: for end of May 2012 Examination: June 2012 Supported by Claroline (www.claroline.net) Technical support from W4 (thanks a lot for this!) 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 28
  • 29. Discussion Abilities acquired? Ability of identification: important vs accessory Ability of modeling: transform problem features into model elements Ability of abstraction: transform problem features into abstract elements Ability of separation of concerns: separate problem features into different models Ability of generalisation: transform problem features into solution elements that are more generic Ability of evaluation: evaluate model qualities 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 29
  • 30. Ongoing work What are we doing to improve this? Multi-path learning environment (P. Beaujeant, UCL) Explicit propagation of model decisions Rapid prototyping: horizontal, vertical, diagonal Flexibility in model-driven engineering (N. Aquino, UPV/UCL, SENEROA, W4, UsiXML) Beautification of user interface 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 30
  • 31. Ongoing work Rapid prototyping with propagation Vertical prototype Horizontal prototype User interface (presentation model) Complete Control (dynamic, execution models) Information System Functional core (object, functional models) Video of UsiXML project Diagonal prototype User interface Complete Control Information System Functional core 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 31
  • 32. Ongoing work Rapid prototyping with propagation (1) User interface (2) Complete Control Information System (3) Functional core (1) (2) (3) (4) (5) (6) User interface Complete Control Information System Functional core 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 32
  • 33. Transformation Templates Definition of a methodology (models, method and tools) in order to add flexibility to Model-Driven Engineering of User Interfaces (UIs) Flexibility means For end-users: it will be possible to generate many different UIs For designers: it will be easier to customize a UI previously to its generation For developers: it will be possible to gradually implement the methodology and extend the set of possible UIs when necessary 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 33 33
  • 34. Transformation Templates Transformation Templates Specify the structure, layout and style of a UI Are composed of parameters with associated values that parameterize UI model transformations Are inputs for transformation tools TRANSFORMATION TEMPLATE PRESENTATION MODEL MODEL COMPILER USER INTERFACE CODE 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 34 34
  • 35. Transformation TemplatesUser Interfaces Transformation Templates Context Parameter TypeUI Meta ValueElement Type Parameter Type definition level Parameter definition level Parameter Value ContextUI Element Selector Transformation Template 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 35 35
  • 36. Transformation Templates Parameter Type definition level 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 36 36
  • 37. The demand for UI development (Amount of interactive systems) (Amount of end users) 10 to 50 systems 10000 for 1 user 50000 2 or 3 systems 1 system for for 1 user 1000 1 user 5000 100 1 system for 500 100 users 10 50 1970 1980 1990 2000 2010 2020 Embedded systems Infrastructure tools XML Software tools Platforms Applications Windows Platforms Linux Platforms 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 37
  • 38. The offer for UI development Need for UI designers Amount of UI designers Hired UI designers Deviation Year 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 38
  • 39. The UsiXML answer In order to avoid proliferation of multiple parallel developments, UsiXML introduces model-driven engineering for UI Platform #1 Platform #2 Platform #3 Platform #4 Application 1 UI #1 UI #2 UI #3 UI #4 Application 2 UI #5 UI #6 UI #7 UI #8 Application 3 UI #9 UI #10 UI #11 UI #12 Platform model #1 Platform #1 Application 1 UI model #1 Platform model #2 Platform #2 Application 2 UI model #2 Platform model #3 Platform #3 Application 3 UI model #3 Platform model #4 Platform #4 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 39
  • 40. Four levels of abstraction Example: The Google homepage Task & Domain (T&D) AbstractIndividual Container Abstract User Interface AIC AIC AIC facet=control facet=control facet=control (AUI) Window Concrete User Interface textInput button button (CUI) Final User Interface (FUI) 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 40 ITEA UsiXML project #08026, 2009-2012
  • 41. Example of MDE of Uis in UsiXML The Abstract User Interface has been transformed in a Concrete User Interface as a Windows application 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 41 ITEA UsiXML project #08026, 2009-2012
  • 42. Example of MDE of Uis in UsiXML Total graphical VS predominant graphical 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 42 ITEA UsiXML project #08026, 2009-2012
  • 43. Example of MDE of Uis in UsiXML Predominant vocal VS total vocal 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 43 ITEA UsiXML project #08026, 2009-2012
  • 44. CUI rendering in VUItoolkit 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 44
  • 45. X3D generated from Alice Its a real 3D UI! 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 45
  • 46. FUI included in virtual scene 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 46
  • 47. MDE of user interfaces for mobile platforms Mobile platforms: everywhere and growing 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 47 47
  • 48. MDE of user interfaces for mobile platforms Mobile platforms: everywhere and growing Mobile experience can be much better than non- mobile Demo of UsiXML editor Support context-aware adaptation Think about how it could be better You can master mobile app development Support tools: sophisticated and getting better You need to understand and own mobile The mobile experience must be seamlessly integrated with non-mobile IT elements Model-driven mobile development (MD)2 is coming 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 48 48
  • 49. MDE of user interfaces for mobile platforms You can apply similar designs to different platforms (iOS, Android, etc.) but it takes some work Usage has increased significantly when adding customized mobile apps to web sites There is a reward for going mobile 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 49 49
  • 50. 50 Context-aware adaptation of user interfaces User interface pattern depending on the platform Textual Graphical 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 50
  • 51. Context-aware adaptation of user interfaces Touch phones Night version, 2 days Day version, 2 days 51 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 51
  • 52. Context-aware adaptation of user interfaces Tablet PC & iPad Night version, 4 days Day version, 4 days 52 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 52
  • 53. Context-aware adaptation of user interfaces Desktop version 53 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 53
  • 54. 54 Context-aware adaptation of user interfaces User interface pattern depending on the platform Textual Graphical 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 54
  • 55. Context-aware adaptation of user interfaces Touch phones Night version, 2 days Day version, 2 days 55 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 55
  • 56. Context-aware adaptation of user interfaces Tablet PC & iPad Night version, 4 days Day version, 4 days 56 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 56
  • 57. Context-aware adaptation of user interfaces Desktop version 57 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 57
  • 58. Conclusion How to improve our MDA-based method? Expanding the coverage Resource win for applications supported by MDA-compliant tools High ceiling Resource win for applications Low threshold supported by first-generation Wide walls 100% Capabilities Ceiling MDA CASE tools Second generation integrated environments First generation Interface builders and 50% Threshold Resources (time, experience,) 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 58
  • 59. Conclusion How to improve Capabilities 100% our MDA-based Ceiling Third generation method? Integrated Development Environments Second generation First generation 50% Threshold Resources (time, experience,) Walls 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 59
  • 60. Thank you very much for your attention! User Interface eXtensible Markup Language http://www.usixml.org http://www.usixml.eu Register as a member of the UsiXML End-User Club at http://www.usixml.eu/end_user_club For more information and downloading, http://www.lilab.eu 2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 60