Wie viel kostet das Erstellen von Software? Woraus besteht das Budget für die Anwendungsentwicklung?



Wir veröffentlichen eine Übersetzung des Materials von Alexander Savchenko, einem Mitarbeiter von Django Stars. Er erklärt, wie die Kosten für die Erstellung mobiler Anwendungen unter Berücksichtigung sowohl direkter als auch indirekter Kostenelemente bewertet werden.

Die Ermittlung der Kosten für die Entwicklung einer bestimmten Anwendung ist eine wichtige Aufgabe sowohl für das Unternehmen als auch für den Programmierer, der unabhängig arbeitet. Es ist sofort zu sagen, dass es unwahrscheinlich ist, dass eine 100% ige Genauigkeit erreicht wird. Diese Überprüfung hilft Ihnen jedoch dabei, der maximalen Richtigkeit der Schätzung näher zu kommen.

Skillbox empfiehlt: Praktikum "Mobile Developer PRO" .
Wir erinnern Sie daran: Für alle Leser von „Habr“ - ein Rabatt von 10.000 Rubel bei der Anmeldung für einen Skillbox-Kurs mit dem Promo-Code „Habr“.

Sie bewerten nicht Codezeilen, sondern das Produkt als Ganzes


Wenn ich über Anwendungsentwicklung spreche, meine ich das Projekt als ein einzelnes System, nicht als einzelne Codezeilen. Dementsprechend umfasst die Implementierung Architektur, Kommunikation, Tests, Qualitätsbewertung und alles, was normalerweise in diesem Prozess enthalten ist.

Neben den direkten Kosten (Zeit, die ausschließlich für die Bearbeitung der Anwendung aufgewendet wird) gibt es indirekte Kosten, die nicht immer berücksichtigt werden:

  • Zusätzlich zur Entwicklung müssen Sie die Anwendung testen, analysieren und bei Bedarf eine Marketingkampagne durchführen. Darüber hinaus gibt es immer verschiedene Arten von unvorhergesehenen Ausgaben, auf die wir weiter unten eingehen werden.
  • Analyse der Realisierbarkeit der Idee und der Methoden für ihre Umsetzung. Was zunächst als coole Idee erscheint, kann in der Praxis schwierig umzusetzen sein. Darüber hinaus sollten Sie auf jeden Fall die Wettbewerbsfähigkeit Ihrer Anwendung bewerten: Wenn es viele Analoga gibt, kann es sich lohnen, erneut darüber nachzudenken und zu entscheiden, ob Sie Ihre Idee in die Praxis umsetzen möchten.
  • Investoren Ideen einbringen. Investoren interessieren sich nur für eines - ob das Projekt Geld bringen kann. Auch wenn das Konzept interessant ist, es jedoch kein Argument in Form eines Geschäftsplans oder Prototyps gibt, ist es unwahrscheinlich, dass Investoren Sie unterstützen. Es ist notwendig, die möglichen Einnahmen und Kosten anhand dieser Realitäten zu bewerten.
  • Teamarbeit. Hochwertige Anwendungen werden durch die Zusammenarbeit verschiedener Teammitglieder ermöglicht, von denen jedes ein Experte auf seinem Gebiet ist.

Sie müssen auch so wichtige Dinge berücksichtigen wie:

  • Kommunikation. Für die Abstimmung von Ausgabenposten müssen Sie immer am Puls des Workflows bleiben. Und das bedeutet ständige Kommunikation mit anderen Mitgliedern seines Teams. Unter anderem sollten sie ein gutes Verständnis dafür haben, woran sie arbeiten, und die Nuancen der Projektpositionierung kennen.
  • Planung und Brainstorming. Frische Ideen sind immer gut, aber leider kann niemand garantieren, dass die nächste Sitzung der Brainstorming-Sitzung Antworten auf alle Fragen gibt und zur weiteren Arbeit beiträgt.
  • Zusätzliche Aufgaben. Während der Entwicklung können Sie neue Ideen und Vorschläge erhalten. Einige von ihnen erfordern den Einsatz zusätzlicher Zeit- und Arbeitsressourcen.

Wir berücksichtigen implizite Faktoren


Das Hauptproblem bei der Bewertung der Kosten für die Erstellung einer Anwendung besteht darin, dass wir zu Beginn des Weges nicht wissen, auf welche Schwierigkeiten wir stoßen werden. Dies gilt insbesondere für Ideen, die noch niemand umgesetzt hat.

Um die meisten bekannten Faktoren zu bewerten, die den Entwicklungsprozess und seine Kosten beeinflussen, muss eine Analyse durchgeführt werden, und es sollte auch die Annahme enthalten sein, dass während der Arbeit neue Probleme und Aufgaben auftreten, wie oben erwähnt.

