Einleitung: Individueller Teil: Konstantin Hintermayer
All checks were successful
Gemini Writing Review / gemini-review (pull_request) Successful in 1m22s
Word Count / count-words (pull_request) Successful in 32s

This commit is contained in:
2026-03-04 11:14:00 +01:00
parent a6aad1478f
commit c51a6f09b4

View File

@@ -3,6 +3,51 @@ include_toc: true
gitea: none
---
## 1. Einleitung des individuellen Teils
In diesem Abschnitt wird meine persönliche Aufgabenstellung im Rahmen des Projektes (`Alumnihub`) beschrieben.
### Auftrag / persönliche Aufgabenstellungen
Meine Zuständigkeiten und Verantwortlichkeiten:
- Product Owner
- Infrastruktur
- Entwicklung
- Auswertungen
- Schwarzes Brett
### Motivation
Lernen von ASP.NET und der Entwicklung mit Blazor und Oqtane. Für Webentwicklung habe ich privat Interesse.
## 2. Anforderungen an das entwickelte Modul bzw. die Funktionalität
- funktionale / nichtfunktionale Anforderungen
- Use Cases
## 3. Technische Grundlagen
Mein Aufgabenbereich umfasst einerseits die Entwicklung eigener Module, sowie das Bereitstellen des Services. Als Betriebsystem hab ich mich für Linux entschieden, einfach da ich mit Linux im Serverumfeld die meisten und besten Erfahrungen gemacht habe.
(Diese Entscheidung wurde gemeinsam getroffen:)
Auch steht die Wahl der Programmiersprache und des CMS an. Nachdem wir im Unterricht fast ausschließlich mit C# entwickelt haben und nicht in eine komplett unbekannte Entwicklungsumgebung abdriften wollten, haben wir uns für Webentwicklung mit ASP.NET Core 9 und (upgrade im Lauf der Diplomarbeit auf .NET core 10) dem CMS Oqtane entschieden. Auch hier gab es einige Kandidaten:
- Piranha CMS
>Auf den ersten Blick nicht so flexibel wie Oqtane. Basiert auf .NET 8.0. Nicht so aktiv gewartet wie Oqtane.
- Umbraco
>Viel Arbeit mit Partials, welche in der Admin Oberfläche geschieht. Aber sehr gut Dokumentiert. Wirkt nicht so flexibel.
- DNN / Dot Net Nuke
>Platzhirsch. Kennt man, wird von der DNN Foundation gewartet. Arbeitet mit dem Dotnet Framework, welches nicht unter Linux läuft. Und ein Windows Server stelle ich nicht einfach so ins Internet, ganz von den Lizenzkosten abgesehen.
- Oqtane
>Schlecht Dokumentiert, auf den ersten Blick sehr Modular und Flexibel.
Am Ende haben wir uns für das Oqtane Framework trotz seiner schlechten Dokumentation entschieden.
Im Bereich der Datenbanken musste ich mich mir ein paar Fragen stellen.
1. Auf welche Art Datenbank setzen wir? SQL, NoSQL, Graph, ...
2. Mit welcher speziellen Implementiereung bekommen wir support und haben Wissen im Team?
3. Ist das auserkorene System kompatibel mit dem CMS auf dem wir aufbauen?
Es war von Anfang an klar, dass es ein SQL basiertes System wird, da wir im Team nur mit SQL basierten Systemem erfahrungen haben. Außerdem unterstützt unser CMS (Oqtane) nur SQL basierte Systeme. In der Linuxwelt kommen jetzt nur noch ein paar Datenbanken in die Auswahl: PostgreSQL, MySQL / MariaDB, SQLite. Da ist die Wahl auf ProstgreSQL gefallen. Grund dafür war meine Vorerfahrung mit diesem DBMS, welche ich im Nebenjob errungen habe.
# Technologie
## Entwicklung mit ASP.NET (Was ist Blazor? / Was ist Razor? / Kestrel)
## Was ist Oqtane? Architektur von Oqtane?