Como desenvolvi e publiquei meu primeiro aplicativo iOS em 4 semanas

Camila Spolador
Apple Developer Academy PUCPR
8 min readJul 15, 2023

Olá, caro leitor. Seja bem vindo ao meu primeiro artigo. Eu sou uma pessoa apaixonada por design e por criar coisas.

Quero compartilhar com você a minha experiência desenvolvendo e publicando meu primeiro aplicativo iOS na Apple Store em quatro semanas! Para começar, não se assuste, você vai entender melhor como isso foi possível para mim e na minha realidade e poderá aplicar algumas coisas para a sua. Também aproveito para enfatizar que não existe receita mágica, você precisará de muito esforço, pessoas ao seu lado, objetivo e cronograma bem definidos e muito engajamento.

Em 4 semanas surgiu o Güida

Vamos lá:

1. Tenha um objetivo e um prazo concretos

Eu faço parte da Apple Developer Academy há cinco meses, que é uma parceria entre a Apple e diversas universidades ao redor do mundo. O projeto em questão, surgiu de um desafio proposto pela Academy e tivemos um prazo muito bem definido, com um objetivo claro e datas de entregas. Temos encontros todos os dias presencialmente por 3 horas, ou seja, são pelo menos 15 horas por semana em um ambiente totalmente focado e especializado no desenvolvimento de aplicativos.

- Objetivo: desenvolver um Micro SaaS (Software as a Service) em SwiftUI, ou seja, um software que resolve um pequeno problema muito bem através de uma única função. A solução deveria funcionar como um Sidekick, então nosso aplicativo deveria ser um parceiro para ajudar as pessoas a melhorarem o que elas já fazem bem. Como o Robin é para o Batman e o Luigi para o Mario. Bem como, fomos desafiados a utilizar uma API, conectando nosso aplicativo a algum outro sistema. E, finalmente, deveríamos publicá-lo no TestFlight.

- Cronograma: quatro semanas, que foi um tempo suficiente para entregarmos tudo. Com etapas de feedback, apresentações de andamento, mentorias e para aprendermos funcionalidades que não conhecíamos. É interessante que tenham prazos desafiadores, mas sempre priorizando sua saúde mental.

2. Eu não fiz isso sozinha

Eu tive uma equipe de mais quatro pessoas comigo no projeto (duas designers e três programadores), além de uma mentora/conselheira mais experiente. Eu jamais conseguiria desenvolver um aplicativo inteiro em quatro semanas sozinha.

Equipes são extremamente importantes em projetos, todas as ideias e objetivos foram definidos em grupo. Sem contar que éramos muito diversos, eu sou engenheira florestal em migração para o design — isso significa que se eu consegui, você certamente consegue!

Te aconselho a se juntar com pessoas mais experientes do que você. É uma oportunidade excelente para aprender muito.

3. Não é apenas sobre programar

Nós começamos a programar de fato depois de 10 dias do início do projeto. Quero dizer que ter uma metodologia organizada com toda a equipe dedicada é extremamente crucial.

Para este projeto, utilizamos uma metodologia chamada de CBLD (Challenge Based Learning and Development), que é uma proposta criada pela Apple baseada em desafios e focada na aprendizagem. É um framework aberto que pode ser integrado com Design Thinking, Lean e outras metodologias ágeis.

Ele é dividido em três etapas: Engage (engajamento), Investigate (Investigação) e Act (Atuação). E posso te garantir que através delas é possível alcançar um resultado espetacular. Na etapa de Engage e início do Investigate o foco não é a programação, mas entender a ideia e desenvolver o escopo do MVP (Mínimo Produto Viável).

CBLD framework

4. Você precisa amar sua ideia

Nós iniciamos a primeira etapa (Engage) com um brainstorming aberto, onde todos livremente expuseram ideias sobre coisas que gostam de fazer, sem pensar em soluções. Em grupo, descobrimos que estávamos muito engajados com a ideia de lazer gastronômico, que foi a ideia que nos moveu (Big Idea).

Através de uma pesquisa na internet sobre nossas principais dúvidas, descobertas pela matriz CSD, começamos a entender melhor sobre possíveis dores dentro deste tema.

Matriz CDS utilizada
Brainstorming de perguntas sobre o tema

Chegamos em uma pergunta essencial (Essential Question):

“Como ajudar as pessoas a escolherem ou encontrarem lugares para sair?”

Nosso desafio (Challenge) foi:

“Facilitar o processo de escolha de atividades de lazer gastronômico.”

5. Não pule etapas!

Às vezes, principalmente quando você está acostumado a trabalhar em lugares que preferem o resultado rápido sobre o certo ou quando você está ansioso, acaba pulando etapas inicias do design não intencionalmente e passando logo para a prototipação e desenvolvimento. Mas, quando você passa por todas elas, percebe o quão valioso e quantos insights isso gera.

Neste projeto, na etapa do Investigate (investigação), nós — todos da equipe — desenvolvemos um Value Proposition Canvas, uma pesquisa quantitativa, definimos a persona, fizemos a jornada do usuário, benchmarking, MoSCoW, matriz de esforço e impacto e crazy 8. Para então definirmos nosso MVP.

Processos do Design aplicados no projeto

