시스템 공학에서 가장 중요한 두 가지 과제는 이해관계자의 필요를 이해하고 이를 시스템 요구사항으로 변환하는 것이라 할 수 있습니다. 이 백서에서는 이러한 과제를 수행하기 위한 모델링의 초기 응용 분야에 대해 설명하면서, 순수 기술 모델에서 정형 증명에 이르기까지 정교성과 가치를 높여주는 모델링 기법을 보여줍니다. 시스템 요구사항의 품질이 향상되는 것만으로도 이러한 기법에 충분히 투자할 가치가 있지만, 결과 모델을 프로젝트의 후반 단계에서 사용하여 이해관계자의 필요를 보다 효과적으로 나타낼 수 있다는 이점도 있습니다. 요구사항 모델을 활용하여 어떻게 일관되고 완전한 시스템 요구사항을 달성할 수 있는지 보여드리겠습니다. 그림 1은 이러한 이점을 실현하기 위해 이 백서에서 따르는 프로세스를 보여줍니다.
이 사례 연구에서는 아래에 설명된 이해관계자의 필요를 기반으로 기계 냉각 시스템에 대한 요구사항을 도출합니다.
기계의 작동 온도를 유지하여 과열로 인한 기계 손상을 방지하는 시스템을 제공해 주십시오.
- [제약 조건] 냉각 시스템은 작동 온도를 40˚C 이하로 유지해야 합니다.
- [제약 조건] 냉각은 사전에 정해진 시간 내에 효과적으로 이루어져야 합니다.
- [가정] 환경 온도는 -10˚C 초과, 80˚C 미만입니다.
이러한 이해관계자의 필요는 모호하고 잘못 해석되기 쉬워 시스템 요구사항이 불완전하거나 부정확하게 될 가능성이 있으며, 결국 이해관계자의 기대에 부응하지 못하는 설계로 이어질 수 있습니다. 이를 방지하기 위해서는 이해관계자의 필요를 검증해야 합니다.
이해관계자의 필요를 살펴보는 첫 번째 단계는 냉각 시스템이 충족해야 하는 다양한 시나리오를 설명하는 것입니다. 예를 들어, 온도가 너무 높거나 냉각이 효과적이지 않은 것 같다면 어떻게 해야 할까요?
기술 요구사항 모델은 기존의 자연어 요구사항에 비해 한 단계 더 발전한 모델로, 요구사항을 구조화된 그래픽으로 표현하여 관련 팀 간의 협업을 개선합니다. 이러한 표현의 좋은 예로 시퀀스 다이어그램을 들 수 있습니다.
기술 모델이란?
기술 모델은 시스템이 무엇인지 또는 어떤 기능을 하는지를 사람이 읽을 수 있는 방식으로 설명하는 시스템의 그래픽 사양입니다.
그림 2에서는 다음과 같은 시나리오를 설명합니다. 온도(T)가 너무 높으면(T>=40) 냉각이 필요합니다. 냉각이 효과적이라면(T<40) 냉각을 꺼야 합니다. 하지만 냉각이 효과적이지 않다면(지연>=30), 기계를 꺼야 합니다.
시퀀스 다이어그램은 냉각 시스템의 모델링된 컴포넌트가 다양한 시나리오에서 어떻게 작동하는지에 대한 그래픽 설명을 제공합니다. 하지만, 이러한 기술 요구사항 모델은 여전히 공학 영역에 확고히 자리 잡고 있는 반면 시뮬레이션 가능한(또는 실행 가능한) 요구사항 모델은 시스템 영역에서 관측값과 통찰력을 얻을 수 있으므로 이해관계자가 영역별 문맥에서 요구사항을 직접 이해할 수 있습니다. 이러한 출력값을 생성할 수 있는 실행 가능한 형식의 좋은 예가 바로 상태 차트(그림 3 참조)입니다.
시뮬레이션 모델이란?
시뮬레이션 모델은 기계가 해석할 시스템의 사양으로, 기계 해석의 출력값을 사람이 해석하여 결론을 도출합니다.
이는 시뮬레이션이 이전 시퀀스 다이어그램에 설명된 각 시나리오에 대한 명확한 해석을 제공하기 때문에 중요합니다. 또한 이러한 해석을 이해관계자에게 다시 전달하고 다양한 시나리오를 살펴보며 이들의 구체적인 필요가 무엇인지 이해할 수 있는 수단을 제공하므로 시스템 요구사항에 해당 정보를 설명할 수 있습니다.
이제 시퀀스 다이어그램에 지정된 동작을 시뮬레이션하는 모델이 있으므로 상태 머신에서 생성된 출력값을 이해관계자와 함께 관찰하고 논의할 수 있습니다. 아울러, 상태 머신 동작이 시퀀스 다이어그램에 설명된 시나리오와 일치하는지 검증할 수 있습니다. 그림 4에서 시퀀스 다이어그램의 녹색 체크 표시는 시뮬레이션 중 올바른 순서로 올바른 이벤트가 발생했음을 나타냅니다. 이를 통해 기능 모델 동작이 올바름을 확인할 수 있습니다. 이러한 결과는 또한 이해관계자와의 검증에도 사용할 수 있습니다.
시뮬레이션 기법은 시스템 동작에 대한 우수한 커버리지를 제공하지만, 시뮬레이션은 일반적으로 협업 작업을 지원하기 위해 주요 시나리오를 대상으로 합니다. 반면 정형 요구사항 모델에는 모델의 품질을 보다 체계적으로 평가할 수 있게 하는 형식이 포함되어 있습니다.
그러한 형식 중 하나는 일련의 요구사항의 일관성과 완전성을 정형적으로 증명하는 데 사용할 수 있는 Requirements Table입니다. 일관된 요구사항에는 상충하는 부분이 없으며 완전한 요구사항에는 누락된 기능이 없습니다. 그림 5의 사전 조건 열(A)은 시스템 입력값(온도 값) 및 요구사항이 유효한(즉, “활성”) 경우를 설명합니다. 사후 조건 열(B)은 지정된 요구사항이 활성화될 때 예상되는 동작을 설명합니다.
정형 모델이란?
정형 모델은 기계 해석을 위한 시스템의 사양으로, 기계 해석의 출력값을 추가로 처리하여 사람이 사용할 수 있는 최종 결론을 제시합니다.
예를 들어, 요구사항 #1은 T가 40˚C 이하(T<40)일 때 냉각 시스템을 꺼야 한다고 명시합니다(Turn_off_cooling == true
).
이제 Simulink Design Verifier™의 정형 기법 기능을 사용한 분석을 통해 요구사항이 일관되고 완전한지 확인할 수 있습니다. 그림 6을 보면 온도가 정확히 40˚C인 시나리오는 포함되지 않았으므로 이 요구사항 세트는 불완전합니다.
설계 모델 테스트
정형 요구사항 모델은 요구사항의 품질이 더 높고 설계, 자동 테스트 생성, 검증 중에 요구사항 모델의 요소를 재사용할 수 있기 때문에 다운스트림 팀에게 좋은 출발점을 제공합니다. 요구사항 모델은 기능 모델이 요구사항을 충족하도록 개발되었는지 확인하기 위한 단위 테스트의 일부로 사용될 수 있습니다. 이러한 단위 테스트는 대화형 방식으로 실행할 수도 있고 CI/CD 프레임워크의 일부로 실행할 수도 있습니다. 그림 7은 요구사항 1과 2.2가 테스트를 통과하고 다른 요구사항은 실행되지 않았음을 보여줍니다.
디지털 스레드와 그 이상
제품 개발 라이프사이클의 여러 단계에 걸쳐 많은 아티팩트가 만들어지고 생성됩니다. 이러한 디지털 아티팩트에는 요구사항, 아키텍처, 설계 모델, 코드 파일, 검증 및 확인 파일이 포함됩니다. 요구사항이 다른 요구사항, 모델 또는 검증 및 확인 작업에 어떤 영향을 미치는지 이해하려면 이러한 아티팩트 간에 추적 가능한 연결을 설정하는 것이 중요합니다. 이 연결은 디지털 스레드의 역할을 합니다.
예를 들어 요구사항 추적성 다이어그램은 요구사항 및 아키텍처 모델에서 자동으로 생성될 수 있으며, 이를 통해 이러한 요구사항, 모델 및 확인 아티팩트가 어떻게 서로 그래픽으로 연결되어 있는지에 대한 통찰력을 제공할 수 있습니다.
그림 8은 한 이해관계자의 필요가 다른 이해관계자에 의해 충족되는 디지털 스레드를 보여줍니다. 실제로는 여러 이해관계자가 다양한 추상화 수준에 걸쳐 있는 여러 기능 영역을 다루는 조직 전체에 분산되어 있을 것입니다. 그래서 디지털 스레드가 꼭 필요합니다. 또한 디지털 스레드는 자동화되고 민첩하며 반복적인 DevOps(프로세스 및 인프라)의 사용을 용이하게 합니다. 예를 들어, 그림 8은 테스트의 검증(Verification) 상태가 담당 엔지니어에게 자동으로 피드백되는 방법을 보여줍니다.
조직이 디지털 전환 여정을 시작함에 따라 디지털 스레드, 디지털 트윈 그리고 DevOps의 개념은 디지털 엔지니어링의 기반을 구축하는 데 있어 상호 보완적인 역할을 합니다. 이러한 개념은 조화롭게 상호 작용하면서 기존 엔지니어링 관행에서 디지털 중심 엔지니어링 관행으로의 전환을 지원하는 인프라를 구축합니다.
이 백서에서는 이해관계자의 필요를 기반으로 시뮬레이션과 정형 기법을 사용하여 (시뮬레이션 가능한/실행 가능한) 시스템 요구사항을 수렴하는 프로세스에 대해 설명했습니다. 이를 위해 시뮬레이션(상태 머신), 평가(시퀀스 다이어그램), 정형 분석(Requirements Table)이 가능한 요구사항 모델을 사용했습니다.
요구사항 모델을 사용하면 검증 및 확인 작업을 자동화할 수 있어 완전하고 일관되며 검증된 시스템 요구사항을 얻을 수 있습니다. 또한 순수 기술 요구사항이나 텍스트 기반 요구사항보다 더 많은 정보를 제공하므로 여러 팀 간의 협업이 개선됩니다.
작성자: Alan Moore, Becky Petteys, Stephan van Beek
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)