Blog

As ferramentas e técnicas de engenharia de software usadas na Nasajon

Compartilhe

Por Carlos Júnior.

Para construir um software é necessário utilizar ferramentas e técnicas a fim de manter a padronização e a qualidade do mesmo. Se utilizando disso, a Nasajon consegue agilidade e rapidez em suas entregas e mantém sempre os seus sistemas atualizados, como foi nas entregas mais recentes das MP 936 e 927/2020, para o sistema de Folha de Pagamento, o Persona. Neste artigo serão abordadas as principais ferramentas e técnicas que a empresa utiliza para tal.

 

O que é engenharia de software?

A engenharia de software é uma ramificação da área de computação que tem como objetivo gerir todo planejamento de construção do software, desde a organização de ideias até a entrega do mesmo.

Edsger W. Dijkstra, famoso cientista da computação, definiu bem a engenharia de software quando disse “A arte de programar consiste em organizar e dominar a complexidade”.

E para dominar essa complexidade a Nasajon utiliza várias ferramentas de mercado e técnicas. Segue abaixo quais serão abordadas no artigo:

  • OpenProject – Ferramenta para gerenciamento de projetos;
  • Jenkins – Ferramenta de entrega contínua;
  • Github – Ferramenta de gestão da configuração;
  • Scrum – Metodologia ágil.

 

OpenProject – Ferramenta para gerenciamento de projetos


Exemplo do gráfico de Gantt que o OpenProject gera.

O OpenProject é uma ferramenta open source, simples, prática de ser utilizada e adaptável a qualquer setor da empresa para planejamento de projetos. Por exemplo, na Nasajon ela é utilizada não só pelo setor de Desenvolvimento, mas também pelo setor de Marketing.

As principais funcionalidades do OpenProject são:

  • Planejamento e programação do projeto;
  • Roteiro do produto e planejamento de liberação;
  • Gerenciamento de tarefas e colaboração em equipe;
  • Kanban, Agile e Scrum;
  • Acompanhamento de tempo, relatórios de custos e orçamento.

Com essa ferramenta a Nasajon consegue visualizar todo o andamento de seus sistemas para que se possa planejar e tomar decisões para melhorar o aproveitamento dos recursos e da mão de obra disponível para os mesmos.


Exemplo da tela de gerenciamento de tarefas do Persona.

 

Jenkins – Ferramenta de entrega contínua


Exemplo de tela do dashboard do Jenkins.

O Jenkins também é uma ferramenta open source e ela é focada na entrega contínua. Na Nasajon, o Jenkins serve para automatizar a geração de executáveis ou de pacotes web a cada alteração disponibilizada, seja ela corretiva ou evolutiva, executar testes automatizados e disponibilizar para os clientes instaladores com as últimas versões de seu software.

 

Github – Gestão da Configuração


Tela principal do Github do repositório do Persona.

O Github é uma plataforma baseada no Git que também é uma ferramenta open source. Ela serve para versionamento de arquivos das versões que são disponibilizadas para os clientes.

Uma das funcionalidades que o Github possui e que a Nasajon utiliza bastante é a divisão por ramos (branches). Por exemplo, o ramo principal possui todo o código fonte em sua última versão, para garantir estabilidade. A partir dele é criado um ramo após o fim do ciclo de tarefas (Sprint) ter terminado e nomeamos com o número do ciclo que fechamos, por exemplo 2.56. Nessa 2.56 não existirão novas funcionalidades, apenas correções a fim de manter a versão estável pelo o maior tempo possível.

Com isso a Nasajon consegue disponibilizar aos clientes duas versões: a de Longa Duração (LD) e a Antecipação de Funcionalidades (AF), mantendo-as sempre atualizadas com os últimos hotfixes e garantindo, assim, a estabilidade delas.

A versão de Longa Duração recebe apenas tarefas corretivas após o fim do ciclo de tarefas (Sprint) da versão e permanece disponível por seis meses. Já a de Antecipação de Funcionalidades recebe além das corretivas, novas funcionalidades que foram feitas em versões posteriores, a fim de atender da melhor forma os clientes.

 

Scrum – Metodologia Ágil


Exemplo de como o Scrum funciona, imagem original com adaptações da Nasajon.

O Scrum é uma metodologia ágil que serve para planejar e gerir todo e qualquer projeto de software. Nessa metodologia, os ciclos de desenvolvimento e entrega do software, chamados de “Sprints”, podem durar de duas a quatro semanas. Abaixo você entenderá todas as etapas da aplicação dessa metodologia como a figura acima pode apresentar:

  1. Product backlog
    Todo o software precisa de correções e melhorias constantes. Então são criadas tarefas e armazenadas no backlog do produto para que, no planejamento, elas possam ser priorizadas de acordo com os recursos disponíveis.
  2. Planejamento e Sprint Backlog
    Nessa etapa, é verificado todo o backlog do produto para checar as tarefas a serem priorizadas e, com isso, gerar o “Sprint Backlog” que terá as tarefas a serem feitas naquela Sprint.
  3. Sprint
    Nessa etapa é que se inicia o desenvolvimento. Todos os dias são realizadas reuniões que são chamadas de “Daily Scrum” (stand up diário) que têm duração de 10 a 15 minutos e que tem por objetivo verificar se o que foi planejado para o dia anterior foi feito, definir o que será feito no dia e se há algum impedimento no caminho de alguma tarefa.
  4. Incrementos no produto potencialmente entregáveis
    Nessa etapa se iniciam os testes da versão do software que será disponibilizada e o desenvolvimento de correções de não conformidades encontradas pela equipe de testes.

Como o leitor pode perceber, a Nasajon se utiliza bastante de ferramentas open source, pois elas garantem duas coisas que a empresa sempre buscou em seus sistemas:

1- Maior interoperabilidade, pois o ERP Nasajon é totalmente integrado (tendo módulos web, mobile e desktop) e desenvolvido com linguagens diferentes para cada ambiente;

2- Maior confiabilidade, pois no software open source você pode modificar e melhorar colocando a “cara” da sua empresa, garantindo, assim a personalização e segurança dos dados dos seus projetos. Assim como a Nasajon faz para vários clientes como, por exemplo, na personalização de relatórios e módulos.

Com isso a Nasajon tem garantido o seu lugar no mercado como uma empresa de confiança e que sempre tem os seus sistemas em dia com a legislação e com novidades de mercado.


Compartilhe