Dienste: Unterschied zwischen den Versionen

Aus Das Sopra Wiki
Langenfeld (Diskussion | Beiträge)
typos
GerritF (Diskussion | Beiträge)
Gramatikfehler
Zeile 50: Zeile 50:
|-
|-
|[[File:discourse_logo.png|100px|link=https://discourse.sopranium.de|alternativtext=|zentriert]]Discourse
|[[File:discourse_logo.png|100px|link=https://discourse.sopranium.de|alternativtext=|zentriert]]Discourse
|[https://discourse.sopranium.de Discourse] ist eine Open-Source Diskussions-Plattform, deren Funktionalität an Seiten wie [https://stackoverflow.com/ Stackoverflow] oder auch das [https://community.monogame.net/ Monogame-Forum] angelehnt ist.
|[https://discourse.sopranium.de Discourse] ist eine Open-Source Diskussions-Plattform, deren Funktionalität an Seiten wie [https://stackoverflow.com/ Stackoverflow] oder auch dem [https://community.monogame.net/ Monogame-Forum] angelehnt ist.


Genaueres über die Features finden Sie unter [https://www.discourse.org/features Discourse] oder einfach direkt auf der Seite.
Genaueres über die Features finden Sie unter [https://www.discourse.org/features Discourse] oder einfach direkt auf der Seite.

Version vom 13. Oktober 2021, 12:04 Uhr

services.sopranium.de

Das Sopra soll eine realitätsnahe Entwicklungsumgebung simulieren, und stellt dafür eine Reihe von Services zur Verfügung, die auch in einem Open-Source oder Unternehmensprojekten zum Einsatz kommen könnte und die Gruppen durch nützliche Dienste unterstützt.

Sämtliche zur Verfügung gestellten Dienste sind zur einfachen Übersicht über die Seite services.sopranium.de erreichbar. Nach der Gruppeneinteilung erhalten Sie eine Email, die zur Einrichtung ihres Accounts auffordert. Sollten Sie Probleme bei der Benutzung der Dienste haben, kontaktieren Sie uns bitte via sopra-crew@informatik.uni-freiburg.de. Melden Sie sich bitte auch falls Sie bereits einen Account bei uns gehabt haben und beide Accounts zusammenführen wollen. Falls Sie im Fragebogen die gleichen E-Mailadressen verwendet haben ist dies bereits automatisch passiert.



Dienste

Die folgende Tabelle gibt einen Überblick über alle Dienste die im Sopra zur Verfügung gestellt werden, und deren Nutzen für das Sopra.

Dienst Beschreibung Was ist der Nutzen?
Entwicklung
Gitea
Gitea ist erweitert Git-Repositories um ein Webinterface und Funktionen zur einfacheren Zusammenarbeit wie einen Issuetracker. Im Sopra werden alle Gruppe und Gruppenrepositories von einer Gitea-Instanz verwaltet. Folgende Funktionen sind hier zu finden:
  • Das Gruppenrepository und die URL um das Repository zu Clonen
  • Den Issuetracker um die Gruppenaufgaben zu veralten
  • Eine Anzeige ob der letzte Commit per Jenkins gebaut werden konnte
Jen
Jenkins
Jenkins ist ein Open-Source Werkzeug zur kontinuierlichen Integration d.h. um automatisch jede neue Änderung an einer Software zu kompilieren, Tests und statische Analysen auszuführen, usw. Im Sopra baut ein Jenkins jeden Commit, der auf Gitea gepusht wird. Binnen weniger Minuten ist sichtbar:
  • Ob alle Dateien eingecheckt wurden, die zum Kompilieren notwendig sind
  • Ob die Änderungen zufällig nur auf deinem System gebaut haben (z.B. wegen temporärer Dateien), was alle Teammitglieder aufhalten würde bis der Fehler behoben wird.
  • Fehlermeldungen und der Bauvorgang lassen sich auf jenkins.sopranium.de einsehen.

Außerdem erzeugt Jenkins bei Commits auf dem release branch ein Release in Gitea.

Sonar
Sonar Cube analysiert Programmcode eines Projekts und weist auf problematische Stellen hin d.h. Stellen die Coding Conventions verletzen, oder bekannten Problemmustern entsprechen, z.B. mehrmals vorkommende Codestellen oder Codeconstrukte die häufig zu Fehlern führen. Im Softwarepraktikum wird bei jedem Commit der Code mit Sonar analysiert:
  • Die Analysen von Sonar zeigen verbesserungswürdige Stellen im Programmcode. Gerade die als Bugs oder Code Smells markierten Meldungen können auf echte Fehler und Unsinnigen code hinweisen. Mehr informationen zu der Bedeutung der einzelnen Metriken finden sie hier.
  • Mit dem Tag "Resharper" versehene Meldungen entsprechen der Analyse von Resharper und werden für die Beurteilung der Rahmenbedinungen verwendet.

Sonar sollte zu den ersten Anlaufstellen gehören, wenn Sie die Codequalität ihres Projekts verbessern wollen.

Kommunikation
Discourse
Discourse ist eine Open-Source Diskussions-Plattform, deren Funktionalität an Seiten wie Stackoverflow oder auch dem Monogame-Forum angelehnt ist.

Genaueres über die Features finden Sie unter Discourse oder einfach direkt auf der Seite.

Hier haben Sie die Möglichkeit öffentlich Fragen an Dozenten, Tutoren und Kommilitonen zu stellen, und natürlich auch zu beantworten:
  • Technische Fragen zur Entwicklungsumgebung
  • Fragen zum Ablauf
  • Fragen zu Formalien und Benotung
  • Fragen zu Monogame und C#

Für Fragen und persönliche Probleme (z.B. HisInOne, Prüfungsamt) sowie Probleme oder Streit mit Tutoren oder anderen Studierenden kontaktieren Sie bitte direkt die Dozenten, am Besten im Mattermost.

MML
Mattermost
Mattermost ist eine Open-Source Chat-Plattform die in ihrer Funktionalität an Chatprogramme wie z.B. Discord oder Slack erinnert. Hier steht Ihnen als Gruppe neben den öffentlichen Chaträumen auch ein eigener

Chatraum zur Verfügung.

Mattermost bietet alle Features, die man von derartigen Programmen erwartet, insbesondere auch Android oder iOS Apps.

Wir verwenden Mattermost als Chat-Plattform.
  • Mattermost eignet sich insbesondere um während dem Entwickeln miteinander zu sprechen und Probleme schnell zu klären.
  • Schnell Kontakt mit den Dozenten, Teammitgliedern oder dem Tutor aufzunehmen z.B. um während der Sprechstunde einen Videochat zu vereinbaren um einfach und unkompliziert eine Frage zu stellen.
Organisation
Dashboard
Das Dashboard aggregiert nützliche Metriken über das Sopra.


Das Dashboard ist mit Grafana realisiert und wird im Moment nur täglich aktualisiert. Zu Beginn des Softwarepraktikums sehen Sie dort noch keine Daten, da diese erst im Laufe der Zeit anfallen.

Das Dashboard zeigt Statistiken über ihre Arbeit im Sopra:
  • Bereits erreichte Punkte aus den Sprints
  • Verbuchte geschätzte, und verbuchte gearbeitete Zeit
  • Anonymisierte Ranglisten über alle Soprateilnehmer
A
Keycloak
Wir verwenden zur zentralen Benutzerverwaltung Keycloak. Unter diesem Link können Sie auf Ihre Accountdaten zugreifen und z.B. Ihr Passwort ändern oder 2FA (2-Faktor-Authentifizierung) aktivieren. Keycloak sorgt für einen einheitlichen Login auf allen Diensten. Auf der Keycloak Seite kann das Passwort und die Email für Keycloak geändert werden (das ändert nicht unbedingt die Email die in den einzelnen services eingetragen ist).

Erstbenutzung

Nach der Gruppeneinteilung erhalten Sie von unseren Diensten eine Reihe von Mails. In der Mail von SoPra Accounts finden Sie einen Link zur Aktualisierung Ihres Accounts auf sso.sopranium.de. Nachdem Sie Ihren Account eingerichtet haben können Sie alle aktuell verfügbaren Dienste über services.sopranium.de erreichen.

Manche von diesen Diensten müssen Sie bei der Erstbenutzung kurz konfigurieren. Diese Konfiguration wird in diesem Artikel beschrieben. Außerdem gibt es hier eine Kurzübersicht über alle aktuell verfügbaren Dienste.

Sopra Accounts (Keycloak)

Zu beginn des Softwarepraktikums erhalten Sie eine Mail in der Sie zur aktualisierung Ihres Useraccounts aufgefordert werden. Folgen Sie dem Link und führt Sie gemäß den oben stehenden drei Schritten die Accounteinrichtung durch. Da Ihre Emailadresse und ihr Username bereits aus den Fragebogendaten entnommen wurde, müssen Sie lediglich ein Passwort für Ihren Account setzen.

Gitea

Einloggen bei Gitea mit Keycloak

Falls Sie Gitea nicht über services.sopranium.de sondern direkt über git.sopranium.de aufrufen, könnten Sie dieser Login-Maske begegnen. Verwenden Sie hier den Tab "Sign In" und klicken Sie dann unten auf "Sign In With OpenID" um die Authentifizierung via Keycloak zu benutzen.



Discourse

Discourse's Eingabemaske zur Bestätigung der übermittelten Daten. Sie können hier einfach "Neues Benutzerkonto erstellen" drücken.

Beim ersten Login zeigt Ihnen Discourse eine Eingabemaske in der die von Keycloak übermittelten Daten noch einmal angegeben sind. Sie können hier einfach auf "Neues Benutzerkonto erstellen" drücken.