KR101328346B1 - Method of developing application and apparatus for the same - Google Patents

Method of developing application and apparatus for the same Download PDF

Info

Publication number
KR101328346B1
KR101328346B1 KR1020110135244A KR20110135244A KR101328346B1 KR 101328346 B1 KR101328346 B1 KR 101328346B1 KR 1020110135244 A KR1020110135244 A KR 1020110135244A KR 20110135244 A KR20110135244 A KR 20110135244A KR 101328346 B1 KR101328346 B1 KR 101328346B1
Authority
KR
South Korea
Prior art keywords
state
diagram
instance
data flow
flow diagram
Prior art date
Application number
KR1020110135244A
Other languages
Korean (ko)
Other versions
KR20130068259A (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 KR1020110135244A priority Critical patent/KR101328346B1/en
Publication of KR20130068259A publication Critical patent/KR20130068259A/en
Application granted granted Critical
Publication of KR101328346B1 publication Critical patent/KR101328346B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • 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/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

애플리케이션 개발 방법 및 이를 위한 장치가 개시된다. 상기 적어도 하나의 상태 기반 다이어그램에서 상기 휘처 모델에서 선택된 휘처에 상응하는 상태를 추출하여 제 1 인스턴스를 생성하는 단계, 상기 데이터 흐름 다이어그램에서 상기 휘처 모델에서 선택된 휘처에 상응하는 프로세스를 추출하여 제 2 인스턴스를 생성하는 단계 및 상기 제 1 인스턴스의 상태를 이용하여 제 1 소스 코드를 생성하고, 상기 제 2 인스턴스의 프로세스를 이용하여 제 2 소스 코드를 생성하는 단계를 포함한다. 따라서, 안정적인 아키텍처 모델을 이용하여 제품라인 기반으로 어플리케이션의 개발을 할 수 있고, 상태 기반으로 아키텍처를 명세 할 수 있으며, 도메인 분석 과정의 결과물인 휘처 모델과의 일관성을 검사할 수 있다.An application development method and apparatus therefor are disclosed. Extracting a state corresponding to a feature selected in the feature model from the at least one state-based diagram to generate a first instance; extracting a process corresponding to the feature selected in the feature model from the data flow diagram and extracting a second instance; Generating a first source code using the state of the first instance, and generating a second source code using the process of the second instance. Therefore, it is possible to develop application based on product line using stable architecture model, to specify architecture based on state, and to check consistency with feature model which is the result of domain analysis process.

Description

애플리케이션 개발 방법 및 이를 위한 장치{METHOD OF DEVELOPING APPLICATION AND APPARATUS FOR THE SAME}Application development method and device therefor {METHOD OF DEVELOPING APPLICATION AND APPARATUS FOR THE SAME}

본 발명은 애플리케이션 개발에 관한 것으로, 더욱 상세하게는 상태 기반 아키텍쳐 모델을 이용하여 제품라인 애플리케이션을 개발하는 애플리케이션 개발 방법 및 이를 위한 장치에 관한 것이다.The present invention relates to application development, and more particularly, to an application development method and apparatus for developing a product line application using a state-based architecture model.

소프트웨어 개발의 생산성을 높이고자 하는 소프트웨어 재사용 기술의 초점은 소스 코드의 재사용에서 소프트웨어 설계의 재사용으로, 다시 소프트웨어 설계의 재사용에서 영역 공학에 기반을 둔 재사용으로 그 중심이 옮겨져 왔다. The focus of software reuse technology to increase the productivity of software development has shifted from reuse of source code to reuse of software design, and from reuse of software design to reuse based on domain engineering.

이러한 소프트웨어 재사용 기술의 변화의 이유는, 소스코드를 재사용하기 위해서는 설계의 재사용이 선행되어야 하고, 또한 설계를 재사용하기 위해서는 영역 공학을 통해서 해당 응용 영역에서 공통적으로 쓰이는 영역 자산을 먼저 개발하여야 했기 때문이다. 따라서 지난 수년 간 소프트웨어 재사용 연구는 영역 분석 및 영역 공학에 중점을 두고 수행되어 왔다.The reason for the change of the software reuse technology is that the reuse of the design must be preceded in order to reuse the source code, and in order to reuse the design, the area assets commonly used in the application area must be developed through the area engineering. . Thus, software reuse research has been undertaken over the last few years with a focus on domain analysis and domain engineering.

소프트웨어 재사용 기술에 관한 연구에서 영역 공학적인 접근 방법은 해당 응용 영역에 대해서 광범위한 분석을 실시하고 이를 통하여 재사용성이 높은 컴포넌트를 개발하는 것이다. 그러나 이러한 접근 방법은 많은 경우에 영역 내의 모든 제품을 포함하려는 경향이 있었으며, 이로 인하여 소프트웨어 개발의 비용과 기간이 증가하는 문제가 발생하기도 하였다. In the study of software reuse technology, the domain engineering approach is to develop a highly reusable component through extensive analysis of the application area. In many cases, however, this approach tended to include all products in the domain, which in turn increased the cost and duration of software development.

또한 소프트웨어 재사용성을 극대화하기 위한 노력으로 소프트웨어 구조의 계층화와 정보 은닉을 위한 캡슐화를 강조하다 보면 결과적으로 성능이 떨어지는 시스템을 개발하게 되는 문제점이 발생하기도 했다. 이와 같이, 해당 응용 영역을 중심으로 소프트웨어를 재사용하려함에 있어서 적절한 영역의 범위와 재사용성의 정도를 결정하는 것은 어려운 문제이다.In addition, in an effort to maximize software reusability, emphasizing the layering of software structures and encapsulation for information concealment has resulted in a problem of developing a system with poor performance. As described above, it is difficult to determine the extent of the appropriate area and the degree of reusability in attempting to reuse the software around the application area.

위에서 언급한 문제 가운데 일부를 해결하고자 소프트웨어 제품라인 공학(software product line engineering)의 패러다임이 제시되었다. 이 패러다임에 따르면 소프트웨어 재사용은 특정 소프트웨어 제품 라인을 재사용하기 위해서 신중하게 수립된 계획 하에 이루어진다. To solve some of the problems mentioned above, a paradigm of software product line engineering has been proposed. According to this paradigm, software reuse is a carefully planned plan for reusing specific software product lines.

즉, 소프트웨어 제품라인 공학에 의하면, 기업이 진입하고자 하는 시장상황을 분석한 결과를 바탕으로 하여 영역 분석을 해야 하는 범위와 이를 기반으로 하는 소프트웨어 제품 라인 자산의 개발 범위를 명확하게 할 수 있다.That is, according to the software product line engineering, it is possible to clarify the scope of the domain analysis and the development scope of the software product line assets based on the analysis of the market situation to enter the enterprise.

소프트웨어 제품라인 공학 기술은 도메인(domain) 에 속한 여러 시스템들의 기능적 측면과 품질을 고려하여 공통점과 차이점 분석을 통해 충분한 핵심자산을 확보하고 이 자산들을 조합하여 원하는 시스템을 개발하는 개념을 의미한다. Software product line engineering technology refers to the concept of securing sufficient core assets through the analysis of commonalities and differences in consideration of the functional aspects and the quality of various systems belonging to the domain and combining the assets to develop a desired system.

휘처(feature) 모델은 소프트웨어 제품라인 공학에서 도메인에 속한 여러 시스템 간의 공통점과 차이점을 '휘처'단위로 나타내고, 휘처 사이의 관계를 표현하는 분석 모델이다.A feature model is an analysis model in software product line engineering that expresses the commonalities and differences between various systems in a domain in 'feature' units and expresses the relationship between features.

아키텍처 모델은 제품라인 공학에서 도메인에 속한 여러 가지 시스템에 공통적으로 찾을 수 있는 아키텍처 측면에서의 패턴을 의미한다. 시스템들의 종류에 따라서 다양한 패턴이 존재할 수 있다.An architectural model refers to a pattern in architectural terms that can be found in many of the domain's systems in product line engineering. There may be various patterns depending on the type of systems.

상태 기반 아키텍처 모델은 제품라인 공학에서 도메인에 속한 여러 시스템을 상태 기반으로 시스템을 모델링 하고 상태 기반의 모델을 중심으로 도메인 컴포넌트들을 통합할 수 있는 아키텍처 모델을 의미한다.State-based architecture model refers to an architecture model in which product line engineering can model a system based on a state-based system and integrate domain components around a state-based model.

상태 기반 아키텍처 모델을 개발하기 위해서는 우선 상태 중심으로 시스템을 모델링 할 수 있어야 한다. 대표적인 상태 기반의 모델링 도구는 스테이트 차트(Statechart)와 UML(unified modeling language)의 스테이트 다이어그램(State Diagram) 이 존재한다. To develop a state-based architecture model, you must first be able to model your system around a state. Representative state-based modeling tools include statechart and state diagram of unified modeling language (UML).

하지만, 제품라인을 지원하기 위해서는 작성된 상태 기반 아키텍처 모델에 대한 파라메터라이즈(parameterized)등의 기술을 이용하여 인스턴스를 생성할 수 있어야 하지만 위의 도구들은 이런 기능들을 지원하지 않는다.However, to support the product line, you need to be able to instantiate using a technique such as parameterized to the state-based architecture model written, but the above tools do not support these features.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 상태 기반 아키텍쳐 모델을 이용하여 제품라인 애플리케이션을 개발하는 애플리케이션 개발 방법 방법을 제공하는 데 있다.An object of the present invention for solving the above problems is to provide an application development method method for developing a product line application using a state-based architecture model.

상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 상태 기반 아키텍쳐 모델을 이용하여 제품라인 애플리케이션을 개발하는 애플리케이션 개발 장치를 제공하는데 있다.Another object of the present invention for solving the above problems is to provide an application development apparatus for developing a product line application using a state-based architecture model.

상기한 본 발명의 목적을 달성하기 위한 본 발명의 일 실시예에 따른 애플리케이션 개발 방법은, 상기 적어도 하나의 상태 기반 다이어그램에서 상기 휘처 모델에서 선택된 휘처에 상응하는 상태를 추출하여 제 1 인스턴스를 생성하는 단계, 상기 데이터 흐름 다이어그램에서 상기 휘처 모델에서 선택된 휘처에 상응하는 프로세스를 추출하여 제 2 인스턴스를 생성하는 단계 및 상기 제 1 인스턴스의 상태를 이용하여 제 1 소스 코드를 생성하고, 상기 제 2 인스턴스의 프로세스를 이용하여 제 2 소스 코드를 생성하는 단계를 포함한다.Application development method according to an embodiment of the present invention for achieving the above object of the present invention, by extracting a state corresponding to the feature selected in the feature model in the at least one state-based diagram to generate a first instance Extracting a process corresponding to a feature selected from the feature model in the data flow diagram, generating a second instance; generating a first source code using the state of the first instance, and generating a second instance of the second instance. Generating second source code using the process.

상기한 본 발명의 다른 목적을 달성하기 위한 본 발명의 일 실시예에 따른 애플리케이션 개발 장치는 특정 애플리케이션에 대한 적어도 하나의 상태 기반 다이어그램을 상태 기반 다이어그램 인스턴스 생성부로 제공하고, 상기 적어도 하나의 상태 기반 다이어그램에 기초하여 생성된 데이터 흐름 다이어그램을 데이터 흐름 다이어그램 생성부로 제공하는 다이어그램 제공부, 선택 휘처 정보를 수신하고, 상기 제공 받은 상태 기반 다이어그램에서 상기 선택 휘처 정보에 상응하는 상태를 추출하여 제 1 인스턴스를 생성하는 상태 기반 다이어그램 인스턴스 생성부, 상기 제공 받은 데이터 흐름 다이어그램에서 상기 선택 휘처 정보에 상응하는 프로세스를 추출하여 제 2 인스턴스를 생성하는 데이터 흐름 다이어그램 생성부 및 상기 제 1 인스턴스의 상태를 이용하여 제 1 소스 코드를 생성하고, 상기 제 2 인스턴스의 프로세스를 이용하여 제 2 소스 코드를 생성하는 소스 코드 생성부를 포함한다.Application development apparatus according to an embodiment of the present invention for achieving another object of the present invention to provide at least one state-based diagram for a specific application to the state-based diagram instance generator, the at least one state-based diagram A diagram providing unit for providing a data flow diagram generated based on the data flow diagram generation unit, receiving selection feature information, and extracting a state corresponding to the selection feature information from the provided state-based diagram to generate a first instance. State based diagram instance generation unit, a data flow diagram generation unit for generating a second instance by extracting a process corresponding to the selection feature information from the provided data flow diagram, and the state of the first instance Generating a first source code by using; and generating a second source code by using the process of the second instance.

상기와 같은 본 발명에 따른 애플리케이션 개발 방법 및 이를 위한 장치를 이용할 경우에는 안정적인 아키텍처 모델을 이용하여 제품라인 기반으로 어플리케이션의 개발을 할 수 있고, 상태 기반으로 아키텍처를 명세할 수 있으며, 도메인 분석 과정의 결과물인 휘처 모델과의 일관성을 검사할 수 있다.When using the application development method and apparatus therefor according to the present invention as described above, the application can be developed based on the product line using a stable architecture model, the architecture can be specified based on the state, and the domain analysis process You can check the consistency with the resulting feature model.

도 1은 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 구성을 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 다이어그램 제공부의 구성을 나타내는 블럭도이다.
도 3은 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 상태 기반 다이어그램 인스턴스 생성부가 수신한 상태 기반 다이어그램을 나타내는 개념도이다.
도 4는 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 상태 기반 다이어그램 인스턴스 생성부가 생성한 상태 기반 다이어그램의 인스턴스를 나타내는 개념도이다.
도 5는 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 상태 기반 다이어그램 인스턴스 생성부가 생성한 상태 기반 다이어그램의 인스턴스를 나타내는 개념도이다.
도 6은 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 데이터 흐름 다이어그램 인스턴스 생성부가 수신한 데이터 흐름 다이어그램을 나타내는 개념도이다.
도 7은 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 데이터 흐름 다이어그램 인스턴스 생성부가 생성한 데이터 흐름 다이어그램의 인스턴스를 나타내는 개념도이다.
도 8은 본 발명의 일 실시예에 따른 애플리케이션 개발 방법을 설명하기 위한 흐름도이다.
1 is a block diagram showing the configuration of an application development apparatus according to an embodiment of the present invention.
2 is a block diagram showing a configuration of a diagram providing unit of an application development apparatus according to an embodiment of the present invention.
3 is a conceptual diagram illustrating a state-based diagram received by a state-based diagram instance generator of an application development apparatus according to an embodiment of the present invention.
4 is a conceptual diagram illustrating an instance of a state-based diagram generated by a state-based diagram instance generator of an application development apparatus according to an embodiment of the present invention.
5 is a conceptual diagram illustrating an instance of a state-based diagram generated by a state-based diagram instance generator of an application development apparatus according to an embodiment of the present invention.
6 is a conceptual diagram illustrating a data flow diagram received by a data flow diagram instance generator of an application development apparatus according to an embodiment of the present invention.
7 is a conceptual diagram illustrating an instance of a data flow diagram generated by a data flow diagram instance generator of an application development apparatus according to an embodiment of the present invention.
8 is a flowchart illustrating an application development method according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 구성을 나타내는 블록도이다.1 is a block diagram showing the configuration of an application development apparatus according to an embodiment of the present invention.

도 1을 참조하면, 애플리케이션 개발 장치는 다이어그램 제공부(100), 상태 기반 다이어그램 인스턴스 생성부(110), 데이터 흐름 다이어그램 인스턴스 생성부(120), 인스턴스 검증부(130) 및 소스 코드 생성부(140)를 포함하여 구성될 수 있다.Referring to FIG. 1, an application development apparatus includes a diagram provider 100, a state-based diagram instance generator 110, a data flow diagram instance generator 120, an instance verifier 130, and a source code generator 140. It may be configured to include).

