Halte es einfach
- 15 Minuten
|
|
|---|
Es ist oft, was Sie wegnehmen, anstatt das, was Sie hinzufügen, um Lösungen zuverlässiger zu machen. Das Einfache Halten von Elementen hilft dabei, Kontrollprobleme zu vermeiden, Ineffizienzen zu vermeiden und Fehlkonfigurationen oder unerwartete Probleme zu verhindern. Eine Überimplifizierung kann jedoch einzelne Fehlerpunkte zur Folge haben. Es geht darum, ein Gleichgewicht zu finden.
Beispielszenario
Contoso Travel kauft und integriert ein kleines Startup-Unternehmen mit einer beliebten webbasierten Reise-App. Die App ist beliebt, weil sie großartige Angebote mit Hotels und Fluggesellschaften erhält und Social Media für gezieltes Marketing verwendet.
Die App des Starts wurde mithilfe von Node.js erstellt und auf virtuellen Computern (VMs) ausgeführt, die sowohl in ihrem Rechenzentrum als auch in Amazon Web Services (AWS) gehostet werden.
Einfache Arbeitsauslastungskomponenten
Fügen Sie Ihrer Einrichtung nur Komponenten hinzu, wenn sie Ihnen helfen, Ihre Geschäftsziele zu erreichen. Konzentrieren Sie sich auf die Grundlagen.
Das Entwerfen für Geschäftsanforderungen kann zu einer einfachen Lösung führen, die einfach ausgeführt und verwaltet werden kann. Vermeiden Sie zu viele kritische Teile, da jeder ein potenzieller Fehlerpunkt sein kann.
Herausforderung von Contoso
- Mit einer Komponente der neuen App können Benutzer Feedback auf der Website geben, nachdem sie eine Reservierung vorgenommen haben. Die meisten Benutzer überspringen dieses Feature. Stattdessen bevorzugen sie die Verwendung der sozialen Medien des Unternehmens für Feedback, die häufiger für Marketing- und Benutzerinteraktionen verwendet wird.
Anwenden des Ansatzes und Umsetzen der Ergebnisse
Im Rahmen der ersten Version der Contoso Travel-Markenversion der App entfernt das Team das Feedbackfeature der Website.
Eine kleinere Codebasis bedeutet niedrigere Wartungs- und Betriebskosten. Und es wirkt sich nicht auf die geschäftlichen Anforderungen aus.
Standardisieren Des Lebenszyklus der Softwareentwicklung
Legen Sie klare Standards für Codierung, Bereitstellung und Prozesse fest, und dokumentieren Sie sie. Verwenden Sie automatisierte Prüfungen, um diese Standards zu erzwingen.
Standards helfen dabei, dinge konsistent zu halten und menschliche Fehler zu reduzieren. Die Verwendung von Standardbenennungskonventionen und Codestilführungslinien kann Qualität beibehalten und die Identifizierung von Ressourcen zur Problembehandlung vereinfachen.
Herausforderung von Contoso
Das Entwicklungsteam des Starts fehlt an definierten Standards. Sie verwenden überlappende Bibliotheken, erzwingen keine Codierungsstile, und ihre Releasepipelinen fehlen formale, automatisierte Testgates.
Das Contoso-Team findet die neue Codebasis aufgrund inkonsistenter Stile und Bibliotheksnutzung schwer zu verwalten.
Nach wichtigen Updates in der Produktion gibt es viele Probleme. Manchmal muss das Team das Rollback der Updates durchführen oder Hotfixes während der Bereitstellung anwenden. Aufgrund dieser häufig auftretenden Probleme muss das gesamte Team bei jeder Veröffentlichung von Updates für die Produktion helfen. Um dies noch schlimmer zu machen, verletzen diese Probleme den Ruf von Contoso und geben Benutzern eine schlechte Erfahrung.
Anwenden des Ansatzes und Umsetzen der Ergebnisse
Das Team, das die neue App unterstützt, funktioniert, um Codierungsstile zu erzwingen, Bibliotheken und Designmuster zu standardisieren und Freigabegates für automatisierte Tests zu formalisieren.
Sie dokumentieren alle neuen Tools, Entwurfsmuster und Stile, sodass es einfacher ist, die Arbeitsauslastung zu verwalten und Abweichungen während codeüberprüfungen zu erkennen.
Minimieren des Betriebs- und Entwicklungsaufwands
Verwenden Sie von der Plattform bereitgestellte Features und vorgefertigte Ressourcen, um geschäftsziele effektiv zu erfüllen.
Dieser Ansatz spart Entwicklungszeit und stützt sich auf bewährte Methoden, die in ähnlichen Projekten verwendet werden.
Herausforderung von Contoso
Für die erste Version der Contoso Travel-App verschiebt das Team die Node.js Lösung von VMs in Azure App Service, um von den integrierten Zuverlässigkeitsfeatures zu profitieren.
Die VM-Version verfügt über viele benutzerdefinierten Code für die Instrumentierung.
Anwenden des Ansatzes und Umsetzen der Ergebnisse
Während der ersten Migration zu App Service entfernt das Team den gesamten benutzerdefinierten Instrumentierungscode mithilfe der automatischen Instrumentierung von Application Insights.
Sie nutzen auch andere App Service-Funktionen wie automatischesCaling, Azure Key Vault-Integration und Zonenredundanz.