Estas metodologias foram importantes para entendermos quem é o público que sente dificuldade em escolher e encontrar lugares para sair para comer e se isso é realmente um problema. Nós buscamos soluções similares no mercado, quais são os nossos ganhos e analgésicos sobre os problemas da nossa persona, quais funcionalidades achamos essenciais que nosso MVP tenha e o quão complexas e importantes eram cada uma delas.

Finalmente, descobrimos nosso problema (Problem Statement):

“Jovens adultos têm dificuldade em escolher lugares quando saem para comer e beber porque não lembram de todas as opções disponíveis.”

E a nossa solução desejada (Solution Statement):

“O aplicativo te permite registrar informações sobre restaurantes e bares para facilitar sua tomada de decisão para a próxima saída para comer.”

A partir disso, chegamos no MVP, que conteve:

  • Criar uma tela para ser preenchida com uma lista de estabelecimentos (restaurantes e bares);
  • Criar um rating personalizado para cada um dos estabelecimentos, sendo que o principal campo é a localização, que seria nossa API com o MapKit do SwiftUI;
  • Inserção de filtragens e campo de pesquisa;
  • Inserção de um mapa com a localização dos estabelecimentos, também obtido a partir da API do MapKit;

Com o MVP muito bem delimitado, seguimos para a arquitetura da informação. E assim começou a surgir o Güida.

6. O design é paciente

Como tínhamos um prazo bem apertado, eu tive um momento de desespero (faz parte!) e fiz coisas com pressa no início da prototipação. Com ajuda da minha amiga designer de equipe, entendi que o design precisa ser paciente. Temos que ter calma e pensar nos pequenos detalhes. Temos que gastar tempo buscando referências, pesquisar, testar muitas opções e começar pelo começo. Foi muito divertido passar por isso.

Minha grande dica aqui é que você comece pelos wireframes, desenhando grandes retângulos pela tela e que para cada composição, busque muitas referências para entender como isso já foi feito. Veja como eu desenvolvi as telas de onboarding:

Exemplo do desenvolvimento das telas de onboarding

7. Não adianta sair fazendo

Quando começamos a mão na massa da prototipação e programação, que é a etapa do Act (atuar), logo percebemos que precisaríamos de uma forma de organização.

De uma forma super simples, nos organizamos perfeitamente. Criamos uma tabela com todas as tasks, responsável, prioridade e status. Todos os dias revisávamos essa tabela, adicionando novas coisas necessárias e marcando como finalizadas as tarefas feitas. Começávamos o dia pelas tasks prioritárias para depois fazer as demais.

Olha que simples e funcional:

Organização das Tasks do projeto

Isso nos ajudou a ter calma, ter um olhar macro, vermos que estávamos fazendo muita coisa, nos ajudar entre si quando víamos alguém sobrecarregado e fortalecer a equipe.

Nós tínhamos finalizado todo o core do aplicativo com cerca de quatro dias de antecedência e conseguimos gastar o tempo extra para refinar.

8. Se desafie e vá além

Uma das maiores motivações que eu tive para ir além foi a falta de um programador na equipe em um momento muito importante da programação, por ver a sobrecarga dos outros dois. Isso me fez criar coragem de abrir o código e ajudar eles. Minha motivação não foi das melhores, eu sei, mas me orgulho muito em dizer que uma parte do código é minha e que eu entendo tudo o que está ali.

Aprendi também com a minha colega designer a pesar com mais inquietude. Ela deu muitas ideias incríveis para o projeto que não estavam no escopo, mas foram um grande diferencial. Nós gravamos um vídeo para promover nosso projeto graças a uma ideia dela.

Vídeo promocional do Güida

Depois disso, começamos a pensar todos juntos e entrar em uma onda muito legal de pensar diferente. Tivemos a ideia de fazer adesivos e levar lembrancinhas para os convidados da apresentação final. E isso nos deixou ainda mais engajados, porque ficamos felizes em fazer mais coisas além de apenas o aplicativo.

Adesivos e cartão do Güida

No fim, apesar de o objetivo inicial ter sido publicar o aplicativo no TestFlight, nós conseguimos subir ele na Apple Store! Nos organizamos tão bem e com tanto engajamento, que tivemos tempo de ir além.

9. Se divirta

O CBLD é legal por ter foco no aprendizado e o resultado ser uma consequência. Foi um dos períodos da minha vida em que mais aprendi em menos tempo, em que me animava todos os dias com o andamento do projeto e cada vez queria fazer mais.

Esta experiência me tornou uma pessoa e uma designer melhores. Me fez ter a certeza de que quero continuar no mundo da tecnologia e desenvolvimento e que sou muito feliz em finalmente me sentir pertencente em um lugar.

Obrigada Barbs, Dani, Gui, Laura e Yerik pela experiência e privilégio de ter trabalhado com pessoas tão únicas e incríveis.

Equipe maravilhosa do Güida

Instale o Güida em: https://apps.apple.com/br/app/g%C3%BCida/id6450604923

Caro leitor, muito obrigada por chegar até aqui. Espero que tenha te gerado insights para o seu próximo projeto e que isso tenha feito sentido para você, assim como fez para mim.

Até a próxima!

--

--