Tillbaka till Omgivningssimulator
Sida 7

1 Designstrategi

För att försöka uppfylla kraven under Definition ovan har jag valt följande lösningar.

1.0.1 Generalitet

Kan approximeras med kombinationen utbyggbarhet och användarvänlighet. Svårigheten här ligger i att hitta en modell för utbyggnad som också är lättanvänd och begriplig. Införandet av nya EXS kan innebära att nya data måste kunna uppdateras i omvärlden och föras över till EXSen. Dessutom tillkommer hela tiden ytterligare krav på funktionalitet i samband med att med att man vill testa nya funktioner i C3-systemet. Hur kunna enkelt introducera denna data i omvärlden?
En ide' är att använda en objektorienterad design av den simulerade omvärlden med en bas av klasser som är såpass generella att de alltid kan användas för att härleda en ny klass av objekt, som innehåller den nya informationen.
Sedan skapar man en ny Meddelandetyp (Se kapitlet Meddelandetyper) med tillhörande extraktorfunktioner som kan överföra denna information till EXS. Detta medför att SIM- och NET-modulerna i ENS och EXS (de som berörs av ändringen) måste kompileras om.
Redan existerande Meddelandetyper får INTE modifieras, p.g.a att bakåtkompatibilitet är önskvärt om EXS:er som använder den gamla versionen ska återanvändas.
Skapande av nya Meddelandetyper kan leda till hög nätbelastning om man har en konfiguration av nya och gamla EXS:er, som begär olika varianter av i stort sett samma information.

1.0.2 Spelfiler

Ett scenario är tänkt att byggas med hjälp av ett grafiskt gränssnitt och sedan lagras på en fil. Scenariot kan sedan laddas in och köras ett godtyckligt antal gånger. Under definitionsfasen av ett scenario kan alltid ändringar göras och scenariot kan sparas.

1.0.3 Snabbspolning

Ett scenario kan "snabbspolas" från spelstart till önskad starttid genom att spelets tid uppdateras med en given faktor gånger reell tid. Detta innebär att snabbspolningshastigheten begränsas av scenariots uppdateringsintervall. Under snabbspolning utförs varken uppdatering av det grafiska gränssnittet eller sändning av data till EXS.

1.0.4 Feedback

C3-systemets påverkan på omvärlden via extern utrustning simuleras med hjälp av RPC/XDR-procedurer som arbetar direkt på den simulerade omvärlden. Felrapportering från EXS sker också med RPC/XDR.

1.0.5 Flera användare

För att möjliggöra testning av kommunikationsutrustning och rapporteringsfunktioner behövs ibland att två eller flera C3-system kan dela samma omgivning. Detta kräver att

1.0.6 Orderkanal

Det tillkommer alltid nya krav på ytterligare funktioner för styrning av simulerad utrustning, d.v.s EXS. T.ex vid testning av C3-systemets reaktion på felaktig indata, utrustningsfel, m.m. För att dessa "order" ska kunna läggas in vid en viss tidpunkt eller i en viss sekvens måste de ha en koppling till scenariohanteringen. En lösning är att ha en lista av tidsbestämda "globala" händelser samt en lista över anslutna EXS och deras adresser, för unicast av order till en viss EXS. Nya order kan alltid definieras enligt metoden beskriven under Generalitet ovan.

Sida 9