ZeitAdler - SaaS Produkt in 3 Monaten entwickelt
Projektdauer: 3 Monate
Anzahl der Entwickler: 2
Zeilen Code: ~15.000
Arbeitsstunden: ~1.240
Programmiersprachen: TypeScript, Go, React.js, JavaScript
Technologien: Linux, Kubernetes, Redis, MariaDB, RabbitMQ, Docker, Jenkins
Software as a Service (SaaS) ist ein Softwarevertriebsmodell, bei dem Softwareanwendungen über das Internet bereitgestellt und von einem Softwareanbieter gehostet werden. Der Anbieter stellt die Anwendung über das Internet zur Verfügung und kümmert sich um Wartung, Updates und Support.
Idee
Vom ersten Entwurf zum finalen Logo
Anfangs hatten wir die Idee, passend zum Namen ZeitAdler einen Adler in das Logo zu integrieren. Nach mehreren Entwürfen und Anpassungen entschieden wir uns jedoch für ein schlichtes Logo mit einem Farbverlauf, wie hier rot umrandet zu sehen ist.
Prototyp Design
Das Design von etablierten Terminplanungstools wie Calendly und Reclaim.ai hat sich bereits am Markt bewährt. Daher haben wir uns an diesen bewährten Ansätzen orientiert und unsere eigenen Features ergänzt, anstatt das Rad neu zu erfinden. So entstand schließlich das folgende Prototyp-Design:
Beginn der Programmierung
Planung der Infrastruktur
Bevor wir mit der Programmierung begannen, planten wir die Infrastruktur. Wir entschieden uns für eine Microservice-Architektur, um die Skalierbarkeit und Wartbarkeit des Systems zu gewährleisten.
Die Herausforderung bei der Programmierung bestand darin, die einzelnen Services so zu gestalten, dass sie in einer Kubernetes-Umgebung mehrfach gestartet werden können, ohne dass es zu Dateninkonsistenzen kommt. Um dies zu gewährleisten, setzen wir auf Technologien wie RabbitMQ und Redis.
Die Infrastruktur besteht aus den folgenden Komponenten:
Beginn der Programmierung des Verwaltungsdashboards für die Mitarbeiter
Das Verwaltungsdashboard ist ausgelegt auf zwei Ansichten. Einmal für den Geschäftsinhaber und einmal für die Mitarbeiter. Der Geschäftsinhaber kann die Einstellungen für den Kalender und die Dienstleistungen vornehmen, während die Mitarbeiter ihre Kalendareinstellungen und Termine einsehen können.
Übersicht der Mitarbeiter
Einstellungsmöglichkeiten für den Kalender
Im Dashboard hat der Geschäftsinhaber die Möglichkeit, neue Dienstleistungen zu erstellen, bestehende zu bearbeiten oder zu löschen. Zudem kann er Mitarbeiter bestimmten Dienstleistungen zuweisen, was besonders praktisch ist, wenn ein Mitarbeiter nur bestimmte Dienstleistungen anbieten kann.
Beginn der Programmierung des Terminplaners für die Kunden
Um Kunden die Möglichkeit zu geben, Termine zu ihrer gewünschten Zeit und an ihrem bevorzugten Datum zu buchen, haben wir einen Terminplaner entwickelt. Dieser ermöglicht es den Kunden, Termine zu buchen, zu verschieben und bei Bedarf auch zu stornieren.
Versand der Terminbestätigungsemail
Nachdem der Kunde einen Termin gebucht hat, erhält er eine Terminbestätigung per E-Mail. In dieser E-Mail sind alle relevanten Informationen zum Termin enthalten, wie z.B. Datum, Uhrzeit und Dienstleistung.
Zahlungsabwicklung
Für die bereitsstellung von ZeitAdler haben wir uns für ein Abo Modell entschieden. Dieses ermöglicht es den Kunden, zwischen verschiedenen Zahlungsplänen zu wählen, die ihren individuellen Bedürfnissen entsprechen. So können sie z. B. zwischen einem monatlichen oder jährlichen Abonnement wählen. Für die Zahlungsabwicklung haben wir uns für Stripe entschieden, da es eine benutzerfreundliche API und eine einfache Integration bietet.
Erstellung einer Webpräsenz
Um potenziellen Kunden einen ersten Überblick über das Produkt zu geben, haben wir eine Webseite erstellt. Diese informiert umfassend über die Funktionen und Vorteile von ZeitAdler.