KR100456631B1 - Apparatus and method for adaptation of design models in the object-oriented programming system and recording medium providing program therein - Google Patents

Apparatus and method for adaptation of design models in the object-oriented programming system and recording medium providing program therein Download PDF

Info

Publication number
KR100456631B1
KR100456631B1 KR10-2001-0086980A KR20010086980A KR100456631B1 KR 100456631 B1 KR100456631 B1 KR 100456631B1 KR 20010086980 A KR20010086980 A KR 20010086980A KR 100456631 B1 KR100456631 B1 KR 100456631B1
Authority
KR
South Korea
Prior art keywords
design
model
rule
design pattern
pattern
Prior art date
Application number
KR10-2001-0086980A
Other languages
Korean (ko)
Other versions
KR20030056697A (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 KR10-2001-0086980A priority Critical patent/KR100456631B1/en
Publication of KR20030056697A publication Critical patent/KR20030056697A/en
Application granted granted Critical
Publication of KR100456631B1 publication Critical patent/KR100456631B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/24Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages

Abstract

본 발명은 객체지향 프로그래밍 시스템의 설계 모델 적용장치와 그 적용방법 및 이에 관련된 프로그램의 기록매체에 관한 것으로, 특히 본 발명의 장치는 설계 패턴의 모델 변환 연산자가 포함된 설계 패턴 정의 및 적용 데이터를 입력받는 설계 패턴 입력부와, 설계 패턴 정의 및 적용 데이터에 응답하여 기설정된 모델 변환 명령 리스트 중에서 어느 하나를 선택하고 선택된 모델 변환 명령에 따라 설계 패턴의 모델 정보를 변환하는 모델 변환부와, 모델 정보에 따라 객체 지향 프로그래밍 시스템에 적용되는 설계 패턴을 갖는 설계 모델을 작성하는 설계 모델 작성부와, 설계 패턴 정의 및 적용 데이터에 응답하여 설계 패턴의 제한 조건에 대한 규칙을 적용하고 설계 모델 작성부에서 작성된 설계 모델에서 규칙을 위반하는지를 검사하는 규칙 기반 시스템과, 설계 모델 정보를 규칙 기반 시스템에 전달하여 규칙 검사를 요청하고 규칙 기반 시스템에서 검사된 결과를 전달받는 규칙 검사부와, 규칙 검사부의 검사 결과에 따른 설계 패턴의 규칙 준수/위반 메시지를 디스플레이하는 설계 정보 메시지 출력부를 구비한다. 그러므로, 본 발명은 설계 패턴을 공유해서 재사용하는 과정을 자동화할 수 있으며 동시에 모델 변경 과정에서의 이미 적용된 설계 패턴과의 일관성 규칙을 검사할 수 있다.The present invention relates to an apparatus for applying a design model of an object-oriented programming system, an application method thereof, and a recording medium of a program related thereto. In particular, the apparatus of the present invention inputs design pattern definition and application data including a model conversion operator of a design pattern. A model conversion unit which selects one of a preset model conversion command list in response to the design pattern input unit and a design pattern definition and application data, and converts model information of the design pattern according to the selected model conversion command, and according to the model information Design Model Builder, which creates design models with design patterns that apply to object-oriented programming systems, and design models created by Design Model Builder, applying rules for constraints of design patterns in response to design pattern definitions and application data. Rule-based when a rule checks for violations of rules A rule checker that requests rule checks by passing the system, design model information to a rule-based system, and receives the result checked by the rule-based system, and displays a rule compliance / violation message of the design pattern according to the check result of the rule checker. And a design information message output unit. Therefore, the present invention can automate the process of sharing and reusing design patterns and at the same time check the rules of consistency with the design patterns already applied in the model change process.

Description

객체지향 프로그래밍 시스템의 설계 모델 적용장치와 그 적용방법 및 이에 관련된 프로그램의 기록매체{APPARATUS AND METHOD FOR ADAPTATION OF DESIGN MODELS IN THE OBJECT-ORIENTED PROGRAMMING SYSTEM AND RECORDING MEDIUM PROVIDING PROGRAM THEREIN}Apparatus for applying a design model of an object-oriented programming system, a method of applying the same, and a recording medium for a related program therein

본 발명은 객체지향 프로그래밍 시스템(Object-Oriented Programming System)에 관한 것으로서, 특히 객체지향 프로그래밍 시스템의 설계 모델 적용장치와 그 적용방법 및 이에 관련된 프로그램의 기록매체에 관한 것이다.The present invention relates to an object-oriented programming system, and more particularly, to an apparatus for applying a design model of an object-oriented programming system, an application method thereof, and a recording medium of a program associated with the same.

일반적으로, 객체지향 프로그래밍은 소프트웨어를 분석, 설계하고 구현하는 방법중의 하나이다. 객체지향 프로그래밍에서 가장 기본이 되는 단위는 객체인데, 이러한 객체지향 개발 과정에서 제일 먼저 해야 하는 일은 문제 영역 안의 객체를 찾는 일이다. 객체지향 개발 방법은 객체(object), 객체의 속성(attribute)과 동작(behaviour), 유사한 객체의 집합으로 나누어진 클래스(class), 객체 사이의 관계(relationship) 등을 기본 개념으로 하고 있다.In general, object-oriented programming is one of the ways to analyze, design, and implement software. The most basic unit in object-oriented programming is the object. The first thing you need to do in this object-oriented development process is to find the object in the problem domain. Object-oriented development methods are based on the concept of objects, their attributes and behaviors, classes divided into sets of similar objects, relations between objects, and so on.

그리고 객체지향 프로그래밍은 시스템 자체 또는 시스템의 구성 요소를 메시지의 교환에 의해 상호 통신하는 객체의 집합으로 생각하고 객체의 종류, 객체의 절차(방법) 및 객체 사이에 절차의 수행을 위해 주고받는 메시지를 정의하는 데에중점을 두는 설계를 한다.Object-oriented programming considers the system itself or its components as a set of objects that communicate with each other by exchanging messages, and communicates the types of objects, the procedures (methods) of the objects, and the messages exchanged between them for the performance of procedures. Design with a focus on defining.

따라서 객체지향 기법은 시스템의 모듈화 및 캡슐화를 촉진하여 복잡화·거대화되는 소프트웨어를 사용하며 프로그래밍의 작성이 쉽고 유지/보수하기 쉬운 방향으로 재구축하는 새로운 기법으로 각광을 받고 있다. 객체 지향 프로그램의 언어로 현재 가장 많이 사용되고 있는 것은 C++이다. C++의 섭셋(subset)인 Java 프로그래밍 언어는 특히 인터넷과 같은 클라이언트/서버 시스템의 분산 프로그램 객체들을 위하여 설계된 것이다.Therefore, the object-oriented technique has been spotlighted as a new technique that promotes the modularization and encapsulation of the system, uses software that is complicated and enormous, and rebuilds the programming in a direction that is easy to write and maintain. The most popular language for object-oriented programming is C ++. The Java programming language, a subset of C ++, is specifically designed for distributed program objects in client / server systems such as the Internet.

한편, 객체지향 프로그래밍의 소프트웨어를 설계하는 과정에서 축적된 경험들을 바탕으로 객체들 사이의 일반적인 상호작용 방법들을 정리해 놓은 목록을 설계(design pattern)이라 한다. 이러한 설계 패턴은 객체지향 프로그래밍 시스템의 설계시 패턴의 재사용을 통해 설계 과정의 복잡화를 간소화하기 위해 연구/개발되었다.On the other hand, a design pattern is a list of general interaction methods between objects based on the accumulated experience in designing software for object-oriented programming. These design patterns have been researched and developed to simplify the complexity of the design process through reuse of patterns in the design of object-oriented programming systems.

설계 패턴에 관한 연구는 1990년대 초반에 Etich Gamma 등이 GUI 어플리케이션 프레임워크에 23개의 일반적이고 유용한 설계 패턴들을 정의하고 이들의 적용시점과 이용 방법들을 명시적으로 기술함으로써 시작되었다. 지금까지 시스템 개발 및 응용 분야에서 축적된 경험들을 객체지향 설계 패턴으로 구축하는 연구들이 진행되어 왔다. 그 중 하나로 썬 자바 센터에서 J2EE(Java 2 Platform, Enterprise Edition) 응용 프로그램의 개발 경험을 바탕으로 개발 과정에서 공통적으로 발생되는 문제에 대한 해결책들을 J2EE 패턴으로 정리하였다. 여기에는 기존에 발표된 여러 설계 패턴들, 예를 들면 Gof 패턴, 커스텀 패턴, 자바빈 패턴,JSP(JavaServer Pages) 및 서블릿(Servlet) 패턴 등이 포함되어 있다.The study of design patterns began in the early 1990s by Etich Gamma et al. Defining 23 common and useful design patterns in the GUI application framework and explicitly describing their application time and usage. Until now, studies have been conducted to build up the experience-oriented design patterns accumulated in system development and application fields. One of them, based on the development experience of Java 2 Platform, Enterprise Edition (J2EE) applications at Sun Java Center, is a J2EE pattern of solutions to common problems in development. This includes a number of previously published design patterns, such as Gof patterns, custom patterns, JavaBean patterns, JavaServer Pages (JSP) and Servlet patterns.

최근에는 객체지향 프로그래밍의 설계 패턴 생성 기술은 이미 알려진 설계 패턴에 대한 모델을 변환해서 제공하는 TogetherSoft사의 제품이 있지만, 아직까지는 설계 패턴을 적용한 모델의 변환 수준에 머물고 있으며 설계 패턴을 쉽게 정의하고 모델 변경 과정에서의 이미 적용된 설계 패턴과의 일관성 검사와 같은 기능들을 제공하지 않는다.Recently, TogetherSoft's design pattern generation technology of object-oriented programming transforms and provides models for known design patterns, but it is still at the level of transformation of models that apply design patterns, and it is easy to define design patterns and change models. It does not provide features such as consistency checks with design patterns already in place.

본 발명의 목적은 기존의 설계 패턴은 물론이고 설계자가 직접 자신의 설계 패턴을 직접 정의할 수 있으며, 이에 따라 설계 모델을 변환해서 작성하고 작성된 설계 모델이 제한 규칙에 따르는지를 검사함으로써 설계자의 지식을 설계 패턴화하는 과정을 자동화할 수 있으며 동시에 모델 변경 과정에서의 이미 적용된 설계 패턴과의 일관성 검사를 할 수 있는 객체지향 프로그래밍 시스템의 설계 모델 적용장치와 그 적용방법 및 이에 관련된 프로그램의 기록매체를 제공하는데 있다.The object of the present invention is to design the designer's knowledge by converting the design model and verifying that the created design model conforms to the restriction rules as well as the existing design pattern. It provides a design model application device of an object-oriented programming system, an application method thereof, and a recording medium of related programs that can automate the process of design patterning and at the same time check the consistency of the design pattern applied during the model change process. It is.

상기 목적을 달성하기 위하여 본 발명은 적어도 두 개 이상의 객체들 사이의 연관성을 정의한 다수 개의 설계 패턴들 중에서 어느 하나를 응용하여 객체지향 프로그래밍 시스템의 설계 모델로 작성하는 장치에 있어서, 설계 패턴의 모델 변환 연산자가 포함된 설계 패턴 정의 및 적용 데이터를 입력받는 설계 패턴 입력부와, 설계 패턴 입력부에서 입력된 설계 패턴 정의 및 적용 데이터에 응답하여 기설정된 모델 변환 명령 리스트 중에서 어느 하나를 선택하고 선택된 모델 변환 명령에 따라 설계 패턴의 모델 정보를 변환하는 모델 변환부와, 모델 변환부에서 전달된 모델 정보에 따라 객체 지향 프로그래밍 시스템에 적용되는 설계 패턴을 갖는 설계 모델을 작성하는 설계 모델 작성부와, 설계 패턴 입력부에서 전달된 설계 패턴 정의 및 적용 데이터에 응답하여 설계 패턴의 제한 조건에 대한 규칙을 적용하고 설계 모델 작성부에서 작성된 설계 모델에서 규칙을 위반하고 있는지를 검사하는 규칙 기반 시스템과, 설계 모델 작성부의 설계 모델 정보를 규칙 기반 시스템에 전달하여 규칙 검사를 요청하고 규칙 기반 시스템에서 검사된 결과를 전달받는 규칙 검사부와, 규칙 검사부의 검사 결과에 따른 설계 패턴의 규칙 준수/위반 메시지를 디스플레이하는 설계 정보 메시지 출력부를 구비한다.In order to achieve the above object, the present invention provides an apparatus for creating a design model of an object-oriented programming system by applying any one of a plurality of design patterns that define the association between at least two or more objects, the model transformation of the design pattern Select one of the design pattern input unit which receives the design pattern definition and application data including the operator and the preset model conversion command list in response to the design pattern definition and application data input from the design pattern input unit, A model transform unit for converting model information of a design pattern according to the design pattern, a design model generator for creating a design model having a design pattern applied to an object-oriented programming system according to the model information transmitted from the model transform unit, and a design pattern input unit In the design pattern definition and application data A rule-based system that responds to apply rules for constraints in the design pattern and checks for violations of rules in the design model created by the design model builder, and passes the design model information from the design model builder to the rule-based system. A rule checking unit for requesting inspection and receiving a result of the inspection in the rule-based system, and a design information message output unit for displaying a rule compliance / violation message of the design pattern according to the inspection result of the rule inspection unit.

상기 목적을 달성하기 위하여 본 발명은 적어도 두 개 이상의 객체들 사이의 연관성을 정의한 다수 개의 설계 패턴들 중에서 어느 하나를 응용하여 객체지향 프로그래밍 시스템의 설계 모델로 작성하는 방법에 있어서, 설계 패턴의 모델 변환 연산자가 포함된 설계 패턴 정의 및 적용 데이터를 입력받는 단계와, 설계 패턴 정의 및 적용 데이터에 응답하여 기설정된 모델 변환 명령 리스트 중에서 어느 하나를 선택하고 선택된 모델 변환 명령에 따라 설계 패턴의 모델 정보를 변환하는 단계와, 전달된 설계 패턴의 모델 정보에 따라 객체 지향 프로그래밍 시스템에 적용되는 설계 패턴을 갖는 설계 모델을 작성하는 단계와, 설계 모델 정보를 전달하여 규칙 검사를 요청하고, 모델 변환 제한 데이터에 응답하여 설계 패턴의 제한 조건에 대한 규칙을 적용하고 작성된 설계 모델에서 규칙을 위반하고 있는지를 검사하는 단계와, 검사 결과에 따른 설계 패턴의 규칙 준수/위반 메시지를 디스플레이하는 단계를 포함한다.In order to achieve the above object, the present invention provides a method for creating a design model of an object-oriented programming system by applying any one of a plurality of design patterns that define an association between at least two or more objects, the model transformation of the design pattern Receiving a design pattern definition and application data including an operator; selecting one of a list of preset model conversion commands in response to the design pattern definition and application data, and converting model information of the design pattern according to the selected model conversion command Creating a design model having a design pattern applied to the object-oriented programming system according to the model information of the passed design pattern, passing the design model information to request a rule check, and responding to model transformation restriction data. Apply the rules for constraints in design patterns And checking for violations of the rules in the created design model and displaying the rule compliance / violation message of the design pattern according to the inspection result.

상기 목적을 달성하기 위하여 본 발명은 컴퓨터에, 적어도 두 개 이상의 객체들 사이의 연관성을 정의한 다수 개의 설계 패턴들 중에서 어느 하나를 응용하여 객체지향 프로그래밍 시스템의 설계 모델로 작성하는 프로그램을 갖는 기록매체에 있어서, 설계 패턴의 모델 변환 연산자가 포함된 설계 패턴 정의 및 적용 데이터를 입력받는 단계와, 설계 패턴 정의 및 적용 데이터에 응답하여 기설정된 모델 변환 명령 리스트 중에서 어느 하나를 선택하고 선택된 모델 변환 명령에 따라 설계 패턴의 모델 정보를 변환하는 단계와, 전달된 설계 패턴의 모델 정보에 따라 객체 지향 프로그래밍 시스템에 적용되는 설계 패턴을 갖는 설계 모델을 작성하는 단계와, 설계 모델 정보를 전달하여 규칙 검사를 요청하고, 모델 변환 제한 데이터에 응답하여 설계 패턴의 제한 조건에 대한 규칙을 적용하고 작성된 설계 모델에서 규칙을 위반하고 있는지를 검사하는 단계와, 검사 결과에 따른 설계 패턴의 규칙 준수/위반 메시지를 디스플레이하는 단계를 포함한다.In order to achieve the above object, the present invention relates to a recording medium having a program for creating a design model of an object-oriented programming system by applying any one of a plurality of design patterns that define an association between at least two objects. The method may further include receiving a design pattern definition and application data including a model conversion operator of a design pattern, selecting one of a list of preset model conversion commands in response to the design pattern definition and application data, and selecting the selected model conversion command according to the selected model conversion command. Converting the model information of the design pattern, creating a design model having a design pattern applied to the object-oriented programming system according to the model information of the delivered design pattern, and passing the design model information to request a rule check. In response to model transformation limit data, Applying rules for constraints and checking for violations of rules in the created design model and displaying rule compliance / violation messages of the design pattern according to the inspection results.

도 1은 본 발명에 따른 객체지향 프로그래밍 시스템의 설계 모델 적용장치를 나타낸 구성도,1 is a block diagram showing an apparatus for applying a design model of an object-oriented programming system according to the present invention;

도 2는 본 발명의 설계 모델 적용장치에서 설계 패턴 정의 및 적용 데이터의 스트립트를 나타낸 일 실시예,Figure 2 is an embodiment showing a script of the design pattern definition and application data in the design model application apparatus of the present invention,

도 3은 본 발명의 일 실시예에 따른 설계 모델 적용장치의 주 화면을 나타낸 도면,3 is a view showing a main screen of a design model applying apparatus according to an embodiment of the present invention;

도 4는 본 발명의 일 실시예에 따른 설계 모델 적용장치와 연동되는 설계 패턴 시스템의 주 화면을 나타낸 도면,4 is a view showing a main screen of a design pattern system interlocked with a design model applying apparatus according to an embodiment of the present invention;

도 5는 본 발명의 일 실시예에 따른 설계 패턴 입력부의 주 화면을 나타낸 도면,5 is a diagram illustrating a main screen of a design pattern input unit according to an embodiment of the present invention;

도 6은 본 발명에 따른 객체지향 프로그래밍 시스템의 설계 모델 적용방법을 나타낸 흐름도.6 is a flowchart illustrating a method of applying a design model of an object-oriented programming system according to the present invention.

<도면의 주요부분에 대한 부호의 설명><Description of the code | symbol about the principal part of drawing>

1 : 객체지향 프로그래밍 시스템의 설계모델 적용장치1: Applied Design Model for Object-Oriented Programming System

10 : 설계 패턴 입력부 20 : 모델 변환부10: design pattern input unit 20: model conversion unit

30 : 설계 모델 작성부 40 : 규칙 검사부30: design model creation unit 40: rule inspection unit

50 : 규칙 기반 시스템 60 : 설계 정보 메시지 출력부50: rule-based system 60: design information message output unit

70 : 설계 패턴 시스템70: design pattern system

이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대해 설명하고자 한다.Hereinafter, exemplary embodiments of the present invention will be described with reference to the accompanying drawings.

도 1은 본 발명에 따른 객체지향 프로그래밍 시스템의 설계 모델 적용장치를 나타낸 구성도이다. 도 1을 참조하면, 본 발명의 설계 모델 적용장치(1)는 설계 패턴 입력부(10)와, 모델 변환부(20)와, 설계 모델 작성부(30)와, 규칙 기반 시스템(50)과, 규칙 검사부(40)와, 설계 정보 메시지 출력부(60)를 포함한다. 그리고 설계 패턴 시스템(70)은 설계 모델 작성부(30)에서 생성된 설계 모델을 저장 및 관리한다.1 is a block diagram showing an apparatus for applying a design model of an object-oriented programming system according to the present invention. Referring to FIG. 1, the design model application device 1 of the present invention includes a design pattern input unit 10, a model converting unit 20, a design model preparing unit 30, a rule-based system 50, The rule checker 40 and the design information message output unit 60 are included. The design pattern system 70 stores and manages a design model generated by the design model preparing unit 30.

여기서, 설계 패턴 입력부(10)는 설계 패턴의 모델 변환 연산자가 포함된 설계 패턴 정의 및 적용 데이터를 입력받는다. 이때, 설계 패턴 정의 및 적용 데이터는 모델 변환 인자 데이터(Tr)와, 설계 패턴의 선택 데이터(XML_Pat)와, 모델 변환 제한 데이터(ℓi)를 포함하고 이들 데이터는 XML 스트립트(script)로 작성된다.Here, the design pattern input unit 10 receives a design pattern definition and application data including a model transformation operator of the design pattern. At this time, the design pattern definition and application data include the model transformation factor data Tr, the selection pattern XML_Pat of the design pattern, and the model transformation restriction data Ii, and these data are written in an XML script.

설계 패턴의 정의 데이터는 설계 패턴의 선택 데이터(XML_Pat)이며 설계 모델 변환 명령 및 설계 패턴의 기준 조건을 정하는 것이다. 그리고 설계 패턴의 적용 데이터는 모델 변환 인자 데이터(Tr)와 모델 변환 제한 데이터(ℓi)이며 현재의 설계 모델을 설계 패턴이 적용된 후의 모델로 변환하는데, 요구되는 변환 구성 요소와 제한 조건을 정하는 것이다.The definition data of the design pattern is the selection data (XML_Pat) of the design pattern and defines the reference conditions of the design model transformation command and the design pattern. The application data of the design pattern is model conversion factor data Tr and model conversion restriction data l i, and the conversion elements and constraints required for converting the current design model to the model after the design pattern is applied are determined.

좀 더 상세하게는, 모델 변환 인자 데이터(Tr)는 클래스 역할을 위임하는 연산자, 클래스를 분할하여 객체 사용을 관리하는 외형화 연산자, 인터페이스 클래스를 생성하고 상속 관계를 설정하는 추상화 연산자, 클래스 사이의 상호 연관 관계를 설정하는 구체화 연산자를 포함한다. 이에 대한 상세한 설명은 도 2를 참조하여 추후 설명하기로 한다. 그리고 설계 패턴의 선택 데이터(XML_Pat)는 패턴의 이름 및 의도, 적용 대상이 되는 상태 정의, 패턴 참여 객체의 정의, 패턴을 구성하는 연산자들의 리스트 정의를 포함한다. 마지막으로 모델 변환 제한 데이터(ℓi)는 설계 패턴의 제약 정보 및 고유 정보를 포함한다. 이 모델 변환 제한 데이터(ℓi)는 설계 패턴 입력부(10)를 통해서 규칙 기반 시스템(50)으로 전달되는데, 이 데이터를 ℓi'로 표시하였다.More specifically, model transformation argument data (Tr) is defined as the operator that delegates the class role, the externalization operator that divides the class to manage object use, the abstraction operator that creates interface classes and establishes inheritance relationships, Contains refiner operators that establish correlations. Detailed description thereof will be described later with reference to FIG. 2. The selection data XML_Pat of the design pattern includes a name and intention of the pattern, a state definition to be applied, a pattern participation object definition, and a list definition of operators constituting the pattern. Finally, the model transformation limit data l i includes constraint information and unique information of the design pattern. The model transformation limit data l i is transmitted to the rule-based system 50 through the design pattern input unit 10, and this data is denoted L i '.

본 발명의 설계 모델 적용장치(1)의 모델 변환부(20)는 설계 패턴 입력부(10)에서 입력된 설계 패턴 정의 및 적용 데이터내 모델 변환 명령에 응답하여 설계 모델 작성부(30)에 설계 모델의 변경 작업을 요청한다. 그리고 모델 변환부(20)는 요청 명령에 따라 기설정된 모델 변환 명령 리스트 DB(22)중에서 어느 하나를 선택하고 선택된 모델 변환 명령에 따라 설계 패턴의 모델 정보를 변환하여 설계 모델 작성부(30)에 제공한다.The model converting unit 20 of the design model applying apparatus 1 of the present invention responds to the design pattern definition input from the design pattern input unit 10 and the model converting command in the application data to the design model preparing unit 30. To request a change operation. The model converting unit 20 selects any one of the preset model converting command list DB 22 according to the request command and converts the model information of the design pattern according to the selected model converting command to the design model preparing unit 30. to provide.

이에 본 발명의 설계 모델 작성부(30)는 모델 변환부(20)에서 전달된 모델 정보에 따라 객체 지향 프로그래밍 시스템에 적용되는 설계 패턴을 갖는 설계 모델을 작성하는데, 그 예로서 클래스 다이어그램 작성기이다. 그리고 설계 모델 작성부(30)는 통합 메시지 출력부(미도시함)를 포함하고 설계 정보 메시지 출력부(60)는 통합 메시지 출력부의 일부에 포함된다. 이때, 설계 모델 작성부(30)는 작성된 설계 모델의 정보를 설계 패턴 시스템(70)에 전달한다.Accordingly, the design model preparation unit 30 of the present invention creates a design model having a design pattern applied to the object-oriented programming system according to the model information transmitted from the model transformation unit 20. An example is a class diagram generator. The design model preparing unit 30 includes an integrated message output unit (not shown), and the design information message output unit 60 is included in a part of the integrated message output unit. At this time, the design model preparation unit 30 transmits the information of the created design model to the design pattern system 70.

그리고 본 발명의 규칙 검사부(40)는 설계 모델 작성부(30)에서 작성된 설계 모델의 정보를 규칙 기반 시스템(50)에 전달하여 규칙 검사를 요청하고 규칙 기반 시스템(50)에서 검사된 결과를 전달받아 이를 설계 정보 메시지 출력부(60)에 제공하는 인터페이스 역할을 한다. 게다가 규칙 검사부(40)는 설계 패턴 적용에 수반되는 추가적 모델 정보 및 설계자의 작업에 따른 정보를 추가 전달받아 이를 규칙 기반 시스템(50)에 전달한다.In addition, the rule inspecting unit 40 of the present invention transmits the information of the design model created by the design model preparing unit 30 to the rule-based system 50 to request a rule inspecting, and delivers the result inspected by the rule-based system 50. It serves as an interface to provide it to the design information message output unit 60. In addition, the rule inspection unit 40 receives additional model information and information according to the designer's work accompanying the design pattern application and delivers it to the rule-based system 50.

본 발명의 규칙 기반 시스템(50)에서는 설계 패턴 입력부(10)에서 전달된 모델 변환 제한 데이터(ℓi')에 응답하여 설계 패턴의 제한 조건에 대한 규칙을 적용하고 설계 모델 작성부(30)에서 작성된 설계 모델에서 규칙을 위반하고 있는지를 검사한다. 그리고 규칙 기반 시스템(50)은 규칙 검사부(40)에서 제공된 설계 패턴 적용에 수반되는 추가적 모델 정보 및 설계자의 작업에 따른 정보를 추가 전달받아 설계 패턴의 제한 조건에 대한 규칙을 다시 적용하고 설계 모델 작성부(30)에서 작성된 설계 모델에서 규칙을 위반하고 있는지를 검사할 수도 있다.In the rule-based system 50 of the present invention, in response to the model transformation restriction data l 'transmitted from the design pattern input unit 10, the rule for the constraint condition of the design pattern is applied and created in the design model preparation unit 30. Check the design model for violations of the rules. In addition, the rule-based system 50 receives additional model information accompanying the design pattern applied by the rule inspecting unit 40 and the information according to the designer's work, and applies the rules for the constraints of the design pattern again and creates a design model. It is also possible to check whether the design model created in the unit 30 is in violation of the rule.

본 발명의 설계 정보 메시지 출력부(60)는 규칙 검사부(40)의 검사 결과에 따른 설계 패턴의 규칙 준수/위반 메시지를 디스플레이함과 동시에, 현재 작업 중인 설계 모델에 관련된 유용한 정보를 제공한다. 여기서, 설계 모델에 관련된 정보는 사용자 정의 패턴인 경우 설계 패턴 입력부에서 패턴을 정의할 때 사용자로부터 입력된 정보(XML_Pat)들이 제공될 수 있으며, 시스템에서 미리 정의된 패턴인 경우에는 상기 XML_Pat에 이미 저장된 것이다. 그리고 본 발명의 설계 정보 메시지 출력부(60)는 설계 모델 작성부(30)에 구비된 통합 메시지 출력부의 일부에 포함되는 것이 바람직하다.The design information message output unit 60 of the present invention displays the rule compliance / violation message of the design pattern according to the inspection result of the rule inspecting unit 40 and provides useful information related to the design model currently being worked on. Here, the information related to the design model may be provided with information (XML_Pat) input from the user when defining the pattern in the design pattern input unit in the case of a user-defined pattern, and already stored in the XML_Pat in the case of a predefined pattern in the system will be. In addition, the design information message output unit 60 of the present invention is preferably included in a part of the integrated message output unit included in the design model preparation unit 30.

상기와 같이 구성된 본 발명의 설계 패턴 적용장치(1)는 설계 패턴 입력부(10)와 모델 변환부(20)와 설계 모델 작성부(30)를 통해서 기존의 설계 모델에 이미 정의된 설계 패턴을 선택해서 설계 모델을 자동으로 변환할 수 있고, 규칙 기반 시스템(50)과 규칙 검사부(40)를 통해 설계 패턴의 제한 조건에 따른 설계 모델에서의 설계 패턴의 규칙을 검사할 수 있고, 설계 정보 메시지 출력부(60)를 통해 검사 결과와 설계 모델에 관련된 정보의 메시지를 설계자에게 제공한다.The design pattern applying apparatus 1 according to the present invention configured as described above selects a design pattern already defined in an existing design model through the design pattern input unit 10, the model converting unit 20, and the design model preparing unit 30. Can automatically convert the design model, and through the rule-based system 50 and the rule checker 40 can check the rules of the design pattern in the design model according to the constraints of the design pattern, and output the design information message The unit 60 provides the designer with a message of information related to the test result and the design model.

도 2는 본 발명의 설계 모델 적용장치에서 설계 패턴 정의 및 적용 데이터의 스트립트를 나타낸 일 실시예이다.Figure 2 is an embodiment showing the design pattern definition and the script of the application data in the design model application apparatus of the present invention.

설계 패턴은 설계자에 의해 자유롭게 정의되어 저장될 수 있는데, 설계 과정에서 설계 패턴을 재사용하기 위해 설계 패턴을 일련의 기본 변환 연산자들로 정의한다. 이러한 모델 변환 연산자에는 클래스 추가, 메소드 추가, 속성 추가, 상속 관계 설정, 연관 관계 설정 등의 모델 구조 변환에 관련된 명령들이 있다. 이를 위해 본 발명은 모델 구조 변환 연산자가 포함된 설계 패턴 정의 및 적용 데이터의 스크립트(100)는 다음과 같은 구성 요소를 갖는다.The design pattern can be freely defined and stored by the designer. The design pattern is defined as a set of basic conversion operators to reuse the design pattern during the design process. These model transformation operators include commands related to model structure transformation, such as adding a class, adding a method, adding a property, setting an inheritance relationship, and setting an association. To this end, in the present invention, the script 100 of design pattern definition and application data including the model structure conversion operator has the following components.

우선, 본 발명의 설계 패턴 정의 및 적용 스트립트(100)는 패턴의 이름(Name)(102)과, 패턴의 의도(Intent)(104)와, 패턴 적용 대상이 되는 상태를 정의(Precursor)(106)와, 패턴 참여 객체 정의(Argument)(108)와, 패턴을 구성하는 연산자들의 리스트 정의(PTOperator)(110)와, 패턴의 제약 사항 및 고유 정보(RBSInputList)(112)를 포함한다.First, the design pattern definition and application script 100 of the present invention defines a name 102 of the pattern, an intent 104 of the pattern, and a state to which the pattern is applied (Precursor 106). ), A pattern participation object definition (Argument) 108, a list definition (PTOperator) 110 of the operators constituting the pattern, and the constraints and unique information (RBSInputList) 112 of the pattern.

그리고, 본 발명에서 설계 패턴 적용 데이터는 일련의 모델 변환 연산자들의 조합으로 표현될 수 있다. 모델 변환 연산자에는 위임(Delegation)/ 외형화(Externalization), 추상화(Abstraction) / 구체화(Concretization) 등이 있다.In the present invention, the design pattern application data may be represented by a combination of a series of model transformation operators. Model transformation operators include Delegation / Externalization, Abstraction / Concretization.

1. 위임 : 위임 연산자는 하나의 클래스에서 수행하는 특정 역할을 별도의 클래스로 분리시켜 이 새 클래스에 대해 해당 역할을 위임한다. 일반적인 경우, 모델 변환 과정은 새로운 클래스의 생성과 새로운 클래스로의 연관 관계 설정으로 이루어진다. 특수한 경우에 연관 관계의 설정 혹은 상속 구조의 설정으로 표현될수 있다. 위임 변환 연산자는 소스 노드에 대해 적용된다.1. Delegation: The delegation operator delegates a role to a new class by separating the specific roles performed by one class into separate classes. In general, the model transformation process involves creating a new class and establishing an association with the new class. In special cases, it can be expressed as an association or an inheritance structure. The delegate transformation operator is applied to the source node.

2. 외형화 : 외형화 연산자는 하나의 클래스를 둘로 분할하여 복잡한 구현 내부를 숨기거나 대리자를 내세워서 객체 사용을 관리하기 위해 사용된다. 외형화 변환 연산자는 타겟 노드에 대해 적용된다.2. Externalization: Externalization operators are used to manage the use of objects by dividing a class into two, hiding inside complex implementations, or proposing delegates. The externalization transformation operator is applied to the target node.

3. 추상화 : 추상화 연산자는 인터페이스 클래스를 새로 정의하여 클래스들의 공통적인 부분을 한 단계 위의 추상 수준으로 올리기 위해 사용된다. 일반적으로, 새로운 인터페이스 클래스를 생성하고, 상속 관계를 설정하는 과정이다.3. Abstraction: The abstraction operator is used to redefine an interface class to bring common parts of the class to the next level of abstraction. Generally, this is the process of creating a new interface class and setting up an inheritance relationship.

4. 구체화 : 구체화 연산자는 기존 클래스를 상속 받아 새로운 행위를 정의하기 위해 사용된다. 부모 클래스의 다른 클래스와의 상호 연동 관계를 계승한다. 일반적으로 기존 클래스를 상속하는 새로운 클래스를 생성하여 연관 관계를 설정하는 과정으로 이루어진다.4. Materialization: The materialization operator inherits existing classes and is used to define new behavior. It inherits the interworking relationship with other classes of the parent class. In general, the process involves creating a new class that inherits an existing class and establishing an association.

그러므로, 본 발명의 객체지향 설계 패턴들은 이와 같은 모델 변환 연산자들의 조합을 통해 기존 설계 모델을 패턴 구조를 갖는 설계 모델로 변환할 수 있는데, 그 예는 연산자 리스트 정의(PTOperator)(110)와 같다.Therefore, the object-oriented design patterns of the present invention can convert an existing design model into a design model having a pattern structure through a combination of such model transformation operators, an example of which is the same as the operator list definition (PTOperator) 110.

도 3은 본 발명의 일 실시예에 따른 설계 모델 적용장치의 주 화면을 나타낸 도면이다. 도 3에 도시된 설계 모델 적용장치의 주 화면(200)에서 상단에 설계 패턴의 입력부인 설계 패턴의 선택 창(202)과 테이블(204)이 표시되어 있다. 왼쪽 상단에 위치한 설계 패턴의 선택 창(202)은 사용가능한 설계 패턴들에 대한 목록 트리를 디스플레이한다. 이러한 설계 패턴의 목록 트리중에서 어느 하나를 사용자가 선택하면 이를 설계 모델에 적용할 수 있다. 주 화면(200)에서 오른쪽 상단의테이블(204)은 설계 패턴 인자 입력 패널로 설계 패턴 적용시 설계 패턴상의 역할별로 클래스 명을 기술하는 부분이다.3 is a view showing a main screen of the design model application apparatus according to an embodiment of the present invention. In the main screen 200 of the design model applying apparatus shown in FIG. The selection window 202 of design patterns located in the upper left corner displays a list tree of available design patterns. When a user selects one of the list trees of design patterns, it can be applied to the design model. The table 204 on the upper right side of the main screen 200 is a design pattern factor input panel that describes a class name for each role on the design pattern when the design pattern is applied.

주 화면(200)는 설계 모델 작성부의 통합 메시지 출력부가 설치된다. 예를 들어, 오른쪽 하단의 설계 정보 메시지 출력 창(206)은 트리 상에 선택된 설계 패턴에 대한 설명 또는 정보를 디스플레이하는 부분이다. 또한, 설계 모델 적용장치의 주 화면(200)에는 오른쪽 하단의 설계 미리 보기창(208)에 현재까지 입력된 설계 패턴의 정보를 통해 설계 패턴의 적용결과에 대한 미리 보기를 제공한다.The main screen 200 is provided with an integrated message output unit of the design model preparation unit. For example, the design information message output window 206 at the lower right is a portion that displays description or information about the design pattern selected on the tree. In addition, the main screen 200 of the design model application device provides a preview of the application result of the design pattern through the information of the design pattern input up to now in the design preview window 208 on the lower right.

이와 같이 본 발명에 따른 설계 모델 적용장치의 주 화면(200) 상에서 설계 패턴의 선택창(202)을 통해 어느 한 설계 패턴이 선택되었다면, 설계 정보 메시지 출력 창(206)에는 선택된 설계 패턴에 대한 설명이 표시되고 테이블(204) 창에는 선택된 설계 패턴을 대상으로 하는 모델 상의 클래스 정보를 입력하는 테이블이 도시된다. 이때, 설계 미리 보기창(208)에서는 입력된 설계 패턴의 정보를 토대로 작성된 설계 패턴의 적용결과가 디스플레이된다.As described above, if any design pattern is selected through the selection window 202 of the design pattern on the main screen 200 of the design model application apparatus according to the present invention, the design information message output window 206 describes the selected design pattern. Is displayed and a table for entering class information on a model that targets the selected design pattern is shown in the table 204 window. At this time, the design preview window 208 displays the application result of the design pattern created based on the information of the input design pattern.

도 4는 본 발명의 일 실시예에 따른 설계 모델 적용장치와 연동되는 설계 패턴 시스템의 주 화면을 나타낸 도면이다. 도 4를 참조하면, 설계 패턴 시스템의 주 화면(210)에는 현재까지 모델에 적용된 설계 패턴의 인스턴스들을 보여지는 창(212)이 있고, 해당 적용 인스턴스를 삭제할 수 있도록 지원하는 설계 패턴 관리창(214)이 표시된다. 아래 검색(search) 버튼(216)은 원하는 패턴의 인스턴스(instance)를 질의할 수 있고, 삭제(remove) 버튼(218)은 에 적용된 설계 패턴의 인스턴스를 제거할 수 있다.4 is a diagram illustrating a main screen of a design pattern system linked to a design model applying apparatus according to an exemplary embodiment of the present invention. Referring to FIG. 4, the main screen 210 of the design pattern system includes a window 212 showing instances of design patterns applied to the model so far, and a design pattern management window 214 supporting deleting an application instance. ) Is displayed. The search button 216 below may query an instance of the desired pattern, and the remove button 218 may remove an instance of the design pattern applied to.

