fbpx
[Blog] imagem destacada
       Você já imaginou construir uma casa sem ter uma planta? Você pode até se arriscar, mas com certeza as coisas não irão sair como esperado. O desenvolvimento de um sistema é análogo a essa situação. A concepção é um projeto que tem o objetivo de amadurecer uma ideia tornando-a um sistema aplicável. Para isso, ela conta com várias fases que, ao final, geram todos os requisitos necessários para desenvolver o sistema. Vamos ver agora no que consiste cada fase.

1. Inception

       Fase na qual são feitas diversas  dinâmicas imersivas com o cliente e a equipe de desenvolvimento. A CPE, atualmente, utiliza o método Lean Inception, que tem o foco em determinar a visão do produto, proposta de valor, objetivos do produto e features, jornada dos usuários e definição de persona.  É uma fase esclarecedora pois possibilita o cliente ampliar sua visão sobre o produto que deseja executar e, dessa forma, ele e o time de desenvolvimento se aprofundam na ideia juntos.

2. Requisitos Funcionais e Não Funcionais

       Nessa fase é definido todos os requisitos que o sistema necessita ter, sendo eles funcionais ou não. Requisitos funcionais são aqueles onde há a materialização de uma necessidade ou solicitação realizada por um sistema. Alguns exemplos são: geração de relatório de determinado período de vendas, efetuar pagamentos de compra através de crédito ou débito, consulta e alterações de dados pessoais de clientes. Requisitos não funcionais definem necessidades que o sistema tem, mas que não implicam nele em si. Alguns exemplos são: atualização em tempo real, backup de dados diário e velocidade para navegar entre as páginas. Estes requisitos vão ser levados em conta na hora do time de desenvolvimento determinar qual linguagem de programação será usada, qual tipo de banco de dados, nível de segurança dentre outras coisas. Com isso, ao final dessa fase a equipe de desenvolvimento já terá todas as funcionalidades que o sistema necessita ter e, por conseguinte, este já estará definido mais claramente.

3. Regras de Negócio

       Aqui, é definido a hierarquia do sistema. Regras de Negócio são orientações e restrições que ajudam a regular as operações de uma empresa. Dessa forma, é estabelecido as permissões que cada tipo de usuário terá sobre as funcionalidades do sistema, definindo COMO elas devem ser realizadas e gerenciadas, por QUEM, QUANDO, ONDE e POR QUÊ. Para ilustrar, vamos imaginar um sistema de vendas on-line; nele, terá 3 tipos de usuários: administrador, lojista e comprador. Algumas das regras de negócio poderiam ser: o administrador irá embolsar uma determinada porcentagem sobre cada venda efetuada no sistema; para um lojista começar a vender dentro do sistema, ele precisa realizar um cadastro que deve ser validado e aprovado por um administrador; o comprador precisa de ter cadastro no sistema para realizar uma compra. Isso é um exemplo genérico, cada tipo de sistema tem suas particularidades, por isso, é importante definir as regras de negócio.

4. Fluxograma

       O objetivo dessa fase é definir o fluxo que o usuário terá dentro do sistema. Ele vai desde o primeiro acesso até a última funcionalidade que ele executará. Um exemplo disso, baseado no que foi feito no tópico anterior, seria: o usuário entra na página home, clica na barra de pesquisa e digita o produto que ele está procurando; o sistema retorna os resultados, o usuário escolhe o produto desejado e clica no botão adicionar ao carrinho; o usuário seleciona a quantidade de itens que deseja adicionar e, em seguida, é perguntado se ele deseja ir para o carrinho ou retornar a página de itens; caso ele selecione retornar, ele voltará para página e poderá selecionar mais itens; ao selecionar ir para o carrinho, ele irá adicionar seus dados, realizar o pagamento e finalizar a compra. Aqui, foi descrito um dos fluxos que o comprador teria no sistema, mas o fluxograma tem o objetivo de descrever todos os fluxos possíveis que cada usuário pode ter. Com isso, os desenvolvedores têm a noção de todos os redirecionamentos e tratamentos de condições que eles devem fazer para cada página do sistema. Aqui também fica claro a experiência que o usuário terá dentro do sistema, o que é importantíssimo de se definir para garantir que ele sairá satisfeito depois de realizar algum processo dentro do seu sistema.

