Conheça a Informant          RSS

Um dos fatores mais importantes para o projeto –e desenvolvimento- de um software bem sucedido é o entendimento do seu usuário. Sem uma compreensão correta de quem são as pessoas que vão interagir com ele, suas dificuldades e necessidades, é praticamente impossível desenhar soluções para elas. Hoje vamos mostrar uma ferramenta que é incrivelmente útil para isto, as user personas. Veja só!

Personagens fictícios e reais ao mesmo tempo

Uma persona é a representação de um grupo de pessoas condensada em um personagem, com nome, rosto e história. Ela é uma maneira de humanizar os dados demográficos que a pesquisa de usuário trazem.

Quando fazemos (ou analisamos) pesquisas sobre usuários, encontramos informações sobre sua idade, classe social, formação e determinados hábitos, de acordo com o foco daquele levantamento específico. Já estabelecemos que o bom entendimento destes dados é fundamental no desenvolvimento, certo?

O problema é que é muito difícil para as pessoas decodificar os números, percentuais e percentuais levantados pelas pesquisas em informação realmente relevante para o produto que está sendo desenvolvido. Nós, como seres humanos, simplesmente não somos feitos para isto. É aí que a user persona mostra o seu enorme valor!

Humanizar a relação é o segredo para o bom entendimento

A criação da persona dá a estes números um nome, uma cara e uma história. Os dados apresentados são os mesmos, mas uma vez transformados em personagem, fica muito mais fácil entender e extrair informação útil deles.

Com o uso de personas, uma sequência de dados como: “Sexo masculino; superior completo; 20-30 anos; área de saúde; (…)” é transformada em uma verdadeira narrativa. Por exemplo: “João, 25 anos, médico. Tem o objetivo de se tornar cirurgião. É solteiro, tem pouco tempo para se dedicar ao lazer e estudos, devido à rotina pesada no hospital”.

Conseguem perceber como é muito mais fácil lidar com esta pessoa fictícia do que com os dados puros? Entretanto, para que a técnica traga bons resultados, é importante notar que…

Personas não são um exercício de imaginação!

Durante a criação das personas é fundamental se ater aos dados. A sua elaboração é muito mais uma atividade de análise e entendimento do que uma de criação. É uma grande tentação para o desenvolvedor imaginar o seu usuário final e incorporar esta percepção na persona que orientará a criação. Este é um erro terrível.

Por trás da escolha de um nome, rosto e história para a persona, a atividade principal relacionada à sua elaboração ainda é a pesquisa do usuário. Observar o seu comportamento, realizar entrevistas e testes continua sendo a melhor maneira de obter os dados que vão ser usados para orientar o desenvolvimento do seu software. Mas certamente a comunicação e uso destes dados através de um personagem, em vez de tabelas e gráficos, facilitará muito as conversas e aprendizados no time.

Você tem experiências com a utilização de user personas? Como foram os seus resultados? Não se esqueça de comentar! Para saber mais sobre esta, e outras ferramentas úteis no desenvolvimento de software, é só ficar ligado no blog da Informant!


O que são user personas?
Faça um social!

girl typing

Um dos problemas mais corriqueiros de todo desenvolvedor é conseguir explicar para leigos como seu trabalho funciona. Isso, aliado à velocidade com que os serviços se multiplicam pela internet, criaram uma falsa impressão de que os softwares são fáceis se serem feitos. Ainda mais quando estão na web.

Este fato se torna um problema quando o desenvolvedor precisa interagir com clientes e usuários em busca de uma melhor solução para algum projeto. De fato, incluir esse tipo de colaboração pode ajudar a desenvolvedor ferramentas melhores, mas também trazer uma série de dores de cabeça para os programadores.

Neste sentido, há algumas décadas, criou-se uma metodologia de desenvolvimento guiada por testes, onde uma aplicação era feita, testada e melhorada. Apesar de útil, a metodologia não estava de acordo com o desenvolvimento ágil, já que aumentava o número de interações e tornava o processo mais lento.

Com esses problemas em mente, em 2003, Dan North criou a Behavior Driven Development (BDD), que significa desenvolvimento guiado por comportamento e é adotada atualmente como uma técnica de desenvolvimento ágil. Nela, a colaboração entre os diversos agentes que serão impactados pelo software é largamente encorajada. Assim, todos participam do desenvolvimento desde o primeiro dia do projeto.

Como o BDD funciona

A BDD foca na criação de código através das interações entre desenvolvedores e usuários através de um processo denominado outside-in development, que significa desenvolvimento de fora para dentro. Na prática, a ideia é criar exemplos que descrevam o comportamento do software para que esteja seja avaliado pelos seus utilizadores.

