1. Teaching Model-Driven Engineering
of 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
jean.vanderdonckt@uclouvain.be - http://www.lilab.be
2011 LSM EXCELLENCE AND ETHICS IN BUSINESS 1
2. Who are we?
Pascal Beaujeant Jean Vanderdonckt
pascal.beaujeant@uclouvain.be Jean.vanderdonckt@uclouvain.be
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 Série1
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
achète +CatégoriePlace : String [10]
+LogInUtil() +NoTicket: Integer[6] 1..n
+LogOutUtil() 1 0..n +PrixTotal : Real
+CreatePlace()
+ModePaiement:
+ReadPlace()
String [10]
+UpdatePlace()
+estPayé : Boolean
Administrateur +DeletePlace
+estRéservé : Boolean
+CreateTicket()
+ReadTicket() Caractérisation
+UpdateTicket()
+DeleteTicket() +Disponibilité : Boolean
+PrixUnitaire : Real
Evenement +RéserverTicket()
est relatif à +QtéCommandée : Integer [2]
1..n +PayerTicket()
1
+CalculerPrixTotal()
+OuvrirEvt() est couvert
+ClôturerEvt() 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 properties
Property Definition
Completeness 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 IDE
completeness concepts and relations
Consistency 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 interest
s
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]) IDE
Correlability Ability of models to univocally and unambiguously establish relationships between models to
IDE
represent a real world aspect of interest
Integrability 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
Série1
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 Templates
User Interfaces Transformation Templates Context
Parameter
Type
UI Meta Value
Element Type
Parameter Type definition
level
Parameter definition
level
Parameter Value
Context
UI 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
• It’s 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