
France · SLAM 2025
BTS Services informatiques aux organisations
9 lab practicals for the BTS SIO syllabus.
BTS SIO option SLAM: applied algorithmics and application development in Python, Java and SQL. Every lesson is stepped, compiled and checked by a real toolchain on your own machine — the model reviews your code afterwards, it does not decide whether you passed.
Updated
Semester by semester
Programme: BTS SIO option B « solutions logicielles et applications métiers » (SLAM). Scheme: Arrêté du 29 avril 2019 modifié par l’arrêté du 8 juillet 2024 (session 2025). Open a course to see its practical units and the lab lesson GroutCode ships for each.
1re année
1 course6 lab lessonsPython- U3ALGOPython
Algorithmique appliquée
6
lessons
- Data types — simple types, encoding limits, strings and 2D tables
- Procedures and functions — parameters, return values and scope
- 1Data types — simple types, encoding limits, strings and 2D tablesUnit 1 · Types de données
- 2Procedures and functions — parameters, return values and scopeUnit 2 · Procédure et fonction
- 3Instructions, operators and type conversion — from traces to subnet masksUnit 3 · Instructions élémentaires, opérateurs et transtypage
- 4Control structures — conditionals, for, while and repeat-until loopsUnit 4 · Structures de contrôle et d’exécution
- 5Building iterative structures — Σ, ∏ and recurrent sequencesUnit 5 · Construction des structures itératives
- 6Nested loops on matrices — from transpose to the matrix productUnit 6 · Structures imbriquées
2e année
1 course3 lab lessonsJavaSQL- U6JavaSQL
Option « solutions logicielles et applications métiers » – Conception et développement d’applications
3
lessons
- An order-taking back end in Java — classes, polymorphism, repository, injection and data formats
- Maintaining an inherited Java application — versions, bug fixes, coverage, GDPR and licences
- 1An order-taking back end in Java — classes, polymorphism, repository, injection and data formatsUnit 1 · Concevoir et développer une solution applicative
- 2Maintaining an inherited Java application — versions, bug fixes, coverage, GDPR and licencesUnit 2 · Assurer la maintenance corrective ou évolutive d’une solution applicative
- 3A helpdesk database in SQLite — queries, constraints, views, triggers and indexesUnit 3 · Gérer les données
The full 5-course syllabus is transcribed in the app, including the theory courses. Lessons are authored against the course codes that have practical work, and the list grows with each release.
GroutCode is not affiliated with or endorsed by BTS Services informatiques aux organisations. Course codes and titles are transcribed from the institution’s published scheme documents.
How a practical runs
The same five steps for every lesson, in every language.
- 1
Pick your syllabus
Choose your university or board and the semester or class you are in. The course list is the transcribed official scheme, not an approximation.
- 2
Open a lab lesson
Each lesson is a stepped practical for a specific course, with a starter file you edit and a test file you do not.
- 3
Write the code yourself
The starter has the signatures and the TODOs. You implement them in the editor, in the language your course actually uses.
- 4
Run the checks
The toolchain compiles and runs the tests — 8 to 15 of them across the lesson, one per step, so you find out which change broke what.
- 5
Get the review
Once the tests pass, the model reads your implementation and tells you the input that breaks it. It never reports the pass or fail itself.
Why the compiler grades, not the model
The obvious way to build an AI lab tool is to let the model read the student’s code and say whether it is correct. It is also the way that produces a tool nobody can trust. A model will tell you your code works when the compiler says otherwise, and it will fail you for a style it happens to dislike.
So the two jobs are split:
- The model designs the lesson, writes the starter and the tests, and — after the tests pass — reads what you actually wrote and tells you the input that breaks it.
- The toolchain decides whether it compiles and whether each step passes. That verdict is not negotiable and the model never issues it.
And why steps instead of one big task
A 40-to-60 minute practical with a single Run at the end gives a beginner one bit of feedback an hour, and it arrives after every decision has already been made. Each lesson here is 8 to 15 steps, each with its own instruction and its own check, so you find out which change broke what while you still remember making it.
Frequently asked questions
Does GroutCode cover the BTS SIO SLAM 2025?
Yes. GroutCode ships the transcribed BTS SIO SLAM 2025 for BTS SIO option B « solutions logicielles et applications métiers » (SLAM) — 5 courses — with 9 authored lab lessons mapped to specific course codes. The syllabus was transcribed from the official documents, and the source and checksum of each one is recorded in the app.
Which languages do the BTS SIO practicals use?
Python (6 lessons), Java (2 lessons), SQL (1 lessons). The language is set per course code rather than guessed from the title, because the same subject is taught in different languages at different institutions.
Does the AI just write the practical for me?
No. The starter file has the signatures and the TODOs; you implement them. The toolchain — not the model — decides whether your code compiles and whether each step passes, so the AI cannot tell you your code works when the compiler disagrees. What it does afterwards is read your implementation and point out the input that breaks it.
Do the practicals work offline?
The lessons, the syllabus and the test runner are bundled in the app and run locally, so the compile-and-check loop works with no connection. The review step at the end uses a model, which can be a local one or a cloud one with your own key.
What do I need installed?
GroutCode detects which toolchains are present on your machine and tells you what is missing and what would fix it. You need the compiler or interpreter for the language your course uses — a C compiler, a JDK, Python, Node or SQLite.
Other syllabuses

Sorbonne
Sorbonne Université
Sorbonne Université’s Licence d’Informatique, L1 to L3: programming, C, object-oriented Java, data structures and databases.
27
lab lessons

Paris-Saclay
Université Paris-Saclay
Université Paris-Saclay’s Licence Informatique: programming, algorithmics, modular and object programming in C++ and Java.
26
lab lessons

Grenoble Alpes
Université Grenoble Alpes
Université Grenoble Alpes’s Licence Informatique (UFR IM2AG): imperative programming in C, software projects and databases.
41
lab lessons
Do your BTS SIO lab work with the checks built in
GroutCode is included in every Grout Suite license. Free download for Windows and macOS.
Download GroutCode