5. Diagrama de Banco de Dados

       Em todas as fases, é visível a participação do cliente na sua execução, no entanto, essa fase é de caráter mais técnico, onde terá exclusivamente a atuação da equipe de desenvolvimento. O diagrama de banco de dados é uma estrutura onde é definido as entidades do sistema e suas relações. É uma fase importantíssima porque ela define toda a estrutura do seu banco de dados, o que guiará todo o desenvolvimento do sistema.

6. Pesquisa e definição de tecnologias

       Baseado em todas as fases anteriores, nessa fase, a equipe de desenvolvimento irá pesquisar e definir quais as melhores tecnologias a serem usadas no seu sistema. Na pesquisa, geralmente é levantado várias opções que atendem determinada funcionalidade a ser aplicada e, a partir da análise de vantagens, desvantagens e pontos chave para determinada característica do sistema, a equipe define qual das tecnologias será aplicada. Um exemplo seria a linguagem de programação; dependendo  dos requisitos funcionais e não funcionais, definidos anteriormente, a linguagem na qual o sistema será desenvolvido, influenciará diretamente para atendê-los. Infelizmente, nenhuma linguagem atende todos os requisitos ao máximo, por isso, o cliente precisa definir dentre os requisitos, o seu “pódio” de prioridades. Baseado nessas prioridades de complexidade, segurança, desempenho etc, define-se qual melhor linguagem atende esses critérios. Ao final desses estudos, a equipe de desenvolvimento mostrará para o cliente todas as tecnologias que serão utilizadas para atender todas as funcionalidades do sistema. Algumas tecnologias pagas, como serviço de hospedagem ou alguma API (Interface de Programação de Aplicação), são apresentadas para o cliente várias opções e a equipe indica os serviços mais adequados, mas quem define, no final, é o próprio cliente.

7. Template

       Nessa fase, será desenvolvido a identidade visual do seu sistema, definindo-se paleta de cores, design de componentes, disposição das informações na tela dentre outras coisas. Normalmente, utiliza-se ferramentas de design como o Figma, que permite, além de desenvolver o template, fazer uma navegação nele. Dessa forma, cria-se um modelo do sistema navegável, onde o cliente pode visualizar como será a “cara” do sistema e o fluxo dentro dele. A ID visual é desenvolvida levando em consideração conceitos de UX/UI que visam a experiência do cliente dentro do sistema.

8. Definição de pontos de função

       Essa fase, assim como a fase 5, é executada somente com a atuação da equipe de desenvolvimento. A análise de pontos de função é uma técnica que tem o objetivo de mensurar o tamanho e complexidade de um sistema a partir das funcionalidades que serão implementadas. Aqui, é onde a equipe consegue determinar o prazo que será necessário para a execução do sistema e, com isso, também o seu preço.  

Conclusão

       Ao final dessas fases, é perceptível como o projeto de concepção é bem completo, saindo de uma ideia que, ao passar das fases, toma forma se transformando em um sistema aplicável. Com o andamento da concepção, o cliente consegue visualizar a ideia de forma mais clara, podendo adicionar coisas novas que não havia pensado antes ou retirar coisas que acaba percebendo não ser tão viável. Qualquer equipe de desenvolvimento que pegar toda essa documentação produzida nas fases, conseguirá executar o seu projeto, pois eles já terão toda a estrutura, assim como a planta de uma casa. Logo, percebe-se o impacto da concepção no desenvolvimento de um sistema pois, através dela, mapeia-se tudo que deve ser implementado, como deve ser implementado e por quê.

Tem alguma ideia de sistema web ou aplicativo? Entre em contato conosco, e faça sua concepção!

Júlia de Castro

Júlia de Castro

Gerente de Marketing

Compartilhe esse post: