Sada nástrojů JAUS - JAUS Tool Set - Wikipedia

The Sada nástrojů JAUS (JTS) je softwarové inženýrství nástroj pro návrh softwarových služeb používaných v a distribuované výpočetní prostředí. JTS poskytuje a Grafické uživatelské prostředí (GUI) a podpůrné nástroje pro rychlý návrh, dokumentaci a implementaci servisních rozhraní, která dodržují Společnost automobilových inženýrů „standardní AS5684A, JAUS Service Interface Design Language (JSIDL).[1] JTS je navržen tak, aby podporoval modelování, analýzu, implementaci a testování protokolu jako celku distribuovaný systém.
Přehled
Sada nástrojů JAUS (JTS) je sada otevřený zdroj specifikace softwaru a rozvoj nástroje doplněné o otevřený zdroj softwarový rámec vyvinout návrhy JAUS (Joint Architecture for Unmanned Systems) a implementace kompatibilních rozhraní pro simulace a řízení robotických komponent podle standardů SAE-AS4. JTS se skládá z komponent:
- Editor služeb založený na grafickém uživatelském rozhraní: Editor služeb (v tomto dokumentu označovaný jako GUI) poskytuje uživatelsky přívětivé rozhraní, se kterým a návrhář systému může specifikovat a analyzovat formální specifikace komponent a služeb definované pomocí JAUS Service Interface Definition Language (JSIDL).
- Validátor: syntaktický a sémantický validátor poskytuje průběžné ověřování specifikací zadaných (nebo importovaných) uživatelem s ohledem na JSIDL syntax a sémantika je integrován do grafického uživatelského rozhraní.
- Repozitář specifikací: Úložiště (nebo databáze) integrované do grafického uživatelského rozhraní, které umožňuje ukládání a podporuje opětovné použití stávajících formálních specifikací.
- Generátor kódu C ++: Generátor kódu se generuje automaticky C ++ kód, který má 1: 1 mapování na formální specifikace. Generovaný kód zahrnuje všechny aspekty služby, včetně implementací řadičů a odběratelů zpráv a implementací stroje konečného stavu pro chování protokolu, které je účinně odděleno od chování aplikace.
- Generátor dokumentů: Generátor dokumentů automaticky generuje dokumentaci pro sady definic služeb. Dokumenty lze generovat v několika formátech.
- Softwarový rámec: Softwarový rámec implementuje transportní vrstva specifikace AS5669A,[2] a poskytuje rozhraní nezbytná k integraci automaticky generovaného kódu C ++ s implementací transportní vrstvy. Mezi současné možnosti dopravy patří UDP a TCP v kabelových nebo bezdrátových sítích i v sériovém připojení. Samotná transportní vrstva je modulární a umožňuje koncovým uživatelům přidat podle potřeby další podporu.
- Plugin Wireshark: Wireshark zapojit implementuje plugin do populárního síťový protokol analyzátor s názvem Wireshark. Tento plugin umožňuje živé zachycení a offline analýzu komunikace založené na zprávách JAUS za běhu. Integrované úložiště usnadňuje snadné opětovné použití servisních rozhraní a provoz implementací přes drát.
Sada nástrojů JAUS lze stáhnout z www.jaustoolset.org Uživatelská dokumentace a komunitní fórum jsou také k dispozici na webu.
Historie vydání
Po úspěšném Beta test Verze 1.0 sady nástrojů JAUS byla vydána v červenci 2010. Počáteční nabídka se zaměřila na klíčové oblasti uživatelského rozhraní, HTML generování dokumentů, generování kódu C ++ a softwarový rámec. Aktualizace verze 1.1 byla vydána v říjnu 2010. Kromě oprava chyb a vylepšení uživatelského rozhraní, tato verze nabídla několik důležitých upgradů včetně vylepšení Validátoru, Wireshark plug-in a generovaný kód.
Vydání JTS 2.0 je naplánováno na druhé čtvrtletí roku 2011 a dále vylepšuje funkčnost sady nástrojů:
- Ověření protokolu: V současné době JTS poskytuje ověření pro vytváření zpráv, aby uživatelé nemohli vytvářet specifikace neplatných zpráv. Tato funkce aktuálně neexistuje pro definice protokolu, ale je přidávána. To pomůže zajistit, aby uživatelé vytvořili všechny nezbytné prvky definice služby a snížili chyby uživatelů.
- Generování kódu C # a Java: V současné době JTS generuje multiplatformní kód C ++. Jiné jazyky včetně Jáva a C # zaznamenávají dramatický nárůst jejich použití v distribuovaných systémech, zejména při vývoji grafických klientů na vestavěné služby.
- Generování dokumentu MS Word: Výstup HTML a JSIDL je podporován, ale je nativní Office-Open-XML Generování MS Word (OOXML) má výhody, pokud jde o prezentaci výstupu a snadné použití pro integraci s jinými dokumenty. Proto plánujeme integraci MS Word generování servisních dokumentů.
Kromě toho má vývojový tým několik dalších cílů, které ještě nejsou naplánovány pro konkrétní uvolňovací okno:
- Ověření protokolu: Jedná se o převod definice JSIDL služby na model PROMELA pro ověření nástrojem pro kontrolu modelu SPIN. Použitím PROMELA modelovat rozhraní klienta a serveru umožní vývojářům formálně ověřit služby JAUS.
- Zkušenosti koncového uživatele: Plánujeme provést formální testování uživatelského rozhraní. To zahrnuje definování sady úkolů a případů použití, požádání uživatelů s různými úrovněmi zkušeností JAUS o splnění těchto úkolů a měření výkonu a shromažďování zpětné vazby, aby hledali oblasti, kde lze zlepšit celkovou uživatelskou zkušenost.
- Vylepšené opětovné použití služby: JSIDL umožňuje dědit popisy protokolů, podobně objektově orientované programování jazyky umožňují dětské třídy znovu použít a rozšířit chování definované nadřazenou třídou. V současné době je generovaný kód „zplošťuje“ státní stroje do řady vnořených stavů, které poskytují správné chování rozhraní, ale pouze pokud je každá jednotlivá listová (podřízená) služba generována v rámci vlastní komponenty. To omezuje opětovné použití služby a může vést ke kopírování a vkládání stejné implementace napříč více komponentami. Tým hodnotí další řešení dědičnosti, která by umožnila vícelistovým (podřízeným) službám sdílet přístup ke společnému rodiči, ale v současné době je přístup dostatečný k řešení požadavků základní sady služeb JAUS.[3]
Domény a aplikace
Sada nástrojů JAUS je založena na jazyce JAUS Service Interface Definition Language (JSIDL), který byl původně vyvinut pro aplikaci v bezpilotních systémech, nebo robotika, komunity. Proto si JTS rychle získalo uznání jako nástroj pro generování služeb a rozhraní v souladu s publikacemi SAE AS-4 „JAUS“. Ačkoli nejsou statistiky používání k dispozici, sadu nástrojů si stáhli zástupci americké armády, námořnictva, námořní pěchoty a řada dodavatelů obrany. To bylo také použito v komerčním produktu zvaném JAUS Expansion Module prodávaný společností DeVivo AST, Inc.
Vzhledem k tomu, že schéma JSIDL je nezávislé na vyměňovaných datech, lze sadu nástrojů použít pro návrh a implementaci Architektura orientovaná na služby pro jakékoli prostředí distribuovaných systémů, které používá binární kódovanou výměnu zpráv. JSIDL je postaven na dvouvrstvé architektuře, která odděluje aplikační vrstva a transportní vrstva, která účinně odděluje výměnu dat od podrobností o tom, jak se tato data pohybují od komponenty ke komponentě.
Kromě toho, protože samotné schéma je široce obecné, je možné definovat zprávy pro libovolný počet domén, mimo jiné včetně průmyslové řídicí systémy, vzdálené monitorování a diagnostika, a webové aplikace.
Licencování
JTS je vydáván pod otevřeným zdrojovým kódem Licence BSD. Standard JSIDL je k dispozici na SAE. Middleware Jr, na kterém je založen Softwarový rámec (Transport Layer), je pod open source LGPL. Jiné balíčky distribuované s JTS mohou mít různé licence.
Sponzoři
Několik vývojářů sponzorovalo vývoj sady nástrojů JAUS Ministerstvo obrany Spojených států organizace:
- Úřad podtajemníka obrany pro akvizici, technologie a logistiku / bezpilotní boj.
- Výkonný ředitel námořního programu Littoral and Mine
- Výkonný ředitel námořního programu Bezpilotní letectví a úderné zbraně
- Úřad námořního výzkumu
- Výzkumná laboratoř vzdušných sil
Reference
- ^ SAE AS5684A, „JAUS Service Interface Definition Language“, AS-4C Information Modeling and Definition Committee, červenec 2010
- ^ SAE AS 5669A, „JAUS / SDP Transport Specification“, AS-4B Network Environmental Committee, únor 2009
- ^ SAE AS5710, „JAUS Core Service Set“, Výbor pro modelování a definici informací AS-4C, srpen 2010
externí odkazy
- jaustoolset.org: Domovská stránka sady nástrojů JAUS
- sae.org: Vydavatelé rodiny standardů SAE AS-4 JAUS, včetně JSIDL (AS-5684)
- jrmiddleware.org: Domovská stránka pro JR Middleware, zdrojový kód LGPL používaný softwarovým rámcem JTS