Faktoren können in drei Kategorien unterteilt werden:

  1. Alles, was im Moment genau bekannt ist, ist beispielsweise die Notwendigkeit, eine Domain zu registrieren, ein Hosting mit bestimmten Merkmalen zu mieten usw.
  2. Faktoren, die noch unbekannt sind, deren Erscheinungsbild jedoch vorhergesagt werden kann, z. B. Terminübertragung oder technische Arbeit am Server.
  3. Faktoren, die unbekannt und schwer vorherzusagen sind.

Schrittweise Schätzung der Entwicklungskosten


User Stories und Entwickleraufgaben

In dieser Phase ist es notwendig, die Funktionalität des Systems aus Sicht verschiedener Benutzergruppen zu beschreiben. Dies ist grob gesagt die Dokumentation externer Anforderungen für die Produktentwicklung. Darüber hinaus müssen Sie die Aufgaben für die Implementierung dieser Funktionen durch einzelne Entwickler verteilen.

Wir legen den Arbeitsumfang fest

Zunächst ist es notwendig, eine klare Vision der Anwendung zu formulieren und sicherzustellen, dass alle Projektteilnehmer diese Vision verstehen. Es ist auch erforderlich, dass jedes Mitglied des Teams seine Rolle im Entwicklungsprozess unserer Webanwendung kennt.

Der Front-End-Entwickler muss wissen, welche Browserversionen unterstützt werden müssen, ob eine mobile Version benötigt wird usw. Der Backend-Spezialist muss verstehen, über welche Funktionen der Administrator und der Gastbenutzer verfügen und ob eine Integration mit anderen Systemen erforderlich ist. Ebenso sollten ein Architekt, ein Schnittstellendesigner, ein Geschäftsanalyst und andere Teamvertreter die für sie wichtigen Nuancen der Aufgabe kennen.

Schätzung der Implementierungszeit jeder Aufgabe

Nachdem der gesamte Entwicklungsprozess in separate Aufgaben für bestimmte Teammitglieder unterteilt wurde, berechnen wir den Zeitrahmen für die Implementierung jeder dieser Aufgaben. Es ist ratsam, eine optimistische, normale und pessimistische Zeitspanne vorzusehen, dh wenn Probleme auftreten und die Frist abläuft.

Es kann so aussehen: Die Entwicklung eines Verkehrsmanagementsystems in einer optimalen Situation dauert 10 Tage. wirklich - irgendwo um die 20 Tage; Wenn Probleme auftreten, dann einen Monat. Sie müssen auch den Korrekturfaktor berücksichtigen, der etwa 95% beträgt.


Schätzung der Begriffe


Berechnung der Vorlaufzeit unter Berücksichtigung des 95% -Korrekturfaktors

Die Abbildungen zeigen ein Beispiel für die Berechnung der Ausführungszeit einzelner Aufgaben. Für das Verkehrsmanagement sind dies 33 Tage, und Abweichungen von den geschätzten Daten sind ebenfalls möglich.

Was tun, wenn die Bewertung der Webanwendung zu hoch oder zu niedrig ist?


Wenn Ihnen das Endergebnis nicht zu gut gefällt, dh der Preis der Anwendung zu hoch oder zu niedrig ist (im letzteren Fall kann es sich herausstellen, dass es keinen Sinn macht, für einen solchen Betrag zu arbeiten), versuchen Sie erneut, die Berechnung durchzuführen.

Wenn die Anwendung zu kostengünstig ist, überlegen Sie, wie viele Personen an ihrer Erstellung beteiligt sind und ob alle Phasen und Aufgaben berücksichtigt werden.

Wenn sich im Gegenteil viel herausstellt, suchen Sie nach mehr Budgetlösungen, reduzieren Sie die Anzahl der am Projekt beteiligten Teammitglieder und setzen Sie leicht unterschiedliche Prioritäten.

Abschließend möchte ich sagen, dass bei der Bewertung der Kosten für die Erstellung einer Webanwendung alle Details berücksichtigt werden müssen, einschließlich bekannter und unbekannter Faktoren, die den Entwicklungsprozess beeinflussen können.

Die Fehleinschätzung selbst ermöglicht es dem Team, den Arbeitsumfang zu verstehen und Risiken zu minimieren. Die Hauptregel ist nicht zu hetzen, sondern auch vorsichtig mit Ihren Wünschen umzugehen.

Skillbox empfiehlt:

Source: https://habr.com/ru/post/de421731/


All Articles