7 Ferramentas essenciais no desenvolvimento de software automotivo
Imagem: ThisIsEngineering @ Unsplash
A Alemanha é uma dos maiores desenvolvedores de automóveis do mundo. Apesar da indústria automotiva estar atualmente passando por um momento de dificuldades, os empregos em empresas ligadas a esta área continuam sendo um dos mais procurados no país.
Tão importante quanto às linguagens de programação, são as ferramentas usadas para criar, organizar e controlar o desenvolvimento do software. No automobilismo, o modelo de desenvolvimento mais usado é o Modelo V. Este modelo, é composto de uma série de etapas que vai desde à análise de viabilidade até a implementação e teste do software.
Nesta matéria, nós listamos algumas das ferramentas mais usadas no setor de desenvolvimento de software automotivo. Se você busca uma oportunidade na Alemanha neste setor, familiarize-se o quanto antes com as ferramentas aqui citadas.
IBM Rational DOORS
Antes do software começar a ser desenvolvido, é necessário efetuar uma análise da viabilidade e das necessidades do cliente. O resultado desta etapa, é uma coletânea de requerimentos formais que descrevem, em detalhe, o produto final. No mundo do automobilismo, a ferramenta mais usada para armazenar e categorizar este requerimentos é o Rational DOORS da IBM. Odiado por muitos, o DOORS é um software de banco de dados que roda num servidor central e é acessado quase que diariamente pelos arquitetos e programadores do projeto. Lá, é possível buscar e consultar as centenas de requerimentos impostos pelo cliente, pela gerência ou pelas normas de desenvolvimento em vigor.
MatLab/Simulink
O desenvolvimento de software automotivo, salvo raras exceções, é baseado em modelos. Isto significa que toda a funcionalidade do software é modelada usando elementos gráficos, simulações e diagramas de fluxo que descrevem os sinais de entrada do sistema, o processamento destes sinais e sua subsequente conversão em sinais de saída. Atualmente, o MatLab, da empresa Mathworks, é a ferramenta universal para este tipo de desenvolvimento. Todo modelo criado com MatLab é então convertido para código C, gravado no microprocessador e testado.
Eclipse IDE
Muitas vezes é necessário fazer alterações no código. Em alguns casos, componentes inteiros são programados manualmente sem ajuda do MatLab. Para isso, faz-se necessário um editor que permita a visualização e a formatação do código, assim como a integração com o compilador. Este tipo de ferramenta é conhecido como Ambiente de Desenvolvimento Integrado (Integrated Development Environment) e pode ser entendido como uma espécie de Word para programadores. O IDE usado na maioria das grandes empresas automotivas na Alemanha é o Eclipse IDE ou variações dele.
Git
O Git é um sistema de controle de versões distribuído, usado principalmente no desenvolvimento de software, mas pode ser usado para registrar o histórico de edições de qualquer tipo de arquivo. O Git foi inicialmente projetado e desenvolvido por Linus Torvalds para o desenvolvimento do kernel Linux, mas foi adotado por muitos outros projetos (Fonte). O Git começou a ser empregado mais recentemente na indústria automotiva por integrar facilmente com outras ferramentas de desenvolvimento ágil de software. Resumindo, o Git é usado para o gerenciamento e armazenamento de código fonte, permitindo que várias pessoas trabalhem no mesmo código sem que uma pessoa anule o trabalho do outro.
Jira
O JIRA é uma plataforma lançada pela empresa Atlassian que combina recursos de coleta de pendências e de gerenciamento de projetos ágeis em uma única aplicação. Assim como o Git, o JIRA passou a ser empregado mais recentemente na indústria automotiva. Ele ajuda você a planejar e organizar tarefas, fluxos de trabalho e relatórios para a sua equipe com mais eficiência. Basicamente, a ferramenta simula um quadro de KanBan para facilitar a visualização do andamento das tarefa do projeto. Como desenvolvedor(a) de software, você utilizará esta ferramenta para receber, processar e encerrar tickets de manutenção, melhoria ou reparo do software.
Vector CANoe
O CANoe é uma ferramenta de desenvolvimento e teste de software criado pela empresa Vector Informatik GmbH. A ferramenta é usada principalmente por fabricantes automotivos e fornecedores de unidades de controle eletrônico (ECU). Ela oferece uma imensa quantidade de funções para desenvolvimento, análise, simulação, teste e diagnóstico de redes de ECUs. A sua grande compatibilidade e suporte a redes veiculares (CAN, LIN, Flexray e Ethernet), o torna especialmente adequado para o desenvolvimento de ECU em veículos convencionais, além de veículos híbridos e elétricos.
Como desenvolvedor de software, você utilizará o CANoe com frequência para simular a rede de computadores de bordo do carro. Toda vez que você fizer uma mudança no código, terá que testá-la numa bancada de teste (HIL) que provavelmente estará rodando uma simulação CANoe. Além do mais, é comum que o cliente envie logs da atividade da rede quando um determinado erro aconteceu. Para fazer um diagnóstico, você poderá usar o CANoe para recrear a situação e analisar o conteúdo das mensagens trocadas entre os ECUs.
Microsoft Office
O Microsoft Office (principalmente o Word e o Excel) continua sendo a ferramenta padrão para processamento de texto e organização de dados. Como desenvolvedor, você utilizará o Word para tarefas mundanas como redigir pequenos relatórios, até a criação de descrição de desenho de software (Software Detailed Design). O Excel é usado principalmente pelos Project Managers (PMs) para criar resumos do projeto, fazer controle de orçamento, monitorar resultado de testes, etc. Outra ferramenta da Microsoft muito usada é o Outlook para troca de emails, assim como o Microsoft Teams.
Comentários