다이어그램 제공부(100)는 상태 기반 다이어그램 인스턴스 생성부(110)로 휘처 모델의 휘처가 바인딩된 상태 기반 다이어그램을 제공할 수 있고, 데이터 흐름 다이어그램 인스턴스 생성부(120)로 휘처 모델의 휘처가 바인딩된 데이터 흐름 다이어그램을 제공할 수 있다.The diagram provider 100 may provide a state-based diagram in which the features of the feature model are bound to the state-based diagram instance generator 110, and the features of the feature model are bound to the data flow diagram instance generator 120. You can provide a data flow diagram.

상태 기반 다이어그램 인스턴스 생성부(110)는 다이어그램 제공부(100)로부터 휘처 모델의 휘처가 바인딩된 상태 기반 다이어그램을 수신하고, 사용자로부터 휘처 모델의 휘처 중 선택된 휘처에 관한 선택 휘처 정보를 수신한다. The state-based diagram instance generating unit 110 receives a state-based diagram in which the features of the feature model are bound from the diagram providing unit 100, and receives selection feature information regarding the selected feature among the features of the feature model from the user.

상태 기반 다이어그램 인스턴스 생성부(110)는 수신한 휘처 모델의 휘처가 바인딩된 상태 기반 다이어그램에서 선택 휘처 정보에 상응하는 상태를 추출하여 상태 기반 다이어그램의 인스턴스를 생성할 수 있다.The state-based diagram instance generator 110 may generate an instance of the state-based diagram by extracting a state corresponding to the selected feature information from the state-based diagram to which the feature of the received feature model is bound.

여기서, 상태 기반 다이어그램은 소프트웨어의 실행을 “상태”단위로 표현한 다이어그램이다.Here, state-based diagrams are diagrams that represent the execution of software in "state" units.

여기서, 휘처 모델은 소프트웨어 제품라인 공학에서 도메인에 속한 여러 시스템 간의 공통점과 차이점을 “휘처”단위로 나타내고, 휘처 사이의 관계를 표현하는 분석 모델이다.Here, the feature model is an analytical model that expresses the commonalities and differences among the various systems in the domain in software product line engineering in “feature” units and expresses the relationship between the features.

