JavaScript is currently disabled.Please enable it for a better experience of Jumi. Här är önskelistan från inbyggnadsutvecklarna

Modelleringsspråket UML genomgår en förnyelse. Språket kommer att bli bättre på att beskriva inbyggda system. UML-verktygen har inte väntat på standarder utan använder egna lösningar. Här är tre nya inslag i UML som länge stått högt på inbyggnadsprogrammerarens önskelista.
o KOMPONENTER SOM KOMMUNICERAR
UML är skapat för att beskriva objektorienterade program (OOP). Fokus ligger på data, på de objekt som används i programmet för att representera omvärlden.

UML har klassiskt använts för att utveckla affärssystem. Där känns en sådan beskrivning naturlig. Ett konto har ett saldo. En insättning ska öka saldot - förändra objektets värde - på ett väldefinerat sätt. Det är det viktiga. Om insättningen ska ske via Internet eller i bankkassa är sekundärt.

I ett inbyggt system, till exempel datorsystemet i en bil eller ett telefonnät, är det nåt annat än datastrukturer som ligger i fokus, nämligen systemets komponenter och kommunikationen mellan dem. Systemet drivs fram genom att reagera på händelser som signaleras mellan komponenter.

För systemet som helhet är det inte intressant hur en enstaka komponent representerar sitt inre tillstånd. Det viktiga för systembygget är hur komponentens gränssnitt mot omvärlden ser ut.

Det går att använda UML för att beskriva komponenter, UML har en stor flexibilitet och utökbarhet. Men det finns inget standardiserat sätt. I en metod kallas komponenterna för "kapslar", i en annan för "agenter", i en tredje "aktörer". I en metod sker kommunikationen via en "port" enligt ett "protokoll". I en annan metod är det en "grind" som är anslutningspunkt för ett eller flera "gränssnitt".

Det handlar inte bara om olika ord, gränserna mellan begreppen är dragna på olika sätt, så metoderna inte kan blandas med varandra.

En standard för så kallad "komponentbaserad" modellering är ett av huvudkraven i UML 2.0
KOMPONENTER. Inbyggnadsprogrammeraren vill beskriva sitt system som en uppsättning kommunicerande komponenter. Varje komponent kan i sin tur bestå av andra komponenter. VISUELL PROGRAMMERING. Dagens modelleringsverktyg har inte väntat på standarden utan klarar redan idag av att generera programkod från UML-diagrammen.


o VISUELL PROGRAMMERING
Ett stort svenskt företag i elektronikbranschen tror så mycket på visuell programmering att det föresatt sig att använda det i alla sina projekt i framtiden.

Visuell programmering betyder att programmeraren ritar diagram som beskriver funktionaliteten. En kompilator översätter sedan diagrammen till programkod.

Högnivåspråket C har ersatt assembler vid programmering av inbyggda system. C ersätts i sin tur av objektorienterad C++ eller Java. Visuell programmering är nästa steg i utvecklingsstegen, tror många. Det är en utveckling som intresserar alla UML-användare inte bara inbyggnadsfolket.

Visuell programmering och ett bra modelleringsspråk kan göra det i princip lika enkelt att modifiera systemets arkitektur som att modifiera programkod.

UML tycks vara en naturlig kandidat för att användas som visuellt programmeringsspråk. Men språket saknar i dag en väldefinerad semantik, det är inte entydigt hur diagrammen ska tolkas i alla detaljer.

OMG (Object management group) som ansvarar för UML-standarden, antar snart en ny standard för exakt semantik (action semantics).

o REALTIDSEGENSKAPER
Tid och resurser måste kunna modelleras i realtidssystem. Hårda realtidssystem måste kunna garantera svarstider. Modelleraren behöver kunna arbeta med begrepp som exekveringstider, parallellitet, händelser och prioriteter.
REALTIDSEGENSKAPER. Att modellera realtidsegenskaper i UML har aldrig varit ett problem. I den nya standarden kan ett automatiskt verktyg analysera om en realtidsmodell kan realiseras.

Det finns en arbetsgrupp inom OMG för realtidsanalys och design i UML.

- Dels behövs ett utförligt tidsbegrepp i UML - olika sätt att betrakta och uttrycka tid. Men framför allt handlar det om hur begreppen används för att schemalägga system och för att uttrycka prestanda och liknande, berättar Morgan Björkander som deltar i arbetsgruppen för Telelogics räkning.

- Man ska kunna utttrycka till exempel att en operation måste exekveras inom fem sekunder, eller att exekveringstiden får vara högst tre millisekunder.

Gruppen har strävat efter en modellering som är så exakt att ett analysverktyg ska kunna undersöka modellen och automatiskt avgöra om kraven är möjliga att realisera.

Arbetet visade sig enklare än väntat. Realtidsegenskaperna kunde uttryckas direkt i nuvarande UML. Det behövs inga nya grundbegrepp. Det räcker att ta fram och standardisera en så kallad profil, ett tillägg, för realtidsmodellering.

- Därför är det här en väldig billig standard att implementera i verktygen, säger Morgan Björkander.

Realtidsprofilen är färdig och antagen av OMG. Gruppen arbetar nu med att modellera egenskaper som feltolerans och tillgänglighet.


Jan Tångring

Prenumerera på Elektroniktidningens nyhetsbrev eller på vårt magasin.


MER LÄSNING:
 
KOMMENTARER
Kommentarer via Disqus

Rainer Raitasuo

Rainer
Raitasuo

+46(0)734-171099 rainer@etn.se
(sälj och marknads­föring)
Per Henricsson

Per
Henricsson
+46(0)734-171303 per@etn.se
(redaktion)

Jan Tångring

Jan
Tångring
+46(0)734-171309 jan@etn.se
(redaktion)