KR102015980B1 - 전후처리기 연계를 위한 계산과학공학 플랫폼 시뮬레이션 시스템 및 방법 - Google Patents

전후처리기 연계를 위한 계산과학공학 플랫폼 시뮬레이션 시스템 및 방법 Download PDF

Info

Publication number
KR102015980B1
KR102015980B1 KR1020180139865A KR20180139865A KR102015980B1 KR 102015980 B1 KR102015980 B1 KR 102015980B1 KR 1020180139865 A KR1020180139865 A KR 1020180139865A KR 20180139865 A KR20180139865 A KR 20180139865A KR 102015980 B1 KR102015980 B1 KR 102015980B1
Authority
KR
South Korea
Prior art keywords
preprocessor
data
simulation
processor
science
Prior art date
Application number
KR1020180139865A
Other languages
English (en)
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 KR1020180139865A priority Critical patent/KR102015980B1/ko
Application granted granted Critical
Publication of KR102015980B1 publication Critical patent/KR102015980B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F17/5009

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명의 일 측면에 따르면, 사이언스 앱을 통해 시뮬레이션 인터페이스를 제공하는 웹 기반의 시뮬레이션 시스템으로서, 전처리기 및 후처리기 중 적어도 하나의 개발을 위한 라이브러리를 제공하는 라이브러리 제공부; 상기 플랫폼이 제공한 상기 라이브러리에 기반하여 개발된 상기 전처리기 및 상기 후처리기 중 적어도 하나를 플랫폼에 등록하는 전후처리기 등록부; 및 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나를 상기 사이언스 앱과 매칭시키고 사용자 시뮬레이션 환경에 반영하는 전후처리기 반영부;를 포함하는 시뮬레이션 시스템이 개시된다.

Description

