사양 및 설명 언어

Specification and Description Language

사양설명 언어(SDL)는 반응형 및 분산형 시스템의 동작에 대한 명확한 사양 및 설명을 목적으로 하는 사양 언어입니다.

개요

ITU-T는 권장사항 Z.100~Z.106에서 SDL을 정의하고 있습니다.SDL은 원래 통신 시스템에 중점을 두고 있었습니다.2016년 현재 적용 분야는 프로세스 제어와 실시간 애플리케이션 전반입니다.이러한 특성으로 인해 시뮬레이션 시스템을 모호함 없이 그래픽 표기법으로 나타낼 수 있습니다.

사양 및 설명 언어는 그래픽 그래픽 표현(SDL/GR)과 텍스트 구문 표현(SDL/PR)을 모두 제공합니다. 이 두 표현은 모두 동일한 기본 의미론을 동등하게 나타냅니다.모델은 보통 그래피컬 SDL/GR 형식으로 표시되며, SDL/PR은 주로 툴 간의 모델 교환에 사용됩니다.시스템은 유한상태머신(FSM)의 확장인 상호접속된 추상머신 세트로 지정된다.

언어는 공식적으로 [2]완전하기 때문에 시뮬레이션 또는 최종 타깃의 코드 생성에 사용할 수 있습니다.

사양 및 설명 언어에는 구조, 통신, 동작, 데이터 및 상속의 5가지 주요 측면이 포함됩니다.컴포넌트의 동작은 시스템을 일련의 계층으로 분할하여 설명합니다.구성 요소 간의 통신은 채널로 연결된 게이트를 통해 이루어집니다.채널은 지연채널 타입이기 때문에 보통 통신은 비동기이지만 지연이 0(즉, 지연 없음)으로 설정되면 통신은 동기화됩니다.

언어의 첫 번째 버전은 1976년에 그래픽 구문(SDL-76)을 사용하여 출시되었습니다.이것은 1980년에 몇 가지 기본적인 의미론(SDL-80)과 함께 개정되었습니다.의미론은 1984년에 개선되었고(SDL-84), 텍스트 형식이 기계 처리를 위해 도입되었으며 데이터가 도입되었습니다.1988년 SDL-88은 추상문법, 구체적인 문법, 완전한 정식 정의 등 언어의 정식 기반으로 출시되었습니다.1992년에 공개된 버전(SDL-92)에서는 상속, 추상적 범용형 등의 객체 지향 개념을 도입하여 비 객체 지향형으로의 변환에 의해 기술된 객체 지향적 특징을 가지고 있습니다.SDL-2010은 SDL-2000의 최신 버전입니다.변환에 의한 설명이 아니라 완전히 객체 지향에 근거한 갱신 버전입니다.이 버전에는 UML-Profile: ITU-T Recommendation Z.109 (04/12), SDL-2010과 UML을 조합한SDL-2010도 SDL-RT에 의해 최초로 도입된C 데이터 타입의 서포트가 도입되었습니다.

조직

계층 수준

SDL의 계층 레벨은 다음과 같이 구성되어 있습니다.

  • 라이브러리 패키지
  • 시스템 에이전트
  • 차단 에이전트
  • 프로세스 에이전트
  • 절차 유형
  • 리모트 프로시저

아키텍처

SDL 시스템은 기능 블록으로 구성되며 각 블록은 서브 블록으로 더욱 분해될 수 있다.최하위 블록은 유한 상태 머신으로 기술된 하나 이상의 프로세스로 구성됩니다.

SdlArchitecture.JPG

의사소통

블록은 블록 간에 교환되는 메시지(또는 신호)를 전송하는 채널을 통해 연결됩니다.블록 에이전트는 프로세스 에이전트로 구성됩니다.

SdlChannels.png

행동

