Feature Wiki
Tabs
(Project) Continuous Refactoring Initiative
Page Overview
[Hide]Samoila, Oliver [oliver.samoila], 09 JUL 2024
The project 'Continuous Refactoring Initiative' was closed.
It has become evident that there is insufficient interest in and opportunities for continuous and feature-independent investment in the refactoring of our code base.
I would like to thank all the people and institutions involved for the resources they have contributed.
This is a project page that bundles several development activities which belong for the entire ILIAS code base.
1 Aim of Project
The PHP 8 project was the biggest refactoring project ILIAS has gone through so far.
In the project we agreed on three development stages: Must-Packages, Should-Packages and Sustainability-Packages.
In general, must-packages were contracted and implemented. However, there was still a lot more to do – even if PHP 8 compatibility was to be achieved by the end of the PHP 8 project.
One can never point out enough that we achieved this goal as a community of the willing.
Many community-members were either already aware, or became aware in the meantime of the project, that we had to take care of the future of ILIAS - regardless of features.
ILIAS needs resources for its basic maintenance.
Developers/Maintainers who want to commit themselves to more extensive refacrtoring of their components - and thus to quality assurance and maintenance - should be supported for treatment of Should- and Sustainability-Packages and much more. This also can concern code style, the extension of unit tests, software architecture, PHP deprecations, performance issues and other tasks.
2 Involved Maintainers and Stakeholders
Probably all Core Maintainer:
- Schmid, Fabian
- Killing, Alexander
- Meyer, Stefan
- Jansen, Michael
- Kohnle, Uwe
- Famula, Thomas
- Amstutz, Timon
- Klees, Richard
- Kunkel, Matthias
- Neumann, Fred
- Großkopf, Katrin
- Strassner, Denis
- Schenk, Ralf
- Kergomard, Stephan
- Becker, Maximilian
- Vollbach, Guido
- Smaisz, Ingmar
- Per Pascal Seeland
- Thibeau Fuhrer
3 Timeline
|
| |
| | |
| | |
| |
4 Components that has been further refactored
Component | Maintainer / Developer | Refactoring | in contracted parts completed |
Global Cache | Fabian Schmid | implemented | ✓ |
Competence Management | Thomas Famula | partly implemented | ✓ |
Services_Preview | Fabian Schmid | implemented | ✓ |
UI-Service/KitchenSink | Contributer: Fabian Schmid | implemented | ✓ |
Dashboard | Lukas Scharmer | partly implemented | ✓ |
Services_Utilities » Exec-Calls/zip/unzip | Fabian Schmid | implemented | ✓ |
Component | Maintainer / Developer | Refactoring | in contracted parts completed |
5 Contributions
- Universität Hannover / Land Niedersachsen
- Universität Bern
- ILIAS open source e-Learning e.V.
- Hochschule für Polizei und öffentliche Verwaltung Nordrhein-Westfalen
- Duale Hochschule Baden-Würrtemberg
- Technische Hochschule Ostwestfalen-Lippe
This is a continuation of the efforts from the extensive involvement of the Community in the PHP 8 project.
Please contact Samoila, Oliver [oliver.samoila] to get involved.
6 General Discussion
Please discuss specific questions of feature requests on the related feature wiki pages. This discussion section is only for a general discussion of the project and its realisation.
JourFixe, ILIAS [jourfixe], 21 FEB 2022: Samoila, Oliver [oliver.samoila] presented the project at the Big Projects Jour Fixe and answered questions.
- Relevance for strategic ILIAS development: very high for sustainability of ILIAS
- Plan for ILIAS 9: See project page
- Chance of realisation: use of quality assurance funds of ILIAS association; personell: depending on free capacities until October
- Dependencies: to be clarified for each component
- Impact on other development activities: to be clarified for each refactoring
Statement Technical Board, 2022 Apr 6: The Technical Board agrees that continuous refactoring is a key aspect in ILIAS. We believe that we need strategies to ensure, that this refactoring activity will continuously accompany the work on ILIAS OSS. Since we believe this to be a necessary task for all future ILIAS versions, we do not give this special priority for the next ILIAS versions. However, we fully support and endorse activities around it for ALL upcoming ILIAS versions. Since we believe ILIAS Refinement to be a continuous project, we should take care to only support measures that we have the capacity to sustain for all releases in years to come.
JourFixe, ILIAS [jourfixe], 27 NOV 2023: Oliver presented the planned steps for the project for ILIAS 10. No additional comments.
The Technical Board agrees that continuous refactoring is a key aspect in ILIAS. We believe that we need strategies to ensure, that this refactoring activity will continuously accompany the work on ILIAS OSS. Since we believe this to be a necessary task for all future ILIAS versions, we do not give this special priority for the next ILIAS versions. However, we fully support and endorse activities around it for ALL upcoming ILIAS versions. Since we believe ILIAS Refinement to be a continuous project, we should take care to only support measures that we have the capacity to sustain for all releases in years to come. We see that this project can and should be considered whenever a component is updated or expanded.
Statement UX/UI/A11y-Experts, 6 DEC 2023
A modern and stable code architecture is necessary to enable and tackle improvements in UI/UX/accessibility. The project has already brought significant improvements in the past. We therefore welcome this Big Development Project and would give this a prioritization level 2.
08 DEC 2023: Refactoring the ILIAS source code is a crucial part of our sustainability strategy and must be pursued on an ongoing basis. The Product Manager strongly recommends that ILIAS Society and ILIAS users should provide this initiative with the means to keep components up-to-date, stable and secure on an annual basis.
Last edited: 18. Oct 2024, 17:42, Kunkel, Matthias [mkunkel]