KR20180069939A - 업무 시스템 제공 방법 및 장치 - Google Patents

업무 시스템 제공 방법 및 장치 Download PDF

Info

Publication number
KR20180069939A
KR20180069939A KR1020160160428A KR20160160428A KR20180069939A KR 20180069939 A KR20180069939 A KR 20180069939A KR 1020160160428 A KR1020160160428 A KR 1020160160428A KR 20160160428 A KR20160160428 A KR 20160160428A KR 20180069939 A KR20180069939 A KR 20180069939A
Authority
KR
South Korea
Prior art keywords
page
business system
interface
user
development
Prior art date
Application number
KR1020160160428A
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 KR1020160160428A priority Critical patent/KR20180069939A/ko
Publication of KR20180069939A publication Critical patent/KR20180069939A/ko

Links

Images

Classifications

    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • 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
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06316Sequencing of tasks or work

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Economics (AREA)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Stored Programmes (AREA)

Abstract

업무 시스템 제공 방법 및 장치가 개시된다. 일 실시예에 따른 프로그램의 코딩없이 사용자에게 제공되는 페이지를 기반으로 업무 시스템을 제공하는 업무 시스템 제공 장치는, 메모리; 및 상기 메모리에 저장된 정보를 기초로 상기 업무 시스템을 구현하고, 상기 업무 시스템에 접속한 사용자에게 상기 업무 시스템을 제공하는 제어부를 포함할 수 있다.

Description

