KR20110066519A - Software execution method in saas(software as a service) environment - Google Patents

Software execution method in saas(software as a service) environment Download PDF

Info

Publication number
KR20110066519A
KR20110066519A KR1020090123206A KR20090123206A KR20110066519A KR 20110066519 A KR20110066519 A KR 20110066519A KR 1020090123206 A KR1020090123206 A KR 1020090123206A KR 20090123206 A KR20090123206 A KR 20090123206A KR 20110066519 A KR20110066519 A KR 20110066519A
Authority
KR
South Korea
Prior art keywords
software
information
saas
service
component
Prior art date
Application number
KR1020090123206A
Other languages
Korean (ko)
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 KR1020090123206A priority Critical patent/KR20110066519A/en
Publication of KR20110066519A publication Critical patent/KR20110066519A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

PURPOSE: A software execution method in SaaS environment is provided to reduce the number of servers required for offering a software service by proceeding various kinds of software in one SaaS server. CONSTITUTION: A software service request is received from a user(S201). A software corresponding to the software service request is loaded(S203). Software component information for offering the software service is loaded. The software is executed according to the software component information(S206). Information processed with the software is loaded from the user information database(S207). The execution result executes the software based on the information and is transmitted to a user(S208).

Description

SaaS 환경에서의 소프트웨어 실행 기법 {Software Execution Method in SaaS(software as a service) Environment}Software Execution Method in SaaS Environment {Software Execution Method in SaaS (software as a service) Environment}

본 발명은 온라인 상으로 소프트웨어 서비스를 제공하는 시스템에서 한 서버에서 여러 소프트웨어를 수행하기 위한 실행 기법에 관한 것이다. 보다 상세하게는 SaaS(software as a service) 환경에서, 서비스 가입자에게 소프트웨어 제공 서비스를 하는 경우, 하나의 서버에서 여러 소프트웨어를 수행하여 효율성을 도모하고 기업 별로 맞춤형 서비스를 제공하기 위한 방법에 관한 것이다. The present invention relates to an execution technique for executing various software in one server in a system for providing a software service online. More specifically, the present invention relates to a method for improving efficiency and providing customized services for each company by executing a plurality of software in one server when providing a service to a service subscriber in a software as a service (SaaS) environment.

본 발명은 지식경제부의 IT성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2009-S-033-01, 과제명: 중소기업 SW 서비스를 위한 SssS 플랫폼 개발].The present invention is derived from a study conducted as part of the IT growth engine technology development project of the Ministry of Knowledge Economy [Task management number: 2009-S-033-01, Task name: SssS platform development for SME SW services].

컴퓨터를 사용하는 모든 사용자 및 기업에 있어서 하드웨어의 구입, 유지, 보수 뿐만 아니라 소프트웨어의 구입, 유지, 보수 또한 매우 중요한 이슈이다. 특히, 기업에 있어서 각종 OS, 사무용 프로그램, 그래픽 프로그램과 같은 다양한 애 플리케이션(application)의 구입, 유지, 업그레이드 비용은 하드웨어의 구입, 유지, 보수 비용만큼이나 큰 부담이 된다. The purchase, maintenance, and repair of software as well as the purchase, maintenance, and repair of hardware are very important issues for all users and businesses using computers. In particular, the cost of purchasing, maintaining, and upgrading various applications such as various OSs, office programs, and graphic programs in a company is as much as the cost of purchasing, maintaining, and repairing hardware.

또한, 기업 내부의 각종 재무, 인사, 관리 프로그램 및 각종 데이터들을 관리하기 위한 프로그램들은 구입 비용도 만만치 않을 뿐만 아니라 별도로 고가의 하드웨어를 구축해야 한다.In addition, the programs for managing various financial, human resources, management programs and data inside the company are not only expensive to purchase, but also require the construction of expensive hardware separately.

하지만, 네트워크 기술이 발전함에 따라, 네트워크 인프라를 이용하여 고가의 하드웨어, 소프트웨어를 도입하지 않고도 다양한 정보화 솔루션을 사용할 수 있도록 애플리케이션을 임대하여 이용할 수 있도록 해주는 서비스가 등장하기 시작했다. 이러한 서비스는 별도의 서버, 애플리케이션을 구매, 구축하지 않을 수 있고, 비용, 시간, 관리 인력의 부담을 해소하며, 중소기업의 경우 선진 경영 및 업무 프로세스를 쉽게 취득하면서 대기업과 대등한 업무 혁신을 가능하게 한다는 점 때문에 최근 많은 각광을 받고 있다. However, with the development of network technology, services that allow users to rent and use applications to use various informatization solutions without introducing expensive hardware and software using network infrastructure are beginning to emerge. These services may not purchase and deploy separate servers and applications, relieve the burden of cost, time, and management staff, and enable small and medium businesses to acquire advanced management and business processes while enabling business innovation on par with large corporations. It has recently been in the spotlight.

이러한 서비스는 SaaS(Software as a Service)라는 개념으로 더욱 발전되어 현재는 대다수의 기업들이 SaaS를 채택하여 사용하고 있다. These services have evolved into the concept of Software as a Service (SaaS), which is now used by most companies.

SaaS는 소프트웨어를 유통하는 방식에서 기존 소프트웨어와 확연한 차이를 보인다. 일반 소프트웨어나 기업용 애플리케이션 소프트웨어는 기업 고객에 제품을 설명·판매·설치·업그레이드·관리하는 과정을 거친다. 고객들에겐 제품 소유에 따른 관리 부담이 만만찮다.SaaS differs significantly from traditional software in the way it distributes software. General or enterprise application software goes through the process of describing, selling, installing, upgrading, and managing products to enterprise customers. For customers, the management burden of owning a product is considerable.

반면 SaaS는 제공업체가 자사 서버를 통해 웹으로 서비스를 제공한다. 이용료도 광고수익으로 대체되거나 월정액 혹은 종량제로 지불할 수 있다. 고객 입장에 선 비용과 관리상 이점이 적지 않다. 소프트웨어 업체와 고객기업 모두에게 이익이 된다.SaaS, on the other hand, is a provider that provides services over the web through its servers. Fees can also be replaced by advertising revenue or paid on a monthly or pay-as-you-go basis. The cost and management advantages of the customer are not small. It benefits both software and customer companies.

