Lämpöanalyysiohjelmiston päivitys: 40% nopeampi tietojenkäsittely

Innowise paransi asiakkaan lämpöanalyysin verkkosovellusta parantamalla koodin laatua, päivittämällä 3D-mallien visualisointia ja lisäämällä uusia ominaisuuksia.

Asiakas

Teollisuus
Tietotekniikka
Alue
EU
Asiakas vuodesta
2023

Asiakkaamme kehittää lämpösuunnittelun mallinnusohjelmistoa, jonka avulla insinöörit näkevät, miten hyvin heidän mallinsa toimivat korkeissa lämpötiloissa. Insinöörit lataavat ja konfiguroivat tuotteen osien 3D-malleja, jotka lähetetään sitten supertietokoneeseen käsittelyä ja simulointia varten. Verkkosovellus analysoi nämä mallit ja tunnistaa ominaisuudet, kuten lämpötilajakauman, lämmönhaihdunnan, nestevirtauksen, lämpövastuksen, lämpösäteilyn, jäähdytyskyvyn jne. Näin insinöörit voivat säästää resursseja prototyyppeihin ja testata mallejaan ohjelmiston avulla.

Yksityiskohtaisia tietoja asiakkaasta ei voida luovuttaa NDA:n ehtojen mukaisesti.

Haaste

Verkkosovelluksen hidastumisen ratkaiseminen ja 3D-mallin tarkkuuden parantaminen

Asiakkaamme tuli luoksemme useiden ongelmien vuoksi: heidän ohjelmisto lämpöanalyysiä varten toimi huonosti, ja 3D-mallit eivät latautuneet oikein, ja jotkut mallit eivät näkyneet lainkaan. Verkkosovelluksella oli myös vaikeuksia visualisoida tehokkaasti eri osien välisiä lämpösuhteita ja esittää analyysituloksia. Ongelmat vaikeuttivat käyttäjien tulkintaa ja tietojen tehokasta käyttöä.

Ratkaisu

Lämpöanalyysiohjelmistojen päivittäminen: koodin laadusta lisäominaisuuksiin

Innowise paransi asiakkaansa ohjelmistoa analysoimalla olemassa olevaa koodia, korjaamalla virheitä ja lisäämällä uusia ominaisuuksia. Löysimme koodista ongelmia ja siistimme sitä ohjelmiston yleisen suorituskyvyn parantamiseksi. Asiantuntijatiimimme paransi myös 3D-mallien laatua ja otti käyttöön uusia ominaisuuksia, kuten lämpöverkkosivun ja suunnittelun kehitystyökalut, parantaakseen tuotekehitysprosessia entisestään.

Koodin laadun arviointi ja uudelleenkäsittely

Ohjelmistoinsinöörimme arvioivat olemassa olevan koodikannan perusteellisesti. Prosessi sisälsi syvällisen sukelluksen koodin rakenteeseen, toiminnallisuuteen ja yleiseen kuntoon. Käytimme ESLintin ja SonarQuben kaltaisia staattisia koodianalyysityökaluja mahdollisten ongelmien automaattiseen havaitsemiseen ja sen jälkeen manuaalista tarkistusta, jolla pyrittiin löytämään kaikki se, mitä automaattiset työkalut eivät olisi huomanneet. Innowise:n tiimi tarkasteli löydöksiä ja laati yksityiskohtaisen hahmotelman ongelmista ja suositelluista ratkaisuista.

Koodin uudelleenkäsittely

