The development of the ILIAS source code is coordinated and maintained by a coordination team within the ILIAS network. Besides the main responsibilities for the project, several developers and users are maintaining certain modules of ILIAS.
- Product Management: Matthias Kunkel
- Technical Board: Michael Jansen, Stephan Kergomard, Richard Klees, Nico Roeser, Fabian Schmid
- Testcase Management: Fabian Kruse
- Release Management: Fabian Wolf
- Technical Documentation: Ann-Christin Gruber
- Online Help: Alexandra Tödt
We highly appreciate to get new developers but we have to guarantee the sustainability and the quality of the ILIAS source code. The system is complex for new developers and they need to know the concepts of ILIAS that are described in the development guide.
Communication among developers that are working on a specific component needs to be assured. Final decision about getting write access to the ILIAS development system (Github) is handled by the product manager.
ILIAS is currently maintained by two types of maintainerships:
- Classic Model with First Maintainer and sometimes Second Maintainer
- Coordinator Model
The following rules must be respected for everyone involved in the programming of ILIAS for all components having a listed component maintainer (see below):
- Decisions on new features or feature removals are made by the responsible first maintainer and the product manager in the Jour Fixe meetings after an open discussion.
- Components under the Classic Model have a first and sometimes second maintainer. Code changes are usually done by the first maintainer. The first maintainer may forward new implementations to the second maintainer.
Responsibilities of a component maintainer:
- Component maintainer must assure maintenance of their component for at least three years (approx. three ILIAS major releases).
- Component maintainers must agree to coordinate the development of their component with the product manager.
- Component maintainer are responsible for bug fixing of their component and get assigned related bugs automatically by the Issue-Tracker.
- Component maintainers are responsible for Pull Requests to their component and get assigned related Pull Requests by the Technical Board according to the [Rules for Maintainers and Coordinators assigned to PRs[(Rules for Maintainers and Coordinators assigned to PRs)
Applications for maintainerships can be handed in to the product manager. The product manager together with the technical board decide on who becomes a maintainer. Maintainerships are listed with the name of the maintainer. In addition the company the maintainer is working for can be listed, too. In this second case, the company has the right to propose an alternative maintainer at any time. In particular, if the maintainer resigns from his maintenance, a proposal for a new maintainer by the company of the old maintainer will be preferred, if the company recently invested substantially in the general condition of the component and the proposed maintainer meets the criteria.
If a component is currently unmaintained, a developer can take responsibility for it without agreeing to give full support. An implicit maintainer will get assigned related bugs automatically and will keep the component working through the update cycle. S/he will not implement new features or develop the component further. If enhancements of the component are wanted, an explicit maintainer or coordinator must be assigned.
A maintainer can pass certain of her/his competences to other people in the community. Currently these are:
- The competence to handle pull requests including the rights to merge or close them.
- The competence to handle issues in Mantis including the rights to relable, reassign, close, or reopen them.
If nobody is fulfilling the responsibilities of the component maintainer, the Product Manager together with the Technical Board can look for members of the community and assign these competences to them.
Maintainerships are tracked in maintenance.json files placed in the root of the corresponding components of ILIAS. The file containes the following fields:
- maintenance_model: Currently there are two possible entries for this field
- "Classic"
- "Coordinator".
- "first_maintainer": One entry in the form
<username> (<userid>)
pointing to a valid user on https://docu.ilias.de. Only relevant if the maintenance_model is set to "Classic". - "second_maintainer": One entry in the form
<username> (<userid>)
pointing to a valid user on https://docu.ilias.de. Only relevant if the maintenance_model is set to "Classic". - "implicit_maintainers":
An array in the form [
<username> (<userid>)
] pointing to valid users on https://docu.ilias.de. Only relevant if the maintenance_model is set to "Classic" and neither a first nor a second maintainers is set. - "coordinator": An array in the form [
<username> (<userid>)
] pointing to valid users on https://docu.ilias.de. Only relevant if the maintenance_model is set to "Coordinator". - "pr_management" :
An array in the form [
<username> (<userid>)
] pointing to valid users on https://docu.ilias.de. - "issue_management" :
An array in the form [
<username> (<userid>)
] pointing to valid users on https://docu.ilias.de. - "tester": One entry in the form
<username> (<userid>)
pointing to a valid user on https://docu.ilias.de. - "testcase_writer": One entry in the form
<username> (<userid>)
pointing to a valid user on https://docu.ilias.de.
- ActiveRecord
- Maintenance Model: Classic
- 1st Maintainer: fschmid
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Administration
- Administrative Notifications
- Maintenance Model: Classic
- 1st Maintainer: fschmid
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- BackgroundTasks
- Maintenance Model: Classic
- 1st Maintainer: fschmid
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Badges
- Maintenance Model: Classic
- 1st Maintainer: mjansen
- 2nd Maintainer: N.A.
- Testcases: atoedt
- Tester: Thomas.schroeder
- Bibliographic List Item
- Maintenance Model: Classic
- 1st Maintainer: fschmid
- 2nd Maintainer: N.A.
- Testcases: mstuder
- Tester: miriamhoelscher
- Blog
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: PaBer
- Booking Tool
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: N.A.
- Testcases: e.coroian
- Tester: wolfganghuebsch
- Calendar
- Category and Repository
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: smeyer
- Testcases: kunkel
- Tester: miriamhoelscher
- Certificate
- Maintenance Model: Classic
- 1st Maintainer: mjansen
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: m-gregory-m
- Chat
- cmi5/xAPI Object
- Maintenance Model: Classic
- 1st Maintainer: ukohnle
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: EMok
- Comments
- Competence Management
- Maintenance Model: Classic
- 1st Maintainer: tfamula
- 2nd Maintainer: akill
- Testcases: atoedt
- Tester: ioanna.mitroulaki
- Component
- Maintenance Model: Classic
- 1st Maintainer: rklees
- 2nd Maintainer: fschmid
- Testcases: AUTHOR MISSING
- Tester: kunkel
- Contacts
- Maintenance Model: Classic
- 1st Maintainer: mjansen
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- ContentPage
- Maintenance Model: Classic
- 1st Maintainer: mjansen
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Course Management
- Maintenance Model: Classic
- 1st Maintainer: smeyer
- 2nd Maintainer: akill
- Testcases: lauener
- Tester: lauener , TESTER MISSING FOR LOC
- Cron Service
- CSS / Templates
- Maintenance Model: Classic
- 1st Maintainer: amstutz
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: fschmid
- Dashboard
- Maintenance Model: Classic
- 1st Maintainer: iszmais and lscharmer
- 2nd Maintainer: fschmid
- Testcases: kunkel
- Tester: silvia.marine
- Data
- Maintenance Model: Classic
- 1st Maintainer: rklees
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Data Collection
- Maintenance Model: Coordinator
- Coordinators: PerPascalSeeland & amstutz
- Testcases: mstuder
- Tester: mona.schliebs
- Database
- Maintenance Model: Classic
- 1st Maintainer: fschmid
- 2nd Maintainer: smeyer
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Didactic Templates
- ECS Interface
- Maintenance Model: Classic
- 1st Maintainer: PerPascalSeeland
- 2nd Maintainer: N.A.
- Testcases: SIG CampusConnect und ECS(A)
- Tester: SIG CampusConnect und ECS(A)
- EmployeeTalk
- Maintenance Model: Classic
- 1st Maintainer: tschmitz
- 2nd Maintainer: tfamula
- Testcases: N.A.
- Tester: qualitus.morgunova
- Exercise
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: N.A.
- Testcases: atoedt
- Tester: miriamwegener
- Export
- Favourites
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- File
- Forum
- Maintenance Model: Classic
- 1st Maintainer: mjansen
- 2nd Maintainer: nadia
- Testcases: FH Aachen
- Tester: e.coroian und anna.s.vogel
- General Kiosk-Mode
- Maintenance Model: Classic
- 1st Maintainer: rklees
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- GlobalCache
- Maintenance Model: Classic
- 1st Maintainer: fschmid
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- GlobalScreen
- Maintenance Model: Classic
- 1st Maintainer: fschmid
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Glossary
- Group
- HTTP-Request
- Maintenance Model: Classic
- 1st Maintainer: fschmid
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- ILIAS Page Editor
- IndividualAssessment
- Maintenance Model: Classic
- 1st Maintainer: rklees
- 2nd Maintainer: N.A.
- Testcases: rklees
- Tester: TESTER MISSING
- Info Page
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: smeyer
- Testcases: AUTHOR MISSING
- Tester: Fabian
- Initialisation Service
- Maintenance Model: Coordinator
- Coordinators: PerPascalSeeland
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- ItemGroup
- Language Handling
- Maintenance Model: Classic
- 1st Maintainer: kunkel
- 2nd Maintainer: katrin.grosskopf
- Testcases: AUTHOR MISSING
- Tester: kunkel
- Learning History
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: N.A.
- Testcases: ezenzen
- Tester: oliver.samoila
- Learning Module HTML
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Learning Module ILIAS
- Learning Module SCORM
- Maintenance Model: Classic
- 1st Maintainer: ukohnle
- 2nd Maintainer: N.A.
- Testcases: n.n., Qualitus
- Tester: n.n., Qualitus
- Learning Sequence
- Like
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: smeyer
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Logging
- Maintenance Model: Classic
- 1st Maintainer: smeyer
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Login, Auth & Registration
- Maintenance Model: Coordinator
- Coordinators: PerPascalSeeland & mjansen
- Testcases: AUTHOR MISSING
- Tester: vimotion , ILIAS_LM (OpenID) , fschmid (Shibboleth), Alexander Grundkötter, Qualitus (SAML)
- LTI
- Maintenance Model: Classic
- 1st Maintainer: ukohnle
- 2nd Maintainer: smeyer
- Testcases: AUTHOR MISSING
- Tester: stv
- LTI Consumer
- Maintenance Model: Classic
- 1st Maintainer: ukohnle
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: kiegel
- Mail
- Maintenance Model: Classic
- 1st Maintainer: mjansen
- 2nd Maintainer: nadia
- Testcases: AUTHOR MISSING
- Tester: Till Lennart Vogt/Test-Team OWL
- MainMenu
- Maintenance Model: Classic
- 1st Maintainer: fschmid
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: kunkel
- Maps
- Maintenance Model: Classic
- 1st Maintainer: rklees
- 2nd Maintainer: N.A.
- Testcases: rklees
- Tester: miriamhoelscher
- MathJax
- Media Objects
- Media Pool
- MediaCast
- Membership
- Maintenance Model: Classic
- 1st Maintainer: smeyer
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Metadata
- Maintenance Model: Classic
- 1st Maintainer: smeyer
- 2nd Maintainer: tschmitz
- Testcases: daniela.weber
- Tester: daniela.weber
- News
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: N.A.
- Testcases: Thomas.schroeder
- Tester: Thomas.schroeder
- Notes and Comments
- Notifications
- Object Service
- Maintenance Model: Classic
- 1st Maintainer: fawinike
- 2nd Maintainer: N.A.
- Testcases: N.A.
- Tester: N.A.
- Online Help
- Open ID Connect
- Maintenance Model: Classic
- 1st Maintainer: smeyer
- 2nd Maintainer: N.A.
- Testcases: N.A.
- Tester: N.A.
- Organisational Units
- Maintenance Model: Classic
- 1st Maintainer: rklees
- 2nd Maintainer: fschmid
- Testcases: wischniak
- Tester: qualitus.morgunova
- PDF
- Maintenance Model: Classic
- 1st Maintainer: gvollbach
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Personal and Shared Resources
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: scarlino
- Poll
- Maintenance Model: Classic
- 1st Maintainer: smeyer
- 2nd Maintainer: tschmitz
- Testcases: AUTHOR MISSING
- Tester: Qndrs
- Portfolio
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: N.A.
- Testcases Portfolio: ezenzen
- Testcases Portfolio Template: N.A.
- Tester Portfolio: KlausVorkauf
- Tester Portfolio Template: TESTER MISSING
- Precondition Handling
- Maintenance Model: Classic
- 1st Maintainer: smeyer
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: mkloes
- Rating
- RBAC / Access Control
- Refinery
- SAML
- Maintenance Model: Classic
- 1st Maintainer: mjansen
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: Alexander Grundkötter, Qualitus
- Search
- Maintenance Model: Classic
- 1st Maintainer: smeyer
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: Qndrs
- Session
- Setup
- Shibboleth Authentication
- Maintenance Model: Classic
- 1st Maintainer: fschmid
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: fschmid
- SOAP / Webservices
- Maintenance Model: Classic
- 1st Maintainer: Jephte
- 2nd Maintainer: mjansen
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Staff
- Maintenance Model: Classic
- 1st Maintainer: tfamula
- 2nd Maintainer: tschmitz
- Testcases: AUTHOR MISSING
- Tester: qualitus.morgunova
- Statistics and Learning Progress
- Maintenance Model: Classic
- 1st Maintainer: smeyer
- 2nd Maintainer: N.A.
- Testcases: suittenpointner
- Tester: suittenpointner
- Study Programme
- Survey
- System Check
- Maintenance Model: Classic
- 1st Maintainer: smeyer
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Tagging
- Tasks
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Taxonomy
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: N.A.
- Testcases: Tested separately in each module that supports taxonomies
- Tester: Tested separately in each module that supports taxonomies
- Terms of Services
- Maintenance Model: Classic
- 1st Maintainer: mjansen
- 2nd Maintainer: N.A.
- Testcases: Stefania Akgül (CaT)
- Tester: Heinz Winter (CaT)
- Test & Assessment
- Maintenance Model: Classic
- 1st Maintainer: dstrassner
- 2nd Maintainer: mbecker
- Testcases: SIG E-Assessment
- Tester: Stefania Akgül (CaT), Stefanie Allmendinger (FAU) , dehling , simon.lowe , rabah
- Tree
- Maintenance Model: Classic
- 1st Maintainer: smeyer
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- User Service
- Maintenance Model: Classic
- 1st Maintainer: fawinike
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: elena
- UICore
- Maintenance Model: Classic
- 1st Maintainer: tfuhrer
- 2nd Maintainer: fschmid
- Testcases: AUTHOR MISSING
- Tester: AUTHOR MISSING
- UI-Service
- Maintenance Model: Coordinator
- Coordinators: amstutz , rklees
- Test cases: Fabian
- Tester: kauerswald
- Used in Directories: src/UI
- Virus Scanner
- Maintenance Model: Classic
- 1st Maintainer: rschenk
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Web Access Checker
- Web Feed
- WebDAV
- Maintenance Model: Classic
- 1st Maintainer: fawinike
- 2nd Maintainer: rheer
- Testcases: fawinike
- Tester: kauerswald
- Weblink
- Maintenance Model: Classic
- 1st Maintainer: smeyer
- 2nd Maintainer: N.A.
- Testcases: nadine.bauser
- Tester: nadine.bauser
- Webservices
- Maintenance Model: Classic
- 1st Maintainer: Jephte
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
- Who is online?
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: N.A.
- Testcases: atoedt
- Tester: oliver.samoila
- Wiki
- Maintenance Model: Classic
- 1st Maintainer: akill
- 2nd Maintainer: N.A.
- Testcases: N.N., Uni Köln
- Tester: N.N., Uni Köln
- Workflow Engine
- xAPI/cmi5
- Maintenance Model: Classic
- 1st Maintainer: ukohnle
- 2nd Maintainer: N.A.
- Testcases: AUTHOR MISSING
- Tester: TESTER MISSING
The following directories are currently unmaintained:
- Services/Context
- Services/CSV
- Services/EventHandling
- Services/Excel
- Services/QTI
- Services/Randomization