# Fase Customizar

## Objetivos

Essa é a **terceira fase** da [Fórmula Zeev](/zeev/formula-zeev/introducao-a-formula-zeev.md) de criar aplicativos.

Nessa fase são realizadas as atividades que necessitam ser programadas ou customizadas. Serão feitas as integrações de sistemas, quando necessárias. &#x20;

Nem todo projeto passa por essa fase. Muitos aplicativos podem ser criados usando funções nativas do produto, sem necessitar de nenhum tipo de customização.

{% hint style="info" %}
**Dica:** misturar essa fase com a fase de [Automatizar](/zeev/formula-zeev/criar-um-aplicativo/executar-fases/fase-automatizar.md), criando integrações e customizações logo no início do projeto, quando o aplicativo ainda não está maduro nem foi aprovado pelos [stakeholders](/zeev/formula-zeev/definir-papeis.md#stakeholders), é um dos [principais erros](/zeev/formula-zeev/resumo-de-principais-erros.md#partir-para-integracoes-e-customizacoes-logo) de projetos de automação
{% endhint %}

## Profissionais envolvidos

O [desenvolvedor profissional](/zeev/formula-zeev/definir-papeis.md#desenvolvedor-profissional-professional-developer) é o principal responsável pela execução dessa etapa.  É ele  quem irá realizar a implementação dos códigos de customizações e integrações especificados em fases anteriores.

O desenvolvedor profissional não precisa conhecer todo o aplicativo, seus detalhes e seu funcionamento; *a priori*, ele pode ficar restrito aos pontos que requerem sua atenção.&#x20;

O desenvolvedor profissional irá contar com apoio direto do [desenvolvedor cidadão](/zeev/formula-zeev/definir-papeis.md#desenvolvedor-cidadao-citizen-developer) para dúvidas de regras de negócio.  Além disso, o [desenvolvedor cidadão](/zeev/formula-zeev/definir-papeis.md#desenvolvedor-cidadao-citizen-developer) fará a ponte com o [dono do aplicativo](/zeev/formula-zeev/definir-papeis.md#dono-do-aplicativo-app-owner), com os [especialistas](/zeev/formula-zeev/definir-papeis.md#especialista-de-dominio-subject-matter-expert), com o [cliente ](/zeev/formula-zeev/definir-papeis.md#clientes-customers)e com os [atores ](/zeev/formula-zeev/definir-papeis.md#atores-performers)para:

1. Elucidar dúvidas;
2. Simular o aplicativo;
3. Aprovar a fase;

## Como

Integrações e customizações requerem um profissional técnico especializado e treinado. Se o seu aplicativo precisa de integrações ou customizações , essa será, com certeza, **a** [**etapa** ](/zeev/formula-zeev/criar-um-aplicativo/executar-fases/fase-customizar.md)**mais complicada e potencialmente mais demorada e cara do seu projeto.**&#x20;

### **Assertividade**

{% hint style="info" %}
**​​Dica:** Se estiver publicando a primeira versão do aplicativo, recomendamos customizar o mínimo possível, focando no indispensável.
{% endhint %}

Ao longo de centenas de projetos de automação, descobrimos uma estatística um tanto triste: um grande número de integrações e customizações, após serem implementadas, nunca são usadas efetivamente após o aplicativo ser [publicado](/zeev/formula-zeev/criar-um-aplicativo/executar-fases/fase-publicar.md).  Elas foram "imaginadas" como fundamentais em fases [anteriores ](/zeev/formula-zeev/criar-um-aplicativo/executar-fases/fase-mapear.md)do projeto, mas não resistiram ao choque de realidade do dia-a-dia de uso; na prática, era desnecessárias, irrelevantes ou longe do que os atores [realmente ](/zeev/formula-zeev/definir-papeis.md#atores-performers)precisavam.&#x20;

Isso vai ao encontro das famosas estatísticas compiladas pelo [Standish Group](https://www.standishgroup.com/), empresa internacional independente de consultoria em pesquisa de TI, conhecida por seus relatórios sobre projetos de implementação de sistemas de informação. Ao longo de décadas e diversas versões de pesquisas, a Standish defende que **45%** das funcionalidades de um software **nunca** são utilizadas e **19%** raramente são utilizadas. Generalizando, podemos dizer **64%** do escopo pode ser inútil, não gerar valor e não ser necessário.

Esse erro pode ser mitigado de algumas formas:

* O aplicativo como um todo deve ser[ iterativo, com pequenas fases e ciclos, cada qual com validações e aprovações;](/zeev/formula-zeev/criar-um-aplicativo.md)
* Os [stakeholders](/zeev/formula-zeev/definir-papeis.md#stakeholders), e principalmente o dono do aplicativo, devem participar ativamente de todo o projeto, e não só do começo. Um erro comum é o dono do aplicativo participar somente da fase de [Mapear](/zeev/formula-zeev/criar-um-aplicativo/executar-fases/fase-mapear.md), e depois só ver o produto pronto final na[ entrega do projeto](/zeev/formula-zeev/criar-um-aplicativo/executar-fases/fase-publicar.md).&#x20;
* Atividades que envolvam codificação, como integrações e customizações, devem ser feitas somente depois que o aplicativo já foi testado e validado, mesmo que isso possa impactar no prazo de entrega do projeto;

### Implementação

O [desenvolvedor profissional](/zeev/formula-zeev/definir-papeis.md#desenvolvedor-profissional-professional-developer) irá receber a lista de requisitos técnicos do [desenvolvedor cidadão](/zeev/formula-zeev/definir-papeis.md#desenvolvedor-cidadao-citizen-developer). A lista de requisitos técnicos contém todas as necessidades de customizações e codificações especificadas e já confirmadas pelos [stakeholders](/zeev/formula-zeev/definir-papeis.md#stakeholders), durante testes preliminares em iterações passadas, que são fundamentalmente relevantes para o aplicativo.&#x20;

É fundamental que, ao chegar nessa fase, o desenvolvedor cidadão e o desenvolvedor profissional tenham absolutamente claros que esses requisitos são essenciais para o projeto, e que sem eles o aplicativo é inútil.

As atividades geralmente desenvolvidas nessa fase são:

* Customizar a interação de campos de formulários;
* [Integrar o Zeev com outros sistemas](/zeev/apis/introducao-a-apis-do-zeev.md);
* [Integrar outros sistemas ao Zeev](/zeev/integracoes/como-criar-integracoes.md);

Nessa etapa, também, poderão ser utilizados [conectores middlewares](/zeev/integracoes/usando-ferramentas-conectoras.md) para facilitar implementações.

Na tabela abaixo, temos um exemplo simplificado de um documento de requisitos técnicos que poderia ser recebido da fase anterior do projeto:

<table><thead><tr><th width="150">#</th><th width="150">Tipo</th><th width="202.7142857142857">Atividade</th><th>Descrição</th></tr></thead><tbody><tr><td>REQ01</td><td>Integração</td><td>Criar negócio no CRM</td><td>Enviar as informações nome, CPF, e-mail, valor e descrição para o CRM, módulo de contatos e módulo de negócios.</td></tr><tr><td>REQ02</td><td>Integração</td><td>Consultar escore de crédito</td><td>Com base no CPF, consultar API de consulta de crédito e armazenar o valor no campo "retornoCredito"</td></tr><tr><td>REQ03</td><td>Formulário</td><td>Preencher solicitação</td><td>Ao selecionar o campo UF, preencher automaticamente com a lista de cidades</td></tr><tr><td>REQ04</td><td>Formulário</td><td>Preencher solicitação</td><td>Ao preencher os valores da solicitação, somar todos os valores e salvar o valor de soma no campo  "somaTotal"</td></tr></tbody></table>

O desenvolvedor profissional deve procurar agrupar os requisitos técnicos por algum critério, como etapa do aplicativo ou tecnologia envolvida, seguindo o mesmo modelo de desenvolvimento iterativo das outras fases. Deve sempre que possível procurar validação com o desenvolvedor cidadão e com os stakeholders.&#x20;

### Integrações com terceiros

Um ponto especialmente sensível é na integração com sistemas de terceiros. Por exemplo, caso seja necessário integrar o Zeev com o ERP, o CRM ou outro sistema desenvolvido por um terceiro fornecedor.&#x20;

[Como explicamos no tópico específico sobre integrações](/zeev/integracoes/o-que-e-preciso-para-fazer-integracoes.md), a conexão entre dois sistemas é uma via de mão dupla. O Zeev está preparando e utiliza padrões de mercado para integrações, possuindo uma API documentada. Entretanto, muitos softwares de mercado **não possuem API, não possuem documentação da API ou criam barreiras para integrações**.  Além disso, a equipe do software terceiro ou da empresa terceira provavelmente não estará alinhada e engajada com os prazos e os critérios de sucesso do projeto de automação no Zeev.

Não contar com o alinhamento e com o apoio direto da empresa terceira ou equipe terceira responsável pelo software a ser integrado provavelmente irá gerar retrabalho e atrasos no cronograma. &#x20;

Muitas vezes, o dono do aplicativo ou mesmo um gestor geral da empresa precisará criar um canal de comunicação livre entre as diversas empresas e equipes envolvidas em uma integração.

## Cursos online

Esses são os cursos online que apoiam essa fase.

* [Integrações: como conectar sistemas](https://universidade.zeev.it/p/ead09-integracoes)<br>

## Duração

Essa fase pode levar de alguns dias até alguns meses, dependendo do tamanho do projeto. Se o projeto é grande, divida-o em ciclos menores de entregas.

<mark style="color:red;">Um ponto especialmente sensível é se o projeto envolver integrações que dependam de informações, APIs ou documentações de empresas terceiras</mark>. Não contar com o alinhamento e com o apoio direto da empresa terceira ou equipe terceira responsável pelo software a ser integrado provavelmente irá gerar atrasos no cronograma. &#x20;

## Entregas

Ao final de todas as iterações dessa fase, é esperado que as seguintes entregas sejam finalizadas:

* [ ] Integrações com sistemas externos implementadas<br>
* [ ] Regras customizadas em formulários implementadas<br>
* [ ] Aplicativo [simulável ](/zeev/como-construir-processos/como-validar-aplicativos-antes-de-publica-los/como-simular-a-execucao-de-processo.md)na plataforma<br>
* [ ] Aplicativo testado e aprovado pelos [stakeholders](/zeev/formula-zeev/definir-papeis.md#stakeholders), notadamente pelo dono do aplicativo


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kb.stoque.com.br/zeev/formula-zeev/criar-um-aplicativo/executar-fases/fase-customizar.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
