Den voksende brug af indlejrede realtids kontrolsystemer stiller store udfordringer til softwareudviklere set i lyset af modstridende krav, som time-to-market, udviklingsomkostninger, sikkerhed og pålidelighed. Det er svært at møde disse krav ved brug af konventionel softwareudviklings-teknologi, som stort set er baseret på uformelle designmetoder og manuel kodning. Det er derfor nødvendigt at udvikle nye designmetoder og -værktøjer, som på sigt vil kunne være med til at forbedre den eksisterende praksis på området.Disse overvejelser har motiveret til udvikling af et værktøj til komponentbaseret design af software for distribuerede indlejrede systemer -- Component-based Design of Software for Distributed Embedded Systems (COMDES) -- og den relaterede software design metode i forsøget på at levere en løsning til problemstillingerne skitseret ovenfor. Kernen i denne teknologi er anvendelsen af formelle modeller. Ved at bruge disse modeller, kan indlejrede softwareapplikationer udvikles systematisk, konstrueres korrekt ved implementationen og endeligt, at det bliver muligt at konfigurere applikationer fra færdigbyggede og genbrugelige komponenter, under anvendelse af passende værktøjer. De kombinerer komponentbaseret design med den modeldrevne softwareudviklingsmetode, som mindsker udviklingstiden ved automatisering af visse designprocesser, forbedrer softwarens kvalitet ved automatisk at generere implementationen fra modeller og den muliggør specifikation af software på et mere abstrakt niveau, ved at bruge et passende modelleringssprog.I COMDES indgår et domæne-specifikt modelleringssprog som kan bruges til at specificere relevante aspekter af systemets struktur og funktionalitet indenfor domænet distribuerede indlejrede kontrolsystemer med hårde realtids krav. Frameworket er yderligere udvidet med et antal metamodeller, udledt af den formelle specifikation af domænespecifikke designmodeller. Metamodellen kan bruges til at repræsentere såvel foruddefinerede komponentmodeller som applikationsmodeller for computerunderstøttet softwareudvikling. Derudover blev komponentmodeller implementeret, der følger præcist udviklede designmønstre, som muliggør en effektiv og genbrugelig implementation. Endelig blev komponenterne implementeret som præfabrikerede eksekverbare objekter, der kan afvikles og linkes sammen i en eksekverbar applikation.Udvikling af indlejret software ved brug af COMDES frameworket er understøttet af det tilhørende udviklingsmiljø (IDE), som dækker over et antal værktøjer der understøtter basale funktioner som systemmodellering, validering, kodegenerering og kompillering for specifikke hardware-platforme.Konstruktion af sådanne udviklingsmiljøer og de tilhørende værktøjer er en meget kompleks udviklingsopgave. I denne afhandling bliver derfor designspørgsmål af central vigtighed undersøgt og eksisterende platforme, der understøtter modeldrevet softwareudvikling, der kan bruges som fundament til et komponentbaseret softwareudviklings-værktøj, analyseret med henblik på udvikling af et anvendeligt sæt værktøjer for COMDES.Eclipse blev valgt som platform for implementeringen af softwareudviklings-værktøjet, da den med det integrerede modeldrevne udviklingsframework, meget godt understøtter udvikling af værktøj som f.eks. Eclipse Modeling Framework, Graphical Modeling Framework, osv.Baseret på teoretiske undersøgelser og praktisk erfaring, fokuserer denne afhandling på praktiske aspekter vedrørende udviklingen af COMDES softwareudviklings-værktøjet på Eclipse platformen og med vægt på teknologier og værktøjer til både modeldrevet og komponentbaseret udvikling af indlejret software.Foreløbige eksperimenter indikerer, at COMDES og det tilhørende udviklingsværktøj muliggør en bedre tilgang til udvikling af indlejret software end tidligere teknologier, og mere konkret, den kan gøre udviklingsprocessen hurtigere og samtidig bidrage til en højere produktkvalitet ved distribuerede indlejrede realtids-kontrolsystemer.
展开▼