KR101872197B1 - 시나리오 작성기 및 시나리오 작성방법 - Google Patents

시나리오 작성기 및 시나리오 작성방법 Download PDF

Info

Publication number
KR101872197B1
KR101872197B1 KR1020160146798A KR20160146798A KR101872197B1 KR 101872197 B1 KR101872197 B1 KR 101872197B1 KR 1020160146798 A KR1020160146798 A KR 1020160146798A KR 20160146798 A KR20160146798 A KR 20160146798A KR 101872197 B1 KR101872197 B1 KR 101872197B1
Authority
KR
South Korea
Prior art keywords
view
data
scenario
model data
view model
Prior art date
Application number
KR1020160146798A
Other languages
English (en)
Other versions
KR20180050075A (ko
Inventor
이상진
이상민
김희수
우인희
Original Assignee
국방과학연구소
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 국방과학연구소 filed Critical 국방과학연구소
Priority to KR1020160146798A priority Critical patent/KR101872197B1/ko
Publication of KR20180050075A publication Critical patent/KR20180050075A/ko
Application granted granted Critical
Publication of KR101872197B1 publication Critical patent/KR101872197B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B9/00Simulators for teaching or training purposes
    • G09B9/003Simulators for teaching or training purposes for military purposes and tactics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/26Government or public services

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Educational Administration (AREA)
  • Tourism & Hospitality (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Development Economics (AREA)
  • Educational Technology (AREA)
  • Stored Programmes (AREA)

Abstract

본 명세서는 시나리오 작성기 및 시나리오 작성방법에 관한 것으로, 보다 구체적으로는 작성 대상에 해당하는 시나리오 데이터에서 전시 대상에 해당하는 속성 데이터를 선별하여 뷰 모델 데이터로 변환하는 데이터 변환부 및 상기 뷰 모델 데이터를 근거로 상기 뷰 모델 데이터에 대응하는 뷰 오브젝트를 구성하고, 상기 뷰 오브젝트와 상기 뷰 모델 데이터를 바인딩하여 시나리오 작성 개체인 전시 뷰를 제작하는 처리부를 포함하는 조립형 워게임 시나리오를 작성하는 시나리오 작성기 및 이의 시나리오 작성방법에 관한 것이다.

Description

시나리오 작성기 및 시나리오 작성방법{MODULE FOR WRITING MILITARY SCENARIO AND METHOD FOR WRITING MILITARY SCENARIO}
본 명세서는 시나리오 작성기 및 시나리오 작성방법에 관한 것으로, 보다 구체적으로는 조립형 워게임 시나리오를 작성하는 시나리오 작성기 및 시나리오 작성방법에 관한 것이다.
본 발명의 배경이 되는 기술은 조립형 워게임 시나리오를 작성하는 시나리오 작성기 및 시나리오 작성방법에 관한 것이다.
MSDL(Military Scenario Definition Language)은 군 시나리오 개발을 위해 설계된 XML 기반의 언어이다. MSDL은 모델링&시뮬레이션 분야에서 시나리오 검증 및 불러오기에서 공통된 매커니즘을 제공하고, 타 쳬계간의 시나리오 공유가 가능하게 함으로써 시나리오의 일관성을 향상시킨다. 이와 같은 특징은 MSDL 기반의 시뮬레이션 및 시나리오 작성기들 간의 시나리오의 공유 및 재사용이 가능하게 한다.
이러한 MSDL 기반의 시나리오 작성기는 Model-View-ViewModel(이하, MVVM) 패턴을 사용하는데, MVVM 패턴은 윈도우 폼, WPF(Window Presentation Foundation), Silverright 등에서 사용되는 패턴으로서, 모델-뷰-뷰모델을 서로 분리하여 데이터, UI, 비즈니스 로직 간의 뚜렷한 구분을 나타내는 방법이다.
도 1은 본 명세서에 개시된 시나리오 작성기의 MVVM 패턴의 모델-뷰-뷰모델 사이의 관계를 나타내는 개념도이다.
도 1에 도시된 바와 같이, 각각의 모델(10)들은 모델(10)이 변경되면 이를 알려주는 뷰 모델(20)이 존재하며, 뷰 모델(20)의 변경된 데이터를 알려 줌으로써 뷰 모델(20)의 데이터를 전시하는 뷰(30)가 존재한다. 즉, 모델(10)이 변경되면 변경된 데이터가 뷰 모델(20)에 전달되고, 전달된 데이터에 따라 뷰 모델(200이 비즈니스 로직을 수행한 후 변경된 데이터를 뷰(30)에 전달함으로써 UI에 반영되게 된다. UI를 통해 사용자가 입력을 할 경우, 데이터 바인딩을 통해 뷰(30)와 바인딩 된 뷰 모델(20)에 사용자의 입력 내용이 전달되게 되고, 전달된 내용에 따라 뷰 모델(20)이 비즈니스 로직을 수행한 후, 수행된 결과를 모델(10)에 업데이트 하는 구조를 가지고 있다.
도 2는 본 명세서에 개시된 시나리오 작성기의 MVVM 패턴에 따른 구현의 예시를 나타내는 예시도이다..
도 2에 도시된 바와 같이, 뷰(30)와 뷰 모델(20)은 모델(10)과 대응되는 구조로 구성됨을 볼 수 있다. MilitaryScenarioType은 이를 처리하기 위한 비즈니스 로직과 데이터가 들어있는 MilitaryScenarioViewModel, 데이터를 전시하기 위한 UI인 MilitaryScenarioView가 존재함을 확인할 수 있다. 마찬가지로 ScenarioID, name, type들도 각각의 데이터를 처리하기 위한 뷰 모델(20)과 뷰(30)가 존재함을 확인할 수 있다.
이처럼, 모델(10)-뷰(30)-뷰 모델(20)은 서로 대응되는 관계로, 각각이 대응되는 데이터 형태로 이루어지게 된다. 이와 같은 뚜렷한 구분은 데이터 모델, UI, 비즈니스 로직 간의 독립성을 보장해 주며, 유지보수, 재사용 및 진화가 용이한 장점이 있다.
하지만 기존의 MVVM 패턴 적용 시나리오 작성기에서는 모델(10)-뷰(30)-뷰 모델(20)간의 관계를 정의하는 방법에 대해선 명시적으로 제공하지 않고 있다. 기존의 MVVM 패턴들은 각 모델(10)들에 대응되는 뷰(30)와 뷰 모델(20)들을 구현하였으며, 이와 같은 구조는 모델(10)의 구성과 매칭되는 뷰(30)와 뷰 모델(20)들을 모두 제작해야 한다. 이와 같은 특징은 모델(10)의 복잡도가 올라갈수록 뷰(30)와 뷰 모델(20)의 구현에 대한 작업량이 선형으로 증가한다는 단점이 있다. MSDL의 양은 매우 방대하여, 뷰의 제작에 많은 시간과 인력이 요구될 수 밖에 없다. SISO-STD-007-2008 문서에 따르면 시나리오 엘리먼트 항목 수가 40개에 이르는데, 다시 말하면 MSDL 시나리오를 작성하기 위해선 MSDL 시나리오 작성기를 만들기 위해 MVVM 패턴을 적용할 경우, 데이터 모델을 전시하기 위해 40개 이상의 뷰를 제작해야 한다는 의미이며, 필요 관점에 따라 요구되는 뷰의 수가 선형으로 증가하게 된다.
따라서, 본 명세서는 시나리오 작성기의 MVVM 패턴에 따른 한계를 개선하는 것을 과제로 하여, 시나리오 작성을 위한 데이터 처리 과정이 간소화되고, 동적으로 뷰를 제작할 수 있는 시나리오 작성기 및 시나리오 작성방법을 제공하고자 한다.
또한, 본 명세서는 뷰를 제작하는 과정 및 시나리오 작성 과정에서의 작업량이 감소됨은 물론, 사용자의 요구에 따른 뷰 제작 및 시나리오 작성이 이루어질 수 있는 시나리오 작성기 및 시나리오 작성방법을 제공하고자 한다.
상술한 바와 같은 과제를 해결하기 위한 본 명세서에 개시된 시나리오 작성기는, 작성 대상에 해당하는 시나리오 데이터에서 전시 대상에 해당하는 속성 데이터를 선별하여 뷰 모델 데이터로 변환하는 데이터 변환부 및 상기 뷰 모델 데이터를 근거로 상기 뷰 모델 데이터에 대응하는 뷰 오브젝트를 구성하고, 상기 뷰 오브젝트와 상기 뷰 모델 데이터를 바인딩하여 시나리오 작성 개체인 전시 뷰를 제작하는 처리부를 포함한다.
일 실시 예에서, 상기 데이터 변환부는, 외부로부터 상기 속성 데이터의 선별에 대한 선별 정보를 입력받아, 상기 선별 정보를 근거로 상기 시나리오 데이터에서 상기 속성 데이터를 선별할 수 있다.
일 실시 예에서, 상기 처리부는, 상기 뷰 모델 데이터를 기설정된 알고리즘에 적용하여 상기 뷰 모델 데이터를 상기 뷰 오브젝트에 반영 가능한 형태로 완성할 수 있다.
일 실시 예에서, 상기 처리부는, 상기 뷰 모델 데이터를 분석하고, 분석 결과에 따라 기저장된 오브젝트 샘플 중 상기 뷰 모델 데이터에 대응하는 샘플을 탐색하고, 탐색된 샘플을 근거로 상기 뷰 오브젝트를 구성할 수 있다.
일 실시 예에서, 상기 처리부는, 상기 뷰 모델 데이터를 분석하고, 분석 결과에 따라 상기 뷰 모델 데이터에 대응하는 샘플을 제작하여, 제작된 샘플을 근거로 상기 뷰 오브젝트를 구성할 수 있다.
일 실시 예에서, 상기 처리부는, 상기 뷰 모델 데이터를 분석하고, 분석 결과에 따라 기저장된 오브젝트 샘플 중 상기 뷰 모델 데이터에 대응하는 샘플을 탐색하거나, 또는 상기 뷰 모델 데이터에 대응하는 샘플을 제작하되, 하나 이상의 탐색된 샘플 또는 제작된 샘플을 조합하여 상기 뷰 오브젝트를 구성할 수 있다.
본 명세서에 개시된 시나리오 작성기 및 시나리오 작성방법은, 조립형 워게임 시나리오 작성을 위한 작업량과 시나리오 뷰 제작 작업량의 감소를 위해 제안된 것으로, 사용자의 관심에 따라 모델을 간소화하여 뷰 모델을 제작함으로써, 시나리오 작성을 위한 작업량이 감소될 수 있는 효과가 있다.
또한, 본 명세서에 개시된 시나리오 작성기 및 시나리오 작성방법은, 복합 뷰와 원시 뷰의 조합으로 각각의 뷰모델에 대응되는 뷰를 동적으로 조립함으로써, 뷰 제작 작업량이 감소될 수 있는 효과가 있다.
또한, 본 명세서에 개시된 시나리오 작성기 및 시나리오 작성방법은, 사용자의 관심에 따라 모델을 간소화하여 뷰 모델을 제작함으로써, 사용자의 요구에 따른 뷰 제작 및 시나리오 작성이 이루어지게 될 수 있는 효과가 있다.
아울러, 본 명세서에 개시된 시나리오 작성기 및 시나리오 작성방법은, 상기와 같은 효과들을 통해, MSDL 기반 MVVM 패턴이 적용된 시나리오 작성기/작성방법의 활용성, 효용성 및 효율성이 증대될 수 있는 효과가 있다.
도 1은 본 명세서에 개시된 시나리오 작성기의 MVVM 패턴의 모델-뷰-뷰모델 사이의 관계를 나타내는 개념도.
도 2는 본 명세서에 개시된 시나리오 작성기의 MVVM 패턴에 따른 구현의 예시를 나타내는 예시도.
도 3은 본 명세서에 개시된 시나리오 작성기의 구성을 나타낸 구성도.
도 4는 본 명세서에 개시된 시나리오 작성기의 시나리오 작성 순서를 나타낸 순서도.
도 5는 본 명세서에 개시된 시나리오 작성기의 실시 예에 따른 시나리오 데이터 및 뷰 모델 데이터의 관계를 나타낸 예시도.
도 6은 본 명세서에 개시된 시나리오 작성기의 실시 예에 따른 뷰 오브젝트의 구성 예시를 나타낸 예시도.
도 7은 본 명세서에 개시된 시나리오 작성기의 실시 예에 따른 시나리오 작성 과정을 나타낸 예시도 1.
도 8은 본 명세서에 개시된 시나리오 작성기의 실시 예에 따른 시나리오 작성 과정을 나타낸 예시도 2.
도 9는 본 명세서에 개시된 시나리오 작성기의 실시 예에 따른 뷰 모델 데이터 및 뷰 오브젝트의 예시를 나타낸 예시도.
도 10은 본 명세서에 개시된 시나리오 작성기의 실시 예에 따른 뷰 오브젝트의 제작 예시를 나타낸 예시도.
본 명세서는 조립형 워게임 시나리오를 작성하는 시나리오 작성장치 및 시나리오 작성방법에 적용될 수 있으며, 특히 MSDL(Military Scenario Definition Language) 기반의 MVVM(Model-View-ViewModel) 패턴을 사용하는 시나리오 작성장치 및 시나리오 작성방법에 유용하게 적용될 수 있다.
본 명세서에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 명세서에 개시된 기술의 사상을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 명세서에서 사용되는 기술적 용어는 본 명세서에서 특별히 다른 의미로 정의되지 않는 한, 본 명세서에 개시된 기술이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 명세서에서 사용되는 기술적인 용어가 본 명세서에 개시된 기술의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 명세서에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.
또한, 본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "구성된다" 또는 "포함한다" 등의 용어는 명세서 상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예들을 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
또한, 본 명세서에 개시된 기술을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 기술의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 기술의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 그 기술의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다.
이하, 도 1 내지 도 10을 참조하여 본 명세서에 개시된 시나리오 작성기 및 시나리오 작성방법을 설명한다.
도 1은 본 명세서에 개시된 시나리오 작성기의 MVVM 패턴의 모델-뷰-뷰모델 사이의 관계를 나타내는 개념도이다.
도 2는 본 명세서에 개시된 시나리오 작성기의 MVVM 패턴에 따른 구현의 예시를 나타내는 예시도이다.
도 3은 본 명세서에 개시된 시나리오 작성기의 구성을 나타낸 구성도이다.
도 4는 본 명세서에 개시된 시나리오 작성기의 시나리오 작성 순서를 나타낸 순서도이다.
도 5는 본 명세서에 개시된 시나리오 작성기의 실시 예에 따른 시나리오 데이터 및 뷰 모델 데이터의 관계를 나타낸 예시도이다.
도 6은 본 명세서에 개시된 시나리오 작성기의 실시 예에 따른 뷰 오브젝트의 구성 예시를 나타낸 예시도이다.
도 7은 본 명세서에 개시된 시나리오 작성기의 실시 예에 따른 시나리오 작성 과정을 나타낸 예시도 1이다.
도 8은 본 명세서에 개시된 시나리오 작성기의 실시 예에 따른 시나리오 작성 과정을 나타낸 예시도 2이다.
도 9는 본 명세서에 개시된 시나리오 작성기의 실시 예에 따른 뷰 모델 데이터 및 뷰 오브젝트의 예시를 나타낸 예시도이다.
도 10은 본 명세서에 개시된 시나리오 작성기의 실시 예에 따른 뷰 오브젝트의 제작 예시를 나타낸 예시도이다.
본 명세서에 개시된 시나리오 작성기는, 조립형 워게임 시나리오를 작성하는 시나리오 작성기일 수 있다.
상기 시나리오 작성기는, MSDL(Military Scenario Definition Language)를 사용하여 MVVM(Model-View-ViewModel) 패턴으로 군 시나리오를 작성하는 시나리오 작성모듈일 수 있다.
상기 시나리오 작성기는, 군 시나리오를 작성/편집/수행하는 컴퓨터, 또는 이를 비롯한 장치에 포함되는 시나리오 작성모듈일 수 있다.
상기 시나리오 작성기는, 시나리오 데이터를 작성/편집/수행하고, 이를 외부에 전시(표시)하는 장치에 포함되는 시나리오 작성모듈일 수 있다.
상기 시나리오 작성기(100)는, 도 3에 도시된 바와 같이, 작성 대상에 해당하는 시나리오 데이터에서 전시 대상에 해당하는 속성 데이터를 선별하여 뷰 모델 데이터로 변환하는 데이터 변환부(110) 및 상기 뷰 모델 데이터를 근거로 상기 뷰 모델 데이터에 대응하는 뷰 오브젝트를 구성하고, 상기 뷰 오브젝트와 상기 뷰 모델 데이터를 바인딩하여 시나리오 작성 개체인 전시 뷰를 제작하는 처리부(120)를 포함한다.
여기서, 상기 시나리오 데이터는 상기 MVVM 패턴의 모델을 의미하고, 상기 뷰 모델 데이터는 상기 MVVM 패턴의 뷰 모델 데이터를 의미하고, 상기 뷰 오브젝트는 상기 MVVM 패턴의 뷰를 의미하고, 상기 전시 뷰는 상기 뷰 오브젝트가 최종적으로 외부로 표시되는 UI(User Interface), 또는 ICON 등을 의미할 수 있다.
상기 시나리오 데이터, 상기 뷰 모델 데이터 및 상기 뷰 오브젝트 각각은 상기 시나리오 작성기(100)에서 처리되는 데이터, 또는 파일일 수 있으며, 특히 상기 뷰 오브젝트는 표시수단을 통해 외부에 표시되는 개체의 데이터, 또는 파일일 수 있다.
상기 시나리오 데이터는, 기수립된 시나리오의 정보가 저장된 데이터를 의미할 수 있으며, 상기 기수럽된 시나리오에 대한 복수의 정보를 포함할 수 있다.
상기 속성 데이터는, 상기 시나리오 데이터에 포함된 정보 중 전시 대상에 해당하는 정보의 데이터를 의미할 수 있으며, 즉 상기 시나리오 데이터 중 상기 시나리오 작성기(100)로 표시 및 작성/편집하고자 하는 부분의 데이터일 수 있다.
상기 속성 데이터는, 상기 뷰 오브젝트의 제작 근거가 되는 데이터로, 상기 뷰 모델 데이터로 변환될 수 있다.
상기 전시 뷰는 상기 시나리오 작성기(100)에서 제작된 시나리오 작성 개체로, 표시수단을 통해 시나리오를 작성/편집하는 외부의 사용자에게 전시되어, 전시된 전시 뷰에 대한 사용자의 조작을 통해 시나리오의 작성/편집이 이루어지게 될 수 있으며, UI 또는 ICON 등의 형태로 전시될 수 있다.
즉, 상기 시나리오 작성기(100)는, 외부에 표시되어 시나리오 작성의 개체가 되는 상기 전시 뷰를 제작하여, 제작된 전시 뷰를 외부에 표시되도록 함으로써, 상기 전시 뷰를 통해 시나리오 작성/편집이 이루어지도록 하게 될 수 있다.
상기 시나리오 작성기(100)는, 시나리오 작성을 위한 프로그램 및 데이터가 저장된 저장수단을 포함할 수 있으며, 또는 외부의 저장수단으로부터 시나리오 데이터를 입력받아, 이를 근거로 시나리오 작성을 처리할 수 있다.
상기 데이터 변환부(110) 및 상기 처리부(120) 각각은, 상기 시나리오 작성기(100)에 포함되는 모듈일 수 있다.
상기 데이터 변환부(110)는, 저장수단에 기저장된 상기 시나리오 데이터를 읽어들여, 상기 시나리오 데이터에서 상기 속성 데이터를 선별할 수 있다.
상기 데이터 변환부(110)는, 외부로부터 상기 속성 데이터의 선별에 대한 선별 정보를 입력받아, 상기 선별 정보를 근거로 상기 시나리오 데이터에서 상기 속성 데이터를 선별할 수 있다.
상기 선별 정보는, 입력수단을 통해 상기 시나리오 작성기(100)의 사용자에 의해 입력된 정보의 신호일 수 있고, 상기 시나리오 데이터 중 전시 대상에 해당하는 데이터에 대한 정보를 포함할 수 있다.
상기 데이터 변환부(110)는, 상기 시나리오 데이터 중 상기 선별 정보에 해당하는 상기 속성 데이터를 선별하고, 상기 속성 데이터를 상기 뷰 모델 데이터로 변환하여 상기 처리부(120)로 전달할 수 있다.
상기 처리부(120)는, 상기 처리부(120)는, 상기 뷰 모델 데이터를 근거로 상기 뷰 오브젝트를 구성하고, 상기 뷰 모델 데이터와 상기 뷰 오브젝트를 바인딩하는 뷰 바인더일 수 있다.
상기 처리부(120)는, 상기 뷰 모델 데이터를 근거로 상기 뷰 오브젝트를 구성하고, 상기 뷰 모델 데이터와 상기 뷰 오브젝트를 바인딩하여 최종적으로 외부에 표시되는 상기 전시 뷰를 제작할 수 있다.
상기 처리부(120)는, 상기 뷰 모델 데이터를 기설정된 알고리즘에 적용하여 상기 뷰 모델 데이터를 상기 뷰 오브젝트에 반영 가능한 형태로 완성할 수 있다.
상기 기설정된 알고리즘은, 상기 데이터 변환부(110)에서 변환되어 전달된 상기 뷰 모델 데이터를 상기 뷰 오브젝트에 반영 가능한 형태로 완성시키는 비즈니스 로직 알고리즘일 수 있다.
상기 처리부(120)는, 상기 뷰 모델 데이터를 분석하고, 분석 결과에 따라 기저장된 오브젝트 샘플 중 상기 뷰 모델 데이터에 대응하는 샘플을 탐색하고, 탐색된 샘플을 근거로 상기 뷰 오브젝트를 구성할 수 있다.
상기 기저장된 오브젝트 샘플은, 상기 시나리오 작성기(100)에서 기사용된 뷰 오브젝트, 사용자로부터 설정 입력되어 기저장된 뷰 오브젝트, 또는 상기 뷰 오브젝트를 구성하는 하나 이상의 구성요소의 샘플을 의미할 수 있다.
상기 처리부(120)는, 상기 뷰 모델 데이터를 분석하고, 분석 결과에 따라 상기 뷰 모델 데이터에 대응하는 샘플을 제작하여, 제작된 샘플을 근거로 상기 뷰 오브젝트를 구성할 수 있다.
상기 처리부(120)는, 상기 뷰 모델 데이터를 분석하고, 분석 결과에 따라 기저장된 오브젝트 샘플 중 상기 뷰 모델 데이터에 대응하는 샘플을 탐색하거나, 또는 상기 뷰 모델 데이터에 대응하는 샘플을 제작하되, 하나 이상의 탐색된 샘플 또는 제작된 샘플을 조합하여 상기 뷰 오브젝트를 구성할 수 있다.
상술한 바와 같은 구성을 포함하는 상기 시나리오 작성기(100)의 시나리오 작성 과정은, 도 4에 도시된 바와 같을 수 있다.
상기 시나리오 작성기(100)의 시나리오 작성 과정은, 도 4에 도시된 바와 같이, 데이터 모델 변환 단계(S10), 뷰 모델의 비즈니스 로직 구현 단계(S20) 및 뷰 바인더에서 사용할 뷰 제작 단계(S30)를 포함할 수 있다.
상기 데이터 모델 변환 단계(S10)는, 상기 데이터 변환부(110)가 상기 시나리오 데이터에서 상기 속성 데이터를 선별하여 상기 뷰 모델 데이터로 변환한다.
상기 뷰 모델의 비즈니스 로직 구현 단계(S20)는, 상기 처리부(120)가 상기 뷰 모델 데이터를 기설정된 알고리즘인 상기 비즈니스 로직에 적용하여 상기 뷰 모델 데이터를 상기 뷰 오브젝트에 반영 가능한 형태로 완성한다.
상기 뷰 바인더에서 사용할 뷰 제작 단계(S30)는, 상기 처리부(120)가 상기 뷰 모델 데이터에 대응하는 뷰 오브젝트를 구성하고, 상기 뷰 오브젝트와 상기 뷰 모델 데이터를 바인딩하여 시나리오 작성 개체인 전시 뷰를 제작한다.
상술한 바와 같은 구성 및 과정으로 시나리오를 작성하는 상기 시나리오 작성기(100)에 MVVM 패턴 개념을 적용한 구체적인 일 예를 설명하면 다음과 같다.
상기 시나리오 작성기(100)에서 상기 데이터 변환부(110)는 모델(시나리오 데이터)에서 사용자가 선별한 속성(선별 정보)들, 즉 전시 대상에 해당하는 속성 데이터를 선별하여 뷰 모델(뷰 모델 데이터)을 정의(변환)하고, 상기 처리부(120)는 정의된 뷰 모델을 전시하기 위한 UI(뷰 오브젝트-전시 뷰)를 기저장된 오브젝트 샘플, 또는 제작된 오브젝트 샘플들의 조합을 통해 제작한다. 모델의 간소화는 모델의 데이터들 중 사용자가 관심을 가지는 데이터들을 선별하여 뷰 모델을 제작함으로써 이루어지며, 이러한 제작 과정은 뷰 모델 데이터들과 대응되는 모델의 데이터들이 모델의 데이터들의 하위 집합이 되는 구조를 가진다. 도 5는 모델과 뷰 모델 사이의 관계 특징을 나타낸 도면으로, 뷰 모델의 속성들은 모델의 속성들의 하위 집합이 됨을 의미한다. 도 5에 도시된 바와 같이, 모델(10)에는 ScenarioID, Environment, Option 속성 등이 있으며, 뷰 모델(20)에는 ScenarioID, Environment, Forceside 속성 등이 있다. 뷰 모델(20)의 각 속성들과 매칭되는 모델(10)의 속성들은 모델(10)이 보유한 속성들의 하위 집합임을 나타낸다.
뷰(30)의 제작은 상기 처리부(120)에서 복합 뷰와 사용자 정의 뷰(기저장된 오브젝트 샘플)의 조합을 통해 이루어진다. 도 6은 뷰의 구성요소의 일 예를 나타낸 도면으로, 뷰(30)는 크게 복합 리스트 뷰와 복합 뷰로 구분되며, 복합 리스트 뷰는 컬렉션 타입의 뷰 모델(20)을 전시하기 위한 뷰일 수 있으며, Dictionary, List, Colleciton 속성 등을 상속받은 뷰 모델(20)이 컬렉션 타입의 뷰 모델(20)에 속한다. 복합 리스트 뷰는 복합 뷰들로 구성되어 있으며, 복합 뷰는 객체 타입의 뷰 모델을 전시하기 위한 뷰일 수 있다. 도 2를 예시로 들면, ScenarioIDView, optionView 속성 등이 이에 해당한다. 복합 뷰는 복합 뷰들과 원시 뷰들로 이루어져 있다. 원시 뷰는 객체 또는 기본 데이터 타입의 뷰모델을 전시하기 위한 뷰들을 의미할 수 있다. 예를 들면, DateTime, Enum, GDC, Text, Configuration 속성 등을 전시하기 위한 뷰들로써, 도 2에선 nameView, typeView 속성 등이 이에 속한다. 원시 뷰는 복합 뷰를 제작하는데 있어 기본적인 단위가 될 수 있다.
구체적인 뷰 제작 과정은 도 7에 도시된 바와 같은 과정으로 이루어질 수 있다. 제작 과정은 상술한 바와 같이 모델을 간소화하여 뷰 모델의 속성들을 선별하는 데이터 모델 변환 단계(S10), 뷰 모델의 비즈니스 로직 단계(S20) 및 뷰 바인더에서 사용할 뷰의 제작 단계(S30)로 구분되며, 상세 과정은 아래와 같다.
a) 모델(시나리오 데이터)로부터 시나리오 제작 과정에서 사용할 속성 데이터들을 선별하여 뷰 모델 데이터로 변환
b) 비즈니스 로직을 뷰 모델 데이터에 구현하여 뷰 모델 데이터를 완성
c) 완성된 뷰모델 데이터에 대응하는 뷰 오브젝트가 있는지 확인
<있을 경우 e)로, 없을 경우 d)로>
d) 복합 뷰 또는 원시 뷰를 제작
d-1) 이미 존재하는 복합 뷰를 재사용할 경우, 뷰 모델 데이터를 해당 복합 뷰의 타깃으로 설정, <다시 c)로>
d-2) 특수한 배치를 요구하거나, 원시적인 데이터를 전시하는 등 뷰의 제작이 요구될 경우, 원시 뷰를 제작
e) 뷰 모델 데이터에 대응하는 뷰 오브젝트 구성
위의 과정을 통해 제작된 뷰 모델 데이터와 뷰 오브젝트는 도 8과 같은 과정을 통해 동적으로 전시 뷰를 자동 제작한다.
1) 전시할 뷰 모델 데이터 입력
2) 전시할 뷰 모델 데이터의 타입 분석
3) 분석된 타입을 전시하기 위한 뷰를 탐색하고, 탐색된 뷰들을 조합
4) 뷰 모델 데이터의 모든 항목들이 원시 뷰의 조합들로 전시되는지 확인
5) 원시 뷰의 조합들로 전시되지 않는 항목의 타입을 가지고 c)단계로
6) 전시 뷰 제작
상기 모델(시나리오 데이터), 뷰 모델(뷰 모델 데이터) 및 뷰(뷰 오브젝트-전시 뷰)의 구체적인 MSDL 구조 예시를 들어 상술한 바와 같은 제작 과정의 예시를 설명하면 다음과 같다.
도 9에 도시된 예시는 MSDL의 ScenarioID를 나타내는 ModelIdentification 에 대한 뷰 모델과 뷰의 제작 과정이다. 도 9에 도시된 바와 같이, MSDL의 시나리오 ID는 시나리오의 이름, 타입, 버전, 수정일, 보안 분류, 배포 제한 등의 속성값들을 가진다. 본 예시에서는 시나리오의 이름, 버전, 수정일, 설명 만을 선별하여 ModelIdentification 뷰 모델을 제작하는 예시를 든다(a,b). ModelIdentification 뷰 모델은 새로 제작되었기 때문에 이를 전시할 뷰가 없으며(c), ExtensibleDataTypePairView를 통해 전시되도록 ExtensibleDataTypePairView의 타깃에 ModelIdentification 뷰 모델을 추가한다(d-1). ExtensibleDataTypePairView는 속성값들에 해당하는 뷰 들의 단순 나열이다. 다시 말하면, ExtensibleDataTypePairView가 ModelIdentification을 전시하기 위해선 Identifier, NonEmptyString, ModificationDate 타입들을 전시하기 위한 뷰가 필요하다. 도 8을 보면, NonEmptyString은 TextValueEditorView에 의해 전시는 항목이며, Identifier와 ModificationDate는 추가한 항목들이다(c). Identifier는 TextValueEditorView를 재사용하여 전시되도록 추가하였으며(d-1), ModificationDate는 이를 전시하기 위한 ModificationTimeView를 새로 제작 함으로써(d-2) ModelIdentifier를 전시하기 위한 뷰 모델과 뷰의 제작이 완료될 수 있게 된다(e).
다음 예시는 ModelIdentification에 대한 뷰의 조립 과정으로, 도 9와 도 10을 참조하여 설명한다. 본 예시는 ModelIdentification이 Input으로 들어온 경우이며(1), 이 뷰 모델의 타입은 DataModel.ModelIdentification이다(2). DataModel.ModelIdentification을 전시하기 위한 뷰를 탐색하여 ExtensibleDataTypePairView를 찾아낸다(3). ExtensibleDataTypePairView의 내용은 모두 복합 뷰로 구성되어 있기 때문에(4) 앞의 단계로 돌아가서(5) ModelIdentification의 항목들을 전시하기 위해 Identifier, NonEmptyString, ModificationDate 타입들에 대한 뷰를 탐색한다(6). 각 타입들에 대한 뷰는 TextValueEditorView, TextValueEditorView, ModificationTimeView 사용자 정의 뷰(원시 뷰)임을 찾을 수 있으며(c), ModelIdentification의 항목들을 모두 사용자 정의 뷰들로 전시하였기 때문에 제작이 완료될 수 있게 된다(f).
상술한 바와 같은 시나리오 작성 과정은, 상기 시나리오 작성기(100)의 시나리오 작성 알고리즘, 로직, 또는 프로그램, 애플리케이션 및 이를 비롯한 소프트웨어 등의 형태로 적용되어 실시될 수 있다.
이상에서 설명한 본 발명의 바람직한 실시 예들은 기술적 과제를 해결하기 위해 개시된 것으로, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자(당업자)라면 본 발명의 사상 및 범위 안에서 다양한 수정, 변경, 부가 등이 가능할 것이며, 이러한 수정 등은 이하의 특허청구범위에 속하는 것으로 보아야 할 것이다.
10: 모델(시나리오 데이터)
20: 뷰 모델(뷰 모델 데이터)
30: 뷰(뷰 오브젝트-전시 뷰)
100: 시나리오 작성기
110: 데이터 변환부 120: 처리부