하지만, 기존의 소프트웨어 서비스는 한 기업에게 서비스를 제공할 때, 각 기업 별로 서버를 할당하여 서비스를 제공한다. 이렇게 각 기업별로 서버를 할당하여 서비스를 제공할 경우, 소프트웨어 서비스를 제공하는 업체는 많은 수의 서버, 운영체제, 소프트웨어를 구매하여 운영해야 한다. 이 때문에, 운영 비용이 높아지고 서비스 제공 단가가 높아지게 된다.However, existing software services provide services by allocating servers for each company when providing services to one company. In this way, when a server is allocated to each company to provide a service, a company that provides a software service must purchase and operate a large number of servers, operating systems, and software. This increases operating costs and increases the cost of providing a service.

본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 하나의 서버에서 다수의 기업들에게 소프트웨어 서비스를 제공함으로써 운용비용을 낮추는데 그 목적이 있다.The present invention has been made to solve the above problems, and its object is to lower operating costs by providing a software service to a plurality of companies in one server.

본 발명의 목적은 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 본 발명이 속하는 기술 분야의 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The object of the present invention is not limited to those mentioned above, and other objects not mentioned will be clearly understood by those skilled in the art from the following description.

상기와 같은 목적을 달성하기 위한 본 발명의 실시예에 따른 SaaS 환경에서의 소프트웨어 서비스 제공 방법은, 소프트웨어 서비스 사용자로부터 소프트웨어 서비스 사용 요청을 수신하는 단계, 상기 소프트웨어 서비스 사용 요청에 해당하는 소프트웨어를 가져오는 단계, 상기 소프트웨어 서비스 제공 시 수행되는 소프트웨어 구성요소 정보를 가져오는 단계, 상기 구성요소 정보에 따라 상기 소프트웨어를 실행하는 단계, 상기 소프트웨어에 의해 처리될 정보를 저장해놓은 사용자 정보 데이터 베이스로부터 상기 소프트웨어에 의해 처리될 정보를 읽어오는 단계, 및 상기 상기 소프트웨어에 의해 처리될 정보를 이용하여 상기 소프트웨어를 실행하고, 실행 결과를 상기 서비스 사용자에게 전송하는 단계를 포함하여 구성된다.Software service providing method in a SaaS environment according to an embodiment of the present invention for achieving the above object, receiving a software service use request from a software service user, bringing the software corresponding to the software service use request Step of retrieving software component information to be performed when providing the software service, executing the software according to the component information, by the software from a user information database storing information to be processed by the software; Reading the information to be processed, and executing the software using the information to be processed by the software, and transmitting the execution result to the service user.

여기서, 상기 소프트웨어를 가져오는 단계에서는, 상기 소프트웨어 서비스 사용 요청을 수신하면, SaaS 컨테이너 서버에서 적어도 하나의 SaaS 런타임 쓰레드(run-time thread)를 생성하며, 상기 SaaS 런타임 쓰레드는 상기 소프트웨어 및 상기 구성요소 정보를 가져오는 명령을 수행할 수 있다.Here, in the step of obtaining the software, upon receiving the software service use request, at least one SaaS runtime thread is created in a SaaS container server, and the SaaS runtime thread is the software and the component. You can run a command to get information.

한편, 상기 소프트웨어를 소프트웨어 코드 데이터 베이스에서 가져오는 단계는, 상기 소프트웨어 서비스 사용 요청을 수신하면, 상기 소프트웨어의 코드가 SaaS 컨테이너 서버의 캐시에 있는지를 확인하는 단계, 및 상기 소프트웨어의 코드가 상기 캐시에 있으면 상기 캐시에 있는 소프트웨어 코드를 가져와 사용하고, 없으면 소프트웨어 코드 데이터 베이스에서 가져와 사용하는 단계를 포함할 수 있다.On the other hand, the step of bringing the software from the software code database, upon receiving the software service use request, checking whether the code of the software is in the cache of the SaaS container server, and the code of the software is stored in the cache. Fetching and using the software code in the cache, if present, and fetching and using the software code from the software code database.

또한, 상기 구성요소 정보를 가져오는 단계는, 상기 서비스 사용자 별로 정의된 소프트웨어 구성요소에 대한 맞춤 정보가 있는지를 확인하는 단계, 및 상기 맞춤 정보가 있다면 기존 소프트웨어 구성 요소 대신 맞춤 구성 요소가 수행되도록 상기 맞춤 정보를 가져오고, 상기 맞춤 정보가 없다면 상기 기존 소프트웨어 구성 요소가 수행되도록 기존 구성요소 정보를 가져오는 단계를 포함할 수 있다.In addition, the step of obtaining the component information, the step of confirming whether there is customized information for the software component defined for each service user, and if there is the customized information so that the custom component is performed instead of the existing software component Retrieving custom information, and retrieving existing component information such that the existing software component is performed if there is no custom information.

그리고, 상기 맞춤 정보가 있는지를 확인하는 단계에서는, 상기 맞춤 정보가 SaaS 컨테이너 서버의 캐시에 있는지를 확인하고, 상기 맞춤 정보가 상기 캐시에 있으면 상기 캐시에 있는 맞춤 정보를 가져와 사용하고, 없으면 맞춤 정보 데이터 베이스에서 가져와 사용할 수 있다. In the step of checking whether there is the personalized information, it is determined whether the personalized information is in the cache of the SaaS container server, and if the personalized information is in the cache, the personalized information is retrieved from the cache and used. Can be taken from the database and used.