도 5는 본 발명의 일 실시예에 따른 설계 패턴 입력 도구의 주 화면을 나타낸 도면이다. 도 5를 참조하면, 사용자가 설계 패턴 입력 도구(300)에서 지원하는 설계 패턴 외의 여러 가지 설계 패턴들을 정의할 수 있는데, 예를 들어 패턴의 이름과 값 등이 정의된다.5 is a diagram illustrating a main screen of a design pattern input tool according to an embodiment of the present invention. Referring to FIG. 5, a user may define various design patterns other than the design patterns supported by the design pattern input tool 300. For example, names and values of patterns are defined.

도 6은 본 발명에 따른 객체지향 프로그래밍 시스템의 설계 모델 적용방법을 나타낸 흐름도로서, 상기와 같이 구성된 본 발명의 설계 모델 적용장치는 다음과 같이 작동한다.6 is a flowchart illustrating a method of applying a design model to an object-oriented programming system according to the present invention. The apparatus for applying a design model of the present invention configured as described above operates as follows.

우선, 사용자는 설계 모델 적용장치(1)의 설계 패턴 입력부(10)에 설계 패턴의 모델 변환 연산자가 포함된 설계 패턴 정의 및 적용 데이터를 입력한다. 예를 들어, 사용자가 특정 설계 패턴의 이름을 지정해서 입력하면, 설계 패턴 입력부(10)는 지정된 설계 패턴의 이름을 맞는 설계 패턴의 편집 환경을 제공하고 이에 사용자가 설계 패턴의 편집을 마치고 설계 패턴의 적용을 지시하는 명령을 입력한다.(S10).First, the user inputs the design pattern definition and application data including the model conversion operator of the design pattern to the design pattern input unit 10 of the design model application device 1. For example, when a user designates and inputs a name of a specific design pattern, the design pattern input unit 10 provides an environment for editing a design pattern that matches the name of the designated design pattern, and thus the user finishes editing the design pattern and design pattern. Enter a command to instruct the application of (S10).