Claims (9)

  1. 작성 대상에 해당하는 시나리오 데이터에서 전시 대상에 해당하는 속성 데이터를 선별하여 뷰 모델 데이터로 변환하는 데이터 변환부; 및
    상기 뷰 모델 데이터를 근거로 상기 뷰 모델 데이터에 대응하는 뷰 오브젝트를 구성하고, 상기 뷰 오브젝트와 상기 뷰 모델 데이터를 바인딩하여 시나리오 작성 개체인 전시 뷰를 제작하는 처리부;를 포함하고,
    상기 처리부는,
    상기 뷰 모델 데이터를 분석하고, 분석 결과에 따라 기저장된 오브젝트 샘플 중 상기 뷰 모델 데이터에 대응하는 샘플을 탐색하고, 탐색된 샘플을 근거로 상기 뷰 오브젝트를 구성하는 것을 특징으로 하는 시나리오 작성기.
  2. 제1항에 있어서,
    상기 데이터 변환부는,
    외부로부터 상기 속성 데이터의 선별에 대한 선별 정보를 입력받아, 상기 선별 정보를 근거로 상기 시나리오 데이터에서 상기 속성 데이터를 선별하는 것을 특징으로 하는 시나리오 작성기.
  3. 제1항에 있어서,
    상기 처리부는,
    상기 뷰 모델 데이터를 기설정된 알고리즘에 적용하여 상기 뷰 모델 데이터를 상기 뷰 오브젝트에 반영 가능한 형태로 완성하는 것을 특징으로 하는 시나리오 작성기.
  4. 삭제
  5. 제1항에 있어서,
    상기 처리부는,
    상기 뷰 모델 데이터를 분석하고, 분석 결과에 따라 상기 뷰 모델 데이터에 대응하는 샘플을 제작하여, 하나 이상의 상기 탐색된 샘플 또는 상기 제작된 샘플을 조합하여 상기 뷰 오브젝트를 구성하는 것을 특징으로 하는 시나리오 작성기.
  6. 작성 대상에 해당하는 시나리오 데이터에서 전시 대상에 해당하는 속성 데이터를 선별하여 뷰 모델 데이터로 변환하는 데이터 변환부; 및
    상기 뷰 모델 데이터를 근거로 상기 뷰 모델 데이터에 대응하는 뷰 오브젝트를 구성하고, 상기 뷰 오브젝트와 상기 뷰 모델 데이터를 바인딩하여 시나리오 작성 개체인 전시 뷰를 제작하는 처리부;를 포함하고,
    상기 처리부는,
    상기 뷰 모델 데이터를 분석하고, 분석 결과에 따라 상기 뷰 모델 데이터에 대응하는 샘플을 제작하여, 제작된 샘플을 근거로 상기 뷰 오브젝트를 구성하는 것을 특징으로 하는 시나리오 작성기.
  7. 제6항에 있어서,
    상기 데이터 변환부는,
    외부로부터 상기 속성 데이터의 선별에 대한 선별 정보를 입력받아, 상기 선별 정보를 근거로 상기 시나리오 데이터에서 상기 속성 데이터를 선별하는 것을 특징으로 하는 시나리오 작성기.
  8. 제6항에 있어서,
    상기 처리부는,
    상기 뷰 모델 데이터를 기설정된 알고리즘에 적용하여 상기 뷰 모델 데이터를 상기 뷰 오브젝트에 반영 가능한 형태로 완성하는 것을 특징으로 하는 시나리오 작성기.
  9. 제6항에 있어서,
    상기 처리부는,
    상기 뷰 모델 데이터를 분석하고, 분석 결과에 따라 기저장된 오브젝트 샘플 중 상기 뷰 모델 데이터에 대응하는 샘플을 탐색하고, 하나 이상의 상기 탐색된 샘플 또는 상기 제작된 샘플을 조합하여 상기 뷰 오브젝트를 구성하는 것을 특징으로 하는 시나리오 작성기.