각 프로세스 에이전트는 시스템이 수행하는 작업에 기여하는 상태 시스템입니다.환경 또는 다른 에이전트에서 에이전트로 전달되는 메시지 자극을 신호라고 합니다.프로세스 에이전트가 수신한 신호는 먼저 큐(입력 포트)에 배치됩니다.스테이트 머신이 어떤 상태에서 대기하고 있을 때 입력 포트의 첫 번째 신호가 그 상태에서 활성화 되어 있으면 다른 상태로 이어지는 전환을 시작합니다.전환은 다른 에이전트 또는 환경에 신호를 출력할 수 있습니다.프로세스 에이전트는 다른 위치에서 동일한 작업을 호출할 수 있도록 절차 유형을 포함할 수 있습니다.또, 리모트 프로시저 타입을 호출해, 다른 에이전트(또는 다른 시스템)의 프로시저를 기동해, 응답을 기다리는 것도 가능합니다.

SdlStateMachine.png

이 예에서 MyVariable은 INTEGER 유형으로 프로세스에서 유일한 변수입니다.첫 번째 천이는 로컬 변수를 초기화하는 시작 천이입니다.접속 요구 메시지 conReq 가 송신되어 5 초간의 타이머 conReqTimer 가 기동되어 스테이트 머신이 접속 스테이트가 됩니다.연결 상태에서는 타이머가 꺼지면(메시지 수신과 동일) 연결 요구가 최대 10회까지 다시 전송됩니다.접속확인이 수신되면 스테이트 머신은 connected 상태가 됩니다.이것은 일반적인 전기통신 프로토콜 시나리오입니다.

사용 가능한 기호는 다음과 같습니다.

SdlSymbols.jpg

데이터.

SDL Abstract Data Type(ADT)은 INTEGER, REAL, CHARTRING 등의 기본 데이터 타입과 구조(STUCT), 열거(LITERAL), 상수(SYONYMS) 등의 구조화된 데이터 타입을 지원합니다.Pascal의 구문과 비슷합니다. 예를 들어, 과제는 ':='로 작성됩니다.

변종

  • SDL-RT는 데이터 언어를 C로 [3]대체하는 ITU 사양 및 설명 언어를 기반으로 합니다.최신 버전의 SDL 표준(SDL'2010)에서는 C 데이터 타입과 구문을 지원하여 SDL-RT의 기본 원칙을 공식 표준으로 채택하고 있습니다.
  • TNSDL은 내부 사용을 위해 Nokia에 의해 개발된 변형입니다.

관련 테크놀로지

  • MSC 메시지시퀀스 차트시스템의 동적 동작을 나타내기 위한 다른 ITU-T 관련 표기법.
  • ASN.1 추상 구문 표기법 1SDL 내에서 사용할 수 있는 데이터 유형을 기술하는 ISO 표준입니다.
  • TTCN-3 테스트 및 테스트 제어 표기 버전3ITU-T에 의해 표준화되고 ETSI에 의해 작성된 테스트 언어.
  • Unified Modeling Language 범용 모델링 표기법.프로파일은 SDL을 기반으로 표준화되어 있습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Fonseca i Casas, Pau and Pi, Xavier and Casanovas, Josep and Jové, Jordi (2013). "Definition of Virtual Reality Simulation Models Using Specification and Description Language Diagrams". SDL 2013: Model-Driven Dependability Engineering. Lecture Notes in Computer Science. Vol. 7916. Springer Berlin Heidelberg. pp. 258–274. doi:10.1007/978-3-642-38911-5_15. hdl:2117/22156. ISBN 978-3-642-38910-8.{{cite book}}: CS1 maint: 여러 이름: 작성자 목록(링크)
  2. ^ R. Grammes; R. Gotzhein (2007). Fundamental Approaches to Software Engineering. Lecture Notes in Computer Science. Vol. 4422. Springer. pp. 200–214. doi:10.1007/978-3-540-71289-3_17. ISBN 978-3-540-71288-6.
  3. ^ "Specification and Description Language – Real Time". Retrieved 2014-03-29. SDL-RT prime use is to develop real time and embedded software. SDL-RT is based on tasks running concurrently that exchange information through messages and synchronize with each other using semaphores.

외부 링크