ILIAS-Blog
Bericht aus dem Technical Board Teil 1 - Quality Reviews
Wir haben ein Interview mit Richard Klees vom Technical Board geführt. Die spannenden Einblicke in die Arbeit des TBs wollen wir euch natürlich nicht vorenthalten. Da das Interview sehr lang und informativ war und wir kein Thema kürzen wollen, wird es hier im Blog auf zwei Beiträge aufgeteilt. Für mehr Lesespaß, mehr Informationen und mehr Spannung beim Warten auf den zweiten Teil. ;-)
Unser letzter Bericht aus dem Technical Board ist nun schon fast zwei Jahre her. Da wird es Zeit, dass wir uns mal wieder auf den neusten Stand bringen. Vielen Dank, dass du dir die Zeit dafür nimmst, Richard.
Für die Leser und Leserinnen unter uns, die mit der Arbeit des Technical Boards vielleicht nicht so vertraut sind: kannst du uns kurz erklären, was ihr beim Technical Board genau macht?
ILIAS wird von einer großen Community entwickelt. Da gibt es oftmals verschiedene Meinungen und Ansichten, die aufeinandertreffen und dann muss es jemanden geben, der in der Mitte steht und die Dinge zusammenhält. Matthias als Produktmanager ist das für die Funktionen von ILIAS und wir, das Technical Board, sind das für die Umsetzung.
Das Technical Board ist also so etwas wie die Entwicklungsleitung von ILIAS. Von der Mitgliederversammlung werden fünf Personen für zwei Jahre gewählt. Deren Aufgabe ist es dann, die Softwareentwicklung von ILIAS zu begleiten und Vorschläge für Maßnahmen und Strategien zu machen, die vor allem Querschnittsfunktionen betreffen. Das sind Themen wie Security, Accessibility, die Wartung der Software und Qualitätssicherung. Wir machen zum Beispiel Vorschläge für Prozessänderungen oder -neueinfühungen oder helfen durch Beratung, das Produkt qualitativ besser zu machen. Das betrifft den Code, aber auch sichtbare Merkmale an der Oberfläche und der Funktionsweise.
Wir haben auch eine Strategie veröffentlicht, in der nachzulesen ist, was wir uns für die nächste Zeit wünschen.
Seit dem letzten Bericht hat sich gerade um ILIAS 8 viel getan. Etwas verspätet wurde im April letzten Jahres die erste Stable Version von ILIAS 8 veröffentlicht. Und jetzt ist auch schon die Testingphase von ILIAS 9 in vollem Gange.
Du hast uns beim letzten Mal von den Code Reviews berichtet. Entwickler und Entwicklerinnen werfen dabei einen Blick auf den Code von anderen und geben Feedback. Ganz nach dem Motto: Vier Augen sehen mehr als zwei. Gab es vor ILIAS 8 keine internen Reviews?
Man kann nicht sagen, dass in der Vergangenheit keine Code Reviews von ILIAS gemacht wurden, aber das Vorgehen war von Institution zu Institution sehr unterschiedlich. Es gab kein gemeinsames Verständnis und keine Absprachen in der Community, ob und wie Reviews gemacht werden sollen. Zwar gab es schon in Pull Requests Reviews, aber die betrafen eben nur die Pull Requests. Bei der Entwicklung von ILIAS 8 wurden Code Reviews erstmals systematisch für den gesamten Code gemacht.
Das lag daran, dass sehr große Umbauten stattfanden, die zum Teil auch Eigenschaften des Codes betrafen, die man nicht direkt sehen kann. Wir wollten in diesem Zuge, dass jeder umgebaute Teil des Codes von jemand anderem aus einer anderen Organisation einmal angeguckt wird. Das war das erste Mal, dass wir einen gemeinsamen Prozess dafür hatten, wie Code geprüft wird.
Unser aktuelles Ziel unter dem Stichwort Quality Reviews ist, dass wir diesen Prozess verstetigen. Es wird nicht immer so umfangreich sein können, wie bei ILIAS 8, wo wir wirklich jedes Modul in ILIAS angeguckt haben, aber unser Ziel ist, dass in einem Rotationsverfahren alle paar Releases an jedem Teil von ILIAS wieder vorbeigeschaut wird.
Wenn du jetzt zurück blickst auf eure Erfahrungen: hat sich der Aufwand gelohnt?
Ja, ich denke schon. Es sind zum Beispiel ganz konkrete Änderungsvorschläge aus den Reviews hervorgegangen. Außerdem geht es auch darum, dass das, was gefordert wurde, dauerhaft umgesetzt wird. Nur weil eine Komponente mit ILIAS 8 auf einen bestimmten Standard gebracht wurde, heißt es nicht, dass sie nie mehr geprüft werden muss. Denn dann könnte der einmal erreichte Standard ja auch einfach wieder verfallen. Das heißt es geht auch darum, den aktuellen Zustand zu sichern.
Ein wichtiger Punkt bei dem Verfahren ist auch, dass es den Leuten erlaubt in anderen Code reinzuschauen. Sonst beschäftigt man sich meistens mit dem, was man selbst verwaltet, und jetzt musste man sich auf einmal mit dem beschäftigen, worum sich sonst andere kümmern. Das heißt der Überblick darüber, was eigentlich so existiert, was für Patterns und Vorgehensweisen existieren, ist meiner Meinung nach bei allen größer geworden.
Außerdem setzt es einen Standard, wenn man eine Prüfung macht. An vielen Stellen hatten wir vorher nur sehr implizite Vereinbarungen. Mit ILIAS 8 wurde eine Liste erstellt, die abgearbeitet und bewertet werden konnte, und das war sehr positiv für unser gemeinsames Qualitätsverständnis.
Vielen Dank für die Ausführung. Und wie soll die Organisation der Quality Reviews zukünftig laufen?
Das ist das, womit wir momentan tatsächlich etwas kämpfen. Die Idee ist aktuell, dass wir das auf Basis von freiwilligen Beiträgen von Service Providern oder Institutionen machen. Wir hätten also gerne ein Vorgehen, das ohne viel Funding stattfinden kann. Wir wünschen uns außerdem, dass es jemanden gibt, der sich um das Projektmanagement kümmert, ungefähr mit zwei Stunden pro Woche für das nächste Quartal. Es würde dann darum gehen, Leute anzusprechen und zu fragen, ob sie Komponenten anschauen wollen und anschließend einen Zeitplan im Überblick zu behalten. Nur organisatorische und keine technischen Aufgaben also. Und dann ist die Idee, dass ein paar Komponenten per Zufall ausgewählt werden und diese dann zusammen mit einigen weiteren, in denen im neuen Release viel passiert ist, angesehen werden.
Eine Idee für ein Vorgehen gibt es also, nur noch niemanden, der sich dieser Aufgabe widmen möchte. Wenn da jemand dran Interesse hat, kann er oder sie sich gerne bei uns melden. Es ist keine komplizierte Aufgabe.
Wir können leider momentan kein Geld dafür geben, aber wir glauben, dass es eine gute Möglichkeit ist, enger an die Softwareentwicklung von ILIAS heranzukommen und dadurch Leute aus diesen Kreisen und die Abläufe kennenzulernen. Und man kann sich natürlich dadurch auch empfehlen. Es wird mit Sicherheit nicht das letzte Mal sein, dass es eine Projektmanagementaufgabe in der Community geben wird und diese Aufgabe bietet die Möglichkeit zu schauen, ob solche Aufgaben generell etwas sein könnten.
Wir richten diese Bitte mal direkt an die Leser und Leserinnen weiter. Gesucht wird aktuell eine Person für das Projektmanagement der Quality Reviews. Eine Stellenbeschreibung findet ihr hier und mehr über die Quality Reviews könnt ihr in GitHub nachlesen.
Nächste Woche wird der zweite Teil des Interviews mit Richard veröffentlicht. Dann erfahren wir, welche weiteren Änderungen es Dank des Technical Boards in jüngster Zeit gab. Bleibt gespannt.