Por favor, deixe os seus contactos, enviar-lhe-emos a nossa visão geral por e-mail
Autorizo o tratamento dos meus dados pessoais para o envio de materiais de marketing personalizados em conformidade com a Política de privacidade. Ao confirmar a submissão, o utilizador aceita receber materiais de marketing
Obrigado!

O formulário foi enviado com sucesso.
Encontrará mais informações na sua caixa de correio.

Innowise é uma empresa internacional de desenvolvimento de software de ciclo completo fundada em 2007. Somos uma equipa de mais de 1800+ profissionais de TI que desenvolvem software para outros profissionais em todo o mundo.
Sobre nós
O Innowise é uma empresa internacional de desenvolvimento de software de ciclo completo fundada em 2007. Somos uma equipa de mais de 1600+ profissionais de TI que desenvolvem software para outros profissionais em todo o mundo.

Atualização do software de análise térmica: processamento de dados 40% mais rápido

O Innowise aprimorou o aplicativo da web de análise térmica de um cliente, melhorando a qualidade do código, atualizando a visualização do modelo 3D e adicionando novos recursos.

Cliente

Indústria
Tecnologia da informação
Região
UE
Cliente desde
2023

O nosso cliente desenvolve software de modelação de design térmico, que permite aos engenheiros ver o desempenho dos seus designs a altas temperaturas. Os engenheiros carregam e configuram modelos 3D de peças de produtos, que são depois enviados para um supercomputador para processamento e simulação. A aplicação Web analisa estes modelos para identificar caraterísticas como a distribuição da temperatura, a dissipação de calor, o fluxo de fluidos, a resistência térmica, a radiação térmica, a capacidade de arrefecimento, etc. Desta forma, os engenheiros podem poupar recursos em protótipos e testar os seus projectos através de software.

As informações pormenorizadas sobre o cliente não podem ser divulgadas ao abrigo dos termos do NDA.

Desafio

Resolver os problemas de lentidão das aplicações Web e melhorar a precisão dos modelos 3D

O nosso cliente apresentou-nos vários problemas: a sua software para análise térmica e os modelos 3D não estavam a ser carregados corretamente, com alguns modelos a não aparecerem de todo. A aplicação Web também tinha dificuldade em visualizar eficazmente as relações térmicas entre diferentes peças e apresentar os resultados da análise. Os problemas dificultavam a interpretação e a utilização eficiente dos dados pelos utilizadores.

Solução

Atualização do software de análise térmica: da qualidade do código às funcionalidades avançadas

A Innowise melhorou o software do seu cliente, analisando o código existente, corrigindo erros e adicionando novas funcionalidades. Encontrámos problemas no código e tornámo-lo mais limpo para melhorar o desempenho geral do software. A nossa equipa de especialistas também melhorou a qualidade dos modelos 3D e introduziu novas funcionalidades, como uma página de rede térmica e ferramentas de evolução do design, para melhorar ainda mais o processo de desenvolvimento do produto.

Avaliação da qualidade do código e refactoring

Os nossos engenheiros de software efectuaram uma avaliação completa da base de código existente. Este processo envolveu um mergulho profundo na estrutura, funcionalidade e saúde geral do código. Utilizámos ferramentas de análise de código estático, como o ESLint e o SonarQube, para detetar automaticamente potenciais problemas, seguidos de uma revisão manual para detetar qualquer coisa que as ferramentas automatizadas possam ter deixado passar. A equipa da Innowise analisou os resultados e compilou uma descrição detalhada dos problemas e das soluções recomendadas.

Refactorização do código

Uma vez que a refacção do código é crucial para manter uma base de código saudável, concentrámo-nos primeiro em melhorar a legibilidade e o desempenho do código. Estas melhorias tornaram mais fácil para os programadores compreenderem e desenvolverem o código no futuro.

  • Remoção de código redundante: os nossos engenheiros identificaram e eliminaram segmentos de código duplicados e desnecessários que estavam a sobrecarregar a base de código. Isto ajudou a reduzir o tamanho geral do código e a melhorar a sua capacidade de manutenção.
  • Melhorar a legibilidade: aplicámos normas de codificação consistentes e boas práticas, tais como indentação adequada, convenções de nomenclatura e modularização. Isso tornou o código mais legível e mais fácil para os desenvolvedores entenderem e modificarem.
  • Otimização do desempenho: A equipa da Innowise identificou os estrangulamentos de desempenho e optimizou o código para ser executado de forma mais eficiente. Isso incluiu a otimização de loops, a redução da complexidade dos algoritmos e a garantia de que o uso da memória fosse eficiente.

 

Correção de erros

