Specifikační jazyk - Specification language
![]() | tento článek potřebuje další citace pro ověření.Srpna 2016) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
A specifikační jazyk je formální jazyk v počítačová věda použitý během systémová analýza, analýza požadavků, a návrh systémů popsat systém na mnohem vyšší úrovni než a programovací jazyk, který se používá k vytvoření spustitelného kódu pro systém.
Přehled
Specifikační jazyky se obecně neprovádějí přímo. Jsou určeny k popisu co, ne jak. Opravdu se považuje za chybu, pokud je specifikace požadavku přeplněna zbytečnými podrobnostmi implementace.
Společným základním předpokladem mnoha specifikačních přístupů je, že programy jsou modelovány jako algebraický nebo model-teoretický struktury, které zahrnují sbírku sady datových hodnot spolu s funkce přes ty sady. Tato úroveň abstrakce se shoduje s názorem, že správnost vstupního / výstupního chování programu má přednost před všemi jeho dalšími vlastnostmi.
V majetkově orientovaný přístup ke specifikaci (zaujatý např CASL ), specifikace programů se skládají hlavně z logických axiomy, obvykle v logický systém ve kterém má rovnost významnou roli a popisuje vlastnosti, které musí funkce uspokojit - často jen jejich vzájemným vztahem. To je na rozdíl od tzv. modelová specifikace v rámci jako VDM a Z, které spočívají v jednoduché realizaci požadovaného chování.
Specifikace musí být předmětem procesu upřesnění (vyplnění podrobností implementace), než mohou být skutečně implementovány. Výsledkem takového procesu zdokonalení je spustitelný algoritmus, který je buď formulován v programovacím jazyce, nebo v spustitelné podmnožině specifikačního jazyka. Například, Hartmann potrubí, pokud jsou správně použity, mohou být považovány za datový tok specifikace, která je přímo spustitelný. Dalším příkladem je herec model který nemá žádný konkrétní obsah aplikace a musí být specializované být spustitelný.
Důležité použití specifikačních jazyků je umožnění vytvoření důkazy z správnost programu (vidět věta prover ).
Jazyky
- Attempto kontrolovaná angličtina[1]
- CASL
- VDM
- Z notace
- TLA +
- LePUS3 (vizuální, objektově orientovaný jazyk popisu designu)
- Perfektní
- Slitina
- LOTOS
- E-LOTOS
- Upřesnit jazyk[2]
- SekvenceL
- SMV
- SDL
Viz také
Reference
- ^ Fuchs, Norbert E .; Schwertel, Uta; Schwitter, Rolf (1998). „Attempto Controlled English — not just another logic specification language“ (PDF). Mezinárodní workshop o syntéze a transformaci logického programování. Přednášky z informatiky. 1559. Springer. str. 1–20. doi:10.1007/3-540-48958-4_1. ISBN 978-3-540-65765-1.
- ^ Linden, Theodore; Lawrence Markosian (1989). „Transformační syntéza pomocí upřesnění“. V Richer, Mark (ed.). Nástroje a techniky AI. Ablex. 261–286. ISBN 0-89391-494-0. Citováno 6. července 2014.