Teaching with BESSER Labs
The labs are written to be handed to students as they are. Each one states its time, setup and prerequisites up front, so you can build a session around them without rewriting anything.
Two-hour workshop
A first contact with model-driven engineering. Laptops with a browser are enough.
- Lab 1: Draw your first class diagram40 min
- Lab 4: Model by conversation with the Modeling Assistant35 min
- Lab 7: Build a full web app from three models1 h 15 min
About 2 h 30 min of hands-on time
One-day bootcamp
From a first model to a deployed application with an agent and an AI-built feature.
- Lab 1: Draw your first class diagram40 min
- Lab 2: Model in Python with B-UML1 h
- Lab 6: From a class diagram to a database50 min
- Lab 7: Build a full web app from three models1 h 15 min
- Lab 9: Build agents with the BESSER Agentic Framework1 h 15 min
- Lab 5: From a description to a running app with the Spec-Driven Agent1 h
About 6 h of hands-on time
Semester course on model-driven engineering
One lab per session, closing with metamodeling and generator development.
- Lab 1: Draw your first class diagram40 min
- Lab 2: Model in Python with B-UML1 h
- Lab 3: Add behavior to your model50 min
- Lab 4: Model by conversation with the Modeling Assistant35 min
- Lab 5: From a description to a running app with the Spec-Driven Agent1 h
- Lab 6: From a class diagram to a database50 min
- Lab 7: Build a full web app from three models1 h 15 min
- Lab 8: Publish your app to Render, then extend it45 min
- Lab 9: Build agents with the BESSER Agentic Framework1 h 15 min
- Lab 10: Personalize an agent for its users55 min
- Lab 11: Write your own code generator1 h
- Lab 12: Extend the B-UML metamodel and a generator1 h 30 min
About 11 h 35 min of hands-on time
Solutions
Worked solutions for every exercise live in a private repository. If you teach with these labs, email info@besser-pearl.org from your institutional address and tell us the course you are running. We'll add you to the repository.
Before the session
- Open editor.besser-pearl.org on the classroom network. Some corporate and university proxies interrupt the live connection the assistant uses, so test it once from a classroom machine.
- Labs that use Python need Python 3.11 or 3.12 and
pip install besser. Ask students to install it before the session; it is the step that eats the most class time. - The modeling assistant needs no API key, and the Spec-Driven Agent runs on a shared free tier by default. Both are rate limited, so a full class working at once will see slower replies. Students with their own key can add it in the editor.
- The deployment lab needs a free GitHub account and a free Render account per student.
Progress tracking
Students can tick off steps as they go. Progress is stored in their own browser only; nothing is sent anywhere, and there is no account to create.