A princípio respondi indistintamente, disse que tudo é sempre diferente, mas depois eu mesmo pensei nas duas questões e resolvi respondê-las. Em ordem. Vamos começar com um aplicativo móvel. Calculei o custo médio de cada etapa de desenvolvimento de todos os componentes de um aplicativo mobile e recebi valores aproximados. Resumindo, isso é cerca de 1,5 milhão de rublos para um aplicativo móvel híbrido - tanto para Android quanto para iOS e cerca de 2,2 milhões de rublos para dois aplicativos nativos, ou seja, um para Android e outro para iOS.
Nada. Por que é tão caro?
Para uns é muito dinheiro, para outros não, mas em geral é barato, custa muito caro. Vamos conversar sobre tudo em ordem.
O desenvolvimento de um aplicativo móvel "bem, tão normal" (e também de um produto da web) consiste em quatro a cinco etapas, principalmente cinco:
- Pré-venda e Business Intelligence.
- Fase preparatória.
- Desenvolvimento.
- Conclusão do projeto, publicação de candidaturas.
- Desenvolvimento adicional (conforme necessário).
Em cada uma dessas etapas, as pessoas trabalham, todas recebem um salário pelo seu trabalho, usam a Internet, queimam energia elétrica, etc., em geral, gastam dinheiro de uma empresa que se dedica ao desenvolvimento terceirizado. Esse dinheiro deve ser recuperado e ainda dar lucro, essa é a essência de qualquer negócio.
Portanto, vamos examinar mais de perto cada uma das etapas.
Pré-venda e Business Intelligence
Este estágio é shareware (custa cerca de 80 mil rublos) . O cliente pagará por isso apenas se nos escolher como empreiteiros para seu projeto. Formamos uma visão de projeto em formato de mapa mental, onde determinamos as principais partes interessadas do projeto e suas expectativas, aqui analisamos o público-alvo do futuro aplicativo, pesquisamos soluções semelhantes ou semelhantes de concorrentes e, como resultado, obtemos a estrutura do futuro aplicativo móvel, bem como o painel de administração para ele.
É muito importante notar aqui que um aplicativo móvel frequentemente (90% dos casos) precisa de um painel de administração - um aplicativo da web, o que naturalmente torna o desenvolvimento mais caro.

Depois de traçar um mapa mental da estrutura do projeto, assumimos uma solução técnica e um protótipo clicável da futura aplicação (até agora sem design). A solução técnica inclui: a estruturação do banco de dados, a pesquisa e seleção das bibliotecas necessárias para o desenvolvimento, o estudo de uma API de terceiros que deverá ser conectada e a formação de um diagrama de contexto do projeto. O protótipo inclui o protótipo. Com base nesses dois artefatos, fornecemos uma estimativa do contorno do projeto (de e para) e fornecemos ao cliente as estimativas correspondentes. Se eles concordarem em trabalhar conosco, então o custo do estágio de inteligência de negócios está incluído no custo do projeto, se eles não concordarem - bem, esses são os nossos riscos.
Estágio preparatório
Desenho + preparação para a implantação do projeto, formação da base de documentação para a aplicação mobile e para o sistema de gestão de conteúdos - o painel de administração (em média 100 mil rublos) .
Pensamos sobre a UX do aplicativo, desenhamos um Mapa de Jornada do Cliente (CJM) e Fluxo do Usuário e começamos a escrever um guia do usuário para o aplicativo. Nós desenhamos a IU de acordo com os desejos / livro da marca do cliente e passamos por muitas aprovações de design.
Paralelamente, estamos trabalhando na arquitetura do projeto e na descrição de suas entidades. Os seguintes artefatos são complementados e aparecem aqui:
- Diagrama de contexto
- Diagrama de contêiner
- Diagrama de classes
- Relacionamentos de entidade
- Arquivo que descreve entidades de banco de dados (tabelas de entidade)

O design está pronto, a arquitetura está pronta - configuramos a infraestrutura do servidor, repositórios e assemblies (CI / CD) e iniciamos a codificação.
Desenvolvimento de
Desenvolvemos aplicações de acordo com todas as regras do desenvolvimento ágil (1,3 milhões de rublos) . Constantemente mantemos o cliente no loop dos eventos, regularmente (semanalmente, mas no início do projeto uma vez a cada 2 semanas) mostramos os resultados do trabalho, fazemos correções prontamente e eliminamos bugs. Levamos em consideração os desejos do cliente que aparecem no processo de trabalho, cobramos um pagamento extra por eles, ou retiramos dos planos algo dos desejos antigos.
Nós movemos os cartões no quadro do Trello, atualizamos a tabela de status de prontidão funcional, editamos a documentação no Confluence e, é claro, produzimos e enviamos todos os códigos novos e novos para o repositório. Ao longo de nossas vidas, melhoramos a arquitetura do projeto e fazemos muitas outras coisas: fazemos reuniões, revisamos o código, testamos, apresentamos, etc.
O desenvolvimento é a fase mais longa, muitas vezes é dividido em muitos sprints e estágios intermediários, após a conclusão dos quais receberemos parte do dinheiro. Se falarmos sobre "bem, este é um aplicativo tão simples" (e o painel de administração para ele), então isso é pré-pagamento de 30% (400 mil rublos) + pagamentos intermediários e finais de 35% (450 mil rublos) , se estivermos falando de um aplicativo híbrido. Com dois nativos, a proporção é de cerca de 600 mil rublos. + 700 mil rublos + 700 mil rublos.
Concluindo o projeto, publicando aplicativos
20 mil rublos para pagar contas de desenvolvedor da Apple e Google. Layout de aplicativos, resenhas de lojas e voila - o aplicativo está no ar e disponível para download.

Aqui, é claro, ainda vale a pena mencionar o processo enfadonho de preencher ambas as contas de desenvolvedor, especificando todas as informações financeiras necessárias, formando as regras de uso e o contrato de licença de aplicativos, mas esses são detalhes, para uma equipe experiente é uma rotina, não um problema.
Desenvolvimento adicional
Após a conclusão da fase principal do projeto, o trabalho no projeto não termina. O produto pode ser constantemente aprimorado e o gerente de projeto provavelmente tem muitas ideias para recursos que podem melhorar o aplicativo. Nós os oferecemos ao cliente, e se ele concordar conosco, o desenvolvimento continua, e aqui o preço é sempre individual, depende da quantidade e complexidade das novidades.
O quê mais você precisa saber
Em primeiro lugar, sobre os custos de manutenção de serviços em nuvem. Se o cliente for da Rússia, provavelmente será Yandex.Cloud. Nos primeiros dois meses, o conteúdo não custará nada, porque Yandex decidiu assim (fornece uma pequena bolsa), e então o servidor custará 2,5 mil rublos (às vezes muito mais) por mês, dependendo do levantamento / levantamento de peso do aplicativo.
Se o aplicativo for muito popular, prepare-se para gastar dinheiro em mensagens SMS, a menos, é claro, que as tenha usado para o registro. Também há custos para serviços de notificação PUSH e outros pribluda úteis, mas tudo isso é opcional e gratuito (quase gratuito) até que o aplicativo ganhe popularidade real.
Em geral, o desenvolvimento não é barato, mas custa muito caro e, às vezes, muito mais.