I Einführung
A. Zweck der Richtlinien
Der Zweck dieser Richtlinien für die Softwareentwicklung besteht darin, einen einheitlichen und qualitativ hochwertigen Standard über alle Softwareentwicklungsvorhaben innerhalb unserer Organisation hinweg zu schaffen – sowohl für interne als auch für externe Entwickler.
-
Qualität: Die Sicherstellung hochwertiger Software steht im Mittelpunkt dieser Richtlinien. Wir streben nach zuverlässiger, effizienter, robuster und wartbarer Software, die ein herausragendes Benutzererlebnis bietet. Diese Richtlinien leiten Entwickler zu bewährten Praktiken an, die die Gesamtqualität ihres Codes verbessern, und legen Standards für Codestruktur, Entwurfsmuster, Testmethoden und mehr fest.
-
Erste Schritte: Die Richtlinien dienen als wertvolle Ressource für alle Entwickler in unseren Projekten – ob neu oder erfahren. Sie vermitteln ein klares Verständnis unserer Erwartungen und Standards für die Softwareentwicklung, unterstützen die Einarbeitung neuer Teammitglieder und dienen allen Entwicklern als kontinuierlicher Bezugspunkt. Die Einhaltung dieser Richtlinien gewährleistet eine reibungslose Integration in unsere Entwicklungsprozesse und erhält ein hohes Produktivitätsniveau.
-
Verständlicher Code und verständliche Architektur: Wir sind überzeugt vom Grundsatz, dass guter Code selbsterklärend und wartbar ist. Daher betonen diese Richtlinien Praktiken, die sauberen, lesbaren und selbstdokumentierenden Code fördern, was zu Architekturen führt, die verständlich und leicht zu navigieren sind. Sie empfehlen klare Namenskonventionen, eine kohärente Struktur, ausreichende Dokumentation und den effizienten Einsatz von Entwurfsmustern – alles mit dem Ziel, Software zu erzeugen, die nicht nur funktional, sondern auch verständlich ist, sowohl auf Code- als auch auf Architekturebene.
Zusammengefasst besteht der Zweck dieser Richtlinien darin, ein Umfeld zu fördern, in dem alle Entwickler – intern wie extern – konsistent exzellente, robuste und wartbare Software erstellen können und in dem jeder, der jetzt oder in Zukunft am Projekt beteiligt ist, die Codebasis effizient verstehen und dazu beitragen kann.
B. Geltungsbereich der Richtlinien
Diese Richtlinien für die Softwareentwicklung sollen einen einheitlichen und qualitativ hochwertigen Standard für eine breite Palette von Kontexten innerhalb unserer Organisation bereitstellen. Sie sind auf breite Anwendbarkeit ausgelegt und ihr Geltungsbereich erstreckt sich auf die folgenden Bereiche:
-
Alle Softwareentwicklungsprojekte: Diese Richtlinien sollten auf alle Softwareentwicklungsvorhaben innerhalb der Organisation angewendet werden und decken eine breite Palette von Projekten ab, darunter Produktentwicklung, Entwicklung interner Werkzeuge sowie Forschungs- und Entwicklungsinitiativen.
-
Externe Zusammenarbeit: Projekte, an denen externe Entwickler, Auftragnehmer oder Drittunternehmen beteiligt sind, sollten diese Richtlinien einhalten. Wir möchten Einheitlichkeit gewährleisten und denselben hohen Qualitätsstandard wahren, unabhängig davon, ob die Arbeit intern oder extern erfolgt.
-
Partnerschaften oder Joint Ventures: Wenn unsere Organisation Partnerschaften oder Joint Ventures eingeht, sollten diese Richtlinien als leitende Grundsätze für alle daran beteiligten Softwareentwicklungsprozesse aufrechterhalten werden.
-
Phasen des Projektlebenszyklus: Diese Richtlinien gelten für die üblichen Phasen des Softwareentwicklungslebenszyklus, vom ersten Entwurf und der Entwicklung bis hin zu Test und Deployment. Ausnahmen können für Prototypen oder Proof-of-Concept-Software (PoC) gelten, bei denen rasches Erkunden und Experimentieren Vorrang vor der strikten Einhaltung dieser Richtlinien haben kann. Sollte ein Prototyp oder PoC jedoch ein Stadium erreichen, in dem er ernsthaft für den Produktiveinsatz in Betracht gezogen wird, sind diese Richtlinien anzuwenden.
-
Technologie- oder domänenspezifische Projekte: Unabhängig vom Technologie-Stack oder der Domäne sollten diese Richtlinien so genau wie möglich befolgt werden. Auch wenn bestimmte Einzelheiten je nach Technologie oder Domäne variieren können, bleiben die Kernprinzipien der Erstellung qualitativ hochwertiger, wartbarer und verständlicher Software über alle Tech-Stacks hinweg gleich.
C. Technologie-Stack
DO Programmierung in C# für das Backend und in Typescript für die Frontend-Entwicklung