KR20110051061A - 웹 기반 소프트웨어 배포 시스템 및 방법 - Google Patents

웹 기반 소프트웨어 배포 시스템 및 방법 Download PDF

Info

Publication number
KR20110051061A
KR20110051061A KR1020090107712A KR20090107712A KR20110051061A KR 20110051061 A KR20110051061 A KR 20110051061A KR 1020090107712 A KR1020090107712 A KR 1020090107712A KR 20090107712 A KR20090107712 A KR 20090107712A KR 20110051061 A KR20110051061 A KR 20110051061A
Authority
KR
South Korea
Prior art keywords
package
web
software
based software
information
Prior art date
Application number
KR1020090107712A
Other languages
English (en)
Other versions
KR101262234B1 (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 KR1020090107712A priority Critical patent/KR101262234B1/ko
Publication of KR20110051061A publication Critical patent/KR20110051061A/ko
Application granted granted Critical
Publication of KR101262234B1 publication Critical patent/KR101262234B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating

Abstract

웹 기반 소프트웨어의 유통을 위해 패키지를 생성, 배포, 설치하도록 하는 웹 기반 소프트웨어 배포 시스템 및 방법이 제시된다. 제시된 웹 기반 소프트웨어 배포 시스템은, 웹 기반 소프트웨어를 생성하는 개발부; 및 입력되는 패키지 정보에 근거하여 개발부에서 생성된 웹 기반 소프트웨어를 소프트웨어 패키지로 패키징하고, 소프트웨어 패키지를 웹 기반 소프트웨어 배포 장치에게로 전송하는 패키지 생성부를 구비하는 웹 기반 소프트웨어 개발 장치를 포함한다.

Description

웹 기반 소프트웨어 배포 시스템 및 방법{System and method for distributing web-based software}
본 발명은 웹 기반 소프트웨어 배포 시스템 및 방법에 관한 것으로, 더욱 상세하게는 웹 기반 소프트웨어를 웹을 통해 배포하는 웹 기반 소프트웨어 배포 시스템 및 방법에 관한 것이다.
본 발명은 지식경제부의 IT성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2007-S-015-03, 과제명: SaaS 기반 이동형 개인 맞춤 사무환경 구축 기술 개발].
사용자는 개인 사용자 컴퓨터에 설치된 소프트웨어를 이용하여 다양한 작업을 진행한다. 이때, 개인 사용자 컴퓨터에서 동작하는 소프트웨어는 데스크톱 소프트웨어와 웹 기반 소프트웨어로 구분할 수 있다. 데스크톱 소프트웨어는 마이크로소프트 워드, 아도비 포토샵과 같이 개인 사용자 컴퓨터에 설치되어 네트워크에 연결되지 않은 상태에서도 사용할 수 있는 소프트웨어이다. 웹 기반 소프트웨어는 블로그, 위키 등과 같이 네트워크에 연결되어 있는 상태에서만 사용할 수 있는 소프트웨어이다. 이때, 웹 기반 소프트웨어는 개인 사용자 컴퓨터에 최초 실행시 설치 되어 구동되거나, 실행시마다 설치되어 구동한다.
데스크톱 소프트웨어는 일반적으로 인스톨러를 통해서 설치된다. 인스톨러가 담긴 시디롬을 컴퓨터에 삽입하고 인스톨러를 실행하면 실행에 관련된 프로그램들이 컴퓨터의 하드디스크에 설치된다. 웹 기반 소프트웨어는 동작하기 위해서는 웹 서버, 웹 프로그래밍 언어 그리고 데이터베이스 등이 기본적으로 필요하다. 또한, 동작에 필요한 설치와 설정은 관리자가 직접하는 것이 일반적이다.
보통 서버 컴퓨터에 웹 기반 소프트웨어를 설치하지만 개인용 컴퓨터에 웹 기반소프트웨어를 설치하여 개인용으로 사용하거나 개인용 서버를 구축하는 요구도 많다. 하지만, 여러 다양한 웹 기반 소프트웨어가 있고 새로운 버전으로 변경되며 이들을 자동으로 설치할 수 있는 방법을 제공하지 않는다.
따라서, 웹 기반 소프트웨어의 경우 새로운 버전이 나올 때마다 사용자가 직접확인하여 해당 소프트웨어를 설치 또는 업그레이드해야하는 문제점이 있다.
또한, 웹 기반 소프트웨어의 경우 소프트웨어의 설치, 업그레이드, 삭제를 직접 수행해야 하기 때문에 개인 사용자 컴퓨터에 설치된 웹 기반 소프트웨어의 관리가 어려운 문제점이 있다.
본 발명은 상기한 종래의 문제점을 감안하여 제안된 것으로서, 그 목적은 웹 기반 소프트웨어의 유통을 위해 패키지를 생성, 배포, 설치하도록 하는 웹 기반 소프트웨어 배포 시스템 및 방법을 제공함에 있다.
상기한 목적을 달성하기 위하여 본 발명에 웹 기반 소프트웨어 개발 장치는, 웹 기반 소프트웨어 배포 장치와 네트워크를 통해 연결할 수 있는 웹 기반 소프트웨어 개발 장치에 있어서, 웹 기반 소프트웨어를 생성하는 개발부; 및 입력되는 패키지 정보에 근거하여 개발부에서 생성된 웹 기반 소프트웨어를 소프트웨어 패키지로 패키징하고, 소프트웨어 패키지를 웹 기반 소프트웨어 배포 장치에게로 전송하는 패키지 생성부를 포함한다.
소프트웨어 패키지는 패키지 정보, 설치 파일, 소프트웨어 패키지의 설치시 동반되어 설치되는 의존성 패키지에 대한 의존성 정보를 포함한다.
소프트웨어 패키지는 웹 기반 소프트웨어에 사용되는 데이터베이스에 대한 데이터베이스 정보 및 데이터베이스의 업그레이드를 위한 스키마 정보를 포함한다.
상기한 목적을 달성하기 위하여 본 발명에 웹 기반 소프트웨어 배포 장치는, 웹 기반 소프트웨어 개발 장치 및 웹 기반 소프트웨어 사용 장치와 네트워크를 통해 연결할 수 있는 웹 기반 소프트웨어 배포 장치에 있어서, 웹 기반 소프트웨어 개발 장치로부터 수신된 소프트웨어 패키지를 저장하는 패키지 저장부; 수신된 소프트웨어 패키지의 패키지 정보를 근거로 수신한 소프트웨어 패키지를 패키지 리스트에 등록하는 패키지 등록부; 및 웹 기반 소프트웨어 사용 장치에게로 패키지 리스트를 제공하고, 패키지 리스트에 포함된 소프트웨어 패키지 중에서 웹 기반 소프트웨어 사용 장치에 의해 선택된 소프트웨어 패키지를 패키지 저장부로부터 검출하여 웹 기반 소프트웨어 사용 장치에게로 제공하는 배포 처리부를 포함한다.
패키지 저장부는 소프트웨어 패키지와 동반되어 설치되는 의존성 패키지를 더 저장하고, 배포 처리부는 웹 기반 소프트웨어 사용 장치에 의해 선택된 소프트웨어 패키지의 의존성 정보에 근거하여 패키지 저장부로부터 해당 의존성 패키지를 검출하여 웹 기반 소프트웨어 사용 장치에게로 제공한다.
배포 처리부는 패키지 저장부에 저장된 소프트웨어 패키지의 스키마 정보를 근거로 해당 소프트웨어 패키지에 사용되는 데이터베이스의 업그레이드 정보를 웹 기반 소프트웨어 사용 장치에게로 제공한다.
상기한 목적을 달성하기 위하여 본 발명에 웹 기반 소프트웨어 배포 방법은, 웹 기반 소프트웨어 개발 장치에 의해, 입력되는 패키지 정보에 근거하여 개발된 웹 기반 소프트웨어를 소프트웨어 패키지로 패키징하는 패키징 단계; 웹 기반 소프트웨어 배포 장치에 의해, 패키징 단계에서 패키징된 소프트웨어 패키지를 등록하는 등록단계; 및 웹 기반 소프트웨어 배포 장치에 의해, 패키지 등록단계에서 등록된 소프트웨어 패키지 중에서 웹 기반 소프트웨어 사용 장치에 의해 선택된 소프트 웨어 패키지를 해당 웹 기반 소프트웨어 사용 장치에게로 제공하여 설치하는 설치단계를 포함한다.
설치단계에서는, 웹 기반 소프트웨어 배포 장치에 의해, 설치된 소프트웨어 패키지의 의존성 정보에 해당하는 의존성 패키지를 웹 기반 소프트웨어 사용 장치에게로 제공하여 설치한다.
웹 기반 소프트웨어 배포 장치에 의해, 설치단계에서 설치된 소프트웨어 패키지에 사용되는 데이터베이스의 스키마 정보에 해당하는 업그레이드 정보를 웹 기반 소프트웨어 사용 장치에게로 제공하여 설치된 웹 기반 소프트웨어 사용 장치에 설치된 데이터베이스를 업그레이드하는 업그레이드 단계를 더 포함한다.
패키징 단계에서는, 웹 기반 소프트웨어 개발 장치에 의해, 개발된 웹 기반 소프트웨어를 패키지 정보, 설치 파일, 의존성 정보, 스키마 정보를 포함하는 소프트웨어 패키지로 패키징한다.
본 발명에 의하면, 웹 기반 소프트웨어 배포 시스템 및 방법은 개발된 웹 기반 소프트웨어를 손쉽게 배포할 수 있다.
또한, 웹 기반 소프트웨어 배포 시스템 및 방법은 설치/설정 기능을 제공함으로써 여러 웹 기반 소프트웨어를 더욱 쉽게 관리할 수 있다.
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명 의 가장 바람직한 실시 예를 첨부 도면을 참조하여 설명하기로 한다. 우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
이하, 본 발명의 실시예에 따른 웹 기반 소프트웨어 배포 시스템을 첨부된 도면을 참조하여 상세하게 설명하면 아래와 같다. 도 1은 본 발명의 실시 예에 따른 웹 기반 소프트웨어 배포 시스템의 구성을 설명하기 위한 도면이고, 도 2는 도 1의 웹 기반 소프트웨어 개발 장치를 설명하기 위한 블록도이고, 도 3은 도 1의 웹 기반 소프트웨어 배포 장치를 설명하기 위한 블록도이고, 도 4는 도 1의 웹 기반 소프트웨어 사용 장치를 설명하기 위한 블록도이다.
도 1에 도시된 바와 같이, 웹 기반 소프트웨어 배포 시스템은 웹 기반 소프트웨어 개발 장치(100), 웹 기반 소프트웨어 배포 장치(200), 웹 기반 소프트웨어 사용 장치(300)를 포함한다. 여기서, 도 1에는 각 장치가 하나씩 포함하여 구성되는 것으로 도시하였으나 이에 한정되지 않는다.
웹 기반 소프트웨어 개발 장치(100)는 네트워크(400)를 통해 웹 기반 소프트웨어 배포 장치(200)와 연결되고, 웹 기반 소프트웨어를 개발하기 위한 도구를 개발자에게 제공한다. 웹 기반 소프트웨어 개발 장치(100)는 개발된 웹 기반 소프트 웨어를 소프트웨어 패키지로 패키징 처리한다. 이를 위해, 웹 기반 소프트웨어 개발 장치(100)는 도 2에 도시된 바와 같이, 입력부(120), 개발부(140), 패키지 생성부(160)를 포함하여 구성된다. 입력부(120)는 웹 기반 소프트웨어의 개발을 위한 코딩정보, 웹 기반 소프트웨어의 패키징을 위한 패키지 정보를 입력받는다. 개발부(140)는 웹 기반 소프트웨어를 개발하기 위한 도구(예컨대, 개발 툴)를 개발자에게 제공하고, 입력부(120)를 통해 입력되는 코딩정보에 근거하여 웹 기반 소프트웨어를 생성한다. 패키지 생성부(160)는 입력부(120)를 통해 입력되는 패키지 정보에 근거하여 개발부(140)에서 생성된 웹 기반 소프트웨어를 소프트웨어 패키지로 패키징하고, 소프트웨어 패키지를 웹 기반 소프트웨어 배포 장치(200)에게로 전송한다.
이때, 패키지 생성부(160)는 개발된 웹 기반 소프트웨어를 패키지 정보, 설치 파일, 소프트웨어 패키지의 설치시 동반되어 설치되는 의존성 패키지에 대한 의존성 정보를 포함하는 소프트웨어 패키지로 패키징한다. 즉, 패키지 생성부(160)는 해당 웹 기반 소프트웨어의 이름, 버전, 개발자, 라이선스, 카테고리 등으로 구성되는 패키지 정보, 및 해당 소프트웨어 패키지가 실행되기 위해 필요한 또 다른 의존성 패키지에 대한 정보인 의존성 정보를 포함하는 소프트웨어 패키지로 패키징한다.
패키지 생성부(160)는 웹 기반 소프트웨어에 사용되는 데이터베이스에 대한 데이터베이스 정보 및 데이터베이스의 업그레이드를 위한 스키마 정보를 더 포함하는 소프트웨어 패키지로 패키징할 수도 있다. 즉, 패키지 생성부(160)는 웹 기반 소프트웨어에서 데이터베이스를 사용하는 경우 해당 데이터베이스의 경로, 파일명 등으로 구성되는 데이터베이스 정보, 및 새로운 기능을 가진 새 버전의 소프트웨어 패키지가 설치될 때 데이터베이스의 업그레이드를 위한 정보로 구성되는 스키마 정보를 더 포함하는 소프트웨어 패키지로 패키징한다.
웹 기반 소프트웨어 배포 장치(200)는 네트워크(400)를 통해 웹 기반 소프트웨어 개발 장치(100) 및 웹 기반 소프트웨어 사용 장치(300)와 연결되고, 기반 소프트웨어 개발 장치에서 개발되어 패키징된 소프트웨어 패키지를 웹 기반 소프트웨어 사용 장치(300)에 설치/제거/업그레이드한다. 여기서, 웹 기반 소프트웨어 배포 장치(200)는 웹 기반 소프트웨어 개발 장치(100)로부터 수신한 소프트웨어 패키지를 패키지 리스트에 등록하고, 등록된 소프트웨어 패키지를 저장한다. 웹 기반 소프트웨어 배포 장치(200)는 패키지 리스트에 포함된 소프트웨어 패키지 중에서 웹 기반 소프트웨어 사용 장치(300)에 의해 선택된 소프트웨어 패키지를 해당 웹 기반 소프트웨어 사용 장치(300)로 제공한다. 이를 위해, 웹 기반 소프트웨어 배포 장치(200)는 도 3에 도시된 바와 같이, 패키지 저장부(220), 패키지 등록부(240), 배포 처리부(260)를 포함하여 구성된다. 패키지 저장부(220)는 웹 기반 소프트웨어 개발 장치(100)로부터 수신된 소프트웨어 패키지를 저장한다. 즉, 패키지 저장부(220)는 패키지 정보, 의존성 정보, 스키마 정보 등을 포함하는 소프트웨어 패키지를 웹 기반 소프트웨어 개발 장치(100)로부터 수신하여 저장한다. 패키지 저장부(220)는 소프트웨어 패키지와 동반되어 의존성 패키지를 더 저장할 수도 있다. 즉, 패키지 저장부(220)는 웹 기반 소프트웨어 사용 장치(300)에 소프트웨어 패키 지의 설치시 해당 소프트웨어 패키지와 함께 설치되는 다른 패키지인 의존성 패키지를 더 저장한다. 패키지 등록부(240)는 웹 기반 소프트웨어 개발 장치(100)로부터 수신된 소프트웨어 패키지의 패키지 정보를 근거로 수신한 소프트웨어 패키지를 패키지 리스트에 등록한다. 배포 처리부(260)는 패키지 등록부(240)에서 관리하는 패키지 리스트를 웹 기반 소프트웨어 사용 장치(300)에게로 제공하고, 패키지 리스트에 포함된 소프트웨어 패키지 중에서 웹 기반 소프트웨어 사용 장치(300)에 의해 선택된 소프트웨어 패키지를 패키지 저장부(220)로부터 검출하여 웹 기반 소프트웨어 사용 장치(300)에게로 제공한다. 배포 처리부(260)는 웹 기반 소프트웨어 사용 장치(300)에 의해 선택된 소프트웨어 패키지의 의존성 정보에 근거하여 패키지 저장부(220)로부터 해당 의존성 패키지를 검출하여 웹 기반 소프트웨어 사용 장치(300)에게로 제공할 수도 있다. 배포 처리부(260)는 패키지 저장부(220)에 저장된 소프트웨어 패키지의 스키마 정보를 근거로 해당 소프트웨어 패키지에 사용되는 데이터베이스의 업그레이드 정보를 웹 기반 소프트웨어 사용 장치(300)에게로 제공한다.
웹 기반 소프트웨어 사용 장치(300)는 네트워크(400)를 통해 웹 기반 소프트웨어 배포 장치(200)와 연결되고, 웹 기반 소프트웨어 배포 장치(200)로부터 제공되는 웹 기반 소프트웨어를 설치/제거/업데이트하고, 설치된 웹 기반 소프트웨어를 구동한다. 이를 위해, 웹 기반 소프트웨어 사용 장치(300)는 도 4에 도시된 바와 같이, 패키지 설치부(320), 패키지 실행부(340)를 포함하여 구성된다. 패키지 설치 부(320)는 웹 기반 소프트웨어 배포 장치(200)로부터 제공되는 소프트웨어 패키지와 함께 의존성 패키지 및 데이터베이스를 설치한다. 패키지 설치부(320)는 새 버전의 소프트웨어 패키지가 설치될 때 웹 기반 소프트웨어 배포 장치(200)로부터 제공되는 스키마 정보에 근거하여 해당 데이터베이스를 업데이트한다. 패키지 설치부(320)는 사용자의 요청에 따라 설치된 웹 기반 소프트웨어를 제거할 수도 있다. 이때, 패키지 설치부(320)에 의해 설치된 웹 기반 소프트웨어는 패키지 실행부(340)에 의해 실행된다.
상술한 바와 같이, 웹 기반 소프트웨어 배포 시스템은 개발된 웹 기반 소프트웨어를 손쉽게 배포할 수 있다. 또한, 웹 기반 소프트웨어 배포 시스템은 설치/설정 기능을 제공함으로써 여러 웹 기반 소프트웨어를 더욱 쉽게 관리할 수 있다.
이하, 본 발명의 실시 예에 따른 웹 기반 소프트웨어 배포 방법을 첨부된 도면을 참조하여 상세하게 설명하면 아래와 같다. 도 5는 본 발명의 실시 예에 따른 웹 기반 소프트웨어 배포 방법을 설명하기 위한 흐름도이고, 도 6은 도 5의 패키징 단계를 설명하기 위한 흐름도이고, 도 7 및 도 8은 도 5의 패키징 단계를 설명하기 위한 도면이고, 도 9는 도 5의 소프트웨어 패키지 등록단계를 설명하기 위한 흐름도이고, 도 10은 도 5의 소프트웨어 패키지 설치단계를 설명하기 위한 흐름도이고, 도 11은 도 5의 소프트웨어 패키지 설치단계를 설명하기 위한 도면이다.
먼저, 개발자는 웹 기반 소프트웨어 개발 장치(100)를 이용하여 사용자에게 제공된 웹 기반 소프트웨어를 개발한다(S100). 즉, 개발자는 웹 기반 소프트웨어 개발 장치(100)의 입력부(120)를 통해 소프트웨어의 소스코드를 입력하고, 개발부(140)를 통해 입력된 소스코드를 컴파일하는 과정을 통해 웹 기반 소프트웨어를 개발한다.
웹 기반 소프트웨어 개발 장치(100)는 개발된 웹 기반 소프트웨어를 패키징 처리한다(S200). 여기서, 웹 기반 소프트웨어를 패키징 처리하는 단계를 상세히 설명하면 아래와 같다.
패키지 생성부(160)는 패키지 정보의 입력을 위한 윈도우(도 7 참조)를 출력부(180)를 통해 출력하여 개발자에게 패키지 정보의 입력을 요청한다. 개발자는 입력부(120)를 통해 패키지 정보를 입력한다(S210). 이때, 입력부(120)는 소프트웨어 이름, 버전, 개발자, 라이선스, 카테고리 등을 포함하는 패키지 정보를 입력받는다.
이때, 개발된 웹 기반 소프트웨어가 데이터베이스를 사용하면(S220; YES), 개발자는 입력부(120)를 통해 사용되는 데이터베이스 정보 및 스키마 정보를 입력한다(S230). 이때, 입력부(120)는 데이터베이스의 경로, 명칭 등을 포함하는 데이터베이스 정보, 및 새로운 기능을 가진 새 버전의 패키지가 설치될 때 데이터베이스 업그레이드를 위한 적어도 하나의 스키마 정보를 입력받는다.
다음으로, 개발된 웹 기반 소프트웨어와 연계된 의존성 패키지가 존재하면(S240; YES), 개발자는 입력부(120)를 통해 의존성 패키지에 대한 의존성 정보를 입력한다(S250). 여기서, 의존성 패키지는 웹 기반 소프트웨어가 설치되기 위해 필요한 다른 패키지이고, 의존성 정보는 해당 의존성 패키지의 경로, 명칭 등을 포함하는 정보이다. 예를 들면, 데이터베이스를 사용하는 웹 기반 소프트웨어는 데이터베이스와 접속하기 위한 라이브러리가 먼저 설치되어야 동작한다. 이와 같은 경우, 데이터베이스 접속을 위한 라이브러리가 의존성 패키지로 사용된다.
다음으로, 패키지 생성부(160)는 상술한 단계를 거쳐 입력된 웹 기반 소프트웨어의 패키지 정보, 데이터베이스 정보, 스키마 정보, 의존성 정보를 포함하는 패키지 관련 정보를 생성한다(S260). 예를 들면, 패키지 생성부(160)는 도 8에 도시된 바와 같이, 패키지 정보, 데이터베이스 정보, 스키마 정보, 의존성 정보를 포함하는 패키지 관련 정보를 xml파일로 생성한다. 여기서, 패키지 관련 정보는 생성된 소트프웨어 패키지가 웹 기반 소프트웨어 배포 장치(200)의 패키지 등록부(240)에 의해 등록될 때 해석되어 패키지 저장부(220)에 저장된다. 또한, 웹 기반 소프트웨어 사용 장치(300)에서 소프트웨어 패키지를 설치할 때 해석되어 의존성 검사와 데이터베이스 스키마 갱신에 사용된다.
다음으로, 패키지 생성부(160)는 패키지 관련 정보, 웹 기반 소프트웨어의 설치 파일, 데이터베이스 파일 등을 포함하는 소프트웨어 패키지를 생성한다(S270). 여기서, 패키지 생성부(160)는 최종 소프트웨어 패키지를 압축파일(예를 들면, zip) 형태로 생성한다. 패키지 생성부(160)는 소프트웨어 패키지의 등록을 위해 생성한 소프트웨어 패키지를 웹 기반 소프트웨어 배포 장치(200)에게로 전송한다.
웹 기반 소프트웨어 배포 장치(200)는 소프트웨어 개발 장치로부터 수신한 소프트웨어 패키지를 등록한다(S300). 여기서, 웹 기반 소프트웨어 배포 장치(200)가 소프트웨어를 등록하는 단계를 상세히 설명하면 아래와 같다.
패키지 등록부(240)는 웹 기반 소프트웨어 개발 장치(100)로부터 수신한 소프트웨어 패키지를 패키지 리스트에 등록한다(S310). 즉, 패키지 등록부(240)는 웹 기반 소프트웨어 개발 장치(100)로부터 수신된 소프트웨어 패키지의 패키지 정보를 근거로 수신한 소프트웨어 패키지를 패키지 리스트에 등록한다. 여기서, 패키지 리스트는 미리 등록된 하나 이상의 소프트웨어 패키지가 등록되어 있을 수도 있다.
패키지 저장부(220)는 웹 기반 소프트웨어 개발 장치(100)로부터 수신한 소프트웨어 패키지, 및 패키지 등록부(240)로부터의 패키지 리스트를 저장한다(S320). 이때, 패키지 저장부(220)는 소프트웨어 패키지와 동반되어 의존성 패키지를 더 저장할 수도 있다. 즉, 패키지 저장부(220)는 웹 기반 소프트웨어 사용 장치(300)에 소프트웨어 패키지의 설치시 해당 소프트웨어 패키지와 함께 설치되는 다른 패키지인 의존성 패키지를 더 저장한다.
사용자는 웹 기반 소프트웨어 사용 장치(300)를 통해 웹 기반 소프트웨어 배포 장치(200)에 저장된 소프트웨어 패키지를 설치한다(S400). 여기서, 웹 기반 소프트웨어 사용 장치(300)가 소프트웨어를 설치하는 단계를 상세히 설명하면 아래와 같다.
웹 기반 소프트웨어 사용 장치(300)는 웹 기반 소프트웨어 배포 장치(200)로부터 패키지 리스트를 수신한다(S410). 즉, 웹 기반 소프트웨어 사용 장치(300)의 패키지 설치부(320)는 웹 기반 소프트웨어 배포 장치(200)의 패키지 저장부(220)에 저장된 패키지 리스트를 다운로드한다.
웹 기반 소프트웨어 사용 장치(300)는 수신한 패키지 리스트를 출력한다(S420). 즉, 도 11에 도시된 바와 같이, 웹 기반 소프트웨어 사용 장치(300)의 패키지 설치부(320)는 다운로드한 패키지 리스트를 출력한다. 패키지 설치부(320)는 웹 기반 소프트웨어 사용 장치(300)에 설치된 소프트웨어 패키지, 설치되지 않은 소프트웨어 패키지, 새로 추가된 소프트웨어 패키지, 업그레이드 가능한 소프트웨어 패키지 등으로 구분하여 패키지 리스트를 출력한다.
사용자에 의해 패키지 리스트에 포함된 소프트웨어 패키지가 선택되면, 웹 기반 소프트웨어 사용 장치(300)는 해당 소프트웨어 패키지를 웹 기반 소프트웨어 배포 장치(200)로부터 다운로드한다(S430).
웹 기반 소프트웨어 사용 장치(300)는 다운로드한 소프트웨어 패키지의 의존성 패키지 존재 여부를 조사한다. 즉, 웹 기반 소프트웨어 사용 장치(300)는 소프트웨어 패키지에 포함된 소프트웨어 패키지 관련 정보를 해석하여 해당 소프트웨어 패키지와 연계된 의존성 패키지의 존재 여부를 조사한다. 조사결과 의존성 패키지가 존재하면(S440; YES), 웹 기반 소프트웨어 사용 장치(300)는 해당 의존성 패키지를 다운로드하여 설치한다(S450).
다음으로, 웹 기반 소프트웨어 사용 장치(300)는 기다운로드한 소프트웨어 패키지를 설치한다(S460).
상술한 S400 단계에서 업그레이드 가능한 소프트웨어 패키지가 선택되 면(S500; YES), 웹 기반 소프트웨어 사용 장치(300)는 웹 기반 소프트웨어 배포 장치(200)로부터 해당 소프트웨어 패키지를 다운로드하여 업그레이드를 수행한다(S600). 이때, 웹 기반 소프트웨어 사용 장치(300)는 패키지 정보에 포함된 스키마 정보를 이용하여 해당 소프트웨어 패키지의 업그레이드를 수행한다.
사용자는 설치된 웹 기반 소프트웨어의 삭제를 원하는 경우에 상술한 S400 단계에서 설치된 소프트웨어 패키지를 선택하여 삭제를 요청한다. 웹 기반 소프트웨어의 삭제가 요청되면(S700; YES), 웹 기반 소프트웨어 사용 장치(300)는 해당하는 웹 기판 소프트웨어를 삭제한다(S800).
사용자에 의해 설치된 웹 기반 소프트웨어의 구동이 요청되면, 웹 기반 소프트웨어 사용 장치(300)는 해당 웹 기반 소프트웨어를 구동시킨다(S900). 즉, 웹 기반 소프트웨어 사용 장치(300)의 패키지 구동부는 사용자에 의해 요청된 웹 기반 소프트웨어를 구동시킨다.
상술한 바와 같이, 웹 기반 소프트웨어 배포 방법은 개발된 웹 기반 소프트웨어를 손쉽게 배포할 수 있다. 또한, 웹 기반 소프트웨어 배포 방법은 설치/설정 기능을 제공함으로써 여러 웹 기반 소프트웨어를 더욱 쉽게 관리할 수 있다.
이상에서 본 발명에 따른 바람직한 실시 예에 대해 설명하였으나, 다양한 형태로 변형이 가능하며, 본 기술분야에서 통상의 지식을 가진자라면 본 발명의 특허청구범위를 벗어남이 없이 다양한 변형예 및 수정예를 실시할 수 있을 것으로 이해된다.
도 1은 본 발명의 실시 예에 따른 웹 기반 소프트웨어 배포 시스템의 구성을 설명하기 위한 도면.
도 2는 도 1의 웹 기반 소프트웨어 개발 장치를 설명하기 위한 블록도.
도 3은 도 1의 웹 기반 소프트웨어 배포 장치를 설명하기 위한 블록도.
도 4는 도 1의 웹 기반 소프트웨어 사용 장치를 설명하기 위한 블록도.
도 5는 본 발명의 실시 예에 따른 웹 기반 소프트웨어 배포 방법을 설명하기 위한 흐름도.
도 6은 도 5의 패키징 단계를 설명하기 위한 흐름도.
도 7 및 도 8은 도 5의 패키징 단계를 설명하기 위한 도면.
도 9는 도 5의 소프트웨어 패키지 등록단계를 설명하기 위한 흐름도.
도 10은 도 5의 소프트웨어 패키지 설치단계를 설명하기 위한 흐름도.
도 11은 도 5의 소프트웨어 패키지 설치단계를 설명하기 위한 도면.
<도면의 주요부분에 대한 부호의 설명>
100: 웹 기반 소프트웨어 개발 장치 120: 입력부
140: 개발부 160: 패키지 생성부
180: 출력부 200: 웹 기반 소프트웨어 배포 장치
220: 패키지 저장부 240: 패키지 등록부
260: 배포 처리부 300: 웹 기반 소프트웨어 사용 장치
320: 패키지 설치부 340: 패키지 실행부