Ao guiar o desenvolvimento do software através da metodologia de BDD é fundamental que os gestores do projeto esclareçam as responsabilidades de cada um e permitam que a construção da ferramenta seja questionada. Também é indicado que sejam usados mock-ups para simular módulos do sistema antes que esses sejam escritos.

O uso destes testes deve servir para criar a oportunidade de feedbacks rápidos antes do início do desenvolvimento. As vantagens da metodologias são muitas, desde econômicas (ao se permitir testes é mais provável que o software se encaixe na necessidade do cliente); até de usabilidade e eficiência da ferramenta.

A vantagem do Outside-in Development

O BDD deixa claro que o desenvolvimento do software deve ser feito a partir da interface que terá contato com o usuário final. Ou seja, o software é desenvolvido da parte externa para a interna, daí o nome outside-in develoment.

BDD é uma metodologia focada nos benefícios que a aplicação trará para o negócio e a única maneira disso ser percebido é implementando a interface e a entregando para que os usuários finais façam suas próprias considerações. Essas opiniões, quando avaliadas pelos desenvolvedores, devem guiar a construção do código. Alie isso à participação de um profissional do setor de qualidade da empresa, ajudando a criar os requisitos mínimos da ferramenta, e as chances do investimento ser bem aplicado disparam.

Conhecer metodologias de desenvolvimento ágil como BDD farão sua empresa muito mais eficiente e a qualidade das suas entregas muito maior.

Precisa de ajuda para agilizar o desenvolvimento do seu software? Fale com a Informant!


Uma introdução ao Behavior-Driven Development (BDD)
Faça um social!

Depositphotos_7263989_s

O sucesso da criação de um novo software é alcançado através da soma de diversos fatores: organização, planejamento, visão, comunicação, qualidade do time de execução e clareza do que, realmente, o cliente está buscando. Ainda assim, mesmo com todas as informações, nada garante que a ferramenta será bem aproveitada.

No meio de tudo surge uma figura muito importante para o bom andamento do projeto: o gerente de produto. Nos últimos anos as fábricas de software perceberam que possuir alguém que consiga centralizar as decisões, administrar o time e ainda entender a necessidade do cliente é valioso para os negócios, fazendo do gerente de produto o principal aliado da empresa. Nos próximos parágrafos iremos nos aprofundar sobre o papel desse profissional. Confira:

O papel do gerente de produto

É comum que as empresas acreditem que o principal papel do gerente de produto é estar focado no desenvolvimento do produto que alavanca o negócio. Mas, atualmente, sua função é muito mais ampla: ele cuida do desenvolvimento, mas também da implementação, atendimento, marketing e vendas. Apesar de não ser responsável por todas essas áreas, é função dele perceber quando problemas possam influenciar o desempenho do produto.

Basicamente, o gerente de produto presta suporte a todas essas áreas, focando na qualidade da entrega final e impedindo que outros fatores, como falta de recursos, atrapalhe a experiência do cliente. O gerente de produto costuma atuar mais no marketing e vendas, por conhecer cada vantagem do produto e saber como estas devem ser exaltadas para melhorar as vendas.

Motivos para contar com um gerente de produto

A busca por criar ferramentas cada vez melhores faz do gerente de produto uma peça fundamental em toda empresa de software. Isso significa que um bom gerente é capaz de melhorar a qualidade das suas entregas e ainda assim garantir o uso inteligente e eficaz de seus recursos.

Para se alcançar esse resultado é fundamental que você saiba o que buscar ao contratar este profissional. Lembre-se que ele terá que controlar o desenvolvimento da ferramenta, mas também estará em contato com clientes e colaboradores. Assim, é possível listar algumas competências que todo gerente de produto deve ter, além da paixão por criar bons produtos: empatia com clientes, inteligência, ética, integridade, confiança, foco, conhecimento em tecnologia, negócios, processos e uma atitude vencedora.

Apesar de parecer que essas habilidades sejam impossíveis de serem reunidas em apenas um profissional, precisamos notar que a maioria delas são obrigatórias quando estamos falando de desenvovimento de software. Um gerente de produto que não conheça tecnologia ou que não esteja por dentro dos processos e negócios da empresa não será capaz de gerenciar um time de desenvolvedores.

Já um profissional sem ética ou integridade, apaixonado pelo que faz e focado em buscar metas e objetivos não irá durar em emprego algum. Por todos esses motivos a função de um gerente de produto será, sim, de coordenar a construção das suas ferramentas, mas também será um grande ativo para sua empresa ao gerenciar clientes, recursos e resultados.

Você já trabalha com um gerente de produto? Qual sua experiência? Deixe seu depoimento nos comentários abaixo.


Qual a função de um gerente de produto?
Faça um social!

Chegamos ao fim da série de quatro posts sobre a metodologia de desenvolvimento de softwares da Informant. Durante a série, conseguimos expor como nosso time trabalha com o objetivo de construir uma ferramenta capaz de entregar a solução para o problema do cliente, dentro de prazo e custo saudável, utilizando o que há de mais pioneiro em tecnologia, design e planejamento.

Mas antes de terminar, vamos tratar de um ponto que é o principal desejo de todo empreendedor quando cria sua empresa: vê-la crescer e atrair cada vez mais usuários. Mesmo que esse estágio não pareça trabalho para uma fábrica de software, aqui na Informant temos a convicção de que podemos ser parceiros dos nossos clientes durante toda a vida útil do software. Assim, criamos uma metodologia que melhora a ferramenta e dá a ela combustível para avançar sempre em frente. Então, para encerrar, conheça os três pontos fundamentais para o crescimento:

Computação em nuvem

Atualmente quando um software é planejado através de metodologias ágeis e design thinking, ele também é pensado para estar disponível o máximo de tempo possível. Por estar disponível, é preciso entender que não significa apenas estar num servidor hospedado na nuvem – ao invés de servidores locais e seus emaranhados de cabos azuis – mas ser acessível a todos.

Quando um cliente está decidindo pela sua empresa ele não precisa o que você está fazendo para manter seu site no ar. Na verdade, ele quer poder acessar o sistema através do seu computador, mas também de um smartphone ou tablet com acesso móvel. Isso significa que sua ferramenta precisa estar disponível para todos a todo momento para que você possa atrair mais clientes e continuar crescendo.

Análise de engajamento

Mesmo com toda essa tração não significa que seu software seja perfeito. Ao longo do caminho é provável que novos clientes, com problemas diferentes, sugiram melhorias e incrementos. À medida que esses pedidos se tornam constantes é seu dever implementá-los. Não apenas para satisfazer os novos clientes e atrair mais, mas também para se posicionar um passo à frente da concorrência.

Implementar melhorias no software em busca de mais crescimento é um processo infinito. Ou seja, a empresa precisa monitorar e melhorar constantemente para manter-se na liderança. Um dos grandes erros das empresas que vão à falência é considerar a inovação algo desnecessário por estarem há muito tempo na frente. Muitas vezes, essa lentidão servirá de sinal para o seu concorrente lançar algo melhor e mais moderno.

Para que isso não aconteça e para que você possa construir um software alinhado com os objetivos da sua empresa, sem estourar prazos e orçamentos, procure nosso time e vamos colocar em prática tudo que tratamos nessa série de posts. Nossa metodologia funciona não apenas para novas ferramentas, mas para empresas que procuram melhorar seus processos através de um avanço tecnológico. Através da análise do problema, desenvolvimento da solução, métricas, engajamento e um total apoio ao cliente do início ao fim do processo.

Mais alguma dúvida? Vamos continuar o assunto nos comentários abaixo. Participe!


Conheça a metodologia da Informant! Etapa 4

Faça um social!

Metodologia Informant

No terceiro post da série sobre a metodologia de desenvolvimento de software que utilizamos na Informant vamos nos aprofundar na importância do acompanhamento das métricas e de como elas nos guiarão na busca de uma ferramenta muito mais completa e funcional.

Ao longo dos últimos dois posts,  falamos sobre como, em parceira com o cliente, conseguimos identificar o problema do usuário e, baseado nele, projetar um software que entregue a melhor solução dentro do orçamento e prevendo um retorno sobre o investimento. Através de metodologias de design thinking, user experience e desenvolvimento ágil, os sistemas que criamos surpreendem pela rapidez com que são lançados e pela confiabilidade de uso.

Para chegar neste ponto precisamos passar pela terceira etapa do processo com sucesso. Sem boas métricas, análises e acompanhamentos, corremos o risco de construir uma ferramenta pouco útil para o cliente, se transformando em prejuízo para a empresa. Assim, nos próximos parágrafos iremos explicar como as métricas são fundamentais para o desenvolvimento de software. Acompanhe:

A diferença entre métricas e feedbacks

Quando um software é lançado, mesmo em sua fase beta, conseguimos colher um grande volume de dados. Através de ferramentas de análise é possível medir todas as interações do usuário sem afetar a navegação ou a experiência de uso.

Por outro lado, é preciso diferenciar o que é métrica e o que é feedback nesse processo. Métricas são resultados vindos de uma grande porção de interações e servem para dar uma visão geral sobre o desempenho do software. Já feedbacks são gerados por usuários reais e são relevantes para correções pontuais, como uma funcionalidade que não esteja funcionando corretamente.

Ambos são importantes para as melhorias na ferramenta, mas devem fazer parte de estratégias diferentes. Métricas são mais fáceis de serem conseguidas; já feedbacks precisam ser incentivados.

Quais métricas são relevantes?

No meio de tanta informação é preciso saber separar o que é importante medir do que deve ser ignorado. Isso serve tanto para métricas, quanto para feedbacks dos usuários. Se seguirmos todas as métricas podemos cair na tentação de corrigir todos os aspectos do software, perdendo o foco do que realmente interessa: entregar uma solução simples, que resolva o problema do cliente.

Assim, é fundamental estabelecer uma métrica central para o software. Esta pode ser o número de cálculos que ele fará, ou a taxa de conversão de novos usuários. A partir disso é que as melhorias são decididas. Em relação aos feedbacks, não se deve fazer todas as correções e melhorias que os usuários solicitarem, apenas aquelas que se tornarem recorrentes. Ou seja, se algo está incomodando, mais de um usuários irá reclamar. Dessa forma, não perca tempo criando backlogs de reclamações, você saberá exatamente o que precisa ser melhorado no software.

Aprendendo e melhorando

A partir das métricas e feedbacks recebidos, as melhorias são listadas e implementadas. Com um pouco de tração já é possível lançar melhores versões do software em busca de mais usuários. Quando você chegar neste estágio seu software já estará pronto para escalar e se tornar lucrativo, mas isso não significa que nosso trabalho terminou! No próximo post falaremos sobre como a Informant pode te oferecer o combustível que falta para seu software decolar.

Continue acompanhando a série e deixe seu comentário abaixo! Até lá!


Conheça a metologia da Informant! Etapa 3

Faça um social!

Continuando a série de posts sobre a metodologia de desenvolvimento de software da Informant, hoje vamos falar sobre como nosso time é capaz de avançar com o seu projeto sem turbulências rumo ao resultado desejado.

Antes disso convém lembrar a importância que demos no início da nossa série em descobrir o problema da sua empresa ou do seu cliente antes de começar a construir uma nova ferramenta. O acúmulo de informação na primeira etapa servirá de base para o que será proposto a partir daqui. Aliadas, as duas fases trabalharão para que o retorno sobre o investimento seja o maior possível, dentro de um prazo saudável de desenvolvimento.

Assim, já com o problema claro, passamos para o estágio de validação de hipóteses, de construção do software e engajamento dos primeiros usuários. Acompanhe a continuação da série a seguir:

Validando hipóteses

O processo de validação de hipóteses é fundamental para o desenvolvimento de um software. É comum muitos clientes acreditarem que possuem, instintivamente, a melhor solução para os seus clientes, sem realmente testar suas deduções. Dessa forma acabam criando ferramentas que não serão úteis e menos ainda comerciais.

Um bom método para validar hipóteses é conversar com seus clientes para tentar entender se a solução que você está criando é realmente funcional para eles. Ou seja, se ela resolve o problema dele. Caso contrário, com os feedbacks recebidos é possível fazer melhorias até se encontrar a melhor solução. Faça uma pequena apresentação ou então simule o funcionamento do seu software para perceber a aceitação dos seus futuros usuários.

A partir dessa solução é que começamos o construção do software através da metodologia de desenvolvimento ágil.

A metodologia ágil

A metodologia de desenvolvimento ágil de software tem como objetivo garantir a satisfação do cliente entregando rapidamente e continuamente softwares funcionais. Na prática isso significa que nosso time irá entregar resultados quase que semanalmente (ao invés de em meses, como na indústria de software tradicional).

Esse tipo de desenvolvimento encoraja a participação do cliente para que o resultado final seja o melhor possível. Mesmo mudanças tardias de escopo são bem-vindas se essas se mostrarem necessárias para o objetivo do projeto. Prezando pela excelência técnica e simplicidade, a metodologia ágil de software diminui os riscos da implementação e maximiza o retorno sobre o que foi investido na ferramenta.

Para que a metodologia ágil seja um sucesso, é fundamental que haja confiança entre as partes. Do contrário perde-se agilidade na tomada de decisões em prol de um software melhor.

Engajamendo de early adopters

Com a ferramenta em fase de finalização é preciso colocar usuários reais para testá-la. O objetivos desses testes não é procurar por falhas – apesar de esse também ser um estágio importante – mas entender como eles irão se engajar com o software.

Os primeiro usuários – chamados de early adopters – costumam estar mais abertos a novidades e novos sistemas, sendo bons testadores para novas funcionalidades. A partir do feedback deles é que alterações e melhorias poderão ser feitas, mesmo após o lançamento da ferramenta. Aos poucos mais usuários são colocados para dentro do software, gerando mais dados e mais feedbacks. Essa medição e análise são alicerces para o sucesso do seu software, mas este será o assunto do nosso próximo post. Continue acompanhando a série e comente através do formulário abaixo.


Conheça a metodologia da Informant! Etapa 2
Faça um social!