이에 모델 변환부(20)는 입력된 설계 패턴 정의 데이터(즉, 설계 패턴의 기본 정보)와 적용 데이터(편집된 내용)에 응답하여 기설정된 모델 변환 명령 리스트 DB(22)중에서 어느 하나를 선택하고 선택된 모델 변환 명령에 따라 설계 패턴의 모델 정보를 변환하여 설계 모델 작성부(30)에 모델 변경을 지시한다.(S20)Accordingly, the model converting unit 20 selects any one of the preset model conversion command list DB 22 in response to the input design pattern definition data (ie, basic information of the design pattern) and application data (edited content). The model information of the design pattern is converted according to the selected model conversion command, and the model change instructing unit 30 is instructed to change the model.

이에 설계 모델 작성부(30)는 전달된 설계 패턴의 모델 정보에 따라 객체 지향 프로그래밍 시스템에 적용되는 설계 모델을 작성한다.(S30)Accordingly, the design model preparation unit 30 creates a design model applied to the object-oriented programming system according to the model information of the transferred design pattern. (S30)

그리고 규칙 검사부(40)는 규칙 기반 시스템(50)에 패턴의 제약 사항이나 모델 변경 정보 등의 모델 변환 제한 데이터를 전달하여 규칙 기반 시스템(50)에 설계 모델의 규칙 검사를 요청한다. 이에 규칙 기반 시스템(50)에서는 사용자에 의해 설계 모델의 변경이 있을 경우 설계 패턴의 제한 조건에 대한 규칙을 적용하고 해당 설계 모델에서 규칙을 위반하고 있는지를 검사한다.(S40) 이때, 설계 제한 조건은 규칙의 형태로 규칙 기반 시스템(50)에 입력되며, 잘못된 설계자의 작업을 통해 입력된 새로운 모델 정보에 대해 규칙을 적용함으로써 위반 사실을 자동으로 파악할 수 있다. 그러므로, 본 발명은 계속되는 설계 모델링 작업을 통해 설계자의 실수에 의해서 모델에 적용된 설계 패턴의 구조가 사라질 수 있는데, 설계 모델 작성부(30)의 설계 패턴에 대해 제한 조건을 검사함으로써 설계자의 잘못된 모델링을 방지할 수 있다.The rule inspecting unit 40 transmits model transformation restriction data such as pattern constraints and model change information to the rule-based system 50 and requests the rule-based system 50 to inspect the design model. In the rule-based system 50, if there is a change in the design model, the rule-based system 50 applies the rules for the constraints of the design pattern and checks whether the rule violates the rules in the design model. Is entered into the rule-based system 50 in the form of a rule, and can automatically identify the violation by applying the rule to new model information entered through the wrong designer's work. Therefore, the present invention may disappear the structure of the design pattern applied to the model by the mistake of the designer through the continuous design modeling work, by checking the constraints on the design pattern of the design model creation unit 30 to check the incorrect modeling of the designer You can prevent it.

그리고, 규칙 검사부(40)는 규칙 기반 시스템(50)에서 검사된 결과에 따른 패턴의 규칙 준수/위반 메시지를 전달받아 이를 설계 정보 메시지 출력부(60)에 출력한다. 이에 설계 정보 메시지 출력부(60)는 패턴의 규칙 준수/위반 메시지를 디스플레이한다.(S50)Then, the rule checker 40 receives the rule compliance / violation message of the pattern according to the result checked in the rule-based system 50 and outputs it to the design information message output unit 60. The design information message output unit 60 displays the rule compliance / violation message of the pattern.

또한, 설계 정보 메시지 출력부(60)는 패턴의 규칙 준수/위반 메시지와는 별도로 규칙 검사부(40)에서 제공된 현재 모델링 작업과 관련된 정보 메시지를 디스플레이한다.(S60)In addition, the design information message output unit 60 displays an information message related to the current modeling task provided by the rule inspecting unit 40 separately from the rule compliance / violation message of the pattern.

한편, 도면에 도시되지 않았지만, 상술한 바와 같은 본 발명의 객체지향 프로그래밍 시스템의 설계 모델 적용 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 여러 가지 기록매체(CD-ROM, RAM, ROM, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 기록되어 저장될 수 있다.On the other hand, although not shown in the drawings, the method of applying the design model of the object-oriented programming system of the present invention as described above is implemented by a program that can be read by a variety of recording media (CD-ROM, RAM, ROM, floppy disk, Hard disk, magneto-optical disk, or the like).

이상 설명한 바와 같이, 본 발명은 기존의 설계 패턴은 물론이고 설계자가 직접 자신의 설계 패턴을 직접 정의할 수 있으며, 이에 따라 설계 모델을 변환해서 작성하고 작성된 설계 모델이 제한 규칙에 따르는지를 검사함으로써 설계자의 지식을 설계 패턴화하는 과정을 자동화할 수 있으며 동시에 모델 변경 과정에서의 이미 적용된 설계 패턴과의 일관성 규칙을 검사할 수 있다.As described above, the present invention allows designers to directly define their own design patterns as well as existing design patterns, thereby converting and creating design models and checking whether the created design models comply with the limiting rules. You can automate the process of design patterning your knowledge, and at the same time, examine the rules of consistency with the design patterns already applied during model changes.

따라서, 본 발명은 객체지향 프로그래밍 시스템에서 설계 패턴의 개발 경험을 축적할 수 있으며 설계 패턴을 공유해서 재사용할 수 있기 때문에 소프트웨어 설계 모델의 생성하는데 걸리는 시간적/자원적 낭비를 막을 수 있다.Therefore, the present invention can accumulate the development experience of the design pattern in the object-oriented programming system and can share and reuse the design pattern, thereby avoiding the time / resource waste of generating the software design model.

한편, 본 발명은 상술한 실시예에 국한되는 것이 아니라 후술되는 청구범위에 기재된 본 발명의 기술적 사상과 범주내에서 당업자에 의해 여러 가지 변형이 가능하다.On the other hand, the present invention is not limited to the above-described embodiment, various modifications are possible by those skilled in the art within the spirit and scope of the present invention described in the claims to be described later.

Claims (12)

적어도 두 개 이상의 객체들 사이의 연관성을 정의한 다수 개의 설계 패턴들 중에서 어느 하나를 응용하여 객체지향 프로그래밍 시스템의 설계 모델로 작성하는 장치에 있어서,An apparatus for creating a design model of an object-oriented programming system by applying any one of a plurality of design patterns that define an association between at least two objects, 상기 설계 패턴의 모델 변환 연산자가 포함된 설계 패턴 정의 및 적용 데이터를 입력받는 설계 패턴 입력부;A design pattern input unit configured to receive a design pattern definition and application data including a model transformation operator of the design pattern; 상기 설계 패턴 입력부에서 입력된 상기 설계 패턴 정의 및 적용 데이터에 응답하여 기설정된 모델 변환 명령 리스트 중에서 어느 하나를 선택하고 상기 선택된 모델 변환 명령에 따라 설계 패턴의 모델 정보를 변환하는 모델 변환부;A model converting unit for selecting any one of a preset model conversion command list in response to the design pattern definition and application data input from the design pattern input unit and converting model information of the design pattern according to the selected model conversion command; 상기 모델 변환부에서 전달된 모델 정보에 따라 상기 객체 지향 프로그래밍 시스템에 적용되는 설계 패턴을 갖는 설계 모델을 작성하는 설계 모델 작성부;A design model preparing unit which creates a design model having a design pattern applied to the object-oriented programming system according to the model information transferred from the model converting unit; 상기 설계 패턴 입력부에서 전달된 설계 패턴 정의 및 적용 데이터에 응답하여 상기 설계 패턴의 제한 조건에 대한 규칙을 적용하고 상기 설계 모델 작성부에서 작성된 설계 모델에서 상기 규칙을 위반하고 있는지를 검사하는 규칙 기반 시스템;Rule-based system that applies a rule on the constraint of the design pattern in response to the design pattern definition and application data transmitted from the design pattern input unit and checks whether the rule is violated in the design model created by the design model preparation unit ; 상기 설계 모델 작성부의 설계 모델 정보를 상기 규칙 기반 시스템에 전달하여 규칙 검사를 요청하고 상기 규칙 기반 시스템에서 검사된 결과를 전달받는 규칙 검사부; 및A rule inspecting unit which transmits design model information of the design model preparing unit to the rule based system to request a rule inspecting and receives a result inspected by the rule based system; And 상기 규칙 검사부의 검사 결과에 따른 설계 패턴의 규칙 준수/위반 메시지를 디스플레이하는 설계 정보 메시지 출력부를 구비한 것을 특징으로 하는 객체지향 프로그래밍 시스템의 설계 모델 적용장치.And a design information message output unit configured to display a rule compliance / violation message of a design pattern according to the inspection result of the rule inspecting unit. 제 1항에 있어서, 상기 설계 패턴 정의 및 적용 데이터는 XML 스트립트로 작성되는 것을 특징으로 하는 객체지향 프로그래밍 시스템의 설계 모델 적용장치.The apparatus of claim 1, wherein the design pattern definition and application data are written in an XML script. 제 1항에 있어서, 상기 설계 패턴 입력부에 입력되는 설계 패턴 정의 및 적용 데이터는 모델 변환 인자 데이터와, 설계 패턴의 선택 데이터와, 모델 변환 제한 데이터를 포함하는 것을 특징으로 하는 객체지향 프로그래밍 시스템의 설계 모델 적용장치.The design of an object-oriented programming system according to claim 1, wherein the design pattern definition and application data input to the design pattern input unit includes model transformation factor data, selection data of a design pattern, and model transformation restriction data. Model Applicator. 제 3항에 있어서, 상기 모델 변환 인자 데이터는 클래스 역할을 위임하는 연산자, 클래스를 분할하여 객체 사용을 관리하는 외형화 연산자, 인터페이스 클래스를 생성하고 상속 관계를 설정하는 추상화 연산자, 클래스 사이의 상호 연관 관계를 설정하는 구체화 연산자를 포함하는 것을 특징으로 하는 객체지향 프로그래밍 시스템의 설계 모델 적용장치.The method of claim 3, wherein the model transformation factor data includes an operator delegating a class role, an externalization operator that manages object use by dividing a class, an abstraction operator that creates an interface class, and establishes an inheritance relationship, and a correlation between classes. Apparatus for design model application of an object-oriented programming system comprising a refinement operator for establishing a relationship. 제 1항에 있어서, 상기 설계 패턴의 선택 데이터는 패턴의 이름 및 의도, 적용 대상이 되는 상태 정의, 패턴 참여 객체의 정의, 패턴을 구성하는 연산자들의 리스트 정의를 포함하는 것을 특징으로 하는 객체지향 프로그래밍 시스템의 설계 모델 적용장치.The object-oriented programming of claim 1, wherein the selection data of the design pattern includes a name and intention of the pattern, a state definition to be applied, a pattern participation object definition, and a list definition of operators constituting the pattern. Applied design model of the system. 제 1항에 있어서, 상기 모델 변환 제한 데이터는 설계 패턴의 제약 정보 및 고유 정보를 포함하는 것을 특징으로 하는 객체지향 프로그래밍 시스템의 설계 모델 적용장치.The apparatus of claim 1, wherein the model transformation limit data includes constraint information and unique information of a design pattern. 제 1항에 있어서, 상기 설계 모델 작성부는 작성된 설계 모델의 정보를 저장 및 관리하는 설계 패턴 시스템에 전달하는 것을 특징으로 하는 객체지향 프로그래밍 시스템의 설계 모델 적용장치.The apparatus of claim 1, wherein the design model preparing unit transmits the information of the created design model to a design pattern system for storing and managing the created design model. 제 1항에 있어서, 상기 설계 모델 작성부는 통합 메시지 출력부를 포함하고 상기 설계 정보 메시지 출력부는 상기 통합 메시지 출력부의 일부에 포함되는 것을 특징으로 하는 객체지향 프로그래밍 시스템의 설계 모델 적용장치.The apparatus of claim 1, wherein the design model generator comprises an integrated message output unit and the design information message output unit is included in a part of the integrated message output unit. 제 1항에 있어서, 상기 규칙 검사부는 현재 작업 중인 설계 모델에 관련된 정보를 상기 설계 정보 메시지 출력부에 제공하는 것을 특징으로 하는 객체지향 프로그래밍 시스템의 설계 모델 적용장치.The apparatus of claim 1, wherein the rule inspector provides the design information message output unit with information related to a design model currently being worked on. 제 1항에 있어서, 상기 규칙 기반 시스템에는 설계 패턴 적용에 수반되는 추가적 모델 정보 및 설계자의 작업에 따른 정보를 추가로 전달받아 상기 설계 패턴의 제한 조건에 대한 규칙을 적용하고 상기 설계 모델 작성부에서 작성된 설계 모델에서 상기 규칙을 위반하고 있는지를 검사하는 것을 특징으로 하는 객체지향 프로그래밍 시스템의 설계 모델 적용장치.The rule-based system of claim 1, wherein the rule-based system receives additional model information and design information according to a designer's work applied to the rule-based system, applies a rule on the constraint condition of the design pattern, and applies the rule to the design model preparing unit. Apparatus for design model application of an object-oriented programming system, characterized in that for checking whether the created design model is in violation of the rule. 적어도 두 개 이상의 객체들 사이의 연관성을 정의한 다수 개의 설계 패턴들 중에서 어느 하나를 응용하여 객체지향 프로그래밍 시스템의 설계 모델로 작성하는 방법에 있어서,What is claimed is: 1. A method of creating a design model of an object-oriented programming system by applying any one of a plurality of design patterns that define an association between at least two objects. 상기 설계 패턴의 모델 변환 연산자가 포함된 설계 패턴 정의 및 적용 데이터를 입력받는 단계;Receiving a design pattern definition and application data including a model transformation operator of the design pattern; 상기 설계 패턴 정의 및 적용 데이터에 응답하여 기설정된 모델 변환 명령 리스트 중에서 어느 하나를 선택하고 상기 선택된 모델 변환 명령에 따라 설계 패턴의 모델 정보를 변환하는 단계;Selecting any one of a preset model conversion command list in response to the design pattern definition and application data and converting model information of the design pattern according to the selected model conversion command; 상기 전달된 설계 패턴의 모델 정보에 따라 상기 객체 지향 프로그래밍 시스템에 적용되는 설계 패턴을 갖는 설계 모델을 작성하는 단계;Creating a design model having a design pattern applied to the object-oriented programming system according to the model information of the transferred design pattern; 상기 설계 모델 정보를 전달하여 규칙 검사를 요청하고, 모델 변환 제한 데이터에 응답하여 상기 설계 패턴의 제한 조건에 대한 규칙을 적용하고 작성된 설계 모델에서 상기 규칙을 위반하고 있는지를 검사하는 단계; 및Requesting a rule check by transferring the design model information, applying a rule for a constraint condition of the design pattern in response to model transformation restriction data, and checking whether the rule is in violation of the rule in a created design model; And 상기 검사 결과에 따른 설계 패턴의 규칙 준수/위반 메시지를 디스플레이하는 단계를 포함하는 것을 특징으로 하는 객체지향 프로그래밍 시스템의 설계 모델 적용 방법.And displaying a rule compliance / violation message of a design pattern according to the inspection result. 컴퓨터에, 적어도 두 개 이상의 객체들 사이의 연관성을 정의한 다수 개의 설계 패턴들 중에서 어느 하나를 응용하여 객체지향 프로그래밍 시스템의 설계 모델로 작성하는 프로그램을 갖는 기록매체에 있어서,In a recording medium having a computer, a program for applying any one of a plurality of design patterns defining an association between at least two objects to create a design model of an object-oriented programming system, 상기 설계 패턴의 모델 변환 연산자가 포함된 설계 패턴 정의 및 적용 데이터를 입력받는 단계;Receiving a design pattern definition and application data including a model transformation operator of the design pattern; 상기 설계 패턴 정의 및 적용 데이터에 응답하여 기설정된 모델 변환 명령 리스트 중에서 어느 하나를 선택하고 상기 선택된 모델 변환 명령에 따라 설계 패턴의 모델 정보를 변환하는 단계;Selecting any one of a preset model conversion command list in response to the design pattern definition and application data and converting model information of the design pattern according to the selected model conversion command; 상기 전달된 설계 패턴의 모델 정보에 따라 상기 객체 지향 프로그래밍 시스템에 적용되는 설계 패턴을 갖는 설계 모델을 작성하는 단계;Creating a design model having a design pattern applied to the object-oriented programming system according to the model information of the transferred design pattern; 상기 설계 모델 정보를 전달하여 규칙 검사를 요청하고, 모델 변환 제한 데이터에 응답하여 상기 설계 패턴의 제한 조건에 대한 규칙을 적용하고 작성된 설계 모델에서 상기 규칙을 위반하고 있는지를 검사하는 단계; 및Requesting a rule check by transferring the design model information, applying a rule for a constraint condition of the design pattern in response to model transformation restriction data, and checking whether the rule is in violation of the rule in a created design model; And 상기 검사 결과에 따른 설계 패턴의 규칙 준수/위반 메시지를 디스플레이하는 단계를 수행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for performing a step of displaying a rule compliance / violation message of a design pattern according to the inspection result.
KR10-2001-0086980A 2001-12-28 2001-12-28 Apparatus and method for adaptation of design models in the object-oriented programming system and recording medium providing program therein KR100456631B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0086980A KR100456631B1 (en) 2001-12-28 2001-12-28 Apparatus and method for adaptation of design models in the object-oriented programming system and recording medium providing program therein

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0086980A KR100456631B1 (en) 2001-12-28 2001-12-28 Apparatus and method for adaptation of design models in the object-oriented programming system and recording medium providing program therein

Publications (2)

Publication Number Publication Date
KR20030056697A KR20030056697A (en) 2003-07-04
KR100456631B1 true KR100456631B1 (en) 2004-11-10

Family

ID=32214871

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0086980A KR100456631B1 (en) 2001-12-28 2001-12-28 Apparatus and method for adaptation of design models in the object-oriented programming system and recording medium providing program therein

Country Status (1)

Country Link
KR (1) KR100456631B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100854660B1 (en) * 2006-09-21 2008-08-28 삼성중공업 주식회사 Method and System for Figure and the Amount of Materials Calculation Program for Design Vessel Using Design Program
KR102482526B1 (en) * 2021-01-21 2022-12-28 엘에스일렉트릭(주) Method for Providing of User Interface for Designing of Data Model

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05158674A (en) * 1991-12-10 1993-06-25 Toshiba Corp Software component design and specification verification assistance device
JPH09198242A (en) * 1996-01-17 1997-07-31 Sumitomo Electric Ind Ltd Object-orient design supporting device
KR20000040501A (en) * 1998-12-18 2000-07-05 이계철 Formal inspection method parallel of object-oriented system
JP2000305766A (en) * 1999-02-17 2000-11-02 Fujitsu Ltd Object-oriented software development supporting device and its method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05158674A (en) * 1991-12-10 1993-06-25 Toshiba Corp Software component design and specification verification assistance device
JPH09198242A (en) * 1996-01-17 1997-07-31 Sumitomo Electric Ind Ltd Object-orient design supporting device
KR20000040501A (en) * 1998-12-18 2000-07-05 이계철 Formal inspection method parallel of object-oriented system
JP2000305766A (en) * 1999-02-17 2000-11-02 Fujitsu Ltd Object-oriented software development supporting device and its method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
논문소프트웨어 재사용을 위한 설계패턴들에 관한 연구.(1999.00.00 ) *

Also Published As

Publication number Publication date
KR20030056697A (en) 2003-07-04

Similar Documents

Publication Publication Date Title
US9465590B2 (en) Code generation framework for application program interface for model
US8813024B2 (en) System and a method for cross-platform porting of business application and making them contextually-aware on target platforms
CN102193781B (en) Integrated design application
CN104090776A (en) Software development method and system
Jena et al. Test case creation from UML sequence diagram: a soft computing approach
Mendonca et al. A process-centric approach for coordinating product configuration decisions
Radeke et al. PIM Tool: Support for pattern-driven and model-based UI development
Aslam et al. Cross-platform real-time collaborative modeling: An architecture and a prototype implementation via emf. cloud
US20100275183A1 (en) Source code auditor with a customized rules builder
Sáenz-Adán et al. Automating provenance capture in software engineering with UML2PROV
Sousa et al. UPi: a software development process aiming at usability, productivity and integration
Appeldorn et al. Delta-driven collaborative modeling.
KR100456631B1 (en) Apparatus and method for adaptation of design models in the object-oriented programming system and recording medium providing program therein
Martens et al. Diagnosing sca components using wombat
Mulder et al. Towards enterprise-grade tool support for DEMO
CN112363700A (en) Cooperative creation method and device of intelligent contract, computer equipment and storage medium
WO2001008007A1 (en) Method and system of automated generation of program code from an object oriented model
Wolvers et al. Embedded systems design flows: integrating requirements authoring and design tools
Rodríguez-Echeverría et al. Model-driven Generation of a REST API from a Legacy Web Application
JP2007115155A (en) Program structure management device and program structure management program
Caffiau et al. Generating interactive applications from task models: A hard challenge
Sun et al. Automating the maintenance of nonfunctional system properties using demonstration‐based model transformation
Merilinna et al. A stylebase as a tool for modelling of quality-driven software architecture
KR100319776B1 (en) Apparatus and method for software process modeling
Nattapon et al. Visualization of Electrical Architectures In the Automotive Domain Based on the Needs of Stakeholders

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
FPAY Annual fee payment

Payment date: 20121031

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20131024

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee