Plattform für Veterinärprotokolle: Frontend-Entwicklung

VCPR.ORG baut eine Plattform zur Unterstützung von Tierärzten und ihren Kunden mit der Erstellung, Verschreibung und Überwachung von Tierbehandlungsprotokollen. Die Plattform umfasst ein Backend, das Protokolle, Rezepte und Fälle verwaltet, und bietet eine API, die von drei Frontend-Apps verwendet wird, die auf verschiedene Benutzergruppen zugeschnitten sind. Unabhängige Entwickler können ebenfalls auf die API zugreifen. Der Protokolleditor ermöglicht es Tierärzten, Protokolle zu erstellen und zu verschreiben, und mit der OnFarm-App können Kunden Fälle registrieren und vorgeschriebene Protokolle einsehen. Eine Verwaltungs-App ermöglicht es Admin-Benutzern, Benutzer, Konten, Arzneimittellisten und andere Informationen zu verwalten. Der Kunde, ein autodidaktischer Softwareentwickler und Tierarzt, entwickelte mit Mitteln des USDA eine frühe Version der Plattform, benötigte jedoch Hilfe bei der Verwaltung des Projekts und bei der Frontend-Entwicklung. Das Backend ist in Scala mit dem Play Framework geschrieben und das Frontend ist in React.
Das Hauptziel war es, die Anwendung zu reparieren und zu stabilisieren.
Ein bestehendes Projekt zu übernehmen ist nie einfach. Der Kunde hatte einige Bedenken hinsichtlich der Stabilität der Anwendung und einer Liste möglicher Fehler, die ihm aufgefallen waren. Dies war jedoch nicht die endgültige Liste der Probleme. Wir haben mit dem Kunden vereinbart, dass wir mit der Arbeit an dem Projekt beginnen werden. Machen Sie sich mit dem Code vertraut, schreiben Sie die Produktanforderungen auf und testen Sie den aktuellen Stand der Anwendung, um festzustellen, ob wir in der Lage sind, innerhalb der angegebenen Frist fertig zu werden.
Um eine enge Zusammenarbeit mit dem Kunden aufzubauen (auch der Backend-Entwickler) haben wir unsere agilen Prozesse erklärt und in unsere Tools (Jira, Confluence) integriert. Wir haben uns auch dem Slack-Channel des Kunden angeschlossen, um eine schnelle und effektive Kommunikation zu ermöglichen.
Obwohl wir beauftragt wurden, das Frontend zu reparieren und zu verbessern, mussten wir dennoch die gesamte Plattform verstehen, um den Kunden effektiv dabei zu unterstützen, sein Ziel zu erreichen.
Unser Team bestand aus dem Kunden als Backend-Entwickler, zwei Frontend-Entwicklern, einem Tester und einem Product Owner. Die Koordination der Arbeit zwischen Backend und Frontend war eine Herausforderung, aber wir konnten uns immer auf die nächsten Schritte einigen. Eine weitere Herausforderung war der bestehende Code, der eine alte Version von React mit einer Architektur verwendete, die Verbesserungspotenzial bot.
Während des Projekts war unser Team in der Lage um den vorhandenen Code zu analysieren und zu verstehen, wichtige Probleme zu beheben und die Codequalität zu verbessern, indem modernes React mit funktionalen Komponenten und Hooks verwendet wird. Wir haben auch die Produktanforderungen für die einzelnen Anwendungen aufgeschrieben und auf dieser Grundlage waren wir in der Lage, alle Fehler auf der Plattform zu identifizieren, zu spezifizieren und zu beheben. Um alles innerhalb des vorgegebenen Zeitrahmens zu bewältigen, vereinbarten wir mit dem Kunden, einen zweiten Frontend-Entwickler einen Monat vor Ablauf der Frist hinzuzufügen, sobald wir den Umfang und die benötigte Kapazität besser verstanden hatten.
Als Ergebnis der Zusammenarbeit, die Anwendung ist jetzt stabil, ohne größere Probleme und mit neuen Funktionen ausgestattet. Der Kunde ist zufrieden mit unserer Fähigkeit, auf seine spezifischen Bedürfnisse zu hören und darauf einzugehen, uns schnell an die bestehende Codebasis anzupassen (auch wenn einige Technologien für uns neu waren) und schnelle Fortschritte zu erzielen. Die Zusammenarbeit ist noch nicht abgeschlossen.