quarta-feira, 6 de novembro de 2019

ER 2019 - SCME - Conceptual Modeling Education Panel

SCME - Conceptual Modeling Education Panel 
*My comments are marked with an asterisk

Participants:


The panel started with Giancarlo's presentation about CM Education. He raised some interesting points based on the 5W1H model, to be responded by each of the painelists:

Example:

  • How to teach/learn CM?
  • Who shall we teach? Not only computer science
  • When? Shall we start from a young age or not?
  • What shall we teach when teaching Conceptual Modeling?

1) Matthias Jarke:

  • CM education should be interdisciplinary 
  • CM meets technology-enhanced learning
He showed a system to support Real-time Collaborative Modeling 
At the moment, they are working on WEKIT - Wearable Exxperience for Knowledge Intensive Training. 
This is a Horizon 2020 with 12 partners. It may be useful also in the CM domain.

2) Oscar Pastor

Pros and Cons of CM-based Development in a Practical Teaching Experience

How to motivate the students in MDD?

They teach two courses on MDD. In the first course, they involve the users in an experiment that test accuracy, effort, productivity and satisfaction regardin CM. The problem is that the complexity of the problem seems to affect all variables. Then, they conducted a replication enlarging the problem complexity to check this idea in the second course. The results are much clearer in the second experiment.

In their case, there is a direct relationship between correct models and compilable code, because the code comes from the model. 

Some challenges:
- they use 4 hours for the experiment. That seems to be too much
- the size of the problem (complexity) is also tricky to find.

Answering the questions:

  • How to teach/learn CM? How to change people's conceptualization capabilities? I don't know. What I suggest: practice, practice, practice.
  • What shall we teach when teaching Conceptual Modeling? selecting a CM domain and a CM language; structure / behavior  / user interaction / etc.; identify the level of abstraction.
  • Innovative ways of teaching: different types of exercises, not only IS/SE based exercises.
More questions:
- big difference in CM abilities among students:  some people are naturally good, others are not. Not sure how to address this.
- should a software engineer be graduated without assessing a solid CM ability? He thinks not.

3) Geert Poels

He teaches Bachelor and Master Business students

- What?

Concept is 
  • anything that has existed, currently exist, will exist, could exist or cannot exist
  • from very concrete to very abstract
  • heuristic: if we can think of it, it is a concept
Focus on the model = properties of the concepts. In particular, relationships between the concepts.

- Why

representation - to talk about something, we must represent it
abstraction - abstract away from unneeded stuff
visualization - a picture is worth more than 1000 words

We use it for understanding, communicating, sense-making, problem analysis and solution design, i.e. for much more than only IS development! 

He presented some interesting domains in which this would be relevant, some of which are not related to IS development.

- How

Conceptual modeling - ER Diagrams (UML notation)
Business Process Modeling - BPMN
Enterprise Modeling - ArchiMate

Many of his students do high-end consultant and/or get involve in innovation projects. Most of these projects involve ISs. 

He works this question with his students: 
How to use enterprise modeling to analyse and demonstrate the impact and value o digital technology?

4) Monique Snoeck

Most of her students cannot program, so CM is the only way  they access how we can build ISs.

- What

Fundamentals of modeling - The World vs. the Machine (M. Jackson)
  • She focus on this relationship world vs. machine itself
  • Basic principles of Description

Modeling Quality Frameworks
  • Semiotics: transformation effects (see book of K. Pohl)
  • Lindland & Sindre - Sintax, Semantics, Pragmatics
  • CMQF (Conceptual Modeling Quality Framework - Nelson, Poels and friends)
She teaches any language: state machines, UML or whatever as examples of languages that follow the previously mentioned principles

- How
  • hands on - exercises + exercises + exercises
  • apply instructional design methods - Bloom taxonomy and 4C-ID
  • use smart tools to automate the teaching work (even grading)
*She presented the Bloom taxonomy and showed how it may be used. Very direct and interesting!

Every modeling task should be an authentic modeling task
you may start with simple and go to more complex tasks. For example: 
  1. you may start by modeling yourself and think out loud so they follow
  2. then you do step-by-step guided exercises
  3. full exercise with minor hints
  4. homework: full exercise
MOOC - she creates some moocs for some more simple learning objectives and leave only the more interesting/complex things for the classroom.
Flipped Classroom - video classes are prescribed; in the classroom, only questions and exercises. 

Smart Tooling: 
Feedback during modeling - she presented a tool that provides feedback while the student is modeling; 
She also uses simulation augmented with feedback to help students learn (e.g. UML class diagrams)

She pointed to Daria Bogdanova and suggested we talk to her to understand what else their group does. 

5) Barbara Weber

- What
Ensure that the students understand the concepts. In the beginning, newcomers really struggle to understand. 

She then spends a lot of time in the beginning explaining the concepts and not really go to the language.  What is a business process? What is an outcome (positive/negative outcome)? What is an event?  What is an activity? What is a decision point?

We should teach all we need to create a model:
syntax, semantics, notation, vocabulary, modeling conventions, modeling tools. 
*She presented a model structuring all these aspects in a very interesting way. 

The Process Spectrum
It should be clear to the student that there is a variety of kinds of models, and BPMN is not the ideal tool for every case. So, the students should be critical in understanding for which situation to use each modeling notation. 

- How

Novices and experts differ in their cognitive processes. 
One thing that she would like to emphasize from Monique's talk is the idea of providing feedback, even if you do it on the fly (and not supported by tools). For example, she uses a lot of exercises in class so that the students can ask questions while they do their model. 
She keeps the theory very simple and short. 

Different types of exercises:
  • understanding models,
  • creating models
  • reviewing models
  • finding errors in models 

This makes it more interesting for them, because it allows them to deal with different tasks. And moreover, they may learn different and very useful things. 

The Cheetah Platform may assist understanding the level of the student and what she is still missing. It may be used to create an Adaptive Learning Platform. 



Q&A


Book suggested by Giancarlo: 

- What is Scratch doing right to teach programing and what are we doing wrong? Why can't we create tools that easily teach how to do CM?

Oscar thinks that there is something more fundamental. It is easier to be a "doer" (programing) than to be a conceptual modeler (thinking why you are doing that the way you are doing)
Monique adds that the reward that the kid has when using scratch is immediately understanding if it went well or not. The simulation tool she uses does the same for CM and the students love it!





Nenhum comentário:

Postar um comentário