KR20100122151A - 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체 - Google Patents

자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체 Download PDF

Info

Publication number
KR20100122151A
KR20100122151A KR1020090041052A KR20090041052A KR20100122151A KR 20100122151 A KR20100122151 A KR 20100122151A KR 1020090041052 A KR1020090041052 A KR 1020090041052A KR 20090041052 A KR20090041052 A KR 20090041052A KR 20100122151 A KR20100122151 A KR 20100122151A
Authority
KR
South Korea
Prior art keywords
logic
business logic
database application
database
entity
Prior art date
Application number
KR1020090041052A
Other languages
English (en)
Inventor
나문수
Original Assignee
나문수
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 나문수 filed Critical 나문수
Priority to KR1020090041052A priority Critical patent/KR20100122151A/ko
Publication of KR20100122151A publication Critical patent/KR20100122151A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

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

Abstract

본 발명은 (a) 하나 이상의 데이터베이스 테이블 및 상기 하나 이상의 데이터베이스 테이블의 관계 정의를 포함하는 데이터 모델과 상기 데이터 모델에 대해서 실행 코드 형태로 작성된 업무 로직 메소드를 사용하여 하나 이상의 기본 폼을 자동 생성하는 단계와, (b) 상기 하나 이상의 기본 폼을 사용하여 상기 데이터 모델 및 상기 업무 로직 메소드를 갱신하는 단계와, (c) 상기 갱신된 데이터 모델 및 상기 갱신된 업무 로직 메소드를 사용하여 상기 하나 이상의 기본 폼을 갱신하는 단계와, (d) 상기 갱신된 하나 이상의 기본 폼을 사용자 모드 폼으로 변환하는 단계를 포함하는 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 관한 것이다.
본 발명에 따르면, 데이터 모델을 폼 형태로 구현하고 폼 형태와 연동하여 업무 로직을 코딩하여 실행 가능한 형태로 고객에게 제시함으로써 고객과 개발자 사이의 원활한 의사 소통을 지원할 수 있고 데이터 모델 및 업무 로직에 대한 테스트를 용이하게 수행할 수 있으며, 데이터베이스 애플리케이션 개발시 작업량 및 개발 비용을 최소화할 수 있다.
데이터베이스 애플리케이션, 업무 로직 메소드, 데이터 모델, 폼

Description