여기서, 상태 기반 다이어그램의 인스턴스는 상태 기반 다이어그램에 포함되는 다이어그램으로 상태 기반 다이어그램의 상태 중 적어도 하나의 상태로 구성될 수 있다.Here, the instance of the state-based diagram is a diagram included in the state-based diagram may be configured with at least one state of the state of the state-based diagram.

상태 기반 다이어그램 인스턴스 생성부(110)는 생성한 상태 기반 다이어그램의 인스턴스를 인스턴스 검증부(130)로 제공할 수 있다. 이때, 상태 기반 다이어그램 인스턴스 생성부(110)는 상태 기반 다이어그램의 인스턴스를 중립 형식(neutural format)으로 사용될 수 있는 XML 파일로 변환한 후 인스턴스 검증부(130)로 제공할 수 있다.The state-based diagram instance generator 110 may provide an instance of the generated state-based diagram to the instance verifier 130. In this case, the state-based diagram instance generation unit 110 may convert the instance of the state-based diagram into an XML file that may be used in a neutral format and then provide it to the instance verification unit 130.

데이터 흐름 다이어그램 인스턴스 생성부(120)는 다이어그램 제공부(100)로부터 휘처 모델의 휘처가 바인딩된 데이터 흐름 다이어그램을 수신하고, 사용자로부터 휘처 모델의 휘처 중 선택된 휘처에 관한 선택 휘처 정보를 수신한다.The data flow diagram instance generator 120 receives a data flow diagram to which the features of the feature model are bound from the diagram provider 100, and receives selection feature information regarding the selected feature among the features of the feature model from the user.

데이터 흐름 다이어그램 인스턴스 생성부(120)는 수신한 휘처 모델의 휘처가 바인딩된 데이터 흐름 다이어그램에서 선택 휘처 정보에 상응하는 프로세스를 추출하여 상태 기반 다이어그램의 인스턴스를 생성할 수 있다.The data flow diagram instance generating unit 120 may generate an instance of the state-based diagram by extracting a process corresponding to the selection feature information from the data flow diagram to which the feature of the received feature model is bound.

여기서, 데이터 흐름 다이어그램은 소프트웨어의 실행을 “프로세스”단위로 표현한 다이어그램이다.Here, the data flow diagram is a diagram representing the execution of the software in "process" units.

여기서, 데이터 흐름 다이어그램의 인스턴스는 데이터 흐름 다이어그램에 포함되는 다이어그램으로 데이터 흐름 다이어그램의 프로세스 중 적어도 하나의 프로세스로 구성될 수 있다.Here, the instance of the data flow diagram is a diagram included in the data flow diagram and may be configured with at least one of the processes of the data flow diagram.

데이터 흐름 다이어그램 인스턴스 생성부(120)는 생성한 데이터 흐름 다이어그램의 인스턴스를 인스턴스 검증부(130)로 제공할 수 있다. 이때, 데이터 흐름 다이어그램 인스턴스 생성부(120) 데이터 흐름 다이어그램의 인스턴스를 중립 형식으로 사용될 수 있는 XML 파일로 변환한 후 인스턴스 검증부(130)로 제공할 수 있다.The data flow diagram instance generator 120 may provide an instance of the generated data flow diagram to the instance verifier 130. In this case, the data flow diagram instance generator 120 may convert the instance of the data flow diagram into an XML file that may be used in a neutral format and then provide the instance to the instance verifier 130.

인스턴스 검증부(130)는 상태 기반 다이어그램 인스턴스 생성부(110)에 의해 중립 형식으로 변형된 상태 기반 다이어그램의 인스턴스 및 데이터 흐름 다이어그램 인스턴스 생성부(120)에 의해 중립 형식으로 변형된 데이터 흐름 다이어그램의 인스턴스를 수신하고, 미리 결정된 일관성 규정에 따라 상태 기반 다이어그램의 인스턴스 및 데이터 흐름 다이어그램 인스턴스를 검증할 수 있다. The instance verifier 130 is an instance of the state-based diagram transformed into a neutral form by the state-based diagram instance generator 110 and an instance of the data flow diagram transformed into a neutral form by the data flow diagram instance generator 120. And verify the instance of the state-based diagram and the data flow diagram instance according to a predetermined consistency rule.

소스 코드 생성부(140)는 인스턴스 검증부(130)에 의해 검증된 상태 기반 다이어그램 인스턴스 및 데이터 흐름 다이어그램 인스턴스를 수신하고, 수신한 상태 기반 다이어그램 인스턴스의 상태를 이용하여 제 1 소스 코드를 생성하고, 데이터 흐름 다이어그램의 인스턴스의 프로세스를 이용하여 제 2 소스 코드를 생성할 수 있다.The source code generator 140 receives the state-based diagram instance and the data flow diagram instance verified by the instance verifier 130, generates the first source code by using the state of the received state-based diagram instance, The process of an instance of the data flow diagram can be used to generate the second source code.

먼저, 소스 코드 생성부(140)는 상태 기반 다이어그램 인스턴스에 포함된 각각의 상태에 상응하는 상태 클래스를 추출하며, 상태 클래스를 상태의 스크립트에 포함된 적어도 하나의 메소드로 구성하여 제 1 소스 코드를 생성할 수 있다. 여기서, 상태 클래스에 포함된 적어도 하나의 메소드는 후술될 프로세스 클래스에 포함된 적어도 하나의 메소드를 호출할 수 있다. 즉, 상태의 스크립트에 포함된 적어도 하나의 메소드는 프로세스의 스크립트에 포함된 적어도 하나의 메소드일 수 있다.First, the source code generator 140 extracts a state class corresponding to each state included in the state-based diagram instance, and configures the first source code by configuring the state class as at least one method included in the script of the state. Can be generated. Here, at least one method included in the state class may call at least one method included in the process class to be described later. That is, at least one method included in the script of the state may be at least one method included in the script of the process.

또한, 소스 코드 생성부(140)는 데이터 흐름 다이어그램 인스턴스에 포함된 각각의 프로세스에 상응하는 프로세스 클래스를 추출하며, 프로세스 클래스를 프로세스의 스크립트에 포함된 적어도 하나의 메소드로 구성하여 제 2 소스 코드를 생성할 수 있다.
In addition, the source code generator 140 extracts a process class corresponding to each process included in the data flow diagram instance, and configures the process class as at least one method included in the script of the process to form the second source code. Can be generated.

도 2는 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 다이어그램 제공부의 구성을 나타내는 블럭도이다.2 is a block diagram showing a configuration of a diagram providing unit of an application development apparatus according to an embodiment of the present invention.

도 2를 참조하면, 다이어그램 제공부(100)는 제 1 휘처 모델 적용 유닛(111), 제 2 휘처 모델 적용 유닛(113), 다이어그램 정보 추출 유닛(115) 및 일관성 검증 유닛(117)을 포함하여 구성될 수 있다. Referring to FIG. 2, the diagram providing unit 100 includes a first feature model applying unit 111, a second feature model applying unit 113, a diagram information extracting unit 115, and a consistency verification unit 117. Can be configured.

제 1 휘처 모델 적용 유닛(111)은 후보 상태 기반 다이어그램 및 휘처 모델을 수신하고, 수신한 휘처 모델의 휘처를 후보 상태 기반 다이어그램에 적용하여 휘처가 바인딩된 상태 기반 다이어그램을 생성하고, 생성한 상태 기반 다이어그램을 일관성 검증 유닛(117)으로 제공할 수 있다.The first feature model applying unit 111 receives the candidate state-based diagram and the feature model, applies the features of the received feature model to the candidate state-based diagram, generates a state-based diagram to which the features are bound, and generates the state-based diagram. The diagram may be provided to the consistency verification unit 117.

예를 들어, 제 1 휘처 모델 적용 유닛(111)은 후보 상태 기반 다이어그램 및 휘처 모델을 수신하고, 수신한 휘처 모델의 휘처를 후보 상태 기반 다이어그램의 특정 상태에서 다른 상태로 전이되는데 사용되는 상태 전이에 관한 정보에 적용하여 휘처가 바인딩된 상태 기반 다이어그램을 생성할 수 있다. 휘처가 바인딩된 상태 기반 다이어그램은 후술될 도 3에서 보다 구체적으로 설명하기로 한다.For example, the first feature model applying unit 111 receives the candidate state-based diagram and the feature model, and is used to transition the features of the received feature model from one state of the candidate state-based diagram to another. You can apply this information to create state-based diagrams with bound features. The state-based diagram in which the feature is bound will be described in more detail with reference to FIG. 3.

제 2 휘처 모델 적용 유닛(113)은 후보 데이터 흐름 다이어그램 및 휘처 모델을 수신하고, 수신한 휘처 모델의 휘처를 후보 데이터 흐름 다이어그램에 적용하여 휘처가 바인딩된 데이터 흐름 다이어그램을 생성하고, 생성한 데이터 흐름 다이어그램을 일관성 검증 유닛(117)으로 제공할 수 있다.The second feature model application unit 113 receives the candidate data flow diagram and the feature model, applies the features of the received feature model to the candidate data flow diagram, generates a feature-bound data flow diagram, and generates the generated data flow diagram. The diagram may be provided to the consistency verification unit 117.

예를 들어, 제 2 휘처 모델 적용 유닛(113)은 후보 데이터 흐름 다이어그램 및 휘처 모델을 수신하고, 수신한 휘처 모델의 휘처를 후보 데이터 흐름 다이어그램의 특정 프로세스에서 다른 프로세스로 제공되는 데이터에 관한 정보에 적용하여 휘처가 바인딩된 데이터 흐름 다이어그램을 생성할 수 있다. 휘처가 바인딩된 데이터 흐름 다이어그램은 후술될 도 6에서 보다 구체적으로 설명하기로 한다.For example, the second feature model applying unit 113 receives the candidate data flow diagram and the feature model, and adds the features of the received feature model to information about the data provided from the specific process of the candidate data flow diagram to another process. You can apply it to create a data flow diagram with bound features. The feature-bound data flow diagram will be described in more detail later with reference to FIG. 6.

다이어그램 정보 추출 유닛(115)은 후보 상태 기반 다이어그램을 수신하고, 수신한 후보 상태 기반 다이어그램에서 다이어그램 정보를 추출하고, 추출한 다이어그램 정보를 일관성 검증 유닛(117)으로 제공할 수 있다.The diagram information extraction unit 115 may receive the candidate state-based diagram, extract diagram information from the received candidate state-based diagram, and provide the extracted diagram information to the consistency verification unit 117.

예를 들어, 다이어그램 정보 추출 유닛(115)은 후보 상태 기반 다이어그램을 수신하고, 수신한 후보 상태 기반 다이어그램의 상태 중 특정 상태에서 다른 상태로 전이되는데 사용되는 상태 전이에 관한 정보, 예를 들어 전이 조건을 추출하고, 추출한 상태 전이에 관한 정보를 일관성 검증 유닛(117)으로 제공할 수 있다.For example, the diagram information extracting unit 115 receives a candidate state based diagram, and information about a state transition, for example, a transition condition, used to transition from one state to another among the states of the received candidate state based diagram. May be extracted and information about the extracted state transition may be provided to the consistency verification unit 117.

또한, 다이어그램 정보 추출 유닛(115)은 후보 데이터 흐름 다이어그램을 수신하고, 수신한 후보 데이터 흐름 다이어그램에서 다이어그램 정보를 추출하여 저장할 수 있다. 예를 들어, 다이어그램 정보 추출 유닛(115)은 후보 데이터 흐름 다이어그램을 수신하고, 수신한 후보 데이터 흐름 다이어그램의 프로세스 중 특정 프로세스에서 다른 프로세스로 전송되는 데이터에 관한 정보를 추출하여 저장할 수 있다.In addition, the diagram information extraction unit 115 may receive the candidate data flow diagram and extract and store diagram information from the received candidate data flow diagram. For example, the diagram information extraction unit 115 may receive the candidate data flow diagram, and extract and store information about data transmitted from one process to another process among the processes of the received candidate data flow diagram.

일관성 검증 유닛(117)은 제 1 휘처 모델 적용 유닛(111)으로부터 휘처 모델의 휘처가 바인딩된 상태 기반 다이어그램을 수신하고, 제 2 휘처 모델 적용 유닛(113)으로부터 휘처 모델의 휘처가 바인딩된 데이터 흐름 다이어그램을 수신한다. 또한, 일관성 검증 유닛(117)은 휘처 모델을 수신하고, 다이어그램 정보 추출 유닛(115)으로부터 휘처 모델의 휘처가 반영되지 않은 상태인 상태 기반 다이어그램 및 데이터 흐름 다이어그램의 다이어그램 정보를 수신한다.The consistency verification unit 117 receives a state-based diagram in which the features of the feature model are bound from the first feature model applying unit 111, and the data flow of the features of the feature model is bound from the second feature model applying unit 113. Receive the diagram. In addition, the consistency verification unit 117 receives the feature model, and receives diagram information of the state-based diagram and the data flow diagram in which the feature of the feature model is not reflected from the diagram information extraction unit 115.

이후, 일관성 검증 유닛(117)은 휘처 모델 및 다이어그램 정보를 기초로 휘처 모델의 휘처가 바인딩된 상태 기반 다이어그램 및 휘처 모델의 휘처가 바인딩된 데이터 흐름 다이어그램의 일관성을 검증한다.Thereafter, the consistency verification unit 117 verifies the consistency of the state-based diagram in which the features of the feature model are bound and the data flow diagram in which the features of the feature model are bound based on the feature model and the diagram information.

또한, 일관성 검증 유닛(117)은 휘처 모델의 휘처가 바인딩된 상태 기반 다이어그램을 상태 기반 다이어그램 인스턴스 생성부(110)로 제공할 수 있고, 휘처 모델의 휘처가 바인딩된 데이터 흐름 다이어그램을 데이터 흐름 다이어그램 인스턴스 생성부(120)로 제공할 수 있다.
In addition, the consistency verification unit 117 may provide a state-based diagram in which the feature of the feature model is bound to the state-based diagram instance generator 110, and provide a data flow diagram in which the feature of the feature model is bound to the data flow diagram instance. It may be provided to the generation unit 120.

도 3은 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 상태 기반 다이어그램 인스턴스 생성부가 수신한 상태 기반 다이어그램을 나타내는 개념도이다.3 is a conceptual diagram illustrating a state-based diagram received by a state-based diagram instance generator of an application development apparatus according to an embodiment of the present invention.

도 3을 참조하면, 상태 기반 다이어그램 인스턴스 생성부(110)가 수신한 상태 기반 다이어그램은 적어도 하나의 상태(state)로 구성되며, 적어도 하나의 상태 중 특정 상태에서 다른 상태로 전이되는데 사용되는 상태 전이 (transition)와 관련된 정보는 트리거(trigger Event), 조건(condition), 액션(action) 중 적어도 하나의 가변요소로 구성된다. Referring to FIG. 3, the state-based diagram received by the state-based diagram instance generator 110 includes at least one state, and is a state transition used to transition from one state to another of at least one state. The information related to the transition is composed of at least one variable element of a trigger event, a condition, and an action.

상태 기반 다이어그램에서 상태는 모서리가 둥근 사각형으로 나타내고(210, 220), 모서리가 둥근 사각형 간의 상태 전이는 화살표로 나타낼 수 있다. 여기서, 상태들 중에서 전이가 시작되는 상태(210)를 구별하기 위해 속을 칠한 원과 연결된 화살표를 이용하여 표시할 수 있다.In a state-based diagram, states are represented by rounded rectangles (210 and 220), and state transitions between rounded rectangles can be represented by arrows. Here, it may be displayed using an arrow connected to a painted circle to distinguish the state 210 from which the transition starts.

도 3의 실시예에서, 상태 기반 다이어그램 인스턴스 생성부(110)가 다이어그램 제공부(100)로부터 수신한 상태 기반 다이어그램은 State A(210)와 State B(220)로 구성되며, State A(210)에서 State B(220)로 전이되는데 사용되는 상태 전이에 관한 정보인 조건 및 액션(210a)이 도시되어 있으며, State B(220)에서 State A(210)로 전이되는데 사용되는 상태 전이에 관한 정보인 조건 및 액션(220a)이 도시되어 있다. In the embodiment of FIG. 3, the state-based diagram received by the state-based diagram instance generator 110 from the diagram provider 100 is composed of State A 210 and State B 220, and State A 210. Condition and action 210a, which is information about a state transition used to transition to State B 220, is shown, and information about a state transition used to transition from State B 220 to State A 210 is shown. Conditions and actions 220a are shown.

여기서, State A(210)에서 State B(220)로 전이되도록 State A(210)를 전이의 시작점으로 지정하기 위해 State A(210)에는 속을 칠한 원이 되어있다.Here, the state A 210 is filled with a circle to designate the state A 210 as the starting point of the transition from the state A 210 to the state B 220.

또한, 도 3의 실시예에서 상태 기반 다이어그램 인스턴스 생성부(110)가 다이어그램 제공부(100)로부터 수신한 상태 기반 다이어그램은 휘처 모델의 휘처가 바인딩된 상태 기반 다이어그램이다. 예를 들어, 휘처 모델의 휘처 F2는 상태 기반 다이어그램의 State A(210)에서 State B(220)로 전이되는데 사용되는 상태 전이에 관한 정보인 Condition 및 Action 2에 바인딩되어 있고, 휘처 모델의 휘처 F3은 상태 기반 다이어그램의 State B(220)에서 State A(210)로 전이되는데 사용되는 상태 전이에 관한 정보인 Event B에 바인딩되어 있다. In addition, in the embodiment of FIG. 3, the state-based diagram received by the state-based diagram instance generator 110 from the diagram provider 100 is a state-based diagram in which the features of the feature model are bound. For example, feature F2 in the feature model is bound to Condition and Action 2, which is information about the state transition used to transition from State A 210 to State B 220 in the state-based diagram, and feature F3 in the feature model. Is bound to Event B, which is information about the state transition used to transition from State B 220 to State A 210 in a state based diagram.