본 발명의 또 다른 실시예에 따른 SaaS(Software as a Service) 환경에서의 소프트웨어 서비스 제공하기 위한 장치는, 소프트웨어 서비스 사용자로부터 소프트웨어 서비스 사용 요청을 웹을 통하여 수신하는 웹서버, 상기 웹서버에 의하여 수신된 소프트웨어 서비스 사용 요청을 전달받아, 요청된 소프트웨어를 소프트웨어 구성요소 정보에 따라 실행하고, 상기 소프트웨어 실행 결과를 상기 서비스 사용자에게 전달하는 SaaS 컨테이너 서버, 소프트웨어 코드를 보관하며, 상기 SaaS 컨테이너 서버로 상기 소프트웨어 코드를 전달하는 소프트웨어 코드 데이터 베이스, 소프트웨어 실행 시 서비스 사용자 별로 제공될 소프트웨어 구성요소에 대한 맞춤 정보를 저장하는 맞춤 정보 데이터 베이스, 및 상기 서비스 사용자에 관한 사용자 정보를 저장하며, 상기 SaaS 컨테이너 서버가 상기 소프트웨어를 실행하는 경우 상기 소프트웨어에 의해 처리될 정보를 상기 SaaS 컨테이너 서버에 제공하는 사용자 데이터 베이스를 포함하여 구성될 수 있다.Device for providing a software service in a SaaS (Software as a Service) environment according to another embodiment of the present invention, a web server for receiving a software service use request from the software service user via the web, by the web server Receives a software service use request, executes the requested software according to software component information, and stores a SaaS container server and a software code for delivering the software execution result to the service user, and stores the software to the SaaS container server. A software code database for delivering code, a customized information database for storing customized information on software components to be provided for each service user when the software is executed, and user information about the service user, and the SaaS content. You may be a server configured to include a user database provided in the server SaaS container information to be processed by the software when running the software.

여기서, 상기 SaaS 컨테이너 서버는, 상기 소프트웨어 서비스 사용 요청을 전달 받으면, 적어도 하나의 SaaS 런타임 쓰레드(run-time thread)를 생성하며, 상기 SaaS 런타임 쓰레드는 상기 소프트웨어 및 상기 구성요소 정보를 가져오는 명령 을 수행할 수 있다.Here, when the SaaS container server receives the software service use request, the SaaS container server generates at least one SaaS run-time thread, and the SaaS runtime thread executes a command to obtain the software and the component information. Can be done.

또한, 상기 SaaS 컨테이너 서버는, 캐시 메모리를 포함하며, 상기 소프트웨어 서비스 사용 요청을 전달받으면, 요청된 소프트웨어의 코드가 SaaS 컨테이너 서버의 상기 캐시 메모리에 있는지를 확인하며, 및 상기 소프트웨어의 코드가 상기 캐시 메모리에 있으면 상기 캐시 메모리에 있는 소프트웨어 코드를 가져와 사용하고, 없으면 상기 소프트웨어 코드 데이터 베이스에서 가져와 사용할 수 있다.The SaaS container server also includes a cache memory, and upon receiving the software service use request, confirms whether the code of the requested software is in the cache memory of the SaaS container server, and the code of the software is in the cache. If it is in memory, the software code in the cache memory can be taken and used; if not, it can be taken and used in the software code database.

한편, 상기 SaaS 컨테이너 서버는, 상기 맞춤 정보가 상기 캐시 메모리 또는 상기 맞춤 정보 데이터 베이스에 있는지를 확인하며, 및 상기 맞춤 정보가 있다면 기존 소프트웨어 구성 요소 대신 맞춤 구성 요소가 수행되도록 상기 맞춤 정보를 가져오고, 상기 맞춤 정보가 없다면 상기 기존 소프트웨어 구성 요소가 수행되도록 기존 구성요소 정보를 가져올 수 있다. On the other hand, the SaaS container server checks whether the custom information is in the cache memory or the custom information database, and if there is the custom information, imports the custom information so that the custom component is performed instead of the existing software component. If there is no customized information, the existing component information may be imported to perform the existing software component.

그리고, 상기 SaaS 컨테이너 서버는, 상기 맞춤 정보가 상기 SaaS 컨테이너 서버의 캐시 메모리에 있는지를 확인하고, 상기 맞춤 정보가 상기 캐시 메모리에 있으면 상기 캐시 메모리에 있는 맞춤 정보를 가져와 사용하고, 없으면 맞춤 정보 데이터 베이스에서 가져와 사용할 수 있다.The SaaS container server checks whether the personalized information is in the cache memory of the SaaS container server, and, if the personalized information is in the cache memory, obtains and uses the personalized information in the cache memory. It can be taken from the base and used.

기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Specific details of other embodiments are included in the detailed description and the drawings.

상기와 같은 구성을 같은 본 발명의 실시예에 따른 SaaS(Software as a Service) 환경에서의 소프트웨어 서비스 제공 방법에 의하면, 하나의 SaaS 서버에서 여려 종류의 소프트웨어를 수행할 수 있기 때문에 소프트웨어 서비스 제공에 필요한 서버의 수를 줄일 수 있다. 이에 따라 서버 구입 비용, 운용 체제 및 소프트웨어 구입 비용이 줄어들고 전기 소모량 및 관리 비용을 줄일 수 있다. 이에 따라, 낮은 가격에 소프트웨어 서비스를 제공할 수 있다.According to the software service providing method in the SaaS (Software as a Service) environment according to the embodiment of the present invention as described above, it is necessary to provide a software service because several types of software can be performed in one SaaS server You can reduce the number of servers. This reduces server acquisition costs, operating system and software acquisition costs, and reduces electricity consumption and management costs. Accordingly, it is possible to provide a software service at a low price.

또한, 기업 별, 고객 별로 맞춤화된 정보를 이용하여 소프트웨어를 구성하기 대문에 각 기업 별, 고객 별로 맞춤화되고 차별화된 서비스를 제공할 수 있다.In addition, because the software is configured using information customized for each company and customer, it is possible to provide customized and differentiated services for each company and customer.

본 발명의 목적 및 효과, 그리고 그것들을 달성하기 위한 기술적 구성들은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 본 발명을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. The objects and effects of the present invention and the technical configurations for achieving them will be apparent with reference to the embodiments described below in detail with the accompanying drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. The following terms are defined in consideration of the functions of the present invention, and may be changed according to the intentions or customs of the user, the operator, and the like.

그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있다. 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져 야 할 것이다.The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. The present embodiments are merely provided to complete the disclosure of the present invention and to fully inform the scope of the invention to those skilled in the art, and the present invention is defined by the scope of the claims. It will be. Therefore, the definition should be made based on the contents throughout the specification.

본 실시형태의 모듈, 기능 블록들 또는 수단들은 전자 회로, 집적 회로, ASIC (Application Specific Integrated Circuit) 등 공지된 다양한 소자들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수 있다.Modules, functional blocks or means of the present embodiment may be implemented in a variety of known elements, such as electronic circuits, integrated circuits, ASICs (Application Specific Integrated Circuit), each may be implemented separately, or two or more may be integrated into one Can be.

첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계 에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다. Combinations of each block of the accompanying block diagram and each step of the flowchart may be performed by computer program instructions. These computer program instructions may be mounted on a processor of a general purpose computer, special purpose computer, or other programmable data processing equipment such that instructions executed through the processor of the computer or other programmable data processing equipment may not be included in each block or flowchart of the block diagram. It will create means for performing the functions described in each step. These computer program instructions may be stored in a computer usable or computer readable memory that can be directed to a computer or other programmable data processing equipment to implement functionality in a particular manner, and thus the computer usable or computer readable memory. It is also possible for the instructions stored in to produce an article of manufacture containing instruction means for performing the functions described in each block or flow chart step of the block diagram. Computer program instructions It can also be mounted on a computer or other programmable data processing equipment, so a series of operating steps are performed on the computer or other programmable data processing equipment to create a computer-implemented process to perform the computer or other programmable data processing equipment. It is also possible for the instructions to provide steps for performing the functions described in each block of the block diagram and in each step of the flowchart.

또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each block or step may represent a portion of a module, segment or code that includes one or more executable instructions for executing a specified logical function (s). It should also be noted that in some alternative embodiments, the functions noted in the blocks or steps may occur out of order. For example, the two blocks or steps shown in succession may in fact be executed substantially concurrently or the blocks or steps may sometimes be performed in the reverse order, depending on the functionality involved.

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명하기로 한다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Like reference numerals refer to like elements throughout.

도 1은 본 발명의 실시예에 따른 SaaS(Software as a Service) 환경에서의 소프트웨어 서비스 제공하기 위한 장치의 구성 및 서비스가 제공되는 개념을 간략하게 나타낸 블록도이다. 1 is a block diagram briefly illustrating a concept of an apparatus and a service for providing a software service in a SaaS (Software as a Service) environment according to an embodiment of the present invention.

도 1을 참고하면, 본 발명의 실시예에 따른 SaaS(Software as a Service) 환경에서의 소프트웨어 서비스 제공하기 위한 장치는, 소프트웨어 서비스 사용자가 웹브라우저(100)를 이용하여 전송한 소프트웨어 서비스 사용 요청을 웹을 통하여 수신하는 웹서버(200), 웹서버(200)에 의하여 수신된 소프트웨어 서비스 사용 요청을 전달받아, 요청된 소프트웨어를 소프트웨어 구성요소 정보에 따라 실행하고, 소프트웨어 실행 결과를 서비스 사용자에게 전달하는 SaaS 컨테이너 서버(300), 소프트웨어 코드를 보관하며, SaaS 컨테이너 서버(300)로 소프트웨어 코드를 전달하는 소프트웨어 코드 데이터 베이스(400), 소프트웨어 실행 시 서비스 사용자 별로 제공될 소프트웨어 구성요소에 대한 맞춤 정보를 저장하는 맞춤 정보 데이터 베이스(500), 및 사용자 별로 소프트웨어에 의해 처리될 정보를 저장하는 사용자 데이터 베이스(600)를 포함하여 구성된다.Referring to FIG. 1, an apparatus for providing a software service in a SaaS (Software as a Service) environment according to an embodiment of the present invention may include requesting a software service use request transmitted by a software service user using the web browser 100. Receiving a web server 200 and a software service use request received by the web server 200 received through the web, and executes the requested software according to the software component information, and delivers the software execution results to the service user SaaS container server 300, the software code database to store the software code, delivers the software code to the SaaS container server 300, and stores the customized information about the software components to be provided for each service user when the software is executed Customized information database 500, and the software It is configured to include a user database 600 for storing information to be processed.

소프트웨어 서비스 사용자가 웹 브라우저(100)를 통하여 소프트웨어 사용 요청을 웹을 통하여 사용 요청을 보내면, 웹서버(200)는 그 요청을 수신하여 SaaS 컨테이너 서버(300)에 전달한다. 이 때, 웹 브라우저(100)는 광대역 인터넷 웹 브라우저일 수도 있으며, 또는 무선 이동 통신에 의한 휴대용 단말기 전용 웹 브라우저 일 수도 있다. 또한, 웹 뿐만 아니라 각종 유무선 통신 네트워크가 사용될 수 있음은 물론이다.When the software service user sends a software use request through the web browser 100 through the web, the web server 200 receives the request and delivers the request to the SaaS container server 300. In this case, the web browser 100 may be a broadband Internet web browser, or may be a web browser dedicated to a portable terminal by wireless mobile communication. In addition, not only the web but also various wired and wireless communication networks may be used.

SaaS 컨테이너 서버(300)는 서비스 사용 요청을 전달 받으면, 적어도 하나의 SaaS 런타임 쓰레드(run-time thread, 310)를 생성하여, 상기 서비스 사용 요청을 처리하게 한다. SaaS 런타임 쓰레드(310)는 소프트웨어 및 소프트웨어 구성요소 정보를 가져오는 명령을 수행하며, 소프트웨어를 실행하는 명령을 처리한다.When the SaaS container server 300 receives the service use request, the SaaS container server 300 generates at least one SaaS run-time thread 310 to process the service use request. The SaaS runtime thread 310 executes instructions to get software and software component information, and processes instructions to execute software.

여기서, 하나의 SaaS 컨테이너 서버(300) 안에서 SaaS 런타임 쓰레드(310)는 다수가 동작할 수 있다. 각 SaaS 런타임 쓰레드(310)는 동시에 각기 다른 사용자 요청을 처리할 수도 있다. 즉 이와같이, 하나의 서버를 이용하면서도 복수의 명령 및 요청을 수행할 수 있기 때문에 소프트웨어 서비스 제공에 필요한 서버의 수를 줄일 수 있다. 이에 따라 서버 구입 비용, 운용 체제 및 소프트웨어 구입 비용이 줄어들고 전기 소모량 및 관리 비용을 줄일 수 있다.Here, a number of SaaS runtime threads 310 may operate in one SaaS container server 300. Each SaaS runtime thread 310 may simultaneously process different user requests. That is, as described above, since a plurality of commands and requests can be executed while using one server, the number of servers required to provide a software service can be reduced. This reduces server acquisition costs, operating system and software acquisition costs, and reduces electricity consumption and management costs.

한편, SaaS 컨테이너 서버(300)는 캐시 메모리(320)를 포함할 수 있다. SaaS 컨테이너 서버(300)는 소프트웨어 서비스 사용 요청을 전달받으면, 요청된 소프트웨어의 코드가 SaaS 컨테이너 서버(300)의 캐시 메모리(320)에 존재하고 있는지를 확인한다. 만약, 소프트웨어의 코드가 캐시 메모리(320)에 있으면 캐시 메모리(320)에 있는 소프트웨어 코드를 우선적으로 가져와 사용하게 된다. 이렇게 캐시에 소프트웨어 코드가 있는지를 먼저 확인하여 우선적으로 캐시에 있는 소프트웨어 코드를 사용하기 때문에 소프트웨어를 로드하고 처리하는 시간을 단축할 수 있다. Meanwhile, the SaaS container server 300 may include a cache memory 320. When the SaaS container server 300 receives the software service use request, the SaaS container server 300 checks whether the code of the requested software exists in the cache memory 320 of the SaaS container server 300. If the code of the software is in the cache memory 320, the software code in the cache memory 320 is preferentially taken. This ensures that there is software code in the cache first and uses the software code in the cache first, thus reducing the time to load and process the software.

그러나, 요청받은 소프트웨어의 코드가 캐시 메모리(320) 상에 없는 경우에는 SaaS 컨테이너 서버(300)는 소프트웨어 코드 데이터 베이스(400)에서 요청받은 소프트웨어 코드를 가져와 사용한다. However, when the code of the requested software is not on the cache memory 320, the SaaS container server 300 obtains and uses the requested software code from the software code database 400.

소프트웨어 서비스를 제공할 시에 서비스 사용자 별로 선호하거나 주로 사용하는 기능이나 구성이 상이할 수 있다. 따라서, 서비스 사용자 또한 자신이 선호하거나 필요한 기능이나 구성만을 맞춤 정보로서 등록하여 놓을 경우 보다 경제적이고 효율적으로 소프트웨어 서비스를 사용할 수 있는 장점이 있다. 따라서, 본 발명의 실시예에 따른 SaaS 환경에서의 소프트웨어 서비스 제공 장치는, 사용자 별 맞춤 정보 데이터 베이스를 구축하여 사용자 별 맞춤 서비스를 제공한다. When providing a software service, a function or configuration that is preferred or mainly used by service users may be different. Therefore, the service user also has the advantage that the software service can be used more economically and efficiently, if only the user's preferred or necessary functions or configurations are registered as customized information. Therefore, the software service providing apparatus in the SaaS environment according to an embodiment of the present invention provides a user-specific service by building a user-specific information database.

본 발명의 실시예에 따르면, SaaS 컨테이너 서버(300)는 서비스 사용자 별로 커스터마이즈(customize)된 맞춤 정보가 캐시 메모리(320)에 있는지 확인한다. 만약, 맞춤 정보가 캐시 메모리(320)에 있다면, 캐시 메모리(320)에 있는 맞춤 정보를 우선적으로 가져와 사용할 수 있다. 이를 통하여 소프트웨어를 로드하고, 맞춤 구성을 구축하는데 걸리는 시간을 단축할 수 있다. 하지만, 맞춤 정보가 캐시 메모리(320) 상에 없는 경우에는 SaaS 컨테이너 서버(300)는 맞춤 정보 데이터 베이스(500)에서 맞춤 정보를 가져와 사용한다. According to an embodiment of the present invention, the SaaS container server 300 checks whether the cache information 320 has customized information for each service user. If the customization information is in the cache memory 320, the customization information in the cache memory 320 may be obtained and used first. This reduces the time it takes to load software and build custom configurations. However, when the personalized information is not on the cache memory 320, the SaaS container server 300 obtains and uses the personalized information from the personalized information database 500.

만약, 캐시 메모리(320) 및 맞춤 정보 데이터 베이스(500)에도 맞춤 정보가 없다면, SaaS 컨테이너 서버(300)는 기존에 설정되어 있는(기본구성) 소프트웨어 구성 요소가 수행되도록 설정한다.  If the cache memory 320 and the customized information database 500 do not have the customized information, the SaaS container server 300 sets the existing software component to be executed.

한편, 사용자 데이터 베이스(600)는 사용자 별로 소프트웨어에 의해 처리될 정보를 저장하고 있다. SaaS 컨테이너 서버(300)가 소프트웨어를 실행하는 경우, 필요한 정보를 사용자 정보 사용자 데이터 베이스(600)로부터 읽어와 이를 이용하여 소프트웨어를 실행한다.Meanwhile, the user database 600 stores information to be processed by software for each user. When the SaaS container server 300 executes the software, necessary information is read from the user information user database 600 to execute the software using the same.

이하에서는 상기와 같은 구성을 갖는 본 발명의 실시예에 따른 SaaS 환경에서의 소프트웨어 서비스 제공 장치에서 수행되는 SaaS 환경에서의 소프트웨어 서비스 제공 방법을 설명하도록 한다.Hereinafter, a method of providing a software service in a SaaS environment performed by a software service providing apparatus in a SaaS environment according to an embodiment of the present invention having the above configuration will be described.

도 2는 본 발명의 실시예에 따른 SaaS 환경에서의 소프트웨어 서비스 제공 방법의 흐름을 나타낸 흐름도이다. 2 is a flowchart illustrating a method of providing a software service in a SaaS environment according to an embodiment of the present invention.

도 2를 참조하면, 웹서버(200)가 먼저 소프트웨어 서비스 사용자가 웹 브라우저를 이용하여(100) 발송한 소프트웨어 서비스 사용 요청을 수신받는다(S201). 2, the web server 200 first receives a software service use request sent by a software service user 100 using a web browser (S201).

그러면, SaaS 컨테이너 서버(300)는 웹서버(200)로부터 소프트웨어 서비스 사용 요청을 전달받아서, 소프트웨어 서비스 사용 요청에 해당하는 소프트웨어를 가져오는 작업을 수행한다. 이때, SaaS 컨테이너 서버(300)는 먼저 요청한 소프트 웨어가 캐시(320)에 있는지를 확인한다(S202). Then, the SaaS container server 300 receives the software service use request from the web server 200, and performs a task of bringing the software corresponding to the software service use request. At this time, the SaaS container server 300 first checks whether the requested software is in the cache 320 (S202).

만약 소프트웨어가 캐시(320)에 없다면 소프트웨어 코드 데이터 베이스(400)으로부터 요청받은 소프트웨어를 찾아서 가져온다(S203), If the software does not exist in the cache 320, the software requested from the software code database 400 is found and brought (S203).

만약, 소프트웨어가 캐시(320)에 있다면, 캐시에 존재하고 있는 소프트웨어 코드를 사용한다.If the software is in the cache 320, use the software code that exists in the cache.

그리고, SaaS 컨테이너 서버(300)는 소프트웨어 서비스 제공 시 수행되는 소프트웨어 구성요소 정보를 가져오는 단계를 수행한다. 즉, 먼저 서비스 사용자 별로 정의된 소프트웨어 구성요소에 대한 맞춤 정보가 캐시에 있는지를 확인한다(S204). 만약, 캐시(320)에 없다면, 맞춤 정보 데이터 베이스(500)에서 맞춤 정보를 읽어온다(S205). 구성요소 정보에 따른 소프트웨어 수행 절차에 대해서는 이하에서 좀 더 자세하게 설명하도록 한다. In addition, the SaaS container server 300 performs a step of obtaining software component information that is performed when providing a software service. That is, first, it is checked whether personalized information about software components defined for each service user is in the cache (S204). If it is not in the cache 320, the customized information is read from the customized information database 500 (S205). The software execution procedure according to the component information will be described in more detail below.

도 3은 본 발명의 실시예에 따른 SaaS 환경에서의 소프트웨어 서비스 제공 방법에 있어서 구성요소 정보에 따른 소프트웨어 수행 절차를 도시한 흐름도이다. 3 is a flowchart illustrating a software execution procedure according to component information in a software service providing method in a SaaS environment according to an embodiment of the present invention.

도 3을 참조하면, 소프트웨어 수행 요청이 오면(S301) 앞서 설명한 S204 단계 및 S205 단계에서처럼 기존 소프트웨어 구성요소를 대체하는 서비스 사용자에게 맞춤화된 구성요소 정보가 있는지를 확인한다(S302). Referring to FIG. 3, when a software execution request comes (S301), it is checked whether there is component information customized for a service user who replaces an existing software component as in the above-described steps S204 and S205 (S302).

만약, 캐시(320) 또는 맞춤 정보 데이터 베이스(500)에 맞춤 정보가 있다면, 기존 소프트웨어 구성요소 대신 맞춤 구성 요소가 수행되도록 맞춤 정보에 따라 소프트웨어 실행을 진행한다(S303, S305).If there is customized information in the cache 320 or the customized information database 500, the software is executed according to the customized information so that the customized component is performed instead of the existing software component (S303 and S305).

하지만, 캐시(320) 또는 맞춤 정보 데이터 베이스(500)에 맞춤 정보가 없다 면, 기존 소프트웨어 구성에 따라 소프트웨어 실행이 진행되도록 한다(S304, S305). However, if there is no customized information in the cache 320 or the customized information database 500, the software execution proceeds according to the existing software configuration (S304, S305).

한편, 도 3에서 설명한 구성요소 정보를 가져오는 절차를 수행한 경우, 구성요소 정보에 따라 소프트웨어 서비스를 수행한다(S206). On the other hand, when the procedure of obtaining the component information described in FIG. 3 is performed, the software service is performed according to the component information (S206).

그리고 사용자 데이터 베이스(600)로부터 서비스 사용자 데이터를 가져와(S207), 이를 이용하여 소프트웨어를 수행하고, 서비스 사용자에게 소프트웨어 수행 결과를 전송한다(S208). In addition, the service user data is obtained from the user database 600 (S207), the software is executed using the same, and the software execution result is transmitted to the service user (S208).

이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 예를 들어 당업자는 각 구성요소의 재질, 크기 등을 적용 분야에 따라 변경하거나, 개시된 실시형태들을 조합 또는 치환하여 본 발명의 실시예에 명확하게 개시되지 않은 형태로 실시할 수 있으나, 이 역시 본 발명의 범위를 벗어나지 않는 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것으로 한정적인 것으로 이해해서는 안 되며, 이러한 변형된 실시예들은 본 발명의 특허청구범위에 기재된 기술사상에 포함된다고 하여야 할 것이다.Although the embodiments of the present invention have been described above with reference to the accompanying drawings, those skilled in the art to which the present invention pertains may implement the present invention in other specific forms without changing the technical spirit or essential features thereof. I can understand that. For example, those skilled in the art can change the material, size, etc. of each component according to the application field, or combine or replace the disclosed embodiments in a form that is not clearly disclosed in the embodiments of the present invention, but this also It does not depart from the scope of the invention. Therefore, the above-described embodiments are to be considered in all respects as illustrative and not restrictive, and such modified embodiments should be included in the technical spirit described in the claims of the present invention.

도 1은 본 발명의 실시예에 따른 SaaS(Software as a Service) 환경에서의 소프트웨어 서비스 제공하기 위한 장치의 구성 및 서비스가 제공되는 개념을 간략하게 나타낸 블록도이다. 1 is a block diagram briefly illustrating a concept of an apparatus and a service for providing a software service in a SaaS (Software as a Service) environment according to an embodiment of the present invention.

도 2는 본 발명의 실시예에 따른 SaaS 환경에서의 소프트웨어 서비스 제공 방법의 흐름을 나타낸 흐름도이다. 2 is a flowchart illustrating a method of providing a software service in a SaaS environment according to an embodiment of the present invention.

도 3은 본 발명의 실시예에 따른 SaaS 환경에서의 소프트웨어 서비스 제공 방법에 있어서 맞춤 정보에 따른 소프트웨어 수행 절차를 도시한 흐름도이다. 3 is a flowchart illustrating a software execution procedure according to customized information in a method for providing a software service in a SaaS environment according to an embodiment of the present invention.

Claims (10)