자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체{METHOD OF GENERATING DATABASE APPLICATION BASED ON AUTO-GENERATED FORM AND COMPUTER-READABLE MEDIUM HAVING THEREON PROGRAM PERFORMING FUNCTION EMBODYING THE SAME}
본 발명은 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체에 관한 것으로, 더욱 구체적으로는 데이터 모델을 폼 형태로 구현하고 폼 형태와 연동하여 업무 로직을 코딩하여 실행 가능한 형태로 고객에게 제시함으로써 고객과 개발자 사이의 원활한 의사 소통을 지원할 수 있고 데이터 모델 및 업무 로직에 대한 테스트를 용이하게 수행할 수 있으며, 데이터베이스 애플리케이션 개발시 작업량 및 개발 비용을 최소화할 수 있는 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체에 관한 것이다.
데이터베이스 어플리케이션은 거의 모든 관공서, 기업 및 단체 등에서 사용 된다.
종래 기술에 따른 데이터베이스 애플리케이션 제작은 다음과 같은 과정을 통하여 수행된다.
우선 고객의 요구 사항을 확인하고 이를 기초로 업무를 분석한 후, 데이터베이스 애플리케이션의 기본 설계를 수행한다. 이후 기본 설계를 기초로 하여 실제 데이터베이스 애플리케이션의 소스 코드를 작성한 후, 작성된 소스 코드를 테스트한다.
전술한 데이터베이스 애플리케이션 제작 과정에서 개발자와 고객은 상호간에 다수의 미팅을 통하여 고객이 원하는 요구 사항이 데이터베이스 애플리케이션에 정확하게 반영되는지를 확인하는 과정을 거친다.
한편 데이터베이스 어플리케이션을 프로그래밍하는 작업의 생산성을 높이기 위해서 다양한 방법들이 개발되고 있다. 그러나 종래의 방법은 주로 데이터베이스 애플리케이션의 폼(Form)을 시각적으로 작성하는 것과 데이터베이스 테이블과 GUI(Graphic User Interface) 컨트롤(Control)과의 바인딩(Binding)에 국한되고 있다.
종래의 방법은 데이터베이스 어플리케이션의 생산성을 일부 높이는 효과가 있지만, 데이터베이스 애플리케이션 개발자들이 가장 곤란을 느끼는 업무 분석 단계를 지원하지는 못하는 단점이 있다.
예컨대 데이터베이스 애플리케이션을 프로그래밍하는 경우, 개발자들이 어려움을 느끼는 부분은 GUI 코딩, 데이터 접근(Access), 구현 로직 등의 부분이 아니 라 고객이 전달한 업무 로직(Business Logic)을 이해하여 데이터 모델을 분석하여 산출하고 산출 결과를 다시 고객에게 이해시키는 부분이다. 업무 로직의 이해 및 데이터 모델의 분석과 산출을 위하여, 개발자는 고객과의 인터뷰를 통한 데이터 모델 작성을 반복적으로 수행하여야 한다. 데이터 모델은 개발자와 고객 사이의 소통의 매개체가 되나, 통상적으로 고객이 데이터 모델을 이해하기가 어렵다는 단점이 있다. 즉 데이터 모델은 주로 ERD(Entity Relationship Diagram) 형태로 산출되나, 고객은 ERD에 대한 이해도가 높지 않기 때문에 데이터 모델을 이해하기 어렵다.
이와 같이 종래의 방법은 데이터베이스 어플리케이션의 생산성을 일부 높일 수는 있지만, 업무 로직의 이해, 데이터 모델의 분석과 산출 및 고객과의 의사 소통에는 도움을 주지 못하는 단점이 있다.
고객과 개발자 사이의 소통의 어려움은 고객에게 직접 실행 가능한 사용자 인터페이스 화면을 제시하여 설명함으로서, 즉 고객이 최종 개발된 데이터 애플리케이션의 실제 화면을 보면서 수정 사항을 제시하는 형태를 통하여 개선될 수 있다. 예컨대 ERD를 포함하는 문서 형태로서는 고객의 요구 사항이 정확히 데이터 애플리케이션에 반영되었는지를 확인하기 어렵기 때문에, 실제 사용자 인터페이스 화면을 통하여 고객과의 의사 소통을 수행하는 것이다. 그러나 이러한 실제 사용자 인터페이스 화면을 통한 고객과의 소통 방식은 SI(System Integration) 업계의 채산성을 악화시키게 된다. 예컨대 데이터 애플리케이션을 개발하는 최종 단계에서 다시 고객의 수정 사항 등을 반영하는 것은 개발 비용을 증가시키게 된다.
따라서 프로토타이핑(prototyping) 방법을 사용하여 고객 요구 사항을 정확 하게 파악하기 위한 방법도 사용되고 있다.
그러나 프로토타이핑 방법은 프로토타이핑에 사용되는 코드가 실제 개발에는 사용되지 못하는 경우가 대부분이라는 단점이 있으며, 또한 별도로 프로토타이핑을 위한 코드를 개발하여야 하므로 개발 비용이 증가하는 단점이 있다.
본 발명의 목적은 데이터 모델을 폼 형태로 구현하고 폼 형태와 연동하여 업무 로직을 코딩하여 실행 가능한 형태로 고객에게 제시함으로써 고객과 개발자 사이의 원활한 의사 소통을 지원할 수 있고 데이터 모델 및 업무 로직에 대한 테스트를 용이하게 수행할 수 있으며, 데이터베이스 애플리케이션 개발시 작업량 및 개발 비용을 최소화할 수 있는 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법을 제공하는 데 있다.
본 발명의 다른 목적은 상기 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법의 각 단계를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 제공하는데 있다.
상기 기술적 과제를 달성하기 위하여, 본 발명은 (a) 하나 이상의 데이터베이스 테이블 및 상기 하나 이상의 데이터베이스 테이블의 관계 정의를 포함하는 데이터 모델과 상기 데이터 모델에 대해서 실행 코드 형태로 작성된 업무 로직 메소드를 사용하여 하나 이상의 기본 폼을 자동 생성하는 단계와, (b) 상기 하나 이상의 기본 폼을 사용하여 상기 데이터 모델 및 상기 업무 로직 메소드를 갱신하는 단계와, (c) 상기 갱신된 데이터 모델 및 상기 갱신된 업무 로직 메소드를 사용하여 상기 하나 이상의 기본 폼을 갱신하는 단계와, (d) 상기 갱신된 하나 이상의 기본 폼을 사용자 모드 폼으로 변환하는 단계를 포함하는 자동 생성 폼 기반의 데이터베 이스 애플리케이션 생성 방법을 제공한다.
본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 상기 단계 (a)는, (a-1) 상기 하나 이상의 데이터베이스 테이블을 입력받아 상기 하나 이상의 기본 폼을 자동으로 생성하는 단계와, (a-2) 상기 하나 이상의 데이터베이스 테이블의 관계 정의를 입력받아 상기 하나 이상의 기본 폼 사이의 관계를 설정하는 단계와, (a-3) 상기 하나 이상의 기본 폼 각각에서 실행되어야 할 업무 로직을 상기 업무 로직 메소드 형태로 입력받는 단계와, (a-4) 상기 하나 이상의 기본 폼과 상기 업무 로직 메소드를 연결하여 상기 하나 이상의 기본 폼을 실행 가능하도록 설정하는 단계를 포함할 수 있다.
또한 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 상기 단계 (a-3)은, 프로그램 세그먼트(program segment) 파일 형식으로 저장된 상기 업무 로직 메소드를 입력받는 단계를 포함할 수 있다.
또한 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 상기 하나 이상의 데이터베이스 테이블은 주도 개체의 데이터베이스 테이블 및 상기 주도 개체에 대응하는 하나 이상의 대응 개체의 데이터베이스 테이블을 포함하는 것이고, 상기 하나 이상의 기본 폼은 상기 주도 개체에 대응하는 주도 개체 기본 폼을 포함하는 것일 수 있다.
또한 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 상기 업무 로직 메소드는 상기 주도 개체의 인스턴스에서 참조 가능한 상기 하나 이상의 대응 개체의 인스턴스를 참조하는 기능을 수행하는 참조 로 직 메소드를 포함할 수 있다.
또한 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 상기 주도 개체 기본 폼은 상기 참조 로직 메소드를 실행하기 위한 사용자 인터페이스를 포함할 수 있다.
또한 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 상기 참조 로직 메소드는 상기 주도 개체의 필드 및 상기 하나 이상의 대응 개체의 필드를 매핑하기 위한 매핑 메소드를 포함할 수 있다.
또한 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 상기 참조 로직 메소드는, 상기 매핑 메소드를 사용하여 상기 주도 개체의 속성과 상기 하나 이상의 대응 개체의 속성을 테이블 형태로 표시하고, 상기 테이블 형태를 사용하여 사용자 입력을 수신하고, 상기 사용자 입력을 기초로 상기 주도 개체의 속성과 상기 하나 이상의 대응 개체의 속성을 매핑할 수 있다.
또한 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 상기 업무 로직 메소드는, 상기 주도 개체 기본 폼에서 미리 지정된 실행 기능을 수행하는 실행 로직 메소드와, 상기 주도 개체 기본 폼을 저장하는 경우 제약 조건을 설정하는 제약 조건 로직 메소드와, 상기 주도 개체 기본 폼 내에서 미리 지정되는 연산을 수행하는 계산 필드 로직 메소드 중 적어도 하나 이상을 포함할 수 있다.
또한 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 상기 주도 개체 기본 폼은 상기 실행 로직 메소드 또는 상기 제약 조건 로직 메소드를 실행하기 위한 사용자 인터페이스를 포함할 수 있다.
또한 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 상기 단계 (d)는, 상기 주도 개체 기본 폼을 상기 사용자 모드 폼으로 변환 하는 경우 상기 사용자 인터페이스를 삭제하는 단계를 포함할 수 있다.
또한 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 상기 단계 (b)는, (b-1) 상기 하나 이상의 기본 폼을 표시하는 단계와, (b-2) 상기 데이터 모델에 대한 수정 사항을 입력받아 상기 데이터 모델을 갱신하고, 상기 업무 로직 메소드에 대한 수정 사항을 입력받아 상기 업무 로직 메소드를 갱신하는 단계를 포함할 수 있다.
또한 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 상기 단계 (d)는, (d-1) 프레젠테이션 로직을 상기 갱신된 하나 이상의 기본 폼에 연결하여 상기 사용자 모드 폼을 생성하는 단계를 포함할 수 있다.
또한 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 상기 단계 (d-1)는, (d-2) 상기 사용자 모드 폼을 테스트하는 단계와, (d-3) 상기 테스트 결과에 따라서 상기 프레젠테이션 로직을 갱신하고 상기 갱신된 프레젠테이션 로직을 상기 사용자 모드 폼에 연결하는 단계를 포함할 수 있다.
또한 본 발명은 전술한 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법의 각 단계를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 제공한다.
본 발명에 따르면 데이터 모델을 폼 형태로 구현하고 폼 형태와 연동하여 업무 로직을 코딩하여 실행 가능한 형태로 고객에게 제시함으로써 고객과 개발자 사이의 원활한 의사 소통을 지원할 수 있고 데이터 모델 및 업무 로직에 대한 테스트를 용이하게 수행할 수 있으며, 데이터베이스 애플리케이션 개발시 작업량 및 개발 비용을 최소화할 수 있다.
이하, 본 발명의 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체의 실시예를 첨부한 도면을 참조로 보다 구체적으로 설명한다.
도 1은 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법의 예시적인 흐름도이다.
도 1을 참조하면, 우선 하나 이상의 데이터베이스 테이블 및 하나 이상의 데이터베이스 테이블의 관계 정의를 포함하는 데이터 모델과 데이터 모델에 대해서 실행 코드 형태로 작성된 업무 로직 메소드를 사용하여 하나 이상의 기본 폼을 자동으로 생성한다(S110).
본 발명의 특징 중의 하나는 업무 로직을 문서화하여 제시하는 대신에 실행 가능한 코드, 즉 실행 코드 형태로 작성된 업무 로직 메소드를 사용하는 것이다.
종래의 경우, 데이터 모델과 업무 로직은 상호 연관되어 구체화된다. 예컨대 업무 로직에 대한 설명을 들으면서 해당 업무 로직에 대한 데이터 모델을 산출하는 과정을 거친다. 데이터 모델은 ERD 형태로 표시되고, 업무 로직은 프로세스 분할도 형태로 표시된다. 이 경우 ERD는 기계적으로 테이블 형태로 변환되는 반면, 업무 로직은 고객과의 인터뷰를 통하여 취득한 정보를 기초로 문서화되기 때문에, 업무 로직이 충분히 상세화되지 못할 수가 있다. 또한 ERD 역시 고객이 이해하기 어려운 부분이 많다는 단점도 있다. 따라서 실제 개발 단계에서 데이터 모델을 수정하거나 다시 구체화하는 경우가 발생한다.
이러한 단점을 개선하기 위해서, 본 발명에 따르면 업무 로직을 문서화 대신에 실행 가능한 코드, 즉 실행 코드 형태로 작성된 업무 로직 메소드를 사용한다.
단계 S110을 보다 상세히 설명하면 다음과 같다.
도 2는 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 하나 이상의 기본 폼을 자동으로 생성하는 단계, 즉 단계 S110의 예시적인 흐름도이다.
도 2를 참조하면, 우선 하나 이상의 데이터베이스 테이블을 입력받아 하나 이상의 기본 폼을 자동으로 생성한다(S111).
즉 하나 이상의 데이터베이스 테이블 각각에 대응하여 하나 이상의 기본 폼이 생성된다. 예컨대 자재 수령, 구매 발주서, 발주처, 담당자 등의 데이터베이스 테이블이 입력되는 경우, 각각의 데이터베이스 테이블에 대해서 각각 하나의 기본 폼이 생성될 수 있다.
이후 하나 이상의 데이터베이스 테이블의 관계 정의를 입력받아 하나 이상의 기본 폼 사이의 관계를 설정한다(S113).
예컨대 하나 이상의 데이터베이스 테이블이 마스터-슬레이브(Mater-Slave) 관계로 정의되면, 해당 관계 정의에 따라서 해당 데이터베이스 테이블에 대응하는 기본 폼이 마스터-슬레이브 폼 형태로 생성된다. 이후 관계 정의에 따라서 마스터-슬레이브 폼 사이에 관계가 설정되며, 이러한 관계 설정은 예컨대 버튼 형태의 사용자 인터페이스로 구현된다.
한편, 하나 이상의 데이터베이스 테이블은 주도 개체의 데이터베이스 테이블 및 주도 개체에 대응하는 하나 이상의 대응 개체의 데이터베이스 테이블을 포함할 수 있다. 이 경우 하나 이상의 기본 폼은 주도 개체에 대응하는 주도 개체 기본 폼을 포함할 수 있다.
주도 개체와 대응 개체는 관계 정의의 양 단에 있는 개체이다. 예컨대 주도 개체는 고객 관점에서 현재 선택한 개체를 의미하며, 대응 개체는 관계 정의에 따라서 주도 개체와 대응되는 개체를 의미한다.
주도 개체 기본 폼은 고객 관점에서 현재 선택한 기본 폼을 의미하며, 주도 개체 및 이에 대응하는 대응 개체, 또는 대응 개체와 관련된 다른 개체들이 표시될 수 있다.
이후 하나 이상의 기본 폼 각각에서 실행되어야 할 업무 로직을 업무 로직 메소드 형태로 입력받는다(S115).
본 발명에서 개발자는 고객으로부터 들은 정보를 바탕으로 업무 로직을 업무 로직 메소드로 코딩하여 입력한다. 또한 업무 로직 메소드는 프로그램 세그먼트(program segment) 파일 형식으로 저장될 수 있으며, 단계 S115에서는 프로그램 세그먼트 파일 형식으로 저장된 업무 로직 메소드를 입력받을 수 있다.
업무 로직 메소드에 대해서는 이후 상세하게 설명한다.
이후 하나 이상의 기본 폼과 업무 로직 메소드를 연결하여 상기 하나 이상의 기본 폼을 실행 가능하도록 설정한다.(S117). 본 발명에 따르면 하나 이상의 기본 폼 각각에서 사용자 인터페이스 등을 통하여 업무 로직 메소드가 실행된다는 점에서 종래의 방법과 차이가 있다. 즉 종래의 방법은 단순히 폼을 생성하여 고객이 원하는 형태의 사용자 인터페이스가 구현되는지를 간단하게 확인하는 구성이지만, 본 발명의 경우 기본 폼을 통하여 실제 업무 로직이 업무 로직 메소드 형태로 구현되어 고객이 원하는 업무 로직이 구현되는지를 용이하게 테스트할 수 있는 구성이라는 점에서 차이가 있다.
한편 단계 S110에서의 하나 이상의 데이터베이스 테이블, 관계 정의, 업무 로직 메소드는 데이터베이스에 저장되어 이후 수정 또는 갱신을 통하여 실제 데이터베이스 애플리케이션 개발 시에 사용될 수 있다. 예컨대 개발자의 확인을 위한 ERD 추출이나 업무 로직의 추출 시에 사용될 수 있다
도 3은 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 하나 이상의 기본 폼의 구현예를 나타내는 도면이다.
도 3을 참조하면, 기본 폼은 "자재 수령 폼"이며, "자재 수령" 데이터베이스 테이블에 대응하여 생성된다. 주도 개체가 "자재 수령"이므로 "자재 수령 폼"은 주도 개체 기본 폼이다. 또한 주도 개체인 "자재 수령"에 대해서 "구매 발주서", "발주처", "담당자" 등의 대응 개체가 표시될 수 있다. 해당 대응 개체는 "구매발주 서", "발주처", "담당자" 등의 버튼 인터페이스를 통하여 고객이 선택하여 표시할 수 있다.
본 발명에 있어서, 업무 로직 메소드는 주도 개체의 인스턴스에서 참조 가능한 하나 이상의 대응 개체의 인스턴스를 참조하는 기능을 수행하는 참조 로직 메소드를 포함할 수 있다. 또한 주도 개체 기본 폼은 참조 로직 메소드를 실행하기 위한 사용자 인터페이스를 포함할 수 있다.
예컨대 도 3을 참조하면, 주도 개체는 "자재 수령"이며, 대응 개체는 "구매 발주서", "발주처", "담당자"이다. 참조 로직 메소드는 주도 개체와 대응 개체의 관계 생성을 구현한다. 참조 로직 메소드는 주도 개체 기본 폼에서 버튼 이벤트 처리에 대응하여 실행된다. 예컨대 도 3을 참조하면, 주도 개체 기본 폼인 "자재 수령 폼"에서 "구매 발주서" 버튼을 누르면, 현재 "자재 수령 폼"의 인스턴스가 참조할 수 있는 대응 개체인 "구매 발주서"의 인스턴스들이 표시된다. 이 경우 대응 개체의 모든 인스턴스들이 표시되는 것이 아니라, 대응 가능한 인스턴스들만을 반환하며, 참조 로직 메소드는 이러한 대응 가능한 인스턴스들만을 표시하는 기능을 수행한다.
참조 로직 메소드는 고객이 미리 정한 형식에 따라서 제공되어야 하며, 주도 개체 기본 폼의 소속 메소드로 정의된다. 참조 로직 메소드는 관련 데이터베이스 테이블을 입력으로 하여 대응 개체의 주 키를 반드시 포함하는 테이블을 출력한다.
출력 테이블은 대응 개체의 주 키 이외에도 대응 개체와 1:1 또는 N:1의 관 계를 가지는 다른 테이블의 속성들도 포함할 수 있다.
또한 출력 테이블은 주도 개체, 대응 개체 뿐만 아니라 이들과 1:1 또는 N:1 또는 1:N의 관계를 가지는 다른 테이블의 속성들도 포함할 수 있으며, 또한 다른 테이블의 속성들의 함수로 정의되는 계산 값들을 가질 수도 있다. 이와 같이 참조 로직 메소드는 유연성을 가지기 때문에, 주도 개체의 인스턴스는 대응 개체 인스턴스를 용이하게 선택할 수 있으며, 또한 연산 결과를 구현할 수 도 있다.
연산은 원칙적으로 모든 연산이 가능하나, 주도 개체 인스턴스의 속성을 특정한 값으로 설정하는 매핑 연산이 가장 많이 사용된다. 본 발명에서는 매핑 연산을 개발자가 프로그래밍하기 보다는 GUI를 사용하여 선언적(Declarative)으로 정의할 수 있다. 매핑 연산 함수는 라이브러리 형태로 제공될 수 있으며, 따라서 이후 단계 S170에서 사용자 모드 폼을 변환하는 경우 개발자는 매핑 연산 함수를 구동하기만 하면 된다. 따라서 개발자는 고객의 요구 사항에 따라서 매핑 연산을 용이하게 변경할 수 있으며, 고객의 요구 사항 변화에 용이하게 대응할 수 있다. 매핑 이외의 연산은 참조 로직 메소드가 아니라 이후에 설명하는 실행 로직 메소드 등을 사용하여 가능하다. 참조 로직 메소드와 실행 로직 메소드 등을 사용하면 주도 개체와 대응 개체의 관계 설정 및 연산을 모두 구현할 수 있다.
또한 본 발명의 명세서에서 현재 주도 개체의 인스턴스와 관계를 맺을 수 있는 대응 개체의 인스턴스 집합을 후보군으로 정의한다. 후보군은 주도 개체 인스턴스의 함수로 주도 개체 인스턴스에 대한 대응 개체 인스턴스의 집합을 의미한다. 이 함수는 관계 제약조건 함수로 지칭되며, 관계 제약조건 함수는 관계에 대해서 하나씩 정의될 수 있다.
관계 제약 조건 함수의 입력 도메인은 주도 개체 테이블이며, 출력은 테이블 형태이다. 관계 제약 조건 함수의 출력 테이블을 관계 제약 테이블이라 지칭한다.
관계 제약 테이블의 주 키는 대응 개체의 주 키와 동일하다. 하지만 관계 제약 테이블은 대응 개체의 속성을 일부만 포함할 수 있으며, 또한 대응 개체가 아닌 다른 개체의 속성을 포함할 수도 있다. 또한 관계 제약 테이블은 계산 필드를 가질 수도 있다. 그러나 관계 제약 테이블은 정의된 바와 같이 반드시 대응 개체의 주 키와 동일한 필드를 포함하여야 한다.
본 발명에 있어서, 참조 로직 메소드는 주도 개체의 필드 및 하나 이상의 대응 개체의 필드를 매핑하기 위한 매핑 메소드를 포함할 수 있다.
예컨대 관계 제약 테이블의 특정 행의 값들은 주도 개체의 인스턴스의 속성들의 값으로 복사(Copy)된다. 이러한 복사를 관계 제약 매핑이라 지칭하며, 매핑 메소드는 이러한 관계 제약 매핑을 수행하기 위한 메소드이다.
관계 제약 매핑은 주도 개체를 폼으로 변환하는 역할을 한다. 즉 주도 개체가 주도 개체 기본 폼으로 전환되면서 관계는 주도 개체 기본 폼의 버튼 인터페이스 등의 사용자 인터페이스로 형상화된다. 해당 버튼 인터페이스를 누르면, 해당 관계에 할당된 관계 제약 테이블이 고객에게 표시된다. 고객이 관계를 설정하고 싶은 관계 제약 테이블의 행을 선택하면, 현재 주도 개체의 인스턴스와 선택된 관계 제약 테이블의 행과 같은 주 키를 가지는 대응 개체의 인스턴스와 관계가 설정된다. 관계 제약 테이블과 대응 개체는 주 키를 공유하므로 1:1 대응 관계가 성립된 다. 또한 관계 제약 테이블의 속성 중 일부가 주도 개체의 속성 중 일부로 복사됨으로서 주도 개체와 대응 개체의 관계가 설정된다.
관계 제약 매핑을 좀 더 상세히 설명하면, 대응 개체의 속성을 직접 주도 개체의 속성으로 복사하는 방식을 사용하지 않고, 매핑 메소드의 출력의 한 값을 주도 개체의 속성으로 복사하는 방식을 사용할 수 있다. 즉 간접적인 레이어(Indirection Layer)를 사용하여 복사를 수행하며 간접적 레이어를 사용하는 이유는 다음과 같다.
우선 매핑시 대응 개체의 속성 뿐만 아니라 대응 개체와 관계를 가지는 모 든 개체의 속성을 매핑 소스(Mapping Source)로 선택할 수 있다. 매핑 메소드가 대응 개체와 관련되는 모든 개체와 조인하여 그 속성값을 가져올 수 있기 때문이다.
또한 각 개체들의 속성값 뿐만 아니라 그 속성을 피연산자로 하는 표현식의 값을 주도 개체의 속성으로 복사할 수도 있다. 이는 매핑 메소드에서 호스트 언어의 표현식을 포함할 수 있기 때문이다.
참조 로직 메소드를 이용하는 참조, 보다 상세히는 관계 제약 매핑을 구현하는 매핑 메소드를 사용한 참조는 예컨대 GUI를 통하여 구현될 수 있다.
도 4는 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 매핑 메소드를 통한 매핑의 구현예를 나타내는 도면이다.
도 4를 참조하면, 매핑 메소드를 실행하여 매핑 메소드의 출력 형식, 칼럼 헤더 이름(도 4에서 A1, A2, A3, A4로 표시됨)과 칼럼 값의 타입(도 4에서 Int, Number, String으로 표시됨)을 추출하고 이 추출값이 관계 제약 테이블 형태로 표 시된다. 또한 그 하단에는 주도 개체의 속성(도 4에서 B1, B2, B3, B4, B5로 표시됨)들이 주도 개체 테이블 형태로 표시된다. 주도 개체의 테이블의 아래 행에는 주도 개체의 속성 값으로 복사할 관계 제약 테이블의 속성을 입력할 수 있다. 도 4에서, 주도 개체의 속성 값으로 복사할 관계 제약 테이블의 속성값들은 A2, A3로 주도 개체 테이블의 아래 행에 표시된다. 이 경우 주도 개체의 속성과 그 값으로 복사해올 관계 제약 테이블의 속성은 그 타입이 동일하여야 한다.
도 5는 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 참조 로직 메소드를 이용하는 참조의 예시적인 흐름도이다.
개발자가 주도 개체 기본 폼에서 참조 로직 메소드를 실행하는 사용자 인터페이스, 예컨대 버튼 인터페이스를 누르면, 매핑 메소드가 실행되어 관계 제약 테이블을 생성한다(S210).
이후 생성된 관계 제약 테이블을 표시한다(S220). 관계 제약 테이블은 예컨대 그리드 형태로 표시될 수 있다.
이후 주도 개체와 대응 개체 사이의 관계 카디낼러티(Cardinality)에 따라서 선택을 수행하게 된다.
즉 주도 개체와 대응 개체 사이의 관계 카디낼러티가 1:1 또는 N:1인 경우인지를 확인한다(S230).
주도 개체와 대응 개체 사이의 관계 카디낼러티가 1:1 또는 N:1인 경우라면 주도 개체에 대해서 하나의 대응 개체와 관계가 설정된다. 따라서 개발자 또는 고객은 표시된 관계 제약 테이블을 사용하여 특정 행을 선택한다(S240). 이후 선택된 대응 개체의 행의 주 키를 현재 주도 개체의 외래 키로 복사한다(S250).
한편 주도 개체와 대응 개체 사이의 관계 카디낼러티가 1:1 또는 N:1이 아닌 경우, 즉 1:N인 경우라면 주도 개체에 대해서 다수의 대응 개체와 관계가 설정된다. 따라서 개발자 또는 고객은 표시된 관계 제약 테이블을 사용하여 다수 행을 선택한다(S260). 이후 현재 주도 개체의 행의 주 키를 선택된 다수 개의 행들의 외래 키, 즉 대응 개체들의 행의 외래 키로 복사한다(S270).
또한 본 발명에 있어서, 업무 로직 메소드는, 주도 개체 기본 폼에서 미리 지정된 실행 기능을 수행하는 실행 로직 메소드와, 주도 개체 기본 폼을 저장하는 경우 제약 조건을 설정하는 제약 조건 로직 메소드와, 주도 개체 기본 폼 내에서 미리 지정되는 연산을 수행하는 계산 필드 로직 메소드 중 적어도 하나 이상을 포함할 수 있다.
실행 로직 메소드는 기존의 DBMS(Database Management System)에서 트리거(Trigger)의 기능과 유사한 기능을 수행하는 메소드이다. 그러나 유지 보수의 편리함과 기본 폼을 호스트 언어로 구현하는 것을 용이하게 하기 위해서, 갱신되는 개체를 하나로 제한한 특징을 가진다. 만약 하나 이상의 개체를 갱신하는 과정이 필요하면, 실행 로직 메소드를 분할하여 여러 개로 구현할 수 있다. 종래 트리거로 구현 가능한 것을 본 발명에서 실행 로직 메소드로 구현하는 이유는 다음과 같다.
우선 트리거로 구현하는 경우에는 호스트 언어 이외에 트리거 언어를 사용하여야 하는 단점이 있다. 또한 트리거로 구현하는 경우에는 특정한 DBMS에 제한될 가능성이 있다. 또한 트리거의 실행 시점은 데이터베이스의 변경 시점에 국한되는 반면, 실행 로직 메소드는 애플리케이션의 특정 실행 시점으로 구현이 가능하므로, 개발자가 용이하게 이해하고 구현할 수 있다는 장점이 있다.
실행 로직 메소드 역시 참조 로직 메소드와 마찬가지로 주도 개체 기본 폼의 버튼 이벤트를 사용하여 실행된다. 따라서 고객은 버튼을 클릭하여 실행 로직 메소드가 실행되는 결과를 주도 개체 기본 폼 또는 다른 기본 폼을 보면서 시각적으로 확인할 수 있으므로 테스트를 용이하게 수행할 수 있다.
한편 제약 조건 로직 메소드는 주도 개체 기본 폼을 저장할 때 데이터베이스 무결성을 위해서 제약 조건을 설정하는 메소드이다. 제약 조건 로직 메소드는 최종 개발자가 프레젠테이션 레이어(presentation layer)를 구현할 때 호출(call)하여 활용할 수 있다. 제약 조건 로직 메소드 역시 DBMS의 트리거로 구현될 수 있다. 그러나 주도 개체 기본 폼을 저장하는 경우는 데이터베이스의 변경을 동반하지 않기 때문에 트리거 실행 시점을 설정하는 것이 어렵다. 따라서 종래에도 제약 조건을 설정하기 위해서 트리거를 사용하지 않는 경우가 대부분이다.
계산 필드 로직 메소드는 주도 개체 기본 폼 내에서 미리 지정되는 연산을 수행하는 메소드이다. 주도 개체 기본 폼 내에서 표시될 수 있는 계산 필드는 저장 필드와 달리 데이터베이스에 저장되지 않고 주도 개체 기본 폼 내에서 필요에 따라 지정된 연산을 수행하여 표시된다. 계산 필드 로직 메소드는 이러한 계산 필드의 값을 연산하기 위한 메소드이다.
계산 필드는 데이터베이스 내의 관련된 저장 필드의 값이 변하면 갱신되어야 한다. 계산 필드의 갱신은 예컨대 저장 필드를 관리하는 제어 구성에서 저장 필드 의 값이 변경되는 경우 이벤트를 발생하고, 이에 대응하는 이벤트 처리 루틴(Routine)에서 계산 필드의 갱신을 처리하는 형태로 수행된다. 그러나 이러한 방식은 프레젠테이션 로직을 복잡하게 하는 요인이 된다. 본 발명의 경우 업무 로직과 프레젠테이션 로직을 분리시키고, 또한 계산 필드의 처리에 대해서는 계산 필드 로직 메소드를 통하여 구현하기 때문에, 계산 필드의 갱신이 필요한 경우에는 계산 필드 로직 메소드를 호출하기만 하면 된다. 따라서 계산 필드와 관련 저장 필드의 관련성을 이용하지 않고서도 모든 저장 필드 값 변화에 대하여 모든 계산 필드를 갱신하는 방식을 사용할 수도 있다. 이러한 방식은 특히 데이터를 캐싱(Caching)하는 리치 클라이언트 (Rich Client) 방식에서 유용하다. 왜냐하면 인-메모리(In memory) 연산이 데이터베이스 접근에 비해서 월등하게 빠르기 때문이다.
한편 주도 개체 기본 폼은 실행 로직 메소드 또는 제약 조건 로직 메소드를 실행하기 위한 사용자 인터페이스를 포함할 수 있다.
예컨대 도 3을 참조하면, "구매 발주서 서브삽입" 및 "구매 발주서 서브삭제" 버튼은 실행 로직 메소드를 실행하기 위한 사용자 인터페이스이다.
"구매 발주서 서브삽입" 버튼을 누르면 구매 발주서 내역으로부터 자재 수령 내역을 변화하는 기능을 수행한다. 또한 "구매 발주서 서브삭제" 버튼을 누르면 자재 수령 내역의 일부 또는 전부를 삭제하는 기능을 수행한다.
제약 조건 로직 메소드 역시 버튼 등의 사용자 인터페이스를 통하여 수행되며, 불리언(Boolean) 값을 출력한다.
계산 필드 로직 메소드는 데이터베이스의 저장 필드로부터 연산을 거쳐서 그 값을 계산하며, 관련 저장 필드가 갱신되는 경우 실행되어 화면상에 연산 결과를 표시한다. 따라서 계산 필드 로직 메소드는 별도의 사용자 인터페이스를 통하여 실행되지 않는다.
한편 단계 S170에서 주도 개체 기본 폼을 사용자 모드 폼으로 변환하는 경우 실행 로직 메소드 또는 제약 조건 로직 메소드를 실행하기 위한 사용자 인터페이스를 삭제될 수 있다.
실행 로직 메소드 또는 제약 조건 로직 메소드는 개발자가 데이터베이스 애플리케이션의 업무 로직을 구현하고 이를 테스트하기 위해서 사용하는 것으로서, 실제 사용자가 데이터베이스 애플리케이션을 사용하는 경우에는 필요가 없는 경우가 많다. 따라서 주도 개체 기본 폼을 사용자 모드 폼으로 변환하는 경우 해당 사용자 인터페이스는 삭제될 수 있다.
이후 다시 도 1을 참조하면, 하나 이상의 기본 폼을 사용하여 데이터 모델 및 업무 로직 메소드를 갱신한다(S130).
단계 S110을 통하여 자동 생성된 하나 이상의 기본 폼은 고객의 요구 사항을 충족시키지는 못하는 단점이 있다. 따라서 하나 이상의 기본 폼들을 통하여 데이터 모델을 수정하면서 상세화하고, 업무 로직 메소드를 수정하면서 상세화하고, 업무 로직 메소드의 런타임(Runtime) 에러를 수정하는 과정이 필요하다.
따라서 우선 단계 S110에서 생성된 하나 이상의 기본 폼을 표시한다.
표시된 하나 이상의 기본 폼을 사용하여 개발자는 고객과의 의사 소통을 통하여 데이터 모델에 대한 수정 사항 및 업무 로직 메소드에 대한 수정 사항을 추출 한다.
이후 하나 이상의 기본 폼에서 데이터 모델에 대한 수정 사항을 입력받아 데이터 모델을 갱신하고, 업무 로직 메소드에 대한 수정 사항을 입력받아 업무 로직 메소드를 갱신한다.
이후 다시 도 1을 참조하면, 단계 S130에서 갱신된 데이터 모델 및 갱신된 업무 로직 메소드를 사용하여 하나 이상의 기본 폼을 갱신한다(S150).
예컨대 단계 S150에서는 데이터 모델의 갱신 사항과 업무 로직 메소드의 갱신 사항을 입력받고 이를 반영하여 하나 이상의 기본 폼을 갱신한다.
이 경우 업무 로직 메소드는 프레젠테이션 로직의 하위 레이어(layer)로서 구현된다. 따라서 본 발명에 있어서 업무 로직은 프레젠테이션 로직과 분리된다.
이후 다시 도 1을 참조하면, 단계 S150에서 갱신된 하나 이상의 기본 폼을 사용자 모드 폼으로 변환한다(S170).
단계 S110 내지 단계 S150을 통하여 고객의 요구에 적합한 데이터 모델과 업무 로직 메소드를 구현한 갱신된 하나 이상의 기본 폼이 도출된다.
그러나 본 발명에 따른 갱신된 하나 이상의 기본 폼과 실제 고객이 원하는 예컨대 GUI(Graphic User Interface) 형태의 사용자 인터페이스, 즉 사용자 모드 폼을 포함하는 데이터베이스 애플리케이션은 사용자 인터페이스 측면에서 차이가 발생할 수 있다. 즉 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 따르면, 개발자는 하나 이상의 기본 폼 및 갱신된 하나 이상의 기본 폼을 통하여 데이터 모델과 업무 로직을 구현하는 것이며 실제 데이터베이스 애 플리케이션의 프레젠테이션 로직을 구현하지는 않는다. 본원 명세서에서는 고객이 원하는 사용자 인터페이스 및 이에 따른 행동들을 프레젠테이션 로직이라고 지칭한다.
따라서 개발자는 호스트 언어가 제공하는 GUI 라이브러리를 이용하여 고객이 요구하는 사용자 모드 폼을 디자인하고 고객이 요구하는 대로 사용자 모드 폼에 따른 행동을 구현하여야 한다.
본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법의 특징적인 구성 중의 하나는, 실행 코드 형태로 업무 로직 메소드가 작성되므로, 업무 로직 메소드는 사용자 모드 폼 작성시 재사용될 수 있다는 것이다. 즉 업무 로직 메소드는 데이터베이스 테이블에 대응하는 클래스의 메소드로 구현되기 때문에, 사용자 모드 폼 내부의 개체들에서 호출이 가능하다. 따라서 개발자는 업무 로직에 대해서는 갱신된 하나 이상의 기본 폼의 업무 로직 메소드를 그대로 사용하면 되며, 다만 프레젠테이션 로직 부문에 대해서는 개발을 하면 된다. 이러한 특징은 본 발명에 있어서, 업무 로직과 프레젠테이션 로직이 완전히 분리되어 있기 때문이다.
따라서 프레젠테이션 로직의 구현을 위해서 데이터 모델을 수정하거나 또는 업무 로직을 수정하여야 하는 종래의 프로토타이핑 방법에 비해서 데이터베이스 애플리케이션 개발의 효율성을 높일 수 있다.
개발자에 의해서 프레젠테이션 로직이 구현되면, 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법은 프레젠테이션 로직을 입력받는 다. 이후 프레젠테이션 로직을 갱신된 하나 이상의 기본 폼에 연결하여 사용자 모드 폼을 생성한다(S170).
한편 사용자 모드 폼을 생성한 이후에도 고객 또는 개발자의 테스트를 통하여 프레젠테이션 로직을 수정할 수 있다. 프레젠테이션 로직이 갱신되면, 갱신된 프레젠테이션 로직을 사용자 모드 폼에 연결하여 사용자 모드 폼을 갱신할 수 있다.
도 6은 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 사용자 모드 폼의 구현예를 나타내는 도면이다.
도 3 및 도 6을 참조하면, 도 3의 기본 폼에서 고객 요구에 따라서 사용자 인터페이스가 변경되어 사용자 모드 폼이 생성되는 것을 확인할 수 있다.
특히 "구매 발주서 서브삽입" 및 "구매 발주서 서브삭제" 버튼 등 실행 로직 메소드를 실행하기 위한 사용자 인터페이스가 삭제된 것을 확인할 수 있다.
본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법은, 데이터베이스 테이블, 관계 정의, 업무 로직 메소드를 통하여 실제 실행 가능한 폼을 자동으로 생성한 후, 고객에게 실행 가능한 폼들을 제시하여, 폼을 사용하여 참조, 실행, 제약 조건, 계산 등을 실제로 수행하여 고객이 원하는 업무 로직이 구현되었는지를 용이하게 확인할 수 있다는 특징을 가진다.
따라서 고객은 자신의 요구사항이 제대로 반영되었는지를 직관적으로 이해할 수 있다. 또한 고객은 폼을 실행하면서 새로운 요구사항 또는 좀 더 세부적인 요구 사항을 용이하게 도출할 수 있다. 고객이 도출된 요구 사항을 개발자에 전달하면, 개발자는 해당 요구 사항을 기초로 데이터 모델 또는 업무 로직 메소드에 대한 수정을 수행할 수 있다. 또한 자동으로 생성되는 폼은 고객이 원하는 GUI가 아닐 수 있으나, 개발자는 프레젠테이션 로직을 사용하여 고객이 원하는 GUI를 개발하고 이를 본 발명에 적용하여 데이터베이스 애플리케이션을 작성할 수 있다. 이 경우에도 업무 로직 메소드는 이미 구현되어 있으며, 또한 업무 로직과 프레젠테이션 로직이 분리되므로 개발자는 프레젠테이션 로직의 개발에만 집중할 수 있다.
또한 본 발명은 전술한 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법의 각 단계를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 제공한다.
컴퓨터로 판독 가능한 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있도록 데이터, 즉 코드 또는 프로그램 형태의 데이터가 저장되는 모든 종류의 기록 장치를 지칭한다. 이러한 컴퓨터로 판독 가능한 기록 매체는 예컨대 ROM, RAM 등의 메모리와, CD-ROM, DVD-ROM 등의 저장 매체, 자기 테이프, 플로피 디스크 등의 자기 저장 매체, 광 데이터 저장 장치 등이며, 예컨대 인터넷을 통한 전송 형태로 구현되는 경우도 포함한다. 또한 이러한 컴퓨터로 판독 가능한 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산 방식으로 컴퓨터가 판독 가능한 데이터가 저장되고 실행될 수 있다.
그러나 이러한 컴퓨터로 판독 가능한 기록 매체에 대한 상세한 설명은 도 1 내지 도 6을 참조로 하는 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 대한 설명과 중복되므로 생략한다.
비록 본 발명의 구성이 구체적으로 설명되었지만 이는 단지 본 발명을 예시적으로 설명한 것에 불과한 것으로, 본 발명이 속하는 기술분야에서 통상의 지식을 가지는 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 변형이 가능할 것이다.
따라서 본 명세서에 개시된 실시예들은 본 발명을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 사상과 범위가 한정되는 것은 아니다. 본 발명의 범위는 아래의 청구범위에 의해 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
이상 설명한 바와 같이, 본 발명에 따르면 데이터 모델을 폼 형태로 구현하고 폼 형태와 연동하여 업무 로직을 코딩하여 실행 가능한 형태로 고객에게 제시함으로써 고객과 개발자 사이의 원활한 의사 소통을 지원할 수 있고 데이터 모델 및 업무 로직에 대한 테스트를 용이하게 수행할 수 있으며, 데이터베이스 애플리케이션 개발시 작업량 및 개발 비용을 최소화할 수 있다.
좀 더 상세히 설명하면, 본 발명에 따르면 자동 생성된 폼을 사용하여 고객이 데이터베이스 애플리케이션의 전체적인 내용을 용이하게 파악할 수 있도록 지원할 수 있다. 예컨대 고객과 개발자는 자동 생성된 폼에 데이터를 입력하면서 데이터 모델을 더욱 용이하고 정확하게 파악할 수 있다.
또한 고객이 제시한 업무 로직을 메소드 형태로 작성한 후 메소드를 자동 생 성된 폼과 연동하여 테스트할 수 있다. 따라서 고객은 자신이 기술한 업무 로직이 정확하게 구현되었는지 용이하게 확인할 수 있으며, 요구 사항의 수정 또는 새로운 요구 사항을 제시할 수 있다.
또한 업무 로직에 대한 메소드는 최종 사용자 폼 작성시에 재사용될 수 있으므로 데이터베이스 애플리케이션 개발 시간과 비용을 절감할 수 있다. 즉 업무 로직에 대한 메소드는 데이터 모델에 대응하는 클래스의 메소드 형태로 구현되기 때문에 최종 사용자 폼의 내부의 개체들에서 호출이 가능하다. 따라서 최종 사용자 폼 개발자는 업무 로직을 구현할 필요가 없이 프레젠테이션 로직만을 개발하여 데이터베이스 애플리케이션을 개발할 수 있다. 또한 전체적인 프로그래밍 작업을 최소화할 수 있고 산출 코드를 단순화시킬 수 있다.
도 1은 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법의 예시적인 흐름도.
도 2는 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 하나 이상의 기본 폼을 자동으로 생성하는 단계의 예시적인 흐름도.
도 3은 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 하나 이상의 기본 폼의 구현예를 나타내는 도면.
도 4는 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 매핑 메소드를 통한 매핑의 구현예를 나타내는 도면.
도 5는 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 참조 로직 메소드를 이용하는 참조의 예시적인 흐름도.
도 6은 본 발명에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법에 있어서, 사용자 모드 폼의 구현예를 나타내는 도면.

Claims (15)

  1. (a) 하나 이상의 데이터베이스 테이블 및 상기 하나 이상의 데이터베이스 테이블의 관계 정의를 포함하는 데이터 모델과 상기 데이터 모델에 대해서 실행 코드 형태로 작성된 업무 로직 메소드를 사용하여 하나 이상의 기본 폼을 자동 생성하는 단계와,
    (b) 상기 하나 이상의 기본 폼을 사용하여 상기 데이터 모델 및 상기 업무 로직 메소드를 갱신하는 단계와,
    (c) 상기 갱신된 데이터 모델 및 상기 갱신된 업무 로직 메소드를 사용하여 상기 하나 이상의 기본 폼을 갱신하는 단계와,
    (d) 상기 갱신된 하나 이상의 기본 폼을 사용자 모드 폼으로 변환하는 단계
    를 포함하는 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  2. 제1항에 있어서, 상기 단계 (a)는,
    (a-1) 상기 하나 이상의 데이터베이스 테이블을 입력받아 상기 하나 이상의 기본 폼을 자동으로 생성하는 단계와,
    (a-2) 상기 하나 이상의 데이터베이스 테이블의 관계 정의를 입력받아 상기 하나 이상의 기본 폼 사이의 관계를 설정하는 단계와,
    (a-3) 상기 하나 이상의 기본 폼 각각에서 실행되어야 할 업무 로직을 상기 업무 로직 메소드 형태로 입력받는 단계와,
    (a-4) 상기 하나 이상의 기본 폼과 상기 업무 로직 메소드를 연결하여 상기 하나 이상의 기본 폼을 실행 가능하도록 설정하는 단계
    를 포함하는 것인 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  3. 제2항에 있어서,
    상기 단계 (a-3)은, 프로그램 세그먼트(program segment) 파일 형식으로 저장된 상기 업무 로직 메소드를 입력받는 단계
    를 포함하는 것인 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  4. 제1항에 있어서,
    상기 하나 이상의 데이터베이스 테이블은 주도 개체의 데이터베이스 테이블 및 상기 주도 개체에 대응하는 하나 이상의 대응 개체의 데이터베이스 테이블을 포함하는 것이고,
    상기 하나 이상의 기본 폼은 상기 주도 개체에 대응하는 주도 개체 기본 폼을 포함하는 것인 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  5. 제4항에 있어서,
    상기 업무 로직 메소드는 상기 주도 개체의 인스턴스에서 참조 가능한 상기 하나 이상의 대응 개체의 인스턴스를 참조하는 기능을 수행하는 참조 로직 메소드를 포함하는 것인 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  6. 제5항에 있어서,
    상기 주도 개체 기본 폼은 상기 참조 로직 메소드를 실행하기 위한 사용자 인터페이스를 포함하는 것인 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  7. 제5항에 있어서,
    상기 참조 로직 메소드는 상기 주도 개체의 필드 및 상기 하나 이상의 대응 개체의 필드를 매핑하기 위한 매핑 메소드를 포함하는 것인 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  8. 제7항에 있어서,
    상기 참조 로직 메소드는, 상기 매핑 메소드를 사용하여 상기 주도 개체의 속성과 상기 하나 이상의 대응 개체의 속성을 테이블 형태로 표시하고, 상기 테이블 형태를 사용하여 사용자 입력을 수신하고, 상기 사용자 입력을 기초로 상기 주도 개체의 속성과 상기 하나 이상의 대응 개체의 속성을 매핑하는 것인 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  9. 제4항에 있어서, 상기 업무 로직 메소드는,
    상기 주도 개체 기본 폼에서 미리 지정된 실행 기능을 수행하는 실행 로직 메소드와, 상기 주도 개체 기본 폼을 저장하는 경우 제약 조건을 설정하는 제약 조건 로직 메소드와, 상기 주도 개체 기본 폼 내에서 미리 지정되는 연산을 수행하는 계산 필드 로직 메소드 중 적어도 하나 이상을 포함하는 것인 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  10. 제9항에 있어서,
    상기 주도 개체 기본 폼은 상기 실행 로직 메소드 또는 상기 제약 조건 로직 메소드를 실행하기 위한 사용자 인터페이스를 포함하는 것인 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  11. 제10항에 있어서,
    상기 단계 (d)는, 상기 주도 개체 기본 폼을 상기 사용자 모드 폼으로 변환 하는 경우 상기 사용자 인터페이스를 삭제하는 단계를 포함하는 것인 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  12. 제1항에 있어서, 상기 단계 (b)는,
    (b-1) 상기 하나 이상의 기본 폼을 표시하는 단계와,
    (b-2) 상기 데이터 모델에 대한 수정 사항을 입력받아 상기 데이터 모델을 갱신하고, 상기 업무 로직 메소드에 대한 수정 사항을 입력받아 상기 업무 로직 메소드를 갱신하는 단계
    를 포함하는 것인 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  13. 제1항에 있어서, 상기 단계 (d)는,
    (d-1) 프레젠테이션 로직을 상기 갱신된 하나 이상의 기본 폼에 연결하여 상기 사용자 모드 폼을 생성하는 단계
    를 포함하는 것인 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  14. 제13항에 있어서, 상기 단계 (d-1)는,
    (d-2) 상기 사용자 모드 폼을 테스트하는 단계와,
    (d-3) 상기 테스트 결과에 따라서 상기 프레젠테이션 로직을 갱신하고 상기 갱신된 프레젠테이션 로직을 상기 사용자 모드 폼에 연결하는 단계
    를 포함하는 것인 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법.
  15. 제1항 내지 제14항 중 어느 한 항에 따른 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법의 각 단계를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체.
KR1020090041052A 2009-05-12 2009-05-12 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체 KR20100122151A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090041052A KR20100122151A (ko) 2009-05-12 2009-05-12 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090041052A KR20100122151A (ko) 2009-05-12 2009-05-12 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체

Publications (1)

Publication Number Publication Date
KR20100122151A true KR20100122151A (ko) 2010-11-22

Family

ID=43407141

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090041052A KR20100122151A (ko) 2009-05-12 2009-05-12 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체

Country Status (1)

Country Link
KR (1) KR20100122151A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018097361A1 (ko) * 2016-11-23 2018-05-31 (주) 더존비즈온 사용자 정의 erp 펑션 생성 방법 및 이를 수행하는 컴퓨팅 시스템
CN112947913A (zh) * 2021-02-26 2021-06-11 金蝶软件(中国)有限公司 业务变更方法、装置及计算机存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018097361A1 (ko) * 2016-11-23 2018-05-31 (주) 더존비즈온 사용자 정의 erp 펑션 생성 방법 및 이를 수행하는 컴퓨팅 시스템
CN112947913A (zh) * 2021-02-26 2021-06-11 金蝶软件(中国)有限公司 业务变更方法、装置及计算机存储介质

Similar Documents

Publication Publication Date Title
US8176470B2 (en) Collaborative derivation of an interface and partial implementation of programming code
US7562340B2 (en) Method for graphically building business rule conditions
US8225288B2 (en) Model-based testing using branches, decisions, and options
US8392873B2 (en) Methods and apparatus for implementing model-based software solution development and integrated change management
US8479093B2 (en) Metamodel-based automatic report generation
CA2937017C (en) Integrated design application
US20160170719A1 (en) Software database system and process of building and operating the same
US20040122699A1 (en) Method and system for integrating workflow management with business intelligence
US11514237B2 (en) Spreadsheet and method for updating same
US20120060141A1 (en) Integrated environment for software design and implementation
US20080028003A1 (en) Structured object model merge tool with static integrity constraint observance
US8548967B1 (en) System for visual query and manipulation of configuration management records
US10417234B2 (en) Data flow modeling and execution
Haarmann et al. Refining case models using cardinality constraints
US8510343B2 (en) Cogeneration of database applications and their databases
KR20100122151A (ko) 자동 생성 폼 기반의 데이터베이스 애플리케이션 생성 방법 및 이를 실현시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체
WO2023109648A1 (zh) 一种模型-代码同步方法
US11526895B2 (en) Method and system for implementing a CRM quote and order capture context service
US20080022258A1 (en) Custom database system and method of building and operating the same
US20230035835A1 (en) System and method of a modular framework for configuration and reuse of web components
Rodríguez et al. Model‐based assisted migration of oracle forms applications: The overall process in an industrial setting
Efe A unification model and tool support for software functional size measurement methods
Fillottrani et al. Ontology Design and Integration with ICOM 3.0-Tool description and methodology
CN117215552A (zh) 交互组件的生成方法、装置、存储介质及计算机设备
Jaksic Design and evaluation of the familiar tool

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
NORF Unpaid initial registration fee