전후처리기 연계를 위한 계산과학공학 플랫폼 시뮬레이션 시스템 및 방법{computational science and engineering platform simulation method and system for connecting pre-processing unit and post-processing unit thereto}
본 발명은 계산과학공학플랫폼(Computational Science and Engineering Platform)에 기반한 시뮬레이션 시스템 및 시뮬레이션 방법에 관한 기술로서, 보다 상세하게는 웹 기반 계산과학공학 플랫폼에서 시뮬레이션을 실행하는 데 있어 전처리기 및 후처리기의 연동을 통한 시뮬레이션 환경을 제공하는 시스템 및 방법에 관한 것이다.
EDISON(EDucation-research Integration through Simulation On the Net)은 계산과학공학의 소프트웨어를 클라우드 컴퓨팅을 이용하여 웹 서비스로 제공하는 웹 포털 시스템이다. 현재 EDISON에서는 전산열유체, 계산화학, 전산설계, 전파위성, 나노물리, 구조동역학, 전산의학, 도시환경의 8개 분야의 계산과학공학 분야를 서비스 하고 있으며, 계산 시뮬레이션 실행 및 결과 분석 서비스를 제공하고 있다. EDISON에서는 전문 분야의 해석 시뮬레이션 소프트웨어를 플랫폼에 탑재하고 계산과학공학 해석 시뮬레이션 모델을 클라우드 서비스를 통해 대용량, 고성능 인프라를 사용자에게 제공한다.
일반적으로 계산과학공학 소프트웨어는 상용화된 소프트웨어가 많으나, 일반 사용자나 학생, 계산과학공학을 전공으로 하는 전문가들이 해석 시뮬레이션을 수행하기에 어려움이 많다. 따라서 EDISON 웹 포털에서는 사용자에게 보다 쉽게 계산과학공학 소프트웨어를 사용하고, 다양한 분야에 활용할 수 있도록 개방된 플랫폼으로 제공하고 있으며, 전문 분야에서 활용 할 수 있도록 지원하고 있다.
그 동안 EDISON 플랫폼에서는 8개의 전문 분야의 서비스를 진행하면서 사용자 친화적인 시뮬레이션 환경을 제공하기 위해 노력해 왔다. 또한 전문 분야의 특성에 따라 사용자의 요구사항 및 시뮬레이션 환경의 다양성 등 시뮬레이션 환경에 변화를 주기 위해 시스템을 새로 구축하거나 미들웨어 단의 서비스 API 수정 등 사용자 요구를 시스템에 반영하였다. 그럼에도 불구하고 기존의 계산과학공학 분야의 다양한 소프트웨어를 EDISON 웹 포털에서 포괄적으로 사용자에게 제공하고 다양한 서비스 분야를 만족시키기에는 부족한 실정이다.
특히, 전문 분야에 따라 사용자에게 제공되어야 하는 소프트웨어의 형태, 결과 분석 가시화 도구 등의 차별화가 요구되며, 또한 전체적인 EDISON 플랫폼으로서의 보편성을 갖는 시스템 구조가 필요하다. 다양한 전후처리기를 등록하고 계산과학공학 시뮬레이션 환경에 적용하기 위해서는 전후처리기 개발 모듈과 시뮬레이션이 동작하기 위한 모듈이 분리되어 제공되어야 한다. 또한 기존의 계산과학공학 시뮬레이션을 제공하는 시스템과는 분리되어 사용자에게 다양한 계산 환경을 제공해 주어야 한다.
기존 계산과학공학 플랫폼에서는 시뮬레이션을 수행하는 환경을 제공하는데 한계가 있었으며, 다양한 전후처리기 과정을 반영하지 못하고 한정적인 사용자 환경을 제공해왔다. 계산과학공학 각 전문 분야별로 필요한 전후처리 과정이 다양했지만 전체 플랫폼상에서는 일률적인 서비스를 제공할 수 밖에 없다는 한계가 있었다.
본 발명은, 상기와 같은 기술적 요구로부터 창안된 것으로서, 웹 서비스 모듈화 및 사용자 분리 서비스를 통해 개선된 다양한 시뮬레이션 환경을 제공하기 위한 것을 일 목적으로 한다.
또한, 본 발명은 계산과학공학 플랫폼에서 시뮬레이션을 실행하기 위한 전처리기 및 후처리기를 개발하여 등록하고 시뮬레이션 환경에 반영하여 사용자에게 서비스하는 전체 서비스 절차를 포함함으로써, 사용자에게 실시간으로 변경되는 시뮬레이션 전후처리 환경을 제공하는 것을 일 목적으로 한다.
본 발명은 계산과학공학 플랫폼에서 시뮬레이션을 실행하는 데 있어 전처리기 및 후처리기의 연동을 통한 시뮬레이션 환경을 제공하는 시스템 및 방법을 개시한다.
또한 본 발명은 계산과학공학 플랫폼에서 시뮬레이션을 실행하기 위한 전처리기 및 후처리기를 개발하여 등록하고 시뮬레이션 환경에 반영하여 사용자에게 서비스하는 전체 서비스 절차를 포함하여, 사용자에게 실시간으로 변경되는 시뮬레이션 전후처리 환경을 제공하는 시스템 및 방법을 개시한다.
본 발명의 일 측면에 따르면, 다음과 같은 시뮬레이션 시스템이 개시된다.
(1) 시뮬레이션 시스템은, 사이언스 앱을 통해 시뮬레이션 인터페이스를 제공하는 웹 기반의 시뮬레이션 시스템으로서, 전처리기 및 후처리기 중 적어도 하나의 개발을 위한 라이브러리를 제공하는 라이브러리 제공부; 상기 플랫폼이 제공한 상기 라이브러리에 기반하여 개발된 상기 전처리기 및 상기 후처리기 중 적어도 하나를 플랫폼에 등록하는 전후처리기 등록부; 및 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나를 상기 사이언스 앱과 매칭시키고 사용자 시뮬레이션 환경에 반영하는 전후처리기 반영부;를 포함할 수 있다.
(2) (1)에 따른 시뮬레이션 시스템에 있어서, 전후처리기 등록부는 필수적으로 요구되는 전후처리기 등록 정보가 등록된 경우 전후처리기 실행 환경 정보를 등록할 수 있다.
(3) (2)에 따른 시뮬레이션 시스템에 있어서, 전후처리기 등록부는 상기 전후처리기 실행 환경 정보를 바탕으로 시뮬레이션이 정상적으로 동작하는지 판단하는 시뮬레이션 실행 테스트, 또는 시뮬레이션의 실행 환경에서 상기 전처리기 및 상기 후처리기 중 적어도 하나가 실제로 동작하는지 판단하는 실행 환경 테스트를 통해 상기 전처리기 및 상기 후처리기 중 적어도 하나의 유효성을 테스트할 수 있다.
(4) (1) 내지 (3) 중 어느 하나에 따른 시뮬레이션 시스템에 있어서, 상기 전후처리기 반영부는, 정의된 데이터 타입을 매개로 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나를 상기 사이언스 앱과 매칭시킬 수 있다.
(5) (4)에 따른 시뮬레이션 시스템에 있어서, 상기 데이터 타입은 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나 이상과 연동될 수 있다.
본 발명의 다른 측면에 따르면 다음과 같은 전후처리기 연계 방법이 개시된다.
(6) 전후처리기 연계 방법은, 웹 기반 시뮬레이션 플랫폼에서 제공되는 사이언스 앱에 전처리기 및 후처리기 중 적어도 하나를 연계하는 방법으로서, 전처리기 및 후처리기 중 적어도 하나의 개발을 위한 라이브러리를 제공하는 단계; 상기 라이브러리에 기반하여 개발된 상기 전처리기 및 상기 후처리기 중 적어도 하나를 상기 플랫폼에 등록하는 단계; 및 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나를 상기 사이언스 앱과 매칭시키고 사용자 시뮬레이션 환경에 반영하는 단계;를 포함할 수 있다.
(7) (6)에 따른 전후처리기 연계 방법에 있어서, 상기 등록하는 단계는 필수적으로 요구되는 전후처리기 등록 정보가 등록된 경우 전후처리기 실행 환경 정보를 등록할 수 있다.
(8) (7)에 따른 전후처리기 연계 방법에 있어서, 상기 등록하는 단계는 상기 전후처리기 실행 환경 정보를 바탕으로 시뮬레이션이 정상적으로 동작하는지 판단하는 시뮬레이션 실행 테스트, 또는 시뮬레이션의 실행 환경에서 상기 전처리기 및 상기 후처리기 중 적어도 하나가 실제로 동작하는지 판단하는 실행 환경 테스트를 통해 상기 전처리기 및 상기 후처리기 중 적어도 하나의 유효성을 테스트하는 단계를 더 포함할 수 있다.
(9) (6) 내지 (8) 중 어느 하나에 따른 전후처리기 연계 방법에 있어서, 상기 반영하는 단계는, 정의된 데이터 타입을 매개로 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나를 상기 사이언스 앱과 매칭시킬 수 있다.
(10) (9)에 따른 전후처리기 연계 방법에 있어서, 상기 데이터 타입은 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나 이상과 연동될 수 있다.
본 발명의 일 측면에 따르면, 웹 서비스 모듈화 및 사용자 분리 서비스를 통해 개선된 다양한 시뮬레이션 환경을 제공할 수 있다.
또한, 본 발명의 일 측면에 따르면, 계산과학공학 플랫폼에서 시뮬레이션을 실행하기 위한 전처리기 및 후처리기를 개발하여 등록하고 시뮬레이션 환경에 반영하여 사용자에게 서비스하는 전체 서비스 절차를 포함함으로써, 사용자에게 실시간으로 변경되는 시뮬레이션 전후처리 환경을 제공할 수 있다.
도 1은 전후처리기 연계를 위한 계산과학공학 워크벤치 시뮬레이션 시스템을 나타낸 도면이다.
도 2는 전후처리기 개발 및 시뮬레이션 연동 프로세스를 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 데이터 로딩부를 나타낸 도면이다.
도 4는 전후처리기를 계산과학공학 플랫폼에 등록하고 실시간으로 시뮬레이션 워크벤치에 반영하여 사용자에게 제공하는 프로세스를 나타낸 도면이다.
도 5는 워크벤치 레이아웃 환경 설정 및 테스트 프로세스를 나타낸 도면이다.
도 6은 실제 구축되어 있는 계산과학공학 시뮬레이션 시스템에서 사이언스 앱 개발자가 입출력 포트 정보를 수정하고, 해당 입출력 포트의 레이아웃을 성정하고, 테스트를 진행하면 워크벤치 시뮬레이션 시스템에 적용되는 실제 서비스 화면을 나타낸 것이다.
도 7은 본 발명의 일 실시예에 따른 시뮬레이션 시스템의 구성도이다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 설명하기 위하여 이하에서는 본 발명의 바람직한 실시예를 예시하고 이를 참조하여 살펴본다.
먼저, 본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니며, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 또한 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명은 계산과학공학 플랫폼에서 시뮬레이션을 실행하는 데 있어서 전처리기 및 후처리기의 연동을 통한 시뮬레이션 환경을 제공하는 시스템 및 방법에 관한 것이다. 본 발명은 계산과학공학 플랫폼에서 시뮬레이션을 실행하기 위한 전처리기 및 후처리기를 개발하여 등록하고 시뮬레이션 환경에 반영하여 사용자에게 서비스하는 전체 서비스 절차를 포함하며, 사용자에게 실시간으로 변경되는 시뮬레이션 전후처리 환경을 제공하는데 목적이 있다.
도 1은 전후처리기 연계를 위한 계산과학공학 워크벤치 시뮬레이션 시스템을 나타낸 도면이다.
도 1은 사용자 전후처리기 연계를 위한 계산과학공학 워크벤치 커뮤니케이션 구성 시스템(100)을 도식화한 도면으로서, 웹 포털 서비스를 구성함에 있어 하나의 시뮬레이션 서비스를 구성하는 다양한 모듈간의 커뮤니케이션을 통해 워크벤치 서비스를 제공하기 위해 고안된 시스템 구성도이다. 워크벤치라는 전체 웹 기반 서비스를 제공하기 위해, 다양한 개발자가 개발한 모듈들을 플랫폼(EDISON 플랫폼)에 플러그인처럼 넣고 뺄 수 있는 커뮤니케이션 모듈이 고안되었다. 서버와 커뮤니케이션을 하는 데이터 전송 모듈을 제공하여 각 모듈간에 독립적이고 또한 워크벤치와는 지속적인 커뮤니케이션이 가능하도록 라이브러리를 제공함으로써, 플랫폼 개발자가 제공하기 어려운 다양한 전문분야의 전후처리기 연계를 위한 서비스를 제공할 수 있다.
전처리기 개발자는 데이터를 가시화하기 위한 가시화 모듈을 개발하고 테스트하며, 또한 데이터를 편집 및 최적화 시킬 수 있는 모듈을 개발하고 테스트하는 과정을 배포된 서비스를 이용하여 플랫폼에서 테스트 할 수 있다. 또한 개발된 모듈을 시스템에 등록하는 과정을 거치면서 내부적인 서비스 조합을 통해 하나의 시뮬레이션을 실행하기 위한 워크벤치의 전처리기로서 동작이 가능하다.
후처리기 개발자는 시뮬레이션의 결과 데이터를 입력 데이터로 인식하여 결과를 가시화하고 다양한 시뮬레이션 결과 분석을 위한 데이터 가시화 모듈을 개발하는 개발자로서, 기본적인 동작 방식은 시뮬레이션 전처리기 개발하는 방법과 유사하다. 전처리기 개발자의 개발 방법 및 전처리기와 후처리기 개발자의 개발 방법 및 후처리기의 차이는, 후처리기의 경우 사용자가 데이터를 편집할 수 없으며, 후처리기는 결과 분석에 최적화 되어 있는 모듈이라는 것이다. 후처리기 개발자도 전처리기 개발자와 동일하게 시뮬레이션의 결과 데이터 가시화 과정을 거치면서 사용자의 시뮬레이션 결과 분석을 보조하는 모듈을 개발하고 테스트 할 수 있다. 또한 해당 모듈을 플랫폼 서비스에 등록함으로써 워크벤치에 자동으로 반영되어 일반 사용자가 아무런 개발 지식이나 배경 지식 없이 시뮬레이션 결과 가시화 및 분석을 할 수 있도록 워크벤치 기반 시뮬레이션 서비스를 제공 받을 수 있다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 시뮬레이션 시스템(100)은, 전처리기 개발부(200), 후처리기 개발부(400) 및 플랫폼(600)을 포함할 수 있다.
상기 플랫폼(600)은 워크벤치를 제공할 수 있다. 상기 워크벤치는 개발된 전처리기 및 후처리기가 적용된 워크벤치 일 수 있다. 또한 상기 워크벤치에는 개발자에 의해 개발된 전처리기 및 후처리기가 실시간으로 등록되어 적용될 수 있다.
상기 플랫폼(600)은 사이언스 앱(application)을 제공할 수 있다. 상기 사이언스 앱은 계산과학공학 시뮬레이션을 제공하는 앱으로서, 사이언스 앱 개발자에 의해 개발된 사이언스 앱은 플랫폼에 등록되어 사용자가 웹 포털을 통해 이용할 수 있다. 이러한 사이언스 앱은 전술한 전처리기 및/또는 후처리기와 연동될 수 있다.
상기 플랫폼(600)은 전처리기 및 후처리기의 개발 및 테스트를 위한 라이브러리를 제공할 수 있다. 전처리기 및 후처리기의 개발 및 테스트를 위한 라이브러리의 예로는 오픈 플랫폼 라이브러리 및 오픈 플랫폼 서비스 라이브러리가 있을 수 있다. 구체적으로, 상기 플랫폼은 전처리기 및 후처리기의 개발 및 테스트를 위한 라이브러리를 제공하기 위한 라이브러리 제공부를 포함할 수 있다.
상기 전처리기 개발부(200)는 상기 플랫폼(600)으로부터 라이브러리를 제공받고, 제공받은 라이브러리를 기반으로 전처리기(pre-processing unit)를 생성할 수 있다. 한편, 전처리기 개발부(200)의 전처리기 개발 과정의 일부는 전처리기 개발자에 의해 수행될 수 있다. 전처리기 개발자는 플랫폼(600)으로부터 배포된 라이브러리를 기반으로, 전처리기를 개발할 수 있다. 또한, 전처리기 개발자는 개발된 전처리기를 플랫폼(600)을 통해 배포된 라이브러리를 이용하여 테스트할 수 있다. 또한 전처리기를 시스템에 등록하는 과정을 거치면, 상기 전처리기는 시스템 내 내부적인 서비스 조합을 통해 하나의 시뮬레이션을 실행하기 위한 워크벤치 서비스의 전처리 모듈로 동작할 수 있다.
상기 후처리기 개발부(400)는 플랫폼(600)으로부터 라이브러리를 제공받고, 제공받은 라이브러리를 기반으로 후처리기(post-processing unit)를 생성할 수 있다. 한편, 후처리기 개발부(400)의 후처리기 개발 과정의 일부는 후처리기 개발자에 의해 수행될 수 있다. 후처리기 개발자는 플랫폼(600)으로부터 배포된 라이브러리를 기반으로, 후처리기를 개발할 수 있다. 또한, 후처리기 개발자는 개발된 후처리기를 플랫폼(600)을 통해 배포된 라이브러리를 이용하여 테스트할 수 있다. 또한 후처리기를 시스템에 등록하는 과정을 거치면, 상기 후처리기는 시스템 내 내부적인 서비스 조합을 통해 하나의 시뮬레이션을 실행하기 위한 워크벤치 서비스의 후처리 모듈로 동작할 수 있다.
또한 상기 전처리기 및/또는 후처리기는 플랫폼에 등록됨으로써 워크벤치 서비스에 자동으로 반영되므로, 일반 사용자는 아무런 개발 지식이나 배경 지식 없이, 데이터 편집, 시뮬레이션 결과 가시화 및 분석을 할 수 있도록 하는 워크벤치 기반 시뮬레이션 서비스를 제공받을 수 있다.
한편, 전술한 전처리기 개발부(400) 와 후처리기 개발부(600)는 전후처리기 개발부로 통합될 수 있으며, 전후처리기를 플랫폼에 등록한다는 점에서 전후처리기 등록부로 지칭될 수 있다.
도 2는 전후처리기 개발 및 시뮬레이션 연동 프로세스를 도시한 도면이다.
도 2를 참조하면, 전후처리기 개발자가 플랫폼에 탑재하기 위한 시뮬레이션 전후처리기를 개발하고 테스트하는 프로세스가 도시되어 있다. 도 2에 도시된 바와 같이, 프론트 엔드는 전후처리기 개발자가 프로그램 인터페이스를 통해 전후처리기를 개발하는 작업공간을 제공하고, 백 엔드는 전후처리기 개발에 필요한 서비스 제공 및 개발된 전후처리기를 사이언스 앱과 연동시키는 후위작업을 수행할 수 있다. 즉, 프론트 엔드 레이어는 최종 사용자에게 보여지는 부분으로 사용자에게 보여지는 콘텐츠와 간단한 데이터 처리, 디자인적인 사용자 UX 부분을 담당하며, 백 엔드 레이어는 사용자의 이벤트를 인식하고 데이터 처리를 담당하는 사용자와 떨어져서 서비스를 제공하는 서버 단에서 이루어지는 프로세스를 의미할 수 있다.
전후처리기 개발자는 플랫폼에서 배포한 서비스를 호출하고 해당 서비스에 대한 결과 데이터를 전송 받음으로써 전후처리기를 개발할 수 있고, 개발된 전후처리기는 하나의 서비스 모듈로서 플랫폼에 탑재될 수 있다. 사용자는 전후처리기 연동 프로세스를 통해 워크벤치 서비스와 시뮬레이션 서비스를 요청할 수 있으며, 시스템은 서버와의 통신 및 시뮬레이션 연동의 기능을 포함한다.
전후처리기 개발자는 계산과학공학 플랫폼에 탑재하기 위한 모듈을 개발하기 위해 처음 OSP Library(240)을 통해 플랫폼 서비스를 호출하여 데이터를 호출하게 된다. 전후처리기 개발자는 데이터가 내부 서버에서 어떻게 구성되고 프론트 엔드 레이어에 전송되는지 내부적인 알고리즘은 알 필요 없이 미리 정의된 데이터를 받아 데이터를 분석하고 전송된 데이터를 받아 인식 가능한 데이터의 형태라면 최종 사용자에게 가시화 서비스를 제공해 주기만 하면 된다.
백 엔드 레이어로부터 전송받은 데이터가 로딩되면, 해당 데이터가 개발중인 전후처리기와 호환 가능성이 있는지를 내부적인 알고리즘을 통해 인식할 수 있다. 전후처리기는 데이터의 포맷을 인식하고 최종 사용자의 간단한 서비스 호환 절차를 거쳐 데이터 가시화 서비스를 제공한다. 전후처리기 개발자는 가시화된 데이터에 대해 편집을 할 수 있는 기능, 편집된 데이터 및 외부 라이브러리를 통해 최적화된 전후처리 데이터에 대해 워크벤치 서비스 및 OSP Library를 통해 백 엔드 레이어에 변경된 데이터를 저장하는 최종 커뮤니케이션 과정까지 제공할 필요가 있다.
다시 도 2를 참조하면, 전후처리기가 개발되는 과정 및 개발된 전후처리기를 테스트하는 과정을 나타내는 시스템이 도시되어 있다.
도 2에서 프론트 엔드 레이어는 도 2에서 설명한 전처리기 개발부(200) 또는 후처리기 개발부(400) 중 적어도 하나에 해당할 수 있다. 그리고, 백 엔드 레이어는 플랫폼(600)의 일부에 해당할 수 있다.
프론트 엔드 레이어는, 플랫폼에서 배포한 라이브러리를 호출하고, 해당 라이브러리에 대한 데이터를 전송 받은 다음, 전송 받은 데이터를 기반으로 전처리기 및/또는 후처리기를 개발할 수 있다. 개발된 전처리기 및/또는 후처리기는 플랫폼에 하나의 서비스 모듈로 등록, 탑재될 수 있으며, 워크벤치 서비스의 일 모듈로 다른 모듈들과 커뮤니케이션할 수 있다.
상기 프론트 엔드 레이어는 백 엔드 레이어로부터 데이터를 전송받고, 전송받은 데이터를 로딩하는 데이터 로딩부(210)를 포함할 수 있다. 백 엔드 레이어로부터 전송받은 데이터가 로딩되면, 프론트 엔드 레이어는 해당 데이터와 개발되고 있는 전처리기 및/또는 후처리기 사이에 호환 가능성이 있는지를 내부적인 알고리즘을 통해 인식할 수 있다.
프론트 엔드 레이어는 데이터의 포맷을 인식하고 최종 사용자의 간단한 서비스 호환 절차를 거쳐 데이터 가시화 모듈(220)을 생성할 수 있다. 여기서, 최종 사용자의 간단한 서비스 호환 절차는 웹 플랫폼 상에서의 로그인 및/또는 사용 환경 테스트 등을 의미할 수 있다. 데이터 가시화 모듈은 로딩된 데이터의 포맷을 인식하고 이를 특정 기술 분야의 데이터로 가시화할 수 있다. 계산과학공학 플랫폼 서버는 개발자가 인식할 수 있는 형태로 데이터를 처리 및 제공하는 역할을 하며, 개발자는 상기 계산과학공학 플랫폼 서버로부터 제공받은 데이터를 각 전문 분야에서 필요한 형태로 변환할 수 있다.
또한, 프론트 엔드 레이어는 가시화된 데이터에 대해 편집을 할 수 있는 기능을 제공하는 데이터 편집 모듈(230)을 생성할 수 있다. 데이터 편집 모듈(230)은 가시화된 데이터에 대한 편집 기능을 제공하며, 편집을 통해 변경된 데이터를 저장 및 전송할 수 있다.
프론트 엔드 레이어는 워크벤치 서비스 및 서버를 통해 백 엔드 레이어에 변경된 데이터를 저장하는 최종 커뮤니케이션 과정까지 수행할 수 있다. 즉, 프론트 엔드 레이어는 개발된 전처리기 및/또는 후처리기의 등록을 요청할 수 있다. 여기서, 개발된 전처리기 및/또는 후처리기의 등록은, 개발된 전처리기 및/또는 후처리기와 관련된 데이터를 백 엔드 레이어에 저장하는 과정을 의미할 수 있다.
OSP Library(240)는 자바 포틀릿 기반으로 만들어진 라이브러리이며, 전후처리기가 데이터를 서버에 요청하거나 데이터를 받아 사용자의 편집 과정을 거쳐 새로운 데이터를 서버에 전송할 때 사용되는 라이브러리이다. OSP Library(240)는 OSP Management Library 및 OSP Platform Service Library를 포함할 수 있다. OSP Management Library는 전후처리기가 서버와 데이터를 주고받기 위해 사용되는 함수가 정의되어 있다. OSP Platform Service Library는 사용자가 선택한 파일 요청에 대한 이벤트와 해당 이벤트에서 요청해야 하는 파일 처리 함수를 매칭시켜주는 역할을 한다.
백 엔드 레이어 내 워크벤치 서비스 분석 장치(250) 및 시뮬레이션 서비스 분석 장치(260)는 OSP Library(240)를 통해 입력된 요청을 처리할 수 있다.
OSP Management Library를 통해서 데이터 요청을 입력 받으면, 워크벤치 서비스 분석 장치(250) 는 해당 데이터 요청에 대해 어떤 서비스를 요청하여 연동해야 하는지 분석하여 데이터베이스와 연동하여 전후처리기에서 필요한 데이터를 전송해주며, 시뮬레이션 서비스 분석 장치(260) 는 어떤 시뮬레이션에 대한 데이터를 요청해야 하는지를 분석하여 데이터베이스와 연동하여 전후처리기에서 필요한 데이터를 전송해줄 수 있다.
OSP Platform Service Library를 통해 서비스 요청을 입력 받으면, 워크벤치 서비스 분석 장치(250) 는 어떤 전후처리기를 호출해서 워크벤치를 구성해야 하는지 분석하고, 시뮬레이션 서비스 분석 장치(260) 는 해당하는 전후처리기와 연동되는 시뮬레이션 실행 이력이 있는지 시뮬레이션 서비스를 분석하여 데이터 베이스와 연동하여 프론트 엔드 레이어를 구성한다. 여기서, 데이터베이스는 계산과학공학 플랫폼을 지원하는 모든 서비스, 시뮬레이션 데이터, 사용자 데이터 등을 통합하여 제공할 수 있다.
한편, 프론트 엔드 레이어는 전처리기 및/또는 후처리기의 개발을 위해 데이터 로딩부(210)를 포함할 수 있다는 점은 전술한 바와 같다. 데이터 로딩부의 구성 및 동작에 대해서는 도 3을 통해 설명한다.
도 3은 본 발명의 일 실시예에 따른 데이터 로딩부를 나타낸 도면이다.
도 3은 전후처리기 개발자가 서버로부터 전송받는 데이터에 대한 데이터 로딩부 (210)을 상세하게 표현한 도면일 수 있다. 전체적인 커뮤니케이션 부분은 데이터 로딩을 받는 과정에서 이루어지기 때문에 전후처리기 개발을 위해서는 해당 데이터 로딩부(210)를 이해할 필요가 있으며, 플랫폼 서비스 라이브러리를 통해 데이터를 제공받기 때문에 데이터를 요청하고 요청한 데이터를 받는 프로토콜을 이해할 필요가 있다.
데이터 로딩부(210)는 데이터 형태 분석부(210A), 데이터 호출부(210B) 및 데이터 수신부(210C)를 포함할 수 있다.
데이터 형태 분석부(210A)는, 플랫폼(600)과의 커뮤니케이션을 통해 데이터를 어떤 형태로 받을 것인지 데이터의 형태를 결정할 수 있다. 구체적인 실시예에서, 상기 데이터의 형태에는, 바이너리 형태, 파일 형태, 텍스트 형태, 폴더 형태 또는 ZIP 파일 형태가 있을 수 있다. 상기 데이터 형태 분석부(210A)는, 데이터의 형태를 합의하기 위해 미리 라이브러리로부터 데이터의 형태 정보를 확인할 수 있다.
데이터 호출부(210B)는, 실제 데이터의 형태 정보를 통해 라이브러리를 호출할 수 있다. 데이터 호출부(210B)는 상기 데이터 형태 분석부(210A)에 의해 결정된 데이터의 형태 및 포맷을 기반으로 실제 데이터를 요청하기 위해 데이터 정보를 구성하여 플랫폼(600)에 데이터를 요청하는 기능을 담당할 수 있다.
데이터 수신부(210C)는 플랫폼(600)으로부터 실제 데이터를 전송 받는 기능을 수행할 수 있다. 즉, 데이터 수신부(210C)는 상기 데이터 호출부(210B)의 요청에 따른 라이브러리를 수신할 수 있다.
요약하면, 데이터 로딩부(210)에서 데이터 형태 분석부(210A)는, 데이터의 형태 정보를 정하고, 데이터 호출부(210B)는 데이터를 호출하며, 데이터 수신부(210C)는 전송되는 데이터를 받는 기능을 수행할 수 있다.
상기 데이터 로딩부(210)에서 수행되는 일련의 동작을 다시 설명하면 다음과 같다.
첫 번째로, 데이터 로딩부는 데이터의 형태에 따른 분석 정보를 가지고 있어야 하며, 라이브러리(Library)를 통해 데이터를 어떤 형태로 받을 것인지 데이터의 형태를 결정하는 프로토콜이 정해져 있어야 한다. 데이터를 받는 데이터 형태 분석부(210A)에서는 데이터를 바이너리 형태로 받을 것인지, 파일 형태로 받을 것인지, 텍스트 형태로 받을 것인지, 폴더 형태 또는 ZIP 파일로 받을 것인지 미리 플랫폼 라이브러리를 통해서 서로 합의된 데이터를 인식할 수 있도록 서비스를 요청한다.
두 번째로, 데이터 호출부(210B)는 실제 데이터의 형태 정보를 통해 서비스 라이브러리 호출을 하는 데이터 호출 부분으로서, 이는 개발자가 플랫폼 시스템에 데이터의 형태 및 포맷을 결정하고 실제 데이터를 요청하기 위해 데이터 정보를 구성하여 데이터를 요청한다.
마지막으로 데이터 수신부(210C) 는 실제 플랫폼 서비스를 통해 데이터를 전송받는 기능을 담당한다.
데이터 로딩부는 데이터의 형태 정보(210A)를 정하고, 데이터 호출 분석 장치(210B)를 통해 데이터를 호출한 다음 서버쪽에서 전송되는 데이터를 받는 기능(210C)을 제공한다.
도 4는 전후처리기를 계산과학공학 플랫폼에 등록하고 실시간으로 시뮬레이션 워크벤치에 반영하여 사용자에게 제공하는 프로세스를 나타낸 도면이다.
도 4의 좌측에는 전후처리기를 플랫폼에 등록하는 일련의 프로세스가 도시되어 있다.
전후처리기의 개발이 완료되어 플랫폼에 등록하고자 할 때, 개발자는 전후처리기 등록 절차에 따라 전후처리기 등록을 진행해야 한다. 개발자는 전후처리기 등록 신청을 하고(S311), 기본적인 전후처리기 정보를 등록한다(S312).
전후처리기 등록 정보(310A)는 서비스 하고자 하는 전후처리기의 이름, 서비스 하고자 하는 언어, 서비스 영역 카테고리, 전후처리기 소유자 등의 정보를 포함할 수 있으며, 이 모든 값은 필수적으로 사용자에게 서비스하기 위해 필요한 정보일 수 있다.
따라서, 이러한 필수 값에 대한 검증 절차를 거칠 수 있다(S313). 필수 값에 대한 검증이 이루어지지 않을 경우(S313의 아니오), 필수 값에 대한 검증을 재요구할 수 있다. 필수 값에 대한 검증을 거치고 난 후(S313의 예), 실제 전후처리기 실행 환경 정보를 등록하게 되는데(S314), 전후처리기 실행 환경 정보는 실제 소스파일, 시스템 환경 등 실질적으로 전후처리기가 동작하는데 필요한 필수 환경 요소들을 포함할 수 있다. 개발자는 전후처리기에서 동작이 가능한 샘플 파일을 등록할 수 있다(S315).
전후처리기 개발자가 새로운 전후처리기에 대한 등록이 요청되면, 관리자의 검증 과정(S316)을 거치게 된다. 이는 시뮬레이션의 실행환경에서 전후처리기가 실제로 동작하는지(실행 환경 테스트), 시스템 라이브러리와 충돌은 없는지(시스템 라이브러리 충돌 테스트), 시뮬레이션이 정상적으로 동작하는지(시뮬레이션 실행 테스트), 시뮬레이션 워크벤치와 호환되어 정상 동작을 하는지(워크벤치 동작 테스트) 등의 테스트를 거쳐 유효성 검증을 한다(S317). 정상적으로 동작하는 것을 관리자가 확인한다면(S317의 예) 전후처리기 등록 과정은 종료되며, 만약 관리자의 검증을 거쳐 유효성이 검증되지 않았다면(S317의 아니오) 실행 환경 정보부터 다시 등록해야 한다(S314).
전후처리기 등록이 완료되었다면 등록된 전후처리기가 워크벤치에 반영될 수 있다. 도 4의 우측에는 등록된 전후처리기가 워크벤치에 반영되는 일련의 프로세스가 도시되어 있다.
플랫폼(600)은, 시뮬레이션에서 인식이 가능한 데이터 타입을 추가할 수 있다(S321) 여기서, 데이터 타입이란 시뮬레이션에 인식이 가능한 데이터 형태를 의미하며, 데이터 타입에는 테이터 타입 이름 및 데이터 타입 설명이 있을 수 있다.
데이터 타입은 개발된 전후처리기에서 인식 가능한 파일 포맷들을 하나의 형태로 묶어 저장할 수 있는 일종의 추상화된 개념을 의미한다. 예를 들어, 이미지 처리를 하는 전후처리기를 등록할 경우, 데이터 타입은 이미지 확장자 파일들인 jpeg, png, bif 등을 포함하는 이미지 데이터 타입일 수 있다.
다음으로, 플랫폼(600)은 기본적인 데이터 타입에 대한 정보를 등록할 수 있다(S322). 하나의 데이터 타입은 적어도 하나 이상의 전후처리기와 대응될 수 있다. 하나의 데이터 타입을 등록하는 과정은 해당 데이터 타입과 대응하는 적어도 하나 이상의 전후처리기의 식별정보 및 초기값을 등록하는 것을 의미할 수 있다. 데이터 타입을 등록하기 위한 과정에서(S322), 플랫폼은(600) 데이터 타입을 등록하면서 전후처리기를 선택하고 초기 전후처리기 값을 지정할 수 있다. 또는 플랫폼은(600) 소정 전후처리기에 대한 데이터 타입을 지정하고, 해당 전후처리기에 대한 초기값을 지정할 수 있다.
플랫폼(600)은, 전후처리기를 사이언스 앱에 등록할 수 있다(S323).
전술한 바와 같이, 하나의 데이터 타입은 적어도 하나 이상의 전후처리기와 대응될 수 있으며, 사이언스 앱은 상기 데이터 타입을 매개로 전후처리기와 연동될 수 있다. 즉, 사이언스 앱과 전후처리기는 데이터 타입 단위로 연동될 수 있다. 사이언스 앱에 전후처리기를 등록한다는 것은 실질적으로 데이터 타입과 사이언스 앱을 연결하는 것을 의미한다.
전술한 바와 같이, 사이언스 앱과 전후처리기는 직접적으로 연동되지 않고, 데이터 타입을 매개로 데이터 타입 단위로 연동된다. 즉, 전후처리기를 사이언스 앱에 등록한다는 것은 전후처리기와 연결되어 있는 데이터 타입을 연결하는 것을 의미한다.
데이터 타입을 등록하여 저장하면 실제 시뮬레이션 환경을 구성할 때, 사이언스 앱의 전후처리기로 등록될 수 있으며, 이는 사이언스 앱의 전후처리기 추가를 할 때 데이터 타입 정보로 검색 될 수 있다. 따라서 전후처리기가 등록되어 실제 시뮬레이션을 수행하는 사용자에게 반영되어 환경이 구성 될 수 있다. 데이터 타입을 등록하면서 전처리기 또는 후처리기를 개수에 상관없이 등록할 수 있으며, 각 전후처리기는 샘플 데이터를 추가하거나 초기값을 지정 할 수 있다.
전후처리기 등록을 위한 데이터 타입 등록이 완료되면, 사이언스 앱에 사용되는 데이터 타입과 전후처리기를 매치시켜 시뮬레이션 실행 환경을 구성할 수 있다. 이러한 절차를 거쳐 시뮬레이션 실행 환경을 구성하였다면 사이언스 앱에 사용되는 데이터 타입에 따라 전후처리기가 변경 될 수 있고, 변경된 내용은 실제 사용자의 시뮬레이션 환경에 실시간으로 반영되어 적용될 수 있다. 예를 들어, 소정 사이언스 앱이 텍스트를 테이터 타입으로 갖는 경우, 텍스트 데이터 타입이 이미 플랫폼에 등록되어 있고, 텍스트 데이터 타입에 해당하는 전후처리기가 해당 사이언스 앱에 매칭되어, 사이언스 앱에 적합한 전후처리기가 실행 환경에 적합하게 제공될 수 있다.
또한, 계산과학공학 시뮬레이션을 실행하는 사이언스 앱은 입력 포트와 출력 포트를 가질 수 있다. 사이언스 앱은 입력 포트 및 출력 포트 각각에 대한 데이터 타입을 가질 수 있다. 따라서, 사이언스 앱은 입력 값과 출력 값에 따라 전후처리기 등록(S323)이 필요하며, 각 입력과 출력에 따른 입출력 등록이 필요하다. 사이언스 앱의 입력과 출력은 각각 데이터 타입으로서 전후처리기와 연동하여 시뮬레이션 실행 환경을 구성할 수 있다. 사이언스 앱을 개발한 개발자는 입출력 포트를 등록할 수 있으며, 해당 입출력 포트에 맞는 데이터 타입을 새로 등록하거나 기존에 등록되어 있는 데이터 타입을 검색하여 사용할 수 있다. 데이터 타입을 등록하고 나면 해당 입출력 포트에 맞는 초기값을 지정해 줄 수 있다.
사이언스 앱에서 전후처리기 등록 과정이 종료되면 시뮬레이션 실행 환경이 자동으로 구성된다(S324). 시뮬레이션 환경 구성은 사이언스 앱에서 수행하는 시뮬레이션 과정에 따라 데이터 타입에 맞는 전후처리기를 구성하고, 실행 환경, 사이언스 앱 구성 등의 정보를 구성하여 사용자가 간편하게 사용할 수 있는 시뮬레이션 환경을 제공한다. 사이언스 앱에 대한 데이터 타입이 변경될 경우, 자동으로 전후처리기를 통해 제공되는 시뮬레이션 실행 환경이 변경될 수 있다.
도 5는 워크벤치 레이아웃 환경 설정 및 테스트 프로세스를 나타낸 도면이다.
도 5는 사이언스 앱 개발자가 전후처리기를 선택하고 레이아웃을 구성 및 테스트하는 과정을 나타낸다. 실제 시뮬레이션 환경을 변경 또는 새롭게 구성하기 위해 사이언스 앱 개발자는 전후처리기를 선택(S411)하고 해당 전후처리기에 대한 레이아웃 구성(S412)을 진행하고, 실제 개발자가 원하는 형태대로 시뮬레이션이 구성되고 전후처리기가 원하는 형태로 동작하는지 테스트(S413)를 할 수 있다. 사이언스 앱 개발자가 전후처리기를 선택, 레이아웃 설정, 및 테스트를 마치면, 일반 사용자는 실시간으로 사이언스 앱 개발자가 설정한 시뮬레이션 환경을 제공받을 수 있다(420).
구체적으로, S411은 사이언스 앱에서 입출력 포트 정보를 추가하거나 편집하는 프로세스이다. 입출력 포트를 추가함에 있어서, 해당 입출력 포트와 연동하는 데이터 타입을 플랫폼에 등록되어 있는 리스트에서 검색하여 선택할 수 도 있고, 또는 새로운 데이터 타입을 선택할 수 있다. 데이터 타입을 선택한다는 것은 해당 데이터 타입을 지원하는 전후처리기와 연동된다는 것을 의미한다는 점은 전술한 바와 같다.
S412는 플랫폼에서 사이언스 앱의 입출력 포트를 수정하는 과정에서 사이언스 앱의 레이아웃을 설정하는 내용을 의미한다. 입출력 포트를 수정할 경우, 시뮬레이션 실행 환경 수정을 위해 플랫폼에서 레이아웃 설정을 새롭게 해야 한다. 레이아웃 설정은 시뮬레이션 실행 환경에서 입출력 포트를 어느 위치에서 실행 시킬 것인지를 설정하는 것이다. 해당 입출력 포트를 수정하고 레이아웃 설정을 마치면 원하는 대로 실행 환경이 구성되었는지 테스트하는 과정를 거치게 된다(S413). 테스트가 끝나면 실시간으로 해당 앱의 시뮬레이션 환경이 수정되어 플랫폼에 반영되고, 사용자에게 전후처리기가 연계된 사이언스 앱이 제공될 수 있다.
도 6은 실제 구축되어 있는 계산과학공학 시뮬레이션 시스템에서 입출력 포트 정보 및 해당 입출력 포트의 레이아웃을 설정하고, 테스트를 진행하여 워크벤치 시뮬레이션이 제공되는 실제 서비스 화면을 나타낸 것이다.
도면에 도시된 바와 같이 사이언스 앱의 입출력 포트 정보를 설정함으로써, 데이터 타입에 해당하는 전후처리기들을 사이언스 앱과 연동시킬 수 있다. 입출력 포트 설정된 후 시뮬레이션 실행 환경에 대한 레이아웃이 설정되면 테스트가 수행되고 전후처리기가 연계된 사이언스 앱이 플랫폼에 반영될 수 있다.
도 7은 본 발명의 일 실시예에 따른 시뮬레이션 시스템의 구성도이다.
도 7을 참조하면, 본 발명의 일 실시예에 따른 시뮬레이션 시스템은, 사이언스 앱을 통해 시뮬레이션 인터페이스를 제공하는 웹 기반의 시뮬레이션 시스템으로서, 라이브러리 제공부(1000), 전후처리기 등록부(2000), 및 전후처리기 반영부(3000)을 포함한다. 상기 라이브러리 제공부(1000)는, 전처리기 및 후처리기 중 적어도 하나의 개발을 위한 라이브러리를 제공할 수 있다. 상기 전후처리기 등록부(2000)는 상기 플랫폼이 제공한 상기 라이브러리에 기반하여 개발된 상기 전처리기 및 상기 후처리기 중 적어도 하나를 플랫폼에 등록할 수 있다. 전후처리기 반영부(3000)는 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나를 상기 사이언스 앱과 매칭시키고 사용자 시뮬레이션 환경에 반영할 수 있다.
전후처리기 등록부(2000)는 필수적으로 요구되는 전후처리기 등록 정보가 등록된 경우 전후처리기 실행 환경 정보를 등록할 수 있다. 또한, 전후처리기 등록부(2000)는 상기 전후처리기 실행 환경 정보를 바탕으로 시뮬레이션이 정상적으로 동작하는지 판단하는 시뮬레이션 실행 테스트, 또는 시뮬레이션의 실행 환경에서 상기 전처리기 및 상기 후처리기 중 적어도 하나가 실제로 동작하는지 판단하는 실행 환경 테스트를 통해 상기 전처리기 및 상기 후처리기 중 적어도 하나의 유효성을 테스트할 수 있다. 또한, 상기 전후처리기 반영부(3000)는, 정의된 데이터 타입을 매개로 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나를 상기 사이언스 앱과 매칭시킬 수 있다. 여기서, 상기 데이터 타입은 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나 이상과 연동될 수 있다.
다른 실시예에 따르면, 전술한 시스템에 기반하여 사이언스 앱에 전후처리기를 연계하는 방법이 개시된다.
웹 기반 시뮬레이션 플랫폼에서 제공되는 사이언스 앱에 전처리기 및 후처리기 중 적어도 하나를 연계하는 방법은, 전처리기 및 후처리기 중 적어도 하나의 개발을 위한 라이브러리를 제공하는 단계, 상기 라이브러리에 기반하여 개발된 상기 전처리기 및 상기 후처리기 중 적어도 하나를 상기 플랫폼에 등록하는 단계, 및 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나를 상기 사이언스 앱과 매칭시키고 사용자 시뮬레이션 환경에 반영하는 단계를 포함할 수 있다. 상기 등록하는 단계는 필수적으로 요구되는 전후처리기 등록 정보가 등록된 경우 전후처리기 실행 환경 정보를 등록할 수 있다. 또한, 상기 등록하는 단계는 상기 전후처리기 실행 환경 정보를 바탕으로 시뮬레이션이 정상적으로 동작하는지 판단하는 시뮬레이션 실행 테스트, 또는 시뮬레이션의 실행 환경에서 상기 전처리기 및 상기 후처리기 중 적어도 하나가 실제로 동작하는지 판단하는 실행 환경 테스트를 통해 상기 전처리기 및 상기 후처리기 중 적어도 하나의 유효성을 테스트하는 단계를 더 포함할 수 있다. 또한, 상기 반영하는 단계는, 정의된 데이터 타입을 매개로 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나를 상기 사이언스 앱과 매칭시킬 수 있다. 여기서, 상기 데이터 타입은 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나 이상과 연동될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
100: 시뮬레이션 시스템
200: 전처리기 개발부
400: 후처리기 개발부
600: 플랫폼

Claims (10)

  1. 사이언스 앱을 통해 시뮬레이션 인터페이스를 제공하는 웹 기반의 시뮬레이션 시스템에 있어서,
    전처리기 및 후처리기의 개발을 위한 라이브러리를 제공하는 라이브러리 제공부,
    상기 전처리기 및 상기 후처리기는 상기 사이언스 앱에 기반한 시뮬레이션 서비스를 위해 연계되어 상기 시뮬레이션 서비스를 자동으로 등록하고,
    상기 전처리기는 상기 사이언스 앱을 위한 데이터를 편집하고,
    상기 후처리기는 상기 데이터의 편집 없이 상기 데이터에 대한 시뮬레이션 결과를 제공함;
    플랫폼이 제공한 상기 라이브러리에 기반하여 개발된 상기 전처리기 및 상기 후처리기를 플랫폼에 등록하는 전후처리기 등록부; 및
    상기 등록된 전처리기 및 상기 후처리기를 상기 사이언스 앱과 매칭시키고 사용자 시뮬레이션 환경에 반영하는 전후처리기 반영부;를 포함하고,
    상기 전처리기는
    상기 데이터를 상기 라이브러리로부터 호출하고,
    상기 호출된 데이터를 가시화하고,
    상기 호출된 데이터를 편집하고, 상기 편집된 데이터를 상기 라이브러리에 저장하고,
    상기 후처리기는
    상기 라이브러리로부터 상기 데이터에 대한 시뮬레이션 상태 정보 및 결과 데이터 정보를 획득하고,
    상기 시뮬레이션 상태 정보 및 상기 결과 데이터 정보에 기초하여 상기 데이터를 로딩하고 상기 데이터를 가시화하고,
    상기 사용자 시뮬레이션 환경은 상기 사이언스 앱에 대한 일반 사용자에게 제공되고,
    상기 전처리기는 상기 데이터를 편집하고 가시화할 수 있는 제1개발자에게 제공되고,
    상기 후처리기는 상기 데이터를 분석하고 가시화할 수 있는 제2개발자에게 제공되는,
    시뮬레이션 시스템.
  2. 제1항에 있어서,
    전후처리기 등록부는 필수적으로 요구되는 전후처리기 등록 정보가 등록된 경우 전후처리기 실행 환경 정보를 등록하는 것을 특징으로 하는 시뮬레이션 시스템.
  3. 제2항에 있어서,
    전후처리기 등록부는 상기 전후처리기 실행 환경 정보를 바탕으로 시뮬레이션이 정상적으로 동작하는지 판단하는 시뮬레이션 실행 테스트, 또는 시뮬레이션의 실행 환경에서 상기 전처리기 및 상기 후처리기 중 적어도 하나가 실제로 동작하는지 판단하는 실행 환경 테스트를 통해 상기 전처리기 및 상기 후처리기 중 적어도 하나의 유효성을 테스트하는 것을 특징으로 하는 시뮬레이션 시스템.
  4. 제1항에 있어서,
    상기 전후처리기 반영부는, 정의된 데이터 타입을 매개로 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나를 상기 사이언스 앱과 매칭시키는 것을 특징으로 하는 시뮬레이션 시스템.
  5. 제4항에 있어서,
    상기 데이터 타입은 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나 이상과 연동되는 것을 특징으로 하는 시뮬레이션 시스템.
  6. 웹 기반 시뮬레이션 플랫폼에서 제공되는 사이언스 앱에 전처리기 및 후처리기 중 적어도 하나를 연계하는 방법에 있어서,
    전처리기 및 후처리기의 개발을 위한 라이브러리를 제공하는 단계,
    상기 전처리기 및 상기 후처리기는 상기 사이언스 앱에 기반한 시뮬레이션 서비스를 위해 연계되어 상기 시뮬레이션 서비스를 자동으로 등록하고,
    상기 전처리기는 상기 사이언스 앱을 위한 데이터를 편집하고,
    상기 후처리기는 상기 데이터의 편집 없이 상기 데이터에 대한 시뮬레이션 결과를 제공함;
    상기 라이브러리에 기반하여 개발된 상기 전처리기 및 상기 후처리기를 상기 플랫폼에 등록하는 단계; 및
    상기 등록된 전처리기 및 상기 후처리기를 상기 사이언스 앱과 매칭시키고 사용자 시뮬레이션 환경에 반영하는 단계;
    를 포함하고,
    상기 전처리기는
    상기 데이터를 상기 라이브러리로부터 호출하고,
    상기 호출된 데이터를 가시화하고,
    상기 호출된 데이터를 편집하고, 상기 편집된 데이터를 상기 라이브러리에 저장하고,
    상기 후처리기는
    상기 라이브러리로부터 상기 데이터에 대한 시뮬레이션 상태 정보 및 결과 데이터 정보를 획득하고,
    상기 시뮬레이션 상태 정보 및 상기 결과 데이터 정보에 기초하여 상기 데이터를 로딩하고 상기 데이터를 가시화하고,
    상기 사용자 시뮬레이션 환경은 상기 사이언스 앱에 대한 일반 사용자에게 제공되고,
    상기 전처리기는 상기 데이터를 편집하고 가시화할 수 있는 제1개발자에게 제공되고,
    상기 후처리기는 상기 데이터를 분석하고 가시화할 수 있는 제2개발자에게 제공되는,
    전후처리기 연계 방법.

  7. 제6항에 있어서,
    상기 등록하는 단계는 필수적으로 요구되는 전후처리기 등록 정보가 등록된 경우 전후처리기 실행 환경 정보를 등록하는 것을 특징으로 하는 전후처리기 연계 방법.
  8. 제7항에 있어서,
    상기 등록하는 단계는 상기 전후처리기 실행 환경 정보를 바탕으로 시뮬레이션이 정상적으로 동작하는지 판단하는 시뮬레이션 실행 테스트, 또는 시뮬레이션의 실행 환경에서 상기 전처리기 및 상기 후처리기 중 적어도 하나가 실제로 동작하는지 판단하는 실행 환경 테스트를 통해 상기 전처리기 및 상기 후처리기 중 적어도 하나의 유효성을 테스트하는 단계를 더 포함하는 것을 특징으로 하는 전후처리기 연계 방법.
  9. 제6항에 있어서,
    상기 반영하는 단계는, 정의된 데이터 타입을 매개로 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나를 상기 사이언스 앱과 매칭시키는 것을 특징으로 하는 전후처리기 연계 방법.
  10. 제9항에 있어서,
    상기 데이터 타입은 상기 등록된 전처리기 및 상기 후처리기 중 적어도 하나 이상과 연동되는 것을 특징으로 하는 전후처리기 연계 방법.

