Dito de outra forma, a primeira coisa antes de lançar o desenvolvimento de uma solução Web3 é entender claramente o que você deseja desenvolver. Quanto mais claro o entendimento, mais fácil será para os desenvolvedores implementarem sua ideia. Você pode definir os requisitos de forma independente ou contratar especialistas dedicados (analistas de negócios, profissionais de marketing, programadores, designers, financiadores, etc.).
Regularmente, o processo segue o seguinte caminho, durante um briefing, você explica sua ideia e os objetivos de negócios que deseja alcançar. Próximo:
- O analista de negócios estuda a atualidade, os concorrentes, seus prós e contras e se haverá demanda pela oferta;
- O profissional de marketing ajuda a entender de qual produto os usuários vão gostar, como se diferenciar dos concorrentes, como entrar no mercado e ganhar dinheiro;
- Os designers descrevem como deve ser a interface para que os usuários gostem e usem;
- Os programadores descrevem como desenvolvê-lo em código.
Passo 2: Definindo as funções
Nesta fase, a equipe de desenvolvimento define qual função adicionar. A lista de operações depende do projeto. As listas de funções para uma carteira de criptomoedas e uma troca descentralizada são totalmente diferentes. Além disso, a lista de funções também depende de como você vai entrar no mercado, podendo ser um MVP (Produto Mínimo Viável) ou um lançamento de produto completo que oferece todas as funções aos clientes logo após o lançamento.
A diferença entre um MVP e um produto totalmente funcional.
Fonte.
Além disso, é crucial considerar as funções dos usuários dentro do produto. As funções típicas são usuários finais e administradores. No entanto, existem mais alguns papéis. Por exemplo, se você deseja desenvolver um mercado NFT, as posições serão compradores e vendedores. Se você criar uma criptomoeda, usuários regulares, mineradores/validadores e desenvolvedores melhorarão o código e adicionarão novas funções.
Para fornecer um exemplo, vejamos a lista de funções para criptomoedas.
Aqui está a funcionalidade de uma carteira para o usuário final:
- O processo de registro para uma carteira de criptomoedas envolve a criação de um endereço de criptografia ou a recuperação (vinculação) de um antigo. Algumas carteiras, por exemplo, BlueWallet, exigem a seleção do tipo de conta: padrão, armazenamento ou Lightning. Dependendo do tipo, o DApp funcionará como uma carteira regular, armazenamento altamente eficaz ou uma carteira para transações relâmpago na rede do Bitcoin. No futuro, esta etapa envolverá a verificação de identidade (reguladores dos EUA e da UE começam a exigir isso).
- Câmbio, coeficiente de conversão. A variação mais direta de uma carteira de criptomoedas permite receber e enviar ativos digitais. É algo como MetaMask. Carteiras mais avançadas permitem a troca de tokens ou mostram a taxa de câmbio de todos os tokens do portfólio, o preço das moedas, por exemplo, em fiat, dólares, euros ou libras.
- Gestão de ativos (pagamentos). Esta função permite que os usuários comprem e vendam criptomoedas em seu aplicativo de carteira. Essa função deve ser o mais intuitiva e direta possível para que mesmo um iniciante em criptomoedas tenha confiança em usar o aplicativo para diversos fins. A adição de códigos QR facilitará ainda mais o uso, e uma lista de endereços favoritos para operações recorrentes tornará as transações mais rápidas.
- Vinculando uma conta bancária. Permitir que os usuários conectem um cartão de crédito/débito, PayPal, Google Pay, conta Apple Pay ou qualquer outro sistema de pagamento melhorará a experiência do usuário. Muitas vezes, isso ajudará a comprar e vender criptomoedas mais rapidamente, sem a necessidade de informar os detalhes de pagamento.
- Notificações via push. É uma função opcional, mas ainda assim essencial, se você deseja criar uma carteira Web3 confortável. As mensagens informarão os usuários sobre solicitações de pagamento, alterações de saldo, transações aprovadas, perigos de segurança, atualizações do sistema, etc. A notificação redirecionará os usuários de volta ao aplicativo.
- Suporte NFT. Outro recurso opcional é o suporte NFT. NFTs são agora uma das tendências da indústria, então armazená-los está em demanda. Mais precisamente, requer suporte aos seguintes padrões ERC721, ERC1155, BEP-721, BEP-1155, TRC-721, dGoods, Composables.
- Segurança. Para os usuários, é crucial ter 2FA, autenticação de impressão digital ou facial, suporte a carteira de hardware, TTL e frase de semente. A proteção é vital para a plataforma Web3 contra DDoS, SSRF, CSRF, HPP, etc.
Aqui está a funcionalidade para o administrador:
- Painel de instrumentos. Essa guia ajuda os administradores a rastrear a condição do sistema, o número de usuários ativos, o volume de transações (por segundo, hora, dia), o número de transações, novas mensagens, problemas atuais, etc.
- Gerenciamento de usuários. Os administradores usam essa guia para rastrear o status dos usuários, alterar, adicionar, excluir, congelar ou recuperar contas. Além disso, essa guia deve ter um bate-papo com os usuários.
- Gerenciamento do sistema de pagamentos. Aqui, o administrador pode adicionar ou excluir sistemas de pagamento. Além disso, alguns ajustes podem ser feitos em relação ao tamanho mínimo da transação para compra de criptomoeda para moedas fiduciárias.
- Gerenciando as taxas. Essa guia permite que os administradores adicionem, excluam ou alterem taxas para transações criptográficas e fiduciárias. Da mesma forma, esta guia permite o tamanho e a frequência dos pagamentos do programa de referência.
- Gerenciando o conteúdo. Seus administradores precisam de ferramentas para alterar, adicionar e excluir textos, imagens, animações e outros conteúdos na interface do usuário de sua plataforma.
- Marketing e propaganda. Ao desenvolver uma carteira Web3, você pode adicionar uma função para mostrar anúncios por meio de notificações e banners. Se houver essa função, os administradores precisarão de ferramentas para gerenciá-la.
- Documentação da API. Estas são as integrações com outros serviços.
Etapa 3: Desenvolvimento da arquitetura
O próximo passo no desenvolvimento da plataforma Web3 é a criação da arquitetura de informação para o projeto futuro. Normalmente, este diagrama mostra os principais componentes do sistema e seu relacionamento. Muitas vezes, são as futuras telas da interface do usuário e as transições entre elas.
É necessário um diagrama para estudar e otimizar os fluxos e ações do usuário para atingir os objetivos desejados, como comprar criptomoedas. Acredita-se que quanto mais simples for o caminho, melhor será a experiência do usuário e mais atraente será a interface do usuário do site ou aplicativo.
Normalmente, analistas de negócios e designers de UX/UI criam essa arquitetura. Um programador ou outro especialista também pode se juntar a eles se precisar de conselhos sobre algum assunto. Por exemplo, agora é necessário envolver advogados na criação de projetos de criptografia para ajudar a cumprir as regras e regulamentos dos reguladores e leis sobre armazenamento e distribuição de dados de usuários.
Um exemplo de arquitetura informacional de uma plataforma Web3.
Fonte.
Etapa 4: Desenvolvimento de design de UX/UI
Com base nas informações coletadas nos primeiros estágios, na lista de funções e na arquitetura de informações, os designers criam um design de interface de usuário para sua solução Web. Deve ter uma aparência limpa, simples e agradável, e deve estar em conformidade com os padrões da indústria (deve haver um design de botão familiar e nomes de seção familiares) e as tendências atuais de design. Além disso, o design deve estar em conformidade com as recomendações dos fornecedores da plataforma. Por exemplo, no caso de um aplicativo iOS, é necessário cumprir as Diretrizes de Interface Humana , enquanto o Android — Fornece aplicativos de alta qualidade.
O desenvolvimento de um design de interface de usuário em si geralmente consiste em várias etapas. A primeira é um esboço simples da futura interface, que exibe as telas e o que elas devem ser de forma bem simplificada. Esse esboço geralmente é chamado de wireframe de baixa fidelidade. Veja como pode ser:
Um exemplo de um wireframe de baixa fidelidade.
Fonte.
Em seguida, esses esboços são coordenados com o cliente e, se tudo estiver bem, os designers os usam para criar wireframes de alta precisão. Esses são esboços muito mais precisos do design da interface do usuário, pois serão apresentados aos usuários finais. Veja como eles podem se parecer:
Wireframes de alta fidelidade de uma carteira.
Fonte.
Se o cliente também aprovar esses esboços, geralmente são criados protótipos animados do design da interface do usuário, onde todas as animações e transições funcionam, mas as funções do aplicativo em si não. Os protótipos são necessários para testar o design do aplicativo no público-alvo e angariar fundos nos estágios iniciais de desenvolvimento. Veja como eles se parecem:
Etapa 5: Escrever o código para o aplicativo
Uma vez que a funcionalidade foi definida, a arquitetura da informação foi construída e o design da interface do usuário foi criado, os programadores assumem e implementam tudo isso no código. Os desenvolvedores precisam escolher a pilha de tecnologia que melhor se adapta à tarefa em questão para fazer isso. Geralmente é dividido em uma pilha para o servidor (back-end) e a interface (front-end).
Pilha de tecnologia para desenvolvimento de soluções Web3 de back-end:
- Contratos inteligentes: Ethereum Virtual Machine ou BSC.
- Bancos de dados SQL: MySQL, PostgreSQL, MariaDB, MS SQL, Oracle.
- DevOps: GitLab CI, TeamCity, GoCD Jenkins, WS CodeBuild, Terraform.
- Bancos de dados NoSQL: MongoDB, Cassandra, DynamoDB.
- Mecanismos de pesquisa: Apache Solr, Elasticsearch.
- Linguagens de programação: Java, PHP, Python.
- Frameworks: Spring, Symphony, Flask.
- Cache: Redis, Memcached.
Pilha de tecnologia para desenvolvimento de soluções Web3 front-end:
- Linguagens de programação para web: Angular.JS, React.JS e Vue.JS.
- Linguagens de programação para App: Java, Kotlin para Android e Swift para iOS.
- Arquitetura: MVVM para Android e MVC, MVP, MVVM, VIPER para iOS.
- IDE: Android Studio e Xcode para iOS.
- SDK: SDK do Android e SDK do iOS.
Passo 6: Testando o produto
Especialistas de controle de qualidade fazem os testes. Eles verificam o código do produto criado quanto a erros e conformidade com as especificações. Além disso, a funcionalidade, usabilidade e desempenho também são testados. Se a solução Web3 contém contratos inteligentes, eles também precisam ser testados internamente e com a ajuda de auditores independentes como Certik e Techrate.
Etapa 7: Implantação, lançamento
Quando sua solução Web é criada e testada, ela é implantada nos servidores locais da sua empresa ou na nuvem (AWS, Azure, Google). Se for um aplicativo móvel, ele será adicionado às listagens da App Store, Google Play e Amazon App Store (isso não contradiz as regras do site).
Etapa 8: Suporte ao produto
A última etapa envolve ensinar a equipe a trabalhar com o produto e estabelecer a equipe de suporte.
As expansões no desenvolvimento de uma carteira NFT