KR101195943B1 - Method for service of multi-tenant based database as a service - Google Patents

Method for service of multi-tenant based database as a service Download PDF

Info

Publication number
KR101195943B1
KR101195943B1 KR1020100115750A KR20100115750A KR101195943B1 KR 101195943 B1 KR101195943 B1 KR 101195943B1 KR 1020100115750 A KR1020100115750 A KR 1020100115750A KR 20100115750 A KR20100115750 A KR 20100115750A KR 101195943 B1 KR101195943 B1 KR 101195943B1
Authority
KR
South Korea
Prior art keywords
user terminal
server
information
page
service
Prior art date
Application number
KR1020100115750A
Other languages
Korean (ko)
Other versions
KR20120054396A (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 KR1020100115750A priority Critical patent/KR101195943B1/en
Publication of KR20120054396A publication Critical patent/KR20120054396A/en
Application granted granted Critical
Publication of KR101195943B1 publication Critical patent/KR101195943B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/289Object oriented databases

Abstract

멀티테넌트 형태로 서비스할 수 있도록 업무 테이블을 자동으로 생성해주는 멀티테넌트 기반의 서비스로서의 데이터베이스 서비스 방법이 개시된다. 이를 위하여 본 발명은 사용자 단말기로부터 업무 정보를 수집하는 단계와, 업무 정보를 분석하여 기본 테이블을 추출하고 이를 사용자 단말기로 제공하는 단계와, 사용자정의필드 페이지를 사용자 단말기로 제공하는 단계와, 추가할 테이블 정보를 입력받는 단계, 및 상기 테이블 정보를 취합하여 업무 테이블을 자동으로 생성하는 단계를 제공한다. 본 발명에 의하면, 어플리케이션의 제작시간 및 제작비용을 줄일 수 있으며, 개별 사용자에 최적화된 업무 테이블이 포함된 어플리케이션을 제공할 수 있다.Disclosed is a database service method as a multi-tenant based service that automatically creates a work table for serving in a multi-tenant form. To this end, the present invention collects work information from a user terminal, extracts a basic table by analyzing the work information and provides it to the user terminal, and provides a user-defined field page to the user terminal. And receiving table information, and automatically generating a work table by collecting the table information. According to the present invention, it is possible to reduce the production time and production cost of the application, it is possible to provide an application including a work table optimized for individual users.

Description

멀티테넌트 기반의 서비스로서의 데이터베이스 서비스 방법{METHOD FOR SERVICE OF MULTI-TENANT BASED DATABASE AS A SERVICE} Database service method as a multi-tenant based service {METHOD FOR SERVICE OF MULTI-TENANT BASED DATABASE AS A SERVICE}

본 발명은 멀티테넌트 형태로 데이터베이스를 제공하는 서비스를 할 수 있도록 업무 테이블을 자동으로 생성해주는 멀티테넌트 기반의 서비스로서의 데이터베이스 서비스 방법에 관한 것으로, 보다 상세하게는 복수의 사용자가 인터넷을 통해 공동으로 이용할 수 있고, 기존의 데이터베이스와 프로그램을 활용할 수 있으며, 개발자의 도움 없이 사용자가 필요한 테이블을 직접 추가할 수 있어 개별 사용자의 요구를 만족할 수 있는 멀티테넌트 기반의 서비스로서의 데이터베이스 서비스 방법에 관한 것이다.
The present invention relates to a database service method as a multi-tenant-based service that automatically creates a work table for a service providing a database in a multi-tenant form. More specifically, a plurality of users jointly use the service through the Internet. The present invention relates to a database service method as a multi-tenant-based service that can satisfy an individual user's needs by allowing users to directly add necessary tables without a developer's help.

ASP(Application Service Provider)는 인터넷을 통하여 어플리케이션을 사용자에게 제공하는 어플리케이션 서비스, 즉 웹 어플리케이션(Web-base Application) 호스팅 서비스 제공업자를 의미한다. 또한, ASP는 어플리케이션 사용자가 월 일정액을 내거나 사용한 시간에 비례하여 임대의 형식으로 웹 어플리케이션을 사용하는 서비스제공 방식을 의미한다.Application Service Provider (ASP) refers to an application service that provides an application to a user through the Internet, that is, a web-based application hosting service provider. In addition, ASP refers to a service providing method of using a web application in the form of a lease in proportion to the time when an application user pays a monthly amount or uses it.

다시 말해, ASP 서비스는 인터넷과 같은 통신망을 통해 고객관계관리(Customer Relationship Management : CRM), 전사적자원관리(Enterprise Resource Planning : ERP), 그룹웨어 등 하이엔드 어플리케이션은 물론 오피스 제품 등을 빌려주는 것이다.In other words, ASP services lend high-end applications such as customer relationship management (CRM), enterprise resource planning (ERP), groupware, and office products through a communication network such as the Internet.

이와 같이, 일정 기간만 사용하거나 너무 많은 유지보수 비용이 들어 구입하기에는 다소 부담스러운 소프트웨어를 매월 요금을 받고 빌려주므로, 고객들은 비싼 돈을 주고 소프트웨어를 구입할 필요가 없으며 매번 업그레이드를 위한 추가 비용을 걱정하지 않아도 된다. As a result, customers pay a monthly fee for software that is rather expensive to use for a period of time or too much maintenance, so customers do not have to buy expensive software and worry about the additional cost of upgrading each time. You don't have to.

기업이 이 서비스를 이용하면 이용요금이 싸고, 서버 운용 및 유지보수 비용을 절감할 수 있으며, 지역에 관계없이 데이터의 통합관리가 가능해 중소ㅇ중견 기업을 주 고객으로 하고 있다.By using this service, the company has low user fees, reduced server operation and maintenance costs, and enables integrated management of data regardless of region.

이러한 ASP는 프로그램 제공업자, 네트워크 제공업자, 보안관리 사업자, 데이터베이스 사업자, 포탈 사업자 등으로 구성된다. 이러한 ASP 사업을 활성화 시키려면 프로그램 제공업자 외에 기밀정보를 안전하게 관리해주는 보안관리 사업자의 역할이 중요하다. These ASPs consist of program providers, network providers, security management providers, database providers, and portal providers. In order to revitalize this ASP business, the role of the security management service provider in addition to the program provider to securely manage confidential information is important.

최근 통신업체, 시스템 통합(SI)업체, 대형 정보기술(IT)업체, 중소전문 업체들이 잇따라 이 시장에 참여하면서 IT분야의 차기 성장사업으로 부상했고 IBM, 마이크로소프트, 오라클, SAP 등 주요 IT 업체들이 선두경쟁을 벌이고 있다.
Recently, telecommunications companies, system integrators, large information technology companies, and small and medium-sized companies have joined this market and emerged as the next growth business in the IT field, and major IT companies such as IBM, Microsoft, Oracle, and SAP. Are competing for the lead.

한편, 최근에는 기존의 ASP를 확장한 개념으로 SaaS(Software as a Service)가 부각되고 있다. On the other hand, SaaS (Software as a Service) has recently emerged as an extension of the existing ASP.

상기 ASP가 전통적인 어플리케이션을 온라인으로 대체하는 것에 초점을 맞춘 것이라면, SaaS는 모든 소프트웨어 영역에서 새로운 방식의 유통모델을 강조하는 개념이라고 할 수 있다.If the ASP is focused on replacing traditional applications online, SaaS is a concept that emphasizes a new way of distribution in all areas of software.

보다 구체적으로, SaaS는 소프트웨어의 기능 중 유저가 필요로 하는 것만을 서비스로 배포해 이용이 가능하도록 한 소프트웨어의 배포형태이며, 서비스형 소프트웨어로도 불린다. 그리고 SaaS를 사용하면 사용자는 필요한 가능만을 필요할 때에 이용할 수 있으며, 이용하는 기능만큼만 요금을 지불한다. More specifically, SaaS is a distribution form of software in which only a user's functions required by a user are distributed as a service so that the user can use the service. And with SaaS, users get only what they need when they need it, and they pay only for what they use.

이러한 SaaS는 필요한 기능을 사용자가 다운로드하여 자신의 단말기에 인스톨하는 형태와, 서버 상에서 작동하는 소프트웨어의 기능을 네트워크를 통해 온라인으로 이용하는 형태가 있으며, 최근에는 후자의 형태가 주류가 되고 있다. Such a SaaS has a form in which a user downloads and installs a required function in a user's terminal, and uses a function of a software running on a server online through a network, and the latter has become mainstream in recent years.

일반 소프트웨어는 사용자에게 필요한 기능을 묶어 모든 사용자에게 같은 기능을 제공하고 있지만, 이러한 소프트웨어는 어떤 한 사람의 유저에게는 그다지 필요가 없는 기능이 상당수 탑재되어 있어, 필요 없는 기능에 대해서도 요금을 지불해야만 하였다. General software combines the functions required by the user to provide the same function to all users, but such software has many functions that are not necessary for any one user, and they have to pay for the functions that are not needed.

따라서 각각의 개인이 정말로 필요로 하는 기능만을 이용할 수 있으며, 그 기능에 대해서만 요금을 지불하는 SaaS라는 발상이 등장하게 된 것이다. 상기 SaaS는 네트워크를 통해 소프트웨어를 온라인으로 이용한다는 점에서 ASP 서비스와 비슷하며, 일반적인 ASP 서비스를 지칭하는 경우도 있다.Thus, the idea of SaaS, which allows users to use only the features they really need, pays only for those features. The SaaS is similar to an ASP service in that software is used online through a network, and may also refer to a general ASP service.

이러한 ASP 시장과 SaaS 시장은 전용선 확충으로 인한 IT 인프라가 확대되어가고 있는 여건 및 어플리케이션 사용자의 입장에서 웹 기반 소프트웨어를 저렴한 가격에 사용할 수 있다는 이유로 인하여 장차 크게 성장할 것으로 예측되고 있다.The ASP and SaaS markets are expected to grow significantly in the future due to the expansion of the IT infrastructure due to the expansion of leased lines and the availability of web-based software at a low price from the point of view of application users.

그러나, ASP는 사용자에 따라 새로운 로직을 작성해야 되고, 기존 데이터를 재활용할 수 없으며, 사용자가 직접 어플리케이션을 수정하기 어렵다는 문제점이 존재한다. 그리고 SaaS는 장기간의 개발시간이 소요되고, 사용자에 업무에 맞지 않은 테이블이 존재하여 사용이 불편하며, 높은 사양의 하드웨어를 필요로 하는 문제점이 존재한다. However, there is a problem that ASP must create new logic according to the user, cannot reuse existing data, and it is difficult for the user to directly modify the application. In addition, SaaS takes a long time to develop, there is a table that is not suitable for the user, it is inconvenient to use, and there is a problem that requires high specification hardware.

또한, 국내에서 제공하는 대부분의 SaaS 서비스 제공 사업자들의 SaaS 기술 아키텍처 성숙도 레벨은 레벨 2 수준이며 세일즈포스닷컴과 같은 국외의 SaaS 서비스 사업자와 유사한 레벨 3 수준으로 업그레이드하는 기술개발이 요구되고 있다.
In addition, the SaaS technology architecture maturity level of most SaaS service providers provided in Korea is level 2, and technology development is required to upgrade to a level 3 level similar to that of overseas SaaS service providers such as Salesforce.com.

따라서, 본 발명의 목적은 기 SaaS 서비스를 제공하고 있는 사업자들이 기존 시스템의 추가 및 변경을 최소화 한 상태에서 사용자의 업무에 맞는 테이블을 사용자가 직접 생성하고, 이를 멀티테넌트로 서비스 할 수 있도록 테넌트 속성을 자동으로 생성해주어 모든 사용자가 각자의 업무에 최적화된 어플리케이션을 사용할 수 있도록 하는 멀티테넌트 기반의 서비스로서의 데이터베이스 서비스 방법을 제공하는데 있다.
Accordingly, an object of the present invention is to provide tenant properties so that users who provide existing SaaS services can directly create a table suitable for a user's task while minimizing addition and change of an existing system, and service the service as a multi-tenant. It is to provide a database service method as a multi-tenant-based service that automatically generates an application so that all users can use an application optimized for their work.

상술한 본 발명의 목적을 달성하기 위하여, 본 발명의 일 실시예에서는 인터넷 통신망을 통해 서버에 접속된 사용자 단말기로 상기 서버의 데이터베이스에 저장된 소프트웨어를 제공하는 서비스로서의 데이터베이스 서비스 방법에 있어서, 상기 서버가 통신망을 통해 사용자 단말기로부터 업무정보를 수집하는 단계와, 상기 서버가 수집된 업무정보를 분석하여 데이터베이스로부터 기본 테이블을 추출하고, 상기 기본 테이블을 상기 사용자 단말기에 제공하는 단계와, 상기 기본 테이블을 확인한 사용자 단말기로부터 추가 테이블의 요청신호가 입력되면 서버가 사용자정의필드 페이지를 추출하여 상기 사용자 단말기로 제공하는 단계와, 상기 사용자 단말기가 사용자정의필드 페이지를 통해 추가할 테이블의 정보를 입력하여 상기 서버로 전송하는 단계, 및 상기 서버가 사용자 단말기로부터 전송된 정보에 따라 상기 기본 테이블에 추가 테이블이 부가된 업무 테이블을 자동으로 생성하는 단계를 포함하는 멀티테넌트 기반의 서비스로서의 데이터베이스 서비스 방법을 제공한다.
In order to achieve the above object of the present invention, an embodiment of the present invention provides a database service method as a service for providing software stored in a database of the server to a user terminal connected to the server through an Internet communication network, Collecting work information from a user terminal through a communication network; extracting a base table from a database by analyzing the collected work information by the server; providing the base table to the user terminal; If a request signal of an additional table is input from a user terminal, the server extracts a user-defined field page and provides it to the user terminal, and inputs information of a table to be added by the user terminal through the user-defined field page to the server. Transmitting System, and provides database services, as a way of multi-tenant-based services, including the step of the server is automatically generated by the work table, additional tables are added to the main table in accordance with the information transmitted from the user terminal.

본 발명에 의하면, 사용자의 업무에 따라 기본 테이블을 제공하지만, 업무 테이블의 최종 포맷은 고정되어 있지 않고, 상기 기본 테이블에 사용자가 자기 목적에 맞게 테이블을 직접 추가할 수 있으므로, 개별 사용자는 자신의 업무에 최적화된 업무 테이블이 포함된 어플리케이션을 사용할 수 있다. 이와 같이, 본 발명은 어플리케이션을 처음부터 제작하지 않고 기 설정된 기본 테이블을 활용할 수 있으므로 어플리케이션의 제작시간 및 제작비용을 줄일 수 있으며, 데이터베이스에 다양한 분야에 대한 기본 테이블이 저장되어 있어 업무 분야가 다른 사용자도 모두 공통으로 사용할 수 있는 환경을 제공해 준다.According to the present invention, although the basic table is provided according to the user's task, the final format of the task table is not fixed, and the user can add the table directly to the basic table according to his or her purpose. You can use an application that contains task tables optimized for the task. As such, the present invention can reduce the production time and production cost of the application because it can utilize a predetermined default table without producing the application from the beginning, and the user is different in the business field because the base table for various fields are stored in the database Both provide a common environment.

그리고 본 발명은 사용자가 필요한 테이블을 소스 코딩 등의 프로그래밍 과정 없이 메타 데이터와 사용자정의만으로도 추가할 수 있어 사용이 쉽고, 확장성이 뛰어나다. In addition, the present invention can be added to the table required by the user only by the metadata and customization without the programming process such as source coding, easy to use, and excellent in scalability.

또한, 본 발명은 인터넷에 접속할 수 있는 최소한의 환경만 갖추어져 있으면, 시간과 장소에 구애받지 않고 사용자의 업무 목적에 맞는 웹 어플리케이션을 생성하고, 이를 이용할 수 있다. In addition, the present invention can create and use a web application suitable for a user's business purpose regardless of time and place, provided that there is a minimum environment for accessing the Internet.

아울러, 본 발명은 업무에 필요한 어플리케이션을 사용자 단말기에 직접 인스톨하지 않고 인터넷을 통해 사용할 수 있기 때문에 높은 수준의 하드웨어를 구축하지 않고도 업무에 필요한 어플리케이션을 활용할 수 있다.
In addition, the present invention can be used over the Internet without installing the application required for the task directly on the user terminal can utilize the application required for the task without building a high level of hardware.

도 1은 본 발명의 일 실시예에 따른 서비스로서의 데이터베이스 서비스 시스템을 설명하기 위한 구성도이다.
도 2는 본 발명의 일 실시예에 따른 시스템의 서버를 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 서비스로서의 데이터베이스 서비스 방법을 설명하기 위한 순서도이다.
도 4는 본 발명의 일 실시예에 따른 업무정보 수집 과정을 나타내는 순서도이다.
도 5 내지 도 12는 본 발명의 일 실시예에 따른 각종 웹 인터페이스에 대한 화면 예시도이다.
1 is a block diagram illustrating a database service system as a service according to an embodiment of the present invention.
2 is a block diagram illustrating a server of a system according to an embodiment of the present invention.
3 is a flowchart illustrating a database service method as a service according to an embodiment of the present invention.
4 is a flowchart illustrating a process of collecting work information according to an embodiment of the present invention.
5 to 12 are screen views for various web interfaces according to an embodiment of the present invention.

이하, 첨부도면을 참조하여 본 발명의 바람직한 실시예들에 의한 멀티테넌트 기반의 서비스로서의 데이터베이스 서비스(이하, '서비스로서의 데이터베이스 서비스'라고 한다.) 방법을 상세하게 설명한다.
Hereinafter, a method of a database service (hereinafter, referred to as a 'database service as a service') of a multi-tenant based service according to preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 서비스로서의 데이터베이스 서비스 시스템을 설명하기 위한 구성도이다. 1 is a block diagram illustrating a database service system as a service according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 서비스로서의 데이터베이스 서비스 시스템은 웹 어플리케이션이 저장된 서버(100)와, 상기 웹 어플리케이션을 이용하기 위해 서버(100)에 접속하는 사용자 단말기(300), 및 서버(100)와 사용자 단말기(300)를 연결하는 유/무선 네트워크 통신망(400)을 포함한다. 여기서, 통신망(400)은 TCP/IP 프로토콜을 지원하는 인터넷망인 것이 바람직한데, 이에 한정되는 것은 아니다Referring to FIG. 1, a database service system as a service according to an embodiment of the present invention includes a server 100 in which a web application is stored, a user terminal 300 accessing the server 100 to use the web application, And a wired / wireless network communication network 400 connecting the server 100 and the user terminal 300. Here, the communication network 400 is preferably an internet network supporting the TCP / IP protocol, but is not limited thereto.

본 발명에서 웹 어플리케이션은 콘텐츠와 데이터베이스에 연동되는 웹 프로그램을 포괄한다. 상기 콘텐츠는 일반적인 단순 정보를 제공하는 웹문서를 의미하는 것이고, 상기 웹 프로그램은 데이터베이스를 참조하여 인터엑티브(interactive)한 정보 저장, 처리 및 삭제를 수행하는 프로그램을 의미한다. In the present invention, a web application includes a web program linked to a content and a database. The content refers to a web document providing general simple information, and the web program refers to a program for interactively storing, processing, and deleting information by referring to a database.

상기 콘텐츠는 일반적인 html 확장자를 가지는 파일로 작성된다. 그리고 웹 프로그램은 보통 asp, php, jsp, aspx, xml 등의 확장자를 가지는 파일로 작성될 수 있다. The content is created as a file having a general html extension. And a web program can usually be written as a file with an extension of asp, php, jsp, aspx, xml, etc.

상기 웹 어플리케이션은 웹 프로그램이 포함되어 있는 웹사이트를 의미할 수 있다. 이러한 웹 어플리케이션은 CRM, ERP 등에 사용될 수 있다.
The web application may mean a website that includes a web program. These web applications can be used for CRM, ERP, and so on.

이하, 도면을 참조하여 각 구성요소별로 보다 구체적으로 설명한다. Hereinafter, each component will be described in more detail with reference to the drawings.

도 1을 참조하면, 본 발명의 일실시예에 의한 서비스로서의 데이터베이스 서비스 시스템은 서버(100)를 포함한다.Referring to FIG. 1, a database service system as a service according to an embodiment of the present invention includes a server 100.

본 발명에 따른 서버(100)는 통신망(400)을 통해 접속된 복수의 사용자 단말기(300)로부터 업무에 대한 정보를 제공받아 각 사용자 단말기(300)의 업무에 적합한 웹 어플리케이션을 생성하고, 이를 해당 사용자 단말기(300)로 제공하는 것이다.The server 100 according to the present invention receives information about a task from a plurality of user terminals 300 connected through the communication network 400 to generate a web application suitable for the task of each user terminal 300, and this It is provided to the user terminal 300.

이러한 서버(100)는 사용자 단말기(300)가 온라인상에서 업무 목적에 적합한 웹 어플리케이션을 제작할 수 있는 하드웨어적 및 소프트웨어적 환경을 제공한다. 이를 위해, 상기 서버(100)는 프로그램부(110)와, 데이터베이스(130)와, 웹 어플리케이션의 온라인 제작을 위해 필요한 각종 웹 인터페이스가 저장되어 있는 웹 인터페이스 저장소(150)와, 제작된 웹 어플리케이션이 사용자별로 저장되어 관리되는 어플리케이션 저장소(140), 및 프로그램부(110)와 데이터베이스(130)와 웹 인터페이스 저장소(150) 및 어플리케이션 저장소(140)에 연결되어 각 장치의 동작을 제어하는 제어부(160)를 포함한다.The server 100 provides a hardware and software environment in which the user terminal 300 can produce a web application suitable for a business purpose online. To this end, the server 100 includes a program unit 110, a database 130, a web interface storage 150 that stores various web interfaces necessary for online production of a web application, and a produced web application. The control unit 160 connected to the application store 140, the program unit 110, the database 130, the web interface store 150, and the application store 140 stored and managed for each user, controls the operation of each device. It includes.

상기 데이터베이스(130)는 관계형 데이터베이스로 구축되고, 서버(100) 전용의 제 1 데이터베이스와 상기 서버(100)에 등록되어 있는 사용자별로 할당되어 제공되는 제 2 데이터베이스로 이루어지는 것이 바람직하지만, 이에 한정되지는 않는다. 여기서, 제 1 데이터베이스는 사용자정보 저장부, 사용자별 계정정보 저장부, 및 웹 어플리케이션이 전송되어 탑재될 각종 단말기 정보가 수록되어 관리되는 계정별 단말기정보 저장부를 포함한다. 그리고 제 2 데이터베이스에서는 사용자가 서버(100)에 접속하여 사용자의 추가 내용이 포함된 웹 어플리케이션을 제작하는 과정에서 각종 테이블이 신규로 생성되거나, 변경되거나 또는 삭제된다. 한편, 데이터베이스(130)에는 신속한 어플리케이션의 생성을 위해 업무 별로 필요한 기본 테이블이 저장된다. 이와 같이, 데이터베이스(130)에 기본 테이블이 저장되어 있기 때문에 업무 별로 기본 테이블을 생성해야 되는 과정이 생략된다.The database 130 is constructed as a relational database, but preferably includes a first database dedicated to the server 100 and a second database assigned and provided for each user registered in the server 100, but is not limited thereto. Do not. Here, the first database includes a user information storage unit, an account information storage unit for each user, and a terminal information storage unit for each account in which various terminal information on which a web application is transmitted and mounted is stored and managed. In the second database, various tables are newly created, changed, or deleted while the user accesses the server 100 to produce a web application including the user's additional contents. On the other hand, the database 130 stores a basic table required for each task for the rapid creation of the application. As such, since the base table is stored in the database 130, the process of generating the base table for each task is omitted.

상기 웹 인터페이스 저장소(150)는 웹 어플리케이션을 제작하는데 필요한 각종 파라미터를 사용자 단말기(300)로부터 수집할 수 있는 웹 인터페이스를 제공한다. 그리고 웹 인터페이스 저장소(150)는 다수의 폼 요소를 구비하고 있으며 제어부(160)에 의해 관리된다. 여기서, 웹 인터페이스는 사용자 단말기(300)의 요청에 따라 제어부(160)에 의해 웹 인터페이스 저장소(150)로부터 추출되어 사용자 단말기(300)로 제공된다. 상기 웹 인터페이스를 통하여 수집된 각종 데이터는 미리 지정되어 있는 프로그램부(110)의 모듈로 전달되어 처리된다. 여기서, 각종 데이터란 데이터베이스(130)의 테이블 생성과 관련된 파라미터 등을 의미한다. The web interface storage 150 provides a web interface capable of collecting various parameters from the user terminal 300 necessary for producing a web application. The web interface store 150 has a number of form elements and is managed by the controller 160. Here, the web interface is extracted from the web interface storage 150 by the controller 160 and provided to the user terminal 300 at the request of the user terminal 300. Various data collected through the web interface is transferred to a module of the program unit 110 that is designated in advance and processed. Here, the various data means parameters related to table generation of the database 130.

상기 프로그램부(110)는 예를 들어 회원등록 모듈(111), 회원인증 모듈(112), 테이블 생성 모듈(113), 프로그램 생성 모듈(114), 과금 모듈(115), 이전 모듈(116)을 포함할 수 있다. 이러한 각 모듈은 공지된 웹 프로그램 언어로 작성된다. 다시 말해, 본 발명에 따른 각 모듈들은 특정 소프트웨어 개발언어에 의해 한정되지 않는다. The program unit 110, for example, the member registration module 111, member authentication module 112, table generation module 113, program generation module 114, billing module 115, transfer module 116 It may include. Each of these modules is written in a known web programming language. In other words, each module according to the present invention is not limited by a specific software development language.

보다 구체적으로, 상기 회원등록 모듈(111)은 사용자 단말기(300)가 통신망(400)을 통해 서버(100)에 접속하여 회원가입 요청을 하는 경우 이를 처리하는 모듈이다. 이러한 회원등록 모듈(111)은 사용자의 회원가입 과정에서 웹 인터페이스 저장소(150)에 수록된 회원가입 페이지를 사용자 단말기(300)로 제공하여 준다. 이때, 사용자 단말기(300)는 회원가입을 통하여 회원ID 와 로그인 비밀번호를 획득한다. 이러한 회원등록 모듈(111)은 사용자 단말기(300)의 요청에 따라 서버(100)와 연동하여 데이터베이스(130)의 사용자정보 저장부에 신규 회원정보를 등록시키거나 기 등록된 회원정보를 변경시키며, 또는 기 등록된 회원정보를 삭제한다.More specifically, the member registration module 111 is a module that processes this when the user terminal 300 accesses the server 100 through the communication network 400 and requests membership. The member registration module 111 provides the user terminal 300 with a member registration page included in the web interface storage 150 during the user registration process. At this time, the user terminal 300 obtains a member ID and a login password through membership registration. The member registration module 111 registers new member information or changes previously registered member information in a user information storage unit of the database 130 in association with the server 100 at the request of the user terminal 300. Or delete the registered member information.

상기 회원인증 모듈(112)은 사용자 단말기(300)가 통신망(400)을 통하여 상기 서버(100)에 로그인할 경우 회원인증 동작을 수행한다. 이러한 로그인 과정에서 사용자 단말기(300)는 회원 ID와 로그인 비밀번호를 서버(100)로 입력한다. 이후, 상기 회원인증 모듈(112)은 데이터베이스(130)의 사용자정보 저장부를 참조하여 회원인증 동작을 수행한다. 여기서, 회원인증 동작은 공지된 기술을 따른다.The member authentication module 112 performs a member authentication operation when the user terminal 300 logs in to the server 100 through the communication network 400. In this login process, the user terminal 300 inputs a member ID and a login password to the server 100. Thereafter, the member authentication module 112 refers to the user information storage of the database 130 and performs a member authentication operation. Here, the member authentication operation follows a known technique.

상기 테이블 생성 모듈(113)은 사용자 단말기(300)로부터 데이터베이스(130) 내에 웹 어플리케이션과 연계될 테이블을 생성하기 위한 데이터를 수집하고, 상기 데이터를 분석하여 상기 데이터베이스(130)로부터 기본 테이블을 추출한다. 이때, 기본 테이블은 소정의 추출 기준에 따라 리스트의 형태로 출력될 수 있다. 여기서, 상기 테이블을 생성하기 위한 데이터는 사용자 단말기(300)의 업무 목적을 판단할 수 있는 데이터를 의미한다.The table generating module 113 collects data for generating a table to be associated with a web application in the database 130 from the user terminal 300, and analyzes the data to extract a base table from the database 130. . In this case, the base table may be output in the form of a list according to a predetermined extraction criterion. Here, the data for generating the table refers to data that can determine the business purpose of the user terminal 300.

이러한 데이터는 제어부(160)에 의해 웹 인터페이스 저장소(150)로부터 추출되어 사용자 단말기(300)로 제공되는 업무 테이블 생성정보 입력 페이지를 통하여 수집된다. 상기 업무 테이블 생성정보 입력페이지는 테이블 명칭, 테이블에 포함되는 각 필드의 명칭, 필드의 속성, 필드의 설명을 입력할 수 있는 폼 필드와, 각 필드에 입력된 정보를 통신망(400)을 통해 서버(100)로 접수할 수 있는 서브밋(submit) 버튼과 같은 제출 인터페이스를 포함한다. 또한, 업무 테이블 생성정보 입력페이지의 인터페이스는 드롭다운 콘트롤, 체크박스 콘트롤, 또는 텍스트 영역 콘트롤 등을 사용하여 구현될 수 있다.Such data is extracted from the web interface storage 150 by the controller 160 and collected through the work table generation information input page provided to the user terminal 300. The work table generation information input page includes a form field for inputting a table name, a name of each field included in the table, a property of a field, and a description of the field, and information inputted in each field through the communication network 400. It includes a submission interface, such as a submit button that can be received at 100. In addition, the interface of the work table generation information input page may be implemented using a dropdown control, a check box control, or a text area control.

아울러, 테이블 생성 모듈(113)은 데이터베이스(130)에 기본 테이블을 생성하는 것과는 별도로, 상기 업무 테이블 생성정보 입력 페이지에서 입력된 각 데이터를 데이터베이스(130)에 저장한다. 이때, 데이터베이스(130)에는 테이블의 명칭, 이 테이블에 포함된 필드의 명칭, 필드의 속성, 및 필드의 설명이 수록된다. 상기 테이블 생성 모듈(113)에 의해 기본 테이블이 추출될 때 상기 테이블 생성 모듈(113)은 테이블의 각 레코드를 식별하기 위한 필수항목(고유번호, 등록일, 등록자, 수정일, 수정자, 회원사번호)이 수록되는 필드를 기본 테이블에 자동으로 부가하는 것이 바람직하다. In addition, the table generation module 113 stores each data input from the work table generation information input page in the database 130, in addition to generating the base table in the database 130. At this time, the database 130 stores the name of the table, the name of the field included in the table, the attribute of the field, and the description of the field. When the base table is extracted by the table generation module 113, the table generation module 113 includes the necessary items (unique number, registration date, registrant, modification date, modifier, member company number) for identifying each record of the table. It's a good idea to automatically add fields to your base table.

상기 프로그램 생성 모듈(114)은 사용자 단말기(300)로부터 기본 테이블 이외에 추가 테이블 요청신호가 서버(100)로 수신되면 웹 인터페이스 저장소(150)로부터 사용자정의필드 페이지를 추출하고, 상기 사용자정의필드 페이지를 사용자 단말기(300)로 제공하는 모듈이다. 또한, 프로그램 생성 모듈(114)은 사용자정의필드 페이지를 통해 사용자 단말기(300)로부터 입력된 추가 테이블의 내용을 수집하고, 수집된 내용을 분석하여 기본 테이블에 추가 테이블이 부가된 업무 테이블을 생성한다. 이와 같이, 프로그램 생성 모듈(114)을 통해 업무 테이블의 생성이 완료되면, 제어부(160)는 이를 사용자 단말기(300)로 제공한다. 이때, 제어부(160)는 사용자 단말기(300)로 업무 테이블이 포함된 어플리케이션을 제공하기 전에 해당 사용자 단말기(300)에 대해 별도의 과금 과정을 수행할 수도 있다. The program generation module 114 extracts a user-defined field page from the web interface storage 150 when an additional table request signal is received from the user terminal 300 to the server 100 in addition to the basic table. Module provided to the user terminal 300. In addition, the program generation module 114 collects the contents of the additional table input from the user terminal 300 through the user-defined field page, analyzes the collected contents, and generates a work table in which the additional table is added to the basic table. . As such, when the generation of the work table is completed through the program generation module 114, the controller 160 provides this to the user terminal 300. In this case, the controller 160 may perform a separate charging process for the user terminal 300 before providing the application including the work table to the user terminal 300.

상기 과금 모듈(115)은 제어부(160)의 제어에 따라 업무 테이블이 포함된 어플리케이션을 사용자 단말기(300)로 전송하기 전에 과금을 수행한다. 보다 구체적으로, 과금 모듈(115)은 웹 어플리케이션을 사용자 단말기(300)에 이전시키기 전에 해당 사용자 단말기(300)에 결제를 요청한다. 이때, 결제액은 이전될 웹 어플리케이션을 구성하는 프로그램 파일의 용량이나 사용 설정된 데이터베이스(130)의 크기에 따라 차등적으로 결정될 수 있다.
The charging module 115 performs charging before transmitting the application including the work table to the user terminal 300 under the control of the controller 160. More specifically, the charging module 115 requests a payment from the corresponding user terminal 300 before transferring the web application to the user terminal 300. In this case, the payment amount may be differentially determined according to the capacity of the program file constituting the web application to be transferred or the size of the database 130 used.

도 2를 참조하면, 본 발명에 따른 호스팅 서비스 시스템은 사용자 단말기(300)를 포함한다.Referring to FIG. 2, the hosting service system according to the present invention includes a user terminal 300.

상기 사용자 단말기(300)는 통신망(400)을 통해 서버(100)에 접속하여 사용자의 업무 내용에 대한 정보를 입력하고, 서버(100)로부터 제공된 기본 테이블을 확인하여 추가 테이블에 대한 정보를 입력하는 것으로서, 일반적인 데스크톱 컴퓨터, 노트북 컴퓨터, 이동통신단말기 등이 사용될 수 있다. The user terminal 300 accesses the server 100 through the communication network 400, inputs information on the work content of the user, checks the basic table provided from the server 100, and inputs information on additional tables. As a general desktop computer, a notebook computer, a mobile communication terminal and the like can be used.

이러한 사용자 단말기(300)는 필요한 기능을 서버(100)로부터 다운로드하여 자신의 단말기에 인스톨하는 형태로 이용하거나, 서버(100) 상에서 작동하는 소프트웨어의 기능을 네트워크를 통해 온라인으로 이용할 수 있다.The user terminal 300 may download a necessary function from the server 100 and install it in its own terminal, or use a function of software operating on the server 100 online through a network.

이에 따라, 사용자 단말기(300)는 서버(100)의 관리자에 월 일정액을 지불하거나 사용한 시간에 비례하여 임대의 형식으로 웹 어플리케이션을 사용할 수 있다. 따라서, 사용자 단말기(300)는 고가의 프로그램을 구매하여 설치할 필요가 없다.Accordingly, the user terminal 300 may use the web application in the form of lease in proportion to the time used to pay a certain monthly amount to the manager of the server 100. Therefore, the user terminal 300 does not need to purchase and install an expensive program.

한편, 사용자 단말기(300)는 서버(100) 상에서 작동하는 소프트웨어의 기능을 온라인으로 이용할 수 있기 때문에 자체적으로 웹 어플리케이션의 구동을 위한 소프트웨어 및 하드웨어적 환경이 마련되어 있지 않아도 무방하다. 다만, 사용자 단말기(300)는 통신망(400)을 통하여 서버(100)에 접속하여 온라인상에서 웹 어플리케이션을 이용해야 하기 때문에, 통신 인터페이스(랜카드나 통신모뎀 등)와 상기 서버(100)가 사용자에 최적화된 웹 어플리케이션의 제작을 위해 제공하는 각종 사용자 인터페이스를 해석하여 그래픽 인터페이스로 출력하기 위한 웹 브라우저가 탑재된다. 여기서, 웹 브라우저는 마이크로소프트사의 인터넷 익스플로어일 수 있으나, 이에 한정되는 것은 아니다.
On the other hand, since the user terminal 300 can use the functions of the software operating on the server 100 online, the user terminal 300 does not have to provide a software and hardware environment for driving the web application. However, since the user terminal 300 needs to access the server 100 through the communication network 400 and use a web application online, the communication interface (LAN card, communication modem, etc.) and the server 100 are optimized for the user. A web browser is provided for analyzing and outputting various user interfaces provided for the production of the web application. Here, the web browser may be Microsoft Internet Explorer, but is not limited thereto.

도 2를 참조하면, 본 발명에 따른 호스팅 서비스 시스템은 에이전트 서버(200)를 더 포함할 수 있다.Referring to FIG. 2, the hosting service system according to the present invention may further include an agent server 200.

상기 에이전트 서버(200)는 통신망(400)을 통해 서버(100)와 사용자 단말기(300)에 접속하는 것으로서, 서버(100)에 접속하여 특정 업무 목적에 적합한 어플리케이션을 생성하여 이를 사용자 단말기(300)에 제공하는 역할을 수행하며, 데스크톱 컴퓨터, 노트북 컴퓨터 등을 사용할 수 있다.The agent server 200 is connected to the server 100 and the user terminal 300 through the communication network 400, and accesses the server 100 to generate an application suitable for a specific business purpose, the user terminal 300 It can be used to provide desktop and notebook computers.

이러한 에이전트 서버(200)는 사용자 단말기(300) 대신 특정 업무에 적합한 어플리케이션을 생성하며, 특정 업무를 수행하는 사용자 단말기(300)의 요청에 따라 상기 어플리케이션을 해당 사용자 단말기에 제공하는 역할을 수행한다.
The agent server 200 generates an application suitable for a specific task in place of the user terminal 300 and serves to provide the application to the corresponding user terminal according to a request of the user terminal 300 performing a specific task.

한편, 본 발명은 전술한 서비스로서의 데이터베이스 서비스 시스템을 이용한 서비스로서의 데이터베이스 서비스 방법(이하, '서비스로서의 데이터베이스 서비스 방법'이라 한다.)을 제공한다.On the other hand, the present invention provides a database service method (hereinafter referred to as a 'database service method as a service') as a service using the above-described database service system as a service.

도 3은 본 발명의 전체 흐름을 순차적으로 도시한 순서도이다.3 is a flow chart sequentially showing the overall flow of the present invention.

도 3을 참조하면, 본 발명의 일 실시예에 따른 서비스로서의 데이터베이스 서비스 방법은 서버(100)가 통신망(400)을 통해 사용자 단말기(300)로부터 업무정보를 수집하는 제 1 단계(S400)와, 서버(100)가 수집된 업무정보를 분석하고 이를 바탕으로 기본 테이블을 추출하여 상기 사용자 단말기(300)로 제공하는 제 2 단계(S500)와, 상기 서버(100)가 기본 테이블을 확인한 사용자 단말기(300)로 사용자정의필드 페이지를 제공하는 제 3 단계(S600)와, 상기 사용자 단말기(300)가 사용자정의필드 페이지를 통해 추가할 테이블의 정보를 입력하여 서버(100)로 전송하는 제 4 단계(S700), 및 서버(100)가 사용자 단말기(300)로부터 전송된 정보를 확인하고 이를 바탕으로 업무 테이블을 자동으로 생성하는 제 5 단계(S800)를 포함한다. Referring to FIG. 3, a database service method as a service according to an embodiment of the present invention includes a first step (S400) in which the server 100 collects work information from the user terminal 300 through a communication network 400; The second step (S500) of analyzing the collected work information by the server 100 and extracting the basic table based on this and providing it to the user terminal 300 (S500), and the user terminal confirmed the basic table by the server 100 ( A third step (S600) of providing a user-defined field page (S300), and a fourth step of inputting information of a table to be added by the user terminal 300 through the user-defined field page to the server 100 ( S700, and a fifth step (S800) in which the server 100 checks the information transmitted from the user terminal 300 and automatically generates a work table based on the information.

이하, 도면을 참조하여 각 단계별로 보다 구체적으로 설명한다. Hereinafter, each step will be described in more detail with reference to the accompanying drawings.

도 3에 도시된 바와 같이, 본 발명의 일 실시예에 따른 서비스로서의 데이터베이스 서비스 방법은 먼저 사용자 단말기(300)가 통신망(40)을 통해 서버(100)에 웹 어플리케이션 서비스의 이용을 신청하는 단계(S100)와, 서버(100)를 통해 사용자 단말기(300)의 서비스의 이용신청을 승인하는 단계(S200)를 포함한다.As shown in FIG. 3, the database service method as a service according to an exemplary embodiment of the present invention includes the steps of first requesting the user terminal 300 to use the web application service from the server 100 through the communication network 40 ( S100 and a step (S200) of approving an application for using the service of the user terminal 300 through the server 100.

이와 같이, 멀티테넌트 환경 하에서 특정 사용자 단말기(300)가 통신망(400)을 통해 서버(100)에 접속하여 웹 어플리케이션 서비스의 이용을 신청하면, 서버(100)는 웹 어플리케이션 서비스의 이용 신청을 선택적으로 승인한다. 이때, 서비스의 이용 신청 및 상기 신청에 대한 승인 절차는 일반적인 회원가입 절차로 진행될 수 있다. 다시 말해, 회원가입을 신청한 사용자 단말기(300)는 서버(100)에 접속할 수 있는 ID와 로그인 비밀번호를 획득하게 된다. As such, when a specific user terminal 300 accesses the server 100 through the communication network 400 to apply to use the web application service in the multi-tenant environment, the server 100 selectively requests to use the web application service. I approve. At this time, the application for using the service and the approval procedure for the application may proceed as a general membership registration process. In other words, the user terminal 300 applying for membership acquires an ID and a login password for accessing the server 100.

보다 구체적으로, 사용자 단말기(300)가 서버(100)에 접속하여 웹 어플리케이션 서비스의 이용을 신청하면, 상기 서버(100)의 제어부(160)가 회원등록 모듈(111)을 통해 사용자 단말기(300)로 도 5에 도시된 회원가입 페이지를 제공한다. 이어서, 상기 회원가입 페이지를 제공받은 사용자 단말기(300)가 회원가입 페이지에 각 정보를 입력하여 서버(100)로 제공하면, 제어부(160)의 제어에 따라 회원등록 모듈(111)은 데이터베이스(130) 내의 사용자정보 저장부에 회원가입 정보를 수록한 다음 사용자 단말기(300)의 신청을 승인한다.
More specifically, when the user terminal 300 is connected to the server 100 to apply for the use of the web application service, the control unit 160 of the server 100 through the member registration module 111 the user terminal 300 Provides a registration page shown in FIG. Subsequently, when the user terminal 300 provided with the member registration page inputs each piece of information to the member registration page and provides the information to the server 100, the member registration module 111 controls the database 130 under the control of the controller 160. The member information is registered in the user information storage unit) and then the application of the user terminal 300 is approved.

도 3을 참조하면, 본 발명의 일 실시예에 따른 서비스로서의 데이터베이스 서비스 방법은 사용자 단말기(300)에 대해 서버(100)가 저장공간의 용량을 할당하는 단계(S300)를 포함한다.Referring to FIG. 3, the database service method as a service according to an exemplary embodiment of the present invention includes a step (S300) of allocating a storage space by the server 100 to the user terminal 300.

보다 구체적으로, 사용자 단말기(300)의 이용신청이 승인되면 서버(100)는 사용자 단말기(300)가 생성할 어플리케이션이 저장될 저장공간을 할당하여 준다. 여기서, 저장공간은 서버(100)의 저장매체에 존재하는 것으로, 데이터베이스(130)에 존재하거나 별도의 대용량 드라이브 내에 존재할 수 있지만, 데이터베이스(130)에 존재하는 것이 바람직하다. 그리고 상기 저장공간이 할당되고 나면 상기 서버(100)는 저장공간에 저장된 회원정보별 디렉토리 명칭을 수록할 수 있다. More specifically, when the application for use of the user terminal 300 is approved, the server 100 allocates a storage space for storing an application to be generated by the user terminal 300. Here, the storage space is present in the storage medium of the server 100 and may exist in the database 130 or in a separate large drive, but it is preferably present in the database 130. After the storage space is allocated, the server 100 may store a directory name for each member information stored in the storage space.

도 6에 도시된 바와 같이, 사용자 단말기(300)에 대한 저장공간 용량이 할당되고 나면 사용자 단말기(300)는 서버(100)에 접속하여 웹 어플리케이션을 제작할 수 있게 된다.
As shown in FIG. 6, after the storage space capacity of the user terminal 300 is allocated, the user terminal 300 may access the server 100 to produce a web application.

도 3을 참조하면, 본 발명의 일 실시예에 따른 서비스로서의 데이터베이스 서비스 방법은 제 1 단계(S400)를 포함한다.Referring to FIG. 3, a database service method as a service according to an embodiment of the present invention includes a first step S400.

상기 제 1 단계(S400)는 사용자 단말기(300)로부터 업무정보를 수집하기 위한 단계로서, 도 4에 도시된 바와 같이 신규 프로젝트 신청단계(S410)와 업무정보 입력 페이지의 제공단계(S420)와 업무정보 입력단계(S430) 및 상기 페이지로부터 업무정보를 수집하는 단계(S440)를 포함한다.The first step (S400) is a step for collecting work information from the user terminal 300, as shown in Figure 4, the new project application step (S410) and the step of providing a work information input page (S420) and work Information input step (S430) and collecting the work information from the page (S440).

보다 구체적으로, 사용자 단말기(300)가 생성을 추진하고자 하는 웹 어플리케이션의 내용을 신규 프로젝트로 서버(100)에 접수(S410)하면, 제어부(160)의 제어에 따라 프로그램부(110)의 테이블 생성 모듈이 업무정보 입력 페이지를 웹 인터페이스 저장소(150)로부터 추출하여 사용자 단말기(300)에 제공한다(S420). 이때, 업무정보 입력 페이지는 도 7과 같이 형성될 수 있으며, 신청일, 제목, 테이블의 명칭, 신청자 명칭, 테이블 설명 등을 포함한다. More specifically, when the user terminal 300 receives the contents of the web application to be promoted to the server 100 as a new project (S410), the table of the program unit 110 is generated under the control of the controller 160. The module extracts the work information input page from the web interface storage 150 and provides it to the user terminal 300 (S420). In this case, the work information input page may be formed as shown in FIG. 7 and includes an application date, a title, a table name, an applicant name, a table description, and the like.

이어서, 사용자 단말기(300)는 업무 목적에 적합한 웹 어플리케이션을 생성하기 위하여 상기 업무정보 입력 페이지를 통해 업무정보를 입력한 후 통신망(400)을 통하여 서버(100)로 제공한다(S430). 이때, 업무정보 입력 페이지의 테이블 설명에는 생성하고자 하는 업무 테이블의 논리정보(예컨데, 고객명, 주소, 전화번호 등)가 입력될 수 있다. 그리고 사용자 단말기(300)는 복수의 웹 어플리케이션에 대한 생성을 서버(100)에 접수할 수도 있다.Subsequently, the user terminal 300 inputs the work information through the work information input page to generate a web application suitable for a work purpose, and provides the work information to the server 100 through the communication network 400 (S430). In this case, logical information (eg, customer name, address, phone number, etc.) of a work table to be generated may be input to the table description of the work information input page. In addition, the user terminal 300 may receive the generation of a plurality of web applications to the server 100.

업무정보가 입력된 업무정보 입력 페이지가 서버(100)에 접수되면, 제어부(160)는 웹 어플리케이션의 업무 분야를 인식하기 위해 테이블 생성 모듈(113)을 통해 업무정보 입력 페이지로부터 업무정보를 수집한다. 이때, 테이블 생성 모듈(113)은 수집된 업무정보를 데이터베이스(130)에 수록할 수 있다.
When the work information input page in which work information is input is received by the server 100, the controller 160 collects work information from the work information input page through the table generation module 113 to recognize a work field of the web application. . In this case, the table generation module 113 may include the collected work information in the database 130.

도 3을 참조하면, 본 발명의 일 실시예에 따른 서비스로서의 데이터베이스 서비스 방법은 제 2 단계(S500)를 포함한다.Referring to FIG. 3, a database service method as a service according to an embodiment of the present invention includes a second step S500.

상기 제 2 단계(S500)는 서버(100)가 수집된 업무정보를 분석하고, 분석된 정보를 바탕으로 데이터베이스(130)로부터 기본 테이블을 추출하여 기본 테이블 승인 페이지를 생성하며, 상기 기본 테이블 승인 페이지를 사용자 단말기(300)에 제공하는 단계이다. 도 8에 도시된 바와 같이, 이러한 기본 테이블 승인 페이지에는 서버(100)의 관리자가 입력하여 둔 각 업무분야에 필수적으로 사용되는 테이블 리스트가 포함된다. 다시 말해, 사용자 단말기(300)로부터 입력된 업무내용에 따라 데이터베이스(130)로부터 서로 다른 기본 테이블이 추출될 수 있다. The second step (S500) is to analyze the business information collected by the server 100, and to extract the base table from the database 130 based on the analyzed information to generate a base table approval page, the base table approval page Is provided to the user terminal 300. As shown in FIG. 8, the basic table approval page includes a list of tables essential for each business field entered by an administrator of the server 100. In other words, different base tables may be extracted from the database 130 according to the work content input from the user terminal 300.

이어서, 사용자 단말기(300)는 서버(100)로부터 제공된 기본 테이블 승인 페이지를 확인하여 업무 목적에 따라 필요한 테이블을 개별적으로 승인처리하거나 반려처리한다. Subsequently, the user terminal 300 checks the basic table approval page provided from the server 100 to individually approve or return the necessary tables according to the business purpose.

또한, 개별 테이블의 제목을 클릭하여 기본 테이블의 수정을 서버(100)로 요청할 수도 있다. 이와 같이, 사용자 단말기(300)가 기본 테이블의 수정 작업을 요청하면 서버(100)는 테이블 생성 모듈(113)을 통해 웹 인터페이스 저장소(150)로부터 테이블 수정정보 입력 페이지를 추출하여 사용자 단말기(300)로 제공한다. 이때, 테이블 수정정보 입력 페이지는 도 9와 같이 형성될 수 있다.In addition, the server 100 may request modification of the base table by clicking the title of the individual table. As such, when the user terminal 300 requests a modification operation of the base table, the server 100 extracts a table modification information input page from the web interface storage 150 through the table generation module 113, and then the user terminal 300. To provide. At this time, the table correction information input page may be formed as shown in FIG.

이후, 상기 테이블 생성 모듈(113)은 테이블 수정을 위해 필요한 정보를 사용자 단말기(300)로부터 입력받는다. 이때, 테이블 수정을 위해 필요한 정보에는 테이블 명칭, 테이블에 포함될 각 필드의 명칭, 속성, 및 간략한 설명 등이 있다.Thereafter, the table generation module 113 receives information necessary for table modification from the user terminal 300. In this case, information necessary for modifying the table includes a table name, a name of each field to be included in the table, an attribute, and a brief description.

필요에 따라, 사용자 단말기(300)는 도 10 내지 도 12에 도시된 바와 같이 기본 테이블에 포함된 다수의 테이블 중 특정 테이블을 검색하고, 테이블명을 클릭하여 해당 테이블에 대한 메타데이터의 수정을 서버(100)로 요청할 수도 있다.
If necessary, the user terminal 300 searches for a specific table among a plurality of tables included in the base table as shown in FIGS. 10 to 12, and clicks the table name to modify the metadata for the table. You can also ask for (100).

도 3을 참조하면, 본 발명의 일 실시예에 따른 서비스로서의 데이터베이스 서비스 방법은 제 3 단계(S600)를 포함한다.  Referring to FIG. 3, a database service method as a service according to an embodiment of the present invention includes a third step S600.

상기 제 3 단계(S600)는 기본 테이블을 확인한 사용자 단말기(300)로부터 추가 테이블의 요청신호가 입력되면 서버(100)는 프로그램 생성 모듈(114)을 통해 웹 인터페이스 저장소(150)로부터 사용자정의필드 페이지를 추출하여 상기 사용자 단말기(300)로 제공하는 단계이다.In the third step (S600), if a request signal for an additional table is input from the user terminal 300 that checks the basic table, the server 100 sends a user-defined field page from the web interface storage 150 through the program generation module 114. Extracting and providing the same to the user terminal 300.

보다 구체적으로, 사용자 단말기(300)가 기본 테이블을 확인하여 필요한 테이블들을 승인한 다음, 상기 기본 테이블에 필요로 하는 테이블이 포함되어 있지 않으면 서버(100)에 추가 테이블의 생성신호를 전송한다. More specifically, the user terminal 300 confirms the basic table and approves the necessary tables. If the necessary table is not included in the basic table, the user terminal 300 transmits a generation signal of the additional table to the server 100.

이어서, 상기 생성신호가 수신되면 서버(100)의 제어부(160)는 프로그램 생성 모듈(114)을 통해 웹 인터페이스 저장소(150)로부터 사용자정의필드 페이지를 추출한 다음 상기 사용자정의필드 페이지를 해당 사용자 단말기(300)로 전송한다.
Subsequently, when the generation signal is received, the controller 160 of the server 100 extracts the user-defined field page from the web interface storage 150 through the program generation module 114 and then converts the user-defined field page into the corresponding user terminal ( 300).

도 3을 참조하면, 본 발명의 일 실시예에 따른 서비스로서의 데이터베이스 서비스 방법은 제 4 단계(S700)를 포함한다.Referring to FIG. 3, a database service method as a service according to an embodiment of the present invention includes a fourth step S700.

상기 제 4 단계(S700)는 사용자 단말기(300)가 사용자정의필드 페이지를 통해 추가할 테이블의 정보를 입력하여 상기 서버(100)로 전송하는 단계이다.The fourth step S700 is a step in which the user terminal 300 inputs information of a table to be added through the user defined field page and transmits the information to the server 100.

보다 구체적으로, 서버(100)로부터 송신된 사용자정의필드 페이지가 사용자 단말기(300)로 수신되면, 상기 사용자 단말기(300)는 업무에 필요한 테이블을 추가하기 위해 상기 테이블의 내용을 사용자정의필드 페이지에 입력하고, 입력이 완료된 사용자정의필드 페이지를 서버(100)로 전송한다.
More specifically, when a user-defined field page transmitted from the server 100 is received by the user terminal 300, the user terminal 300 adds the contents of the table to the user-defined field page in order to add a table necessary for the task. The user inputs the completed custom field page to the server 100.

도 3을 참조하면, 본 발명의 일 실시예에 따른 서비스로서의 데이터베이스 서비스 방법은 제 5 단계(S800)를 포함한다.Referring to FIG. 3, a database service method as a service according to an embodiment of the present invention includes a fifth step S800.

상기 제 5 단계(S800)는 서버(100)가 사용자 단말기(300)로부터 전송된 정보에 따라 상기 기본 테이블에 추가 테이블이 부가된 업무 테이블을 자동으로 생성하는 단계이다.The fifth step S800 is a step in which the server 100 automatically generates a work table in which an additional table is added to the basic table according to the information transmitted from the user terminal 300.

보다 구체적으로, 사용자 단말기(300)를 통해 추가 테이블의 내용이 입력된 사용자정의필드 페이지가 서버(100)에 수신되면, 제어부(160)는 프로그램 생성 모듈(114)을 통해 기본 테이블에 추가 테이블이 부가된 업무 테이블을 가지는 웹 어플리케이션을 생성하고, 이를 어플리케이션 저장소(140)에 저장한다. More specifically, when a user-defined field page in which the content of the additional table is input through the user terminal 300 is received by the server 100, the controller 160 controls the additional table to be added to the base table through the program generation module 114. A web application having an added work table is generated and stored in the application storage 140.

이어서, 서버(100)는 생성이 완료된 웹 어플리케이션의 프로그램 용량을 계산하고, 서버(100) 관리자의 과금 정책에 기초하여 비용을 산정하며, 사용자 단말기(300)에 결제를 요청한다. 이러한 과금 정책은 서비스 제공자가 사용자의 업무에 최적화된 웹 어플리케이션을 제공할 수 있는 환경을 사용자 단말기(300)에 제공하여 주는 대가에 해당하며, 월 일정액을 받거나 사용한 시간 또는 사용 용량에 따라 비용을 사용자 단말기(300)에 청구할 수 있다. Subsequently, the server 100 calculates a program capacity of the generated web application, calculates a cost based on a charging policy of the server 100 administrator, and requests a payment from the user terminal 300. This billing policy corresponds to the price of providing the user terminal 300 with an environment in which a service provider can provide a web application optimized for a user's work, and receives a fee according to the amount of time received or the amount of use or monthly usage. The terminal 300 can be charged.

이어서, 결제 요청이 있으면, 상기 사용자 단말기(300)는 공지된 결제 방법, 예컨대 신용카드결제 또는 무통장 입금 결제 등을 이용하여 요청된 결제액을 지급한다. 한편, 상기 과금 정책은 이전대상이 되는 프로그램의 수에 따라서 증가되는 방식을 채택할 수도 있으며 기타 여러 가지 방법의 적용가능하다.Subsequently, if there is a payment request, the user terminal 300 pays the requested payment amount using a known payment method such as credit card payment or bank transfer payment. On the other hand, the charging policy may adopt a method of increasing according to the number of programs to be transferred, and various other methods are applicable.

이어서, 결제액의 지급이 확인되면, 프로그램부(110)의 이전 모듈(116)은 사용자 단말기(300)에 웹 어플리케이션을 인스톨하여 사용할 수 있도록 웹 어플리케이션 설치정보를 사용자 단말기(300)에 전송하거나, 사용자 단말기(300)의 요청에 따라 서버(100)의 하드웨어를 통해 웹 어플리케이션을 사용할 수 있도록 데이터베이스(130)에 웹 어플리케이션을 저장한다. Subsequently, when the payment of the payment is confirmed, the previous module 116 of the program unit 110 transmits the web application installation information to the user terminal 300 so as to install and use the web application on the user terminal 300 or the user. At the request of the terminal 300, the web application is stored in the database 130 so that the web application can be used through the hardware of the server 100.

이와 같이 사용자 단말기(300)의 신청에 따라 생성된 웹 어플리케이션이 데이터베이스(130)에 저장되면, 사용자 단말기(300)는 자체적으로 웹 어플리케이션 동작 환경을 구축하지 않고서도 온라인 상에 접속하여 웹 어플리케이션을 사용할 수 있게 된다.
When the web application generated according to the application of the user terminal 300 is stored in the database 130 as described above, the user terminal 300 accesses the online application without using a web application operating environment by itself and uses the web application. It becomes possible.

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

100 : 서버 110 : 프로그램부
111 : 회원등록 모듈 112 : 회원인증 모듈
113 : 테이블 생성 모듈 114 : 프로그램 생성 모듈
115 : 과금 모듈 116 : 이전 모듈
130 : 데이터베이스 140 : 어플리케이션 저장소
150 : 웹 인터페이스 저장소 160 : 제어부
200 : 에이전트 서버 300 : 사용자 단말기
400 : 통신망
100: server 110: program unit
111: Membership Registration Module 112: Membership Authentication Module
113: table generation module 114: program generation module
115: charging module 116: previous module
130: database 140: application repository
150: web interface storage 160: control unit
200: agent server 300: user terminal
400: communication network

Claims (5)

인터넷 통신망을 통해 서버에 접속된 사용자 단말기로 상기 서버의 데이터베이스에 저장된 소프트웨어를 제공하는 서비스로서의 데이터베이스 서비스 방법에 있어서,
(ⅰ) 사용자 단말기가 생성을 추진하고자 하는 웹 어플리케이션의 정보를 신규 프로젝트로 서버에 접수하는 과정과, 서버가 업무정보 입력 페이지를 추출하여 사용자 단말기에 제공하는 과정과, 사용자 단말기가 업무정보가 입력된 업무정보 입력 페이지를 서버로 제공하는 과정, 및 서버가 업무정보 입력 페이지로부터 업무정보를 수집하는 과정을 포함하는 업무정보 수집단계;
(ⅱ) 상기 서버가 수집된 업무정보를 분석하는 과정과, 분석된 정보를 바탕으로 데이터베이스로부터 기본 테이블을 추출하여 기본 테이블 승인 페이지를 생성하는 과정과, 상기 기본 테이블 승인 페이지를 사용자 단말기에 제공하는 과정을 포함하는 승인 페이지 제공단계;
(ⅲ) 상기 사용자 단말기가 서버로부터 제공된 기본 테이블 승인 페이지를 확인하여 업무 목적에 따라 필요한 기본 테이블을 개별적으로 승인처리하는 기본 테이블 승인단계;
(ⅳ) 상기 기본 테이블을 확인한 사용자 단말기로부터 추가 테이블의 요청신호가 입력되면 서버가 사용자정의필드 페이지를 추출하여 상기 사용자 단말기로 제공하는 단계;
(ⅴ) 상기 사용자 단말기가 사용자정의필드 페이지를 통해 추가할 테이블의 정보를 입력하여 상기 서버로 전송하는 단계; 및
(ⅵ) 상기 서버가 사용자 단말기로부터 전송된 정보에 따라 상기 기본 테이블에 추가 테이블이 부가된 업무 테이블을 자동으로 생성하는 단계;를 포함하는 멀티테넌트 기반의 서비스로서의 데이터베이스 서비스 방법.
A database service method as a service for providing software stored in a database of a server to a user terminal connected to a server through an internet communication network,
(Iii) the process of receiving the information of the web application to be promoted by the user terminal as a new project to the server, the process of extracting and providing the business information input page to the user terminal, and inputting the business information to the user terminal. A work information collection step of providing a work information input page to a server, and a process of collecting work information from a work information input page by a server;
(Ii) the server analyzing the collected work information, extracting a base table from the database based on the analyzed information, generating a base table approval page, and providing the base table approval page to the user terminal. Providing an approval page including a process;
(Iii) a basic table approval step of confirming, by the user terminal, the basic table approval page provided from the server and individually approving the necessary basic tables according to the business purpose;
(Iii) extracting a user-defined field page and providing the user terminal to the user terminal when a request signal for an additional table is input from the user terminal which has checked the basic table;
(Iii) inputting, by the user terminal, information of a table to be added through a user-defined field page to the server; And
(Iii) automatically generating, by the server, a work table in which an additional table is added to the base table according to the information transmitted from the user terminal.
제 1 항에 있어서, 상기 (ⅰ) 단계 이전에
로그인한 사용자 단말기에 서버의 저장공간 용량을 할당하는 단계를 더 포함하는 것을 특징으로 하는 멀티테넌트 기반의 서비스로서의 데이터베이스 서비스 방법.
The method of claim 1, wherein prior to said step (iii)
And allocating a storage capacity of a server to the logged-in user terminal.
삭제delete 삭제delete 제 1 항에 있어서, 상기 승인 페이지를 제공하는 단계 이후에
상기 사용자 단말기가 기본 테이블의 수정 작업을 요청하면, 서버가 테이블 수정정보 입력 페이지를 추출하여 사용자 단말기로 제공하는 것을 특징으로 하는 멀티테넌트 기반의 서비스로서의 데이터베이스 서비스 방법.
The method of claim 1, wherein after providing the authorization page
When the user terminal requests to modify the base table, the server extracts a table modification information input page to provide to the user terminal, the database service method as a multi-tenant based service.
KR1020100115750A 2010-11-19 2010-11-19 Method for service of multi-tenant based database as a service KR101195943B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100115750A KR101195943B1 (en) 2010-11-19 2010-11-19 Method for service of multi-tenant based database as a service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100115750A KR101195943B1 (en) 2010-11-19 2010-11-19 Method for service of multi-tenant based database as a service

Publications (2)

Publication Number Publication Date
KR20120054396A KR20120054396A (en) 2012-05-30
KR101195943B1 true KR101195943B1 (en) 2012-10-29

Family

ID=46270266

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100115750A KR101195943B1 (en) 2010-11-19 2010-11-19 Method for service of multi-tenant based database as a service

Country Status (1)

Country Link
KR (1) KR101195943B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009282777A (en) 2008-05-22 2009-12-03 Hitachi Information Systems Ltd Application program providing system and application program
US7779039B2 (en) 2004-04-02 2010-08-17 Salesforce.Com, Inc. Custom entities and fields in a multi-tenant database system
JP2010262548A (en) 2009-05-11 2010-11-18 Hitachi Ltd Data provision method and server

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7779039B2 (en) 2004-04-02 2010-08-17 Salesforce.Com, Inc. Custom entities and fields in a multi-tenant database system
JP2009282777A (en) 2008-05-22 2009-12-03 Hitachi Information Systems Ltd Application program providing system and application program
JP2010262548A (en) 2009-05-11 2010-11-18 Hitachi Ltd Data provision method and server

Also Published As

Publication number Publication date
KR20120054396A (en) 2012-05-30

Similar Documents

Publication Publication Date Title
US20210224884A1 (en) System, method, and medium for propagating a plurality of listings to geographically targeted websites using a single data source
TWI285850B (en) Application distribution and billing system in a wireless network
Kwok et al. A software as a service with multi-tenancy support for an electronic contract management application
US10235676B2 (en) Systems and methods for accessing computational resources in an open environment
US8965957B2 (en) Service delivery framework
RU2597507C2 (en) Sluice abstraction level
EP3306473B1 (en) Cloud federation as a service
CN1662899A (en) Network service agent
JP2016091115A (en) Information processing system, information processing device, account registration method and program
WO2003036416A2 (en) Application distribution and billing system in a wireless network
CN1474986A (en) System and method for providing supervision of plurality of financial services terminals
US20040068565A1 (en) Provisioning web services
WO2003048997A1 (en) System and method of international patent application
KR102471136B1 (en) System and method of tax platform service for easy tax filing and tax return and computer program for the same
KR20030079939A (en) Web-based solution for managing information traditionally managed within private electronic environments
US8543569B2 (en) System and method for the centralized management of a document ordering and delivery program
CN102129642B (en) The method and system of transaction listings is arranged at network mechanism of exchange place
JP2002358290A (en) Providing method, program and system for information processing service
KR101195943B1 (en) Method for service of multi-tenant based database as a service
JP6773173B2 (en) Information processing system, information processing device, account registration method and program
KR101328981B1 (en) Apparatus of executing services provided in different operation environments in different terminals
KR101167888B1 (en) Method for forming report using multi-tenant based database as a service
WO2022135309A1 (en) Cloud translation calling method, apparatus and system
JP2012118778A (en) Content data management apparatus and program thereof
KR100456995B1 (en) Method and apparatus for registering content and module for lease and having interworking feature among bulletin boards

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
LAPS Lapse due to unpaid annual fee