KR1020160146798A 2016-11-04 2016-11-04 시나리오 작성기 및 시나리오 작성방법 KR101872197B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160146798A KR101872197B1 (ko) 2016-11-04 2016-11-04 시나리오 작성기 및 시나리오 작성방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160146798A KR101872197B1 (ko) 2016-11-04 2016-11-04 시나리오 작성기 및 시나리오 작성방법

Publications (2)

Publication Number Publication Date
KR20180050075A KR20180050075A (ko) 2018-05-14
KR101872197B1 true KR101872197B1 (ko) 2018-06-28

Family

ID=62187771

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160146798A KR101872197B1 (ko) 2016-11-04 2016-11-04 시나리오 작성기 및 시나리오 작성방법

Country Status (1)

Country Link
KR (1) KR101872197B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102652355B1 (ko) * 2023-11-22 2024-03-28 주식회사 더만타스토리 시나리오 텍스트 콘텐츠의 분석 결과를 기초로 새로운 시나리오 텍스트 콘텐츠를 생성하는 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004157950A (ja) * 2002-11-03 2004-06-03 Yoshihide Nakabachi シナリオ分析によるオブジェクトモデルの構築方法及び支援装置
JP2006268764A (ja) * 2005-03-25 2006-10-05 Nec Corp モデル編集システム、モデル編集装置、モデル編集方法及びモデル編集プログラム
JP2006287306A (ja) * 2005-03-31 2006-10-19 Matsushita Electric Ind Co Ltd シナリオデータ変換装置、シナリオデータ変換方法、及びシナリオデータ変換プログラムを記録した記録媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004157950A (ja) * 2002-11-03 2004-06-03 Yoshihide Nakabachi シナリオ分析によるオブジェクトモデルの構築方法及び支援装置
JP2006268764A (ja) * 2005-03-25 2006-10-05 Nec Corp モデル編集システム、モデル編集装置、モデル編集方法及びモデル編集プログラム
JP2006287306A (ja) * 2005-03-31 2006-10-19 Matsushita Electric Ind Co Ltd シナリオデータ変換装置、シナリオデータ変換方法、及びシナリオデータ変換プログラムを記録した記録媒体

