Construindo Protótipos no Excel Com a Participação Ativa dos Usuários
Fernando Pinho Em ago-2020
Resumo
Durante anos levantando requisitos e desenhando aplicações temos utilizado a construção de protótipos para ter uma visão próxima da realidade do produto e avançar nas etapas de especificação funcional. Utilizamos como ferramenta de prototipação o MS-Excel com excelentes resultados principalmente pelo envolvimento dos usuários ativamente nessa construção. Este artigo pretende mostrar como utilizamos e quais os principais benefícios de utilizar um aplicativo de amplo domínio pela grande maioria dos atores do processo de desenvolvimento e independente da metodologia de desenvolvimento utilizada, os protótipos sempre são de grande utilidade para construir bons produtos.
Introdução
A especificação de um sistema de informação é sempre um grande desafio para todos os envolvidos e a qualidade da aplicação produzida será melhor sempre que contar com o envolvimento comprometido dos consultores e dos usuários em todas as etapas. Aos consultores cabe um esforço de compreensão para produzir uma documentação que traduza para a equipe de desenvolvimento com fidelidade aquilo que os usuários precisam e desejam. Muito aplicada em projetos a documentação convencional com descrições de casos de uso e diagramas costuma afastar os usuários do processo por vários motivos mas principalmente pelo esforço adicional que terá para compreender o que está sendo apresentado em desenhos e textos. Os documentos tendem e ser grandes e em muitos casos o que realmente interessa e necessita mais da avaliação do cliente se perde entre tantas páginas. Nossa experiência em projetos onde documentos de duas a três centenas de páginas são formalmente encaminhadas ao final de uma etapa para aprovação formal do cliente. Passado o prazo acertado ele encaminha um e-mail dizendo que o documento que leu está ok e que os trabalhos podem prosseguir. Observe que eles participaram de reuniões onde apresentaram as suas dificuldades e seus desejos; os consultores entenderam da sua forma e construíram uma especificação com um nível de detalhe bem mais profundo, descreveram regras e encadearam processos. Tudo isso formalizado em documento que foi aprovado mas quando as primeiras versões são apresentadas o usuário se dá conta que não é bem aquilo que ele pensava e transforma a etapa de construção de códigos em prototipação mas nesta hora o custo para acertar o rumo pode ser muito caro além de comprometer o cronograma.
A utilização de protótipos é largamente aplicada para trazer mais segurança a especificação funcional e quanto mais fiel é o protótipo menores são os riscos de mudanças no projeto.
Como desenvolvedores participamos de muitos projetos onde usamos protótipos, construídos com aplicações próprias para tal ou usando HTML e programação simples para criar protótipos mais reais.
Este artigo apresenta nossa experiência na utilização do Excel como ferramenta de prototipação que possibilita aos usuários participarem ativamente nas fases iniciais do novo projeto e constroem juntos com os consultores os protótipos da aplicação que será desenvolvida e usada em breve por eles. Nossa abordagem é tão somente em relação a prototipação como instrumento de entendimento e apoio a especificação e pode ser aplicada independentemente da metodologia de desenvolvimento de sistemas que venha a ser utilizada.
Neste artigo vamos apresentar dois casos recentes do ano de 2019 onde desenvolvemos para a SEMARNAT (Secretaría de Medio Ambiente y Recursos Naturales - México) e para a especificação de requisitos do SEIRHI do INEA (Instituto Estadual do Ambiente - Rio de Janeiro).
Sistema de Informação de Recursos Hídricos - INEA
No ano de 2019, em agosto iniciamos no INEA-RJ o projeto para especificar os requisitos do Sistema Estadual de Informações sobre Recursos Hídricos – SEIRHI.
O SEIRHI é um sistema de grande abrangência, trata da gestão de Recursos Hídricos do estado do RJ ele contempla temas como a avaliação de outorgas a pessoas e empresas para uso de mananciais, faz os cálculos e controla a cobrança de taxas, faz a gestão de fundos de investimento, em tempo real administra a medição pluviométrica, monitora volume de águas de rios, a qualidade das águas dos mananciais, as condições das praias, produz previsões metereológicas, controla a manutenção da rede de estações de coleta de dados, emite alertas de cheias. A informação é criteriosamente avaliada, classificada quanto ao grau de confiabilidade e agregada ao acervo que dispões de décadas de dados.
Nossa equipe manteve contato com diferentes técnicos, em diferentes níveis hierárquicos que com sua necessidades distintas realizam seus trabalhos com dificuldades e muito esforço para atender as demandas a seu tempo.
Os consultores se depararam com disciplinas muito diferentes dentro do mesmo projeto pois em uma reunião tratavam da utilização de equações de curvas de nível para calcular vazões e na reunião seguinte analisavam parâmetros físico químicos, bacteriológicos e biológicos usados para monitorar a qualidade das águas. Entender o que estava sendo relatado pelo usuário é fundamental e requer técnica, atenção e muito empenho.
Realizamos reuniões, conhecemos a rotina, a documentação existente, analisamos as ferramentas utilizadas, os recursos disponíveis, as tecnologias aplicadas, identificamos as necessidades, aplicamos as técnicas usuais para projeto deste porte. Conseguimos ter uma visão que nos apontava para um complexo sistema de informação a ser implementado como uma Plataforma Web capaz de integrar todos os módulos e gerenciar o acervo de dados o maior patrimônio do INEA. Nosso objetivo principal era levantar da melhor forma possível os requisitos definidos pelos usuários, delimitar a abrangência, dividir em módulos, em componentes, funcionalidades e estruturas de dados que suportassem a aplicação.
Os desenvolvedores que irão programar a aplicação precisam de informações em nível detalhado, objetivo, elas serão trabalhadas por analistas de negócio, administradores de bases de dados, programadores, integradores e designers. Estes documentos não podem ser validados por usuários pois já estão em nível e as vezes em linguagem técnica que a maioria deles não domina.
O primeiro documento gerado relacionava os requisitos como um registro do que foi levantado expressando a visão dos consultores, o documento trazia o desenho dos módulos, conceitos, listas de componentes, descrições, listas de usuários. Continuamos aprofundando e nas reuniões seguintes pedimos aos usuários que mostrassem como trabalhavam, as ferramentas que estavam usando, os produtos que geravam e o que precisavam e como gostariam trabalhar.
Nossa experiência em outros projetos sempre demonstrou que protótipos são muito uteis e por isso sempre que possível temos aplicado. Já construímos protótipos usando ferramentas de mercado própria para este tipo de construção, também já criamos protótipos usando HTML sem programação ou com um mínimo de recursos programados. Também não foi a primeira vez que utilizamos o Excel como ferramenta de prototipação mas neste projeto contribuiu o fato que uma boa parte do material fornecido pelos usuários contemplava mapas, gráficos e relatórios que já eram produzidos no Excel.
Junto com o Cliente decidimos pela construção de um protótipo., escolhemos um módulo e para construir o protótipo que reuniu os painéis e mapas, relatórios e formulários fornecidos e nossas propostas. Na primeira apresentação do protótipo foi muito produtiva com plena aceitação dos usuários que iniciaram um processo de visualização da sua atividade representada como gostaria. Durante a reunião, algumas vezes os usuários modificaram e incluíram informação nas telas apresentadas. Nas reuniões seguintes o protótipo produzido pelos consultores foi apresentado em versões produzidas pelos usuários contemplando ajustes desejados e proposições tudo acrescentado por eles diretamente na sua versão do protótipo.
Os trabalhos avançaram e construímos protótipos para os demais módulos do SEIRHI. Para cada módulo os consultores fizeram uma primeira proposta e, em reuniões subseqüentes utilizamos o protótipo como orientação das discussões. Em algumas situações os usuários apresentavam suas versões do protótipo e todos podiam avaliar, corrigir e de certa forma homologar as propostas.
Construir os protótipos em Ms-Excel, permitiu que os usuários participassem mais do projeto e aqueles mais comprometidos com os seus respectivos módulos assumiram uma coordenação interna e distribuíam a responsabilidade por componentes que eram por ele reunidos e consolidados como suas novas propostas. Os principais painéis de controle de informação, formulários de alimentação de dados, processos e procedimentos estavam no protótipo puderam ser visualizados por usuários e consultores.
O passo seguinte foi desenvolver para cada protótipo um documento de especificação que continha detalhes das funcionalidades e registravam suas particularidades, definindo escalas, regras, fórmulas, equações, descrevendo o conteúdos de campos, tabelas utilizadas.
Nesta fase dos trabalhos os desenvolvedores participam mais intensamente das reuniões de homologação e contribuem para melhorar a qualidade e o nível de detalhes necessários para etapa de programação.
Bolsa de Resíduos PNUD – México
Também em 2019, nossa equipe criou para a Secretaria de Meio Ambiente do México no âmbito de um projeto financiado pelo PNUD, uma aplicação que permite que geradores de resíduos RAEE “Residuos de Aparatos Eléctricos y Electrónicos” possam ofertar e ser contatados por empresas recicladoras trabalhando como uma bolsa de mercadorias. Atende do mais simples gerador de resíduos, por exemplo: alguém que quer descartar um microondas de forma consciente para encaminhar ao local adequado onde poderá ser descartado com segurança ou até mesmo reciclado. A aplicação também atende associações e organizações que promovem campanhas de coleta de resíduos e buscam recicladoras para serem remuneradas e destinar os recursos auferidos nos seus projetos sociais. Neste caso eles tem lotes grandes de resíduos. Já as empresas recicladoras estão encontrando na Bolsa de Resíduos um local onde podem conseguir insumos de forma paga ou gratuita. A bolsa administra essa interação entre as partes, registra e mede os volumes que por ela circulam.
Mais simples que o SEIRHI, na Bolsa de Resíduos RAEE do México também utilizamos os protótipos em Excel, neste caso as telas e os painéis foram todos criados e o encadeamento com links entres as abas permitiu uma navegação entre telas simulando a aplicação final. Tivemos a participação também dos consultores do PNUD que nos permitiu minimizar as dificuldades naturais de desenvolver no idioma espanhol. Toda a terminologia foi resolvida na fase de especificação.
Protótipo SEIRHI
Este diagrama representa o sistema e seus módulos. Usando “hiperlinks” criamos ligações de cada módulo para uma planilha, ou seja, com o seu protótipo. Como temos um sistema com muitos temas distintos, trabalhar com uma abordagem modular com um arquivo Excel foi muito prático.
O protótipo do módulo “Monitoramento das Águas – Qualitativo” ao ser clicado sobre a imagem do módulo, exibe para seus usuários um menu com três colunas identificadas como componente e suas funcionalidades. Cada linha leva a uma nova tela. O encadeamento é possível mas como não tem programação, em uma sequencia maior encadeada, o usuário pode se perder e não conseguir retornar ao ponto de onde partiu. Para minimizar esta desvantagem nós adotamos o símbolo “home” localizado no cabeçalho das telas que ao ser clicado retorna para o menu principal.
Não existem limites para o que se pode agregar a uma tela. Em alguns protótipos, o usuário relacionou séries e com elas gerou gráficos. Os resultados são os melhores possíveis e o desenvolvedor recebe um modelo de como realmente o usuário deseja que seja construído com as facilidades das linguagens de programação.
Muito prático também paro o desenho de formulários pois os campos vão sendo relacionados e incluídos por consultores e usuários, os termos são ajustados neste momento e as versões inicias da aplicação já tem alto grau de alinhamento com a terminologia utilizada pelo cliente.
Os painéis e relatórios desenhados no protótipo também tem um nível de precisão muito alto em relação ao que será construído, muitas dúvidas são antecipadas e resolvidas, regras são identificadas e definidas, requisitos são apontados e o trabalho flui normalmente.
A representação das sequências de telas é possível, é fácil de ser feito e muito útil para entender como vai funcionar a aplicação. As telas são encadeadas usando botões com ‘links’ assim como serão implementados na aplicação final. Desta forma descrever o comportamento que deve ser adotado quando acionado o botão, torna-se muito mais fácil e o seu entendimento mais intuitivo pelo desenvolvedor. Notas podem ser inseridas para descrever detalhes tais como “ao ser pressionado este botão a aplicação deve abrir uma nova tela e exibir os dados selecionados ou filtrados como definidos na tela de origem”.
Etapas x Utilidades
· Levantamento – nesta fase os consultores podem organizar listas, formulários existentes, condições, legislação. Usado como um repositório de informação;
· Entendimento – de uma forma simples, prática os consultores podem desenhar seu entendimento inicial e dar inicio ao processo de validação;
· Homologação do Modelo – desenhos, divisão em módulos, componentes, responsabilidades, periodicidade e abrangência. Todas estas atividades pertencem ao processo de compreensão e dimensionamento e podem ser facilitadas com a utilização de protótipos;
· Especificação Funcional – esta é a etapa onde os protótipos são mais utilizados e trazem mais ganhos ao processo pois sucessivos protótipos são construídos, módulos e componentes são representados, usuários podem ter visão de conjunto mas podem focar nos módulos e componentes de maior interesse para suas atividades;
· Design – os próprios usuários indicam como desejam o design final, a disposição dos campos, a sequencia de alimentação destes, o encadeamento entre telas, cabeçalhos, rodapés, nomenclatura adotada dentre outros.
Conclusões
O uso de protótipos para construir uma visão das funcionalidades que vão sendo validadas e aperfeiçoadas é muito eficaz, permite uma representação mais precisa do que desejam os usuários e como os desenvolvedores estão entendendo e visualizando a solução.
Usando o Excel como ferramenta para construir protótipos possibilita que os usuários participem ativamente na sua construção e aperfeiçoamento, modificando e acrescentando campos, criando colunas, formatando saídas e formulários pois dispõem da ferramenta e em geral dominam sua utilização.
Nossa experiência usando Excel na construção de protótipos já vem sendo aplicada há muito tempo, inicialmente no desenho de um relatório ou de um formulário mas nos últimos quatro anos temos aplicado para construir um protótipo completo da aplicação. Esta experiência tem demonstrado que os próprios usuários, usam o protótipo inicial e fazem alteram, acrescentam informações e propostas de funcionalidades. O Excel funciona como uma linguagem universal, está disponível em quase um bilhão de estações de trabalho no mundo inteiro, os usuários já o conhecem, são capazes de abrir os protótipos, conseguem navegar nas funcionalidades, muitos usuários conhecem profundamente e são capazes de construir gráficos e painéis desejados na aplicação final. Também no dia a dia muitos usuários mantém suas bases de dados, seus processos de controle, de medição, de avaliação usando o Excel. Tudo isto contribui para que consultores e usuários construam seus protótipos de forma incremental e colaborativa. Cabe ao consultor validar modelos, integrar partes fornecidas por diversos usuários, organizar e produzir versões sucessivas que são periodicamente compartilhadas, discutidas e homologadas.
Qualquer que seja a metodologia utilizada para o desenvolvimento, das tradicionais baseadas na UML (Unified Modeling Language) ou as metodologias ágeis (SCRUM, Kanban, ...) podem utilizar o Excel na construção dos protótipos pois trazem ganhos e contribuem substancialmente para o entendimento entre usuários e desenvolvedores.
Fernando Pinho
Profissional de Tecnologia da Informação desde 1977. Pós-Graduação em Sistemas pela COPPE/UFRJ, 1983. Graduação em Tecnologia de Processamento de Dados pela Universidade Federal do Ceará, 1978. Consultor sênior da FPS é o responsável técnico por projetos, serviços e treinamentos executados. Possui trabalhos no mercado nacional e internacional e comprovada experiência no gerenciamento de projetos, na elaboração de programas de treinamento, no planejamento e controle de atividades de TIC de médias e grandes empresas, na consultoria e implantação de sistemas de informação.
Contato e mais informações: fpinho@fps.com.br