업무 시스템 제공 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING WORK SYSTEM}
아래의 실시예들은 업무 시스템 제공 방법 및 장치에 관한 것이다.
전통적인 업무 시스템 제공 방법에서는 설계 단계, 개발 단계 및 테스트 단계를 통해 개발자 중심으로 업무 시스템이 구축되었다. 설계 단계에서는 업무 시스템의 프로세스, 데이터베이스 및 기능을 설계하고, 개발 단계에서는 업무 시스템의 프로그램을 작성하고, 테스트 단계에서는 업무 시스템을 테스트하고 기능을 보완한다. 이러한 전통적인 업무 시스템 제공 방법에서는 설계 단계, 개발 단계 및 테스트 단계가 순차적으로 진행되어 업무 시스템의 구축에 많은 기간이 소요되고, 업무 시스템을 실제로 업무에 사용하는 사용자의 개발 참여가 제한적이고, 업무 환경 변화에 대한 대응이 어렵다. 또한, 전통적인 업무 시스템 제공 방법에서는 테스트 단계에서 설계 단계에서의 오류가 발견될 경우, 업무 시스템의 프로그램을 수정 또는 재작성해야 됨에 따라 업무 시스템의 개발 기간 및 개발 비용이 증가되었다. 또한, 업무 시스템의 개발이 완료된 후에, 업무 환경의 변화 또는 기능 요구사항의 변화로 인하여 업무 시스템의 수정이 필요할 경우, 이를 위한 별도의 프로젝트가 진행되거나, 업무 시스템이 재구축되어야 한다.
최근에는, 이러한 문제점을 해결하기 위하여, 사용자 중심으로 업무 시스템을 개발하기 위한 연구가 계속되고 있다.
본 발명이 해결하고자 하는 과제는, 업무 시스템에 대한 사용자 편의성 및 효율성을 증가시킬 수 있는 사용자 중심의 업무 시스템 제공 방법 및 장치를 제공하는 것에 있다.
본 발명의 일 실시예에 따른 프로그램의 코딩없이 사용자에게 제공되는 페이지를 기반으로 업무 시스템을 제공하는 업무 시스템 제공 장치는, 메모리; 및 상기 메모리에 저장된 정보를 기초로 상기 업무 시스템을 구현하고, 상기 업무 시스템에 접속한 사용자에게 상기 업무 시스템을 제공하는 제어부를 포함하고, 상기 제어부는, 업무 시스템에서의 전체 업무의 흐름을 나타내는 맵 다이어그램을 획득하고, 상기 맵 다이어그램에서 상기 페이지 전체에 포함되는 제1 페이지와 대응되는 제1 페이지 인터페이스 및 상기 페이지 전체에 포함되는 제2 페이지와 대응되는 제2 페이지 인터페이스가 UI(User Interface)상으로 연결될 경우, 상기 제1 페이지와 상기 제2 페이지를 연동시키고, 상기 맵 다이어그램에서 상기 전체 업무 중 개별 단위 업무에 대응되는 프로세스 인터페이스가 UI 상으로 상기 제1 페이지 인터페이스와 연결될 경우, 상기 제1 페이지와 상기 개별 단위 업무를 연동시키고, 상기 프로세스 인터페이스와 대응되고 상기 개별 단위 업무를 나타내는 프로세스 다이어그램을 획득하고, 상기 프로세스 다이어그램에서 상기 페이지 전체에 포함되는 제3 페이지에 대응되는 액티비티 인터페이스 - 상기 액티비티 인터페이스는 제3 페이지에의 억세스에 대한 정보를 나타내는 억세스 권한 정보와 대응됨 - 을 검출한 경우, 상기 제1 페이지 및 상기 제3 페이지를 연동시키고, 상기 억세스 권한 정보를 기초로 상기 업무 시스템에서 접속한 사용자가 상기 제3 페이지에 억세스 가능한 사용자로 확인된 경우, 상기 제1 사용자에게 제3 페이지를 제공하되, 상기 제3 페이지에 억세스 불가능한 사용자에게 상기 제3 페이지를 제공하지 않는 것을 특징으로 할 수 있다.
본 발명의 과제의 해결 수단이 상술한 해결 수단들로 제한되는 것은 아니며, 언급되지 아니한 해결 수단들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명에 의하면, 프로그램의 작성없이 업무 시스템을 개발하여 업무 시스템의 개발 시간을 단축시킬 수 있다.
본 발명에 의하면, 업무 시스템의 설계서를 GUI 방식으로 작성하고, 작성된 설계서를 기반으로 업무 시스템을 개발함으로써, 업무 시스템을 보다 직관적으로 개발할 수 있고, 업무 시스템 개발에 있어서 사용자의 편의성을 증가시킬 수 있다.
본 발명에 의하면, 업무 시스템의 개발 완료 후 즉시 업무 시스템의 동작 확인이 가능할 수 있다.
본 발명에 의하면, 업무 환경 변화 또는 기능 요구사항의 변화에 부합하여 빠르게 업무 시스템을 수정할 수 있고, 이에 따라, 빠르고 효율적으로 업무 시스템의 유지보수를 할 수 있다.
본 발명에 의하면, 페이지를 기반으로 업무 시스템을 개발하되, 맵 다이어그램을 이용하여 전체 업무의 흐름을 정의하고, 프로세스 다이어그램을 이용하여 개별 단위 업무의 흐름을 정의함으로써, 업무 시스템의 페이지 증가에 따른 사용자의 혼란을 최소화시킬 수 있다.
본 발명에 의하면, 데이터베이스의 테이블의 엔터티와 매칭되는 블록을 기본으로 페이지의 레이아웃을 정의함으로써, 프로그램의 코딩없이 업무 시스템을 구축할 수 있다.
본 발명에 의하면, 사용자에게 개발 데이터를 제공함으로써, 사용자가 개발 데이터를 설계하지 않고도 업무 시스템을 구축하도록 할 수 있다.
본 발명에 의하면, 포인트의 획득을 조건으로 사용자에게 개발 데이터를 제공함으로써, 개발 데이터 제공에 따른 수익을 창출할 수 있다.
도 1은 일 실시예에 따른 업무 시스템 제공 시스템을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 업무 시스템 제공 장치를 나타낸 블록도이다.
도 3은 일 실시예에 따른 업무 시스템 개발 방법을 나타낸 동작 흐름도이다.
도 4는 일 실시예에 따른 업무 시스템 제공 방법을 나타낸 동작 흐름도이다.
도 5는 일 실시예에 따른 업무 시스템 개발 툴의 기본 인터페이스를 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 업무 시스템 개발 툴에서의 프로젝트의 생성을 설명하기 위한 도면이다
도 7은 일 실시예에 따른 업무 시스템 개발 툴에서의 어플리케이션의 생성을 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 업무 시스템 개발 툴에서의 데이터베이스 관리 시스템과의 연결을 설명하기 위한 도면이다.
도 9는 일 실시예에 따른 업무 시스템 개발 툴에서의 맵 다이어그램을 설명하기 위한 도면이다.
도 10는 다른 일 실시예에 따른 업무 시스템 개발 툴에서의 맵 다이어그램을 설명하기 위한 도면이다.
도 11은 일 실시예에 따른, 업무 시스템 개발 툴에서의 트랜잭션의 설정을 설명하기 위한 도면이다.
도 12는 일 실시예에 따른, 업무 시스템 개발 툴에서의 프로세스 인터페이스를 설명하기 위한 도면이다.
도 13은 일 실시예에 따른 업무 시스템 개발 툴에서의 프로세스 다이어그램을 설명하기 위한 도면이다.
도 14는 일 실시예에 따른 업무 시스템 개발 툴에서의 테이블의 설계를 설명하기 위한 도면이다.
도 15 및 16을 일 실시예에 따른 업무 시스템 개발 툴의 페이지 구성 시트를 설명하기 위한 도면이다.
도 17은 일 실시예에 따른 업무 시스템 개발 툴에서의 템플릿 구성 시트를 설명하기 위한 도면이다.
도 18은 일 실시예에 따른 블록의 유형을 설명하기 위한 도면이다.
도 19는 일 실시예에 따른 블록을 설명하기 위한 도면이다.
도 20은 일 실시예에 따른 블록의 배치 및 속성 설정을 설명하기 위한 도면이다.
도 21은 다른 일 실시예에 따른 블록의 배치 및 속성 설정을 설명하기 위한 도면이다.
도 22 및 23은 일 실시예에 따른 플러그인을 설명하기 위한 도면이다.
도 24는 일 실시예에 따른 개발 데이터 제공 장치를 나타낸 블록도이다.
도 25는 일 실시예에 따른 개발 데이터 제공 방법을 나타낸 동작 흐름도이다.
도 26은 다른 일 실시예에 따른 개발 데이터 제공 방법을 나타낸 동작 흐름도이다.
도 27은 일 실시예에 따른 구매 포인트의 검색 인터페이스를 설명하기 위한 도면이다.
도 28은 또 다른 일 실시예에 따른 개발 데이터 제공 방법을 나타낸 동작 흐름도이다.
도 29는 일 실시예에 따른 개발 데이터의 업데이트 방법을 나타낸 동작 흐름도이다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 일 실시예들에 의해 제한되거나 한정되는 것은 아니다. 또한, 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일 실시예에 따른 업무 시스템 제공 시스템을 설명하기 위한 도면이다.
도 1을 참조하면, 업무 시스템 제공 시스템(100)은 업무 시스템 제공 장치(110) 및 개발 데이터 제공 장치(140)를 포함할 수 있다. 업무 시스템 제공 장치(110)는 업무 시스템을 개발하고, 개발된 업무 시스템을 사용자에게 제공하기 위한 장치를 의미하는 것으로, 업무 시스템 개발 장치(120) 및 업무 시스템 제공 서버(130)를 포함할 수 있다. 일 실시예에서, 업무 시스템 개발 장치(120) 및 업무 시스템 제공 서버(130)는 물리적으로 분리된 장치일 수 있고, 이 경우, 업무 시스템 개발 장치(120) 및 업무 시스템 제공 서버(130)는 유선/무선 네트워크를 통해 연결될 수 있다. 다른 일 실시예에서, 업무 시스템 개발 장치(120) 및 업무 시스템 제공 서버(130)는 물리적으로 하나의 장치로 구성될 수도 있다.
구체적으로, 업무 시스템 개발 장치(120)는 설계자의 제어에 따라 업무 시스템을 개발할 수 있다. 여기서, 업무 시스템은 업무 처리 전 과정을 전자적으로 관리하는 시스템을 의미하는 것으로, 예를 들어, 업무 시스템은 MIS(Management Information System), SFA(Sales Forces Automation), PMS(Project Management System), 그룹웨어(groupware), CRM(Customer Relationship Management), ERP(Enterprise Resource Planning), FFA(Field Force Automation)에 이용될 수 있다. 또한, 본 명세서에서 업무 시스템 개발 장치(120)는 장치(device)로 표현되었지만, 업무 시스템 개발 장치(120)는 하나의 독립된 장치일 수도 있고, 다른 장치에 포함된 장치일 수도 있고, 서버의 형태일 수도 있다.
업무 시스템 개발 장치(120)는 프로그램의 코딩없이 업무 시스템을 개발할 수 있다. 이에 따라, 업무 시스템 개발 장치(120)는 전통적인 업무 시스템 개발 방법과는 달리, 설계 단계, 개발 단계 및 테스트 단계를 순차적으로 진행하지 않고, 설계 단계, 개발 단계 및 테스트 단계를 병행하여 진행할 수 있다. 일 예로, 전통적인 업무 시스템 개발 방법에서는 프로그램을 코딩하여 업무 시스템을 개발할 경우, 업무 환경이 변경되거나, 업무 시스템의 기능이 변경될 경우, 프로그램을 수정해야 하고, 프로그램의 수정시 오류가 발생될 경우 오류복구에 많은 시간이 소요될 수 있다. 반면, 업무 시스템 개발 장치(120)는 프로그램의 코딩없이 업무 시스템을 개발함으로써, 업무 환경의 변경 또는 업무 시스템의 기능의 변경을 빠르게 업무 시스템에 반영할 수 있고, 업무 시스템의 수정 즉시 테스트를 수행할 수 있어, 프로그램의 오류 발생을 최소화할 수 있다.
일 실시예에서, 업무 시스템 개발 장치(120)는 설계자를 인증하고, 인증에 성공한 설계자의 제어에 따라 업무 시스템을 생성할 수 있다. 일 예로, 업무 시스템 개발 장치(120)는 SSO 통합 인증과 같은 인증 방법을 통해 업무 시스템 개발 장치(120)에 접속하는 설계자를 인증할 수 있다.
또한, 일 실시예에서, 업무 시스템 개발 장치(120)는 업무 시스템을 개발하기 위한 업무 시스템 개발 툴을 설계자에게 제공할 수 있다. 이 때, 업무 시스템 개발 툴은 설계자에 의해 이용되며, 업무 시스템 개발 장치(120)는 설계자의 업무 시스템 개발 툴의 이용에 따라 개발 데이터를 생성할 수 있다. 상기 개발 데이터는 업무 시스템의 구현에 이용될 수 있다.
또한, 일 실시예에서, 업무 시스템 개발 장치(120)는 개발된 업무 시스템을 메타 데이터로 변환하고, 변환된 메타 데이터를 업무 시스템 제공 서버(130)에 전송할 수 있다. 일 예로, 업무 시스템 개발 장치(120)는 업무 시스템 개발 툴로부터의 개발 데이터를 메타 데이터로 변환할 수 있다.
업무 시스템 제공 서버(130)는 수신한 메타 데이터를 기초로 사용자에게 업무 시스템을 제공할 수 있다. 예를 들어, 업무 시스템 제공 서버(130)는 업무 시스템을 웹서비스로 제공할 수도 있고, 모바일 서비스로 제공할 수 있다. 또한, 업무 시스템 제공 서버(130)는 페이지(또는, 웹 페이지) 단위로 업무 시스템을 제공할 수 있다. 일 예로, 업무 시스템 제공 서버(130)는 HTML5를 지원하여 다양한 브라우저로 업무 시스템을 제공할 수도 있고, 다양한 웹 표준을 지원하여 업무 시스템을 제공할 수도 있다. 또한, 업무 시스템 제공 서버(130)는 업무 시스템에 대한 데이터베이스를 생성하고, 사용자에게 생성된 데이터베이스를 제공할 수 있다.
다른 예로서, 업무 시스템 제공 서버(130)는 수신한 메타 데이터를 기초로 업무 시스템의 페이지 각각을 구성하는 섹션들의 트랜잭션 처리를 수행하여, 연결관계가 있는 페이지들을 연결할 수 있고, 각 페이지의 연결을 반영한 메타 데이터를 업무 시스템 개발 장치(120)에 리턴할 수 있다. 업무 시스템 개발 장치(120)는 리턴된 메타 데이터를 기초로 각 페이지들의 UI 렌더링을 수행할 수 있고, 섹션들의 데이터를 조회하여 페이지들 및 페이지들을 포함하는 업무 시스템을 생성할 수 있다.
또한, 일 실시예에서, 업무 시스템 개발 장치(120) 역시 사용자에게 업무 시스템을 제공할 수 있다. 이 때, 업무 시스템 개발 장치(120)는 설계자에 의해 업무 시스템이 개발될 때, 개발 데이터에 대응되는 페이지를 미리보기 형식으로 제공할 수도 있고, 업무 시스템 제공 서버(130)와 같이 사용자에게 업무 시스템을 제공할 수도 있다.
또한, 개발 데이터 제공 장치(140)는 설계자에 의해 개발된 개발 데이터를 관리할 수 있다. 예를 들어, 개발 데이터 제공 장치(140)는 업무 시스템 개발 장치(120)와 유선/무선 네트워크를 통해 통신을 수행할 수 있고, 업무 시스템 개발 장치(120)로부터 개발 데이터를 획득할 수 있다. 또한, 업무 시스템 개발 장치(120)가 개발 데이터 제공 장치(140)에 개발 데이터를 요청할 경우, 개발 데이터 제공 장치(140)는 개발 데이터를 업무 시스템 개발 장치(120)에 제공할 수 있다. 이에 따라, 업무 시스템 개발 장치(120)에서 개발 데이터가 삭제된 경우에도, 개발 데이터 제공 장치(140)가 업무 시스템 개발 장치(120)에 개발 데이터를 제공함으로써, 개발 데이터를 동기화할 수 있다.
또한, 개발 데이터 제공 장치(140)는 업무 시스템 개발 장치(120)로부터 획득된 개발 데이터를 업무 시스템 개발 장치(120)가 아닌 다른 업무 시스템 개발 장치에 제공할 수 있다. 예를 들어, 개발 데이터 제공 장치(140)는 복수의 업무 시스템 개발 장치로부터 개발 데이터를 획득하고, 개발 데이터의 공유를 위한 데이터베이스를 구축하고, 데이터베이스에 획득한 개발 데이터를 제공할 수 있다. 이후, 개발 데이터 제공 장치(140)는 임의의 업무 시스템 개발 장치가 특정 개발 데이터의 제공을 요청할 경우, 상기 임의의 업무 시스템 개발 장치에 상기 특정 개발 데이터를 제공할 수 있다. 이에 따라, 상기 임의의 업무 시스템 개발 장치에서는 업무 시스템 개발 툴에 상기 특정 개발 데이터를 적용하여 업무 시스템을 구축할 수 있다. 이 경우, 상기 임의의 업무 시스템 개발 장치의 사용자는 업무 시스템 개발 툴을 이용하여 페이지와 같은 업무 시스템의 구성요소를 설계하지 않고도, 개발 데이터의 획득만으로 업무 시스템을 개발할 수 있다.
또한, 일 실시예에서, 개발 데이터 제공 장치(140)는 상기 임의의 업무 시스템 개발 장치의 사용자로부터 포인트를 획득하는 조건으로 상기 임의의 업무 시스템 개발 장치에 개발 데이터를 제공할 수 있다. 이에 따라, 개발 데이터 제공 장치(140)는 개발 데이터의 제공을 통하여 수익을 창출할 수 있다.
이하에서는, 업무 시스템 제공 장치(110) 및 개발 데이터 제공 장치(140)에 대하여 보다 구체적으로 설명한다.
<업무 시스템의 개발 및 제공>
이하에서는, 설명의 편의를 위하여, 도 1의 업무 시스템 제공 장치(110)의 동작으로 업무 시스템의 개발 및 제공에 대해 설명한다. 따라서, 이하에서의 업무 시스템 제공 장치(110)에 대한 설명은 도 1의 업무 시스템 개발 장치(120) 및 업무 시스템 제공 서버(130)에 적용될 수 있다.
도 2는 일 실시예에 따른 업무 시스템 제공 장치를 나타낸 블록도이다.
도 2를 참조하면, 업무 시스템 제공 장치(200)는 메모리(210), 제어부(220) 및 통신 인터페이스(230)를 포함할 수 있다.
메모리(210)는 제어부(220)에서 처리되는 정보를 저장하거나, 저장된 정보를 제어부(220)에 제공할 수 있다.
제어부(220)는 통신 인터페이스(230)를 통하여 정보를 입력받거나 출력할 수 있다. 또한, 제어부(220)는 통신 인터페이스(230)를 통하여 외부 장치와 통신을 수행할 수 있다. 예를 들어, 업무 시스템 제공 장치(200)가 도 1의 업무 시스템 개발 장치(120) 및 업무 시스템 제공 서버(130)로 분리될 수 있는 경우, 업무 시스템 개발 장치(120)의 통신 인터페이스 및 업무 시스템 제공 서버(130)의 통신 인터페이스는 통신적으로 연결되고, 이에 따라, 업무 시스템 개발 장치(120) 및 업무 시스템 제공 서버(130)는 상호간에 통신을 수행할 수 있다.
또한, 제어부(220)는 업무 시스템을 프로그램의 작성없이 GUI를 기반으로 개발할 수 있다. 일 실시예에서, 제어부(220)는 업무 시스템 개발 툴에 의해 생성된 맵 다이어그램을 획득하고, 맵 다이어그램에 포함된 페이지 인터페이스들의 연결관계로부터 업무 시스템에서의 전체 업무의 흐름을 구성할 수 있다. 또한, 제어부(220)는 맵 다이어그램에서 프로세스 인터페이스가 포함된 경우, 업무 시스템 개발 툴에 의해 생성된 프로세스 다이어그램을 획득하고, 프로세스 다이어그램에 포함된 액티비티 인터페이스로부터 상기 프로세스 인터페이스에 대응하는 개별 단위 업무의 흐름을 구성할 수 있다. 즉, 제어부(220)가 맵 다이어그램을 페이지 인터페이스뿐만 아니라, 프로세스 인터페이스를 포함하여 구성하고, 프로세스 인터페이스에 대응하는 개별 단위 업무를 프로세스 다이어그램에서 정의함에 따라, 사용자는 직관적으로 전체 업무 및 개발 단위 업무의 흐름을 설계할 수 있게 된다.
또한, 다른 일 실시예에서, 제어부(220)는 업무 시스템을 페이지 단위로 제공한다. 이 때, 업무 시스템에서 제공되는 페이지는 블록을 단위로 구성될 수 있다. 즉, 업무 시스템 개발 툴에서 블록의 배치 및 속성이 설정되면, 제어부(220)는 설정된 블록의 배치 및 소성에 따라 페이지의 레이아웃을 구성할 수 있다. 또한, 일 실시예에서, 블록은 데이터베이스의 테이블의 엔터티와 매칭될 수 있다. 이에 따라, 블록에서 저장되거나 변경되는 사항들은 해당 블록과 매칭되는 엔터티에 반영될 수 있고, 이에 따라, 복잡한 코딩 과정 없이도, 간편하게, 데이터베이스와 페이지가 연동될 수 있다.
도 2에 도시된 업무 시스템 제공 장치에는 도 3 내지 도 23을 통해 설명되는 내용이 그대로 적용될 수 있으므로, 보다 상세한 내용은 생략한다.
도 3은 일 실시예에 따른 업무 시스템 개발 방법을 나타낸 동작 흐름도이다.
여기서, 업무 시스템 제공 장치는 업무 시스템을 설계하기 위한 업무 시스템 개발 툴을 제공할 수 있다. 여기서, 업무 시스템은 적어도 하나의 세부 업무를 포함하는 전체 업무를 전자적으로 처리하기 위한 시스템을 의미할 수 있다. 예를 들어, 하나의 전체 업무에 복수개의 세부 업무가 포함되고, 복수개의 세부 업무 각각은 순차적으로 진행될 수도 있고, 병렬적으로 진행될 수도 있으며, 복수개의 세부 업무 각각은 독립적일 수도 있다. 또한, 복수개의 세부 업무 각각의 업무 또는 업무 수행자는 동일할 수도 있고, 상이할 수도 있다.
다만, 전체 업무 및 세부 업무는 상대적인 개념으로, 각 상황에 따라 전체 업무가 포함하는 업무범위 및 세부 업무가 포함하는 업무 범위는 달라질 수 있다. 예를 들어, 업무 시스템 제공 장치에 의해 A사 업무 시스템이 구축될 경우, 전체 업무는 A사 업무 전체일 수 있고, 이 경우, 세부 업무는 급여관리 업무, 고객관리 업무 및 특허관리 업무를 포함할 수 있다. 반면, 업무 시스템 제공 장치에 의해 B사 업무 시스템이 구축될 경우, 전체 업무는 B사의 급여 관리 업무일 수 있고, 세부 업무는 급여 산정 업무, 급여 제공 업무 등을 포함할 수 있다.
도 3을 참조하면, 업무 시스템 제공 장치는 업무 시스템을 개발하기 위한 업무 시스템 툴을 제공할 수 있다(310). 여기서, 업무 시스템 개발 툴은 사용자가 프로그램을 직접 코딩하지 않고도, GUI(Graphic User Interface)를 기반으로 업무 시스템을 개발할 수 있는 소프트웨어를 의미할 수 있다. 일 예로, 업무 시스템 개발 툴은 업무 시스템 제공 장치의 메모리에 저장될 수 있다.
업무 시스템 제공 툴은 사용자가 업무 시스템의 구성요소를 설계할 수 있도록 구성할 수 있다. 이를 위해, 업무 시스템 제공 툴에서는 업무 시스템의 각 구성요소들을 나타낼 수 있는 용어들이 제공된다. 예를 들어, 업무 시스템 제공 툴에서, 업무 시스템의 전체 업무는 프로젝트로 표현될 수 있고, 업무 시스템의 세부 업무는 어플리케이션으로 표현될 수 있다. 또한, 업무 시스템의 개별 단위 업무는 프로세스로 표현될 수 있다. 여기서, 업무 시스템의 개별 단위 업무는, 세부 업무에서 복수의 절차로 처리될 수 있는 업무를 나타낼 수 있다. 일 예로, 세부 업무가 급여관리 업무일 경우, 급여 열람 업무는 단일 절차로 처리될 수 있는 반면, 연봉조정 업무의 경우에는 근로자의 요청, 인사 담당자의 결정, 급여 관리자의 확인 등 복수의 절차로 처리되어야 한다. 이 때, 복수의 절차로 처리되는 급여관리 업무는 개별 단위 업무가 될 수 있다. 또한, 업무 시스템에서 사용자에게 제공되는 화면은 페이지로 정의될 수 있다.
이하에서, 설명의 편의를 위하여, 어플리케이션을 개발할 경우를 상정하여 업무 시스템 개발 장치를 설명한다.
또한, 업무 시스템 제공 장치는, 업무 시스템 개발 툴에 의해 생성된 개발 데이터를 관리할 수 있다(320).
구체적으로, 업무 시스템의 개발을 위해, 업무 시스템 개발 툴에서는 업무 시스템의 구성요소들을 개발할 수 있는 시트가 제공된다. 예를 들어, 업무 시스템 개발 툴에서는, 어플리케이션의 업무의 흐름을 나타내는 맵 다이어그램을 정의하기 위한 맵 다이어그램 구성 시트 및 어플리케이션의 개별 단위 업무의 흐름을 나타내는 프로세스 다이어그램 구성 시트가 제공될 수 있다.
또한, 업무 시스템 개발 툴에서는, 업무 시스템에서 제공되는 각 페이지의 구성요소, 레이아웃 등을 정의하기 위한 페이지 구성 시트 및 어플리케이션과 연동되는 데이터베이스의 테이블을 정의하기 위한 테이블 구성 시트가 제공될 수 있다. 이 외에도, 어플리케이션의 각 구성요소를 정의하기 위한 시트들이 업무 시스템 개발 툴에서 제공될 수 있다.
또한, 개발 데이터는 업무 시스템의 개발을 위해 업무 시스템 개발 툴에서 생성된 데이터를 의미하는 것으로, 상기 전술한 각 시트에 의해 생성된 데이터를 포함할 수 있다. 예를 들어, 맵 다이어그램 구성 시트의 설계 결과는 맵 다이어그램 데이터로 출력되고, 프로세스 다이어그램 구성 시트의 설계 결과는 프로세스 다이어그램 데이터로 출력될 수 있다. 또한, 페이지 구성 시트의 설계 결과는 페이지 데이터로 출력되고, 테이블 구성 시트의 설계 결과는 테이블 데이터로 출력될 수 있다. 업무 시스템 제공 장치는 맵 다이어그램 데이터, 프로세스 다이어그램 데이터, 페이지 데이터, 테이블 데이터를 개발 데이터로 관리할 수 있다. 또한, 업무 시스템 제공 장치는 이하에서 설명될 템플릿 데이터 및 블록 템플 데이터, 블록 데이터를 개발 데이터로 관리할 수 있으며, 이외에도, 업무 시스템의 개발에 이용되는 다른 데이터 역시 개발 데이터로 관리할 수 있다.
또한, 업무 시스템 제공 장치는 개발 데이터를 메모리에 저장하고, 업무 시스템 개발 장치에서 개발 데이터를 호출할 때 해당 개발 데이터를 제공할 수 있다. 또한, 업무 시스템 제공 장치는 업무 시스템 개발 툴에서 사용자에 의해 변경 된 사항, 대표적으로는 개발 데이터를, 업무 시스템 제공 장치가 아닌 다른 장치(예를 들어, 업무 시스템 제공 장치와 연동되는 서버)에 저장하고, 상기 사용자에 의해 변경 된 사항을 업무 시스템 개발 장치와 상기 다른 장치 사이에서 동기화하여 관리할 수 있다. 예를 들어, 업무 시스템 제공 장치는 도 1의 개발 데이터 관리 장치(140)과 같이, 업무 시스템 제공 장치와 통신적으로 연결된 다른 장치에 개발 데이터를 저장하고, 업무 시스템 개발 툴이 개발 데이터를 호출할 경우에 개발 데이터 관리 장치(140)로부터 개발 데이트를 획득하여 업무 시스템 개발 툴에 개발 데이터를 제공할 수 있다. 이에 따라, 업무 시스템 제공 장치에서 개발 데이터가 삭제된 경우에도 언제든지 개발 데이터를 복구할 수 있다.
또한, 업무 시스템 제공 장치는, 개발 데이터를 기초로 메타 데이터를 생성할 수 있다(330). 구체적으로, 업무 시스템 제공 장치는 업무 시스템 개발 툴에서 설계된 업무 시스템을 구현하기 위한 정보를 나타내는 메타 데이터를 생성할 있다. 이 때, 업무 시스템 개발 장치는, 업무 시스템 개발 툴에서 출력되는 개발 데이터를 메타 데이터 형식으로 변환하고 이를 메타 데이터 전체에 포함시킬 수 있다.
업무 시스템 제공 장치는 메타 데이터를 기초로 업무 시스템을 시뮬레이션하여 업무 시스템의 동작을 확인하고, 시뮬레이션 결과를 기초로 업무 시스템의 오류를 검출할 수 있다.
또한, 업무 시스템 제공 장치는 메타 데이터를 이용하여 업무 시스템을 구현하고, 사용자에게 업무 시스템을 제공할 수 있다.
또한, 업무 시스템 제공 장치는 업무 시스템이 업무 시스템 제공 장치가 아닌 다른 장치에서 구현될 경우, 상기 다른 장치에서 업무 시스템이 구현되도록 상기 다른 장치에 메타 데이터를 전송할 수 있다.
도 4는 일 실시예에 따른 업무 시스템 제공 방법을 나타낸 동작 흐름도이다.
도 4를 참조하면, 업무 시스템 제공 장치는 개발 데이터를 획득할 수 있다(410). 구체적으로, 업무 시스템 제공 장치는 업무 시스템 개발 툴에서 생성된 개발 데이터를 획득할 수도 있고, 업무 시스템 제공 장치가 아닌 다른 장치로부터 개발 데이터를 획득할 수 있다.
또한, 업무 시스템 제공 장치는 개발 데이터가 포함된 메타 데이터를 획득할 수 있다. 이 경우, 업무 시스템 제공 장치는 메타 데이터로부터 개발 데이터를 추출하거나, 메타 데이터를 개발 데이터 형식으로 변환할 수 있다.
또한, 업무 시스템 제공 장치는 개발 데이터를 기초로 업무 시스템을 제공할 수 있다(420). 업무 시스템 제공 장치는, 개발 데이터 중 맵 다이어그램 데이터를 이용하여 어플리케이션의 업무 전체의 흐름을 구성하고, 프로세스 다이어그램 데이터를 이용하여 개별 단위 업무의 흐름을 구성할 수 있다. 또한, 페이지 데이터를 이용하여 업무 전체 또는 개별 단위 업무를 수행하기 위하여 사용자에게 제공되는 페이지의 구성요소 및 레이아웃을 정의하고, 테이블 데이터를 이용하여 어플리케이션과 연동되는 데이터베이스의 테이블 및 테이블간의 연결관계를 구성할 수 있다. 이와 같이, 업무 시스템 제공 장치는 각 개발 데이터를 기초로 업무 시스템의 세부요소를 구현하고, 구현된 세부요소를 기반으로 사용자에게 업무 시스템을 제공할 수 있다.
도 5 내지 도 23에서는 업무 시스템 개발 툴과 함께 업무 시스템 제공 장치의 동작에 대해 구체적으로 설명한다.
도 5는 일 실시예에 따른 업무 시스템 개발 툴의 기본 인터페이스를 설명하기 위한 도면이다.
도 5를 참조하면, (a)는 업무 시스템 개발 툴을 나타낸다. 기본적으로, 업무 시스템 개발 툴은 제1 영역(511) 및 제2 영역(512)으로 구성될 수 있다. 제1 영역(511)는 업무 시스템의 구성요소를 선택할 수 있는 영역을 나타내고, 제2 영역(512)는 상기 구성요소를 설계할 수 있는 영역을 나타낸다.
또한, (b)의 영역(530)은 (a)의 제1 영역(511)을 확대한 것이다. 영역(530)에는, 프로젝트가 최상위층에 배치되고, 프로젝트의 하위층으로 적어도 하나의 어플리케이션이 배치된다. 또한, 어플리케이션에 하위층에는 프로세스 다이어그램, 기능맵 다이어그램, ER 다이어그램 및 구성요소가 배치된다. 여기서, 기능맵 다이어그램은 전술된 맵 다이어그램을 나타내고, ER 다이어그램은 데이터베이스의 테이블간의 관계도를 나타낼 수 있다. 또한, 영역(530)에 나타난 구성요소는 상술한 맵 다이어그램 구성 시트, 프로세스 다이어그램 구성 시트, 테이블 구성 시트, 페이지 구성 시트에서 이용되는 구성요소들을 의미할 수 있다.
도 6은 일 실시예에 따른 업무 시스템 개발 툴에서의 프로젝트의 생성을 설명하기 위한 도면이다.
도 6을 참조하면, 업무 시스템 개발 툴은 프로젝트의 생성을 위하여 프로젝트 생성 인터페이스(610)를 제공할 수 있다. 전술한 바와 같이, 업무 시스템 개발 툴에서 프로젝트는 업무 시스템의 전체 업무를 나타내고, 프로젝트는 적어도 하나의 어플리케이션을 포함할 수 있다.
프로젝트 생성 인터페이스(610)를 통해, 업무 시스템 제공 장치는 사용자로부터 프로젝트 명칭, 기업 정보, 프로젝트 관리자에 대한 정보를 획득할 수 있다. 이 때, 상기 프로젝트 관리자 외의 다른 사용자는 생성되는 프로젝트의 수정이 제한될 수 있다. 또한, 프로젝트 생성 인터페이스(610)를 통해, 업무 시스템 제공 장치는 도 7에서 후술할 어플리케이션 센터에 관한 정보를 획득할 수 있다. 또한, 업무 시스템 제공 장치는 획득된 정보를 기초로 프로젝트를 생성할 수 있다.
도 7은 일 실시예에 따른 업무 시스템 개발 툴에서의 어플리케이션의 생성을 설명하기 위한 도면이다.
도 7을 참조하면, (a)에서, 업무 시스템 개발 툴은 어플리케이션의 생성을 위하여 어플리케이션 생성 인터페이스(710)를 제공할 수 있다. 업무 시스템 제공 장치는, 어플리케이션 생성 인터페이스(710)를 통하여 어플리케이션이 포함될 프로젝트의 식별자 및 명칭, 기업 정보, 어플리케이션의 사용자에 대한 정보를 획득할 수 있다. 이때, 업무 시스템 제공 장치는 어플리케이션 생성 인터페이스(710)을 통해 상기 사용자의 권한을 입력받을 수 있다. 예를 들어, 상기 사용자의 권한은 어플리케이션 전체를 관리할 수 있는 권한, 맵 다이어그램, 프로세스 다이어그램, 테이블, 각 페이지의 구성요소 중 적어도 하나를 관리할 수 있는 권한을 포함할 수 있다.
또한, 업무 시스템 제공 장치는 어플리케이션 센터에 대한 정보를 획득할 수 있다. 여기서, 어플리케이션 센터는 어플리케이션의 설계에 이용되는 개발 데이터를 관리하는 장치를 의미할 수 있다. 예를 들어, 도 1의 개발 데이터 관리 장치(140)는 어플리케이션 센터에 대응될 수 있다. 업무 시스템 제공 장치는 어플리케이션 생성 인터페이스(710)를 통하여 어플리케이션 센터의 어드레스에 대한 정보를 획득할 수 있다. 업무 시스템 제공 장치는 획득한 정보를 기초로 어플리케이션을 생성할 수 있다.
생성된 어플리케이션은 업무 시스템 개발 툴에서의 설계에 따라 맵 다이어그램 데이터 및 프로세스 다이어그램 데이터, 테이블 데이터, 페이지 데이터 등 개발 데이터를 포함할 수 있다. 이 때, 생성된 어플리케이션에서의 개발 데이터는 다른 어플리케이션에 의해 억세스 될 수 없다. 이에 따라, 어플리케이션간의 독립성이 유지되고, 업무 시스템을 설계하는 사용자의 혼돈을 방지할 수 있다. 물론, 설정에 따라, 상기 생성된 어플리케이션에서의 개발 데이터는 다른 어플리케이션에 의해 억세스될 수도 있다. 이 경우에는, 상기 다른 어플리케이션이 미리 설계된 개발 데이터를 이용함으로써, 상기 다른 어플리케이션의 개발 시간이 단축될 수 있다.
또한, (b)에서, 업무 시스템 개발 툴은 어플리케이션의 생성을 위하여 어플리케이션 동기화 인터페이스(720)를 제공할 수 있다. 업무 시스템 제공 장치는, 상기 어플리케이션의 어드레스를 이용하여 어플리케이션 센터와 연결될 수 있다.
일 실시예에서, 어플리케이션 센터에 개발 데이터가 저장되고, 업무 시스템 개발 툴의 사용자가 어플리케이션 센터에 저장된 개발 데이터에 억세스할 수 있는 권한이 있는 경우, 업무 시스템 제공 장치는 어플리케이션 센터로부터 해당 개발 데이터를 획득할 수 있다. 예를 들어, 어플리케이션 센터는 사용자가 억세스 가능한 개발 데이터에 대한 리스트(721)를 제공하고, 리스트(721) 중 사용자가 요청한 개발 데이터를 사용자가 이용하는 장치에 제공할 수 있다. 이에 따라, 사용자는 어떠한 장치를 이용하더라도, 해당 장치에 업무 시스템 개발 툴이 설치되고, 어플리케이션 센터와 통신이 가능한 경우에는, 언제 어디서든 개발 데이터의 획득이 가능할 수 있다. 즉, 사용자가 이용하는 어떠한 장치와 어플리케이션 센터간의 개발 데이터에 대한 동기화가 가능할 수 있다.
또한, 업무 시스템 제공 장치는 어플리케이션 센터에 개발 데이터를 업로드할 수 있다. 예를 들어, 업무 시스템 제공 장치는 어플리케이션 센터에 제1 개발 데이터가 저장되어 있는 상태에서, 제1 개발 데이터를 어플리케이션 센터에 업로드함으로써, 제1 개발 데이터의 대체, 즉, 제1 개발 데이터의 업데이트가 가능할 수 있다.
도 8은 일 실시예에 따른 업무 시스템 개발 툴에서의 데이터베이스 관리 시스템과의 연결을 설명하기 위한 도면이다.
도 8을 참조하면, 업무 시스템 제공 장치는 자체적으로 데이터베이스를 구성할 수도 있지만, 외부의 데이터베이스 관리 시스템에서 제공되는 데이터베이스를 이용할 수 있다. 이 때. 업무 시스템 제공 장치는 데이터베이스 설정 인터페이스(810)를 통하여, 데이터베이스 관리 시스템의 유형, 어드레스, 억세스 정보 등을 입력받고, 입력받은 정보를 이용하여 데이터베이스 관리 시스템과 연결할 수 있다. 이에 따라, 업무 시스템 제공 장치는 데이터베이스 관리 시스템이 제공하는 구성들(예를 들어, 데이터를 저장 및 억세스하는 스토리지 엔진. SQL 파서 등)을 이용할 수 있다. 다만, 데이터베이스 관리 시스템에서는 업무 시스템 제공 장치가 데이터베이스를 구성할 수 있는 환경만을 제공할 뿐, 업무 시스템 제공 장치가 이용하는 데이터베이스의 실질적인 내용(테이블, 엔터티)을 제공하는 것은 아니다. 이러한 데이터베이스의 실질적인 내용은 업무 시스템 개발 툴에서 테이블 구성 시트에 의해 작성될 수 있다. 이에 대해서는 도 14에서 상세하게 설명한다.
도 9는 일 실시예에 따른 업무 시스템 개발 툴에서의 맵 다이어그램을 설명하기 위한 도면이다.
전술한 바와 같이, 맵 다이어그램은 어플리케이션에서의 업무 전체의 흐름을 나타낸 설계도를 의미할 수 있다.
도 9를 참조하면, (a)는 맵 다이어그램의 제1 예를 나타낸다.
(a)에서, 업무 시스템 개발 툴이 제공하는 맵 다이어그램 구성 시트에서 사용자의 입력에 따라 맵 다이어그램(910)이 배치할 수 있다. 구체적으로, 맵 다이어그램(910)에서, 제1 페이지 인터페이스(911) 및 제2 페이지 인터페이스(912)는 미리 정해진 영역에 배치될 수 있다. 여기서, 제1 페이지 인터페이스(911)는 업무 시스템에서 제공되는 페이지들 중 제1 페이지와 대응되는 인터페이스(예를 들어, 원 아이콘, 사각형 아이콘 등 다양한 형상의 아이콘)를 나타내고, 제2 페이지 인터페이스(912)는 제2 페이지와 대응되는 인터페이스를 나타낼 수 있다. 또한, 맵 다이어그램 구성 시트에서 설계된 맵 다이어그램은 맵 다이어그램 데이터로 출력될 수 있다.
맵 다이어그램(910)에 배치되는 인터페이스들은 어플리케이션의 업무 전체의 구성을 나타낼 수 있고, 업무 시스템 제공 장치는 맵 다이어그램(910)에 배치되는 인터페이스들을 기초로 업무 시스템을 구축할 수 있다.
일 실시예에서, 맵 다이어그램(910)에서 업무의 진행 단계에 따라 일정한 방향으로 복수의 페이지 인터페이스가 배치될 수 있다. 예를 들어, 맵 다이어그램(910)에서 어플리케이션의 전체 업무의 진행 단계에 따라, 미리 정해진 영역의 왼쪽부터 오른쪽의 방향으로 복수의 페이지 인터페이스가 배치될 수 있다. 이에 따라, 업무 시스템 제공 장치는 복수의 페이지 인터페이스의 배치에 따라 업무 시스템을 구성할 수 있다.
또한, 맵 다이어그램(910)에는 제1 페이지 인터페이스(911)의 영역상에 액션 인터페이스(913)가 배치될 수 있다. 여기서, 액션 인터페이스(913)는 제1 페이지에서 수행되는 액션과 대응되는 인터페이스를 나타낼 수 있다. 예를 들어, 액션은 제1 페이지와 관련된 데이터를 표시, 전송, 삭제, 갱신하는 처리, 제1 페이지와 연결된 다음 페이지로 이동하는 처리 등을 포함할 수 있다. 제1 페이지 인터페이스(911)의 영역상에 액션 인터페이스(913)가 배치될 경우, 액션 인터페이스(913)는 제1 페이지 인터페이스(911)상에서 오버랩될 수 있다. 또한, 복수개의 액션 인터페이스가 제1 페이지 인터페이스(911)상에 배치될 수 있고, 이에 따라 액션 인터페이스(913) 및 제1 페이지 인터페이스(911)가 그래픽적으로 변경될 수 있다. 일 예로, 맵 다이어그램 구성 시트는 제1 페이지 인터페이스(911) 상의 영역에 배치되는 액션 인터페이스의 개수에 따라, 액션 인터페이스(913) 또는 제1 페이지 인터페이스(911)의 크기를 조절할 수도 있다.
또한, 맵 다이어그램(910)에는 액션 인터페이스(913)와 제2 페이지 인터페이스(912) 사이에 플로우 인터페이스(914)가 배치되어 제1 페이지와 제2 페이지간의 연결관계가 설정될 수 있다. 여기서, 플로우 인터페이스(914)는 페이지간의 연결관계를 나타내는 인터페이스를 의미할 수 있다. 예를 들어, 업무 시스템에서, 제1 페이지가 제2 페이지로 이동될 경우, 제1 페이지와 제2 페이지는 상호간에 연결관계가 있다고 할 수 있다. 이 때, 맵 다이어그램(910)에 제1 페이지 인터페이스(911)에 배치된 액션 인터페이스(913)와 제2 페이지 인터페이스(912) 사이에 플로우 인터페이스(914)가 UI(User Interface)상으로 배치될 경우, 업무 시스템 제공 장치는 제1 페이지와 제2 페이지간의 연결관계를 설정할 수 있다.
일 실시예에서, 맵 다이어그램(910)에서 액션 인터페이스(913)와 제2 페이지 인터페이스(912) 사이에 플로우 인터페이스(914)가 배치되지 않을 경우, 업무 시스템 제공 장치는 제1 페이지와 제2 페이지를 상호간에 연결관계가 없는 독립한 페이지로 설정할 수 있다.
또한, 업무 시스템 제공 장치는 플로우 인터페이스에 대응하는 연결관계를 찾고, 플로우 인터페이스에 대응하는 연결관계의 유효성 검사, 트랜잭션 처리, 인터페이스 관리 및 알림 관리를 수행할 수 있다. 또한, 업무 시스템 개발 장치는 해당 플로우 인터페이스와 연결된 다른 플로우 인터페이스가 있는지 여부를 판단하고, 판단 결과, 다른 플로우 인터페이스가 없을 경우, 제1 페이지 및 제2 페이지를 연결할 수 있다. 또한, 판단 결과, 다른 플로우 인터페이스가 있을 경우, 다른 플로우 인터페이스에 대응하는 연결관계의 유효성 검사, 트랜잭션 처리, 인터페이스 관리 및 알림관리를 수행하고, 다른 플로우 인터페이스와 연결된 또 다른 플로우 인터페이스가 있는지 여부를 판단할 수 있다. 이 때, 또 다른 플로우 인터페이스가 있을 경우에는 상기 과정을 반복하여 수행할 수 있고, 또 다른 플로우 인터페이스가 없을 경우에는 제1 페이지 및 제2 페이지를 연결할 수 있다.
또한, 업무 시스템 제공 장치는 제1 페이지 및 제2 페이지를 포함하는 업무 시스템을 생성할 수 있다. 업무 시스템 제공 장치는 제1 페이지 및 제2 페이지 각각의 UI 속성 및 제1 페이지 및 제2 페이지 각각의 속성에 대한 데이터를 로딩하고, 로딩된 UI 속성 및 로딩된 데이터를 기초로 제1 페이지 및 제2 페이지를 생성할 수 있다. 업무 시스템 개발 장치는 수정된 메타 데이터를 기초로 상호간에 연결된 제1 페이지 및 제2 페이지를 포함하는 업무 시스템을 생성할 수 있다.
이와 같이, 업무 시스템 개발 장치는 프로그램의 작성없이 업무 시스템을 개발하여 업무 시스템의 개발 시간을 단축시킬 수 있고, 업무 시스템의 설계서를 GUI 방식으로 작성하고, 작성된 설계서를 기반으로 업무 시스템을 개발함으로써, 업무 시스템을 보다 직관적으로 개발할 수 있고, 업무 시스템 개발에 있어서 사용자의 편의성을 증가시킬 수 있다.
또한, 업무 시스템 개발 장치는 업무 시스템의 개발 완료 후 즉시 업무 시스템의 동작 확인이 가능하고, 업무 환경 변화 또는 기능 요구사항의 변화에 부합하여 빠르게 업무 시스템을 수정할 수 있고, 이에 따라, 빠르고 효율적으로 업무 시스템의 유지보수를 할 수 있다.
또한, (b)에서, 업무 시스템 개발 툴이 제공하는 맵 다이어그램 구성 시트에서 사용자의 입력에 따라 맵 다이어그램(930)이 배치할 수 있다. 구체적으로, 맵 다이어그램(930)에서, 시작 페이지 인터페이스(931), 메인 페이지 인터페이스(932) 및 채널 인터페이스(933)이 배치될 수 있다.
시작 페이지 인터페이스(931)는 어플리케이션의 업무의 시작을 나타내는 페이지와 대응될 수 있다. 일 실시예에서, 맵 다이어그램(930)에 시작 페이지 인터페이스(931)이 포함된 경우, 업무 시스템 제공 장치는 업무 시스템을 개시할 수 있다. 또한, 업무 시스템 제공 장치는 시작 페이지 인터페이스(931)에 대응하는 시작 페이지를 제공할 수 있다. 일예로, 시작 페이지는 업무 시스템이 개시될 때 제공되는 논리적 접속 페이지로 사용자에게 제공되지 않을 수도 있다.
또한, 메인 페이지 인터페이스(932)는 사용자가 업무 시스템에 접속할 때, 사용자에게 처음으로 제공되는 메인 페이지와 대응될 수 있다. 일 예로, 메인 페이지는 사용자의 로그인을 위한 인터페이스를 포함할 수 있다.
또한, 채널 인터페이스(933)는 맵 다이어그램 사이를 연결하는 인터페이스를 나타낼 수 있다. 구체적으로, 맵 다이어그램은 맵 다이어그램 구성 시트에 따라 사용자가 볼 수 있도록 제공된다. 이 때, 맵 다이어그램에 포함된 인터페이스들이 많아질 경우, 사용자의 가독성이 떨어질 수 있다. 이를 위해, 맵 다이어그램은 복수의 맵 다이어그램으로 분할될 수 있다. 이 때, 상기 맵 다이어그램들이 서로 연결되는 것임을 나타내기 위해, 채널 인터페이스가 상기 복수의 맵 다이어그램에 배치될 수 있다. 예를 들어, 맵 다이어그램이 제1 맵 다이어그램 및 제2 맵 다이어그램으로 분할되고, 도 9의 맵 다이어그램(930)이 제1 맵 다이어그램이고, 도 10의 맵 다이어그램(1000)이 제2 맵 다이어그램인 경우, 제1 맵 다이어그램(930)에 제1 채널 인터페이스(933)이 배치되고, 제2 맵 다이어그램(1000)에 제2 채널 인터페이스(1010)이 배치될 수 있다. 이 경우, 업무 시스템 제공 장치는 제1 채널 인터페이스(933)가 배치된 제1 맵 다이어그램(930) 및 제2 채널 인터페이스(1010)가 배치된 제2 맵 다이어그램(1000)이 상호간에 연결된 맵 다이어그램으로 설정할 수 있다. 또한, 업무 시스템 제공 장치는 메인 화면 인터페이스(932)와 조건 인터페이스(1020)가 UI상에서 직접적으로 연결되지 않아도, 메인 화면 인터페이스(9320)와 조건 인터페이스(1020)를 연결할 수 있고, 이에 따라, 메인 화면 인터페이스(932)에 대응하는 메인 페이지의 제공이 종료된 후, 조건 인터페이스(1020)에 따른 업무를 수행될 수 있다. 또한, 도 9의 예에서는 채널 인터페이스가 맵 다이어그램(930)에 적용된 것으로 설명하였지만, 채널 인터페이스는 맵 다이어그램뿐만 아니라, 프로세스 인터페이스에도 적용될 수 있다. 이와 같이, 채널 인터페이스(933)에 따라, 사용자가 맵 다이어그램을 설계할 때, 사용자의 가독성 및 편의성이 향상될 수 있다.
도 10는 다른 일 실시예에 따른 업무 시스템 개발 툴에서의 맵 다이어그램을 설명하기 위한 도면이다.
도 10을 참조하면, 도 9에서 설명된 바와 같이, 채널 인터페이스(933, 1010)에 따라, 메인 화면 인터페이스(932)에 대응하는 메인 페이지의 제공이 종료된 후, 조건 인터페이스(1020)에 따른 업무를 수행될 수 있다.
여기서, 조건 인터페이스는 소정의 조건에 따라 페이지의 이동 경로를 설정하는 인터페이스를 나타낼 수 있다. 도 10의 예에서, 조건 인터페이스(1020)의 경우, 메인 페이지 인터페이스(932)에 대응하는 메인 페이지에서 사용자가 사원관리메뉴를 클릭하는 조건이 만족될 경우에 페이지 인터페이스(1031)에 따른 페이지를 제공하고, 사용자가 테스크 관리 메뉴를 클릭하는 조건이 만족될 경우에 페이지 인터페이스(1033)에 따른 페이지를 제공할 수 있다.
또한, 맵 다이어그램(1000)에서, 페이지 인터페이스들(1031, 1032, 1033, 1034)이 포함될 수 있고, 업무 시스템 제공 장치는 페이지 인터페이스들(1031, 1032, 1033, 1034) 각각에 대응하는 페이지를 업무 시스템에서 제공할 수 있다.
또한, 맵 다이어그램(1000)에서, 액션 인터페이스들(1041 내지 1045, 1051 내지 1055)이 포함될 수 있고, 업무 시스템 제공 장치는 액션 인터페이스들(1041 내지 1045, 1051 내지 1055) 각각에 대응하는 액션을 처리할 수 있다. 예를 들어, 업무 시스템 제공 장치는 페이지 인터페이스(1031)에 대응하는 사원목록 페이지를 제공하고, 사용자가 사원등록버튼을 클릭할 경우, 사원등록버튼의 클릭에 대응하는 처리를 수행하여, 페이지 인터페이스(1032)에 대응하는 사원등록 페이지를 제공할 수 있다.
또한, 맵 다이어그램(1000)에서, 이동 인터페이스(1061, 1062, 1063, 1064)가 포함될 수 있고, 업무 시스템 제공 장치는 이동 인터페이스(1061, 1062, 1063, 1064)에 따른 업무를 수행할 수 있다. 여기서, 이동 인터페이스는 페이지간에 UI적으로 직접적으로 연결되지 않아도, 페이지간 이동 경로를 설정하는 인터페이스를 의미할 수 있다. 일 예로, 이동 인터페이스는 제1 이동 인터페이스 및 제2 이동 인터페이스를 포함할 수 있고, 제1 이동 인터페이스에 제1 페이지 인터페이스가 UI적으로 연결되고, 제2 이동 인터페이스에 제2 페이지 인터페이스가 UI적으로 연결될 경우, 업무 시스템 제공 장치는 제1 페이지와 제2 페이지를 연결할 수 있다. 도 10의 예에서, 제1 이동 인터페이스는 이동 인터페이스(1062)일 수 있고, 제2 이동 인터페이스는 이동 인터페이스(1061)일 수 있다. 이 때, 제1 이동 인터페이스(1062)는 페이지 인터페이스(1032)에 연결되고, 제2 이동 인터페이스(1061)은 페이지 인터페이스(1031)와 연결될 수 있다. 이 경우, 업무 시스템 제공 장치는 제1 이동 인터페이스(1062)와 연결된 페이지 인터페이스(1032)에 따른 사원등록 페이지를 제공한 후, 액션 인터페이스(1043)에 따른 액션(저장버튼 클릭)이 수행된 경우, 제2 이동 인터페이스(1062)와 연결된 페이지 인터페이스(1031)에 따른 사원목록 페이지를 제공할 수 있다. 만약, 이동 인터페이스(1061, 1062)를 이용하지 않고, 연결 인터페이스를 이용하여 상기 이동경로를 설정할 경우, 연결 인터페이스가 복잡하게 설계될 수 있고, 이에 따라, 사용자가 맵 다이어그램을 작성하는데 혼돈을 느낄 수 있다. 반면, 도 10에서와 같이, 이동 인터페이스(1061, 1062)를 이용함에 따라, 연결 인터페이스가 복잡하게 도시되지 않고도 간단하게 페이지 인터페이스(1031, 1032)간의 이동경로가 설정될 수 있다. 특히, 연결 인터페이스는 도 10의 예와 같이, 페이지 인터페이스(1031)에서 페이지 인터페이스(1032)로 이동된 후, 다시 페이지 인터페이스(1032)에서 페이지 인터페이스(1031)로 회귀할 때, 간단하게 이동경로를 설계할 수 있다.
또한, 맵 다이어그램(1000)에서, 트랜잭션 인터페이스(1071)이 포함될 수 있고, 업무 시스템 제공 장치는 트랜잭션 인터페이스(1071)에 대응하는 처리를 수행할 수 있다. 예를 들어, 도 10의 예와 같이, 트랜잭션 인터페이스(1071)가 액션 인터페이스(1045)와 이동 인터페이스(1062) 사이에 UI적으로 연결되어 있을 경우, 업무 시스템 제공 장치는 페이지 인터페이스(1032)와 대응하는 사원등록 페이지가 제공된 후, 이동 인터페이스(1062, 1061)에 따라 페이지 인터페이스(1031)와 대응하는 사원목록 페이지가 제공되기 전에 트랜젝션 인터페이스(1071)에 따른 처리를 수행할 수 있다. 트랜젝션 인터페이스(1071)에 따른 처리에 대해서는 도 11에서 상세하게 설명한다.
도 11은 일 실시예에 따른, 업무 시스템 개발 툴에서의 트랜잭션의 설정을 설명하기 위한 도면이다.
도 11을 참조하면, 일 실시예에서, 업무 시스템 개발 툴은 트랜잭션을 설정하기 위한 트랜잭션 다이어그램 구성 시트를 제공할 수 있고, 트랜잭션 다이어그램 구성 시트에서 트랜젝션 다이어그램(1100)이 작성될 수 있다. 업무 시스템 제공 장치는 트랜젝션 다이어그램(1100)에 따라 트랜잭션 인터페이스에 따른 처리를 수행할 수 있다.
예를 들어, 트랜젝션 다이어그램(1100)은 도 10의 트랜젝션 인터페이스(1071)에 따른 처리를 나타낼 수 있다. 이 경우, 업무 시스템 제어 장치는 도 10의 페이지 인터페이스(1032)와 대응하는 사원등록 페이지가 제공된 후, 도 10의 페이지 인터페이스(1031)와 대응하는 사원목록 페이지가 제공되기 전에, 트랜젝션 인터페이스들(1101 내지 1105)에 따라, 유효성을 검사하고, 사원정보를 삭제하고, 사원정보 삭제를 알리는 알림을 수행하는 처리를 수행할 수 있다.
도 12는 일 실시예에 따른, 업무 시스템 개발 툴에서의 프로세스 인터페이스를 설명하기 위한 도면이다.
도 12를 참조하면, 도 12의 맵 다이어그램(1200)은 메인 페이지 인터페이스(1210), 페이지 인터페이스(1221, 1222, 1223, 1224) 및 프로세스 인터페이스(1231)를 포함할 수 있다. 전술한 바와 같이, 프로세스 인터페이스(1231)는 업무 시스템의 개별 단위 업무와 대응되는 인터페이스를 의미할 수 있다. 프로세스 인터페이스(1231)는 프로세스 다이어그램과 연결되고, 프로세스 다이어그램에는 개별 단위 업무에 대한 구체적인 프로세스가 설계될 수 있다. 프로세스 다이어그램에 대해서는 도 13에서 상세하게 설명한다.
구체적으로, 맵 다이어그램에서 프로세스 인터페이스가 페이지 인터페이스와 UI적으로 연결될 경우, 업무 시스템 제공 장치는 페이지 인터페이스에 대응되는 페이지와 프로세스 인터페이스와 대응되는 개별 단위 업무를 연동시킬 수 있다. 도 12의 예에서, 맵 다이어그램(1200)에서 페이지 인터페이스(1223, 1224)와 프로세스 인터페이스(1231)가 UI적으로 연결될 수 있고, 이에 따라, 업무 시스템 제공 장치는 페이지 인터페이스(1223)에 대응하는 출장목록 페이지 및 페이지 인터페이스(1224)에 대응하는 출장계획서 작성 페이지 각각과 프로세스 인터페이스(1231)와 대응하는 개별 단위 업무인 출장업무를 연동시킬 수 있다.
만약, 맵 다이어그램에서 프로세스 인터페이스를 이용하지 못할 경우, 프로세스 인터페이스와 대응하는 개별 단위 업무를 모두 맵 다이어그램에 나타내야만 하고, 이에 따라, 맵 다이어그램의 설계가 복잡할 수 있다. 더욱이, 도 12의 예와 같이 개별 단위 업무가 두개 이상의 페이지와 연동되는 경우에는 맵 다이어그램의 설계가 보다 더 복잡해질 수 있다. 반면, 본 발명과 같이, 프로세스 인터페이스를 이용할 경우에는 맵 다이어그램에서 개별 단위 업무를 간단하게 표현할 수 있어 맵 다이어그램의 설계가 간단해질 수 있다. 특히, 개별 단위 업무와 연동되는 페이지가 두개 이상인 경우에도, 페이지 인터페이스와 프로세스 인터페이스 사이에 연결 인터페이스의 추가하는 것 만으로 간단하게 개별 단위 업무와 페이지들 간의 연동을 설계할 수 있다.
일 실시예에서, 업무 시스템 제공 장치는 개별 단위 업무에의 억세스 권한이 있는 사용자만이 해당 개별 단위 업무를 처리하도록 구성할 수 있다. 이 경우, 상기 억세스 권한이 없는 사용자는 해당 개별 단위 업무를 처리할 수 없다. 이는 개별 단위 업무를 처리해야 하는 사용자만이 해당 개별 단위 업무를 처리하게끔 구성함으로써, 업무 시스템의 효율성을 향상시키기 위함이다. 예를 들어, 개별 단위 업무가 결제처리인 경우, 업무 시스템 제공 장치는 결제처리 권한을 가진 사람만이 결제처리를 수행할 수 있도록 업무 시스템을 구성할 수 있다.
이를 위해, 맵 다이어그램에서 프로세스 인터페이스는 개별 단위 업무에 억세스에 대한 정보를 나타내는 프로세스 억세스 권한 정보와 대응될 수 있다. 즉, 프로세스 인터페이스와 프로세스 억세스 권한 정보는 연동될 수 있고, 프로세스 억세스 권한 정보는 해당 개별 단위 업무에 억세스할 수 있는 권한을 갖는 사용자에 대한 정보를 포함할 수 있다.
이 경우, 업무 시스템 제공 장치는 프로세스 억세스 권한 정보를 기초로 업무 시스템에 접속한 사용자가 상기 개별 단위 업무에 억세스 가능한 사용자인지 여부를 판단하고, 억세스 가능한 사용자로 확인된 경우, 억세스 가능한 사용자가 상기 개별 단위 업무를 처리하도록 상기 업무 시스템을 구현할 수 있다. 만약, 업무 시스템에 접속한 사용자가 상기 개별 단위 업무에 억세스 불가한 사용자로 확인될 경우, 업무 시스템 제공 장치는 상기 확인된 사용자의 상기 개별 단위 업무에 대한 접근을 차단할 수 있다.
도 13은 일 실시예에 따른 업무 시스템 개발 툴에서의 프로세스 다이어그램을 설명하기 위한 도면이다.
도 13을 참조하면, 프로세스 다이어그램(1300)은 개별 단위 업무의 흐름을 나타낼 수 있다.
구체적으로, 프로세스 다이어그램은 하나 이상의 액티비티 인터페이스로 구성될 수 있다. 여기서, 액티비티 인터페이스는 개별 단위 업무의 업무 처리 단계를 나타내는 것으로, 예를 들어, 개별 단위 업무가 입력 단계, 판단 단계, 설계 단계로 구성될 경우, 입력 단계, 판단 단계, 설계 단계 각각은 하나의 액티비티 인터페이스가 될 수 있다. 또한, 액티비티 인터페이스는 업무 시스템에서 제공되는 페이지 중 개별 단위 업무를 위해 제공되는 페이지와 대응될 수 있다. 즉, 업무 시스템 제공 장치는 액티비티 인터페이스들의 배치에 따라 각 액티비티 인터페이스들에 대응되는 페이지들의 제공 순서를 결정할 수 있다. 또한, 액티비티 인터페이스는 스테이션(station) 인터페이스, 스텝(step) 인터페이스 등으로 표현될 수 있다. 프로세스 다이어그램 구성 시트에서, 프로세스 다이어그램을 생성하기 위한 정보를 입력받기 위한 GUI가 제공되고, GUI를 통하여 프로세스 다이어그램을 생성하기 위한 정보가 입력될 수 있다. 일 예로, 프로세스 다이어그램 구성 시트에서, 프로세스 다이어그램에 개별 단위 업무의 시작을 나타내는 시작 인터페이스, 개발 단위 업무의 종료를 나타내는 종료 인터페이스, 액티비티 인터페이스, 액티비티 인터페이스들간의 연결관계를 나타내는 연결 인터페이스, 액티비티간의 이동을 위한 조건을 나타내는 조건 인터페이스 등이 배치될 수 있고, 업무 시스템 제공 장치는 상기 인터페이스들의 배치 및 속성을 기초로 개별 단위 업무를 구성할 수 있다.
또한, 프로세스 다이어그램 구성 시트에서 설계된 프로세스 다이어그램은 프로세스 다이어그램 데이터로 출력될 수 있다.
또한, 일 실시예에서, 액티비티 인터페이스는 액티비티 인터페이스에 대응하는 페이지에의 억세스에 대한 정보를 포함하는 억세스 권한 정보와 대응될 수 있다. 구체적으로, 업무 시스템 제공 장치는 개별 단위 업무 중 모든 단계를 사용자에게 제공할 수도 있지만, 특정 단계만을 사용자에게 제공할 수도 있다. 이는 개별 단위 업무 중 특정 단계를 처리해야 하는 사용자만이 해당 단계를 처리하게 함으로써, 업무 시스템의 효율성을 향상시키기 위함이다.
이를 위해, 프로세스 다이어그램 구성 시트에서, 특정 페이지에의 억세스 권한 정보가 입력될 수 있고, 입력된 억세스 권한 정보는 특정 페이지에 대응되는 액티비티 인터페이스에 대응될 수 있다. 이 경우, 업무 시스템 제공 장치는 상기 억세스 권한 정보를 기초로 업무 시스템에 접속한 사용자가 상기 개별 단위 업무 중 특정 단계에 억세스 가능한 사용자인지 여부를 판단하고, 억세스 가능한 사용자로 확인된 경우, 억세스 가능한 사용자가 상기 특정 단계를 처리하도록 상기 업무 시스템을 구현할 수 있다. 만약, 업무 시스템에 접속한 사용자가 상기 특정 단계에 억세스 불가한 사용자로 확인될 경우, 업무 시스템 제공 장치는 상기 확인된 사용자의 상기 특정 단계에 대한 접근을 차단하고, 상기 해당 특정 단계에 대응하는 페이지를 제공하지 않을 수 있다.
도 13의 예에서 프로세스 다이어그램(1300)에는 시작 인터페이스(1310), 종료 인터페이스(1340), 액티비티 인터페이스(1321, 1322, 1323) 및 조건 인터페이스(1331, 1332)를 포함할 수 있다. 업무 시스템 제공 장치는 시작 인터페이스(1310)에 따라 개별 단위 업무가 시작되도록 구성하고, 개별 단위 업무가 처리되기 위해 액티비티 인터페이스(1321, 1322, 1323)에 대응하는 페이지들을 제공할 수 있다. 또한, 조건 인터페이스(1331, 1332)를 통해, 해당 조건에 만족되는 경우에 각 페이지들을 이동시킬 수 있다. 이 때, 액티비티 인터페이스(1321)에 제1 억세스 권한 정보가 대응되고, 액티비티 인터페이스(1323)에 제2 억세스 권한 정보가 대응될 수 있다. 예를 들어, 제1 억세스 권한 정보에는 액티비티 인터페이스(1321)에 대응하는 페이지를 2 직급에 대응하는 사용자에게만 제공한다는 정보가 포함되고, 제2 억세스 권한 정보에는 액티비티 인터페이스(1323)에 대응하는 페이지를 1 직급에 대응하는 사용자에게만 제공한다는 정보가 포함될 수 있다. 따라서, 업무 시스템 제공 장치는 액티비티 인터페이스(1321)에 대응하는 페이지를 2 직급에 대응하는 사용자에게만 제공하고, 액티비티 인터페이스(1323)에 대응하는 페이지를 1 직급에 대응하는 사용자에게만 제공할 수 있다. 또한, 업무 시스템 제공 장치는 종료 인터페이스(1340)에 따라 개별 단위 업무가 종료되도록 구성할 수 있다.
또한, 일 실시예에서, 프로세스 다이어그램(1300)는 도 12의 프로세스 인터페이스(1231)과 대응될 수 있다. 이 때, 도 12의 예에서와 같이, 페이지 인터페이스(1223) 및 페이지 인터페이스(1224)과 프로세스 인터페이스(1231)과 UI상으로 연결된 경우, 업무 시스템 제공 장치는 페이지 인터페이스(1223)에 대응하는 출장목록 페이지 또는 페이지 인터페이스(1224)에 대응하는 출장계획서 작성 페이지가 제공된 후, 개별 단위 업무가 시작되도록 구성할 수 있다. 또한, 도 12에서는 도시되지 않았지만, 맵 다이어그램(1200)에서 프로세스 인터페이스(1231)에서 시작하여 특정 페이지 인터페이스에서 종료하는 연결 인터페이스가 프로세스 인터페이스(1231)와 특정 페이지 인터페이스 사이에서 존재하는 경우, 업무 시스템 제공 장치는 개별 단위 업무가 종료된 후, 상기 특정 페이지 인터페이스에 대응하는 페이지를 사용자에게 제공할 수 있다.
도 14는 일 실시예에 따른 업무 시스템 개발 툴에서의 테이블의 설계를 설명하기 위한 도면이다.
도 14를 참조하면, 업무 시스템 개발 툴에서, 테이블의 설계를 위하여 테이블 구성 시트가 제공될 수 있다. 또한, 테이블 구성 시트의 설계 결과는 테이블 데이터로 출력될 수 있다.
(a)에서와 같이, 테이블 구성 시트에는 제1 테이블(1410) 및 제2 테이블(1420)에 배치될 수 있다. 물론, 테이블 구성 시트에는 3개 이상의 테이블이 배치될 수도 있다.
제1 테이블(1410) 및 제2 테이블(1420)은 업무 시스템에서 사용되는 데이터의 집합으로, 데이터베이스에 저장될 수 있다. 일 예로, 도 8의 예에서와 같이, 업무 시스템 제공 장치가 데이터베이스 관리 시스템과 연동되는 경우, 제1 테이블(1410) 및 제2 테이블(1420)은 데이터베이스 관리 시스템에 저장될 수 있다.
또한, 테이블 구성 시트에서는 제1 테이블(1410) 및 제2 테이블(1420)의 연결관계를 UI적으로 설계할 수 있다. 예를 들어, 제1 테이블(1410)의 엔터티(1411)과 제2 테이블(1420)의 엔터티(1412)는 서로 관련될 수 있다. 일 예로, 제1 테이블(1410)의 엔터티(1411)과 제2 테이블(1420)의 엔터티(1412)는 서로 동일한 내용일 수도 있고, 내용이 동일하지는 않지만, 상호간에 참조되는 정보일 수도 있다. 이 경우, 테이블 구성 시트에서는 대응 인터페이스(1421)를 이용하여 엔터티(1411)과 엔터티(1412)를 연결할 수 있다. 대응 인터페이스(1421)에 의해 엔터티(1411)과 엔터티(1412)가 연결됨에 따라, 업무 시스템 제공 장치는 엔터티(1411)과 엔터티(1412)가 서로 관련된다는 것을 확인할 수 있다. 이 경우, 업무 시스템 제공 장치는 업무 시스템(1411)에서 엔터티(1411)의 내용이 수정될 경우, 수정된 사항을 엔터티(1412)에 반영할 수 있다.
(b)에서, 테이블 구성 시트는 테이블의 엔터티의 속성을 설정할 수 있다. 예를 들어, 테이블 구성 시트는 엔터티 속성 설정 인터페이스(1430)을 제공할 수 있다. 예를 들어, 엔터티 속성 설정 인터페이스(1430)를 통해 업무 시스템 제공 장치는 각 엔터티마다, 기본키 여부, 명칭, 데이터 타입, 데이터 길이, Null 값 여부등에 대한 속성 정보를 입력받을 수 있다. 또한, 업무 시스템 제공 장치는 엔터티 속성 설정 인터페이스(1430)를 통해 입력된 정보를 해당 엔터티의 속성으로 설정할 수 있다.
도 15 및 16을 일 실시예에 따른 업무 시스템 개발 툴의 페이지 구성 시트를 설명하기 위한 도면이다.
도 15를 참조하면, 업무 시스템 개발 툴에서, 페이지의 설계를 위하여 페이지 구성 시트가 제공될 수 있다. 일 실시예에서, 페이지 구성 시트에서 설계되는 페이지는 업무 시스템에서 제공되는 모든 페이지를 의미하는 것으로, 예를 들어, 페이지 구성 시트에서는 맵 다이어그램에서 페이지 인터페이스에 대응되는 페이지 및 프로세스 다이어그램에서 액티비티 인터페이스에 대응되는 페이지가 설계될 수 있다. 또한, 페이지 구성 시트의 설계 결과는 페이지 데이터로 출력될 수 있다.
(a)에서, 페이지 구성 시트에서는, 페이지의 기본 속성이 설정될 수 있다. 예를 들어, 인터페이스(1510)에서, 페이지의 기본 속성에서, 페이지의 식별자, 페이지의 명칭, 제목 등이 설정될 수 있다. 또한 페이지 구성 시트에서는 템플릿을 호출할지 여부 및 호출될 템플릿을 결정할 수 있다. 여기서, 템플릿은 페이지의 기본 서식을 나타내는 것으로, 템플릿마다 속성 및 레이아웃 등이 상이할 수 있다. 템플릿이 없을 경우, 페이지 구성 시트에서 페이지의 속성 및 레이아웃을 새로 생성해야 하지만, 템플릿이 있을 경우에는 템플릿을 호출함으로써, 페이지의 기초 레이아웃에 템플릿의 속성 및 레이아웃을 적용시킬 수 있고, 이에 따라, 사용자의 설계 편의성이 증가될 수 있다. 업무 시스템 제공 장치는 인터페이스(1510)에서 입력받은 정보를 기초로 페이지의 기본 속성을 설정할 수 있다.
또한, (b)에서, 페이지 구성 시트에서는 페이지에서의 메뉴를 정의할 수 있다. 예를 들어, 인터페이스(1520)에서는 영역(1521)과 같이 메뉴의 구조가 설계될 수 있고, 영역(1522)과 같이, 메뉴의 속성이 설정될 수 있다. 업무 시스템 제공 장치는 인터페이스(1520)에서 입력받은 정보를 기초로 페이지의 메뉴를 설정할 수 있다.
도 16을 참조하면, (a)에서, 페이지 구성 시트에서는 페이지에서 이용되는 데이터가 정의될 수 있다. 예를 들어, 인터페이스(1610)에서, 문서 변수(1611)를 정의하고, 정의된 문서 변수(1611)에 대응하는 데이터셋을 호출할 수 있다. 예를 들어, 상기 데이터 셋은 테이블 구성 시트에서 설계된 테이블 및/또는 테이블의 엔터티가 될 수 있다. 업무 시스템 제공 장치는 호출된 데이터 셋을 기초로 페이지에서의 데이터를 설정할 수 있다.
또한, (b)에서, 페이지 구성 시트에서는 블록이 정의될 수 있다. 여기서, 블록은 페이지의 구성단위를 나타내는 것으로, 블록의 배치 및 속성에 따라 페이지의 구성이 결정될 수 있다. 예를 들어, 인터페이스(1640)에서는 블록의 배치 및 속성이 설정될 수 있다. 일 예로, 인터페이스(1640)에서, 블록의 식별자, 블록의 명칭, 블록의 유형이 결정될 수 있다. 블록에 대해서는 도 18 내지 도 23에서 상세하게 설명한다.
도 17은 일 실시예에 따른 업무 시스템 개발 툴에서의 템플릿 구성 시트를 설명하기 위한 도면이다.
도 17을 참조하면, (a)에서, 템플릿 구성 시트에서는 템플릿을 설계할 수 있다. 템플릿 구성 시트에서 설계된 템플릿을 템플릿 데이터로 출력되고, 템플릿 데이터는 메모리에 저장될 수 있다.
템플릿 구성 시트에서, 인터페이스(1710)을 통하여 템플릿의 식별자, 템플릿의 명칭, 템플릿의 유형 등이 설정될 수 있다.
또한, (b)에서, 템플릿은 미리 저장된 디자인 데이터를 템플릿에 적용할 수 있다. 예를 들어, 인터페이스(1720)에서, 미리 저장된 디자인 데이터가 선택될 수 있고, 업무 시스템 제공 장치는 선택된 디자인 데이터를 호출하여 설계되는 템플릿에 적용할 수 있다.
또한, 템플릿 구성 시트에서는 다른 템플릿 데이터를 호출할 수 있고, 호출된 템플릿 데이터를 설계되는 템플릿에 적용할 수 있다.
또한, 템플릿 구성 시트에서는 템플릿에 삽입할 수 있는 구성요소(예를 들어, 툴바, 버튼 등) 및 상기 구성요소들을 변경할 수 있는 인터페이스를 제공할 수 있고, 사용자는 상기 인터페이스에 따라 템플릿을 디자인할 수 있다.
또한, (c)와 같이, 업무 시스템 제공 장치는 템플릿 구성 시트에서 설계된 템플릿(1730)을 사용자에게 제공할 수 있다. 이 경우, 업무 시스템 제공 장치는 상기 템플릿(1730)을 미리보기 형식으로 제공할 수도 있고, 업무 시스템의 페이지에 직접 적용하여 제공할 수도 있다. 예를 들어, 페이지 구성 시트에서 템플릿이 호출된 경우, 템플릿의 위치가 페이지 구성 시트에서 UI상으로 조정될 수 있고, 업무 시스템 제공 장치는 템플릿의 위치 및 속성에 따라 페이지의 레이아웃을 구성할 수 있다.
이와 같이, 템플릿 구성 시트를 통해, 사용자는 프로그램의 코딩없이 템플릿을 설계할 수 있고, 이에 따라 사용자는 별도의 프로그램 언어를 알지 못하더라도 쉽게 템플릿을 생성할 수 있다. 또한, 사용자가 다른 업무 시스템에서 템플릿을 사용하는 등 사용자의 편의를 위하여, 템플릿 구성 시트는 템플릿 데이터의 소스 코드를 제공할 수 있다.
다만, 이에 한정되지 않고, 템플릿 구성 시트에서, 템플릿은 html 언어 등 별도의 프로그램 언어를 이용하여 설계될 수도 있다.
또한, 일 실시예에서, 템플릿 구성 시트에서, 후술할 블록의 배치 및 속성이 설정될 수 있다. 이 경우, 템플릿 구성 시트에서는 설정되는 블록의 배치 및 속성이 반영된 블록 템플릿이 생성될 수 있다. 즉, 블록 역시, 템플릿으로 구성되고, 이에 따라, 블록은 템플릿과 같이 페이지에 반영될 수 있다. 예를 들어, 페이지 구성 시트에서 블록 템플릿이 호출된 경우, 블록 템플릿의 위치가 페이지 구성 시트에서 UI상으로 조정될 수 있고, 업무 시스템 제공 장치는 블록 템플릿의 위치 및 속성에 따라 페이지의 레이아웃을 구성할 수 있다.
또한, 템플릿 데이터는 블록 템플릿을 포함할 수 있고, 템플릿 데이터는 전술한 개발 데이터에 포함될 수 있다.
도 18은 일 실시예에 따른 블록의 유형을 설명하기 위한 도면이다.
도 18을 참조하면, 웹 페이지(1800)는 블록(1811 내지 1814)을 기본단위로 구성될 수 있다. 예를 들어, 페이지 구성 시트에서, 블록(1811)이 좌측 상단, 블록(1812)이 우측 상단, 블록(1813)이 좌측 하단, 블록(1814)이 우측 하단에 배치되는 것으로 구성될 수 있고, 업무 시스템 제공 장치는 이러한 블록의 배치를 반영하여 웹 페이지를 구성할 수 있다.
또한, 블록(1811 내지 1814)는 유형은 다양하게 설계될 수 있다. 예를 들어, 블록(1811)의 유형은 입력폼일 수 있고 이에 따라, 웹페이지(1800)에서, 블록(1811)은 데이터 입력에 이용될 수 있다. 또한, 블록(1812)의 유형이 조회조건임에 따라, 웹페이지(1800)에서, 블록(1812)은 특정 조건에 대한 결과를 제공하는 데 이용될 수 있다. 또한, 블록(1813)의 유형이 데이터 그리드임에 따라, 웹페이지(1800)에서, 블록(1813)은 데이터 그리드를 제공하는 데 이용될 수 있다. 또한, 블록(1814)의 유형이 데이터 차트 임에 따라, 웹페이지(1800)에서, 블록(1814)은 데이터 차트를 제공하는 데 이용될 수 있다. 이 외에도 블록의 유형은 다양한 형식으로 설정될 수 있다.
도 19는 일 실시예에 따른 블록을 설명하기 위한 도면이다.
도 19를 참조하면, 블록은 전술한 바와 같이, 업무 시스템 개발 툴의 페이지 구성 시트(1900)에서 설계될 수 있다. 이 때, 페이지 구성 시트(1900)에서 설계되는 블록은 블록 데이터로 출력될 수 있다. 이 때, 블록의 유형은 인터페이스(1911)에서 선택될 수 있다. 일 예로, 블록의 유형은 입력폼, 조회조건, 데이터그리드, 데이터차트, 데이터 트리, 코드 검색기, 고정된 조회조건, 웹연결, html 중 하나로 선택될 수 있다. 이 경우, 업무 시스템 제공 장치는 선택된 블록의 유형에 따라 페이지 구성 시트(1900)에서 설계되는 페이지 중 블록에 대응하는 영역의 레이아웃을 설정할 수 있다.
또한, 제1 블록(1921) 및 제2 블록(1922) 각각은 데이터베이스의 테이블의 엔터티 또는 테이블 각각과 매칭될 수 있다. 이는 사용자의 처리가 데이터베이스에 반영되도록 하기 위함일 수 있다.
구체적으로, 본 발명에서, 업무 시스템은 프로그램의 코딩없이 작성될 수 있다. 이는 업무 시스템이 페이지를 기반으로 제공되기 것, 보다 자세하게는, GUI를 기반으로 업무 시스템의 페이지가 설계되기 때문이다. 그러나, 종래기술에서는, 프로그램의 코딩없이 페이지가 작성될 경우, 단순하게 페이지의 레이아웃이 꾸며질 수는 있으나, 각 페이지에서의 사용자의 처리는 반영되지 못한다. 왜냐하면, 프로그램의 코딩없이 페이지가 작성된 경우, 페이지에 값이 입력되더라도, 입력된 값이 데이터베이스에 반영되지 못하기 때문이다. 이는 종래에, 각 페이지와 데이터베이스의 각 테이블과의 연결관계가 복잡함에 따라, 프로그램의 코딩없이는 각 페이지와 각 테이블과의 관계를 정의할 수 없음에 기인한다. 예를 들어, 하나의 페이지가 총 10개의 테이블과 연결될 수 있다.
그러나, 본 발명에서는 페이지의 구성단위를 블록으로 설정하고, 블록과 하나의 테이블을 연결시킬 수 있다. 즉, 본 발명에서는, 페이지 단위로 데이터베이스의 테이블을 연결시키는 것이 아니라, 페이지의 구성단위인 블록과 테이블을 연결시킨다. 이에 따라, 블록마다 테이블을 연결시킬 수 있고, 페이지가 복수의 블록을 포함하는 경우, 해당 페이지는 복수의 테이블과 연결될 수 있다. 또한, 본 발명의 업무 시스템 개발 툴에서 블록과 테이블이 UI상으로 연결될 수 있고, 이 경우, 업무 시스템 제공 장치는 해당 블록과 해당 테이블을 연동시킬 수 있고, 업무 시스템에서 제공되는 페이지의 블록 영역에 블록과 연동되는 테이블에 대한 정보를 반영할 수 있다. 또한, 상기 블록 영역에 값이 입력된 경우, 입력된 값을 해당 테이블에 반영시킬 수 있다.
또한, 페이지 구성 시트에서, 블록은 테이블의 엔터티와 매칭될 수 있다. 이 경우, 블록은 엔터티가 포함된 테이블과 연동될 수 있다. 이에 따라, 업무 시스템 제공 장치는 업무 시스템에서 제공되는 페이지의 블록 영역에 블록과 매칭되는 엔터티에 대한 정보를 반영할 수 있다. 또한, 상기 블록 영역에 값이 입력된 경우, 입력된 값을 테이블의 엔터티에 반영시킬 수 있다.
이와 같이, 본 발명에 따르면, 별도의 프로그램 코딩없이도 페이지의 구성단위인 블록과 데이터베이스가 연결될 수 있다. 이에 따라, 업무 시스템의 페이지에 대한 사용자의 처리가 데이터베이스에 반영될 수 있고, 결과적으로는, 업무 시스템이 복잡한 프로그램의 코딩없이 손쉽게 구축될 수 있다.
또한, 블록 데이터는 전술한 개발 데이터에 포함될 수 있다.
도 20은 일 실시예에 따른 블록의 배치 및 속성 설정을 설명하기 위한 도면이다.
도 20을 참조하면, (a)에서, 페이지 구성 시트의 인터페이스(2010)에서는 블록의 배치가 설정될 수 있다. 일 예로, 인터페이스(2010)에서 블록(2011)이 호출될 수 있고, 블록(2011)이 블록 레이아웃(2021)에 UI상으로 드래그될 경우, 블록 레이아웃(2021)에 따라 블록의 배치가 설정될 수 있다.
또한, (b)에서, 페이지 구성 시트의 인터페이스(2030)에서는 블록의 속성이 설정될 수 있다. 구체적으로, 인터페이스(2030)에서, 블록의 변수명(2031)이 정의될 수 있다. 또한, 인터페이스(2030)에서, 블록의 데이터 셋(2030)이 정의될 수 있다. 예를 들어, 인터페이스(2030)에서는 데이터베이스의 사원정보 테이블을 데이터 셋(2030)으로 호출할 수 있다.
또한, 인터페이스(2030)에서, 데이터 셋(2030)인 사원정보 테이블의 엔터티들(2033) 중, 블록에 포함시킬 엔터티를 선택될 수 있다. 예를 들어, 엔터티들(2033) 중 사원코드, 사원명, 소속부서, 로그인 id, 로그인 암호의 엔터티가 선택된 경우, 업무 시스템 제공 장치는 상기 선택된 엔터티들이 포함된 블록(2040)을 생성할 수 있다. 일 실시예에서, 상기 선택된 엔터티들의 속성은 미리 정해지거나 사용자에 의해 설정될 수 있고, 업무 시스템 제공 장치는 선택된 엔터티들의 속성을 반영하여 블록을 생성할 수 있다.
또한, 전술한바와 같이, 하나의 페이지에는 복수의 블록이 포함될 수 있고, 이 경우, 복수의 블록 각각에 대하여, 복수의 블록 각각에 포함시킬 엔터티가 선택되고, 업무 시스템 제공 장치는 선택된 엔터티에 따라 페이지에서 블록을 구성할 수 있다.
도 21은 다른 일 실시예에 따른 블록의 배치 및 속성 설정을 설명하기 위한 도면이다.
도 21을 참조하면, (a)에서, 페이지 구성 시트의 인터페이스(2110)에서, 블록(2130)에 복수의 서브 블록(2141 내지 2152)가 포함될 수 있다. 인터페이스(2110)에서, 복수의 서브 블록(2141 내지 2152)의 위치 및 크기가 조절될 수 있고, 업무 시스템 조절 장치는 복수의 서브 블록(2141 내지 2152)의 위치 및 크기를 반영하여 페이지의 블록을 구성할 수 있다.
또한, 인터페이스(2110)에는 테이블의 엔터티들(2120)가 나열될 수 있다. 여기서, 엔터티들(2120)는 하나의 테이블에 포함된 엔터티일 수 있다. 이 때, 엔터티들(2120) 중 하나의 엔터티는 복수의 서브 블록(2141 내지 2152) 중 하나의 서브 블록에 UI상으로 드래그될 수 있고, 이 경우, 해당 엔터티와 해당 서브 블록은 매칭될 수 있다. 예를 들어, 엔터티(2121)이 서브 블록(2142)에 UI상으로 드래그될 경우, 엔터티(2121)과 서브 블록(2142)는 매칭될 수 있고, 이에 따라, 업무 시스템 제공 장치는 페이지 상에서 서브 블록(2142)에 엔터티(2121)의 내용을 반영할 수 있고, 페이지 상에서 서브 블록의 값이 변경될 경우, 변경된 값을 엔터티(2121)에 반영할 수 있다.
또한, 업무 시스템 제공 장치는 인터페이스(2110)에서 설정된 블록의 배치 및 속성에 따라, (b)의 식별부호(2140)와 같이 페이지를 구성할 수 있다. 상기 식별부호(2140)에서는 서브 블록(2149 내지 2152)에 대응되는 영역이 페이지에 표시되지 않았지만, 이는 페이지 구성의 일 예인 것으로, 다른 예에서는 서브 블록(2149 내지 2152)에 대응되는 영역은 페이지에 표시될 수 있음은 물론이다.
도 22 및 23은 일 실시예에 따른 플러그인을 설명하기 위한 도면이다.
도 22를 참조하면, 플러그인은 업무 시스템이 아닌 다른 시스템에서 제공되는 컨텐츠를 연결할 수 있는 구성을 의미할 수 있다. 예를 들어, 플러그인에 의해 연결되는 컨텐츠는 다른 시스템에서 제공하는 메일 컨텐츠, 메시지(예를 들어, SMS, IMS) 컨텐츠, 그래프 컨텐츠 또는 동영상 컨텐츠 중 적어도 하나를 포함할 수 있다. 또한, 이에 한정되지 않고, 플러그인에 의해 연결되는 컨텐츠는 다른 시스템에서 제공되는 어떠한 컨텐츠(예를 들어, 텍스트 컨텐츠 등)도 포함될 수 있다.
업무 시스템 제공 장치는 플러그인을 적용하는 경우에도, 프로그램의 코딩없이 업무 시스템의 페이지와 플러그인에 의해 연결되는 컨텐츠가 연동되도록 할 수 있다. 이를 위해, 업무 시스템 개발 툴의 페이지 구성 시트에서, 블록과 플러그인이 매칭될 수 있고, 업무 시스템 제공 장치는 업무 시스템에서 제공되는 페이지 중 상기 블록과 대응되는 영역에 플러그인과 연결되는 컨텐츠가 반영될 수 있다. 구체적으로, 페이지 구성 시트에서, 복수의 플러그인 중 상기 블록과 매칭되는 플러그인이 선택될 경우, 업무 시스템 제공 장치는 플러그인에 포함된, 상기 컨텐츠가 제공되는 다른 시스템에 접근하기 위한 어드레스를 획득하고, 상기 어드레스를 이용하여 상기 컨텐츠를 호출하고, 호출된 컨텐츠를 상기 페이지에서 상기 블록과 대응되는 영역에 적용시킬 수 있다. 이에 따라, 업무 시스템 제공 장치는 사용자가 별도의 프로그램 코딩을 하지 않고도 간단하게 외부의 컨텐츠를 호출할 수 있도록 할 수 있다.
보다 구체적으로, (a)의 인터페이스(2200)에서, 블록에 매칭될 플러그인의 유형이 선택될 수 있다. 예를 들어, 식별부호(2111)에서와 같이, 플러그인의 유형은 데이터, 메일, SMS 중 하나로 선택될 수 있다. 또한. 인터페이스(2212)에서 플러그인이 선택될 수 있다. 일 예로, 플러그인은 확장자가 dll인 파일일 수 있고, 업무 시스템 제공 장치의 메모리에 복수의 플러그인이 저장된 경우, 이중 하나의 플러그인을 선택할 수 있다.
(b)의 인터페이스(2220)에서는 플러그인의 속성이 정의될 수 있다. 예를 들어, 플러그인이 복수의 플러그인 메소드를 포함하는 경우, 복수의 플러그인 메소드 중 블록과 매칭시킬 적어도 하나의 플러그인 메소드가 선택될 수 있다. 또한, 플러그인 메소드가 복수의 엔터티를 포함하는 경우, 복수의 엔터티 중 블록에 적용할 적어도 하나의 엔터티가 선택될 수 있다. 이에 따라, 업무 시스템 제공 장치는 업무 시스템에서 제공되는 페이지 중 블록과 대응되는 영역에, 상기 선택된 플러그인 메소드에 대응하는 컨텐츠 및/또는 상기 선택된 엔터티에 대응하는 컨텐츠를 제공할 수 있다.
도 23을 참조하면, 인터페이스(2300)에서는 플러그인에 대응하는 컨텐츠가 미리보기 형식으로 제공될 수 있다. 예를 들어, 인터페이스(2300)와 같이, 플러그인 메소드(2311)가 선택되고, 플러그인으로부터 플러그인의 어드레스(2312)가 획득된 경우, 업무 시스템 제공 장치는 플러그인의 어드레스(2312)를 기초로 플러그인 메소드(2311)에 대응하는 컨텐츠(2321)를 업무 시스템 제공 장치가 아닌 다른 장치로부터 획득하고, 획득한 컨텐츠(2321)를 제공할 수 있다. 도 23의 예에서는 컨텐츠(2321)를 미리보기 형식으로 제공하는 예가 도시되었지만, 이에 한정되지 않고, 컨텐츠(2321)는 업무 시스템의 페이지 상에 제공될 수 있다.
<개발 데이터의 관리 및 제공>
이하에서는, 도 1의 개발 데이터 제공 장치(140)의 동작으로 개발 데이터의 관리 및 제공에 대해 설명한다.
도 24는 일 실시예에 따른 개발 데이터 제공 장치를 나타낸 블록도이다.
도 24를 참조하면, 개발 데이터 제공 장치(2400)는 메모리(2410), 제어부(2420) 및 통신 인터페이스(2430)를 포함할 수 있다.
메모리(2410)는 제어부(2420)에서 처리되는 정보를 저장하거나, 저장된 정보를 제어부(2420)에 제공할 수 있다.
제어부(2420)는 통신 인터페이스(2430)를 통하여 정보를 입력받거나 출력할 수 있다. 또한, 제어부(2420)는 통신 인터페이스(2430)를 통하여 외부 장치와 통신을 수행할 수 있다. 예를 들어, 개발 데이터 제공 장치(2400)의 토신 인터페이스(2430)과 업무 시스템 제공 장치의 통신 인터페이스는 통신적으로 연결되고, 이에 따라, 개발 데이터 제공 장치(2400) 및 업무 시스템 제공 장치는 상호간에 통신을 수행할 수 있다.
또한, 제어부(2420)는 통신 인터페이스(2430)를 통하여, 업무 시스템 제공 장치에 개발 데이터를 제공할 수 있다. 여기서, 개발 데이터는 업무 시스템 제공 장치에서 이용되는 업무 시스템 개발 툴에서, 업무 시스템의 구현을 위해 이용되는 데이터를 의미할 수 있다. 또한, 제어부(2420)는 통신 인터페이스(2430)를 통하여 업무 시스템 제공 장치로부터 개발 데이터를 획득하고, 획득된 개발 데이터를 관리할 수도 있다.
도 24에 도시된 개발 데이터 제공 장치에는 도 25 내지 도 29를 통해 설명되는 내용이 그대로 적용될 수 있으므로, 보다 상세한 내용은 생략한다.
도 25는 일 실시예에 따른 개발 데이터 제공 방법을 나타낸 동작 흐름도이다.
도 25를 참조하면, 개발 데이터 제공 장치는 개발 데이터 중 사용자가 복수의 프로젝트 데이터, 복수의 어플리케이션 데이터 및 복수의 구성 데이터 중 적어도 하나를 선택할 수 있는 선택 인터페이스를 제공할 수 있다(2510). 여기서, 개발 데이터는 프로그램의 코딩없이 구축되는 업무 시스템을 개발하기 위한 업무 시스템 개발 툴에서, 업무 시스템의 개발에 이용되는 데이터를 의미할 수 있다. 일 예로, 개발 데이터는 전술한 업무 시스템의 전체 업무와 대응되는 프로젝트에 대한 프로젝트 데이터, 업무 시스템의 세부 업무와 대응되는 어플리케이션에 대한 어플리케이션 데이터 및 어플리케이션을 구축하는 구성요소에 대한 구성 데이터를 포함할 수 있다. 또한, 구성 데이터는 업무 시스템의 어플리케이션의 업무의 흐름을 정의하는 맵 다이어그램에 대한 맵 다이어그램 데이터, 어플리케이션의 업무 중 개별 단위 업무를 정의하는 프로세스 다이어그램에 대한 프로세스 다이어그램 데이터, 어플리케이션과 연동하는 데이터베이스의 테이블에 대한 테이블 데이터를 포함할 수 있다. 여기서, 맵 다이어그램 데이터는 업무 시스템 개발 툴의 맵 다이어그램 구성 시트에서 생성되고, 프로세스 다이어그램 데이터는 프로세스 다이어그램 구성 시트에서 생성되며, 테이블 데이터는 테이블 구성 시트에서 생성될 수 있다.
또한, 구성 데이터는 업무 시스템에서 제공되는 페이지에 대한 페이지 데이터를 포함할 수 있다. 이 때, 페이지 데이터는 업무 시스템 개발 툴의 페이지 구성 시트에서 생성될 수 있다.
또한, 구성 데이터는 페이지 구성 시트에서 정의되는 페이지의 기초 레이아웃에 반영되는 템플릿 데이터 및 상기 페이지의 레이아웃에 반영되는 블록 데이터를 포함할 수 있다. 여기서, 블록 데이터의 블록은 전술한 바와 같이, 업무 시스템을 사용하는 사용자의 처리가 데이터베이스에 반영되도록 데이터베이스의 테이블과 매칭될 수 있다.
일 실시예에서, 개발 데이터 제공 장치에는 매우 많은 수의 개발 데이터가 저장되어 있으나, 사용자는 이 중 일분의 개발 데이터의 제공을 요청할 수 있다. 이에 따라, 개발 데이터 제공 장치는 사용자의 편의를 위하여, 개발 데이터를 선택할 수 있는 선택 인터페이스를 사용자 장치에 제공할 수 있다. 여기서, 사용자 장치는 업무 시스템 개발 장치를 이용하는 사용자가 사용하는 장치를 나타낸 것으로, 전술한 업무 시스템 제공 장치일 수도 있고, 다른 장치(예를 들어, 모바일, 테블릿, PC, 서버)등일 수도 있다. 사용자 장치는 선택 인터페이스를 통하여, 제공받으려는 개발 데이터를 선택할 수 있다.
또한, 개발 데이터 제공 장치는 개발 데이터 중 사용자가 선택하기 위한 개발 데이터가 검색되도록, 개발 데이터에 대한 검색 인터페이스를 제공할 수 있다. 이에 따라, 사용자는 검색 인터페이스를 이용하여 쉽게 자신이 원하는 검색 데이터를 찾을 수 있다. 검색 인터페이스에 대해서는 도 27에서 상세하게 설명한다.
또한, 개발 데이터 제공 장치는 선택 인터페이스를 통해 선택된 개발 데이터를 사용자에게 제공할 수 있다(2520). 즉, 개발 데이터 제공 장치는 통신 인터페이스를 통하여 선택된 개발 데이터를 사용자에게 전송할 수 있다.
일 실시예에서, 개발 데이터 제공 장치는 소정의 조건이 만족되는 경우 사용자 장치에 선택된 개발 데이터를 제공할 수 있다. 이에 대해서는 도 26에서 상세하게 설명한다.
도 26은 다른 일 실시예에 따른 개발 데이터 제공 방법을 나타낸 동작 흐름도이다.
도 26을 참조하면, 개발 데이터 제공 장치는 사용자 장치의 개발 데이터 제공 장치로의 접속을 확인할 수 있다(2610). 일 실시예에서, 개발 데이터 제공 장치는 사용자간에 개발 데이터를 거래할 수 있는 데이터 마켓을 제공할 수 있다. 예를 들어, 상기 마켓은 전술한 어플리케이션 센터에 포함될 수 있다.
또한, 개발 데이터 제공 장치는. 사용자 장치가 데이터 마켓에 접속할 수 있는지 여부를 확인할 수 있다. 일 예로, 개발 데이터 제공 장치는 모든 사용자 장치가 데이터 마켓에 접속 가능하도록 구성할 수도 있고, 미리 데이터 마켓에 가입된 사용자의 사용자 장치만이 데이터 마켓에 접속 가능하도록 구성할 수도 있다.
또한, 개발 데이터 제공 장치는 사용자 장치로부터 개발 데이터의 제공 요청을 수신할 수 있다(2620).
또한, 개발 데이터 제공 장치는 사용자가 보유하는 보유 포인트를 확인할 수 있다(2630). 여기서, 포인트는 데이터 마켓에서 개발 데이터의 거래 수단으로 이용되는 것으로, 일 예로, 포인트는 개발 데이터의 가치를 평가할 수 있는 기준이 될 수 있다. 일 실시예에서, 포인트는 개발 데이터의 업로드를 수행하는 사용자에게 소정의 양만큼 부여될 수도 있고, 데이터 마켓에서 사용자에 의해 포인트를 구매될 수도 있다.
또한, 개발 데이터 제공 장치는 사용자의 보유 포인트가 개발 데이터의 구매 포인트 이상인지 여부를 판단할 수 있다(2640). 여기서, 구매 포인트는 해당 개발 데이터의 제공을 받을 수 있는 포인트를 의미할 수 있다. 일 실시예에서, 구매 포인트는 개발 데이터의 종류, 크기, 제공 빈도 등에 따라 다양하게 설정될 수 있다.
판단 결과, 사용자의 보유 포인트가 개발 데이터의 구매 포인트 이상인 경우, 개발 데이터 제공 장치는 사용자 장치에 해당 개발 데이터를 제공하고, 사용자의 보유 포인트에서 구매 포인트를 차감할 수 있다(2650).
또한, 판단 결과, 사용자의 보유 포인트가 개발 데이터의 구매 포인트 보다 작은 경우, 개발 데이터 제공 장치는 사용자 장치에 개발 데이터를 제공하지 않고, 사용자 장치에 개발 데이터를 제공할 없다는 취지를 통보할 수 있다(2660).
이와 같이, 개발 데이터 제공 장치는 포인트의 지급을 조건으로 사용자 장치에 개발 데이터를 제공함으로써, 개발 데이터의 거래를 활성화하고, 개발 데이터를 제공에 따른 수익을 창출할 수 있다.
도 27은 일 실시예에 따른 구매 포인트의 검색 인터페이스를 설명하기 위한 도면이다.
도 27을 참조하면, 인터페이스(2700)는 검색 인터페이스(2710) 및 검색 결과 인터페이스(2720)를 포함할 수 있다. 개발 데이터 제공 장치는 사용자가 원하는 개발 데이터를 서치할 수 있도록 인터페이스(2700)를 제공할 수 있다. 일 예로, 검색 인터페이스(2710)는 개발 데이터의 유형, 파일명, 개발 데이터에 대한 설명, 포인트 등의 쿼리를 입력받을 수 있고, 복수의 개발 데이터가 저장된 데이터베이스로부터 상기 쿼리에 대응하는 개발 데이터를 검색할 수 있다.
또한, 검색 결과 인터페이스(2720)는 검색 결과를 제공할 수 있다. 일 예로, 검색 결과 인터페이스(2720)는 검색된 개발 데이터에 대한 정보를 제공할 수 있다. 여기서, 검색된 개발 데이터에 대한 정보는, 개발 데이터의 유형(예를 들어, 어플리케이션, 맵 다이어그램, 프로세스 다이어그램, 테이블 데이터, 템플릿 데이터, 블록 데이터 등), 파일명, 개발 데이터에 대한 설명, 개발 데이터의 제공 수를 포함할 수 있다. 또한, 검색 결과 인터페이스(2720)는 개발 데이터를 개략적으로 보여줄 수 있는 미리보기 정보를 제공할 수 있다. 예를 들어, 미리보기 정보는 개발 데이터 중 일부 페이지에 대한 정보, 개발 데이터의 페이지의 아웃라인 등을 포함할 수 있다. 또한, 검색 결과 인터페이스(2720)는 개발 데이터의 구매 포인트에 대한 정보를 제공할 수 있다. 또한, 검색 결과 인터페이스(2720)는 개발 데이터를 선택할 수 있는 선택 인터페이스를 제공할 수 있다. 개발 데이터 제공 장치는 선택 인터페이스를 통해 선택된 개발 데이터를 사용자 장치에 제공할 수 있다.
도 28은 또 다른 일 실시예에 따른 개발 데이터 제공 방법을 나타낸 동작 흐름도이다.
도 28을 참조하면, 개발 데이터 제공 장치는 제1 사용자 장치로부터 개발 데이터를 획득할 수 있다(2810). 즉, 제1 사용자 장치는 개발 데이터 제공 장치에 개발 데이터를 업로드할 수 있다. 구체적으로, 개발 데이터 제공 장치는 통신 인터페이스를 통하여 제1 사용자 장치로부터 개발 데이터를 획득하고, 제1 사용자 장치가 아닌 다른 사용자 장치에 개발 데이터를 제공하도록 개발 데이터를 저장 및 관리할 수 있다.
또한, 개발 데이터 제공 장치는 개발 데이터가 제2 사용자 장치에 제공될 수 있는지 여부를 판단할 수 있다(2820). 구체적으로, 제1 사용자 장치가 개발 데이터를 업로드 할 때, 개발 데이터에는 제1 사용자 장치에서 처리된 업무 내용이 기록될 수 있다. 예를 들어, 제1 사용자 장치가 업로드하는 개발 데이터가 급여관리 어플리케이션인 경우, 상기 급여관리 어플리케이션에는 제1 사용자 장치의 회사에서 처리되는 급여 정보가 같이 기록될 수 있다. 이러한, 급여 정보는 회사 입장에서는 비밀 정보에 해당할 수 있어, 유출될 경우 보안 문제가 발생될 수 있고, 급여관리 어플리케이션을 제공받는 제2 사용자 장치의 입장에서는 불필요한 정보로 취급될 수 있다. 이를 위해, 제1 사용자 장치는 개발 데이터 중 제1 사용자 장치에서 처리된 업무 내용을 삭제하고 업로드를 진행하여야 하나, 제1 사용자 장치의 입장에서는 상기 업무 내용을 삭제하는 것이 번거로운 일이 될 수 있고, 이에 따라, 제1 사용자 장치는 아예 개발 데이터의 업로드를 포기할 수 있다. 이 경우, 개발 데이터가 제공되는 빈도는 크게 감소될 수 있다. 이러한 문제점을 해결하기 위하여, 개발 데이터 제공 장치는 제1 사용자 장치에서 업로드된 개발 데이터가 제2 사용자 장치에 제공될 수 있는지 여부를 판단하고, 판단 결과, 제1 사용자 장치에서 업로드된 개발 데이터가 제2 사용자 장치에 제공될 수 없는 경우에는, 개발 데이터를 제2 사용자 장치에 제공 가능하도록 가공할 수 있다(2830).
예를 들어, 개발 데이터 제공 장치는 제1 사용자 장치에 의해 업로드된 개발 데이터에 제1 사용자 장치에서 처리된 업무 내용이 포함되었는지 여부를 판단하고, 업무 내용이 포함된 경우, 제1 사용자 장치에서 처리된 업무 내용을 개발 데이터에서 삭제할 수 있다.
다만, 일 실시예에서, 제1 사용자 장치에 의해 업로드된 개발 데이터가 플러그인을 포함하는 경우, 개발 데이터 제공 장치는 개발 데이터에서 플러그인을 삭제하지 않고 유지할 수 있다. 왜냐하면, 플러그인은 업무 시스템이 아닌 다른 시스템에서 제공되는 컨텐츠를 연결하는 것으로, 상기 컨텐츠가 유지되어도 보안문제가 발생되지 않기 때문이다. 오히려, 플러그인이 삭제되는 경우, 업무 시스템이 정상적으로 구현되지 않을 수 있으므로, 개발 데이터 제공 장치는 플러그인을 개발 데이터에서 유지할 수 있다. 구체적인 예로, 제1 사용자 장치가 업로드한 개발 데이터가 블록 데이터이고, 블록 데이터의 블록은 업무 시스템이 아닌 다른 시스템에서 제공되는 컨텐츠가 상기 업무 시스템에서 제공되도록, 상기 컨텐츠에의 연결을 위한 플러그인과 매칭될 수 있다. 이 경우, 개발 데이터 제공 장치는 상기 블록 데이터에서 제1 사용자 장치에서 처리된 업무 내용을 삭제하되. 플러그인에 대한 정보는 삭제하지 않을 수 있다.
또한, 단계(2820)에서의 판단 결과, 개발 데이터가 제2 사용자 장치에 제공될 수 있는 경우 또는 단계(2830)에서 개발 데이터가 제2 사용자 장치에 제공 가능하도록 가공된 경우, 개발 데이터 제공 장치는 제2 사용자 장치에 개발 데이터를 제공할 수 있다(2840).
도 29는 일 실시예에 따른 개발 데이터의 업데이트 방법을 나타낸 동작 흐름도이다.
도 29를 참조하면, 개발 데이터 제공 장치는 제1 사용자 장치로부터 개발 데이터를 획득할 수 있다(2910). 일 실시예에서, 개발 데이터 제공 장치는 획득되는 개발 데이터가 다른 개발 데이터로부터 식별될 수 있도록, 상기 획득되는 개발 데이터에 식별자를 부여할 수 있다. 이에 따라, 개발 데이터 제공 장치가 관리하는 복수의 개발 데이터에는 식별자가 부여될 수 있고, 식별자에 의해 복수의 개발 데이터가 식별될 수 있다. 다른 일 실시예에서, 제1 사용자 장치로부터 획득되는 개발 데이터가 개발 데이터 관리 장치에 미리 획득된 개발 데이터와 동일하거나, 제1 사용자 장치로부터 획득되는 개발 데이터가 상기 미리 획득된 개발 데이터의 업데이트 버전인 경우, 개발 데이터는 제1 사용자 장치로부터 획득되는 개발 데이터에 미리 획득된 개발 데이터와 동일한 식별자를 부여하거나, 업데이트 버전임을 나타내는 식별자를 부여할 수 있다. 또 다른 일 실시예에서, 개발 데이터는 제1 사용자 장치에서 이미 식별자가 부여될 수 있고, 이 경우에는 개발 데이터 제공 장치가 제1 사용자 장치로부터 획득되는 개발 데이터에 식별자를 부여하지 않을 수 있다.
또한, 개발 데이터 제공 장치는 획득된 개발 데이터가 미리 획득된 개발 데이터의 업데이트 버전인지 여부를 확인할 수 있다(2920). 예를 들어, 개발 데이터 제공 장치는 제1 사용자 장치로부터 획득된 개발 데이터와 상기 미리 획득된 개발 데이터의 출처, 개발자, 유형, 파일명, 설명 등의 정보가 동일하거나 및/또는 상기 획득된 개발 데이터의 생성 일자가 상기 미리 획득된 개발 데이터의 생성 일자보다 늦거나 및/또는 상기 미리 획득된 개발 데이터에 비하여 상기 획득된 개발 데이터의 구성이 추가/삭제/변경된 경우에는 상기 획득된 개발 데이터가 미리 획득된 개발 데이터의 업데이트 버전인 것으로 결정할 수 있다. 또한, 다른 예로서, 개발 데이터의 식별자가 제1 사용자 장치에서 미리 부여된 경우, 상기 제1 사용자 장치로부터 획득된 개발 데이터의 식별자와 미리 획득된 개발 데이터의 식별자가 동일하거나, 상기 제1 사용자 장치로부터 획득된 개발 데이터의 식별자가 미리 획득된 개발 데이터의 업데이트 버전임을 나타내는 경우, 상기 획득된 개발 데이터가 미리 획득된 개발 데이터의 업데이트 버전인 것으로 결정할 수 있다.
또한, 개발 데이터 제공 장치는 미리 획득된 개발 데이터를 제1 사용자 장치로부터 획득된 개발 데이터로 업데이트를 수행할 수 있다(2930). 예를 들어, 개발 데이터 제공 장치에서, 미리 획득된 개발 데이터가 제1 사용자 장치로부터 획득된 개발 데이터로 대체될 수도 있고, 미리 획득된 개발 데이터와 제1 사용자 장치로부터 획득된 개발 데이터가 병렬적으로 저장될 수도 있다.
또한, 개발 데이터 제공 장치는 업데이트된 개발 데이터를 제2 사용자 장치에 제공할 수 있다(2940). 예를 들어, 제2 사용자 장치가 개발 데이터의 제공을 새롭게 요청한 경우, 개발 데이터 제공 장치는 업데이트된 개발 데이터를 제2 사용자 장치에 제공할 수 있다. 다른 예로서, 제2 사용자 장치가 개발 데이터를 이미 제공받은 상태에서, 개발 데이터가 업데이트된 경우에는, 개발 데이터 제공 장치는 제2 사용자 장치에게 해당 개발 데이터가 업데이트 되었음을 통지하고, 제2 사용자 장치의 업데이트 요청이 있을 때에 업데이트된 개발 데이터를 제2 사용자 장치에 제공할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (12)

  1. 프로그램의 코딩없이 사용자에게 제공되는 페이지를 기반으로 업무 시스템을 제공하는 업무 시스템 제공 장치에 있어서,
    메모리; 및
    상기 메모리에 저장된 정보를 기초로 상기 업무 시스템을 구현하고, 상기 업무 시스템에 접속한 사용자에게 상기 업무 시스템을 제공하는 제어부
    를 포함하고,
    상기 제어부는,
    업무 시스템에서의 전체 업무의 흐름을 나타내는 맵 다이어그램을 획득하고,
    상기 맵 다이어그램에서 상기 페이지 전체에 포함되는 제1 페이지와 대응되는 제1 페이지 인터페이스 및 상기 페이지 전체에 포함되는 제2 페이지와 대응되는 제2 페이지 인터페이스가 UI(User Interface)상으로 연결될 경우, 상기 제1 페이지와 상기 제2 페이지를 연동시키고,
    상기 맵 다이어그램에서 상기 전체 업무 중 개별 단위 업무에 대응되는 프로세스 인터페이스가 UI 상으로 상기 제1 페이지 인터페이스와 연결될 경우, 상기 제1 페이지와 상기 개별 단위 업무를 연동시키고,
    상기 프로세스 인터페이스와 대응되고 상기 개별 단위 업무를 나타내는 프로세스 다이어그램을 획득하고,
    상기 프로세스 다이어그램에서 상기 페이지 전체에 포함되는 제3 페이지에 대응되는 액티비티 인터페이스 - 상기 액티비티 인터페이스는 제3 페이지에의 억세스에 대한 정보를 나타내는 억세스 권한 정보와 대응됨 - 을 검출한 경우, 상기 제1 페이지 및 상기 제3 페이지를 연동시키고,
    상기 억세스 권한 정보를 기초로 상기 업무 시스템에서 접속한 사용자가 상기 제3 페이지에 억세스 가능한 사용자로 확인된 경우, 상기 제1 사용자에게 제3 페이지를 제공하되, 상기 제3 페이지에 억세스 불가능한 사용자에게 상기 제3 페이지를 제공하지 않는 것을 특징으로 하는,
    업무 시스템 제공 장치.
  2. 제1항에 있어서,
    상기 프로세스 다이어그램에 상기 개별 단위 업무의 시작을 나타내는 시작 인터페이스 및 상기 개별 단위 업무의 종료를 나타내는 종료 인터페이스가 포함되고,
    상기 제어부는,
    상기 시작 인터페이스에 따라 상기 개별 단위 업무가 시작되고, 상기 종료 인터페이스에 따라 상기 개별 단위 업무가 종료되도록 상기 업무 시스템을 구현하되,
    상기 개별 단위 업무가 종료될 경우, 상기 맵 다이어그램에서 상기 프로세스 인터페이스와 UI상으로 연결된 제2 페이지 인터페이스에 대응하는 상기 제2 페이지를 상기 사용자에게 제공하는 것을 특징으로 하는,
    업무 시스템 제공 장치.
  3. 제2항에 있어서,
    상기 제어부는,
    상기 프로세스 다이어그램에서 상기 액티비티 인터페이스가 상기 시작 인터페이스 및 상기 종료 인터페이스와 UI상으로 연결된 경우,
    상기 개별 단위 업무에 진입될 때 상기 제3 페이지를 상기 제3 페이지에억세스 가능한 사용자에게 제공하고,
    상기 제3 페이지의 제공이 종료된 후 상기 개별 단위 업무를 종료하는 것을 특징으로 하는,
    업무 시스템 제공 장치.
  4. 제1항에 있어서,
    상기 프로세스 인터페이스는 상기 개별 단위 업무에 억세스에 대한 정보를 나타내는 프로세스 억세스 권한 정보와 대응되고,
    상기 제어부는,
    상기 프로세스 억세스 권한 정보를 기초로 상기 업무 시스템에 접속한 사용자가 상기 개별 단위 업무에 억세스 가능한 사용자로 사용된 경우, 상기 개별 단위 업무에 억세스 가능한 사용자가 상기 개별 단위 업무를 처리하도록 상기 업무 시스템을 구현하는 것을 특징으로 하는,
    업무 시스템 제공 장치.
  5. 제1항에 있어서,
    상기 맵 다이어그램이 제1 맵 다이어그램 및 제2 맵 다이어그램을 포함하고, 상기 제1 맵 다이어그램과 상기 제2 맵 다이어그램을 연결하는 채널 인터페이스 - 상기 채널 인터페이스는 제1 채널 인터페이스 및 상기 제1 채널 인터페이스와 대응되는 제2 채널 인터페이스를 포함함 - 가 상기 업무 시스템에 제공될 경우,
    상기 제어부는,
    상기 제1 맵 다이어그램에 제1 인터페이스가 배치되고, 상기 제2 맵 다이어그램에 제2 인터페이스가 배치되고,
    상기 제1 맵 다이어그램에서 상기 제1 인터페이스와 제1 채널 인터페이스가 UI상으로 연결되고,
    상기 제2 맵 다이어그램에서 상기 제2 인터페이스와 UI상으로 제2 채널 인터페이스 연결될 경우,
    상기 제1 인터페이스와 상기 제2 인터페이스가 UI상에서 직접적으로 연결되지 않아도 상기 제1 인터페이스와 상기 제2 인터페이스를 연결시키는 것을 특징으로 하는,
    업무 시스템 제공 장치.
  6. 제1항에 있어서,
    상기 맵 다이어그램에서, 상기 제1 페이지 인터페이스와 상기 제2 페이지 인터페이스 사이에 트랜젝션 인터페이스가 UI상으로 연결된 경우,
    상기 제어부는,
    상기 제1 페이지 인터페이스에 대응하는 상기 제1 페이지가 제공된 후 상기 제2 페이지가 제공되기 전에 상기 트랜젝션 인터페이스에 대응하는 처리를 수행하는 것을 특징으로 하는,
    업무 시스템 제공 장치.
  7. 제1항에 있어서,
    상기 제어부는,
    상기 제1 페이지에의 상기 사용자의 처리가 데이터베이스에 반영되도록, 상기 제1 페이지의 구성단위를 상기 데이터베이스의 테이블의 엔터티와 대응되는 블록으로 설정하고, 상기 블록을 기초로, 상기 제1 페이지를 구현하는 것을 특징으로 하는,
    업무 시스템 제공 장치.
  8. 제7항에 있어서,
    상기 제어부는,
    상기 메모리로부터 템플릿을 호출하고,
    상기 페이지 구성 시트에 상기 템플릿이 적용될 경우, 상기 제1 페이지에 상기 템플릿을 반영하는 것을 특징으로 하는,
    업무 시스템 제공 장치.
  9. 제7항에 있어서,
    상기 제어부는,
    상기 업무 시스템이 아닌 다른 시스템에서 제공되는 컨텐츠가 상기 업무 시스템에서 제공되도록, 상기 컨텐츠에의 연결을 위한 플러그인이 상기 블록에 적용될 경우, 상기 제1 페이지에서 상기 블록에 대응되는 영역에 상기 컨텐츠를 제공하는 것을 특징으로 하는,
    업무 시스템 제공 장치.
  10. 제1항에 있어서,
    상기 맵 다이어그램 및 상기 프로세스 다이어그램은 제1 어플리케이션에 포함되고,
    상기 맵 다이어그램 및 상기 프로세스 다이어그램은 상기 제1 어플리케이션과 다른 상기 제2 어플리케이션에의해 억세스될 수 없는 것을 특징으로 하는,
    업무 시스템 제공 장치.
  11. 프로그램의 코딩없이 사용자에게 제공되는 페이지를 기반으로 업무 시스템을 개발하기 위한 업무 시스템 제공 방법에 있어서,
    업무 시스템에서의 전체 업무의 흐름을 나타내는 맵 다이어그램을 획득하는 단계
    상기 맵 다이어그램에서 상기 페이지 전체 에 포함되는 제1 페이지와 대응되는 제1 페이지 인터페이스 및 상기 페이지 전체 에 포함되는 제2 페이지와 대응되는 제2 페이지 인터페이스가 UI상으로 연결될 경우, 상기 제1 페이지와 상기 제2 페이지를 연동시키는 단계; 및
    상기 맵 다이어그램에서 상기 전체 업무 중 개별 단위 업무에 대응되는 프로세스 인터페이스 및 상기 제1 페이지 인터페이스가 UI상으로 연결될 경우, 상기 제1 페이지와 상기 개별 단위 업무를 연동시키는 단계
    를 포함하되,
    상기 제1 페이지와 상기 프로세스 인터페이스를 연동시키는 단계는,
    상기 프로세스 인터페이스와 대응되고 상기 개별 단위 업무를 나타내는 프로세스 다이어그램을 획득하는 단계;
    상기 프로세스 다이어그램에서 상기 페이지 전체에 포함되는 제3 페이지에 대응되는 액티비티 인터페이스 - 상기 액티비티 인터페이스는 제3 페이지에의 억세스에 대한 정보를 나타내는 억세스 권한 정보와 대응됨 - 을 검출한 경우, 상기 제1 페이지 및 상기 제3 페이지를 연동시키는 단계; 및
    상기 억세스 권한 정보를 기초로 상기 업무 시스템에서 접속한 사용자가 상기 제3 페이지에 억세스 가능한 제1 사용자로 확인된 경우, 상기 제1 사용자에게 제3 페이지를 제공하되, 상기 제3 페이지에 억세스 불가능한 제2 사용자에게 상기 제3 페이지를 제공하지 않는 단계
    를 포함하는,
    업무 시스템 제공 방법.
  12. 제11항의 방법을 수행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