상태 기반 다이어그램을 구성하는 적어도 하나의 상태에는 해당 상태의 상태에 따른 행위를 정의할 수 있는 함수(function)를 저장하는 스크립트를 포함하고 있다. 예를 들어, 상태 기반 다이어그램을 구성하는 Ready 상태는 Ready 상태에 따른 실행 준비를 정의할 수 있는 함수를 저장하는 스크립트를 포함하고 있다.At least one state of the state-based diagram includes a script that stores a function that can define an action according to the state of the state. For example, the Ready state, which makes up a state-based diagram, contains a script that stores a function that allows you to define the ready to run state for the Ready state.

이러한 스크립트에서 사용되는 함수는 후술될 데이터 흐름 다이어그램의 프로세스에 정의되어야 한다. 스크립트는 다양한 형태로 표기될 수 있으며 <표 1>은 상태에 포함된 스크립트의 예를 나타낸다.
The functions used in these scripts must be defined in the process of the data flow diagram described below. Scripts can be represented in various forms, and Table 1 shows examples of scripts included in the state.

Figure 112011099722353-pat00001
Figure 112011099722353-pat00001

도4는 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 상태 기반 다이어그램 인스턴스 생성부가 생성한 상태 기반 다이어그램의 인스턴스를 나타내는 개념도이다.4 is a conceptual diagram illustrating an instance of a state-based diagram generated by a state-based diagram instance generator of an application development apparatus according to an embodiment of the present invention.

도 4를 참조하면, 상태 기반 다이어그램 인스턴스 생성부(110)는 다이어그램 제공부(100)로부터 수신한 상태 기반 다이어그램에서 휘처 모델에서 선택된 휘처에 상응하는 상태를 추출하여 상태 기반 다이어그램의 인스턴스를 생성할 수 있다. Referring to FIG. 4, the state-based diagram instance generator 110 may generate an instance of a state-based diagram by extracting a state corresponding to a feature selected from a feature model from a state-based diagram received from the diagram provider 100. have.

도 4의 상태 기반 다이어그램은 상태 기반 다이어그램 인스턴스 생성부(110)가 상태 기반 다이어그램에서 휘처 모델의 휘처 F1 내지 F3 중 선택된 휘처 F1에 상응하는 상태를 추출하여 생성한 상태 기반 다이어그램의 인스턴스이다. The state-based diagram of FIG. 4 is an instance of the state-based diagram generated by the state-based diagram instance generator 110 by extracting a state corresponding to the selected feature F1 among the features F1 to F3 of the feature model in the state-based diagram.

상태 기반 다이어그램 인스턴스 생성부(110)는 도 3의 상태 기반 다이어그램에서 휘처 모델에서 선택되지 않은 휘처인 F2 및 F3이 바인딩된 상태 전이를 위한 정보를 제거하여 상태를 추출하고, 추출한 상태를 이용하여 도 4의 상태 기반 다이어그램의 인스턴스를 생성할 수 있다. The state-based diagram instance generating unit 110 extracts a state by removing information for state transition to which the features F2 and F3, which are not selected in the feature model, are bound in the state-based diagram of FIG. 3, and extracts the state using the extracted state. You can create an instance of a state-based diagram of 4.

즉, 도 3의 상태 기반 다이어그램에서 State A(210)에서 State B(220)로 전이되는데 사용되는 상태 전이에 관한 정보인 조건 및 액션 2에는 휘처 모델에서 선택되지 않은 휘처 F2가 바인딩되어 있다. That is, in the state-based diagram of FIG. 3, a feature F2 that is not selected in the feature model is bound to the condition and action 2, which are information about the state transition used to transition from the state A 210 to the state B 220.

따라서, 상태 기반 다이어그램 인스턴스 생성부(110)는 도 3의 상태 기반 다이어그램에서 휘처 F2가 바인딩된 상태 전이에 관련된 정보인 조건 및 액션 2를 제거하여 도 4의 상태 기반 다이어그램의 인스턴스에서와 같이 State A(210)에서 State B(220)로 전이되는데 사용되는 상태 전이에 관한 정보인 Event A/Action 1(210b)로 결정한다.Therefore, the state-based diagram instance generator 110 removes the condition and action 2 which are information related to the state transition in which the feature F2 is bound in the state-based diagram of FIG. In step 210, it is determined as Event A / Action 1 (210b) that is information about the state transition used to transition to State B (220).

또한, 도 3의 상태 기반 다이어그램에서 State B(220)에서 State A(210)로 전이되는데 사용되는 상태 전이에 관한 정보인 Event B에는 휘처 모델에서 선택되지 않은 휘처 F3가 바인딩 되어있다. Also, in the state-based diagram of FIG. 3, the event F, which is information about the state transition used to transition from the state B 220 to the state A 210, is bound to the feature F3 not selected in the feature model.

따라서, 상태 기반 다이어그램 인스턴스 생성부(110)는 도 3의 상태 기반 다이어그램에서 휘처 F3이 바인딩된 상태 전이와 관련된 정보인 이벤트를 제거하여 도 4의 상태 기반 다이어그램의 인스턴스에서와 같이 State B(220)에서 State A(210)로 전이되는데 사용되는 상태 전이에 관한 정보를 Event A(220b)로 결정할 수 있다.Accordingly, the state-based diagram instance generator 110 removes an event which is information related to a state transition in which the feature F3 is bound in the state-based diagram of FIG. Information about the state transition used to transition to State A 210 may be determined as Event A 220b.

도 5는 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 상태 기반 다이어그램 인스턴스 생성부가 생성한 상태 기반 다이어그램의 인스턴스를 나타내는 개념도이다.5 is a conceptual diagram illustrating an instance of a state-based diagram generated by a state-based diagram instance generator of an application development apparatus according to an embodiment of the present invention.

도 5를 참조하면, 상태 기반 다이어그램 인스턴스 생성부(110)는 다이어그램 제공부(100)로부터 수신한 상태 기반 다이어그램에서 휘처 모델에서 선택된 휘처에 상응하는 상태를 추출하여 상태 기반 다이어그램의 인스턴스를 생성할 수 있다. Referring to FIG. 5, the state-based diagram instance generator 110 may generate an instance of a state-based diagram by extracting a state corresponding to a feature selected from a feature model from a state-based diagram received from the diagram provider 100. have.

도 5의 상태 기반 다이어그램은 상태 기반 다이어그램 인스턴스 생성부(110)가 도 3의 상태 기반 다이어그램에서 휘처 모델의 휘처 F1 내지 F3 중 선택된 휘처가 존재하지 않을 경우의 상태 기반 다이어그램의 인스턴스이다. The state-based diagram of FIG. 5 is an instance of the state-based diagram when the state-based diagram instance generator 110 does not have a selected feature among the features F1 to F3 of the feature model in the state-based diagram of FIG. 3.

상태 기반 다이어그램 인스턴스 생성부(110)는 도 3의 상태 기반 다이어그램에서 휘처 모델에서 선택되지 않은 휘처인 F1내지 F3이 바인딩된 상태 전이를 위한 정보를 제거하여 상태를 추출하고, 추출한 상태를 이용하여 도 4와 같이 State A(210)만 존재하는 상태 기반 다이어그램의 인스턴스를 생성할 수 있다. The state-based diagram instance generating unit 110 extracts the state by removing information for the state transition to which the features F1 to F3, which are not selected in the feature model, in the state-based diagram of FIG. 3 are extracted, and uses the extracted state. As shown in FIG. 4, an instance of a state-based diagram in which only State A 210 exists may be created.

즉, 상태 기반 다이어그램 인스턴스 생성부(110)는 도 3의 상태 기반 다이어그램에서 휘처 모델에서 선택된 휘처에 상응하는 상태를 추출하여 도 5의 상태 기반 다이어그램의 인스턴스를 생성할 수 있다.
That is, the state-based diagram instance generator 110 may generate an instance of the state-based diagram of FIG. 5 by extracting a state corresponding to the feature selected from the feature model from the state-based diagram of FIG. 3.

도 6은 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 데이터 흐름 다이어그램 인스턴스 생성부가 수신한 데이터 흐름 다이어그램을 나타내는 다이어그램이다.6 is a diagram illustrating a data flow diagram received by a data flow diagram instance generator of an application development apparatus according to an embodiment of the present invention.

도 6을 참조하면, 데이터 흐름 다이어그램 인스턴스 생성부(120)가 다이어그램 제공부(100)로부터 수신한 데이터 흐름 다이어그램은 참조되는 상태 기반 다이어그램 식별자(500), 익스터널 시스템(External System)(510), 프로세스(Process)(520), 저장소(Repository)(530) 및 데이터로 구성되며, 데이터는 익스터널 시스템에서 프로세스로 제공될 수 있고, 프로세스에서 저장소로 제공될 수도 있고, 데이터 흐름 다이어그램을 구성하는 프로세스 중 특정 프로세스에서 다른 프로세스로 제공될 수도 있다.Referring to FIG. 6, the data flow diagram received by the data flow diagram instance generator 120 from the diagram provider 100 may include a state-based diagram identifier 500, an external system 510, Process 520, Repository 530, and data, which may be provided as a process in an external system, may be provided as a repository in a process, or the process of constructing a data flow diagram It may be provided from one process to another process.