KR1020180139865A 2018-11-14 2018-11-14 전후처리기 연계를 위한 계산과학공학 플랫폼 시뮬레이션 시스템 및 방법 KR102015980B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180139865A KR102015980B1 (ko) 2018-11-14 2018-11-14 전후처리기 연계를 위한 계산과학공학 플랫폼 시뮬레이션 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180139865A KR102015980B1 (ko) 2018-11-14 2018-11-14 전후처리기 연계를 위한 계산과학공학 플랫폼 시뮬레이션 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR102015980B1 true KR102015980B1 (ko) 2019-08-29

Family

ID=67775792

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180139865A KR102015980B1 (ko) 2018-11-14 2018-11-14 전후처리기 연계를 위한 계산과학공학 플랫폼 시뮬레이션 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102015980B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210044405A (ko) * 2019-10-15 2021-04-23 한국기술교육대학교 산학협력단 클러스터 기반 과학적 가시화 도구를 위한 가시화 파이프라인 장치 및 그 가시화 방법
KR20210077566A (ko) * 2019-12-17 2021-06-25 경북대학교 산학협력단 시뮬레이션 실행 시간 예측 장치 및 예측 방법
KR20210132960A (ko) * 2020-04-28 2021-11-05 한국과학기술정보연구원 데이터 가시화 방법, 데이터 가시화 장치 및 데이터를 가시화하는 소프트웨어를 저장하는 저장매체

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101267836B1 (ko) * 2009-12-11 2013-05-27 에스케이플래닛 주식회사 오픈 마켓 플레이스 시스템, 서버 및 이를 이용한 애플리케이션 제공 방법
KR20130060983A (ko) * 2011-11-30 2013-06-10 한국과학기술정보연구원 웹 기반 시뮬레이션 소프트웨어 관리 시스템 및 그 방법
JP5237030B2 (ja) * 2008-09-29 2013-07-17 株式会社富士通ビー・エス・シー ソフトウェア開発支援プログラム、ソフトウェア開発支援装置およびソフトウェア開発支援方法
KR101739854B1 (ko) * 2016-06-27 2017-05-25 한국과학기술정보연구원 배포용 계산과학 플랫폼, 그 플랫폼의 검사 시스템 및 방법
KR20180002028A (ko) * 2017-06-20 2018-01-05 한국과학기술정보연구원 통합 웹 포털 프레임워크를 제공하는 방법, 통합 웹 포털 프레임워크를 제공하는 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5237030B2 (ja) * 2008-09-29 2013-07-17 株式会社富士通ビー・エス・シー ソフトウェア開発支援プログラム、ソフトウェア開発支援装置およびソフトウェア開発支援方法
KR101267836B1 (ko) * 2009-12-11 2013-05-27 에스케이플래닛 주식회사 오픈 마켓 플레이스 시스템, 서버 및 이를 이용한 애플리케이션 제공 방법
KR20130060983A (ko) * 2011-11-30 2013-06-10 한국과학기술정보연구원 웹 기반 시뮬레이션 소프트웨어 관리 시스템 및 그 방법
KR101739854B1 (ko) * 2016-06-27 2017-05-25 한국과학기술정보연구원 배포용 계산과학 플랫폼, 그 플랫폼의 검사 시스템 및 방법
KR20180002028A (ko) * 2017-06-20 2018-01-05 한국과학기술정보연구원 통합 웹 포털 프레임워크를 제공하는 방법, 통합 웹 포털 프레임워크를 제공하는 장치

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210044405A (ko) * 2019-10-15 2021-04-23 한국기술교육대학교 산학협력단 클러스터 기반 과학적 가시화 도구를 위한 가시화 파이프라인 장치 및 그 가시화 방법
KR102358350B1 (ko) * 2019-10-15 2022-02-04 한국기술교육대학교 산학협력단 클러스터 기반 과학적 가시화 도구를 위한 가시화 파이프라인 장치 및 그 가시화 방법
KR20210077566A (ko) * 2019-12-17 2021-06-25 경북대학교 산학협력단 시뮬레이션 실행 시간 예측 장치 및 예측 방법
KR102304321B1 (ko) * 2019-12-17 2021-09-24 경북대학교 산학협력단 시뮬레이션 실행 시간 예측 장치 및 예측 방법
KR20210132960A (ko) * 2020-04-28 2021-11-05 한국과학기술정보연구원 데이터 가시화 방법, 데이터 가시화 장치 및 데이터를 가시화하는 소프트웨어를 저장하는 저장매체
KR102464100B1 (ko) * 2020-04-28 2022-11-08 한국과학기술정보연구원 데이터 가시화 방법, 데이터 가시화 장치 및 데이터를 가시화하는 소프트웨어를 저장하는 저장매체

Similar Documents

Publication Publication Date Title
CN107861870B (zh) 接口测试及测试数据生成方法、装置、终端和存储介质
CN105765527B (zh) 用于定制的软件开发包(sdk)的方法和装置
KR102015980B1 (ko) 전후처리기 연계를 위한 계산과학공학 플랫폼 시뮬레이션 시스템 및 방법
US8296736B2 (en) Automated business process testing that spans multiple platforms or applications
US7634756B2 (en) Method and apparatus for dataflow creation and execution
US7917896B2 (en) Extensible execution language
US20060271581A1 (en) Simulation of computing system solutions based on customer data using a solution builder wizard environment
EP2705454A1 (en) System for creating personalized and customized mobile devices
CN110851167A (zh) 容器环境更新方法、装置、设备及存储介质
CN109408375A (zh) 接口文档的生成方法和装置
CN110162464A (zh) Mcok测试方法及系统、电子设备及可读存储介质
CN114564203A (zh) 一种业务运行方法、装置、电子设备及可读介质
EP1909170B1 (en) Method and system for automatically generating a communication interface
CN112600936B (zh) 一种云计算系统服务的量化和评估方法
Huang et al. Surrogate: A simulation apparatus for continuous integration testing in service oriented architecture
CN116719735A (zh) 一种测试用例生成方法及装置
CN110889105B (zh) 数据处理方法、装置、系统及介质
CN111435348A (zh) 创建用于数据分析功能的运行时可执行程序的方法
CN115857898A (zh) 一种应用系统构建和运行方法及装置
CN111124815A (zh) 一种日志查看方法、装置、设备及存储介质
CN114245890A (zh) 用于提供功能即服务平台的方法和设备
Zhang et al. Tinyedge: Enabling rapid edge system customization for iot applications
CN117076335B (zh) 一种模型测试方法、系统、介质及电子设备
CN113608996B (zh) 一种镜像编译测试方法、系统、装置及可读存储介质
KR100404908B1 (ko) 엔터프라이즈 자바 빈즈 컴포넌트의 인터페이스 시험 장치및 방법

Legal Events

Date Code Title Description
AMND Amendment
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant