Au début, j'ai répondu indistinctement, j'ai dit que tout était toujours différent, mais j'ai moi-même pensé aux deux questions et j'ai décidé d'y répondre. En ordre. Commençons par une application mobile. J'ai calculé le coût moyen de chaque étape de développement de tous les composants d'une application mobile et j'ai reçu des chiffres approximatifs. En bref, cela représente environ 1,5 million de roubles pour une application mobile hybride - à la fois pour Android et iOS et environ 2,2 millions de roubles pour deux applications natives, c'est-à-dire une pour Android et une pour iOS.
Rien. Pourquoi est-ce si cher?
Pour certains, c'est beaucoup d'argent, pour d'autres ce n'est pas le cas, mais en général c'est peu coûteux, cela coûte tellement cher. Parlons de tout dans l'ordre.
Le développement d'une application mobile «bien, une telle normale» (et d'un produit Web aussi) comprend quatre à cinq étapes, principalement cinq:
- Avant-vente et veille économique.
- Étape préparatoire.
- Développement.
- Achèvement du projet, publication des candidatures.
- Développement supplémentaire (au besoin).
À chacune de ces étapes, les gens travaillent, ils reçoivent tous un salaire pour leur travail, utilisent Internet, brûlent de l'électricité, etc., en général, dépensent de l'argent auprès d'une entreprise qui se consacre à l'externalisation du développement. Cet argent doit être récupéré et toujours faire des bénéfices, c'est l'essence même de toute entreprise.
Examinons donc de plus près chacune des étapes.
Prévente et veille économique
Cette étape est un shareware (il coûte environ 80 000 roubles) . Le client ne le paiera que s'il nous choisit comme contractants pour son projet. Nous formons une vision du projet dans le format de la carte mentale, où nous déterminons les principales parties prenantes du projet et leurs attentes, ici nous analysons le public cible de la future application, recherchons des solutions similaires ou similaires de concurrents et en conséquence nous obtenons la structure de la future application mobile, ainsi que le panneau d'administration correspondant.
Il est très important de noter ici qu'une application mobile a souvent (90% des cas) besoin d'un panneau d'administration - une application Web, ce qui rend naturellement le développement plus coûteux.
Après avoir dressé une carte mentale de la structure du projet, nous prenons une solution technique et un prototype cliquable de la future application (jusqu'à présent sans conception). La solution technique comprend: la structure de la base de données, la recherche et la sélection des bibliothèques nécessaires au développement, l'étude d'une API tierce qui devra être connectée et la formation d'un diagramme de contexte de projet. Le prototype comprend un prototype. Sur la base de ces deux artefacts, nous donnons une estimation de contour du projet (de et vers) et fournissons au client les estimations correspondantes. S'ils acceptent de travailler plus avant avec nous, alors le coût de l'étape d'intelligence d'affaires est inclus dans le coût du projet, s'ils ne sont pas d'accord - eh bien, ce sont nos risques.
Phase préparatoire
Conception + préparation pour le déploiement du projet, la formation de la base de documentation pour l'application mobile et pour le système de gestion de contenu - le panneau d'administration (en moyenne 100 mille roubles) .
Nous réfléchissons à l'UX de l'application, établissons un Customer Journey Map (CJM) et User Flow, et commençons à rédiger un guide d'utilisation de l'application. Nous dessinons l'interface utilisateur conformément aux souhaits / livre de marque du client et passons par de nombreuses approbations de conception.
En parallèle, nous travaillons sur l'architecture du projet et la description de ses essences. Les artefacts suivants sont complétés et apparaissent ici:
- Diagramme de contexte
- Diagramme de conteneur
- Diagramme de classe
- Relations d'entité
- Fichier décrivant les entités de base de données (tables d'entité)
La conception est prête, l'architecture est prête - nous mettons en place l'infrastructure du serveur, les référentiels et les assemblages (CI / CD) et commençons le codage.
Développement
Nous développons des applications conformément à toutes les règles du développement agile (1,3 million de roubles) . Nous tenons constamment le client au courant des événements, régulièrement (chaque semaine, mais au début du projet une fois toutes les 2 semaines), montrons les résultats du travail, apportons rapidement des corrections et éliminons les bugs. Nous prenons en compte les souhaits du client qui apparaissent dans le processus de travail, nous prenons un paiement supplémentaire pour eux, ou nous supprimons des plans quelque chose des anciens souhaits.
Nous déplaçons les cartes sur le tableau Trello, mettons à jour le tableau des statuts de disponibilité fonctionnelle, éditons la documentation dans Confluence et, bien sûr, produisons et poussons tout nouveau et nouveau code vers le référentiel. Au cours de la vie, nous améliorons l'architecture du projet et faisons beaucoup d'autres choses: nous organisons des réunions, révisons le code, testons, présentons, etc.
Le développement est l'étape la plus longue, elle est souvent divisée en plusieurs sprints et étapes intermédiaires, après l'achèvement desquelles nous recevrons une partie de l'argent. Si nous parlons de «bien, c'est une application si simple» (et du panneau d'administration pour cela), alors il s'agit d'un prépaiement de 30% (400000 roubles) + paiements intermédiaires et finaux de 35% (450000 roubles) , si nous parlons d'une application hybride. Avec deux natifs, le ratio est d'environ 600 mille roubles. + 700 mille roubles + 700 mille roubles.
Terminer le projet, publier des applications
20 mille roubles pour payer les comptes Apple et Google Developer. Mise en page des applications, avis des magasins et voila - l'application est en ligne et disponible au téléchargement.
Ici, bien sûr, il convient toujours de mentionner le processus morne de remplir les deux comptes de développeur, en spécifiant toutes les informations financières nécessaires, en formant les règles d'utilisation et le contrat de licence pour les applications, mais ce sont des détails, pour une équipe expérimentée, c'est une routine, pas un problème.
Développement supplémentaire
Une fois la phase principale du projet terminée, les travaux sur le projet ne se terminent pas. Le produit peut être constamment amélioré et le chef de projet a probablement de nombreuses idées de fonctionnalités susceptibles d'améliorer l'application. Nous les proposons au client, et s'il est d'accord avec nous, alors le développement se poursuit, et ici le prix est toujours individuel, cela dépend du nombre et de la complexité des nouvelles fonctionnalités.
Que voulez-vous savoir d'autre
Tout d'abord, sur les coûts de maintenance des services cloud. Si le client vient de Russie, il s'agira probablement de Yandex.Cloud. Les deux premiers mois, le contenu ne coûtera rien, car Yandex l'a décidé (il fournit une petite subvention), puis le serveur coûtera à partir de 2,5 mille roubles (parfois beaucoup plus) par mois, en fonction de la charge de travail de l'application.
Si l'application est très populaire, préparez-vous à dépenser de l'argent en SMS, à moins bien sûr que vous ne les ayez utilisés pour l'enregistrement. Il y a aussi des coûts pour les services de notification PUSH et d'autres pribluda utiles, mais tout cela est facultatif et gratuit (presque gratuit) jusqu'à ce que l'application gagne en popularité.
En général, le développement n'est pas bon marché, mais il coûte vraiment tellement cher, et parfois beaucoup plus.