도 6의 실시예에서, 데이터 흐름 다이어그램 인스턴스 생성부(120)가 다이어그램 제공부(100)로부터 수신한 데이터 흐름 다이어그램은 휘처 모델의 휘처가 바인딩된 데이터 흐름 다이어그램이다. 예를 들어, 휘처 모델의 휘처 F1은 데이터 흐름 다이어그램의 Process A(520)에서 Process B(540)로 제공되는 data B에 바인딩되어 있고, Process B(540)에 바인딩되어 있으며, Process B(540)에 제공되는 data C에 바인딩되어 있다.In the embodiment of FIG. 6, the data flow diagram received by the data flow diagram instance generator 120 from the diagram provider 100 is a data flow diagram to which the features of the feature model are bound. For example, feature F1 of the feature model is bound to data B provided to Process B 540 in Process A 520 of the data flow diagram, bound to Process B 540, and Process B 540 It is bound to data C provided in.

데이터 흐름 다이어그램을 구성하는 적어도 하나의 프로세스는 함수로써의 역할을 수행하거나 미리 개발된 재사용 가능한 컴포넌트들을 연결하고 통합하는 중요한 역할을 수행하는 스크립트를 포함하고 있다. At least one process of constructing a data flow diagram includes scripts that serve as functions or play an important role in connecting and integrating pre-developed reusable components.

이러한 스크립트의 구성요소에 대한 구분은 <표 2>와 같다.
The classification of the script components is shown in <Table 2>.

Figure 112011099722353-pat00002
Figure 112011099722353-pat00002

<표 2>를 참조하면, 스크립트의 구성요소는 Input, Output, Var, Algorithm 및 Native Statements로 구성된다. Input에는 입력 데이터에 대한 타입이 지정되고, Output에는 출력 데이터에 대한 타입이 지정되며, Var에는 프로세스 내부에서 사용할 변수의 타입을 미리 지정될 수 있다. Referring to Table 2, the components of the script consist of Input, Output, Var, Algorithm, and Native Statements. Input specifies the type of input data, Output specifies the type of output data, and Var can specify the type of variable to be used in the process in advance.

또한, Algorithm에는 Input에 지정된 입력 데이터, Output에 지정된 출력 데이터, Var에 지정된 내부변수를 이용한 알고리즘이 기술될 수 있고, Native Statements에는 알고리즘 부분에 포함될 수 있는 내부 파트로 특정 프로그램 언어의 문법을 그대로 이용할 수 있다.In addition, Algorithm can describe an algorithm using input data specified in Input, output data specified in Output, and internal variable specified in Var. Native statements can use the syntax of a specific programming language as internal parts that can be included in the algorithm part. Can be.

이러한 스크립트의 문법적 요소는 자유롭게 정의될 수 있다. 위의 요소들을 반영하여 구현된 스크립트의 간단한 예는 <표 3>과 같다.
The grammatical elements of these scripts can be freely defined. <Table 3> is a simple example of a script implemented by reflecting the above elements.

Figure 112011099722353-pat00003
Figure 112011099722353-pat00003

<표 3>을 참조하면, Input 에는 입력 데이터인 시간을 나타내는 변수 time이 지정되어 있고, Output에는 출력 데이터인 속도를 나타내는 변수 velocity가 지정되어 있고, Var에는 Algorithm에서 사용될 내부 변수 g가 미리 지정되어 있다. As shown in Table 3, the variable time representing the input data is designated as Input, the variable velocity indicating the velocity as the output data is designated as the Output, and the internal variable g to be used at the Algorithm is specified as Var. have.

Algorithm에는 변수 g에 9.81이 할당되고, 속도를 나타내는 변수 velocity에 시간을 나타내는 변수 time과 g의 값인 9.81을 곱한 값이 할당되어 있다. Native Statements에는 Java의 문법이 그대로 이용되었으며, 속도를 나타내는 변수를 제곱하기 위한 인스턴스 p를 생성하고, 인스턴스 p의 calculatePow()함수를 호출하여 속도를 나타내는 변수 velocity의 값이 제곱연산 될 수 있다. 그 후, 산출된 속도를 나태는 변수 velocity를 출력한다는 알고리즘이 기술되어 있다.
Algorithm is assigned 9.81 to the variable g, and the variable velocity representing the velocity is multiplied by the variable time representing time and 9.81, the value of g. Native Statements uses the syntax of Java, and creates an instance p to square the speed variable, and calls the calculatePow () function of the instance p to square the speed of the variable velocity. Then, an algorithm is described that outputs a variable velocity indicating the calculated velocity.

도 7은 본 발명의 일 실시예에 따른 애플리케이션 개발 장치의 데이터 흐름 다이어그램 인스턴스 생성부가 생성한 데이터 흐름 다이어그램의 인스턴스를 나타내는 다이어그램이다.7 is a diagram illustrating an instance of a data flow diagram generated by a data flow diagram instance generator of an application development apparatus according to an embodiment of the present invention.

도 7을 참조하면, 데이터 흐름 다이어그램 인스턴스 생성부(120)는 다이어그램 제공부(100)로부터 수신한 데이터 흐름 다이어그램에서 휘처 모델에서 선택된 휘처에 상응하는 프로세스를 추출하여 데이터 흐름 다이어그램의 인스턴스를 생성할 수 있다. Referring to FIG. 7, the data flow diagram instance generator 120 may generate an instance of a data flow diagram by extracting a process corresponding to a feature selected from a feature model from a data flow diagram received from the diagram provider 100. have.

도 7의 데이터 흐름 다이어그램은 데이터 흐름 다이어그램 인스턴스 생성부(120)가 도 5의 데이터 흐름 다이어그램에서 휘처 모델의 휘처 중 선택된 휘처에 상응하는 프로세스를 추출하여 생성한 데이터 흐름 다이어그램의 인스턴스이다. The data flow diagram of FIG. 7 is an instance of the data flow diagram generated by the data flow diagram instance generator 120 by extracting a process corresponding to a feature selected among the features of the feature model from the data flow diagram of FIG. 5.

데이터 흐름 다이어그램 인스턴스 생성부(120)는 도 5의 데이터 흐름 다이어그램에서 휘처 모델에서 선택되지 않은 휘처인 F1 이 바인딩된 데이터 전송을 위한 정보를 제거하여 프로세스를 추출하고, 추출한 프로세스를 이용하여 도 7의 상태 기반 다이어그램의 인스턴스를 생성할 수 있다. The data flow diagram instance generating unit 120 extracts a process by removing information for data transmission to which the feature F1, which is not selected in the feature model, is extracted from the data flow diagram of FIG. 5, and extracts a process using the extracted process. You can create an instance of a state-based diagram.

즉, 도 7의 데이터 흐름 다이어그램에서 프로세서 A에서 Process B(540)로 제공되는 데이터 B, Process B(540) 및 Process B(540)로 제공되는 data C에는 휘처 모델에서 선택되지 않은 휘처 F1가 바인딩되어 있기 때문에, 데이터 흐름 다이어그램 인스턴스 생성부(120)는 도 6의 데이터 흐름 다이어그램에서 휘처 F1가 바인딩된 data B를 제거하여 도 7의 데이터 흐름 다이어그램의 인스턴스를 생성할 수 있다.
That is, in the data flow diagram of FIG. 7, the feature B, which is not selected in the feature model, is bound to the data B provided by the processor A to the process B 540, and the data C provided to the process B 540 and the process B 540. As such, the data flow diagram instance generator 120 may generate an instance of the data flow diagram of FIG. 7 by removing data B to which the feature F1 is bound from the data flow diagram of FIG. 6.

도 8은 본 발명의 일 실시예에 따른 애플리케이션 개발 방법을 설명하기 위한 흐름도이다.8 is a flowchart illustrating an application development method according to an embodiment of the present invention.

도 8을 참조하면, 애플리케이션 개발 장치는 특정 애플리케이션에 대한 적어도 하나의 상태 기반 다이어그램, 적어도 하나의 상태 기반 다이어그램에 기초하여 생성된 휘처 모델 및 데이터 흐름 다이어그램을 이용하여 애플리케이션을 생성할 수 있다.Referring to FIG. 8, the application development apparatus may generate an application using at least one state-based diagram for a specific application, a feature model and a data flow diagram generated based on the at least one state-based diagram.

애플리케이션 개발 장치는 적어도 하나의 상태 기반 다이어그램에서 휘처 모델에서 선택된 휘처에 상응하는 상태를 추출하여 상태 기반 다이어그램의 인스턴스를 생성하고(S710), 데이터 흐름 다이어그램에서 휘처 모델에서 선택된 휘처에 상응하는 프로세스를 추출하여 데이터 흐름 다이어그램의 인스턴스를 생성한다(S720). The application development apparatus extracts a state corresponding to the feature selected in the feature model from at least one state-based diagram to generate an instance of the state-based diagram (S710), and extracts a process corresponding to the feature selected in the feature model in the data flow diagram. By generating an instance of the data flow diagram (S720).