Koska koodin uudistaminen on tärkeää terveen koodikannan ylläpitämiseksi, keskityimme ensin parantamaan koodin luettavuutta ja suorituskykyä. Näiden parannusten ansiosta kehittäjien oli helpompi ymmärtää koodia ja rakentaa sen pohjalta tulevaisuudessa.

  • Turhan koodin poistaminen: insinöörimme tunnistivat ja poistivat koodipohjaa sotkevia päällekkäisiä ja tarpeettomia koodisegmenttejä. Tämä auttoi pienentämään koodin kokonaiskokoa ja parantamaan sen ylläpidettävyyttä.
  • Luettavuuden parantaminen: noudatimme johdonmukaisia koodausstandardeja ja parhaita käytäntöjä, kuten asianmukaista sisennystä, nimeämiskäytäntöjä ja modulaarisuutta. Tämä teki koodista luettavampaa ja helpommin ymmärrettävää ja muokattavaa kehittäjille.
  • Suorituskyvyn optimointi: Innowise-tiimi tunnisti suorituskyvyn pullonkauloja ja optimoi koodin tehokkaammaksi. Tähän sisältyi silmukoiden optimointi, algoritmien monimutkaisuuden vähentäminen ja muistin käytön tehokkuuden varmistaminen.

 

Virheen korjaaminen

Virheiden korjaaminen oli välttämätöntä, jotta ohjelmisto toimisi sujuvasti ja luotettavasti. Ratkaisemalla virheitä ja ongelmia parannimme ohjelmiston vakautta ja teimme siitä paremman käyttäjille.

  • Vikojen tunnistaminen ja ratkaiseminen: Asiantuntijatiimimme käytti virheenkorjaustyökaluja ja -tekniikoita löytääkseen ja korjatakseen virheitä ja odottamatonta käyttäytymistä aiheuttavat viat. Tähän sisältyi syntaksivirheiden, logiikkavirheiden ja ajonaikaisten poikkeusten korjaaminen.
  • Yksikkötestaus: toteutimme kattavat yksikkötestit Jest-kehyksen ja Vue test utils -kirjaston avulla varmistaaksemme, että sovelluksen jokainen yksittäinen komponentti toimi oikein. Tämä auttoi virheiden havaitsemisessa kehitysprosessin alkuvaiheessa.
  • Koodin validointi: Sitten Innowise-tiimi validoi koodin alan standardien mukaisesti varmistaakseen vaatimustenmukaisuuden ja kestävyyden. Osana tätä prosessia validoimme API-integraatiot, tietojenkäsittelyrutiinit ja käyttöliittymäkomponentit.
  • Jatkuva integrointi: Lopuksi insinöörimme integroivat koodipohjan jatkuvaan integrointiin (CI) Jenkinsin ja GitHub Actions -työkalujen avulla. Tämä automatisoi prosessin koodin testaus ja käyttöönotto, jolloin varmistetaan, että uudet muutokset eivät aiheuta uusia virheitä.

3D-mallin laadun parantaminen

Ratkaisemaan 3D-mallien visualisointiin liittyviä ongelmia asiakkaamme ohjelmisto lämpöanalyysiä vartenintegroimme vtk.js-kirjaston, joka on vähemmän resursseja vaativa. Näin taattiin, että kaikki mallit latautuivat oikein ja näytettiin tarkasti.

Tiimimme käsitteli myös mallien renderöintiin liittyviä ongelmia analysoimalla renderöintiputkea, korjaamalla virheitä ja optimoimalla algoritmeja. Tähän kuului verkkojen luomisen, tekstuurikartoituksen ja varjostuksen parantaminen, jotta mallit näytettiin tarkasti ja tehokkaasti.

Uudet toiminnot

Parantaaksemme sovelluksen ominaisuuksia entisestään otimme käyttöön useita uusia ominaisuuksia, joiden tarkoituksena on parantaa käyttäjäkokemusta ja antaa syvällisempää tietoa lämpösuorituskyvystä.

Lämpöverkkosivu

Ohjelmistoinsinöörimme loivat uuden lämpöverkkosivun, joka käyttää interaktiivisia kaavioita havainnollistamaan tuotteen eri osien välisiä lämpösuhteita. Tämä visualisointi antaa käyttäjille selkeämmän ja intuitiivisemman käsityksen siitä, miten lämpö jakautuu ja siirtyy heidän suunnittelussaan. Käyttäjät voivat nyt nähdä lämpövuorovaikutukset graafisessa muodossa, mikä helpottaa mahdollisten kuumien kohtien tunnistamista. Sivu mahdollistaa zoomauksen ja panoroinnin, jotta käyttäjät voivat keskittyä tiettyihin kiinnostaviin alueisiin ja analysoida lämpösuorituskykyä yksityiskohtaisesti.

Suunnittelun evoluutiosivu

Tämän jälkeen lisäsimme suunnittelun kehitysominaisuuden, jonka avulla käyttäjät voivat seurata ja vertailla suunnittelunsa kehitystä useiden iteraatioiden aikana. Tämä ominaisuus on erityisen hyödyllinen niille, joiden on arvioitava suunnittelumuutosten vaikutusta termiseen suorituskykyyn. Käyttäjät voivat tallentaa simulaatioidensa eri iteraatioita, verrata niitä vierekkäin ja valita parhaan version tulosten perusteella. Suunnittelun kehitys -sivulla on aikajananäkymä, joka esittää visuaalisesti suunnittelumuutosten etenemisen ja niitä vastaavat simulointitulokset. Käyttäjät voivat ladata parhaan iteraation asetukset, mikä helpottaa optimaalisen suunnittelun dokumentointia ja toteuttamista.

Strukturoitujen tietojen esittäminen

Ammattilaisemme tekivät tiedoista helpommin ymmärrettäviä käyttämällä taulukoita ja kaavioita. Tämä lähestymistapa antaa selkeää tietoa tärkeistä asioista, kuten lämpötilasta, paineesta ja virtausnopeudesta. Käyttäjät näkevät tulokset ilman sotkuisten tietojen lajittelua. Taulukoissa on lajittelu- ja suodatusvaihtoehdot, jotta käyttäjät voivat keskittyä tiettyihin yksityiskohtiin. Graafit näyttävät trendejä ja kuvioita, jotka auttavat käyttäjiä havaitsemaan tärkeitä oivalluksia nopeasti. Lisäsimme myös työkaluvihjeiden ja zoomauksen kaltaisia ominaisuuksia, jotta kuvaajista tulisi interaktiivisempia ja käyttäjäystävällisempiä.

Teknologiat

.NET, C#, EntityFramework, Amazon SQS
JavaScript, Vue 3, Nuxt 3, Vuex, vtk.js, D3.js.

PostgreSQL

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

Jatkuva käyttöönotto

GitLab CI

Konttien hallinta ja konttien hallinta
Docker, Elastic Kubernetes Service, Elastic Container Service - AWS-pohjainen

Prosessi

Kehitysprosessimme jaettiin useisiin vaiheisiin, jotta projekti pysyisi organisoituna ja tiivis yhteistyö asiakkaan kanssa säilyisi. Käyttämällä ketteriä ja kanban-menetelmiä pystyimme sopeutumaan nopeasti muutoksiin ja priorisoimaan tehtävät tehokkaasti. Näin varmistimme, että projekti pysyi aikataulussa ja vastasi asiakkaan tarpeita.

Löytämisvaihe

Selvitysvaiheessa teimme alustavan arvioinnin koodikannasta ja keräsimme yksityiskohtaiset asiakasvaatimukset. Tärkein tuotos oli Vision- ja Scope-asiakirja, jossa hahmoteltiin projektin tavoitteet ja päämäärät.

Suunnitteluvaihe

Tässä vaiheessa asiantuntijatiimimme loi yksityiskohtaiset rautalankakehykset ja prototyypit uusille ominaisuuksille ja parannuksille. Tärkeimpiä tuotoksia olivat muun muassa asiakaskartta ja klikattavissa oleva prototyyppi uusista sivuista.

Kehitysvaihe

Sen jälkeen kehittäjämme toteuttivat koodin uudelleenmuokkauksen, integroivat VTK.js:n 3D-malleja varten ja loivat uusia ominaisuuksia. Tuotokset sisälsivät päivitetyn koodipohjan, täysin toimivia uusia ominaisuuksia ja parannettuja 3D-mallien visualisointeja.

Testausvaihe

Seuraavassa vaiheessa suoritettiin tiukka testaus, johon sisältyi yksikkö-, integrointi- ja käyttäjän hyväksymistestejä, joilla varmistettiin toimivuus ja luotettavuus.

Käyttöönottovaihe

Lopuksi otimme päivitetyn sovelluksen käyttöön asiakkaan ympäristössä ja tarjosimme käyttöönoton jälkeistä tukea.

Kokoukset ja välineet

Tiimimme piti päivittäin kokouksia, joissa keskusteltiin edistymisestä ja ratkaistiin ongelmat nopeasti, mikä auttoi meitä pitämään vauhtia yllä ja estämään viivästyksiä. Käytimme Jiraa tehtävien hallintaan ja edistymisen läpinäkyvään seurantaan, ja Slack helpotti suoraa ja jatkuvaa viestintää asiakkaan kanssa. Tämän lähestymistavan ansiosta pystyimme vastaamaan asiakkaan tarpeisiin nopeasti ja pitämään projektin etenemisen tehokkaana.

Joukkue

2

Etupää Engineers

2

Back-End Engineers

2

Tiiminvetäjät

1

QA

1

AQA

1

UI/UX-suunnittelija

1

DevOps

Tulokset

40% nopeampi lämpötietojen analysointi ja nopeutetut verkkosovelluksen latausajat.

Laajennettu toiminnallisuus

Uusi lämpöverkkosivu tarjosi käyttäjille selkeän ja interaktiivisen tavan ymmärtää lämpösuhteita. Lisäksi he pystyivät nyt helposti vertailemaan eri suunnittelukierroksia ja valitsemaan optimaalisen, mikä paransi koko suunnitteluprosessia.

Koodin laadun parantaminen

Koodi oli puhtaampaa, helpommin ylläpidettävää ja vailla aiempia laajalle levinneitä virheitä, mikä johti vakaampaan ja luotettavampaan ohjelmistoon. lämpöanalyysiohjelmisto.

Parempi 3D-mallin laatu

Kaikki 3D-mallit näytettiin nyt oikein, mikä paransi käyttäjäkokemusta ja lämpösimulaatioiden luotettavuutta.

Tulosten jäsennelty esittely

Tulokset esitettiin nyt jäsennellysti ja ymmärrettävästi. Tämän seurauksena käyttäjien oli helpompi tulkita ja hyödyntää tietoja tehokkaasti.
Hankkeen kesto
  • toukokuu 2023 - syyskuu 2023

40%

lämpötietojen analysointiajan lyhentäminen

60%

nopeampi web-sovelluksen lataaminen

    Ota yhteyttä

    Varaa puhelu tai täytä alla oleva lomake, niin otamme sinuun yhteyttä, kun olemme käsitelleet pyyntösi.

    Lähetä meille ääniviesti
    Liitä asiakirjoja
    Lataa tiedosto

    Voit liittää 1 enintään 2 Mt:n tiedoston. Hyväksytyt tiedostomuodot: pdf, jpg, jpeg, png.

    Klikkaamalla Lähetä, annat suostumuksesi siihen, että Innowise käsittelee henkilötietojasi meidän Tietosuojakäytäntö antaa sinulle asiaankuuluvia tietoja. Antamalla puhelinnumerosi suostut siihen, että voimme ottaa sinuun yhteyttä puheluiden, tekstiviestien ja viestisovellusten kautta. Puhelu-, viesti- ja datahintoja voidaan soveltaa.

    Voit myös lähettää meille pyyntösi
    osoitteeseen contact@innowise.com

    Mitä tapahtuu seuraavaksi?

    1

    Kun olemme vastaanottaneet ja käsitelleet pyyntösi, otamme sinuun yhteyttä ja kerromme yksityiskohtaisesti projektin tarpeet ja allekirjoitamme NDA-sopimuksen luottamuksellisuuden varmistamiseksi.

    2

    Tutkittuaan toiveesi, tarpeesi ja odotuksesi tiimimme suunnittelee projektin ehdotuksen, jossa esitetään työn laajuus, tiimin koko, aika- ja kustannusarviot.

    3

    Järjestämme kanssasi tapaamisen, jossa keskustellaan tarjouksesta ja sovitaan yksityiskohdista.

    4

    Lopuksi allekirjoitamme sopimuksen ja aloitamme projektisi toteuttamisen heti.

    nuoli