Also Published As

Publication number Publication date
KR20180050075A (ko) 2018-05-14

Similar Documents

Publication Publication Date Title
JP5350428B2 (ja) 自動プログラム生成装置、方法及びコンピュータプログラム
Ghose et al. Process discovery from model and text artefacts
US20140164895A1 (en) Systems and methods for managing spreadsheet models
CN105528418B (zh) 一种设计文档生成方法及装置
US20100095269A1 (en) Faceted, tag-based approach for the design and composition of components and applications in component-based systems
Ramaji et al. Interpreted information exchange: Systematic approach for BIM to engineering analysis information transformations
CN106709985B (zh) 一种虚拟祭祀三维场景的生成方法及装置
US20110196898A1 (en) Database management program and database management apparatus
Haskins 4.6. 1 A historical perspective of MBSE with a view to the future
Robinson et al. Demonstrating model-based systems engineering for specifying complex capability
Cleary et al. Workspace: A workflow platform for supporting development and deployment of modelling and simulation
CN112825038B (zh) 基于通用组件语言规范的可视化页面制作方法和相关产品
Weaver et al. Rapid application development with Openstudio
Steel et al. A transformation workbench for building information models
KR101872197B1 (ko) 시나리오 작성기 및 시나리오 작성방법
US8555240B2 (en) Describing formal end-user requirements in information processing systems using a faceted, tag-based model
JP2006277282A (ja) モデル評価解析システムおよびモデル評価解析プログラム
CN113506099A (zh) 申报业务的配置系统、方法、计算机设备和存储介质
KR101995108B1 (ko) 소프트웨어 제품 라인에서 관심 뷰를 제공하는 합성적 피처 모델링 방법 및 시스템
Hertiš et al. Ideas on improving the Business-IT alignment in BPM enabled by SOA
US20200409672A1 (en) Constraint based authoring
CN112131635A (zh) 一种将bim数据集成到制造运营管理系统的方法
Barlas et al. Test implementation and initialisation of a simulation model using CMSD
Diaz et al. A collaborative approach to complex systems engineering using a web-based visual analytics framework
Williams et al. The flexible Climate Data Analysis Tools (CDAT) for multi-model climate simulation data

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right