Wie Websites aus 100.000 US-Dollar entwickelt werden

Bild

In den letzten 7 Jahren habe ich einzelne IT-Projekte im Rahmen des von mir geleiteten Webstudios verwaltet und in dieser Zeit gute Erfahrungen mit großen Projekten gesammelt, die ich mit Ihnen teilen möchte. Meine Kunden kommen normalerweise aus den USA, Frankreich und Deutschland, aber es gibt abgeschlossene Projekte in Kanada, der Schweiz, Dänemark, Australien, Japan usw. Ich entwarf ein soziales Netzwerk, eine Online-Auktion, einen Fitnesswettbewerb, einen Service für die Auswahl von Autoteilen, die Lieferung von Lebensmitteln, Online-Büros für den Empfang und die Bearbeitung von Bestellungen, Handelsflächen und andere Arten von Dienstleistungen. Wie Sie sehen können, sind die Projekte unterschiedlich, aber sie sind durch ein Unterscheidungsmerkmal verbunden: Der Benutzer interagiert mit dem Dienst gemäß einem bestimmten Algorithmus. Meine Hauptaufgabe ist es, diese Algorithmen zu durchdenken.

Und wenn im Detail, dann sollte ich:

  • Besprechen Sie das Projekt ausführlich mit dem Kunden
  • Konstruktionsunterlagen erstellen
  • Spezialisten Aufgaben zuweisen
  • Überprüfen Sie deren Umsetzung und geben Sie Änderungen heraus
  • Übergabe der Arbeitsfunktionen an den Kunden
  • Bringen Sie ihm bei, wie man den Dienst nutzt
  • Unterschreiben Sie das Abschlusszertifikat und übertragen Sie das Projekt an die Supportabteilung
  • Stellen Sie während des Wartungsprozesses regelmäßig eine Verbindung zu komplexen Aufgaben her

Ich werde in einem separaten Artikel über die Nuancen meines Geschäfts und die ausgestopften Unebenheiten schreiben. Und nun eigentlich zu den Projekten ...

Elefant muss Stück für Stück gefressen werden


Ich muss sofort sagen, dass die Projekte, mit denen ich gearbeitet habe, nicht sofort mehr als 100.000 US-Dollar gekostet haben. Solche Projekte werden schrittweise entwickelt, und die erste Phase, das so genannte MVP (Minimum Viable Product), ist um ein Vielfaches billiger. Der Zweck der ersten Phase besteht darin, einen vollwertigen Arbeitsdienst mit eingeschränkter Funktionalität zu starten und die ersten Benutzer zu beliebigen Vorzugsbedingungen darauf zu setzen. Es ist wichtig, entweder ihr Verhalten über den Webvisor zu überwachen oder ihnen die Möglichkeit zu geben, Fehler im Chat zu melden. Es werden sofort alle Fehler identifiziert, die beim Testen nicht gefunden werden konnten, da Dutzende und Hunderte von Benutzern den Dienst nicht wie einen Tester verwenden können. In den meisten Fällen wird unmittelbar nach dem Teststart der ersten Entwicklungsstufe eine Liste von Verbesserungen angezeigt, die in der zweiten Entwicklungsstufe enthalten sind.Auf diese Weise können Sie die Entwicklung im laufenden Betrieb an die Anforderungen der Benutzer anpassen.

Zeit ist Geld


Bereits vor Auslieferung der ersten Phase bieten wir dem Kunden an, die Projektdokumentation für die zweite Phase zu besprechen und vorzubereiten, damit das Team von Spezialisten kontinuierlich geladen wird und keine Ausfallzeiten entstehen. Auf diese Weise sparen wir die gesamte Projektentwicklungszeit. Ganz zu schweigen vom Beginn der Programmierung, ohne auf das Design und Layout zu warten. Außerdem müssen mehrere Programmierer miteinander verbunden, die Arbeitslast zwischen ihnen aufgeteilt und das Endergebnis kombiniert werden.

Sprechen Sie "zur Optimierung"


Mit jeder nachfolgenden Entwicklungsiteration wird der Servicecode komplizierter, die Anzahl der Benutzer und Inhalte nimmt erheblich zu. Es ist Zeit, die Download-Geschwindigkeit zu optimieren. Dieser Prozess beginnt mit der Optimierung der Serverstruktur, da sofort ein kurzfristiges Ergebnis erzielt wird. Danach werden ortseitige Abfragen optimiert. Wir müssen immer noch zu diesem Verfahren zurückkehren, wenn die Anzahl der Benutzer erneut erheblich zunimmt. Hier können wir über Stresstests sprechen, aber aus der Praxis „ist der Löffel der Weg zum Abendessen“ werden daher Optimierungsarbeiten normalerweise durchgeführt, wenn objektive Voraussetzungen dafür vorliegen.

