modificações, permitindo o acompanhamento e intervenção remota em tempo real e dentro do próprio ambiente de desenvolvimento. Além disso, consideram que o IdDE agiliza a atividade de desenvolvimento e o ensino e treinamento em programação, principalmente quando os participantes estão separados geograficamente, permitindo o auxílio e suporte a alunos e programadores menos experientes.
Ao sugerir melhorias para o ambiente, solicitado na pergunta 10, a principal manifestação foi em relação à implementação do tratamento de situações de conflito, que levam a diferentes versões de códigos. Todavia, ainda assim, esta foi considerada uma situação pontual que poderia ser facilmente controlada através de uma coordenação das modificações, pela utilização de um ou um “token virtual”. Além disso, foi sugerida a criação de um histórico que mostre as alterações feitas num arquivo e que auxilie na resolução de problemas. Entretanto, é importante observar que essa funcionalidade já está implementada no IdDE, mas no momento destes testes ainda não estava concluída.
Todos os professores participantes consideraram a possibilidade de utilizar a ferramenta em seu dia-a-dia (Pergunta 11), pois ela seria bastante útil para prestar e receber auxílio durante o desenvolvimento. Da mesma forma, consideram que ela poderia ser vista como um controle de versionamento em tempo real.
Em relação à produtividade (Pergunta 12), todos os professores concordam que a ferramenta contribui para o seu aumento, principalmente em situações onde existem dúvidas de programação ou quando um usuário necessita de ajuda na codificação. Todavia, foi ressaltado que um aumento de produtividade também depende do modelo de desenvolvimento adotado, além da experiência da equipe.
Na avaliação final dos professores, o ambiente possui um grande potencial pedagógico, inclusive houve grande interesse em utilizá-lo nas disciplinas ministradas pelos participantes.
5.3.1 Descrição do cenário e metodologia
O objetivo principal da realização dos testes junto a essa empresa foi o de avaliar a aceitação da aplicação num ambiente real de desenvolvimento. A empresa já adota o Netbeans como IDE para o desenvolvimento e, da mesma forma, já utiliza o XMPP para a comunicação através de mensagens instantâneas, mantendo, para esse fim, um servidor na própria empresa.
O Sistema Operacional instalado nas estações de trabalho dos participantes é o Linux OpenSUSE.
Antes da realização dos testes com a equipe, houve um contato com o diretor de desenvolvimento, para o qual foi apresentado o IdDE, além de terem sido feitos pequenos testes de edição colaborativa e troca de mensagens para a demonstração das funcionalidades.
Posteriormente, o plugin a foi instalado nos equipamentos dos participantes e as instruções de uso foram disseminadas internamente pela própria equipe.
Durante o período de testes, a equipe utilizou a ferramenta de chat e a edição colaborativa. A comunicação através de mensagens de texto foi utilizada para a troca de ideias e solução de dúvidas, enquanto que a ferramenta de edição colaborativa foi utilizada em situações nas quais um programador necessitava de auxílio na criação do seu programa. Dessa forma, nos casos onde a comunicação através de chat não solucionava a dúvida, os programadores mais experientes puderam alterar diretamente o código, sem que houvesse a necessidade de deslocamento dentro da empresa. Aliado a isso, a ferramenta de edição colaborativa foi utilizada para o acompanhamento e inspeção da qualidade de código.
Apesar do nível de dispersão ser do tipo “Mesma localização física” na classificação de Audy e Prikladnicki (2008), considera-se que a realização dos testes neste cenário seja fundamental, pois além de serem realizados num ambiente de desenvolvimento real, acredita-se que o nível de exigência em relação do funcionamento do software num ambiente de produção também seja superior aos experimentos realizados nos cenários 1 e 2. Nesse sentido, qualquer problema apresentado pelo ambiente, trará impactos no resultado final dos testes e, certamente, influenciará na do IdDE. Aliado a isso, pelo fato de os profissionais já estarem habituados ao uso do Netbeans em seu dia-a-dia, também será mais fácil avaliar a resistência em relação à aceitação de uma nova ferramenta. Por fim, acredita-se que pelo fato de não ter havido um contato com toda a equipe participante, seja mais fácil avaliar a dificuldade que os usuários tiverem na utilização do software.
5.3.2 Análise de Resultados
Os resultados obtidos na avaliação dos testes neste cenário estão apresentados na Figura 68.
Figura 68: Resultado das avaliações do Estudo de Caso, Cenário 3.
Analisando o gráfico, percebe-se que todos os participantes consideram que o IdDE auxiliou na comunicação através de mensagens instantâneas (Pergunta 1). Da mesma forma, na opinião de todos os participantes o ambiente auxiliou no processo de edição compartilhada e colaborativa de código (Pergunta 2). Entre as justificativas, está o fato de a ferramenta ter se mostrado muito eficiente na edição compartilhada, sem apresentar problemas quando duas ou mais pessoas trabalharam simultaneamente no mesmo arquivo. Igualmente, afirmam que a ferramenta auxiliou nas situações em que foi necessário um trabalho conjunto num mesmo programa. Na avaliação do diretor de desenvolvimento, a ferramenta tornou mais prática e fácil a troca de experiências em situações que demandaram a orientação e auxilio aos desenvolvedores, tarefa que desempenha ordinariamente. Além disso, avalia que contribuiu também o fato de não ser necessário que todo o código fonte tivesse que estar num repositório SVN na máquina local.
0 0,5 1 1,5 2 2,5 3 3,5 4 4,5 5
5 5 5
4
5 5 5 5
4 5
4 5
0 0 0
1
0 0 0 0
1
0 1
0
Sim Não
A ferramenta de comunicação através de áudio não foi testada neste cenário, todavia, todos os participantes consideram que esse tipo de comunicação seja importante, quando os programadores estão separados geograficamente (Pergunta 4). Entre os motivos mencionados, está o fato de facilitar o entendimento entre os envolvidos sendo, geralmente, mais eficaz que outra forma de comunicação escrita, principalmente em situações que necessitam a tomada de decisões. Também houve a justificativa que o áudio agiliza o processo de comunicação e ajuda a evitar mal-entendidos. Da mesma forma, foi considerado que essa ferramenta complementa ideias e pensamentos, além de deixar a comunicação mais prática e dinâmica em comparação com o chat.
Em relação ao processo de ensino/aprendizagem presencial (Pergunta 5.1), apenas um participante considerou que a ferramenta não auxilia nesse contexto, justificando que a ferramenta seria dispensável. Contudo, entre aqueles que acreditam que o uso da ferramenta seja interessante também nesta situação, houve justificativas como o fato de não obrigar que dois ou mais programadores estejam sentados lado a lado utilizando o mesmo computador, mas sim, cada um podendo estar em seu próprio computador.
Todos os participantes consideraram que o IdDE contribui no processo de ensino/aprendizagem à distância (Pergunta 5.2). Entre as justificativas, está o fato de a ferramenta possibilitar que as pessoas possam trabalhar no mesmo código, mesmo estando longe. Aliado a isso, a ferramenta possibilita que se demonstre e explique um código simultaneamente para diversas pessoas, inclusive utilizando áudio.
A pergunta 5.3, que questiona sobre a contribuição da ferramenta para o desenvolvimento de software realizado por equipes que estão num mesmo ambiente, retrata a situação física deste grupo de estudo. Para todos os participantes, a contribuição da ferramenta é inquestionável nesta situação, pois possibilita que a equipe visualize o código e acompanhe uma demonstração mesmo que não haja uma sala de reuniões com projetor disponível. Da mesma forma, foi considerado que os programadores podem interagir num mesmo código fonte, cada um estando em seu computador.
Em relação ao desenvolvimento distribuído de software (Pergunta 5.4), a ferramenta foi considerada importante para 100% dos participantes. Entre as razões apontadas está a possibilidade de tradução das mensagens do chat, o que facilita a comunicação com pessoas de outros idiomas. Aliado a isso, a ferramenta de edição colaborativa foi considerada de extrema importância por possibilitar que os usuários trabalhem simultaneamente no mesmo código fonte.
No que se refere à experiência de uso e praticidade funcional (Pergunta 6), os participantes foram unânimes em considerar que a integração da ferramenta ao Netbeans tenha contribuído positivamente. Nesse sentido, afirmaram que, quanto mais integrada for a ferramenta de desenvolvimento, mais prática e ágil será a sua utilização. Da mesma forma, houve afirmações que consideram o Netbeans como uma ferramenta muito boa para o desenvolvimento e a integração de novas funcionalidades enriquece o ambiente, pois todas as funcionalidades e necessidades estão atendidas num mesmo IDE.
A disposição das janelas dentro do Netbeans e a Interface Homem-Computador (Pergunta 7) foram consideradas inadequadas por apenas um usuário. Como justificativa, está o fato de as janelas de chat não estarem integradas totalmente ao Netbeans, não possibilitando o seu acoplamento, como as demais janelas.
Em relação à performance do Netbeans, todos os participantes consideraram que não houve mudança após a instalação do plugin (Pergunta 8).
Na pergunta 9, que solicita que cada participante descreva o principal benefício proporcionado pela ferramenta, as principais considerações fizeram referência à edição simultânea por várias pessoas, tornando o desenvolvimento mais ágil, rápido e confortável, mesmo que não se esteja fisicamente próximo e sem a ocorrência de problemas. A possibilidade de poder revisar e inspecionar o código também foram apontados como benefícios da ferramenta. Da mesma forma, a facilidade de comunicação e o fato da ferramenta não exigir que cada usuário tenha que manter uma cópia local de todo o repositório SVN do projeto também foram apontados como benefícios.
Ao considerarem melhorias ou novas funcionalidades que pudessem ser incorporadas ao ambiente (Pergunta 10), os usuários fizeram referência à integração das janelas de chat ao ambiente do Netbeans, permitindo que elas fiquem acopladas como janelas nativas. Aliado a isso, foram sugeridas mudanças na lista de usuários, solicitando que o nome do usuário fosse substituído pelo nome completo do pessoa. Por fim, também foram sugeridas mudanças nos painéis de configuração do plugin.
Entre os participantes dos testes, apenas um considerou que não utilizaria o plugin no seu processo diário de desenvolvimento (Pergunta 11), sem apresentar, no entanto, as razões para essa escolha. Todos os demais utilizariam a ferramenta, alegando que ela é de grande auxílio no desenvolvimento compartilhado, possibilitando que cada usuário permaneça em seu computador e, eventuais problemas de código possam ser encontrados mais rapidamente.
Além disso, também foi considerado importante o fato de a ferramenta integrar o chat
diretamente no Netbeans, sem haver a necessidade de utilizar uma ferramenta externa, como ocorre atualmente.
Em relação à produtividade (Pergunta 12), todos os participantes consideraram que a ferramenta contribui para o seu aumento. Nesse sentido, afirmaram que os problemas podem ser diagnosticados mais rapidamente, além de reduzir a probabilidade de conflitos no desenvolvimento, tornando mais rápido o aprendizado. Também foi considerado que o ambiente reduziu o tempo de configuração em termos de facilidade de acesso e compartilhamento de código. Até então, a empresa utilizava aplicativos de compartilhamento de área de trabalho e acesso remoto, mas estes se mostraram mais pesados e mais complicados de configurar, além de apresentar problemas como, por exemplo, as diferentes características de vídeo entre as estações de trabalho.
No item 13, que solicitava que os usuários adicionassem sugestões, comentários e outros aspectos relevantes observados durante os testes, foi sugerido que o ambiente proteja os dados transmitidos através de algum mecanismo de criptografia. Além disso, houve manifestações que consideraram o IdDE uma ótima ferramenta e de muita utilidade.