Claims (10)

  1. 웹 기반 소프트웨어 배포 장치와 네트워크를 통해 연결할 수 있는 웹 기반 소프트웨어 개발 장치에 있어서,
    웹 기반 소프트웨어를 생성하는 개발부; 및
    입력되는 패키지 정보에 근거하여 상기 개발부에서 생성된 웹 기반 소프트웨어를 소프트웨어 패키지로 패키징하고, 상기 소프트웨어 패키지를 상기 웹 기반 소프트웨어 배포 장치에게로 전송하는 패키지 생성부를 포함하는 것을 특징으로 하는 웹 기반 소프트웨어 개발 장치.
  2. 청구항 1에 있어서,
    상기 소프트웨어 패키지는 패키지 정보, 설치 파일, 상기 소프트웨어 패키지의 설치시 동반되어 설치되는 의존성 패키지에 대한 의존성 정보를 포함하는 것을 특징으로 하는 웹 기반 소프트웨어 개발 장치.
  3. 청구항 2에 있어서,
    상기 소프트웨어 패키지는 상기 웹 기반 소프트웨어에 사용되는 데이터베이스에 대한 데이터베이스 정보 및 상기 데이터베이스의 업그레이드를 위한 스키마 정보를 포함하는 것을 특징으로 하는 웹 기반 소프트웨어 개발 장치.
  4. 웹 기반 소프트웨어 개발 장치 및 웹 기반 소프트웨어 사용 장치와 네트워크를 통해 연결할 수 있는 웹 기반 소프트웨어 배포 장치에 있어서,
    상기 웹 기반 소프트웨어 개발 장치로부터 수신된 소프트웨어 패키지를 저장하는 패키지 저장부;
    상기 수신된 소프트웨어 패키지의 패키지 정보를 근거로 수신한 소프트웨어 패키지를 패키지 리스트에 등록하는 패키지 등록부; 및
    상기 웹 기반 소프트웨어 사용 장치에게로 상기 패키지 리스트를 제공하고, 상기 패키지 리스트에 포함된 소프트웨어 패키지 중에서 상기 웹 기반 소프트웨어 사용 장치에 의해 선택된 소프트웨어 패키지를 상기 패키지 저장부로부터 검출하여 상기 웹 기반 소프트웨어 사용 장치에게로 제공하는 배포 처리부를 포함하는 것을 특징으로 하는 웹 기반 소프트웨어 배포 장치.
  5. 청구항 4에 있어서,
    상기 패키지 저장부는 소프트웨어 패키지와 동반되어 설치되는 의존성 패키지를 더 저장하고,
    상기 배포 처리부는 상기 웹 기반 소프트웨어 사용 장치에 의해 선택된 소프트웨어 패키지의 의존성 정보에 근거하여 상기 패키지 저장부로부터 해당 의존성 패키지를 검출하여 상기 웹 기반 소프트웨어 사용 장치에게로 제공하는 것을 특징으로 하는 웹 기반 소프트웨어 배포 장치.
  6. 청구항 3에 있어서,
    상기 배포 처리부는
    상기 패키지 저장부에 저장된 소프트웨어 패키지의 스키마 정보를 근거로 해당 소프트웨어 패키지에 사용되는 데이터베이스의 업그레이드 정보를 상기 웹 기반 소프트웨어 사용 장치에게로 제공하는 것을 특징으로 하는 웹 기반 소프트웨어 배포 장치.
  7. 웹 기반 소프트웨어 개발 장치에 의해, 입력되는 패키지 정보에 근거하여 개발된 웹 기반 소프트웨어를 소프트웨어 패키지로 패키징하는 패키징 단계;
    웹 기반 소프트웨어 배포 장치에 의해, 상기 패키징 단계에서 패키징된 소프트웨어 패키지를 등록하는 등록단계; 및
    상기 웹 기반 소프트웨어 배포 장치에 의해, 상기 패키지 등록단계에서 등록된 소프트웨어 패키지 중에서 웹 기반 소프트웨어 사용 장치에 의해 선택된 소프트웨어 패키지를 해당 웹 기반 소프트웨어 사용 장치에게로 제공하여 설치하는 설치단계를 포함하는 것을 특징으로 하는 웹 기반 소프트웨어 배포 방법.
  8. 청구항 7에 있어서,
    상기 설치단계에서는,
    상기 웹 기반 소프트웨어 배포 장치에 의해, 상기 설치된 소프트웨어 패키지의 의존성 정보에 해당하는 의존성 패키지를 상기 웹 기반 소프트웨어 사용 장치에 게로 제공하여 설치하는 것을 특징으로 하는 웹 기반 소프트웨어 배포 방법.
  9. 청구항 7에 있어서,
    상기 웹 기반 소프트웨어 배포 장치에 의해, 상기 설치단계에서 설치된 소프트웨어 패키지에 사용되는 데이터베이스의 스키마 정보에 해당하는 업그레이드 정보를 상기 웹 기반 소프트웨어 사용 장치에게로 제공하여 상기 설치된 웹 기반 소프트웨어 사용 장치에 설치된 데이터베이스를 업그레이드하는 업그레이드 단계를 더 포함하는 것을 특징으로 하는 웹 기반 소프트웨어 배포 방법.
  10. 청구항 7에 있어서,
    상기 패키징 단계에서는,
    상기 웹 기반 소프트웨어 개발 장치에 의해, 개발된 웹 기반 소프트웨어를 패키지 정보, 설치 파일, 의존성 정보, 스키마 정보를 포함하는 소프트웨어 패키지로 패키징하는 것을 특징으로 하는 웹 기반 소프트웨어 배포 방법.
