KR102122451B1 - Method of operating platform supporting application development and server providing platform - Google Patents
Method of operating platform supporting application development and server providing platform Download PDFInfo
- Publication number
- KR102122451B1 KR102122451B1 KR1020180089142A KR20180089142A KR102122451B1 KR 102122451 B1 KR102122451 B1 KR 102122451B1 KR 1020180089142 A KR1020180089142 A KR 1020180089142A KR 20180089142 A KR20180089142 A KR 20180089142A KR 102122451 B1 KR102122451 B1 KR 102122451B1
- Authority
- KR
- South Korea
- Prior art keywords
- application
- information
- service
- user
- development
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Abstract
SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼의 동작 방법에 있어서, 제1 사용자의 단말기로부터 상기 제1 사용자가 제공하려는 제1 서비스의 제1 기본 정보를 획득하는 단계; 상기 제1 기본 정보에 기초하여, 상기 제1 서비스를 제공하는 제1 애플리케이션을 개발하는 데에 이용되는 노-코드 기반의 제1 인터페이스를 상기 제1 사용자의 단말기로 제공하는 단계; 상기 제1 인터페이스를 통해 획득된 상기 제1 서비스의 제1 개발 정보를 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 학습한 결과에 적용하여, 상기 제1 애플리케이션을 생성하는 단계; 및 상기 제1 애플리케이션의 검증을 수행하고, 상기 SaaS 기반의 플랫폼을 통해 상기 검증된 제1 애플리케이션을 배포하는 단계를 포함할 수 있다.A method of operating a platform that supports the development of a SaaS-based application, the method comprising: obtaining first basic information of a first service to be provided by the first user from a terminal of a first user; Providing a first interface based on the first basic information, which is used to develop a first application for providing the first service, to the terminal of the first user; Generating the first application by applying the first development information of the first service obtained through the first interface to a result obtained by learning information obtained by objectifying a service provided by each of a plurality of applications; And performing verification of the first application and distributing the verified first application through the SaaS-based platform.
Description
애플리케이션의 개발을 지원하는 플랫폼을 제공하는 서버 및 서버 내의 플랫폼의 동작 방법에 관한 것이다.The present invention relates to a server providing a platform supporting application development and a method of operating a platform within the server.
스마트 폰, 스마트 TV 등을 포함하는 스마트기기는 그 기능이 제한되지 않으며, 다양한 애플리케이션의 설치를 통해 기능의 변경 또는 확장이 가능하다.Smart devices, including smart phones, smart TVs, etc., are not limited in their functions, and can be changed or extended by installing various applications.
일반적으로, 애플리케이션은 개발자에 의해 개발 및 배포되는 과정을 거치게 되며, 이를 위해 개발자는 소프트웨어 개발 키트, 에디터, 에뮬레이터, 컴파일러를 각각 개발자 PC에 수동으로 설치하여, 애플리케이션을 개발하기 위한 환경을 구축할 필요가 있다. 즉, 애플리케이션을 개발하는 데에는 구축 환경 및 운영 인력의 도움을 필요로 하므로, 많은 비용과 시간이 요구된다.Generally, an application is developed and distributed by a developer, and for this, the developer needs to manually install a software development kit, editor, emulator, and compiler on each developer's PC to build an environment for developing the application. There is. In other words, developing an application requires the help of a deployment environment and operation personnel, and thus requires a lot of money and time.
또한, 개발자에게는 애플리케이션을 개발하는 데에 API(Application Programming Interface) 등과 같은 전문적인 능력이 요구되어 일반인이 애플리케이션을 개발하기 쉽지 않다.In addition, it is not easy for the general public to develop an application because a developer needs professional skills such as an application programming interface (API) to develop an application.
따라서, 개발 지식이 없는 일반인들도 애플리케이션의 개발에 접근이 용이하고, 애플리케이션의 개발이 완료되더라도 운영 및 유지 보수가 가능한 시스템이 필요하다.Therefore, even a general person without development knowledge needs an easy access to application development and a system capable of operation and maintenance even when application development is completed.
개발 지식이 없는 일반인들도 애플리케이션의 개발에 접근이 용이하고, 애플리케이션의 개발이 완료되더라도 운영 및 유지 보수가 가능한 플랫폼을 제공하고자 한다.Even the general public without development knowledge wants to provide a platform that is easy to access to application development and that can be operated and maintained even when application development is complete.
일측에 따르면, 서버에서 SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼의 동작 방법이 제공된다. 상기 플랫폼의 동작 방법은, 제1 사용자의 단말기로부터 상기 제1 사용자가 제공하려는 제1 서비스의 제1 기본 정보를 획득하는 단계; 상기 제1 기본 정보에 기초하여, 상기 제1 서비스를 제공하는 제1 애플리케이션을 개발하는 데에 이용되는 노-코드 기반의 제1 인터페이스를 상기 제1 사용자의 단말기로 제공하는 단계; 상기 제1 인터페이스를 통해 획득된 상기 제1 서비스의 제1 개발 정보를 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 학습한 결과에 적용하여, 상기 제1 애플리케이션을 생성하는 단계; 및 상기 제1 애플리케이션의 검증을 수행하고, 상기 SaaS 기반의 플랫폼을 통해 상기 검증된 제1 애플리케이션을 배포하는 단계를 포함할 수 있다.According to one side, a method of operating a platform supporting development of a SaaS-based application on a server is provided. The operating method of the platform may include obtaining first basic information of a first service to be provided by the first user from a terminal of the first user; Providing a first interface based on the first basic information, which is used to develop a first application for providing the first service, to the terminal of the first user; Generating the first application by applying the first development information of the first service obtained through the first interface to a result obtained by learning information obtained by objectifying a service provided by each of a plurality of applications; And performing verification of the first application and distributing the verified first application through the SaaS-based platform.
다른 일측에 따르면, SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼을 제공하는 서버가 제공된다. 서버는, 외부의 단말기들과 통신을 수행하는 통신 장치; 스토리지; 프로세서; 및 상기 프로세서에 의해 실행 가능한 명령어들을 저장하는 메모리를 포함하고, 상기 프로세서는, 상기 명령어들을 실행함으로써, 제1 사용자의 단말기로부터 상기 제1 사용자가 제공하려는 제1 서비스의 제1 기본 정보를 획득하고, 상기 제1 기본 정보에 기초하여, 상기 제1 서비스를 제공하는 제1 애플리케이션을 개발하는 데에 이용되는 노-코드 기반의 제1 인터페이스를 상기 제1 사용자의 단말기로 제공하고, 상기 제1 인터페이스를 통해 획득된 상기 제1 서비스의 제1 개발 정보를 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 학습한 결과에 적용하여, 상기 제1 애플리케이션을 생성하고, 상기 제1 애플리케이션의 검증을 수행하고, 상기 SaaS 기반의 플랫폼을 통해 상기 검증된 제1 애플리케이션을 배포할 수 있다.According to the other side, a server is provided that provides a platform that supports the development of SaaS-based applications. The server includes a communication device that communicates with external terminals; storage; Processor; And a memory for storing instructions executable by the processor, wherein the processor acquires first basic information of a first service to be provided by the first user from a terminal of a first user by executing the instructions, , Based on the first basic information, provides a no-code-based first interface used to develop a first application that provides the first service to the terminal of the first user, and the first interface The first development information of the first service obtained through is applied to a result obtained by learning the information obtained by objectifying a service provided by each of a plurality of applications, and the first application is generated, and verification of the first application is performed. Perform, and distribute the verified first application through the SaaS-based platform.
또 다른 일측에 따르면, SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼의 상기 동작 방법을 하드웨어와 결합하여 실행시키기 위해 매체에 저장된 컴퓨터 프로그램이 제공된다.According to another aspect, a computer program stored in a medium is provided to execute the above operating method of a platform supporting development of a SaaS-based application in combination with hardware.
서버에서 제공되는 플랫폼을 통해, 사용자는 사용자가 원하는 애플리케이션의 개발을 용이하게 할 수 있다.Through the platform provided by the server, the user can facilitate development of an application desired by the user.
서버에서 제공되는 플랫폼은, 사용자의 개발 정보를 반영하여 애플리케이션을 자동으로 생성, 등록, 배포 및 관리하는 시스템을 제공할 수 있다.The platform provided by the server can provide a system that automatically creates, registers, distributes, and manages applications by reflecting user development information.
본 개시는, 다음의 자세한 설명과 그에 수반되는 도면들의 결합으로 쉽게 이해될 수 있으며, 참조 번호(reference numerals)들은 구조적 구성요소(structural elements)를 의미한다.
도 1은 일실시예에 따라, SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼을 제공하는 서버와 플랫폼을 이용하는 사용자의 단말기 간의 동작을 설명하기 위한 개념도이다.
도 2는 일실시예에 따라, 서버에서 SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼의 동작 방법을 설명하기 위한 흐름도이다.
도 3은 일실시예에 따라, 사용자의 단말기로부터 사용자가 제공하려는 서비스의 기본 정보를 획득하는 과정을 설명하기 위한 도면이다.
도 4는 일실시예에 따라, 서버에서 애플리케이션을 생성하는 데에 사용자의 단말기로 제공되는 플랫폼의 실행 화면을 설명하기 위한 도면이다.
도 5는 일실시예에 따라, 서버에서 사용자의 단말기로 제공된 노-코드 기반의 인터페이스를 설명하기 위한 도면이다.
도 6은 일실시예에 따라, 서버에서 서비스의 개발 정보를 학습 모델에 적용하여 애플리케이션을 생성하는 과정을 설명하기 위한 도면이다.
도 7은 일실시예에 따라, 복수 개의 계층 구조를 갖는 인공 신경망을 개략적으로 도시한 도면이다.
도 8 및 도 9는 일실시예에 따라, 서버에서 서비스의 개발 정보를 학습 모델에 적용하여 서비스에 적합한 객체 정보를 추천하는 과정을 설명하기 위한 도면이다.
도 10은 서버의 구성을 도시한 블록도이다.The present disclosure can be easily understood by the following detailed description and combinations of the accompanying drawings, and reference numerals refer to structural elements.
1 is a conceptual diagram illustrating an operation between a server providing a platform supporting the development of a SaaS-based application and a terminal of a user using the platform, according to an embodiment.
2 is a flowchart illustrating a method of operating a platform supporting development of a SaaS-based application in a server according to an embodiment.
3 is a diagram for explaining a process of obtaining basic information of a service to be provided by a user from a user's terminal according to an embodiment.
4 is a diagram for explaining an execution screen of a platform provided to a user's terminal in creating an application on a server according to an embodiment.
5 is a diagram for describing a no-code based interface provided from a server to a user's terminal according to an embodiment.
6 is a diagram for explaining a process of generating an application by applying development information of a service to a learning model in a server according to an embodiment.
7 is a diagram schematically illustrating an artificial neural network having a plurality of hierarchical structures, according to an embodiment.
8 and 9 are diagrams for explaining a process of recommending object information suitable for a service by applying development information of a service to a learning model in a server according to an embodiment.
10 is a block diagram showing the configuration of a server.
이하에서는 도면을 참조하여 다양한 실시예들을 상세히 설명한다. 이하에서 설명되는 실시예들은 여러 가지 상이한 형태로 변형되어 실시될 수도 있다. 실시예들의 특징을 보다 명확히 설명하기 위하여 이하의 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 널리 알려져 있는 사항들에 관해서 자세한 설명은 생략한다.Hereinafter, various embodiments will be described in detail with reference to the drawings. The embodiments described below may be implemented in various different forms. In order to more clearly describe the features of the embodiments, detailed descriptions of the matters well known to those skilled in the art to which the following embodiments pertain will be omitted.
한편, 본 명세서에서 어떤 구성이 다른 구성과 "연결"되어 있다고 할 때, 이는 '직접적으로 연결'되어 있는 경우뿐 아니라, '그 중간에 다른 구성을 사이에 두고 연결'되어 있는 경우도 포함한다. 또한, 어떤 구성이 다른 구성을 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한, 그 외 다른 구성을 제외하는 것이 아니라 다른 구성들 더 포함할 수도 있다는 것을 의미한다.Meanwhile, in the present specification, when a component is "connected" with another component, this includes not only a case of'directly connecting', but also a case of'connecting with other components in between'. In addition, when it is said that a configuration "includes" another configuration, this means that unless otherwise stated, other configurations are not excluded, but may also include other configurations.
또한, 본 명세서에서 사용되는 '제 1' 또는 '제 2' 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용할 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다.In addition, terms including an ordinal number such as'first' or'second' used in the present specification can be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from other components.
본 명세서 전체에서, "서버"는 SaaS(Software as a Service) 기반의 애플리케이션의 개발을 지원하는 플랫폼을 제공할 수 있다. SaaS는 소프트웨어의 여러 기능 중에서 사용자가 필요로 하는 서비스만 이용 가능하도록 한 소프트웨어를 의미할 수 있다. 또한, SaaS는 애플리케이션 소프트웨어를 클라우드에서 제공하는 서비스로 ERP나 CRM 등 다양한 소프트웨어를 사용자가 직접 구축하거나 설치하지 않고 서비스 제공 사업자에 비용을 지불하고 필요한 만큼 소프트웨어를 사용하는 클라우드를 의미할 수 있다.Throughout this specification, the "server" may provide a platform that supports the development of SaaS (Software as a Service) based applications. SaaS may mean software that enables only a service required by a user among various functions of the software. In addition, SaaS is a service that provides application software in the cloud, and may mean a cloud that uses a software as much as necessary and pays service providers without building or installing various software such as ERP or CRM.
본 명세서 전체에서, "사용자의 단말기"는 휴대폰, 스마트 폰(smart phone), 노트북 컴퓨터(laptop computer), PC, 데스크 탑, 가전기기, 태블릿 PC, 전자북 단말기, 디지털방송용 단말기, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 네비게이션, MP3 플레이어, 디지털 카메라 등이 있을 수 있으나, 이에 한정되는 것은 아니다.In the present specification, "user's terminal" is a mobile phone, a smart phone, a laptop computer, a PC, a desk top, a home appliance, a tablet PC, an electronic book terminal, a digital broadcasting terminal, and a PDA (Personal Digital). Assistants), PMP (Portable Multimedia Player), navigation, MP3 player, digital camera, and the like, but are not limited thereto.
본 명세서 전체에서, "애플리케이션(application)"은 사용자의 단말기에서 실행 가능한 다양한 응용 소프트웨어를 포함하는 것으로, 그 기능은 한정되지 않는다. 또한, 애플리케이션은 소정의 업무를 수행하기 위해 고안된 일련의 컴퓨터 프로그램 집합을 의미할 수 있고, 응용프로그램을 의미할 수도 있다. 또한, 애플리케이션은 컴퓨팅 장치와 같은 시스템을 이용하여 소정의 업무를 수행하기 위한 프로그램을 의미할 수도 있다.Throughout this specification, "application" includes various application software executable on a user's terminal, and the function is not limited. Also, an application may mean a set of computer programs designed to perform a predetermined task, or an application program. Also, the application may mean a program for performing a predetermined task using a system such as a computing device.
본 명세서 전체에서, "사용자"는 애플리케이션을 개발하는 개발자, 개발된 애플리케이션을 등록 및 배포하는 관리자, 애플리케이션을 이용하는 자 및 이용하려는 자를 의미할 수 있다.Throughout this specification, “user” may mean a developer who develops an application, an administrator who registers and distributes the developed application, a user who uses the application, and a person who intends to use the application.
도 1은 일실시예에 따라, SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼을 제공하는 서버와 플랫폼을 이용하는 사용자의 단말기 간의 동작을 설명하기 위한 개념도이다.1 is a conceptual diagram illustrating an operation between a server providing a platform supporting the development of a SaaS-based application and a terminal of a user using the platform, according to an embodiment.
서버(10)는 SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼을 제공할 수 있다. 예를 들면, 플랫폼은 소정의 장치 또는 시스템 내에서 애플리케이션의 개발을 지원하는 환경을 의미할 수 있다.The
애플리케이션을 개발 또는 생성하려는 사용자는 서버(10)에 접속하여 애플리케이션의 개발을 지원하는 플랫폼을 이용할 수 있다. 서버(10)는 클라우드 환경에서 애플리케이션의 개발을 지원하는 플랫폼을 제공하기 때문에, 사용자는 애플리케이션의 개발을 지원하는 애플리케이션 등을 사용자의 단말기에 설치하지 않고, 서버(10)에 접속하여 애플리케이션의 개발을 지원하는 플랫폼을 이용할 수 있다.Users who want to develop or create applications can access the
도 1에 도시된 바와 같이, 복수의 사용자는 복수의 사용자 각각의 단말기(20-1, 20-2, 20-3)로 네트워크를 통해 서버(10)에 접속할 수 있다. 복수의 사용자 각각은 서버(10)에서 제공되는 플랫폼을 이용하여, 애플리케이션을 개발할 수 있다.As illustrated in FIG. 1, a plurality of users may access the
예를 들면, 쇼핑몰을 운영하고자 하는 제1 사용자는 제1 사용자의 단말기(20-1)를 통해 서버(10)에 접속하고, 서버(10)에서 제공되는 플랫폼을 이용하여, 제1 사용자가 원하는 스팩 정보에 따라 쇼핑 서비스를 제공하는 제1 애플리케이션을 개발할 수 있다.For example, a first user who wants to operate a shopping mall accesses the
서버(10)는 제1 사용자가 플랫폼을 이용함에 따라, 제1 사용자의 단말기(20-1)로 애플리케이션의 개발 단계에 따른 실행 화면을 제공할 수 있다. 예를 들면, 서버(10)는 쇼핑 서비스를 제공하는 제1 애플리케이션을 개발하는 데에 이용되는 노-코드 기반의 인터페이스를 제1 사용자의 단말기(20-1)로 제공할 수 있다.As the first user uses the platform, the
서버(10)는 제1 사용자의 단말기(20-1)로부터 제1 사용자가 제1 애플리케이션의 생성에 이용되는 개발 정보를 수신할 수 있다. 서버(10)는 개발 정보에 기초하여, 쇼핑 서비스를 제공하는 제1 애플리케이션을 생성할 수 있다. 이 경우, 서버(10)는 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 학습한 결과를 이용하여, 제1 애플리케이션을 생성할 수 있다.The
제1 애플리케이션이 생성되면, 서버(10)는 제1 애플리케이션의 등록 및 배포를 수행할 수 있다. 또한, 제1 애플리케이션이 업데이트 되면, 서버(10)는 업데이트된 제1 애플리케이션을 배포할 수 있다.When the first application is generated, the
도 2 내지 도 10에서는 애플리케이션의 개발을 지원하는 플랫폼을 제공하는 서버 및 서버 내의 플랫폼의 동작 방법을 보다 구체적으로 설명한다.2 to 10 will be described in more detail a server providing a platform for supporting the development of the application and a method of operating the platform in the server.
도 2는 일실시예에 따라, 서버에서 SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼의 동작 방법을 설명하기 위한 흐름도이다.2 is a flowchart illustrating a method of operating a platform supporting development of a SaaS-based application in a server according to an embodiment.
도 2의 단계 S210에서, 서버(10)는 제1 사용자의 단말기로부터 제1 사용자가 제공하려는 제1 서비스의 제1 기본 정보를 획득할 수 있다. 여기서, 서버(10)는 제1 사용자가 제1 사용자의 단말기에서 SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼을 이용할 수 있도록 플랫폼의 동작을 제어할 수 있다.In step S210 of FIG. 2, the
제1 서비스는, 서비스 제공 사업자가 소프트웨어와 데이터를 이용하여 네트워크를 기반으로 제공할 수 있는 소정의 행위를 의미할 수 있다. 예를 들면, 제1 서비스는, 쇼핑몰 사이트를 통해 상품의 판매를 제공하는 소정 행위일 수 있다. 제1 서비스는 상기의 예시에 제한되지 않는다.The first service may mean a predetermined action that a service provider can provide based on a network using software and data. For example, the first service may be a predetermined act of providing sales of a product through a shopping mall site. The first service is not limited to the above example.
예를 들면, 제1 기본 정보는, 제1 서비스의 명칭 정보, 제1 서비스의 카테고리 정보, 제1 서비스가 제공하는 서비스의 정보, 제1 서비스를 통해 제공되는 이미지 정보, 제1 서비스를 제공하는 접속 주소 중 적어도 하나를 포함할 수 있다.For example, the first basic information includes name information of the first service, category information of the first service, information of the service provided by the first service, image information provided through the first service, and providing the first service. It may include at least one of the access address.
단계 S220에서, 서버(10)는 제1 기본 정보에 기초하여, 제1 서비스를 제공하는 제1 애플리케이션을 개발하는 데에 이용되는 노-코드 기반의 제1 인터페이스를 제1 사용자의 단말기로 제공할 수 있다.In step S220, the
노-코드 기반의 제1 인터페이스는 제1 사용자가 제1 애플리케이션을 개발하는 데에 코딩 정보를 입력하지 않고, 제1 애플리케이션의 개발과 관련된 텍스트 정보를 입력하거나, 제시된 그래픽 정보에서 소정 내용을 선택할 수 있도록 제공되는 인터페이스를 의미할 수 있다. 또한, 노-코드 기반의 제1 인터페이스는 사용자가 필요에 따라 소정의 코딩 정보를 입력할 수 있도록 제공되는 인터페이스를 의미할 수 있다. 노-코드 기반의 인터페이스가 사용자의 단말기로 제공됨에 따라, 사용자는 개발 지식이 없더라도 애플리케이션을 개발할 수 있고, 개발 비용 및 개발 시간은 감소될 수 있다.The first interface based on the no-code allows the first user to input text information related to the development of the first application without inputting coding information to develop the first application, or to select predetermined content from the presented graphic information. It may mean an interface provided. Also, the first interface based on no-code may mean an interface provided to allow a user to input predetermined coding information as needed. As the no-code-based interface is provided to the user's terminal, the user can develop the application even without development knowledge, and the development cost and development time can be reduced.
예를 들면, 서버(10)는 제1 사용자의 단말기로부터 제1 서비스의 제1 개발 정보 중 소정 개발 정보가 수신되면, 소정 개발 정보에 대응되는 항목들을 설정하는 위즈윅(WYSIWYG: What You See Is What You Get) 기반의 인터페이스를 제1 사용자의 단말기로 제공할 수 있다. 여기서, 위즈윅 기반의 인터페이스는 HTML 5 기술에 기반하여 생성될 수 있다. 또한, 제1 개발 정보는, 제1 서비스를 제공하는 제1 애플리케이션의 실행 화면을 구성하는 데에 필요한 정보, 제1 서비스를 제공하는 로직 정보, 제1 애플리케이션이 안정적으로 구동되기 위해 필요한 정보 등을 포함할 수 있고, 상기 예시에 제한되지 않는다.For example, when the predetermined development information of the first development information of the first service is received from the terminal of the first user, the
예를 들면, 제1 서비스가 쇼핑 서비스라고 가정한다. 제1 개발 정보는, 쇼핑 애플리케이션의 실행 화면 내에서 제공되는 쇼핑 서비스들의 카테고리 정보, 카테고리 정보가 실행 화면에서 위치하는 위치 정보 등과 같이 쇼핑 애플리케이션을 개발하는 데에 이용되는 임의의 정보를 의미할 수 있다.For example, assume that the first service is a shopping service. The first development information may mean any information used to develop a shopping application, such as category information of shopping services provided in the execution screen of the shopping application, location information where the category information is located on the execution screen, and the like. .
단계 S230에서, 서버(10)는 제1 인터페이스를 통해 획득된 제1 서비스의 제1 개발 정보를 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 학습한 결과에 적용하여, 제1 애플리케이션을 생성할 수 있다.In step S230, the
구체적으로, 서버(10)는 제1 개발 정보를, 소정의 학습 모델에 적용하여 제1 애플리케이션을 생성하는 데에 이용되는 적어도 하나의 코드 블록을 획득할 수 있다. 서버(10)는 적어도 하나의 코드 블록을 이용하여, 제1 애플리케이션을 생성할 수 있다. 여기서, 소정의 학습 모델은 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 이용하여 학습된 모델일 수 있다.Specifically, the
서버(10)는 인공 신경망을 통해 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 서비스 정보에 대응되는 객체 정보의 상관 관계, 및 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 복수의 애플리케이션들 각각을 이용하는 복수의 사용자의 행위 패턴 정보의 상관 관계 중 적어도 하나에 기초하여, 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델을 준비할 수 있다.The
또한, 학습 모델은 애플리케이션의 개발을 위한 코드 블록을 획득하는 데에 이용되는 데이터 인식 모델일 수 있다. 데이터 인식 모델은, 인공 신경망(ANN: artificial Neural Network)을 기반으로 구축된 딥 러닝(deep learning)을 통해 획득된 모델일 수 있다. 예를 들면, 학습 모델은 DNN(Deep Neural Network), RNN(Recurrent Neural Network), BRDNN(Bidirectional Recurrent Deep Neural Network)과 같은 모델이 데이터 인식 모델로서 사용될 수 있으나, 이에 한정되지 않는다.Further, the learning model may be a data recognition model used to obtain a block of code for development of an application. The data recognition model may be a model acquired through deep learning built on an artificial neural network (ANN). For example, the learning model may be a model such as a deep neural network (DNN), a recurrent neural network (RNN), or a bidirectional recurrent deep neural network (BRDNN), but is not limited thereto.
또한, 서버(10)는 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델에 따라, 제1 개발 정보를 학습할 수 있다. 서버(10)는 학습 결과에 기초하여, 제1 애플리케이션에서 미리 설정된 조건을 만족하여 제1 서비스가 제공되도록 적어도 하나의 코드 블록을 획득할 수 있다.Also, the
이 경우, 서버(10)는 학습 결과에 기초하여, 미리 설정된 조건을 최적으로 만족하는 최적화된 적어도 하나의 코드 블록을 획득하여, 사용자에게 추천할 수 있다. 즉, 서버(10)는 획득된 적어도 하나의 코드 블록을 사용자의 단말기로 전송할 수 있다. 또한, 사용자의 단말기는 적어도 하나의 코드 블록의 이용을 승인하는 정보를 입력 받아, 서버(10)로 전송할 수 있다. In this case, the
예를 들면, 미리 설정된 조건은, 제1 애플리케이션에서 데이터를 처리하는 응답 속도, 제1 애플리케이션에서 발생될 수 있는 오류율 정보, 및 제1 애플리케이션이 동작하는 환경에서 안정성 정보 중 적어도 하나를 포함하는 내적 정보에 대한 기준 조건일 수 있다.For example, the preset condition includes internal information including at least one of a response speed of processing data in the first application, error rate information that may be generated in the first application, and stability information in an environment in which the first application operates. It may be a reference condition for.
다른 예를 들면, 미리 설정된 조건은, 제1 애플리케이션에서 제1 서비스를 제공하는 로직 정보, 및 제1 애플리케이션에서 제1 서비스를 제공하는 데에 출력되는 레이 아웃 정보 중 적어도 하나를 포함하는 외적 정보에 대한 기준 조건일 수 있다.For another example, the preset condition may include external information including at least one of logic information for providing the first service in the first application and layout information output for providing the first service in the first application. It may be a reference condition for.
서버(10)에서, 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델을 이용함으로써, 기본 코드 및 개발 언어 자체를 조작하지 않고, 마이크로 모듈화를 통해 획득된 코드 블록을 조합하여 애플리케이션을 생성할 수 있다.In the
또한, 서버(10)는 제1 개발 정보에 기초하여, 제1 애플리케이션에서 제공되는 제1 서비스를 객체화하는 작업 단위인 적어도 하나의 프로젝트를 생성할 수 있다. 여기서, 적어도 하나의 프로젝트는 제1 애플리케이션을 이용하는 사용자 별로 구분되어 생성될 수 있다. 서버(10)는 적어도 하나의 프로젝트에 대응되는 적어도 하나의 레이아웃을 설정하여, 제1 애플리케이션을 생성할 수 있다.In addition, the
예를 들면, 서버(10)는 Gradle 기술 기반으로, 제1 개발 정보가 반영된 애플리케이션을 자동으로 생성할 수 있다. Gradle 기술은 Groovy를 이용한 빌드 자동화 시스템 기술일 수 있다. 또한, Gradle 기술은 Groovy와 유사한 도메인 언어를 채용하고, 안드로이드 스튜디오의 공식 빌드 시스템 기술일 수 있다. 또한, Gradle 기술은 Java, C/C++, Python 등과 같은 여러 가지 언어를 지원할 수 있다.For example, the
또한, 서버(10)는 Native용 어플리케이션, Mobile Web용 애플리케이션, PC Web용 애플리케이션 각각에 대응되는 제1 애플리케이션을 생성할 수 있다.Further, the
단계 S240에서, 서버(10)는 제1 애플리케이션의 검증을 수행하고, SaaS 기반의 플랫폼을 통해 상기 검증된 제1 애플리케이션을 배포할 수 있다.In step S240, the
예를 들면, 서버(10)는 Jenkins, SubVersion 등의 오픈 소스를 활용하여 제1 애플리케이션을 자동으로 배포할 수 있다. 구체적으로, Jenkins는 소프트웨어 개발 시 지속적 통합 서비스를 제공하는 툴일 수 있다. 즉, Jenkins는 다수의 개발자들이 하나의 프로그램을 개발할 때 버전 충돌을 방지하기 위해 각자 작업한 내용을 공유 영역에 있는 저장소에 빈번히 업로드 함으로써 지속적 통합이 가능하도록 할 수 있다.For example, the
또한, 서버(10)는, 매크로, Open-API 기술 기반의 마켓, 자동배포 엔진 및 애플리케이션 이미지 자동 추출 알고리즘을 활용하여, 제1 애플리케이션을 자동으로 등록하고 배포할 수 있다.In addition, the
서버(10)는 제1 서비스의 제2 개발 정보에 기초하여, 제1 애플리케이션을 업데이트 할 수 있다. 서버(10)는 SaaS 기반의 플랫폼을 통해 업데이트 된 제1 애플리케이션을 배포할 수 있다. 서버(10)는 애플리케이션이 생성된 이후에도 애플리케이션의 등록, 배포, 관리하므로, 애플리케이션의 운영 및 유지 보수의 효율을 향상시킬 수 있다.The
또한, 서버(10)는 Java, Spring Framework 및 MVC 모델 방식을 활용한 플랫폼 제어 인터페이스를 이용하여, 애플리케이션을 등록 및 관리를 수행할 수 있다. 예를 들면, 서버(10)는 플랫폼 제어 인터페이스에 기초하여, 애플리케이션 내의 콘텐츠를 등록 및 관리를 수행할 수 있다.In addition, the
또한, 서버(10)는, 서비스 확장 및 호환성을 위한 BaaS 기반의 Back-End API 인터페이스를 제공할 수 있다.In addition, the
도 3은 일실시예에 따라, 사용자의 단말기로부터 사용자가 제공하려는 서비스의 기본 정보를 획득하는 과정을 설명하기 위한 도면이다.3 is a diagram for explaining a process of obtaining basic information of a service that a user intends to provide from a user's terminal according to an embodiment.
서버(10)는 SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼을 사용자의 단말기로 제공할 수 있다. 사용자는 소정의 서비스를 제공하는 애플리케이션을 생성하기 위해 서버(10)에서 제공되는 플랫폼을 이용할 수 있다. 사용자는 사용자의 단말기에서 플랫폼에 로그-인을 할 수 있다. 즉, 사용자는 로그-인을 수행함으로써, 사용자의 단말기에서 서버(10)가 제공하는 플랫폼에 접속할 수 있다. 그러면, 사용자의 단말기는 플랫폼의 실행 화면을 표시할 수 있다.The
서버(10)는 소정의 서비스를 제공하는 애플리케이션을 생성하는 동작의 선행 동작으로, 사용자의 단말기로부터 서비스의 기본 정보를 수신할 수 있다. 도 3을 참고하면, 서버(10)는 서비스의 기본 정보를 입력하는 인터페이스를 사용자의 단말기로 제공할 수 있다. 구체적으로, 사용자의 단말기는 서비스의 명칭 정보(301), 서비스가 제공하는 정보(302), 서비스의 카테고리 정보(303), 서비스에서 제공되는 이미지 정보(304, 305), 및 서비스가 제공되는 접속 주소 정보(306)를 입력 받는 실행 화면을 표시할 수 있다. 사용자의 단말기는 실행 화면에서 서비스의 기본 정보를 입력 받고, 서비스의 기본 정보를 서버(10)로 전송할 수 있다.The
도 3에서 도시된 서비스의 기본 정보를 입력받는 인터페이스를 포함하는 실행 화면은 일예시이고, 다른 형태로 제공될 수 있고, 다른 정보를 입력 받는 인터페이스를 포함하는 실행 화면으로 제공될 수 있다.The execution screen including the interface for receiving basic information of the service illustrated in FIG. 3 is an example, and may be provided in another form, or may be provided as an execution screen including an interface for receiving other information.
도 4는 일실시예에 따라, 서버에서 애플리케이션을 생성하는 데에 사용자의 단말기로 제공되는 플랫폼의 실행 화면을 설명하기 위한 도면이다.4 is a diagram for explaining an execution screen of a platform provided to a user's terminal in creating an application on a server according to an embodiment.
서버(10)는 서비스에 대응되는 애플리케이션을 생성할 때, 서비스에 대한 구체적인 내용을 설정하기 위한 서비스 맵(401)을 생성할 수 있다. 서버(10)는 사용자 별로 서비스 맵을 생성할 수 있다. 도 4의 서비스 맵(401)은 개발자를 위한 서비스 맵일 수 있다.When creating an application corresponding to a service, the
도 4에 도시된 바와 같이, 사용자의 단말기는 서버(10)로부터 서비스 맵(401)을 수신하여, 표시할 수 있다. 사용자는 사용자의 단말기에 표시된 서비스 맵(401)의 내용을 각 항목 별로 확인할 수 있다.As shown in FIG. 4, the user's terminal may receive and display the
예를 들면, 사용자는 서비스 관리 항목에서 광고 설정 관리(402) 항목에 대한 내용을 확인하고자 할 때, 서비스 맵(401)에서 광고 설정 관리(402)를 선택할 수 있다. 사용자의 단말기는 광고 설정 관리(402)를 선택하는 입력을 수신하면, 광고 설정 관리(402)에 대한 구체적인 정보를 표시할 수 있다.For example, when the user wants to check the contents of the
사용자는 사용자의 단말기를 통해, 광고 설정 정보를 입력할 수 있다. 이 경우, 사용자는 사용자의 단말기로 광고 설정을 위한 코딩 정보를 입력할 수도 있지만, 텍스트 문자 정보를 입력할 수 있다. 예를 들면, 광고 설정 정보는, 애플리케이션의 메인 실행 화면에서 광고의 위치, 광고의 최대 허용 개수, 광고 시간의 제한 시간 중 적어도 하나의 정보를 포함할 수 있다.The user may input advertisement setting information through the user's terminal. In this case, the user may input coding information for advertisement setting to the user's terminal, but may input text character information. For example, the advertisement setting information may include at least one of the location of the advertisement, the maximum allowed number of advertisements, and the time limit of the advertisement time on the main execution screen of the application.
사용자의 단말기는 광고 설정 정보를 서버(10)로 전송할 수 있다. 즉, 사용자의 단말기에서 표시된 플랫폼의 실행 화면에서 광고 설정 정보가 입력되면, 서버(10)는 광고 설정 정보를 플랫폼을 통해 획득할 수 있다.The user's terminal may transmit advertisement setting information to the
서버(10)는 광고 설정 정보에 기초하여, 사용자가 요청한 광고 설정 정보를 반영한 애플리케이션을 생성할 수 있다. 이 경우, 서버(10)는 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델에 광고 설정 정보를 적용하여, 애플리케이션을 생성할 수 있다. 서버(10)에서 학습 모델을 이용하여 애플리케이션을 생성하는 과정은 도 6 내지 도 9에서 설명한다.The
도 5는 일실시예에 따라, 서버에서 사용자의 단말기로 제공된 노-코드 기반의 인터페이스를 설명하기 위한 도면이다.5 is a diagram for describing a no-code based interface provided from a server to a user's terminal according to an embodiment.
사용자의 단말기는 사용자가 제공하려는 서비스의 기본 정보를 입력 받고, 서비스의 기본 정보를 서버(10)로 전송할 수 있다. 서버(10)는 서비스의 기본 정보로부터 애플리케이션에서 서비스의 특성상 제공될 수 있는 템플릿 정보를 사용자의 단말기로 전송할 수 있다. 템플릿 정보는 서버(10)의 스토리지에 저장되어 관리될 수 있다. 템플릿 정보는, 서비스의 카테고리 별로 세분화되어 저장될 수 있다. 또한, 동일한 카테고리의 서비스에 대한 템플릿 정보도 각 서비스 내의 사항을 고려하여 세분화되어 저장될 수 있다.The user's terminal may receive basic information of a service to be provided by the user, and transmit basic information of the service to the
예를 들면, 서비스가 쇼핑 서비스 인 경우, 서버(10)는 쇼핑 서비스에 대한 제1 템플릿 정보를 사용자의 단말기로 전송할 수 있다. 사용자의 단말기는 제1 템플릿 정보를 표시할 수 있다.For example, when the service is a shopping service, the
도 5를 참고하면, 사용자의 단말기는 쇼핑 서비스를 제공하는 쇼핑 애플리케이션을 생성하는 데에 이용되는 복수의 레이아웃들을 표시할 수 있다. 사용자의 단말기는 제1 레이아웃(501)을 선택하는 입력을 수신하면, 제1 레이아웃(501)을 설정하는 화면을 표시할 수 있다. 사용자의 단말기는 제1 레이아웃(501)을 설정하는 인터페이스를 노-코드 기반의 인터페이스로 제공할 수 있다. 즉, 사용자는 코딩 정보를 입력하지 않고, 코딩 정보 이외의 입력 정보를 인터페이스를 통해 입력함으로써, 제1 레이아웃(501)을 설정할 수 있다.Referring to FIG. 5, the user's terminal may display a plurality of layouts used to create a shopping application that provides shopping services. Upon receiving an input for selecting the
도 5에 도시된 바와 같이, 제1 레이아웃(501)을 설정하는 화면에는 로고 정보를 설정하는 영역(502), 항목 정보를 설정하는 영역(503), 로그인 정보 등을 설정하는 영역(504), 메인 광고를 설정하는 영역(505), 광고를 설정하는 영역(506), 공지 사항을 설정하는 영역(507)이 설정되어 표시될 수 있다.As illustrated in FIG. 5, the screen for setting the
예를 들면, 사용자의 단말기는 메인 광고를 설정하는 영역(505)의 크기를 기존 영역의 크기보다 크게 설정하는 입력을 수신함에 따라, 메일 광고를 설정하는 영역(505)의 크기를 크게 설정할 수 있다.For example, the user's terminal may set the size of the
다른 예를 들면, 사용자의 단말기는 항목 정보를 설정하는 영역(503)에서, 제1 상위 항목을 "의류"로 설정하는 입력, 제2 상위 항목을 "화장품"으로 설정하는 입력, 제3 상위 항목을 "식품"으로 설정하는 입력, 제4 상위 항목을 "가구"로 설정하는 입력을 수신하여, 각 항목 정보를 설정할 수 있다. 또한, 사용자의 단말기는 항목 정보를 설정하는 영역(503)에서, 제5 상위 항목을 삭제하는 입력에 기초하여, 제5 상위 항목에 대응되는 영역을 삭제할 수 있다.For another example, the user's terminal inputs the first parent item to "Clothing" in the
도 6은 일실시예에 따라, 서버에서 서비스의 개발 정보를 학습 모델에 적용하여 애플리케이션을 생성하는 과정을 설명하기 위한 도면이다.6 is a diagram for explaining a process of generating an application by applying development information of a service to a learning model in a server according to an embodiment.
서버(10)는 사용자의 단말기로부터 애플리케이션에서 제공되는 서비스의 개발 정보를 수신할 수 있다. 구체적으로, 사용자의 단말기는 노-코드 기반의 인터페이스에 기초하여, 사용자가 의도하고자 하는 서비스의 개발 정보를 수신할 수 있다. 사용자의 단말기는 개발 정보를 서버(10)로 전송할 수 있다.The
서버(10)는 개발 정보를 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 학습한 결과에 적용하여, 애플리케이션을 생성할 수 있다.The
여기서, 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 학습한 결과는, 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 이용하여 학습된 학습 모델일 수 있다. 예를 들면, 학습 모델은 애플리케이션의 개발을 위한 코드 블록을 획득하는 모델일 수 있다.Here, the result of learning the information objectifying the service provided by each of the plurality of applications may be a learning model learned using the information objectifying the service provided by each of the plurality of applications. For example, the learning model may be a model that acquires a block of code for development of an application.
예를 들면, 서버(10)는 인공 신경망을 통해 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 서비스 정보에 대응되는 객체 정보의 상관 관계, 및 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 복수의 애플리케이션들 각각을 이용하는 복수의 사용자의 행위 패턴 정보의 상관 관계 중 적어도 하나에 기초하여, 학습 모델을 생성할 수 있다.For example, the
복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 서비스 정보에 대응되는 객체 정보의 상관 관계는, 서비스 정보가 복수의 애플리케이션 각각에서 어떻게 객체 정보로 구현되었는지를 학습함으로써, 획득될 수 있다.The correlation between service information provided in each of a plurality of applications and object information corresponding to the service information can be obtained by learning how service information is implemented as object information in each of a plurality of applications.
또한, 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 복수의 애플리케이션들 각각을 이용하는 복수의 사용자의 행위 패턴 정보의 상관 관계는, 복수의 사용자 각각이 서비스 정보를 어떻게 이용하였는지를 학습함으로써, 획득될 수 있다.In addition, a correlation between service information provided in each of a plurality of applications and behavior pattern information of a plurality of users using each of the plurality of applications can be obtained by learning how each of the plurality of users used service information. .
서버(10)는 사용자의 단말기로부터 수신된 개발 정보를 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델에 적용하여, 애플리케이션을 생성하는 데에 이용되는 적어도 하나의 코드 블록을 획득할 수 있다. 서버(10)는 적어도 하나의 코드 블록을 이용하여, 애플리케이션을 생성할 수 있다. 구체적으로, 서버(10)는 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델에 따라 사용자의 단말기로부터 수신된 개발 정보를 학습할 수 있다. 서버(10)는 학습 결과에 기초하여, 애플리케이션에서 미리 설정된 조건을 만족하여 서비스가 제공되도록 적어도 하나의 코드 블록을 획득할 수 있다.The
예를 들면, 미리 설정된 조건은, 애플리케이션의 원활한 동작을 위한 애플리케이션의 내적 정보에 대한 기준 조건, 및 애플리케이션에서 제공되는 서비스 형태와 관련된 애플리케이션의 외적 정보에 대한 기준 조건 중 적어도 하나를 포함할 수 있고, 상기 예시에 제한되지 않는다.For example, the preset condition may include at least one of a reference condition for internal information of the application for smooth operation of the application, and a reference condition for external information of the application related to a service type provided by the application, It is not limited to the above example.
예를 들면, 애플리케이션의 내적 정보에 대한 기준 조건은, 애플리케이션에서 데이터를 처리하는 응답 속도, 애플리케이션에서 발생될 수 있는 오류율 정보, 애플리케이션이 동작하는 환경에서의 안정성 정보 중 적어도 하나에 대한 기준 조건일 수 있다.For example, the reference condition for the internal information of the application may be a reference condition for at least one of response speed of processing data in the application, error rate information that may be generated in the application, and stability information in an environment in which the application operates. have.
예를 들면, 애플리케이션의 외적 정보에 대한 기준 조건은, 애플리케이션에서 서비스를 제공하는 로직 정보, 애플리케이션에서 서비스를 제공하는 데에 출력되는 레이 아웃 정보 중 적어도 하나에 대한 기준 조건일 수 있다.For example, the reference condition for external information of the application may be a reference condition for at least one of logic information for providing a service in the application and layout information output for providing a service in the application.
또한, 서버(10)는 사용자의 단말기로부터 수신된 개발 정보에 기초하여, 애플리케이션에서 제공되는 서비스를 객체화 하는 작업 단위인 적어도 하나의 프로젝트를 생성할 수 있다. 서버(10)는 적어도 하나의 프로젝트에 대응되는 적어도 하나의 레이아웃을 설정하여, 애플리케이션을 생성할 수 있다.In addition, the
서버(10)는 생성된 애플리케이션을 서버(10) 내에서 애플리케이션을 관리하는 스토리지에 저장하고, 복수의 사용자들이 애플리케이션을 이용할 수 있도록 애플리케이션을 배포할 수 있다. 추후에, 애플리케이션의 업데이트가 있는 경우, 서버(10)는 자동으로 애플리케이션을 업데이트하여, 업데이트 된 애플리케이션을 사용자의 단말기로 제공할 수 있다.The
도 7은 일실시예에 따라, 복수 개의 계층 구조를 갖는 인공 신경망을 개략적으로 도시한 도면이다.7 is a diagram schematically illustrating an artificial neural network having a plurality of hierarchical structures, according to an embodiment.
도 7을 참고하면, 인공 신경망은 입력 레이어(710), 적어도 하나의 히든 레이어(720, 730) 및 출력 레이어(740)를 포함할 수 있다. 또한, 인공 신경망을 통한 연산은 서버(10) 내의 프로세서에서 수행될 수 있다.Referring to FIG. 7, the artificial neural network may include an
또한, 히든 레이어(720, 730)에서 수행된 학습 및 훈련을 통해 각 레이어와 노드 사이의 가중치가 학습될 수 있다. 예를 들면, 서버(10) 내의 프로세서는 반복적인 학습을 통하여 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 서비스 정보와 대응되는 객체 정보의 상관 관계에 적용되는 가중치의 값을 획득할 수 있다. 또한, 서버(10) 내의 프로세서는 반복적인 학습을 통하여 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 복수의 사용자의 행위 패턴 정보의 상관 관계에 적용되는 가중치의 값을 획득할 수 있다.In addition, the weight between each layer and the node may be learned through learning and training performed in the
서버(10)는 획득된 가중치의 값을 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 서비스 정보와 대응되는 객체 정보의 상관 관계, 또는 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 복수의 사용자의 행위 패턴 정보의 상관 관계에 다시 적용하여, 훈련된 인공 신경망에서 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델을 생성할 수 있다.The
도 8 및 도 9는 일실시예에 따라, 서버에서 서비스의 개발 정보를 학습 모델에 적용하여 서비스에 적합한 객체 정보를 추천하는 과정을 설명하기 위한 도면이다.8 and 9 are diagrams for explaining a process of recommending object information suitable for a service by applying development information of a service to a learning model in a server according to an embodiment.
도 8을 참고하면, 사용자의 단말기는 쇼핑 서비스를 제공하는 쇼핑 애플리케이션을 생성하는 데에 이용되는 복수의 레이아웃들을 표시할 수 있다. 사용자의 단말기는 제4 레이아웃(801)을 선택하는 입력을 수신하면, 제4 레이아웃(801)을 설정하는 인터페이스를 제공할 수 있다.Referring to FIG. 8, the user's terminal may display a plurality of layouts used to create a shopping application that provides shopping services. Upon receiving the input for selecting the
도 8에 도시된 바와 같이, 제4 레이아웃(801)을 설정하는 화면에는 주문 결제와 관련된 상품 정보를 설정하는 영역(802), 배송지를 설정하는 영역(803) 및 결제 금액을 설정하는 영역(804)이 설정되어 표시될 수 있다. 사용자의 단말기는 확인(805)을 선택하는 입력을 수신하면, 제4 레이아웃(801)의 설정이 완료되었음을 알리는 정보를 서버(10)로 전송할 수 있다.As shown in FIG. 8, the screen for setting the
서버(10)는 사용자의 단말기로부터 획득된 제4 레이아웃(801)의 정보 및 개발 정보를 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델에 적용하여, 애플리케이션을 생성하는 데에 이용되는 적어도 하나의 코드 블록을 획득할 수 있다. 예를 들면, 서버(10)는 주문 결제와 관련된 할인 수단의 영역(901) 및 할인 수단 정보의 영역(902)을 제4 레이아웃에 추가하는 적어도 하나의 코드 블록을 획득할 수 있다. 서버(10)는 기존의 제4 레이아웃에 할인 수단의 영역(901) 및 할인 수단 정보의 영역(902)이 추가된 제4 레이아웃을 생성하여 사용자의 단말기로 전송할 수 있다. 즉, 서버(10)는 서비스의 개발 정보를 학습 모델에 적용하여 서비스에 적합한 객체 정보를 추천할 수 있다.The
도 9에 도시된 바와 같이, 사용자의 단말기는 변경된 제4 레이아웃을 표시할 수 있다. 사용자의 단말기는 확인(903)을 선택하는 입력을 수신하면, 제4 레이아웃의 설정이 완료되었음을 알리는 정보를 서버(10)로 전송할 수 있다. 서버(10)는 설정 완료된 제4 레이아웃을 이용하여, 애플리케이션을 생성할 수 있다.As illustrated in FIG. 9, the user's terminal may display the changed fourth layout. Upon receiving the input for selecting the
도 10은 서버의 구성을 도시한 블록도이다.10 is a block diagram showing the configuration of a server.
도 10을 참고하면, 서버(10)는 통신 장치(1010), 스토리지(1020), 메모리(1030) 및 프로세서(1040)를 포함할 수 있다. 도시된 구성 요소 모두가 필수 구성 요소인 것은 아니다. 도시된 구성 요소보다 많은 구성 요소에 의해 서버(10)가 구현될 수 있고, 그보다 적은 구성 요소에 의해서도 서버(10)가 구현될 수 있다. 이하, 상기 구성 요소들에 대해 살펴본다.Referring to FIG. 10, the
통신 장치(1010)는 다양한 유형의 통신 방식에 따라 다양한 유형의 외부 장치와 통신을 수행할 수 있다. 통신 장치(1010)는 와이파이 칩, 블루투스 칩, NFC 칩, 및 무선통신 칩 중 적어도 하나를 포함할 수 있다. 프로세서(1040)는 통신 장치(1010)를 이용하여 각종 외부 장치와 통신을 수행할 수 있다.The
와이파이 칩, 및 블루투스 칩은 각각 WiFi 방식, 블루투스 방식으로 통신을 수행할 수 있다. 와이파이 칩이나 블루투스 칩을 이용하는 경우에는 SSID 및 세션 키 등과 같은 각종 연결 정보를 먼저 송수신하여, 이를 이용하여 통신 연결한 후 각종 정보들을 송수신할 수 있다. NFC 칩은 다양한 RF-ID 주파수 대역들 중에서 13.56MHz 대역을 사용하는 NFC(Near Field Communication) 방식으로 동작하는 칩을 의미한다. 무선 통신 칩은 IEEE(Institute of Electrical and Electronics Engineers), 지그비, 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evoloution), 및 5G(5th Generation) 등과 같은 다양한 통신 규격에 따라 통신을 수행하는 칩을 의미한다.The Wi-Fi chip and the Bluetooth chip may perform communication using a WiFi method and a Bluetooth method, respectively. In the case of using a Wi-Fi chip or a Bluetooth chip, various connection information such as an SSID and a session key can be first transmitted and received, and then communication is connected using this to transmit and receive various information. The NFC chip means a chip that operates in a Near Field Communication (NFC) method using a 13.56 MHz band among various RF-ID frequency bands. The wireless communication chip conforms to various communication standards such as Institute of Electrical and Electronics Engineers (IEEE), Zigbee, 3rd Generation (3G), 3rd Generation Partnership Project (3GPP), Long Term Evoloution (LTE), and 5th Generation (5G). Refers to a chip that performs communication.
스토리지(1020)는 SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼을 제공하는 서버(10)가 애플리케이션을 생성, 배포, 관리하는 데에 필요한 각종 소프트웨어 및 정보들을 저장할 수 있다. 예를 들어, 스토리지(1020)는 서버(10)에서 실행되는 프로그램, 애플리케이션, 및 플랫폼 상에서 이용되는 각종 데이터를 저장할 수 있다.The
스토리지(1020)는 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 학습한 결과를 데이터베이스화하여 저장 및 관리할 수 있다. 예를 들면, 스토리지(1020)는 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 서비스 정보와 대응되는 객체 정보의 상관 관계를 학습한 결과 및 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 복수의 사용자의 행위 패턴 정보의 상관 관계를 학습한 결과를 저장할 수 있다.The
메모리(1030)는 소프트웨어 또는 프로그램을 저장할 수 있다. 메모리(1030)는 프로세서(1040)에 의해 실행 가능한 명령어들을 저장할 수 있다.The
프로세서(1040)는 메모리(1030)에 저장된 프로그램을 실행시키거나, 메모리(1030)에 저장된 데이터 또는 파일을 읽어오거나, 새로운 파일을 메모리(1030)에 저장할 수 있다. 메모리(1030)는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합으로 저장할 수 있다.The
예를 들면, 메모리(1030)는 제1 사용자의 단말기로부터 제1 사용자가 제공하려는 제1 서비스의 제1 기본 정보를 획득하는 명령어들, 제1 기본 정보에 기초하여, 제1 서비스를 제공하는 제1 애플리케이션을 개발하는 데에 이용되는 노-코드 기반의 제1 인터페이스를 제1 사용자의 단말기로 제공하는 명령어들, 제1 인터페이스를 통해 획득된 제1 서비스의 제1 개발 정보를 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 학습한 결과에 적용하여, 제1 애플리케이션을 생성하는 명령어들, 및 제1 애플리케이션의 검증을 수행하고, SaaS 기반의 플랫폼을 통해 검증된 제1 애플리케이션을 배포하는 명령어들을 포함할 수 있다.For example, the
프로세서(1040)는 서버(10)의 전체적인 동작을 제어하며, CPU 등과 같은 적어도 하나의 프로세서를 포함할 수 있다. 프로세서(1040)는 각 기능에 대응되는 특화된 프로세서를 적어도 하나 포함하거나, 하나로 통합된 형태의 프로세서일 수 있다.The
프로세서(1040)는 통신 장치(1010)를 통해 제1 사용자의 단말기로부터 제1 사용자가 제공하려는 제1 서비스의 제1 기본 정보를 획득할 수 있다. 여기서, 프로세서(1040)는 제1 사용자의 단말기에서 SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼의 실행 화면이 표시되도록 플랫폼의 동작을 제어할 수 있다.The
예를 들면, 제1 기본 정보는, 제1 서비스의 명칭 정보, 제1 서비스의 카테고리 정보, 제1 서비스가 제공하는 서비스의 정보, 제1 서비스를 통해 제공되는 이미지 정보, 제1 서비스를 제공하는 접속 주소 중 적어도 하나를 포함할 수 있다.For example, the first basic information includes name information of the first service, category information of the first service, information of the service provided by the first service, image information provided through the first service, and providing the first service. It may include at least one of the access address.
프로세서(1040)는 제1 기본 정보에 기초하여, 제1 서비스를 제공하는 제1 애플리케이션을 개발하는 데에 이용되는 노-코드 기반의 제1 인터페이스를 제1 사용자의 단말기로 제공할 수 있다.The
프로세서(1040)는 통신 장치(1010)를 통해 제1 사용자의 단말기로부터 제1 서비스의 제1 개발 정보 중 소정 개발 정보가 수신되면, 소정 개발 정보에 대응되는 항목들을 설정하는 위즈윅 기반의 인터페이스를 생성할 수 있다. 프로세서(1040)는 위즈윅 기반의 인터페이스를 통신 장치(1010)를 통해 제1 사용자의 단말기로 제공할 수 있다.The
프로세서(1040)는 제1 인터페이스를 통해 획득된 제1 서비스의 제1 개발 정보를 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 학습한 결과에 적용하여, 제1 애플리케이션을 생성할 수 있다.The
구체적으로, 프로세서(1040)는 제1 개발 정보를, 소정의 학습 모델에 적용하여 제1 애플리케이션을 생성하는 데에 이용되는 적어도 하나의 코드 블록을 획득할 수 있다. 프로세서(1040)는 적어도 하나의 코드 블록을 이용하여, 제1 애플리케이션을 생성할 수 있다. 여기서, 소정의 학습 모델은 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 이용하여 학습된 모델일 수 있다.Specifically, the
프로세서(1040)는 인공 신경망을 통해 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 서비스 정보에 대응되는 객체 정보의 상관 관계, 및 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 복수의 애플리케이션들 각각을 이용하는 복수의 사용자의 행위 패턴 정보의 상관 관계 중 적어도 하나에 기초하여, 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델을 준비할 수 있다.The
프로세서(1040)는 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델에 따라, 제1 개발 정보를 학습할 수 있다. 프로세서(1040)는 학습 결과에 기초하여, 제1 애플리케이션에서 미리 설정된 조건을 만족하여 제1 서비스가 제공되도록 적어도 하나의 코드 블록을 획득할 수 있다.The
예를 들면, 미리 설정된 조건은, 제1 애플리케이션에서 데이터를 처리하는 응답 속도, 제1 애플리케이션에서 발생될 수 있는 오류율 정보, 및 제1 애플리케이션이 동작하는 환경에서 안정성 정보 중 적어도 하나를 포함하는 내적 정보에 대한 기준 조건일 수 있다.For example, the preset condition includes internal information including at least one of a response speed of processing data in the first application, error rate information that may be generated in the first application, and stability information in an environment in which the first application operates. It may be a reference condition for.
다른 예를 들면, 미리 설정된 조건은, 제1 애플리케이션에서 제1 서비스를 제공하는 로직 정보, 및 제1 애플리케이션에서 제1 서비스를 제공하는 데에 출력되는 레이 아웃 정보 중 적어도 하나를 포함하는 외적 정보에 대한 기준 조건일 수 있다.For another example, the preset condition may include external information including at least one of logic information for providing the first service in the first application and layout information output for providing the first service in the first application. It may be a reference condition for.
또한, 프로세서(1040)는 제1 개발 정보에 기초하여, 제1 애플리케이션에서 제공되는 제1 서비스를 객체화하는 작업 단위인 적어도 하나의 프로젝트를 생성할 수 있다. 여기서, 적어도 하나의 프로젝트는 제1 애플리케이션을 이용하는 사용자 별로 구분되어 생성될 수 있다. 프로세서(1040)는 적어도 하나의 프로젝트에 대응되는 적어도 하나의 레이아웃을 설정하여, 제1 애플리케이션을 생성할 수 있다.Also, the
프로세서(1040)는 제1 애플리케이션의 검증을 수행하고, SaaS 기반의 플랫폼을 통해 상기 검증된 제1 애플리케이션을 애플리케이션을 배포하는 마켓 서버(10)에 등록할 수 있다. 프로세서(1040)는 통신 장치(1010)를 통해 마켓 서버(10)로 제1 애플리케이션이 배포될 수 있도록 배포 요청을 할 수 있다.The
프로세서(1040)는 제1 서비스의 제2 개발 정보에 기초하여, 제1 애플리케이션을 업데이트 할 수 있다. 프로세서(1040)는 SaaS 기반의 플랫폼을 통해 업데이트 된 제1 애플리케이션을 배포할 수 있다.The
전술한 서버(10)의 구성 요소들의 명칭은 달라질 수 있다. 또한, 본 개시에 따른 서버(10)는 전술한 구성 요소들 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성 요소가 생략되거나 또는 추가적인 다른 구성 요소를 더 포함할 수 있다.The names of the components of the above-described
한편, SaaS 기반의 애플리케이션의 개발을 지원하는 플랫폼의 동작 방법은 컴퓨터 또는 프로세서에 의하여 실행 가능한 명령어 또는 데이터를 저장하는 컴퓨터 판독 가능 저장매체의 형태로 구현될 수 있다. 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터 판독 가능 저장매체를 이용하여 이와 같은 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 이와 같은 컴퓨터 판독 가능 저장매체는 read-only memory (ROM), random-access memory (RAM), CD, DVD, 마그네틱 테이프, 플로피 디스크, 광자기 데이터 저장 장치, 광학 데이터 저장 장치, 하드 디스크, 솔리드-스테이트 디스크(SSD), 그리고 명령어 또는 소프트웨어, 관련 데이터, 데이터 파일, 및 데이터 구조들을 저장할 수 있고, 프로세서나 컴퓨터가 명령어를 실행할 수 있도록 프로세서나 컴퓨터에 명령어 또는 소프트웨어, 관련 데이터, 데이터 파일, 및 데이터 구조들을 제공할 수 있는 어떠한 장치라도 될 수 있다.Meanwhile, a method of operating a platform supporting the development of a SaaS-based application may be implemented in the form of a computer-readable storage medium that stores instructions or data executable by a computer or processor. It can be written in a program that can be executed in a computer, and can be implemented in a general-purpose digital computer that operates such a program using a computer-readable storage medium. Such computer-readable storage media include read-only memory (ROM), random-access memory (RAM), CD, DVD, magnetic tape, floppy disk, magneto-optical data storage, optical data storage, hard disk, solid- State disk (SSD), and instructions or software, associated data, data files, and data on a processor or computer that can store instructions or software, related data, data files, and data structures, and allow a processor or computer to execute instructions It can be any device capable of providing structures.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by a limited embodiment and drawings, those skilled in the art can make various modifications and variations from the above description. For example, the described techniques are performed in a different order than the described method, and/or the components of the described system, structure, device, circuit, etc. are combined or combined in a different form from the described method, or other components Alternatively, even if replaced or substituted by equivalents, appropriate results can be achieved.
그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.
Claims (15)
제1 사용자의 단말기로부터 상기 제1 사용자가 제공하려는 제1 서비스의 제1 기본 정보를 획득하는 단계;
상기 제1 기본 정보에 기초하여, 상기 제1 서비스를 제공하는 제1 애플리케이션을 개발하는 데에 이용되는 노-코드 기반의 제1 인터페이스를 상기 제1 사용자의 단말기로 제공하는 단계;
상기 제1 인터페이스를 통해 획득된 상기 제1 서비스의 제1 개발 정보를 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 학습한 결과에 적용하여, 상기 제1 애플리케이션을 생성하는 단계; 및
상기 제1 애플리케이션의 검증을 수행하고, 상기 SaaS 기반의 플랫폼을 통해 상기 검증된 제1 애플리케이션을 배포하는 단계를 포함하고,
상기 제1 애플리케이션을 생성하는 단계는,
상기 제1 개발 정보를, 상기 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 이용하여 학습된, 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델에 적용하여, 상기 제1 애플리케이션을 생성하는 데에 이용되는 적어도 하나의 코드 블록을 획득하는 단계; 및
상기 적어도 하나의 코드 블록을 이용하여, 미리 설정된 조건을 만족하는 상기 제1 애플리케이션을 생성하는 단계를 포함하고,
상기 미리 설정된 조건은,
상기 제1 애플리케이션의 내적 정보에 대한 기준 조건 및 외적 정보에 대한 기준 조건을 포함하는, 방법.In the operating method of the platform supporting the development of SaaS-based applications,
Obtaining first basic information of a first service to be provided by the first user from a terminal of a first user;
Providing a first interface based on the first basic information, which is used to develop a first application providing the first service, to the terminal of the first user;
Generating the first application by applying the first development information of the first service acquired through the first interface to a result obtained by learning information obtained by objectifying a service provided by each of a plurality of applications; And
Performing the verification of the first application, and distributing the verified first application through the SaaS-based platform,
The step of generating the first application,
Generating the first application by applying the first development information to a learning model for acquiring a code block for development of an application, learned by using information obtained by objectifying a service provided by each of the plurality of applications Acquiring at least one code block used for having; And
Generating the first application satisfying a preset condition using the at least one code block,
The preset condition is,
And a reference condition for internal information of the first application and a reference condition for external information.
인공 신경망을 통해, 상기 복수의 애플리케이션들 각각에서 제공되는 서비스 정보와 상기 서비스 정보에 대응되는 객체 정보의 상관 관계, 및 상기 서비스 정보와 상기 복수의 애플리케이션들 각각을 이용하는 복수의 사용자의 행위 패턴 정보의 상관 관계 중 적어도 하나에 기초하여 상기 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델을 준비하는 단계를 더 포함하는, 방법.According to claim 1,
Through an artificial neural network, correlation of service information provided in each of the plurality of applications and object information corresponding to the service information, and behavior pattern information of a plurality of users using each of the service information and the plurality of applications And preparing a learning model for obtaining a block of code for development of the application based on at least one of the correlations.
상기 제1 애플리케이션을 생성하는 데에 이용되는 적어도 하나의 코드 블록을 획득하는 단계는,
상기 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델에 따라, 상기 제1 개발 정보를 학습하는 단계; 및
학습 결과에 기초하여, 상기 제1 애플리케이션에서 상기 미리 설정된 조건을 만족하여 상기 제1 서비스가 제공되도록 하는 상기 적어도 하나의 코드 블록을 획득하는 단계를 포함하는, 방법.According to claim 1,
Obtaining at least one code block used to generate the first application,
Learning the first development information according to a learning model for obtaining a code block for developing the application; And
And obtaining the at least one code block that satisfies the preset condition in the first application so that the first service is provided based on a learning result.
상기 미리 설정된 조건은,
상기 제1 애플리케이션에서의 데이터를 처리하는 응답 속도, 상기 제1 애플리케이션에서 발생될 수 있는 오류율 정보, 및 상기 제1 애플리케이션이 동작하는 환경에서의 안정성 정보 중 적어도 하나를 포함하는 상기 내적 정보에 대한 기준 조건; 및
상기 제1 애플리케이션에서 상기 제1 서비스를 제공하는 로직 정보, 및 상기 제1 애플리케이션에서 상기 제1 서비스를 제공하는 데에 출력되는 레이 아웃 정보 중 적어도 하나를 포함하는 상기 외적 정보에 대한 기준 조건을 포함하는, 방법.The method of claim 4
The preset condition is,
Criteria for the inner product information including at least one of a response speed of processing data in the first application, error rate information that may be generated in the first application, and stability information in an environment in which the first application operates. Condition; And
And a reference condition for the external information including at least one of logic information for providing the first service in the first application and layout information output for providing the first service in the first application. How to.
상기 제1 기본 정보에 기초하여, 상기 노-코드 기반의 제1 인터페이스를 상기 제1 사용자의 단말기로 제공하는 단계는,
상기 제1 기본 정보로부터 상기 제1 서비스를 객체화 하는 데에 이용되는 상기 노-코드 기반의 제1 인터페이스가 상기 제1 사용자의 단말기에서 접속된 플랫폼의 제1 실행 화면에서 표시되도록 제어하는 단계를 포함하는, 방법.According to claim 1,
Providing the first interface based on the no-code to the terminal of the first user, based on the first basic information,
And controlling the first interface based on the no-code used for objectifying the first service from the first basic information to be displayed on a first execution screen of a platform connected to the terminal of the first user. How to.
상기 제1 인터페이스를 상기 제1 사용자의 단말기로 제공하는 단계는,
상기 제1 사용자의 단말기로부터 상기 제1 서비스의 제1 개발 정보 중 소정 개발 정보가 수신되면, 상기 소정 개발 정보에 대응되는 항목들을 설정하는 위즈윅 기반의 인터페이스를 상기 제1 사용자의 단말기로 제공하는 단계를 포함하는, 방법.The method of claim 6,
Providing the first interface to the terminal of the first user,
When predetermined development information among the first development information of the first service is received from the terminal of the first user, a Wiswick-based interface for setting items corresponding to the predetermined development information is provided to the terminal of the first user A method comprising steps.
상기 제1 사용자가 제공하려는 제1 서비스의 제1 기본 정보를 획득하는 단계는,
상기 제1 사용자의 단말기로부터 상기 제1 서비스의 명칭 정보, 카테고리 정보, 제공 정보, 이미지 정보 및 접속 주소 정보 중 적어도 하나를 포함하는 상기 제1 기본 정보를 수신하는 단계를 포함하는, 방법.According to claim 1,
The obtaining of the first basic information of the first service to be provided by the first user may include:
And receiving, from the terminal of the first user, the first basic information including at least one of name information, category information, provision information, image information, and access address information of the first service.
상기 제1 개발 정보를 이용하여, 상기 제1 애플리케이션을 생성하는 단계는,
상기 제1 개발 정보에 기초하여, 상기 제1 애플리케이션에서 제공되는 상기 제1 서비스를 객체화하는 작업 단위인 적어도 하나의 프로젝트를 생성하는 단계; 및
상기 적어도 하나의 프로젝트에 대응되는 적어도 하나의 레이아웃을 설정하여 상기 제1 애플리케이션을 생성하는 단계를 포함하는, 방법.According to claim 1,
Using the first development information, generating the first application may include:
Generating at least one project that is a unit of work for objectifying the first service provided by the first application based on the first development information; And
And generating the first application by setting at least one layout corresponding to the at least one project.
상기 적어도 하나의 프로젝트는, 상기 제1 애플리케이션을 이용하는 사용자 별로 구분되어 생성되는, 방법.The method of claim 9,
The at least one project is generated separately for each user who uses the first application.
상기 제1 애플리케이션의 검증을 수행하고, 상기 SaaS 기반의 플랫폼을 통해 상기 검증된 제1 애플리케이션을 배포하는 단계는,
상기 제1 서비스의 제2 개발 정보에 기초하여, 상기 제1 애플리케이션을 업데이트 하는 단계; 및
상기 SaaS 기반의 플랫폼을 통해 상기 업데이트 된 제1 애플리케이션을 배포하는 단계를 포함하는, 방법.According to claim 1,
Performing verification of the first application, and distributing the verified first application through the SaaS-based platform,
Updating the first application based on second development information of the first service; And
And distributing the updated first application through the SaaS based platform.
외부의 단말기들과 통신을 수행하는 통신 장치;
스토리지;
프로세서; 및
상기 프로세서에 의해 실행 가능한 명령어들을 저장하는 메모리를 포함하고,
상기 프로세서는, 상기 명령어들을 실행함으로써,
제1 사용자의 단말기로부터 상기 제1 사용자가 제공하려는 제1 서비스의 제1 기본 정보를 획득하고,
상기 제1 기본 정보에 기초하여, 상기 제1 서비스를 제공하는 제1 애플리케이션을 개발하는 데에 이용되는 노-코드 기반의 제1 인터페이스를 상기 제1 사용자의 단말기로 제공하고,
상기 제1 인터페이스를 통해 획득된 상기 제1 서비스의 제1 개발 정보를 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 학습한 결과에 적용하여, 상기 제1 애플리케이션을 생성하고,
상기 제1 애플리케이션의 검증을 수행하고, 상기 SaaS 기반의 플랫폼을 통해 상기 검증된 제1 애플리케이션을 배포하고,
상기 프로세서는, 상기 명령어들을 실행함으로써,
상기 제1 개발 정보를, 상기 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 이용하여 학습된, 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델에 적용하여, 상기 제1 애플리케이션을 생성하는 데에 이용되는 적어도 하나의 코드 블록을 획득하고,
상기 적어도 하나의 코드 블록을 이용하여, 미리 설정된 조건을 만족하는 상기 제1 애플리케이션을 생성하고,
상기 미리 설정된 조건은,
상기 제1 애플리케이션의 내적 정보에 대한 기준 조건 및 외적 정보에 대한 기준 조건을 포함하는, 서버.In the server that provides a platform to support the development of SaaS-based applications,
A communication device performing communication with external terminals;
storage;
Processor; And
And a memory for storing instructions executable by the processor,
The processor, by executing the instructions,
Obtaining first basic information of a first service to be provided by the first user from a terminal of a first user,
Based on the first basic information, a no-code based first interface used to develop a first application providing the first service is provided to the terminal of the first user,
The first application is generated by applying the first development information of the first service obtained through the first interface to the result obtained by learning the information obtained by objectifying the service provided by each of the plurality of applications,
Perform the verification of the first application, distribute the verified first application through the SaaS-based platform,
The processor, by executing the instructions,
Generating the first application by applying the first development information to a learning model for acquiring a code block for development of an application, learned by using information obtained by objectifying a service provided in each of the plurality of applications Obtain at least one block of code used for de
The first application that satisfies a preset condition is generated by using the at least one code block,
The preset condition is,
And a reference condition for internal information of the first application and a reference condition for external information.
상기 프로세서는, 상기 명령어들을 실행함으로써,
상기 제1 기본 정보로부터 상기 제1 서비스를 객체화 하는 데에 이용되는 상기 노-코드 기반의 제1 인터페이스가 상기 제1 사용자의 단말기에서 접속된 플랫폼의 제1 실행 화면에서 표시되도록 제어하고,
상기 제1 사용자의 단말기로부터 상기 제1 서비스의 제1 개발 정보 중 소정 개발 정보가 수신되면, 상기 소정 개발 정보에 대응되는 항목들을 설정하는 위즈윅 기반의 인터페이스를 상기 제1 사용자의 단말기로 제공하는, 서버.The method of claim 12,
The processor, by executing the instructions,
The first interface based on the no-code used to objectify the first service from the first basic information is controlled to be displayed on a first execution screen of a platform connected to the terminal of the first user,
When predetermined development information among the first development information of the first service is received from the terminal of the first user, a Wiswick-based interface for setting items corresponding to the predetermined development information is provided to the terminal of the first user , server.
제1 사용자의 단말기로부터 상기 제1 사용자가 제공하려는 제1 서비스의 제1 기본 정보를 획득하는 단계;
상기 제1 기본 정보에 기초하여, 상기 제1 서비스를 제공하는 제1 애플리케이션을 개발하는 데에 이용되는 노-코드 기반의 제1 인터페이스를 상기 제1 사용자의 단말기로 제공하는 단계
상기 제1 인터페이스를 통해 획득된 상기 제1 서비스의 제1 개발 정보를 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 학습한 결과에 적용하여, 상기 제1 애플리케이션을 생성하는 단계; 및
상기 제1 애플리케이션의 검증을 수행하고, 상기 SaaS 기반의 플랫폼을 통해 상기 검증된 제1 애플리케이션을 배포하는 단계를 포함하고,
상기 제1 애플리케이션을 생성하는 단계는,
상기 제1 개발 정보를, 상기 복수의 애플리케이션들 각각에서 제공되는 서비스를 객체화한 정보를 이용하여 학습된, 애플리케이션의 개발을 위한 코드 블록을 획득하는 학습 모델에 적용하여, 상기 제1 애플리케이션을 생성하는 데에 이용되는 적어도 하나의 코드 블록을 획득하는 단계; 및
상기 적어도 하나의 코드 블록을 이용하여, 미리 설정된 조건을 만족하는 상기 제1 애플리케이션을 생성하는 단계를 포함하고,
상기 미리 설정된 조건은,
상기 제1 애플리케이션의 내적 정보에 대한 기준 조건 및 외적 정보에 대한 기준 조건을 포함하는, 컴퓨터 프로그램.
A computer program stored in a medium to execute a method of operating a platform supporting development of a SaaS-based application in combination with hardware, the method of operation comprising:
Obtaining first basic information of a first service to be provided by the first user from a terminal of a first user;
Providing a first interface based on the first basic information, which is used to develop a first application that provides the first service, to the terminal of the first user
Generating the first application by applying the first development information of the first service obtained through the first interface to a result obtained by learning information obtained by objectifying a service provided by each of a plurality of applications; And
Performing the verification of the first application, and distributing the verified first application through the SaaS-based platform,
The step of generating the first application,
Generating the first application by applying the first development information to a learning model for acquiring a code block for development of an application, learned by using information obtained by objectifying a service provided by each of the plurality of applications Acquiring at least one code block used for having; And
Generating the first application satisfying a preset condition using the at least one code block,
The preset condition is,
And a reference condition for internal information of the first application and a reference condition for external information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180089142A KR102122451B1 (en) | 2018-07-31 | 2018-07-31 | Method of operating platform supporting application development and server providing platform |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180089142A KR102122451B1 (en) | 2018-07-31 | 2018-07-31 | Method of operating platform supporting application development and server providing platform |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200013915A KR20200013915A (en) | 2020-02-10 |
KR102122451B1 true KR102122451B1 (en) | 2020-06-12 |
Family
ID=69627378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180089142A KR102122451B1 (en) | 2018-07-31 | 2018-07-31 | Method of operating platform supporting application development and server providing platform |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102122451B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102348565B1 (en) * | 2021-06-17 | 2022-01-07 | 이도열 | Start-up Information providing systems using the information sharing platform based No-code tools |
KR102586591B1 (en) * | 2022-10-27 | 2023-10-10 | (주) 제이탑미래기술 | A platform system that is providing a portal service based on No-Code |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102244419B1 (en) * | 2020-11-10 | 2021-04-27 | 옴니스랩스 주식회사 | Method for artificial intelligence service based on user participation and apparatus for performing the same |
KR102275763B1 (en) * | 2021-01-14 | 2021-07-09 | 주식회사 누리콘 | Method and system for automatically generating deep learning application from deep learning model |
CN113778446B (en) * | 2021-09-15 | 2024-02-13 | 航天新通科技有限公司 | Low-code application development platform |
KR102645660B1 (en) * | 2023-09-04 | 2024-03-11 | 주식회사 콩벤처스 | Artificial Intelligence-Based Application Generating Method and System Thereof |
KR102643830B1 (en) * | 2023-11-07 | 2024-03-08 | 올거나이즈코리아 주식회사 | Method and system for providing large language model-based application for automation corporate task |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018055571A (en) * | 2016-09-30 | 2018-04-05 | 横河電機株式会社 | Application development environment providing system, application development environment providing method, application development environment providing program, and terminal device |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101275871B1 (en) * | 2011-10-13 | 2013-06-18 | 연세대학교 산학협력단 | System and method for producing homepage in SaaS ENVIRONMENT, A computer-readable storage medium therefor |
KR20130063952A (en) * | 2011-12-07 | 2013-06-17 | 한국전자통신연구원 | System for supporting application development in cloud computing environment and method thereof |
-
2018
- 2018-07-31 KR KR1020180089142A patent/KR102122451B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018055571A (en) * | 2016-09-30 | 2018-04-05 | 横河電機株式会社 | Application development environment providing system, application development environment providing method, application development environment providing program, and terminal device |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102348565B1 (en) * | 2021-06-17 | 2022-01-07 | 이도열 | Start-up Information providing systems using the information sharing platform based No-code tools |
KR102586591B1 (en) * | 2022-10-27 | 2023-10-10 | (주) 제이탑미래기술 | A platform system that is providing a portal service based on No-Code |
Also Published As
Publication number | Publication date |
---|---|
KR20200013915A (en) | 2020-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102122451B1 (en) | Method of operating platform supporting application development and server providing platform | |
US11853728B2 (en) | System integrating a mobile device application creation, editing and distribution system with a website design system | |
CN107820701B (en) | Developer exchange system | |
CN105556468B (en) | The method and system for the applied customization for initializing and guiding out of application itself | |
CN105765527B (en) | The method and apparatus of software development kit (SDK) for customization | |
US9645797B2 (en) | Development system and method for providing external functionality | |
CN105814539B (en) | The method and apparatus generated for code virtualization and remote process call | |
US8832644B2 (en) | Systems and methods for a mobile application development and deployment platform | |
US9430207B1 (en) | Automated cross-platform native mobile application generation with cloud driven user interface and workflow synthesis | |
US20100281475A1 (en) | System and method for mobile smartphone application development and delivery | |
US9483253B1 (en) | Methods for customization of default applications on a mobile communication device | |
US9678745B2 (en) | Automatic submission of applications to applications stores | |
Colombo-Mendoza et al. | MobiCloUP!: a PaaS for cloud services-based mobile applications | |
KR20150047219A (en) | System and method for producing smart phone application | |
KR101161946B1 (en) | Smart-phone application development system and developing method thereof | |
CN107463406A (en) | Issue the method and electronic equipment of Mobile solution | |
Helal et al. | Mobile platforms and development environments | |
KR101584276B1 (en) | Method for providing application product service | |
US9218162B1 (en) | Cross-platform mobile application specification and automatic synthesizer | |
US11468898B2 (en) | Common skill store for different virtual assistants | |
Machiraju et al. | Conversations as platforms | |
KR20130082798A (en) | Method for providing space market widget, market server and user deivce thereof | |
US20210334092A1 (en) | System For Providing Instant Preview Of A Mobile Application Under Development | |
Mulatu et al. | Hybrid Mobile Learning Architecture for Higher Education | |
Trivedi et al. | Mobile Basics |
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 |