I’m happy to announce that the first version of our tutorial for model-based chatbot development with Xatkit is now available. In case you want to take a look on your own, you can see the slides below but keep reading until the end to better understand what exactly we are offering (which is much more than a simple set of slides) if you’re happy to play along!
I know how difficult is to teach modeling and model-driven engineering. Not talking about the technical aspects but about the motivational ones. MDE is not cool, which makes challenging to get the students’ interest. I experienced this first hand when I failed to convince my students about the benefits of code-generation. I even explored modeling gamification with limited success. A follow-up analysis of this failure revealed that, indeed, the main reasons behind the lack of adoption and interest of MDE were linked to human factors.
Together with Dimitris, we proposed to have a “sexy” set of use-case studies that MDE teachers could use to have more interesting MDE courses. Today, I’m presenting the sexiest MDE use case I’ve found so far: using model-driven software engineering techniques to develop chatbots.
Xatkit, our low-code chatbot platform, was not born as a toy example for MDE. You can use it to build any kind of advanced (chat)bots for real projects. But, it turns out that Xatkit is also a very good example of the power of MDE (e.g. see how you could create a bot that posts Giphy images in Slack with barely 10 lines of text using our chatbot DSLs). Xatkit comes with textual DSLs (in XText), a chatbot metamodel (in EMF), a PIM vs PSM distinction, platform and event/execution models,… all following a pure 100% model-based approach.
That’s why when we were invited to participate in a MDE course in Uruguay (thanks to Daniel & cia for the invitation) we decided to use chatbots as the practical assignment for the course. It was a complete success. Everybody seems to be interested in chatbots (and bots in general) these days. And having the option to quickly create chatbots on a variety of platforms with xatkit was exciting enough to convince students that, maybe, model-based software engineering was not such a bad idea :-).
This experiment was a win-win situation. Students and teachers were happy and we got feedback, new users and even contributors for Xatkit (e.g. see the bots for twitter platform that came out from that course). So basically I was able to kill two birds with one stone: to continue my personal mission of shifting the world of software development to a model-based approach while improving xatkit. This is why we would like to repeat the experience.Are you teaching software modeling ? or DSLs? or RPAs? or any kind of model-driven engineering course? Want to use our model-based chatbot platform as a case study? Check us out! Click To Tweet
So, what are we offering?:
- Provide a complete set of MDE teaching materials. This is already available as part of our over 500 free slides on MDE
- Provide generic chatbot teaching materials to introduce the world of bots, chatbots, digital assistants and RPAs (Robotic-Process automation) with an emphasis on the complexity of the ecosystem (heterogeneity, multiple players, low-level approaches,….) which make it a perfect scenario for MDE to shine.
- Tutorials and guidance on how to use Xatkit to model and deploy chatbots on a variety of platform combinations.
- (up to you) Our participation in a course session/s to cover some of the aspects above. This could be a physical or remote participation depending on where you are. For the Uruguay course, Robert went there to talk about MDE in general while Gwendal participated remotely for a hands-on introduction to xatkit.
What do we expect from you?.
- Feedback on the experience from your teacher’s point of view
- And that at least one of the important assignments of the course involves Xatkit. Typically, this could involve two levels of difficulty (one of the hard lessons I took from my previous failed teaching experiences)
- Students as MDE users: Students use Xatkit to create a chatbot. They don’t create new platforms or extensions, they use modeling techniques to create bot, do not develop new MDE components themselves
- Students as MDE creators: Students extend xatkit in some way (easiest option would be to model a new platform). This way, students experience the process of building new MDE components.
- (Alternatively) You could also organize a kind of hackathon as a practical exercise for the course. This may be even more exciting for the students and facilitate our “presence” and promotion of the event.
Interested? Get in touch and let’s start talking!
ICREA Research Professor at Internet Interdisciplinary Institute (UOC). Leader of the SOM Research Lab focusing on the broad area of systems and software engineering