KR1020090107712A 2009-11-09 2009-11-09 웹 기반 소프트웨어 배포 시스템 및 방법 KR101262234B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090107712A KR101262234B1 (ko) 2009-11-09 2009-11-09 웹 기반 소프트웨어 배포 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090107712A KR101262234B1 (ko) 2009-11-09 2009-11-09 웹 기반 소프트웨어 배포 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20110051061A true KR20110051061A (ko) 2011-05-17
KR101262234B1 KR101262234B1 (ko) 2013-05-15

Family

ID=44361494

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090107712A KR101262234B1 (ko) 2009-11-09 2009-11-09 웹 기반 소프트웨어 배포 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101262234B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150090368A (ko) * 2014-01-28 2015-08-06 주식회사 케이티 웹 기반 소프트웨어의 서비스 방법 및 웹 기반 소프트웨어의 공급서버
KR20170014445A (ko) * 2015-07-30 2017-02-08 주식회사 셈웨어 알고리즘 거래 시스템
KR20180137554A (ko) * 2016-04-27 2018-12-27 후아웨이 테크놀러지 컴퍼니 리미티드 패치 업그레이드 기반 파일 처리 방법 및 디바이스, 단말기, 및 저장 매체
US10430590B2 (en) 2016-11-08 2019-10-01 Electronics And Telecommunications Research Institute Apparatus for quantifying security of open-source software package, and apparatus and method for optimizing open-source software package

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240030358A (ko) 2022-08-30 2024-03-07 부산대학교 산학협력단 컨테이너 기반의 마이크로서비스 배포 방법 및 시스템

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007079861A (ja) * 2005-09-13 2007-03-29 Fuji Xerox Co Ltd ソフトウェア配布システム、サーバ、コンピュータの制御方法及びプログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150090368A (ko) * 2014-01-28 2015-08-06 주식회사 케이티 웹 기반 소프트웨어의 서비스 방법 및 웹 기반 소프트웨어의 공급서버
KR20170014445A (ko) * 2015-07-30 2017-02-08 주식회사 셈웨어 알고리즘 거래 시스템
KR20180137554A (ko) * 2016-04-27 2018-12-27 후아웨이 테크놀러지 컴퍼니 리미티드 패치 업그레이드 기반 파일 처리 방법 및 디바이스, 단말기, 및 저장 매체
US10949191B2 (en) 2016-04-27 2021-03-16 Huawei Technologies Co., Ltd. Patch-upgrade-based file processing method and apparatus, terminal, and storage medium
US10430590B2 (en) 2016-11-08 2019-10-01 Electronics And Telecommunications Research Institute Apparatus for quantifying security of open-source software package, and apparatus and method for optimizing open-source software package
US10885201B2 (en) 2016-11-08 2021-01-05 Electronics And Telecommunications Research Institute Apparatus for quantifying security of open-source software package, and apparatus and method for optimizing open-source software package