KR1020160160428A 2016-11-29 2016-11-29 업무 시스템 제공 방법 및 장치 KR20180069939A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160160428A KR20180069939A (ko) 2016-11-29 2016-11-29 업무 시스템 제공 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160160428A KR20180069939A (ko) 2016-11-29 2016-11-29 업무 시스템 제공 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20180069939A true KR20180069939A (ko) 2018-06-26

Family

ID=62788344

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160160428A KR20180069939A (ko) 2016-11-29 2016-11-29 업무 시스템 제공 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20180069939A (ko)

Similar Documents

Publication Publication Date Title
US20220382719A1 (en) Change request visualization in hierarchical systems
US9977654B2 (en) Method of developing an application for execution in a workflow management system and apparatus to assist with generation of an application for execution in a workflow management system
US9430449B2 (en) Systems, methods, and media for managing editable previews of webpages
CN107408042A (zh) 用于移动应用的高效和直观的数据绑定
US20150100946A1 (en) Using mock data to validate applications
KR101275871B1 (ko) SaaS 환경에서의 홈페이지 제작 시스템 및 방법, 그 방법을 컴퓨터에서 실행하기 위한 컴퓨터 프로그램이 기록된, 컴퓨터로 판독 가능한 기록 매체
US9043755B2 (en) Custom code lifecycle management
US20160274885A1 (en) Controlling deployment of an industry-specific solution package
US20160274906A1 (en) Generating a deployable industry-specific solution package
EP3025281B1 (en) Automatic configuration of a computer system based on process modeling of an implemented process
US9684802B2 (en) Verification and access control for industry-specific solution package
KR101777850B1 (ko) 업무 시스템 제공 방법 및 장치
US10200455B2 (en) Information processing system and method
US10275440B2 (en) Setup data extraction for deploying a solution package
KR101798867B1 (ko) 업무 시스템 개발 방법 및 장치
KR20180060993A (ko) 업무 시스템 제공 방법 및 장치
KR20180069939A (ko) 업무 시스템 제공 방법 및 장치
KR20180060360A (ko) 클라우드 컴퓨팅 환경에서 제공되는 총무 관리 프로그램에서 사용자 정의에 따른 사용자 인터페이스 제공 방법 및 장치
JP5949278B2 (ja) 情報処理装置、情報処理装置の制御方法、プログラムおよび記録媒体
JP4220507B2 (ja) ウェブサイト更新支援装置、方法及びプログラム
CN110083589A (zh) 一种面向航电系统的能力仓库
KR101606820B1 (ko) 업무 시스템 개발 장치 및 업무 시스템 제공 서버
JP2002175206A (ja) データベースシステム構築装置、構築方法およびプログラムを記録した記録媒体
JP2021060662A (ja) 情報処理システム及びその制御方法
JP2024076015A (ja) 情報処理システム、情報処理システムの制御方法、及びプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment