#blog

Transferência de conhecimento: métodos e quando utilizar no desenvolvimento de software

What’s a Rich Text element?

The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.

Static and dynamic content editing

A rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel. Voila!

  1. asdasdsa
  • asdasdasdsa

How to customize formatting for each rich text

Headings, paragraphs, blockquotes, figures, images, and figure captions can all be styled after a class is added to the rich text element using the "When inside of" nested selector system.

A máxima "conhecimento é algo que ninguém tira de você" é uma verdade. Mesmo quando falamos de transferência de conhecimento durante o desenvolvimento de software. Mas como assim? Bom, considerando que dados puramente não são informação, conhecimento não se compõe apenas com estudo. É necessário vivenciar o tema, experienciar diferentes situações, refletir sobre hipóteses, testá-las, fazer perguntas e buscar respostas. 

Para que esse conjunto aconteça, tempo é necessário – o que torna o conhecimento algo tão valioso. Mas, por aqui, acreditamos que com preparo e técnica, o conhecimento pode e deve ser compartilhado. Por isso, hoje vamos falar dessa etapa tão importante dos projetos de desenvolvimento de software: a transferência de conhecimento, por vezes também chamada de repasse tecnológico. Navegue pelo conteúdo: 

  1. Metodologias e etapas de um projeto de desenvolvimento de software
  2. A transferência de conhecimento 
  3. Para quais tipos de projeto de desenvolvimento de software a transferência de conhecimento faz sentido? 
  4. Conclusão

Metodologias e etapas de um projeto de desenvolvimento de software

Existem diversas metodologias para gestão de desenvolvimento de software, e cada uma conta com diferentes etapas e abordagens. Aqui na Caiena, de maneira mais genérica, temos três grandes etapas na maioria dos projetos: design, desenvolvimento e a transferência de conhecimento. O tempo necessário para conclusão de cada uma delas varia de acordo com alguns fatores, como complexidade da solução e maturidade do projeto. Isso acontece porque cada etapa do desenvolvimento de software também se desdobra em outras mais detalhadas.

É comum que parte da equipe inicial do projeto de desenvolvimento de software, ainda na etapa de design, permaneça no time quando ele se inicia. Afinal, são pessoas que desempenharam atividades que geraram um grande volume de conhecimento inicial, como entrevistas, pesquisas e mapeamentos, além dos primeiros mockups, wireframes e protótipos da solução final

Somado às demais especialidades da equipe – gestão e desenvolvimento – o conhecimento sobre as necessidades, expectativas e possibilidades é o pontapé inicial para que o time como um todo organize as principais regras de negócio, ferramentas e tecnologias necessárias para estruturar e priorizar o backlog do desenvolvimento de software. Com tudo organizado, é hora de começar, de fato, o desenvolvimento da solução final. 

Vale lembrar que aqui estamos resumindo bastante esse processo, para focarmos no ponto principal: a transferência de conhecimento. Fato é que, independentemente do tempo necessário para chegar à materialização da solução final – o software em funcionamento – a equipe que atuou em sua concepção e desenvolvimento naturalmente passa a ter um grande conhecimento sobre os "comos" e "porquês" técnicos definidos ao longo do processo. 

E aqui está o pulo do gato: esse conhecimento é primordial uma vez que o software é entregue.  Sem ele, a nova equipe responsável pela manutenção e evolução do sistema, muito provavelmente, terá sua autonomia comprometida.

A Transferência de Conhecimento

A etapa de Transferência de Conhecimento geralmente acontece quando o projeto de desenvolvimento de software está finalizado ou muito próximo de sua conclusão. Dessa forma, as decisões estruturais e as ferramentas do sistema já estão consolidadas. Isso é importante para que a transferência de conhecimento atinja seu objetivo principal: capacitar a equipe para que tenha domínio técnico sobre o que foi desenvolvido, proporcionando autonomia na continuidade e evolução do projeto. Além disso, há casos em que os usuários do sistema também recebem treinamento, para que se apropriem do software desenvolvido. Vamos abordar os dois casos adiante.

Treinamento técnico 

O treinamento técnico é aquele realizado entre as equipes técnicas – a que desenvolveu o sistema e a que o assumirá. Nesse momento, são abordados conhecimentos relacionados à implementação, tecnologias envolvidas, projeto de infraestrutura de servidores, arquitetura de informação e bancos de dados, entre outros aspectos. Documentações técnicas relativas ao desenvolvimento de software, como manuais, também podem ser entregues nesse momento e são muito bem-vindas.

No entanto, a transferência de conhecimento não precisa se limitar à tecnologia. Abordar temas que permeiam o ambiente de inovação é sempre recomendado, sobretudo para garantir práticas sustentáveis a longo prazo para o desenvolvimento de software. Nas transferências de conhecimento feitas nos projetos da Caiena, por exemplo, já ensinamos assuntos como metodologia ágil, métodos de design e até mesmo abordagem participativa e cidadã para construção de softwares de alto impacto

Vale lembrar que, embora essa etapa traga novos conhecimentos para a equipe que a está recebendo, as decisões que levaram até ali devem ter sido tomadas em conjunto entre todas as equipes envolvidas – inclusive o que constará na transferência de conhecimento. Boa parte dos motivos para essa prática está relacionada ao Scrum, método ágil de gestão utilizado nos projetos da Caiena. Ainda assim, um dos motivos para esses combinados é evitar descobrir algum bloqueio apenas no repasse tecnológico, como uma incompatibilidade entre serviços de integração e exportação, por exemplo. Ou seja, as decisões que originaram os detalhes não podem ser uma surpresa. 

Treinamento de usuários 

O treinamento com usuários é um pouco menos comum – já que um dos principais objetivos de um software é que seu uso seja tão intuitivo que nem demande um treinamento. No entanto, há situações em que, independentemente da qualidade da usabilidade do sistema, um treinamento inicial pode ser necessário. É comum que isso aconteça quando há uma diferença significativa entre a tecnologia que vinha sendo usada e a que será adotada, caso recorrente nos projetos de transformação digital. 

Por exemplo, um processo que era controlado por meio de planilhas descentralizadas passará a ser acompanhado e gerido em um único software, de maneira centralizada e com atuação de múltiplos usuários com diferentes hierarquias. Nesse caso, é altamente recomendável que haja um treinamento para garantir que todos se familiarizem com o sistema e tenham compreensão sobre como as regras de negócio que já existiam se comportam nas ferramentas do novo software. Além disso, garantir um bom manual de uso para que todos possam consultar quando iniciarem a operação também é muito recomendável. 

Aqui vale reforçar a importância do software ter sido desenvolvido com as pessoas no centro do processo. Na prática, isso significa engajar esses usuários durante a etapa de design, para mapear suas demandas, dificuldades, preferências e até mesmo traços culturais, como vocabulário. Organizar momentos para que esses usuários possam testar o sistema durante a etapa de desenvolvimento de software também é indispensável. Dessa forma, quando o software estiver pronto, materializará funcionalidades que correspondem às necessidades e aos desejos de quem o utilizará todos os dias. Assim como comentamos sobre os treinamentos técnicos, esse é um momento para detalhes, não para surpresas. 

Para quais tipos de projeto de desenvolvimento de software a transferência de conhecimento faz sentido? 

Diversas discussões de inovação também são demonstradas em questionamentos clássicos da filosofia. Gostamos muito de pensar as duas coisas em conjunto, então vamos seguir esse caminho para responder essa questão. Pensando que "conhecimento é liberdade", assumimos, por um lado, que o conhecimento aumenta a capacidade de interpretação, expande possibilidades de escolha e direciona ações e decisões; de outro lado, temos a liberdade, que é do tamanho de nossas possibilidades de escolha. Ou seja, quanto maior o conhecimento, maior a liberdade. Assim, a transferência de conhecimento é sempre recomendada, mesmo que não exista a intenção de assumir a evolução do software.

Filosofias à parte, essa é uma decisão que varia de acordo com o contexto de cada projeto. Porém, se em alguns cenários a transferência de conhecimento tem um teor opcional, em outros se mostra essencial, como quando um projeto é realizado para o setor público.  

Setor público

Vamos usar a experiência da Caiena para abordar esse ponto, já que temos muitos projetos nessa área. Sempre que realizamos o desenvolvimento de um software, entregamos seu código-fonte ao final do projeto, sem nenhuma cobrança de licença posterior. Ou seja, a instituição – seja ela pública ou privada – se torna proprietária do sistema adquirido. No contexto do setor público, faz ainda sentido que realmente se aproprie de todos os detalhes do projeto. Isso habilitará seu corpo técnico a ser mantenedor da infraestrutura do Sistema (hardware e software), e garantirá a manutenção e evolução das funcionalidades. Entre as motivações para isso estão o ganho de conhecimento técnico, além de uma otimização dos investimentos públicos já feitos no projeto. 

Caso queira continuar o assunto, nós colocamos esse raciocínio em prática em alguns projetos desenvolvidos aqui na Caiena, como no Ceará Transparente, no SOL App e no Observatório de Boa Vista. Nos chame para falarmos mais sobre isso ;) 

Conclusão

Por fim, a transferência de conhecimento, aliada à posse do código-fonte, garante que o cliente – seja ele o Estado, uma instituição do terceiro setor ou uma empresa privada – elimine a dependência em relação às tecnologias usadas e fornecedor, proporcionando uma jornada de transformação digital com liberdade de escolha, manutenção e evolução de seu software. 

Mais conteúdos

Ao clicar em “Aceitar todos os cookies”, você concorda com o armazenamento de cookies em seu dispositivo para aprimorar a navegação no site, analisar o uso do site e nossos esforços de marketing. Veja nossa Política de Privacidade para mais informações.

Contato

Ops, revise o formulário e tente novamente.