SaaS(Software as a Service) 환경에서의 소프트웨어 서비스 제공 방법에 있어서,In the software service providing method in a software as a service (SaaS) environment, 소프트웨어 서비스 사용자로부터 소프트웨어 서비스 사용 요청을 수신하는 단계,Receiving a request to use a software service from a software service user, 상기 소프트웨어 서비스 사용 요청에 해당하는 소프트웨어를 가져오는 단계,Obtaining software corresponding to the software service use request, 상기 소프트웨어 서비스 제공 시 수행되는 소프트웨어 구성요소 정보를 가져오는 단계,Retrieving software component information performed when the software service is provided; 상기 구성요소 정보에 따라 상기 소프트웨어를 실행하는 단계,Executing the software according to the component information; 상기 소프트웨어에 의해 처리될 정보를 저장해놓은 사용자 정보 데이터 베이스로부터 상기 소프트웨어에 의해 처리될 정보를 읽어오는 단계, 및Reading information to be processed by the software from a user information database storing information to be processed by the software, and 상기 소프트웨어에 의해 처리될 정보를 이용하여 상기 소프트웨어를 실행하고, 실행 결과를 상기 서비스 사용자에게 전송하는 단계를 포함하는Executing the software using information to be processed by the software, and transmitting the execution result to the service user; SaaS 환경에서의 소프트웨어 서비스 제공 방법.How to provide software service in SaaS environment. 제1항에 있어서,The method of claim 1, 상기 소프트웨어를 가져오는 단계는,Importing the software is 상기 소프트웨어 서비스 사용 요청을 수신하면, SaaS 컨테이너 서버에서 적 어도 하나의 SaaS 런타임 쓰레드(run-time thread)를 생성하며,Upon receiving the software service use request, at least one SaaS run-time thread is created in the SaaS container server. 상기 SaaS 런타임 쓰레드는 상기 소프트웨어 및 상기 구성요소 정보를 가져오는 명령을 수행하는The SaaS runtime thread executes an instruction to fetch the software and the component information. SaaS 환경에서의 소프트웨어 서비스 제공 방법.How to provide software service in SaaS environment. 제1항에 있어서,The method of claim 1, 상기 소프트웨어를 소프트웨어 코드 데이터 베이스에서 가져오는 단계는,Importing the software from the software code database, 상기 소프트웨어 서비스 사용 요청을 수신하면, 상기 소프트웨어의 코드가 SaaS 컨테이너 서버의 캐시에 있는지를 확인하는 단계, 및Upon receipt of the software service use request, checking whether the code of the software is in a cache of a SaaS container server, and 상기 소프트웨어의 코드가 상기 캐시에 있으면 상기 캐시에 있는 소프트웨어 코드를 가져와 사용하고, 없으면 소프트웨어 코드 데이터 베이스에서 가져와 사용하는 단계를 포함하는If the code of the software is in the cache, fetching and using the software code in the cache; if not, fetching and using the software code from the software code database. SaaS 환경에서의 소프트웨어 서비스 제공 방법.How to provide software service in SaaS environment. 제1항에 있어서,The method of claim 1, 상기 구성요소 정보를 가져오는 단계는,Obtaining the component information, 상기 서비스 사용자 별로 정의된 소프트웨어 구성요소에 대한 맞춤 정보가 있는지를 확인하는 단계, 및Checking whether there is customized information about the software component defined for each service user; and 상기 맞춤 정보가 있다면 기존 소프트웨어 구성 요소 대신 맞춤 구성 요소가 수행되도록 상기 맞춤 정보를 가져오고, 상기 맞춤 정보가 없다면 상기 기존 소프트웨어 구성 요소가 수행되도록 기존 구성요소 정보를 가져오는 단계를 포함하는Fetching the customized information such that the custom component is performed instead of the existing software component if the customized information is present, and importing the existing component information such that the existing software component is performed if the customized information is absent. SaaS 환경에서의 소프트웨어 서비스 제공 방법.How to provide software service in SaaS environment. 제4항에 있어서,5. The method of claim 4, 상기 맞춤 정보가 있는지를 확인하는 단계는,Checking whether the personalized information is present, 상기 맞춤 정보가 SaaS 컨테이너 서버의 캐시에 있는지를 확인하고,Verify that the personalized information is in the cache of the SaaS container server, 상기 맞춤 정보가 상기 캐시에 있으면 상기 캐시에 있는 맞춤 정보를 가져와 사용하고, 없으면 맞춤 정보 데이터 베이스에서 가져와 사용하는Retrieve and use custom information in the cache if the custom information is in the cache; SaaS 환경에서의 소프트웨어 서비스 제공 방법.How to provide software service in SaaS environment. SaaS(Software as a Service) 환경에서의 소프트웨어 서비스 제공하기 위한 장치에 있어서,An apparatus for providing a software service in a software as a service (SaaS) environment, 소프트웨어 서비스 사용자로부터 소프트웨어 서비스 사용 요청을 웹을 통하여 수신하는 웹서버,A web server for receiving a software service use request from a software service user through the web; 상기 웹서버에 의하여 수신된 소프트웨어 서비스 사용 요청을 전달받아, 요청된 소프트웨어를 소프트웨어 구성요소 정보에 따라 실행하고, 상기 소프트웨어 실행 결과를 상기 서비스 사용자에게 전달하는 SaaS 컨테이너 서버, A SaaS container server receiving the software service use request received by the web server, executing the requested software according to software component information, and delivering the software execution result to the service user; 소프트웨어 코드를 보관하며, 상기 SaaS 컨테이너 서버로 상기 소프트웨어 코드를 전달하는 소프트웨어 코드 데이터 베이스,A software code database that stores software code and delivers the software code to the SaaS container server; 소프트웨어 실행 시 서비스 사용자 별로 제공될 소프트웨어 구성요소에 대한 맞춤 정보를 저장하는 맞춤 정보 데이터 베이스, 및A custom information database that stores custom information about software components to be provided for each service user when the software is run, and 상기 소프트웨어에 의해 처리될 정보를 저장하며, 상기 SaaS 컨테이너 서버가 상기 소프트웨어를 실행하는 경우, 상기 소프트웨어에 의해 처리될 정보를 상기 SaaS 컨테이너 서버에 제공하는 사용자 데이터 베이스를 포함하는A user database that stores information to be processed by the software and provides the SaaS container server with information to be processed by the software when the SaaS container server executes the software. SaaS 환경에서의 소프트웨어 서비스 제공하기 위한 장치.Apparatus for providing software services in SaaS environment. 제6항에 있어서,The method of claim 6, 상기 SaaS 컨테이너 서버는, The SaaS container server, 상기 소프트웨어 서비스 사용 요청을 전달 받으면, 적어도 하나의 SaaS 런타임 쓰레드(run-time thread)를 생성하며,When the software service use request is received, at least one SaaS run-time thread is created. 상기 SaaS 런타임 쓰레드는 상기 소프트웨어 및 상기 구성요소 정보를 가져오는 명령을 수행하는The SaaS runtime thread executes an instruction to fetch the software and the component information. SaaS 환경에서의 소프트웨어 서비스 제공하기 위한 장치.Apparatus for providing software services in SaaS environment. 제6항에 있어서,The method of claim 6, 상기 SaaS 컨테이너 서버는, The SaaS container server, 캐시 메모리를 포함하며, Cache memory, 상기 소프트웨어 서비스 사용 요청을 전달받으면, 요청된 소프트웨어의 코드가 SaaS 컨테이너 서버의 상기 캐시 메모리에 있는지를 확인하며, Upon receiving the software service use request, confirms that the code of the requested software is in the cache memory of the SaaS container server, 상기 소프트웨어의 코드가 상기 캐시 메모리에 있으면 상기 캐시 메모리에 있는 소프트웨어 코드를 가져와 사용하고, 없으면 상기 소프트웨어 코드 데이터 베이스에서 가져와 사용하는If the code of the software is in the cache memory, the software code in the cache memory is taken and used; otherwise, the software code is taken from the software code database. SaaS 환경에서의 소프트웨어 서비스 제공하기 위한 장치.Apparatus for providing software services in SaaS environment. 제6항에 있어서,The method of claim 6, 상기 SaaS 컨테이너 서버는, The SaaS container server, 상기 맞춤 정보가 상기 캐시 메모리 또는 상기 맞춤 정보 데이터 베이스에 있는지를 확인하며,Verify that the fit information is in the cache memory or the fit information database, 상기 맞춤 정보가 있다면 기존 소프트웨어 구성 요소 대신 맞춤 구성 요소가 수행되도록 상기 맞춤 정보를 가져오고, 상기 맞춤 정보가 없다면 상기 기존 소프트웨어 구성 요소가 수행되도록 기존 구성요소 정보를 가져오는Bringing the customization information to perform a custom component instead of an existing software component, if the customization information is present; and importing the existing component information to perform the existing software component if the customization information is not present. SaaS 환경에서의 소프트웨어 서비스 제공하기 위한 장치.Apparatus for providing software services in SaaS environment. 제9항에 있어서, 10. The method of claim 9, 상기 SaaS 컨테이너 서버는, The SaaS container server, 상기 맞춤 정보가 상기 SaaS 컨테이너 서버의 캐시 메모리에 있는지를 확인하고,Verify that the personalized information is in cache memory of the SaaS container server, 상기 맞춤 정보가 상기 캐시 메모리에 있으면 상기 캐시 메모리에 있는 맞춤 정보를 가져와 사용하고, 없으면 맞춤 정보 데이터 베이스에서 가져와 사용하는If the custom information is in the cache memory, retrieves and uses the custom information in the cache memory; otherwise, retrieves and uses the custom information database. SaaS 환경에서의 소프트웨어 서비스 제공하기 위한 장치.Apparatus for providing software services in SaaS environment.
KR1020090123206A 2009-12-11 2009-12-11 Software execution method in saas(software as a service) environment KR20110066519A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090123206A KR20110066519A (en) 2009-12-11 2009-12-11 Software execution method in saas(software as a service) environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090123206A KR20110066519A (en) 2009-12-11 2009-12-11 Software execution method in saas(software as a service) environment

Publications (1)

Publication Number Publication Date
KR20110066519A true KR20110066519A (en) 2011-06-17

Family

ID=44399336

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090123206A KR20110066519A (en) 2009-12-11 2009-12-11 Software execution method in saas(software as a service) environment

Country Status (1)

Country Link
KR (1) KR20110066519A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101334891B1 (en) * 2012-02-09 2013-11-29 주식회사 알투소프트 System for providing financiail risk management service in software as a service

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101334891B1 (en) * 2012-02-09 2013-11-29 주식회사 알투소프트 System for providing financiail risk management service in software as a service

Similar Documents

Publication Publication Date Title
CN108279932B (en) Method and device for dynamically configuring user interface of mobile terminal
US11663175B2 (en) Deployment of applications conforming to application data sharing and decision service platform schema
US8843889B2 (en) Managing application template artifacts in a networked computing environment
KR20110066520A (en) Workflow customization method in saas(software as a service) environment
US8640085B2 (en) Generating a service component architecture (SCA) module with service oriented architecture (SOA) model elements
US11042366B2 (en) Managing software programs
US20140344808A1 (en) Dynamically modifying workload patterns in a cloud
US9754242B2 (en) Deployment mechanism for non-versioning business process artifacts
CN106095522A (en) A kind of method realizing distributed compilation and distributed compilation system
CN106095523A (en) A kind of method and system realizing Android compiling isolation
US8978107B2 (en) Method and system for enabling non-intrusive multi tenancy enablement
US20190377662A1 (en) Identifying a source file for use in debugging compiled code
US9665656B2 (en) Automated service solution delivery
CN109634571A (en) A kind of API method of combination, storage medium, electronic equipment and system
CN112612452B (en) API platform realization method, device, equipment and storage medium
Kim Development of Mobile Cloud Applications using UML.
CN106600082A (en) Processing method and device of task in service system, and service system construction system
US20110289424A1 (en) Secure application of custom resources in multi-tier systems
CN114443171A (en) Configurable service platform and configurable service implementation method
GB2531251A (en) Reduction of management complexity of an information technology system
US9336361B2 (en) Feature license-related repair/replacement processes and credit handling
KR20110066519A (en) Software execution method in saas(software as a service) environment
CN106293746A (en) The update method of browser script and system
CN109901934A (en) The method and apparatus for generating interface help document
US9069560B2 (en) Operational model creation from SOA solution architecture

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination