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
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