LOTOS ( Eng. Language Of Temporal Ordering Specification - „limbajul specificației de ordonare temporală”) este un limbaj de specificație standardizat, destinat inițial să descrie sistemele de comunicare și distribuite . LOTOS este alcătuit din două limbaje complementare: limbajul de descriere a tipului de date abstracte ACT ONE și limbajul de descriere a comportamentului algebrei procesului [1] [2] .
Deși LOTOS s-a dovedit a fi aplicabil pe scară largă, Organizația Internațională pentru Standardizare a preluat dezvoltarea unei versiuni îmbunătățite - E-LOTOS (ISO/IEC 15437:2001) [3] [1] .
În LOTOS și E-LOTOS, sistemul care trebuie specificat este modelat de un set de procese care interacționează între ele și mediul lor [1] .
Porturile de comunicare ale unui proces sunt numite canale de evenimente . Procesele sunt parametrizate după canalele și starea lor. Intrarea și ieșirea corespund evenimentelor , adică interacțiunilor pe canale între două procese sau un sistem și mediul său. Un eveniment are loc atunci când două părți se sincronizează pe propoziții de eveniment care se potrivesc, adică atunci când este nevoie de comunicare din partea ambelor părți. În cazul mai multor oferte simultane, se face o alegere care poate afecta comportamentul în continuare al sistemului [1] .
LOTOS este susținut de instrumente pentru specificare , simulare , compilare , generare de teste și verificare formală . Exemple de instrumente: CADP (CÆSAR/ALDÉBARAN Development Package) [4] , LITE, LOLA [1] .