Sag mir mein Licht


Bei einer bestimmten Auslastung des Servers und der Anzahl der Benutzer stellt sich die Frage nach der Spiegelung des Dienstes. Erstens ermöglicht eine Spiegelkopie des Dienstes auf einem anderen Server die Verteilung der Last durch Aufteilung der Benutzer auf die Server. Zweitens wird im Falle eines Herunterfahrens eines Servers aus technischen Gründen der zweite Server die Last tragen und die Benutzer werden den Dienst weiterhin nutzen. Drittens ermöglicht eine solche Struktur das Testen einer neu entwickelten Funktion, ohne dass das Risiko besteht, dass alle Benutzer des Dienstes auf einen unerwarteten Fehler in der Arbeitsversion stoßen. Indem Sie den Anteil der Benutzer erhöhen, die nach und nach neue Funktionen sehen, verringern Sie dieses Risiko erheblich.

Ruf mich an, ruf an


Natürlich kann ein solcher Dienst ohne eine Support-Leitung und ohne die zugewiesene Zeit von Spezialisten nicht existieren, die jederzeit eine Verbindung herstellen können, um Systemfehler aus Tausenden von möglichen unvorhergesehenen Gründen dringend zu beheben: Verwenden eines nicht unterstützten Geräts / Betriebssystems / Browsers, ohne den Prozess zu befolgen Arbeiten am Dienst, Fehler beim Dokumentformat, technische Probleme auf dem Server usw. usw.

Fliegt separat, Schnitzel separat


Der Wartungs- und Entwicklungsprozess ist unterschiedlich, ebenso wie das Aufgabenniveau. In dieser Hinsicht sind wir seit langem zu der Notwendigkeit gekommen, diese beiden Abteilungen zu trennen - dies sind unterschiedliche Personen mit unterschiedlichen Arbeitsprozessen. In diesem Fall ist es natürlich wichtig, die Dinge nach der Entwicklung der Hauptfunktionalität korrekt zu übertragen, damit die Bremssattellinie über die Projektalgorithmen informiert ist.


Es ist wichtig zu verstehen, dass Kunden nur dann große Entwicklungsbudgets ausgeben, wenn sie eine Rendite auf ihre Investition erhalten. Es ist daher sinnlos, sich auf die technische Kompetenz der implementierten Lösungen zu konzentrieren und zu berücksichtigen, dass Sie, wenn Sie über eine detaillierte Konstruktionsdokumentation verfügen und auf allen Seiten Recht haben, weil einen gut durchdachten und getesteten Service gemacht, dann bist du cool und wirst viel und lange bezahlen. Wenn Sie das endgültige Ziel nicht sehen, damit der Service wächst und sich nicht mit den Geschäftszielen des Kunden befasst, kommunizieren Sie mit den Werbeagenturen (wenn dies nicht Ihre Abteilung ist) und bleiben Sie am Puls des Projekts, dann ist Ihr ideales Produkt erfolgreich. und Sie verlieren die Einnahmequelle. Leider,Die meisten Softwareentwickler messen ihre Arbeit mit einer gründlich erledigten technischen Aufgabe und sind stolz auf ihre Fähigkeit, Kundenbeschwerden zurückzuweisen. Dies ist zweifellos wichtig, aber es gibt Ihnen nicht die Möglichkeit, in Zukunft zu verdienen.

Endlich werde ich es dir sagen


Ich möchte darauf hinweisen, dass es für den Erfolg Ihres Webentwicklungsgeschäfts nicht erforderlich ist, große Projekte anzustreben. Es gibt ein gutes Geschäftsfeld für preiswerte und billige Websites, wenn Sie solche Arbeiten in Betrieb nehmen. Als Spezialisierung haben wir uns für die Entwicklung komplexer Dienstleistungen entschieden, weil wir das gut machen. Unser Unternehmen kam durch die Entwicklung von Buchhaltungssystemen zu diesem Geschäft, daher liegt uns die Automatisierung des Geschäfts „im Blut“.

Hoffe es wird hilfreich sein. Vielen Dank an alle, die gelesen haben!

Ich wäre dankbar für Ihren konstruktiven Kommentar.

Und wenn Sie aus natürlichen Bescheidenheiten, politischen, religiösen oder anderen Gründen keine Kommentare verwenden, können Sie mir hier schreiben .

All Articles