여기서, 애플리케이션 개발 장치는 상태 기반 다이어그램의 상태에서 다른 상태로 전이되는데 사용되는 상태 전이에 관한 정보 및 데이터 흐름 다이어그램의 프로세스에서 다른 프로세스로 전송되는 데이터에 관한 정보를 다이어그램 정보 저장 테이블에 저장할 수 있다.Here, the application development apparatus may store, in the diagram information storage table, information about a state transition used to transition from a state of a state-based diagram to another state and information about data transmitted from another process to another process in the data flow diagram.

애플리케이션 개발 장치는 상태 기반 다이어그램 인스턴스 및 데이터 흐름 다이어그램 인스턴스를 수신하고, 수신한 상태 기반 다이어그램 인스턴스의 상태를 이용하여 제 1 소스 코드를 생성하고, 데이터 흐름 다이어그램의 인스턴스의 프로세스를 이용하여 제 2 소스 코드를 생성할 수 있다(S730).The application development apparatus receives the stateful diagram instance and the data flow diagram instance, generates the first source code using the state of the received stateful diagram instance, and uses the process of the instance of the data flow diagram to generate the second source code. It may be generated (S730).

먼저, 애플리케이션 개발 장치는 상태 기반 다이어그램 인스턴스에 포함된 각각의 상태에 상응하는 상태 클래스를 추출하며, 상태 클래스를 상태의 스크립트에 포함된 적어도 하나의 메소드로 구성하여 제 1 소스 코드를 생성할 수 있다. 여기서, 상태 클래스에 포함된 적어도 하나의 메소드는 후술될 프로세스 클래스에 포함된 적어도 하나의 메소드를 호출할 수 있다. 즉, 상태의 스크립트에 포함된 적어도 하나의 메소드는 프로세스의 스크립트에 포함된 적어도 하나의 메소드일 수 있다.First, the application development apparatus may extract a state class corresponding to each state included in the state-based diagram instance, and generate the first source code by configuring the state class with at least one method included in the script of the state. . Here, at least one method included in the state class may call at least one method included in the process class to be described later. That is, at least one method included in the script of the state may be at least one method included in the script of the process.

또한, 애플리케이션 개발 장치는 데이터 흐름 다이어그램 인스턴스에 포함된 각각의 프로세스에 상응하는 프로세스 클래스를 추출하며, 프로세스 클래스를 프로세스의 스크립트에 포함된 적어도 하나의 메소드로 구성하여 제 2 소스 코드를 생성할 수 있다.
In addition, the application development apparatus may extract a process class corresponding to each process included in the data flow diagram instance, and configure the process class as at least one method included in the script of the process to generate the second source code. .

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that

100: 다이어그램 제공부
111: 제 1 휘처 모델 적용 유닛 113: 제 2 휘처 모델 적용 유닛
115: 다이어그램 정보 추출 유닛 117: 일관성 검증 유닛
110: 상태 기반 다이어그램 인스턴스 생성부
120: 데이터 흐름 다이어그램 인스턴스 생성부
130: 인스턴스 검증부 140: 소스 코드 생성부
100: diagram provider
111: first feature model application unit 113: second feature model application unit
115: diagram information extraction unit 117: consistency verification unit
110: state-based diagram instance generator
120: data flow diagram instance generator
130: instance verification unit 140: source code generation unit

Claims (17)

