Text

  • Studieort Sal Lambda och digitalt via Zoom
Datum
  • 2020-11-20 13:30

Robbert Jongeling försvarar sin licentiatavhandling

Robbert Jongeling försvarar sin licentiatavhandling i datavetenskap den 20 november 2020.

Titel: Advancing continuous model-based development in industry

Avhandlingen har nummer: 297

Sammanfattning

Det sägs att nuförtiden är de flesta företag mjukvaruföretag. Till exempel möjliggörs innovationer som gör tjänster mer datadrivna, gör enheter mer ihopkopplade eller energieffektiva, och ger maskiner mer autonoma funktioner, främst genom utveckling av ny programvara. Det är därför mycket värdefullt att studera metoder för att konstruera programvara på sätt som är tidseffektiva och därmed också kostnadseffektiva.

Ett av dessa sätt är att använda modeller för att beskriva olika aspekter av ett system innan det implementeras. En unik egenskap för mjukvara är att dessa abstrakta beskrivningar successivt kan göras mer specifika tills själva programvaran framträder. Dessutom kan vissa av dessa steg utföras automatiskt. Inom ett sådant modellbaserat paradigm beskrivs ett system typiskt av flera olika modeller som var och en ändras under utvecklingens gång. Detta blir speciellt tydligt i kontinuerliga utvecklingsmetoder, där det varje dag skapas en fungerande, om än ofullständig, version av programvaran.

I vår forskning har vi samarbetat med flera industripartners för att identifiera de största utmaningarna för att göra deras modellbaserade programutveckling av komplexa inbyggda system mer kontinuerlig. En tydlig utmaning inom detta område är att hålla de olika representationerna konsistenta, det vill säga att se till att modellerna inte motsäger varandra. Vi strävar efter att ta fram metoder som hanterar dessa problem i en industriell miljö, vilket har resulterat i två konkreta metoder som presenteras i denna avhandling.

Den första metoden introducerar kontroller som varnar utvecklare när de gjort något som resulterat i inkonsistenta modeller. För att vara användbara måste dessa kontroller vara enkla att definiera och underhålla. Den andra metoden ger stöd för konsistens mellan olika modeller i en produktlinje, dvs när modeller eller delar av modeller återanvänds för att beskriva många olika produktvarianter. Ändringar i en gemensam del av modellen kan då behöva spridas till alla ställen där modellen återanvänds. Vi föreslår en lösning som delvis kan automatisera denna process och minska den manuella insatsen från domänexperter. Vidare kan metoden användas
för att organisera återanvändning av delar av modeller på ett mer strukturerat sätt.

Sammanfattningsvis är våra bidrag inriktade på att förbättra modellbaserade
utvecklingsmetoder inom industrin, genom att möjliggöra kortare utvecklingssteg och därmed öka produktiviteten i programvaruutvecklingen.