Also Published As

Publication number Publication date
KR101262234B1 (ko) 2013-05-15

Similar Documents

Publication Publication Date Title
US7984424B2 (en) Isolating declarative code to preserve customizations
KR100952251B1 (ko) 서비스 패키지에 의해 소프트웨어 제품을 업데이트하는 방법, 컴퓨터로 구현되는 방법, 컴퓨터 판독가능 저장 매체, 및 서비스 패키지
US6938250B2 (en) Image-based software installation
US9513891B2 (en) Method and device for publishing and implementing wireless application
US8549514B2 (en) Distributing customized software products
KR20070049166A (ko) 목표 기기 상에서의 종속 소프트웨어 패키지의 검출 및이용을 자동화하기 위한 방법 및 소프트웨어 리포지터리를생성하기 위한 시스템
US9411571B2 (en) Method and apparatus for deploying software as a service
US20080201568A1 (en) Version-resilient loader for custom code runtimes
US20130067462A1 (en) Installation method, information processing apparatus and device driver
KR101262234B1 (ko) 웹 기반 소프트웨어 배포 시스템 및 방법
US20120272204A1 (en) Uninterruptible upgrade for a build service engine
JP2007538328A (ja) リリース管理の方法
US10929124B2 (en) Application release using integration into unified code system
KR20220092615A (ko) 적시(Just-In-Time) 컨테이너
KR102052776B1 (ko) 병행가능하고 신뢰성 있는 설치를 위한 설치 엔진 및 패키지 포맷
WO2001093021A2 (en) A virtual system configurator for client systems
KR20070021218A (ko) 인스톨 방법, 정보 처리 장치 및 디바이스 드라이버
JP2002189601A (ja) プログラムのインストール方法およびプログラムインストールシステム
Martin et al. Command-line tools
La Lau et al. Software Management
Danial Installation
Hunt Python Virtual Environments
Blau et al. EMERGE: ESnet/MREN regional grid experimental NGI testbed
Freeman et al. Getting Ready
Howison et al. Building software environments for research computing clusters

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
FPAY Annual fee payment

Payment date: 20160427

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170427

Year of fee payment: 5