특정 애플리케이션에 대한 적어도 하나의 상태 기반 다이어그램 및 상기 적어도 하나의 상태 기반 다이어그램을 기초로 생성된 휘처 모델 및 데이터 흐름 다이어그램을 이용하는 애플리케이션 생성 장치에서 수행되는 방법에 있어서,
후보 상태 기반 다이어그램 및 상기 휘처 모델을 수신하여, 상기 수신한 후보 상태 기반 다이어그램에 상기 휘처 모델의 휘처를 적용함으로써 상기 상태 기반 다이어그램을 생성하는 단계;
후보 데이터 흐름 다이어그램 및 상기 휘처 모델을 수신하여, 상기 수신한 후보 데이터 흐름 다이어그램에 상기 휘처 모델의 휘처를 적용함으로써 상기 데이터 흐름 다이어그램을 생성하는 단계;
상기 적어도 하나의 상태 기반 다이어그램에서 상기 휘처 모델에서 선택된 휘처에 상응하는 상태를 추출하여 제 1 인스턴스를 생성하는 단계;
상기 데이터 흐름 다이어그램에서 상기 휘처 모델에서 선택된 휘처에 상응하는 프로세스를 추출하여 제 2 인스턴스를 생성하는 단계; 및
상기 제 1 인스턴스의 상태를 이용하여 제 1 소스 코드를 생성하고, 상기 제 2 인스턴스의 프로세스를 이용하여 제 2 소스 코드를 생성하는 단계를 포함하는 것을 특징으로 하는 애플리케이션 생성 방법.
A method performed in an application generating apparatus using at least one state based diagram for a specific application and a feature model and a data flow diagram generated based on the at least one state based diagram,
Receiving a candidate state based diagram and the feature model and generating the state based diagram by applying a feature of the feature model to the received candidate state based diagram;
Receiving a candidate data flow diagram and the feature model and generating the data flow diagram by applying a feature of the feature model to the received candidate data flow diagram;
Generating a first instance by extracting a state corresponding to a feature selected in the feature model from the at least one state-based diagram;
Extracting a process corresponding to a feature selected from the feature model in the data flow diagram to create a second instance; And
Generating first source code using the state of the first instance, and generating second source code using the process of the second instance.
제 1 항에 있어서, 상기 제 1 소스 코드는,
상기 제 1 인스턴스에 포함된 각각의 상태에 상응하는 제 1 클래스를 추출하여 생성되며,
상기 제 1 클래스는 상기 상태의 스크립트에 포함된 적어도 하나의 메소드로 구성되는 것을 특징으로 하는 애플리케이션 생성 방법.
The method of claim 1, wherein the first source code,
Is generated by extracting a first class corresponding to each state included in the first instance,
The first class is an application generation method, characterized in that composed of at least one method included in the script of the state.
제 2 항에 있어서, 상기 제 1 클래스에 포함된 적어도 하나의 메소드는,
상기 제 1 클래스에 포함된 적어도 하나의 메소드를 호출하는 것을 특징으로 하는 애플리케이션 생성 방법.
The method of claim 2, wherein the at least one method included in the first class includes:
Calling at least one method included in the first class.
제 1 항에 있어서, 상기 제 2 소스 코드는,
상기 제 2 인스턴스에 포함된 각각의 프로세스 상응하는 제 2 클래스를 추출하여 생성되며,
상기 제 2 클래스는 상기 프로세스의 스크립트에 포함된 적어도 하나의 메소드로 구성되는 것을 특징으로 하는 애플리케이션 생성 방법.
The method of claim 1, wherein the second source code,
Is generated by extracting a second class corresponding to each process included in the second instance,
And wherein the second class comprises at least one method included in a script of the process.
삭제delete 제 1항에 있어서, 상기 상태 기반 다이어그램을 생성하는 단계는,
상기 후보 상태 기반 다이어그램에서 상태 기반 다이어그램 정보를 추출하며,
상기 추출한 상태 기반 다이어그램 정보는 후보 상태 기반 다이어그램의 특정 상태에서 다른 상태로 전이되는데 사용되는 상태 전이에 관한 정보이고, 상기 후보 상태 기반 다이어그램의 일관성을 검사하는데 사용되는 것을 특징으로 하는 애플리케이션 생성 방법.
The method of claim 1, wherein generating the state based diagram comprises:
Extracting state based diagram information from the candidate state based diagram,
The extracted state-based diagram information is information about a state transition used to transition from a specific state to another state of a candidate state-based diagram, and is used to check the consistency of the candidate state-based diagram.
제 1항에 있어서, 상기 데이터 흐름 다이어그램을 생성하는 단계는,
상기 후보 데이터 흐름 다이어그램에서 데이터 흐름 다이어그램 정보를 추출하며,
상기 추출한 데이터 흐름 다이어그램 정보는 상기 후보 데이터 흐름 다이어그램의 프로세스에서 다른 프로세스로 전송되는 데이터에 관한 정보이고, 상기 후보 데이터 흐름 다이어그램의 일관성을 검사하는데 사용되는 것을 특징으로 하는 애플리케이션 생성 방법.
The method of claim 1, wherein generating the data flow diagram comprises:
Extracting data flow diagram information from the candidate data flow diagram,
The extracted data flow diagram information is information about data transmitted from another process in the candidate data flow diagram, and is used to check the consistency of the candidate data flow diagram.
제 1 항에 있어서,
상기 제 2 인스턴스를 생성하는 단계 이후에,
미리 결정된 일관성 규정에 따라 상기 제 1 인스턴스 및 제 2 인스턴스의 일관성을 검증하는 단계를 더 포함하는 것을 특징으로 하는 애플리케이션 생성 방법.
The method of claim 1,
After creating the second instance,
Verifying the consistency of the first instance and the second instance according to a predetermined consistency rule.
특정 애플리케이션에 대한 적어도 하나의 상태 기반 다이어그램을 상태 기반 다이어그램 인스턴스 생성부로 제공하고, 상기 적어도 하나의 상태 기반 다이어그램에 기초하여 생성된 데이터 흐름 다이어그램을 데이터 흐름 다이어그램 생성부로 제공하는 다이어그램 제공부;
선택 휘처 정보를 수신하고, 상기 상태 기반 다이어그램에서 상기 선택 휘처 정보에 상응하는 상태를 추출하여 제 1 인스턴스를 생성하는 상태 기반 다이어그램 인스턴스 생성부;
상기 데이터 흐름 다이어그램에서 상기 선택 휘처 정보에 상응하는 프로세스를 추출하여 제 2 인스턴스를 생성하는 데이터 흐름 다이어그램 생성부; 및
상기 제 1 인스턴스의 상태를 이용하여 제 1 소스 코드를 생성하고, 상기 제 2 인스턴스의 프로세스를 이용하여 제 2 소스 코드를 생성하는 소스 코드 생성부를 포함하되,
상기 다이어그램 제공부는,
후보 상태 기반 다이어그램, 후보 데이터 흐름 다이어그램 및 휘처 모델을 수신하고, 상기 후보 상태 기반 다이어그램에 상기 휘처 모델의 휘처를 적용하여 생성한 상기 상태 기반 다이어그램을 상기 상태 기반 다이어그램 인스턴스 생성부로 제공하며,
상기 후보 데이터 흐름 다이어그램에 상기 휘처 모델의 휘처를 적용하여 생성한 상기 데이터 흐름 다이어그램을 상기 데이터 흐름 다이어그램 인스턴스 생성부로 제공하는 것을 특징으로 하는 애플리케이션 생성 장치.
A diagram providing unit providing at least one state based diagram for a specific application to a state based diagram instance generator and providing a data flow diagram generated based on the at least one state based diagram to a data flow diagram generator;
A state-based diagram instance generation unit for receiving selection feature information and extracting a state corresponding to the selection feature information from the state-based diagram to generate a first instance;
A data flow diagram generator for extracting a process corresponding to the selection feature information from the data flow diagram to generate a second instance; And
A source code generator configured to generate first source code using a state of the first instance and generate second source code using a process of the second instance;
The diagram providing unit,
Receiving a candidate state-based diagram, a candidate data flow diagram, and a feature model, and providing the state-based diagram instance generated by applying the feature of the feature model to the candidate state-based diagram to the state-based diagram instance generator;
And providing the data flow diagram generated by applying the feature of the feature model to the candidate data flow diagram to the data flow diagram instance generator.
제 9 항에 있어서, 상기 제 1 소스 코드는,
상기 제 1 인스턴스에 포함된 각각의 상태에 상응하는 제 1 클래스를 추출하여 생성되며,
상기 제 1 클래스는 상기 상태의 스크립트에 포함된 적어도 하나의 메소드로 구성되는 것을 특징으로 하는 애플리케이션 생성 장치.
The method of claim 9, wherein the first source code,
Is generated by extracting a first class corresponding to each state included in the first instance,
The first class is an application generating device, characterized in that composed of at least one method included in the script of the state.
제 10 항에 있어서, 상기 제 1 클래스에 포함된 적어도 하나의 메소드는,
상기 제 1 클래스에 포함된 적어도 하나의 메소드를 호출하는 것을 특징으로 하는 애플리케이션 생성 장치.
The method of claim 10, wherein the at least one method included in the first class includes:
App generating device, characterized in that for calling at least one method included in the first class.
제 9 항에 있어서, 상기 제 2 소스 코드는,
상기 제 2 인스턴스에 포함된 각각의 프로세스 상응하는 제 2 클래스를 추출하여 생성되며,
상기 제 2 클래스는 상기 프로세스의 스크립트에 포함된 적어도 하나의 메소드로 구성되는 것을 특징으로 하는 애플리케이션 생성 장치.
The method of claim 9, wherein the second source code,
Is generated by extracting a second class corresponding to each process included in the second instance,
And wherein the second class comprises at least one method included in a script of the process.
삭제delete 제 9항에 있어서, 상기 다이어그램 제공부는,
상기 후보 상태 기반 다이어그램에서 제 1 다이어그램 정보를 추출하고, 상기 후보 데이터 흐름 기반 다이어그램에서 제 2 다이어그램 정보를 추출하며,
상기 추출한 제 1 다이어그램 정보 및 제 2 다이어그램 정보는, 상기 후보 상태 기반 다이어그램 및 상기 후보 데이터 흐름 다이어그램의 일관성을 검사하는데 각각 사용되는 것을 특징으로 하는 애플리케이션 생성 장치.
The method of claim 9, wherein the diagram providing unit,
Extracting first diagram information from the candidate state based diagram, extracting second diagram information from the candidate data flow based diagram,
And extracting the first diagram information and the second diagram information, respectively, to check the consistency of the candidate state-based diagram and the candidate data flow diagram.
제 14 항에 있어서, 상기 제 1 다이어그램 정보는,
상기 후보 상태 기반 다이어그램의 특정 상태에서 다른 상태로 전이되는데 사용되는 상태 전이에 관한 정보인 것을 특징으로 하는 애플리케이션 생성 장치.
The method of claim 14, wherein the first diagram information,
And information about a state transition used to transition from one state to another state of the candidate state based diagram.
제 14 항에 있어서, 상기 제 2 다이어그램 정보는,
상기 후보 데이터 흐름 다이어그램의 프로세스에서 다른 프로세스로 전송되는 데이터에 관한 정보인 것을 특징으로 하는 애플리케이션 생성 장치.
The method of claim 14, wherein the second diagram information,
And information about data transmitted from the process of the candidate data flow diagram to another process.
제 9 항에 있어서,
미리 결정된 일관성 규정에 따라 상기 제 1 인스턴스 및 제 2 인스턴스의 일관성을 검증하는 검증부를 더 포함하는 것을 특징으로 하는 애플리케이션 생성 장치.
The method of claim 9,
And a verification unit which verifies the consistency of the first instance and the second instance according to a predetermined consistency rule.
KR1020110135244A 2011-12-15 2011-12-15 Method of developing application and apparatus for the same KR101328346B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110135244A KR101328346B1 (en) 2011-12-15 2011-12-15 Method of developing application and apparatus for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110135244A KR101328346B1 (en) 2011-12-15 2011-12-15 Method of developing application and apparatus for the same

Publications (2)

Publication Number Publication Date
KR20130068259A KR20130068259A (en) 2013-06-26
KR101328346B1 true KR101328346B1 (en) 2013-11-11

Family

ID=48863911

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110135244A KR101328346B1 (en) 2011-12-15 2011-12-15 Method of developing application and apparatus for the same

Country Status (1)

Country Link
KR (1) KR101328346B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110074156A (en) * 2009-12-24 2011-06-30 주식회사 포스코 Method for software equity building and storage device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110074156A (en) * 2009-12-24 2011-06-30 주식회사 포스코 Method for software equity building and storage device

Also Published As

Publication number Publication date
KR20130068259A (en) 2013-06-26

Similar Documents

Publication Publication Date Title
CN108885545B (en) Tools and methods for real-time dataflow programming languages
US8689177B2 (en) Integration environment generator
CN104484216B (en) Service interface document and on-line testing instrument generation method, device
US9021419B2 (en) System and method for supporting intelligent design pattern automation
CN110069259B (en) ID L file-based parsing method and device, electronic equipment and storage medium
EP1387262A1 (en) Method to generate synchronization contracts for software components and web services
Criado et al. Toward the adaptation of component‐based architectures by model transformation: behind smart user interfaces
CN105204917B (en) The method and device of loading configuration file in application program launching
Zschaler et al. Domain-specific metamodelling languages for software language engineering
CN104714884A (en) Method for checking consistency of web application and Android application
CN111767217A (en) JS unit test case generation method and device
Mannadiar A multi-paradigm modelling approach to the foundations of domain-specific modelling
KR20150133902A (en) System and method for developing of service based on software product line
US20230359746A1 (en) Systems and methods for shift left testing
Simonsen et al. Generating protocol software from cpn models annotated with pragmatics
CN112068879A (en) Method and device for constructing client application development framework based on configuration
Lúcio et al. The formalism transformation graph as a guide to model driven engineering
JP6291454B2 (en) Business process diagram generation apparatus, business process diagram generation program, and business process diagram generation method
KR101328346B1 (en) Method of developing application and apparatus for the same
CN104142830B (en) The method and apparatus that smart mobile phone application data is extracted by script plug-in part technology
CN107015787B (en) Method and device for designing interactive application framework
Ament Arquillian Testing Guide
Mohamad et al. Principles and dynamics of block-based programming approach
Koskinen et al. Profile-based approach to support comprehension of software behavior
Gaspar et al. Painless support for static and runtime verification of component-based applications

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
GRNT Written decision to grant