Die Entwicklung von benutzerdefinierten mobilen Apps ist kostengünstig: Realität oder Illusion

Wenn Sie sich entscheiden, eine mobile Anwendung ohne Erfahrung in der Entwicklung zu erstellen, stellt sich zwangsläufig die Frage, ob Entwickler eingestellt werden sollen. Die Frage selbst gibt keine Antwort, daher müssen Sie die Vor- und Nachteile von Outstaffing- oder Outsourcing-Diensten verschiedener Künstler analysieren. Der erste Indikator, der bei der Analyse berücksichtigt werden muss, ist der Preis. Ich möchte billiger, aber wird es am Ende billig kosten? Mit diesem Artikel möchten wir bei Omega-R Fallstricke aufzeigen, die sich hinter häufig auftretenden niedrigen Preisen verbergen können.



2019 war ein Rekordjahr für den globalen Markt für mobile Apps. Werfen wir einen Blick auf die Indikatoren: 204 Milliarden Anwendungsdownloads, 45% mehr als im Jahr 2016, 3 Stunden 40 Minuten pro Tag, die Benutzer täglich für mobile Geräte ausgeben, 35% mehr als im Jahr 2017.

Zu den Top-Ratings erfolgreicher Börsengänge des Jahres 2019 zählen Unternehmen, deren Kerngeschäft genau mobile Technologien sind: Alibaba Group, Prosus & Naspers und Uber. Im Allgemeinen sind Unternehmen, die mobile Technologien einsetzen, um ein Vielfaches und zehnmal erfolgreicher als herkömmliche Unternehmen.

Es scheint, dass 2020 die Einstellung zu Technologien ein für alle Mal ändert - für fast alle Unternehmen ist die Integration mobiler Technologien in Geschäftsprozesse eine Frage des Überlebens geworden. Die Entwicklung mobiler Anwendungen hat jedoch die Kehrseite der Medaille - den Preis.

Warum so teuer?


Dank freiberuflicher Tätigkeit hat man den Eindruck, dass Sie jede schlüsselfertige mobile Anwendung innerhalb von 100.000 Rubel erstellen können. In einigen Fällen können Sie sich wirklich auf einen solchen Betrag verlassen: Wenn das zugewiesene Budget extrem begrenzt ist, bedeutet dies, dass viele Mängel in der Arbeitsqualität, versteckte und explizite Fehler (Fehler), Unoriginalität oder minimale Funktionalität der Anwendung vereinbart werden. Mit einem integrierten Ansatz für die Anwendung ist ein solcher Preis unmöglich. Mal sehen, woher Hunderttausende und Millionen Rubel kommen und wie sie gerechtfertigt sind.

Zeit


In jedem Unternehmen von Fachleuten wird der Preis von den Komponenten klar berechnet und unterschrieben. Die gebräuchlichste und universellste Methode zur Berechnung ist die Anzahl der Stunden multipliziert mit den Arbeitskosten einer Fachstunde (Tarif). Die aufgewendete Zeit bestimmt somit die Kosten des Projekts. Wie Sie wissen, kann eine Qualitätsstudie eines Unternehmens durch die damit verbundene Zeit sichergestellt werden.



Für jede Phase des Projekts wird Zeit benötigt: Forschung, Design, Entwicklung des Anwendungsdesigns, Frontend-Entwicklung (Client-Seite), Backend-Entwicklung (Server-Seite), Testen und Inbetriebnahme. Diese Phasen erfordern bei der Erstellung einer erfolgreichen Anwendung unbedingt detaillierte Studien.

Die Arbeitsstunde eines Spezialisten im IT-Outsourcing kann sich dramatisch unterscheiden: von 300 Rubel pro Stunde bis 10.000 Rubel pro Stunde. Es ist für jeden, der nicht mit der IT-Welt verbunden ist, schwierig, diese Streuung zu verstehen. Die reale Rate eines Webprogrammierers in Russland beträgt heute je nach Qualifikation 1600-3500 Rubel pro Stunde.

Wenn der "Spezialist" eine niedrigere Rate anbietet, hat er höchstwahrscheinlich vor kurzem seine Arbeit aufgenommen und repräsentiert nicht den Marktwert der Arbeit. Wenig Erfahrung mit seiner Arbeit erlaubt es ihm, nur zu „entleeren“ und mit dem starken Wettbewerb auf dem Markt für IT-Dienstleistungen zu flirten. Beim nächsten echten Projekt kann der „Student“ dank Fehlern Erfahrungen sammeln, so dass selbst ein offizieller Vertrag ohne klare technische Zuordnung für ihn im Falle einer „Blockade“ nicht so schlecht ist, denn morgen wird ein neuer Kunde kommen, der billig pickt.

Es wird schwierig sein, einen „billigen“ Spezialisten abzulehnen - es ist unwahrscheinlich, dass sich jemand anderes verpflichtet, viele Fehler umzugestalten. Selbst wenn die Rate halb so hoch ist, wird sich die Veröffentlichung aufgrund von Fehlern, nach denen Sie Ihre Zeit verbringen werden, um ein Vielfaches verzögern und die Anzahl der Stunden, die Sie bezahlen, um das 2-3-fache erhöhen. Infolgedessen entspricht der Gesamtbetrag der Ausgaben immer noch der Möglichkeit, erfahrene Fachkräfte einzustellen, deren Arbeit nicht zu Kopfschmerzen führt.

Eine andere Situation ist möglich. Wenn ein Tarif zum Beispiel für 1000 Rubel pro Stunde angeboten wird, erhalten Sie einen Programmierer, der verpflichtet ist, die Uhr aufzuziehen. Dieser Satz beinhaltet Ausgaben für Krankenurlaub, Urlaub, Sozialsteuern, Einkommenssteuer und andere Steuern, so dass mit einem solchen Satz für Löhne wenig zu tun sein wird. Das Management eines Entwicklungsteams und die Steuerung seiner Aktionen mit einem eigenen Manager retten die Situation nicht immer. Das Ergebnis ist ein schlechtes Produkt, ausgegebenes Geld, Kopfschmerzen, zahlreiche Verbesserungen oder eine Neuentwicklung von Grund auf.

Eine theoretisch hervorragende Anwendung in der Basisversion kann für nichts erstellt werden, aber ein Team von Entwicklern, die ihren Wert kennen, arbeitet immer an wirklich erfolgreichen Produkten.

Komplexe Anwendungsstruktur


Wovon hängt die Zeit ab? Es kann viele Faktoren geben, von der Liste der Geräte und Plattformen, die die Anwendung unterstützen, bis zur Liste ihrer Funktionen.

Die komplexe Struktur der Anwendung erhöht die Komplexität. Der Serverteil wird benötigt, wenn die Anwendung beispielsweise Daten mit dem Server synchronisiert oder vom Admin-Panel über die Weboberfläche gesteuert wird. APIs von Drittanbietern, die Möglichkeit, offline zu arbeiten, Animationen in der Benutzeroberfläche, Probleme bei der Datenspeicherung, nicht standardmäßige Steuerelemente und das Vorhandensein mehrerer Benutzerrollen erschweren ebenfalls die Struktur der Anwendung.

Welche Komponenten benötigen am meisten Zeit:

  1. Große Datenmengen, viele Bildschirme und Aktionen in der Anwendung;
  2. Serverseite;
  3. Verwaltungspanel;
  4. Verwendung von Gadget-Hardware: NFC, Barometer, Bluetooth, Beschleunigungsmesser, Gyroskop usw.;
  5. Verbindung zu externen Geräten;
  6. Integration in Systeme und Dienste von Drittanbietern;
  7. AR / VR-Entwicklung und Anwendung bahnbrechender Technologien wie KI, Blockchain, neuronale Netze usw.

Somit kann der Komplexitätsgrad ungefähr die Komplexität darstellen:

  1. Einfache Anwendungen (kleiner Funktionsumfang, schnelle Entwicklung, möglicherweise fehlt der Serverteil) - 300-700 Stunden.
  2. Anwendungen mittlerer Komplexität - 700-1200 Stunden.
  3. Komplexe Anwendungen (komplexe Architektur, Sicherheitsprobleme, viele Integrationen usw.) - mehr als 1200 Stunden.

Eine oder mehrere Plattformen?


Möchten Sie Apps für Android oder iOS entwickeln? Oder benötigen Sie eine Webanwendung? Es gibt mehrere Punkte zu beachten. In der Android-Entwicklung gibt es im Gegensatz zu iOS viele Geräte mit unterschiedlichen Spezifikationen und Versionen von Betriebssystemen. Die Anpassung für Tablets und die Unterstützung älterer Versionen von Plattformen und Geräten, die durch Leistung, Funktionalität und fehlende Updates eingeschränkt sind, führen zu höheren Projektkosten.

Smartphones sind sich so ähnlich, dass es den Anschein hat, als könnten Sie eine einzige Anwendung für Android und iOS entwickeln. Dies ist jedoch weit davon entfernt. Das gleiche Erscheinungsbild von Anwendungen auf verschiedenen Plattformen wird durch die Dornen verschiedener Programmiersprachen, SDKs und Programmiertools erreicht.

In einigen Fällen können Sie jedoch eine plattformübergreifende Anwendung für zwei Plattformen entwickeln. Nach unserer Erfahrung können Sie mit dieser Lösung die Kosten für die Entwicklung von Anwendungen für zwei Standorte um 25 bis 30% senken und die Markteinführungszeit verkürzen .

Beim Design geht es nicht nur um Schönheit


Wir haben hauptsächlich die Momente skizziert, die mehr mit der Entwicklung zu tun haben, und wir hatten den Eindruck, dass nur Programmierer benötigt werden, um eine coole Anwendung zu erstellen. Tatsächlich beginnt die Arbeit immer mit Produktanalysen und UX / UI-Design. Wir bezweifeln, dass der Programmierer diese Probleme umfassend lösen kann. Hier geht es darum, wie die Anforderungen von Unternehmen und Benutzern in der Anwendung miteinander verbunden und für den Benutzer so einfach und klar wie möglich gestaltet werden können.



Kein Benutzer wird in die Wildnis des Codes klettern, um zu beurteilen, ob er ihn verwenden wird. Die Hauptsache für ihn ist, wie schnell und klar die Anwendung sein Problem löst. Und die Frage ist nicht so sehr die Geschwindigkeit der Software, sondern die Entwicklung der Customer Journey Map, des Benutzerflusses, der Benutzerfreundlichkeit, der Benutzererfahrung und der Entwicklung der Anwendungsoberfläche. Wenn Sie noch nie davon gehört haben, empfehlen wir einen Experten zu lesen Artikel von unserer UX / UI - Designer Maxim Skvortsov. Darin beantwortet er ausführlich die Frage, warum es notwendig ist, die Themen Design und Design gründlich zu untersuchen und wie eine wirklich erfolgreiche Anwendung erstellt werden kann.

Wenn Sie den Antrag bestellt haben, bedeutet dies nicht, dass der Auftragnehmer ab morgen mit dem Schreiben von Code beginnt. Wie beim Hausbau ist es wichtig, „Blaupausen“, internes und externes Design zu zeichnen und das Leben des Hauses dynamisch zu durchdenken. Visuell unattraktive oder unzureichend durchdachte Anwendungen werden sofort nach der Installation gelöscht oder nicht einmal heruntergeladen.

Es gibt Sicherheit in Zahlen


Hochwertige Anwendungen werden nicht alleine erstellt, sondern ein ganzes Team von Fachleuten mit großer Erfahrung arbeitet daran. Je komplexer das Projekt ist, desto größer ist die Zusammensetzung des Entwicklungsteams. Die Mindestliste kann einen Projektmanager, einen UX / UI-Designer, einen Programmierer und einen Tester enthalten.

Woher kam der Tester? Alles sollte überprüft werden, bevor die Anwendung freigegeben wird, einschließlich des Betriebs von Funktionen, verbundenen Diensten und Modulen. Die Anwendung selbst kann vom Kunden überprüft werden. Das Finden der Zeile mit dem Fehler ist jedoch im Code eines anderen am schwierigsten und es ist einfacher, ihn zu beheben, wenn Sie den geschriebenen Code und die verwendeten Plattformlösungen kennen.

An komplexen Projekten können ein Analyst, ein Designteam, ein Layoutdesigner, ein Team von Programmierern, ein Tester und ein Projektmanager beteiligt sein. In diesem Fall kann die Rate jedes Spezialisten unterschiedlich sein. In dieser Quote sind jedoch immer ausgebildete Fachkräfte mit Erfahrung enthalten, da das Unternehmen sonst mit dem durch viele Projekte erzielten Reputationsverlust und einem Rückgang der Ratingagenturen konfrontiert wird. Daher ist die mobile Entwicklung teuer, und niedrige Kosten können direkt über die Verletzung von Prozessen sprechen.

Es ist unmöglich, dass eine Person alle Bereiche gleichzeitig tief versteht. Daher besteht bei der Einstellung eines freiberuflichen Programmierers wahrscheinlich ein Bedarf an anderen Spezialisten. Natürlich kann es bei einem solchen Ansatz zu Inkonsistenzen und Verantwortungslosigkeit zwischen Spezialisten kommen, bei deren Erfahrung Sie sich nicht sicher sind. Selbst wenn Sie einen Projektmanager einstellen, müssen Sie sich zwangsläufig selbst mit allen Details des Projekts befassen.



Lassen Sie uns alle Vorteile der Auswahl eines Entwicklers für mobile Apps zusammenfassen, der die scheinbar hohen Kosten abdeckt.

1. Die Fähigkeit zu testen.Für jede Entwicklung - Webentwicklung, Entwicklung für iOS oder Android - bieten IT-Unternehmen häufig die Möglichkeit, die Fähigkeiten eines engagierten Teams von Anwendungsentwicklern in wenigen freien Stunden zu testen, was für Freiberufler nicht zu sagen ist.

2. Frische der Technologie. Das Unternehmen verfügt über eine große Anzahl austauschbarer erfahrener Mitarbeiter, die regelmäßig zertifiziert und geschult werden. Ein Einzelgänger wird nicht in der Lage sein, mit der Entwicklung der Technologie in verschiedenen Bereichen Schritt zu halten. Veraltete Technologien können unter anderem zu Sicherheitslücken und einer geringeren Sicherheit für Benutzer führen.

3. Termine.Das Unternehmen unterzeichnet Verpflichtungen aus einer Vereinbarung, deren Verletzung enorme Unternehmensrisiken birgt. Der Freiberufler hat immer einen Grund, das Projekt in jeder Phase der Anwendungsentwicklung abzubrechen: Krankheit, Umzug, familiäre Probleme, Beschäftigung. Der Abgrund ist jedoch ohne besonderen Grund möglich.

4. Professionalität. Unternehmen unterliegen in der Regel einer professionellen Überprüfung und Zertifizierung von Ratingagenturen, die die Bewertung des Fachwissens von Unternehmen übernehmen. Es ist für einen Freiberufler nicht schwierig, Bewertungen für sich selbst zu „gewinnen“, insbesondere in Zusammenarbeit mit anderen Freiberuflern.

5. Die Zeitkosten.Mit einem IT-Unternehmen können Sie Zeit sparen und sich auf Ihr Unternehmen konzentrieren, anstatt auf ein Projekt. Jedes Teammitglied kennt seine Rolle im Projekt genau. Jedes Zwischenergebnis der Arbeit wird vor dem Senden an den Kunden einer internen Überprüfung unterzogen. Mit einem Freiberufler müssen Sie die Rolle eines Projektmanagers übernehmen.

6. Sicherheit. Ein IT-Unternehmen hat den Status einer eingetragenen juristischen Person. Dies bedeutet für sie einen strengeren Verantwortungsbereich und verringert das Betrugsrisiko erheblich. Eine zufällige Person im Internet kann leicht das Portfolio einer anderen Person bereitstellen und anschließend Ihre "Mobilisierungs" -Pläne in Chaos verwandeln.

7. Kontrolle.Das IT-Unternehmen verfügt bereits über einen vollständig debuggten Arbeitsprozess, der flexibel an die Kundenanforderungen angepasst werden kann. Die Arbeit mit einem Freiberufler liegt höchstwahrscheinlich in der Natur eines unkontrollierten Prozesses, bei dem sich viele Dinge entweder herausziehen, dann plötzlich wieder aufgenommen werden oder abbrechen.

8. Beteiligung. Der Freiberufler fühlt sich mit dem Projekt nicht verbunden und setzt nur das Ziel, Geld zu verdienen. Das IT-Unternehmen ist an Kundenbindung interessiert, was die hohe Qualität der Entwicklerdienste und die Kundenzufriedenheit impliziert. Darüber hinaus wird die Einbeziehung jedes Teammitglieds durch das Motivationssystem der Mitarbeiter des Unternehmens sichergestellt.

Wenn Sie also Dienstleistungen in einem IT-Unternehmen bestellen, erhalten Sie:

  1. Hochwertige Dienstleistungen
  2. 24/7 Interaktion
  3. Bewährte Expertise
  4. Einhaltung von Fristen und Anforderungen
  5. ,

Zusätzlich zu den beschriebenen Vorteilen stehen dem Kunden Berichte über den Projektfortschritt nach dem Time & Material-Vertragsmodell zur Verfügung. Bei diesem Modell erfolgt die Zahlung für das Ergebnis basierend auf den Arbeitskosten, d. H. Der Kunde kann sehen, für welche Aufgabe die Anzahl der Stunden aufgewendet wurde, und diese mit der Historie der Code-Commits (Portionen) vergleichen. Das Schema ist so transparent, dass der Kunde jede vom Entwickler täglich geschriebene Codezeile sieht.

Es scheint besser, sich nicht mit der Digitalisierung zu beschäftigen. Es sollte jedoch als Investition in die Zukunft Ihres Unternehmens betrachtet werden, die viel mehr als die Kosten für die Entwicklung einer Anwendung verlieren kann. "Mobilisierung" führt unweigerlich zu einer Steigerung des Umsatzes und der Geschäftseffizienz in allen Bereichen: Einzelhandel ,Medizin , Bildung , Immobilien , Versorgungsunternehmen , Smart City usw.

Im Laufe der Jahre unserer Arbeit haben sich so viele Projekte angesammelt, dass die Feinheiten jedes einzelnen nicht in einem Artikel genau beschrieben werden können. Wir hoffen, dass die im Artikel beschriebene Erfahrung unseres Unternehmens Ihnen bei der Auswahl des richtigen Interaktionsweges mit dem Auftragnehmer hilft. Wenn die vorgeschlagenen Wege nicht zu Ihnen passen, teilen Sie uns Ihr Problem in den Kommentaren mit, damit wir gemeinsam überlegen, wie wir es lösen können, und gleichzeitig alle Details des Projekts berücksichtigen.

All Articles