A correção de erros foi essencial para manter o software a funcionar sem problemas e de forma fiável. Ao resolver erros e problemas, melhorámos a estabilidade do software e tornámo-lo melhor para os utilizadores.

  • Identificação e resolução de erros: a nossa equipa de especialistas utilizou ferramentas e técnicas de depuração para localizar e corrigir os erros que estavam a causar erros e comportamentos inesperados. Isto incluiu a resolução de erros de sintaxe, erros lógicos e excepções de tempo de execução.
  • Testes unitários: implementámos testes unitários abrangentes utilizando a estrutura Jest e a biblioteca de utilitários de teste Vue para garantir que cada componente individual da aplicação funcionava corretamente. Isto ajudou a detetar erros no início do processo de desenvolvimento.
  • Validação do código: A equipa da Innowise validou o código em relação às normas da indústria para garantir a conformidade e a robustez. Validámos as integrações API, as rotinas de tratamento de dados e os componentes da interface do utilizador como parte deste processo.
  • Integração contínua: Por fim, os nossos engenheiros integraram a base de código com um pipeline de integração contínua (CI) utilizando as ferramentas Jenkins e GitHub Actions. Isto automatizou o processo de teste de código e implantação, garantindo que as novas alterações não introduzem novos erros.

Melhorar a qualidade do modelo 3D

Para resolver os problemas com a visualização de modelos 3D na software para análise térmicaPara o efeito, integrámos a biblioteca vtk.js, que consome menos recursos. Isto garantiu que todos os modelos fossem carregados corretamente e apresentados com precisão.

A nossa equipa também abordou problemas de renderização de modelos, analisando o pipeline de renderização, corrigindo erros e optimizando algoritmos. Isto incluiu a melhoria da geração de malhas, mapeamento de texturas e sombreamento, para que os modelos fossem apresentados de forma precisa e eficiente.

Novas funcionalidades

Para melhorar ainda mais as capacidades da aplicação, introduzimos várias novas funcionalidades destinadas a melhorar a experiência do utilizador e a fornecer informações mais aprofundadas sobre o desempenho térmico.

Página da rede térmica

Os nossos engenheiros de software criaram uma nova página de rede térmica que utiliza gráficos interactivos para ilustrar as relações térmicas entre diferentes partes de um produto. Esta visualização proporciona aos utilizadores uma compreensão mais clara e intuitiva da forma como o calor é distribuído e transferido dentro do seu design. Os utilizadores podem agora ver as interações térmicas num formato gráfico, facilitando a identificação de potenciais pontos críticos. A página permite o zoom e a panorâmica para que os utilizadores se possam concentrar em áreas específicas de interesse e analisar o desempenho térmico em pormenor.

Página de evolução do design

Posteriormente, adicionámos uma funcionalidade de evolução do design que permite aos utilizadores acompanhar e comparar a evolução dos seus designs ao longo de várias iterações. Esta funcionalidade é particularmente útil para aqueles que precisam de avaliar o impacto das alterações de design no desempenho térmico. Os utilizadores podem guardar diferentes iterações das suas simulações, compará-las lado a lado e selecionar a melhor versão com base nos resultados. A página de evolução do design inclui uma vista de linha de tempo, que representa visualmente a progressão das modificações do design e os resultados correspondentes da simulação. Os utilizadores podem descarregar as definições da melhor iteração, facilitando a documentação e a implementação do design ideal.

Apresentação de dados estruturados

Os nossos profissionais tornaram os dados mais fáceis de compreender, utilizando tabelas e gráficos. Esta abordagem fornece informações claras sobre aspectos cruciais como a temperatura, a pressão e o caudal. Os utilizadores podem ver os resultados sem ter de procurar em dados confusos. As tabelas têm opções de ordenação e filtragem para que os utilizadores se possam concentrar em detalhes específicos. Os gráficos mostram tendências e padrões que ajudam os utilizadores a detetar rapidamente informações importantes. Também adicionámos funcionalidades como dicas de ferramentas e zoom para tornar os gráficos mais interactivos e fáceis de utilizar.

Tecnologias

Backend

.NET, C#, EntityFramework, Amazon SQS

Front-end

Javascript, Vue 3, Nuxt 3, Vuex, vtk.js, D3.js

Bases de dados

PostgreSQL

DevOps

AWS (EKS, ECS, ECR, CloudWatch, EC2, S3, RDS, Amazon MQ, etc.), GitLab, Terraform

Implementação contínua

CI do GitLab

Contentorização e
gestão de contentores
Docker, Elastic Kubernetes Service, Elastic Container Service - baseado em AWS

Processo

O nosso processo de desenvolvimento foi dividido em várias fases para manter o projeto organizado e manter uma colaboração estreita com o cliente. Ao utilizar as metodologias Agile e Kanban, pudemos adaptar-nos rapidamente às mudanças e dar prioridade às tarefas de forma eficaz. Isto garantiu que o projeto se mantivesse no caminho certo e satisfizesse as necessidades do cliente.

Fase de descoberta

Na fase de descoberta, realizámos uma avaliação inicial da base de código e reunimos os requisitos detalhados do cliente. O principal resultado foi um documento de Visão e Âmbito que delineava as metas e objectivos do projeto.

Fase de conceção

Durante esta fase, a nossa equipa de especialistas criou wireframes e protótipos detalhados para as novas funcionalidades e melhorias. Os principais resultados incluíram um mapa do percurso do cliente e um protótipo clicável das novas páginas.

Fase de desenvolvimento

Depois, os nossos programadores implementaram a refacção do código, integraram o VTK.js para modelos 3D e criaram novas funcionalidades. Os resultados incluíram uma base de código actualizada, novas funcionalidades totalmente funcionais e visualizações melhoradas de modelos 3D.

Fase de teste

A fase seguinte envolveu testes rigorosos, incluindo testes unitários, de integração e de aceitação do utilizador, para garantir a funcionalidade e a fiabilidade.

Fase de implantação

Por fim, implementámos a aplicação actualizada no ambiente do cliente e prestámos apoio pós-implementação.

Reuniões e ferramentas

A nossa equipa realizou reuniões diárias para discutir o progresso e resolver problemas rapidamente, o que nos ajudou a manter o ritmo e a evitar atrasos. Utilizámos o Jira para gerir tarefas e acompanhar o progresso de forma transparente, enquanto o Slack facilitou a comunicação direta e contínua com o cliente. Esta abordagem permitiu-nos responder prontamente às necessidades do cliente e manter o projeto a avançar de forma eficiente.

Equipa

2

Engenheiros de front-end

2

Engenheiros de back-end

2

Chefes de equipa

1

QA

1

AQA

1

Designer UI/UX

1

DevOps

Resultados

Análise de dados térmicos 40% mais rápida e tempos de carregamento de aplicações Web acelerados

Funcionalidade alargada

A nova página da rede térmica proporcionou aos utilizadores uma forma clara e interactiva de compreender as relações térmicas. Além disso, podiam agora comparar facilmente diferentes iterações de conceção e selecionar a melhor, melhorando o processo global de conceção.

Melhoria da qualidade do código

O código ficou mais limpo, mais fácil de manter e livre dos erros generalizados anteriores, o que conduziu a um código mais estável e fiável software de análise térmica.

Melhor qualidade do modelo 3D

Todos os modelos 3D eram agora apresentados corretamente, o que melhorava a experiência do utilizador e a fiabilidade das simulações térmicas.

Apresentação estruturada dos resultados

Os resultados passaram a ser apresentados de forma estruturada e compreensível. Consequentemente, tornou-se mais fácil para os utilizadores interpretarem e utilizarem a informação de forma eficaz.
Duração do projecto
  • Maio de 2023 - Setembro de 2023

40%

redução do tempo de análise de dados térmicos

60%

carregamento mais rápido de aplicações web

Contactar-nos!

Marcar uma chamada ou preencha o formulário abaixo e entraremos em contacto consigo assim que tivermos processado o seu pedido.

    Inclua os detalhes do projeto, a duração, o conjunto de tecnologias, os profissionais de TI necessários e outras informações relevantes
    Gravar uma mensagem de voz sobre o seu
    projeto para nos ajudar a compreendê-lo melhor
    Anexar documentos adicionais, se necessário
    Enviar ficheiro

    Pode anexar até 1 ficheiro de 2MB no total. Ficheiros válidos: pdf, jpg, jpeg, png

    Informamos que, ao clicar no botão Enviar, o Innowise's processará os seus dados pessoais de acordo com a nossa Política de Privacidade com o objectivo de lhe fornecer informações adequadas.

    O que é que acontece a seguir?

    1

    Após termos recebido e processado o seu pedido, entraremos em contacto consigo para detalhar as necessidades do seu projecto e assinar um NDA para garantir a confidencialidade das informações.

    2

    Após a análise dos requisitos, os nossos analistas e programadores elaboram uma proposta de projecto com o âmbito dos trabalhos, tamanho da equipa, tempo e custos e custos.

    3

    Marcamos uma reunião consigo para discutir a oferta e chegar a um acordo.

    4

    Assinamos um contrato e começamos a trabalhar no seu projecto o mais rapidamente possível.

    Спасибо!

    Cообщение отправлено.
    Мы обработаем ваш запрос и свяжемся с вами в кратчайшие сроки.

    Obrigado!

    A sua mensagem foi enviada.
    Processaremos o seu pedido e contactá-lo-emos o mais rapidamente possível.

    Obrigado!

    A sua mensagem foi enviada. 

    Processaremos o seu pedido e contactá-lo-emos logo que possível.

    seta