KR102031585B1 - 정보 처리장치, 방법, 및 기억매체 - Google Patents

정보 처리장치, 방법, 및 기억매체

Info

Publication number
KR102031585B1
KR102031585B1 KR1020160078337A KR20160078337A KR102031585B1 KR 102031585 B1 KR102031585 B1 KR 102031585B1 KR 1020160078337 A KR1020160078337 A KR 1020160078337A KR 20160078337 A KR20160078337 A KR 20160078337A KR 102031585 B1 KR102031585 B1 KR 102031585B1
Authority
KR
South Korea
Prior art keywords
license
file
information
license file
application
Prior art date
Application number
KR1020160078337A
Other languages
English (en)
Other versions
KR20170001618A (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 캐논 가부시끼가이샤
Publication of KR20170001618A publication Critical patent/KR20170001618A/ko
Application granted granted Critical
Publication of KR102031585B1 publication Critical patent/KR102031585B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6272Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database by registering files or documents with a third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

라이센스 파일에 라이센스 타입 정보를 유지하고 라이센스 타입이 "월별"인 경우에는, 라이센스가 이미 이용되더라도, 라이센스 관리 시스템은 라이센스의 만료 타이밍을 갱신할 수 있다.

Description

정보 처리장치, 방법, 및 기억매체{INFORMATION PROCESSING APPARATUS, METHOD, AND STORAGE MEDIUM}
본 발명은, 라이센스 파일을 기초로 어플리케이션의 동작을 제어할 수 있는 정보 처리장치, 이와 관련된 방법과, 기억매체에 관한 것이다.
네트워크를 거쳐 라이센스를 갖는 어플리케이션이 인스톨가능한 정보 처리장치가 존재한다. 이 어플리케이션의 인스톨시에는, Ferroelectric Random Access Memory(FRAM)(등록상표)와, 하드디스크 드라이브/플래시 메모리 등의 복수의 불휘발성 영역에 라이센스의 이력을 기록한다. 복수의 불휘발성 메모리를 사용하여 라이센스 이력을 관리하는 것은, 한쪽의 불휘발성 영역으로부터 라이센스 이력이 삭제되어도, 다른쪽의 불휘발성 영역으로부터 라이센스 이력을 판독하여, 한쪽의 불휘발성 영역에 라이센스 이력을 카피함으로써 라이센스 이력을 복구시키는 것이 가능하다는 점에서 유용하다. 예를 들면, 하드디스크 드라이브가 손상되어 새로운 하드디스크 드라이브로 교체된 경우에도, FRAM(등록상표)으로부터 새로운 하드디스크 드라이브로 기억되어 있는 라이센스 이력을 이동시킴으로써 라이센스 이력을 복구시킬 수 있다. 이에 따라, 소정의 일수동안만 이용 가능한 라이센스를 재이용해서 이용 일수를 연장시키는 것을 방지할 수 있는 라이센스 관리 제어를 구현할 수 있다. 이러한 백업 메카니즘을 갖는 장치가 일본국 특허 05701151호에 개시되어 있다.
본 발명의 일 실시형태에 따른 정보 처리장치는 라이센스 파일을 기초로 어플리케이션의 동작을 제어할 수 있다. 정보 처리장치는, 인스톨된 라이센스 파일을 고유하게 식별하는 라이센스 식별 정보를 이력 테이블에 유지하도록 구성된 유지부와, 라이센스 파일을 인스톨하는 지시를 수신하고, 상기 인스톨 지시된 라이센스 파일을 고유하게 식별하는 라이센스 식별 정보가 상기 이력 테이블에 존재하는 경우, 상기 라이센스 파일이 다시 인스톨되는 것을 방지하도록 구성된 제어부를 구비한다. 상기 라이센스 파일의 인스톨이 지시되었을 때에, 상기 제어부는, 상기 인스톨 지시된 라이센스 파일이 특정한 타입의 라이센스 파일이라고 확인된 경우에는, 상기 인스톨 지시된 라이센스 파일을 고유하게 식별하는 라이센스 식별 정보가 상기 이력 테이블에 존재하더라도, 상기 라이센스 파일을 인스톨하도록 제어를 행한다.
본 발명에 따르면, 한정된 기억 용량을 갖는 메모리를 구비한 정보 처리장치에 라이센스의 유효 기간을 갱신하는 동안 식별 정보를 갱신하지 않는 라이센스를 인스톨하게 함으로써, 보다 많은 라이센스 이력을 정보 처리장치가 유지할 수 있다.
본 발명의 또 다른 특징 및 국면은 첨부된 도면을 참조하여 주어지는 이하의 실시형태의 상세한 설명으로부터 명백해질 것이다.
도 1은 네트워크 구성을 도시한 도면이다.
도 2a 및 도 2b는 하드웨어 구성을 도시한 도면이다.
도 3a 및 도 3b는 소프트웨어 구성을 도시한 도면이다.
도 4a 및 도 4b는 화상 형성장치에 의해 제공될 수 있는 화면의 예를 나타낸 도면이다.
도 5a 내지 도 5e는 다양한 파일의 데이터 구조를 도시한 도면이다.
도 6a 및 도 6b는 라이센스 취득 요구 수신부에 의해 실행될 수 있는 처리를 나타낸 흐름도다.
도 7은 계약 종료 연월일 갱신부에 의해 실행될 수 있는 처리를 나타낸 흐름도다.
도 8은 갱신 라이센스 취득 요구 수신부에 의해 실행될 수 있는 처리를 나타낸 흐름도다.
도 9a 및 도 9b는 인스톨 요구 수신부에 의해 실행될 수 있는 처리를 나타낸 흐름도다.
도 10은 갱신 라이센스 취득 요구부에 의해 실행될 수 있는 처리를 나타낸 흐름도다.
일본 특허 05701151호에 기재된 기술에 따르면, 라이센스 이력이 하드디스크 및 FRAM(등록상표)의 양쪽에 격납된다. 그렇지만, 하드디스크와 비교해서, FRAM(등록상표)은 고가이고 용량이 불충분하다. 그 때문에, FRAM(등록상표)에 격납할 수 있는 라이센스 이력 수가 한정될 수 있다. 그 때문에, 라이센스 이력 수의 상한에 도달하였을 때는, 새로운 라이센스 이력이 안전하게 격납될 수 있도록 오래된 라이센스 이력을 삭제하는 것이 예측된다.
한편, 일본 특허 05701151호에 개시되어 있는 것 같이, 어플리케이션에 대한 라이센스의 발행은 한번만 행해지는 것이 상정된다. 그러나, 비즈니스가 월별 과금에 기초한 경우, 유저가 어플리케이션의 사용 계약을 갱신할 때마다 라이센스의 발행이 반복적으로 행해진다.
전술한 비즈니스 방식에 따르면, FRAM(등록상표)에 격납된 오래된 라이센스 이력이 사라졌을 때, 과거에 사용한 라이센스가 다시 정보 처리장치에 인스톨되기 때문에, 어플리케이션의 불법 이용이 발생할 수 있다.
전술한 문제를 해소하기 위해, 본 발명은, 기억 용량이 한정된 메모리를 구비한 정보 처리장치에 대하여, 라이센스의 유효 기간을 갱신하는 동안 식별 정보를 갱신하지 않는 라이센스를 인스톨하게 함으로써, 많은 라이센스 이력을 정보 처리장치가 유지하게 하는 것을 목적으로 한다.
이하, 본 발명의 제1 실시형태에 대해 첨부도면을 참조하여 이하에서 상세히 설명한다.
다음은 본 명세서에서 사용되는 용어의 정의이다.
"어플리케이션 파일"이란 화상 형성장치의 기본 기능을 확장하기 위해 필요한 프로그램 파일이다. 어플리케이션 파일은 화상 형성장치의 하드디스크에 사전에 격납되거나, 화상 형성장치의 하드디스크에 외부 파일로서 나중에 격납하는 것이 가능하다. 후술하는 것과 같이, 하드디스크에 격납한 어플리케이션 파일을 이용해서 기본 기능을 확장하기 위해서는 라이센스 파일이 필요하게 된다.
"어플리케이션 정보"란, 라이센스 서버(101)에 의해 유지되는 어플리케이션 파일의 정보이다. 라이센스 서버(101)는 어플리케이션 정보로서 각각의 어플리케이션을 고유하게 식별하는 어플리케이션 ID(즉, 식별자)를 유지한다.
"상품 정보"란, 시장에서 판매될 때 각각의 어플리케이션을 이용하기 위해 필요한 정보다. 본 실시형태에 따른 라이센스 서버(101)는 다음의 상품 정보로 구성되는 정보군을 유지한다.
첫 번째 상품 정보는 "상품 ID"이며, 이것은 각각의 상품을 고유하게 식별하는 식별자다. 두 번째 상품 정보는 "권리 수"이며, 이것은 전술한 상품 정보를 갖는 상품을 구입했을 때에 어플리케이션의 이용 가능성을 나타내는 수치이다. 세번째는 상품 정보는 "상품 타입"이며, 이것은 상품의 판매 형태를 표시하는 종별 정보다. 본 실시형태에 있어서는, 상품 타입의 예로는 "패키지", "월별" 및 "시험 사용"이 있지만, 상품 타입은 이들 3가지 형태에 한정되지 않는다. 네 번째 상품 정보는 "어플리케이션 ID"이며, 이것은 이 상품을 구입했을 때에 이용할 수 있는 각각의 어플리케이션을 고유하게 식별할 수 있는 식별 정보다.
구입한 상품의 상품 타입이 "월별"인 경우에는, "계약 개시"와 "계약 정지"를 라이센스 서버(101)에 등록할 수 있다. 대상의 화상 형성장치(112)에 대해 어플리케이션의 계약이 개시되면, 첫 번째 달 동안에는 무료로 어플리케이션이 이용 가능하고, 그 다음달로부터 소정의 요금의 지불로 어플리케이션이 이용가능하다. 또한, 계약이 정지되지 않으면, 대상의 화상 형성장치가 어플리케이션을 이용 가능하다. 전술한 기능을 실현하기 위해서, 상품의 상품 타입이 "월별"인 경우에는 라이센스 서버(101)는 다음과 같은 추가 상품 정보를 유지한다.
첫 번째 추가 상품 정보는 "계약 기간"이며, 이것은 상품의 구입시에 계약을 개시했을 때, 어플리케이션의 이용 기간을 지정한다. 계약 기간이 1개월이고, 2015년 4월 5일부터 계약을 개시한 경우에는, 2015년 5월말까지 어플리케이션을 이용할 수 있다(4월에는 요금이 없다). 계약을 정지하지 않는 경우에는, 2015년 6월까지 어플리케이션을 계속해서 이용 가능하다. 두 번째 추가 상품 정보는 "라이센스 정지 일"이며, 라이센스가 정지되는 계약의 최종 월의 특정한 일자를 지정한다. 계약 최종월이 2015년 5월이고, 라이센스 정지 일이 월말인 경우에는, 2015년 5월 31일 이후에는 어플리케이션은 이용할 수 없다. 세 번째 추가 상품 정보는 "계약 정지 접수일"이며, 계약 정지를 접수할 수 있는 계약 최종월의 특정한 일자를 지정한다. 계약 정지 접수일이 20일이고, 요청된 계약 정지일이 2015년 5월 31일이면, 2015년 4월 20일 전에 계약 정지를 접수하는 것이 요구된다.
구입한 상품의 상품 타입이 "시험 사용"인 경우에는, 라이센스 서버(101)는 그 라이센스에 기초하여 어플리케이션을 사용하기 위해 남은 일수를 지정하는 이용 일수의 상품 정보를 유지한다.
"라이센스 액세스 번호"란, 어플리케이션의 라이센스를 발행하기 위해서 필요한 영문자를 사용하여 표현되는 문자열이다.
"디바이스 시리얼 번호"란, 화상 형성장치(112)를 고유하게 식별할 수 있는 식별자다.
화상 형성장치(112)가 어플리케이션을 이용할 때 필요한 라이센스 파일은, 어플리케이션의 동작을 제어하기 위해서 사용되는 파일이다. 본 실시형태에 따른 라이센스 파일은 이하의 정보를 유지한다.
첫 번째 정보는 "라이센스 ID"이며, 각각의 라이센스 파일을 고유하게 식별할 수 있는 식별자다. 라이센스 ID는 라이센스 식별 정보의 일종이다. 두 번째 정보는 "어플리케이션 ID"이며, 이 라이센스 파일에 기초하여 이용 가능한 어플리케이션의 어플리케이션 ID다. 세 번째 정보는 "디바이스 시리얼 번호"이며, 이 라이센스 파일이 이용 가능한 화상 형성장치(112)의 디바이스 시리얼 번호다. 네 번째 정보는 "라이센스 타입"이며, 상품의 상품 타입의 정보를 유지한다.
라이센스 타입이 "월별"인 구입한 상품에 대해 라이센스 파일이 발행되는 경우에는, 발행된 라이센스 파일은 이하의 정보를 더 유지한다. 첫 번째 정보는 "계약 개시 연월일"이며, 이 라이센스가 이용 가능하게 되는 연월일의 정보를 유지한다. 두 번째 정보는 "계약 정지 연월일"이며, 이 라이센스가 정지되는 연월일의 정보를 유지한다.
라이센스 타입이 "시험 사용"인 구입한 상품에 대해 라이센스 파일이 발행되는 경우에는, 발행된 라이센스 파일은, 이 라이센스가 이용 가능한 "잔여 이용 일수"의 정보를 추가로 유지한다. 라이센스 타입이 "월별"이 아닌 경우에는, 라이센스 파일이 매진형(sellout-type)의 라이센스인 것으로 상정하고 있다. 본 실시형태에서는, "시험 사용" 또는 "패키지"의 라이센스 타입의 라이센스 파일이 매진형이다.
도 1은 본 발명에 따른 라이센스 관리 시스템의 네트워크 구성을 나타내고 있다.
라이센스 서버(101)는 라이센스를 발행가능한 서버이며, 인터넷(102)을 거쳐 각종 장치와 통신가능하다. 고객 네트워크 환경(110)은, 화상 형성장치를 구입한 고객의 네트워크 환경을 나타내고 있다. 고객 네트워크 환경(110)은, 로컬 에어리어 네트워크(LAN)(113)를 거쳐 접속된 화상 형성장치(112)와 정보 처리장치(111)를 구비한다. LAN(113)은 인터넷(102)에 접속가능하다. 판매사 네트워크(120)는, 어플리케이션의 판매를 행하는 판매사의 네트워크 환경을 나타내고 있다. 판매사 네트워크(120)는, LAN(123)을 거쳐 접속되는 정보 처리장치(121)와 계약 서버(122)를 구비한다. LAN(123)은 인터넷(102)에 접속가능하다. 도 1에는 도시하지 않았지만, 고객 네트워크 환경(110) 및 판매사 네트워크(120) 각각은, 네트워크에 접속되어 있는 복수의 화상 형성장치 또는 복수의 화상 처리장치를 구비할 수 있다.
도 2a 및 도 2b는 본 발명에 따른 라이센스 관리 시스템의 하드웨어 구성을 나타내고 있다. 도 2a는 화상 형성장치(112)의 하드웨어 구성이며, 이하의 구성요소를 구비한다. 원고 급송부(201)는 판독할 원고를 자동적으로 문서를 판독할 수 있는 이미지 리더(예를 들어, 스캐너)(202)에 보낸다. 화상 형성부(203)는 판독한 원고(또는 수신한 데이터)를 인쇄 데이터로 변환하고, 화상을 인쇄할 수 있다. 급지부(204)는 인쇄에 사용될 종이를 급지할 수 있다. 네트워크 I/F(205), 네트워크 경유로 LAN 및 인터넷에 접속하고, 외부 장치에 대해 정보를 송수신할 수 있다. 센서(206)는 화상 형성장치의 각 구성요소의 동작 상태를 검지할 수 있다. 중앙처리장치(CPU)(207)는 화상 처리장치에 의해 행해지는 각각의 처리를 제어할 수 있다. 하드디스크(208)는 화상 형성장치에 의해 행할 각 처리에 관한 프로그램과 데이터를 기억할 수 있다. 불휘발성 메모리(209)는, 고쳐쓰기 가능한 메모리이며, 전원을 공급하지 않는 상태에서도 기억 데이터를 유지할 수 있다. 본 실시형태에서는, 불휘발성 메모리(209)는 FRAM(등록상표)이다. 고쳐쓰기 가능한 휘발성 메모리(210)는 화상 형성장치에 의해 행해질 각 처리에 관한 일시적인 데이터를 전기적으로 기억할 수 있다. 표시부(211)는 화상 형성장치의 동작 상태에 관한 정보 및 조작부(212)를 거쳐 입력된 유저 조작에 관한 정보를 표시할 수 있다. 조작부(212)는 화상 형성장치에 입력된 지시를 접수할 수 있다. 시스템 버스(213)는 전술한 구성요들 201 내지 212를 연결하고 데이터 또는 정보가 서로 송신될 수 있도록 할 수 있다.
라이센스 서버(101), 계약 서버(122) 및 정보 처리장치 111 및 121은, 도 2b에 도시된 것과 같은 이하의 구성요소들을 포함하는 하드웨어 구성을 갖는다. 표시부(221)는 윈도우, 아이콘, 메시지, 메뉴, 그 밖의 유저 인터페이스 정보를 표시할 수 있다. 조작부(222)는 키보드 또는 마우스를 이용하는 엔드 유저로부터의 다양한 입력 또는 자시를 접수할 수 있다. CPU(223)는 이 장치에 의해 행해지는 각 처리를 제어할 수 있다. 하드디스크(224)는 이 장치에 의해 행해지는 각 처리에 관한 프로그램과 데이터를 기억할 수 있다. 휘발성 메모리(225)는 고쳐쓰기 가능한 메모리이며, 이 장치에 의해 행해지는 각 처리에 관한 일시적인 데이터를 전기적으로 기억할 수 있다. 네트워크 I/F(226)는 네트워크 경유로 LAN 및 인터넷에 접속하고, 외부 장치에 대해 정보를 송수신할 수 있다. 시스템 버스(227)는 전술한 구성요소들 221 내지 226을 연결하여, 서로 데이터 또는 정보를 송신할 수 있다.
도 3a 및 도 3b는 본 발명에 따른 라이센스 관리 시스템의 소프트웨어 구성을 나타내고 있다. 도 3a는 라이센스 서버(101)의 소프트웨어 구성(301)을 도시한 도면이다. 소프트웨어 구성(301)의 각각의 유닛을 구현하기 위해, 라이센스 서버(101)의 CPU(223)이 라이센스 서버(101)의 하드디스크(224)로부터 휘발성 메모리(225)에 로그된 관련 프로그램을 실행된다.
어플리케이션 정보 유지부(311)는, 어플리케이션 정보 테이블을 라이센스 서버(101)의 하드디스크(224)에 유지하도록 구성된 유닛이다. 표 A는 어플리케이션 정보 유지부(311)에 격납되는 어플리케이션 정보 테이블의 예를 나타낸다.
이후, 어플리케이션 정보 테이블의 각 칼럼에 관한 설명을 행한다. "어플리케이션 ID" 칼럼은 어플리케이션의 종류를 고유하게 식별하는 어플리케이션 ID(즉, 식별자)를 격납하는 칼럼이다. "어플리케이션 버전" 칼럼은 어플리케이션의 버전의 정보를 격납하는 칼럼이다. 각 어플리케이션은, 상기 어플리케이션 ID와 어플리케이션 버전에 근거하여 고유하게 식별가능하다. "어플리케이션 명" 칼럼은 어플리케이션 명 정보를 격납하는 칼럼이다. "파일 패스" 칼럼은 어플리케이션 파일을 격납하고 있는 패스의 정보를 격납하는 칼럼이다. 확장 어플리케이션으로서 어플리케이션 파일을 나중에 화상 형성장치(112)에 인스톨할 때에만, "파일 패스" 칼럼에 대상의 어플리케이션 파일의 패스를 격납한다. 이미 화상 형성장치(112)에 어플리케이션 파일이 유지되어 있는 경우에는, "파일 패스" 칼럼은 공백이 된다. 어플리케이션 정보 테이블의 각 레코드는, "어플리케이션 정보 레코드"로 부르고, 각각의 어플리케이션에 대해 테이블에 등록된다.
상품 정보 유지부(312)는 상품 정보를 유지하는 상품 정보 테이블을 라이센스 서버(101)의 하드디스크(224) 내부에 유지하도록 구성된 유닛이다. 표 B에 상품 정보 유지부(312)에 격납되는 상품 정보 테이블의 예를 나타낸다.
후, 상품 정보 테이블의 각 칼럼에 관한 설명을 행한다. "상품 ID" 칼럼은 상품을 고유하게 식별할 수 있는 식별자인 상품 ID 정보를 격납하는 칼럼이다. "상품명" 칼럼은 각각의 상품명 정보를 격납하는 칼럼이다. "상품 타입" 칼럼은, 상품 타입 정보를 격납하는 칼럼이다. 상품 타입은 "패키지", "월별", "시험 사용" 중에서 어느 한 개이다. 상품 타입은, 실현하고 싶은 비즈니스 방식에 따라 설정될 수 있다. 발행되는 라이센스의 내용이 상품 타입에 따라 다르다. 본 실시형태에서는 상품 타입은 3개만 정의하고 있지만, 상품 타입의 수는 3개에 한정되지 않는다. "권리 수" 칼럼은, 상품을 구입했을 때에 어플리케이션을 이용 가능한 화상 형성장치의 수에 대한 정보를 격납하는 칼럼이다. "어플리케이션 ID" 칼럼은 이 상품을 구입할 때 이용 가능하게 되는 어플리케이션의 어플리케이션 ID 정보를 격납하는 칼럼이다.
"이용 일수 칼럼"은 상품 타입이 "시험 사용"인 경우에 어플리케이션을 이용가능한 일수에 대한 정보를 격납되는 칼럼이다. "계약 기간" 칼럼, "라이센스 정지 일" 칼럼, "계약 정지 접수일" 칼럼은 상품 타입이 "월별"인 경우에 정보를 격납하는 칼럼이다. 구입한 상품의 상품 타입이 "월별"인 경우에는, 후술하는 계약 정지 요구 수신부(324)로부터의 계약 개시 요구가 수신될 때 계약이 개시된다. 계약 개시후에 발행될 라이센스의 이용 기간은, "계약 기간" 칼럼 및 "라이센스 정지 일" 칼럼에 격납되는 값에 근거하여 결정된다. 예를 들면, "계약 기간" 칼럼에 격납된 값이 1개월인 경우에는, 발행되는 라이센스의 이용 기간은 다음달을 포함한다. 또한, "라이센스 정지 일" 칼럼에 격납되는 값은, 라이센스가 만료하는 다음달의 특정한 날짜를 지정하는 정보이다. 예를 들면, "라이센스 정지 일" 칼럼에 격납된 값이 월말이면, 발행된 라이센스가 다음달 말까지 유효하다. 또한, 상품 타입이 "월별"인 경우에는, 계약을 정지하지 않으면 계약 개시후에는 계약이 자동적으로 갱신될 수 있다. 이 계약을 정지하기 위해서는, 계약이 갱신되는 월 동안에 계약 정지 요구 수신부(324)에 대해 계약 정지 요구를 송신할 필요가 있다. "계약 정지 접수일" 칼럼은 계약의 정지를 접수가능한 달의 특정한 날짜에 대한 정보를 격납하는 칼럼이다. 상품 정보 테이블에 격납된 각 레코드는, "상품 정보 레코드"로 부르고, 각 상품에 대해 테이블에 등록된다.
라이센스 액세스 번호 정보 유지부(313)는 라이센스 액세스 번호 정보를 유지하는 라이센스 액세스 번호 정보 테이블을 라이센스 서버(101)의 하드디스크(224) 내부에 유지하도록 구성된 유닛이다. 표 C에 라이센스 액세스 번호 정보 유지부(313)에 격납되는 라이센스 액세스 번호 정보 테이블의 예를 나타낸다.
이후, 라이센스 액세스 번호 정보 테이블의 각 칼럼에 관한 설명을 행한다. "라이센스 액세스 번호" 칼럼은 라이센스 액세스 번호 정보를 격납하는 칼럼이다. "상품 ID" 칼럼은 라이센스 액세스 번호에 근거하여 이용 가능하게 되는 상품의 상품 ID 정보를 격납하는 칼럼이다. "계약 개시 연월일" 칼럼은 계약이 개시된 연월일 정보를 격납하는 칼럼이다. "계약 종료 연월일" 칼럼은 계약이 종료되는 연월일 정보를 격납하는 칼럼이다. "계약 정지 접수 연월일" 칼럼은 계약의 정지를 접수한 연월일 정보를 격납하는 칼럼이다. "계약 갱신" 칼럼은 계약이 갱신되었는지 아닌지의 정보를 격납하는 칼럼이다. 화상 형성장치(112)에 인스톨되어 있는 라이센스 정보에 대하여, 라이센스 서버(101)가 계약을 갱신하는 경우에는, "계약 갱신" 칼럼에 격납된 정보가 TRUE가 된다. 라이센스 액세스 번호 정보 테이블의 레코드는 "라이센스 액세스 번호 정보 레코드"로 부른다. 후술하는 라이센스 액세스 번호 발행 요구 수신부(323)는 각각의 발행된 라이센스 액세스 번호에 대해 라이센스 액세스 번호 정보 레코드를 추가한다.
라이센스 정보 유지부(314)는 라이센스 정보를 유지하는 라이센스 정보 테이블을 라이센스 서버(101)의 하드디스크(224) 내부에 유지하도록 구성된 유닛이다. 표 D에 라이센스 정보 유지부(314)에 격납되는 라이센스 정보 테이블의 예를 나타낸다.
후, 라이센스 정보 테이블의 각 칼럼에 관한 설명을 행한다. "라이센스 액세스 번호" 칼럼은 라이센스 파일 발행시에 사용한 라이센스 액세스 번호 정보를 격납하는 칼럼이다. "디바이스 시리얼 번호" 칼럼은, 발행한 라이센스 파일에 의해 이용할 수 있는 디바이스 번호의 정보를 격납하는 칼럼이다. "라이센스 ID" 칼럼은 라이센스 파일을 고유하게 식별할 수 있는 식별자인 라이센스 ID의 정보를 격납하는 칼럼이다.
라이센스 정보 테이블의 각 레코드는, "라이센스 정보 레코드"로 부른다. 라이센스 정보 레코드는, 라이센스 파일을 발행할 때에 지정된 라이센스 액세스 번호와 디바이스 시리얼 번호의 각각의 조합에 대해 작성된다. 예를 들면, 라이센스 액세스 번호 "LA05"에 대해 2개의 디바이스 시리얼 번호 "AAA00200" 및 "AAA00230"이 지정된 경우에는, 라이센스 정보 테이블에 추가되는 라이센스 정보 레코드의 수가 2이다. 동일한 라이센스 액세스 번호 "LA05"에 대해 복수의 화상 형성장치의 디바이스 시리얼 번호가 연관될 수 있는 이유는, 라이센스 액세스 번호 "LA05"에 할당된 권리 수가 5이기 때문이다. 권리 수가 1인 경우, 라이센스 액세스 번호 "LA05"에는 복수의 화상 형성장치의 디바이스 시리얼 번호가 관련될 수 없다.
어플리케이션 정보 등록 요구 수신부(321)는, 라이센스 서버(101)의 네트워크 I/F(226)로부터 수신한 어플리케이션 정보 등록 요구에 응답하여 실행될 수 있는 유닛이다. 어플리케이션 정보 등록 요구는, 판매사의 정보 처리장치(121)로부터 송신된다.
어플리케이션 정보 등록 요구에는 2종류의 패턴이 있다. 첫 번째 패턴은 어플리케이션 정보 등록 요구에 후술하는 어플리케이션 파일을 포함하는 것을 특징으로 한다. 두 번째 패턴은 어플리케이션 정보 등록 요구에 어플리케이션 ID, 어플리케이션 버전 및 어플리케이션 명을 포함하는 것을 특징으로 한다. 전자는 나중에 화상 형성장치(112)에 어플리케이션을 인스톨하는 경우이다. 후자는 화상 형성장치(112)에 어플리케이션이 프리인스톨된 경우다.
전자의 어플리케이션 정보 등록 요구가 어플리케이션 파일(501)을 포함하고 있는 경우에는, 어플리케이션 정보 등록 요구 수신부(321)는 다음의 처리를 행한다. 어플리케이션 정보 등록 요구 수신부(321)는 수신한 어플리케이션 등록 요구로부터 취득한 어플리케이션 파일(501)을 하드디스크(224)에 격납한다. 그리고, 어플리케이션 정보 등록 요구 수신부(321)는 격납한 어플리케이션 파일의 패스, 어플리케이션 ID, 어플리케이션 명 및 어플리케이션 버전을 취득하고, 신규의 어플리케이션 정보 레코드로서 어플리케이션 정보 테이블에 취득한 정보를 추가한다.
후자의 어플리케이션 정보 등록 요구가 어플리케이션 ID, 어플리케이션 버전 및 어플리케이션 명이 포함하고 있는 경우에는, 어플리케이션 정보 등록 요구 수신부(321)는 어플리케이션 정보 등록 요구로부터 어플리케이션 ID, 어플리케이션 버전 및 어플리케이션 명을 취득하고, 신규의 어플리케이션 정보 레코드로서 어플리케이션 정보 테이블에 취득한 정보를 추가한다.
상품 정보 등록 요구 수신부(322)는, 라이센스 서버(101)의 네트워크 I/F(226)로부터 수신된 상품 정보 등록 요구에 응답하여 실행될 수 있는 유닛이다. 상품 정보 등록 요구는, 판매사의 정보 처리장치(121)로부터 송신될 수 있다. 상품 정보 등록 요구에는 상품 ID, 상품명, 상품 타입, 권리 수 및 어플리케이션 ID를 적어도 포함한다. 상품 정보 요구의 상품 타입이 "시험 사용"인 경우에는, 상품 정보 등록 요구가 이용 일수를 더 포함한다. 또한, 상품 정보 요구의 상품 타입이 "월별"인 경우에는 상품 정보 등록 요구가 계약 기간, 라이센스 정지 일 및 계약 정지 접수일을 더 포함한다.
상품 정보 등록 요구 수신부(322)는, 수신한 상품 정보 등록 요구로부터 취득한 데이터를 신규의 상품 정보 레코드로서 상품 정보 테이블에 추가한다. 라이센스 액세스 번호 발행 요구 수신부(323)는, 라이센스 서버(101)의 네트워크 I/F(226)로부터 수신된 라이센스 액세스 번호 발행 요구에 응답하여 실행될 수 있는 유닛이다. 라이센스 액세스 번호 발행 요구는, 고객과 판매사 사이에서 계약의 개시가 합의되었을 때 판매사의 계약 서버(122)로부터 송신될 수 있다. 라이센스 액세스 번호 발행 요구는 상품 ID를 적어도 포함한다. 라이센스 액세스 번호 발행 요구에 의해 지정한 상품의 상품 타입이 "월별"인 경우에는, 라이센스 액세스 번호 발행 요구는 그 라이센스 액세스 번호를 사용해서 발행된 라이센스 파일을 이용할 수 있는 연월일을 지정하기 위한 계약 개시 연월일을 포함한다.
라이센스 액세스 번호 발행 요구 수신부(323)는, 수신한 라이센스 액세스 번호 발행 요구로부터 취득한 데이터를 신규의 라이센스 액세스 번호 정보 레코드로서 라이센스 액세스 번호 정보 테이블에 추가한다. 라이센스 액세스 번호 발행 요구에 의해 지정한 상품의 상품 타입이 "월별"인 경우에는, 라이센스 액세스 번호 발행 요구 수신부(323)는 라이센스 요구에 포함되는 상품 ID와 일치하는 특정한 상품 정보 레코드를 상품 정보 테이블로부터 취득한다. 그리고, 라이센스 액세스 번호 발행 요구 수신부(323)는 취득한 상품 정보 레코드의 "계약 기간" 칼럼과 "라이센스 정지 일" 칼럼으로부터 격납된 값들을 취득하고, 라이센스 액세스 번호 발행 요구에 포함되는 계약 개시 연월일을 기초로 계약 종료 연월일을 산출한다. 라이센스 액세스 번호 발행 요구 수신부(323)는 산출된 계약 종료 연월일을 라이센스 액세스 번호 정보 레코드의 "계약 종료 연월일" 칼럼에 격납한다.
예를 들면, 상품 ID "P0003"과 계약 개시 연월일 "2015년 4월 4일"에 대한 정보를 수신된 라이센스 액세스 번호 발행 요구가 포함하는 경우, 상품 ID가 "P0003"인 상품의 계약 기간은 1개월이고, 라이센스 정지 일은 월말이다. 그러한 경우에는, 라이센스 액세스 번호 발행 요구 수신부(323)는 월말인 2015년 5월 31일을 "계약 종료 연월일" 칼럼에 격납한다. 또한, 라이센스 액세스 번호 발행 요구 수신부(323)는 "계약 갱신" 칼럼에 FALSE를 격납한다.
계약 정지 요구 수신부(324)는 라이센스 서버(101)의 네트워크 I/F(226)로부터 수신된 계약 정지 요구에 응답하여 실행될 수 있는 유닛이다. 계약 정지 요구는, 고객이 월 과금을 기초로 이용가능한 상품의 계약을 해지할 때에 판매사의 계약 서버(122)로부터 송신될 수 있다. 계약 정지 요구는 고객이 월별 계약을 정지하고 싶은 상품의 지정된 라이센스 액세스 번호를 포함한다. 계약 정지 요구 수신부(324)는, 수신한 계약 정지 요구로부터 취득한 라이센스 액세스 번호를 갖는 라이센스 액세스 번호 정보 레코드를 라이센스 액세스 번호 정보 테이블로부터 취득한다. 그리고, 계약 정지 요구 수신부(324)는, 취득한 라이센스 액세스 번호 정보 레코드의 계약 정지 접수 연월일에 계약 정지 요구를 수신한 연월일을 격납한다. 계약 정지 요구 수신부(324)는 계약 정지의 접수 완료를 통보하기 위해 계약 서버(122)에게 취득한 라이센스 액세스 번호 정보 레코드의 "계약 종료 연월일" 칼럼에 격납된 값을 송신한다.
라이센스 취득 요구 수신부(325)는 라이센스 서버(101)의 네트워크 I/F(226)로부터 수신한 라이센스 취득 요구에 응답하여 실행될 수 있는 유닛이다. 라이센스 취득 요구는 라이센스 액세스 번호와 디바이스 시리얼 번호가 포함된다. 라이센스 취득 요구 수신부(325)는, 도 6a 및 도 6b에 도시된 흐름도를 참조하여 상세히 설명하는 것과 같이, 취득한 라이센스 액세스 번호에 대응하는 라이센스 타입을 갖는 라이센스 파일을 발행한다.
계약 종료 연월일 갱신부(326)는, 계약의 정지 접수일 이전에 라이센스 서버(101)의 계약 정지 요구 수신부(324)에 의해 계약 정지 요구가 수신되지 않은 경우에 계약 만료 타이밍을 연장하도록 구성된 유닛이다. 계약 종료 연월일 갱신부(326)는, 도 7에 도시된 흐름도를 참조하여 이하에서 상세히 설명하는 것과 같이, 라이센스 서버(101)에 의해 정기적으로(예를 들어, 1일 1회) 실행될 수 있다.
갱신 라이센스 취득 요구 수신부(327)는 라이센스 서버(101)의 네트워크 I/F(226)로부터 수신된 갱신 라이센스 취득 요구에 응답하여 실행될 수 있는 유닛이다. 라이센스 취득 요구는 지정된 디바이스 시리얼 번호를 포함한다. 갱신 라이센스 취득 요구 수신부(327)는, 도 8에 도시된 흐름도를 참조하여 이하에서 상세히 설명하는 것과 같이, 취득한 디바이스 시리얼 번호에 대해 계약 만료 타이밍이 연장된 라이센스 파일을 발행하고, 이 발행된 라이센스 파일을 포함하는 응답을 송신한다.
어플리케이션 파일 취득 요구 수신부(328)는 라이센스 서버(101)의 네트워크 I/F(226)로부터 수신된 어플리케이션 파일 요구에 응답하여 실행될 수 있는 유닛이다. 어플리케이션 파일 취득 요구는, 지정된 라이센스 액세스 번호를 포함하고 있다. 어플리케이션 파일 취득 요구 수신부(328)는 취득한 어플리케이션 파일 취득 요구로부터 라이센스 액세스 번호를 취득하고, 그 취득한 라이센스 액세스 번호와 일치하는 특정한 레코드를 라이센스 액세스 번호 정보 레코드로부터 취득한다. 다음에, 어플리케이션 파일 취득 요구 수신부(328)는 취득한 라이센스 액세스 번호 정보 레코드로부터 상품 ID를 취득하고, 취득한 상품 ID와 일치하는 특정한 상품 정보 레코드를 취득한다. 다음에, 어플리케이션 파일 취득 요구 수신부(328)는 취득한 상품 정보 레코드로부터 어플리케이션 ID를 취득한다. 다음에, 어플리케이션 파일 취득 요구 수신부(328)는 취득한 어플리케이션 ID와 일치하는 특정한 어플리케이션 정보 레코드를 취득하고, 그 취득한 어플리케이션 정보 레코드에 포함되는 파일 패스의 어플리케이션 파일을 포함하는 응답을 송신한다. 동일한 어플리케이션 ID에 대응하는 복수의 버전이 있는 경우에는, 복수의 어플리케이션 정보 레코드가 존재한다. 따라서, 어플리케이션 파일 취득 요구 수신부(328)는 각각의 버전 정보를 포함하는 응답을 송신한다. 어플리케이션 파일 요구가 특정한 버전을 지정하는 경우에는, 어플리케이션 파일 취득 요구 수신부(328)는 지정된 버전의 어플리케이션 파일을 포함하는 응답을 송신한다. 또한, 어플리케이션 정보 레코드에 파일 패스가 존재하지 않는 경우에는, 어플리케이션 파일은 존재하지 않는다. 따라서, 어플리케이션 파일 취득 요구 수신부(328)는 Null을 송신한다.
라이센스 전송 요구 수신부(329)는, 라이센스 서버(101)의 네트워크 I/F(226)로부터 수신한 라이센스 전송 요구에 응답하여 실행될 수 있는 유닛이다. 라이센스 전송 요구는, 전송 라이센스 파일(521)과 화상 형성장치(즉, 전송처)의 지정된 디바이스 시리얼 번호를 포함하고 있다.
도 3b는 화상 형성장치(112)의 소프트웨어 구성(302)을 도시한 도면이다. 소프트웨어 구성(302)의 각각의 유닛을 구현하기 위해, 화상 형성장치(112)의 CPU(207)는 화상 형성장치(112)의 하드디스크(208)로부터 휘발성 메모리(210)에 로드된 관련 프로그램을 실행한다. 디바이스 정보 유지부(341)는, 디바이스 정보 테이블을 화상 형성장치(112)의 하드디스크(208)에 유지하도록 구성된 유닛이다. 디바이스 정보 테이블은 화상 형성장치(112)를 고유하게 식별하기 위한 디바이스 시리얼 번호를 유지한다.
디바이스 라이센스 정보 유지부(342)는, 디바이스 라이센스 정보 테이블을 화상 형성장치(112)의 불휘발성 메모리(209)에 유지하도록 구성된 유닛이다. 표 E에 디바이스 라이센스 정보 유지부(342)에 격납되는 디바이스 라이센스 정보 테이블의 예를 나타낸다.
이후, 디바이스 라이센스 정보 테이블의 각 칼럼에 관한 설명을 행한다. "어플리케이션 ID" 칼럼은 어플리케이션 ID 정보를 격납하는 칼럼이다. "어플리케이션 명" 칼럼은 어플리케이션 명 정보를 격납하는 칼럼이다. "어플리케이션 버전" 칼럼은 어플리케이션 버전 정보를 격납하는 칼럼이다. "라이센스 타입" 칼럼은 라이센스 타입 정보를 격납하는 칼럼이다. "스테이터스" 칼럼은 어플리케이션의 기동 스테이터스 정보(예를 들어, "개시" 또는 "정지")를 격납하는 칼럼이다. "이용 가능 개시일" 칼럼은 어플리케이션을 이용할 권리가 개시되는 연월일 정보를 격납하는 칼럼이다. "이용 정지일 칼럼"은 어플리케이션을 이용할 권리가 만료하는 연월일 정보를 격납하는 칼럼이다. 디바이스 라이센스 정보 테이블의 각 레코드는 "디바이스 라이센스 정보 레코드"로 부른다. 라이센스 파일을 사용해서 어플리케이션 파일이 인스톨될 때 디바이스 라이센스 정보 레코드가 추가된다.
디바이스 라이센스 이력 정보 유지부(343)는, 디바이스 라이센스 정보 이력 테이블을 화상 형성장치(112)의 하드디스크(208)와 불휘발성 메모리(209)의 양쪽에 유지하도록 구성된 유닛이다. 디바이스 라이센스 이력 정보 유지부(343)는, 하드디스크(208)에 최대 100,000 건의 이력을 격납할 수 있고 불휘발성 메모리(209)에 100건의 이력을 격납할 수 있다. 또한, 하드디스크(208)가 고장나서 새로운 것으로 교환했을 때에, 디바이스 라이센스 이력 정보 유지부(343)는 불휘발성 메모리(209)에 격납된 100건의 이력을 새로운 하드디스크로 옮겨서, 100건의 이력 데이터를 안전하게 유지한다. 표 F에 디바이스 라이센스 이력 정보 유지부(343)에 격납되는 디바이스 라이센스 정보 이력 테이블의 예를 나타낸다.
이후, 디바이스 라이센스 정보 이력 테이블의 각 칼럼에 관한 설명을 행한다. "라이센스 ID" 칼럼은 인스톨시에 사용된 라이센스의 라이센스 ID 정보를 격납하는 칼럼이다." 어플리케이션 ID" 칼럼은 라이센스 ID에 근거하여 이용 가능하게 된 어플리케이션의 어플리케이션 ID 정보를 격납하는 칼럼이다. "이용 불가" 칼럼은 디바이스로부터의 전송 라이센스 또는 무효화 라이센스의 발행으로 인한 이용 불가를 표시하는 정보를 격납하는 칼럼이다.
인스톨 화면 표시 요구 수신부(351)는, 화상 형성장치(112)의 네트워크 I/F(205)로부터 인스톨 화면 표시 요구를 수신함으로써 실행될 수 있는 유닛이다. 인스톨 화면 표시 요구는, 고객의 정보 처리장치(111)로부터 송신될 수 있다. 인스톨 화면 표시 요구 수신부(351)는, 정보 처리장치(111)(즉, 요구원)에 대해 인스톨 화면(421)을 표시하도록 요구된 데이터를 송신한다.
인스톨 화면 표시 요구 수신부(351)는 화상 형성장치(112)의 조작부(212)로부터 수신된 인스톨 화면 표시 요구에 응답하여 실행될 수 있다. 인스톨 화면 표시 요구 수신부(351)는 인스톨 화면(421)을 화상 형성장치(112)의 표시부(211)에 표시하도록 요구된 데이터를 송신할 수 있다. 인스톨 요구 수신부(352)는, 화상 형성장치(112)의 네트워크 I/F(205)로부터 수신된 인스톨 요구에 응답하여 실행될 수 있는 유닛이다. 인스톨 요구는, 고객의 정보 처리장치(111)의 인스톨 화면(421)에서 인스톨 버튼(423)을 눌렀을 때에 송신될 수 있다. 인스톨 요구는 인스톨 화면(421)을 거쳐 입력된 라이센스 액세스 번호 텍스트 필드(412) 내부의 값인 라이센스 액세스 번호를 포함한다. 인스톨 요구 수신부(352)에 의해 행해지는 처리에 대해서는 도 9a 및 도 9b에 도시된 흐름도를 참조하여 이하에서 상세히 설명한다.
라이센스 갱신 검지부(353)는, 화상 형성장치(112)가 월별 라이센스를 갱신하는 타이밍을 검지하도록 구성된 유닛이다. 라이센스 갱신 검지부(353)는, 디바이스 라이센스 정보 테이블에 라이센스 타입이 "월별"인 디바이스 라이센스 정보 레코드가 존재하고 그것의 이용 정지일이 이 달인 경우에, 라이센스의 갱신 타이밍이 되었다고 판정한다. 또한, 다른 실시형태로서, 라이센스 갱신 검지부(353)는, 라이센스 서버(101)에게 계약 종료 연월일 갱신부(326)에 의해 계약이 갱신되었는지를 문의함으로써 라이센스 갱신의 타이밍을 검지할 수 있다. 라이센스 갱신 검지부(353)가 라이센스의 갱신의 타이밍을 검지하였을 때는 갱신 라이센스 취득 요구부(354)가 실행된다.
갱신 라이센스 취득 요구부(354)는, 화상 형성장치(112)의 네트워크 I/F(205)를 거쳐 라이센스 서버(101)에 대해 갱신 라이센스 취득 요구를 송신하도록 구성된 유닛이다. 갱신 라이센스 취득 요구부(354)에 의해 행해질 수 있는 처리에 대해서는 도 10에 도시된 흐름도를 참조하여 이하에서 상세히 설명한다.
어플리케이션 정보 화면 표시 요구 수신부(355)는 화상 형성장치(112)의 네트워크 I/F(205)로부터 수신된 어플리케이션 정보 화면 표시 요구에 응답하여 실행될 수 있는 유닛이다. 어플리케이션 정보 화면 표시 요구는 고객의 정보 처리장치(111)로부터 송신될 수 있다. 어플리케이션 정보 화면 표시 요구 수신부(355)는, 정보 처리장치(111)에 대해 후술하는 어플리케이션 정보 화면(401)를 표시하도록 요구된 데이터를 송신한다.
어플리케이션 정보 화면 표시 요구 수신부(355)는, 어플리케이션 정보 화면(401)을 작성하기 위해서, 어플리케이션 정보 화면 표시 요구를 수신했을 때에, 디바이스 라이센스 정보 테이블로부터 디바이스 라이센스 정보 레코드를 취득한다. 그리고, 어플리케이션 정보 화면 표시 요구 수신부(355)는, 취득한 디바이스 라이센스 정보 레코드에 근거하여 402 내지 408의 라벨을 표시하도록 설정을 행한다. 더구나, 어플리케이션 정보 화면 표시 요구 수신부(355)는, 라이센스 타입이 "패키지"인 경우에는 전송 버튼(410)을 표시하고, 라이센스 타입이 "시험 사용"인 경우에는 무효화 버튼(411)을 표시한다.
전송 라이센스 발행 요구 수신부(356)는 화상 형성장치(112)의 네트워크 I/F(205)로부터 수신된 전송 라이센스 발행 요구에 응답하여 실행될 수 있는 유닛이다. 전송 라이센스 발행 요구는, 어플리케이션 정보 화면(401)의 전송 버튼(410)이 눌러졌을 때에, 고객의 정보 처리장치(111)로부터 송신될 수 있다. 전송 라이센스 발행 요구는 전송 버튼(410)을 사용하여 눌러진 레코드에 대응하는 "어플리케이션 ID" 라벨(402)의 값을 유지한다.
전송 라이센스 발행 요구 수신부(356)는 수신한 전송 라이센스 발행 요구로부터 취득한 어플리케이션 ID와 일치하는 디바이스 라이센스 이력 정보 레코드의 "이용 불가" 칼럼에 "이용 불가" 값을 세트한다.
또한, 전송 라이센스 발행 요구 수신부(356)는 취득한 어플리케이션 ID와 일치하는 디바이스 라이센스 정보 레코드의 "스테이터스" 칼럼에 "이용 불가" 값을 세트한다. 더구나, 전송 라이센스 발행 요구 수신부(356)는 취득한 어플리케이션 ID와 디바이스 정보 테이블에 격납된 디바이스 시리얼 번호를 포함하는 전송 라이센스 파일(521)을 발행한다. 발행한 전송 라이센스 파일(521)은 정보 처리장치(111)에 의해 취득가능하다. 정보 처리장치(111)로부터 라이센스 서버(101)에 전송 라이센스 파일(521)을 포함하는 라이센스 전송 요구를 송신함으로써, 다른 화상 형성장치에 대한 라이센스 파일의 발행이 실현가능하다.
무효화 라이센스 발행 요구 수신부(357)는 화상 형성장치(112)의 네트워크 I/F(205)로부터 수신한 무효화 라이센스 발행 요구에 응답하여 실행될 수 있는 유닛이다. 무효화 라이센스 발행 요구는, 어플리케이션 정보 화면(401)의 무효화 버튼(411)이 눌러졌을 때에, 고객의 정보 처리장치(111)로부터 송신될 수 있다. 무효화 라이센스 발행 요구는 무효화 버튼(411)을 사용하여 눌러진 레코드에 대응하는 "어플리케이션 ID" 라벨(402)의 값을 유지한다.
무효화 라이센스 발행 요구 수신부(357)는 수신한 무효화 라이센스 발행 요구로부터 취득한 어플리케이션 ID와 일치하는 디바이스 라이센스 이력 정보 레코드의 "이용 불가 칼럼"에 이"용 불가" 값을 세트한다. 또한, 무효화 라이센스 발행 요구 수신부(357)는 취득한 어플리케이션 ID와 일치하는 디바이스 라이센스 정보 레코드의 "스테이터스" 칼럼에 "이용 불가" 값을 세트한다.
더구나, 무효화 라이센스 발행 요구 수신부(357)는 무효화 라이센스 파일을 발행한다. 발행할 무효화 라이센스 파일은 취득한 어플리케이션 ID, 디바이스 정보 테이블에 격납된 디바이스 시리얼 번호, 랜덤하게 생성한 라이센스 ID와, 이용 정지일과 현재의 날짜를 참조하여 산출한 잔여 일수를 포함하는 라이센스 파일(511)이다. 더구나, 무효화 라이센스 파일의 라이센스 타입은 "시험 사용"이다. 발행한 무효화 라이센스 파일은 정보 처리장치(111)에 의해 취득가능하다. 다시 사용하는 경우에, 정보 처리장치(111)로부터 화상 형성장치(112)에 무효화 라이센스 파일을 포함하는 인스톨 요구를 송신함으로써, 잔여 일수를 이용할 수 있다.
어플리케이션 이용 검사부(358)는 화상 형성장치(112)에 인스톨되어 있는 어플리케이션의 이용을 제어할 수 있는 유닛이다. 어플리케이션 이용 검사부(358)는 어플리케이션의 이용 요구에 응답하여 실행될 수 있다. 어플리케이션 이용 검사부(358)는 이용 요구에 대응하는 어플리케이션의 어플리케이션 ID와 일치하는 특정한 디바이스 라이센스 정보 레코드를 디바이스 라이센스 정보 테이블로부터 취득한다. 그리고, 스테이터스가 "개시"이고, 또한 "이용 개시 가능일≤현재의 날짜≤이용 정지일"의 조건이 만족하면, 어플리케이션 이용 검사부(358)는 어플리케이션의 이용 가능한 것으로 판정한다.
도 4a 및 도 4b는 화상 형성장치(112)에 의해 제공될 수 있는 화면의 예를 나타낸 도면이다. 어플리케이션 정보 화면(401)은, 인스톨되어 있는 어플리케이션 및 관련된 라이센스 정보를 표시하고, 각각의 라이센스의 무효화 및 전송에 이용가능한 화면이다. 어플리케이션 정보 화면(401)은 정보 처리장치(111)의 브라우저로부터 수신된 어플리케이션 정보 화면 표시 요구에 근거하여 화상 형성장치(112)로부터 송신되어, 어플리케이션 정보 화면(401)이 정보 처리장치(111)의 표시부(211)에 표시될 수 있다.
"어플리케이션 ID" 라벨(402)은 디바이스 라이센스 정보 테이블에 격납되어 있는 각각의 디바이스 라이센스 정보 레코드의 어플리케이션 ID를 표시하기 위해 설치된 라벨이다. "어플리케이션 명" 라벨(403)은 디바이스 라이센스 정보 테이블에 격납되어 있는 각각의 디바이스 라이센스 정보 레코드의 어플리케이션 명을 표시하기 위해 설치된 라벨이다. "어플리케이션 버전" 라벨(404)은 디바이스 라이센스 정보 테이블에 격납되어 있는 각각의 디바이스 라이센스 정보 레코드의 어플리케이션 버전을 표시하기 위해 설치된 라벨이다. "라이센스 타입" 라벨(405)은 디바이스 라이센스 정보 테이블에 격납되어 있는 각각의 디바이스 라이센스 정보 레코드의 라이센스 타입을 표시하기 위해 설치된 라벨이다. 유저는 "라이센스 타입" 라벨(405)의 정보를 참조함으로써 각 라이센스에 대응하는 라이센스 파일의 타입을 인식하는 것이 가능하게 된다. "스테이터스" 라벨(406)은 디바이스 라이센스 정보 테이블에 격납되어 있는 각각의 디바이스 라이센스 정보 레코드의 스테이터스를 표시하기 위해 설치된 라벨이다.
"이용 개시 가능일" 라벨(407)은 디바이스 라이센스 정보 테이블에 격납되어 있는 각각의 디바이스 라이센스 정보 레코드의 이용 개시 가능일을 표시하기 위해 설치된 라벨이다. "이용 정지일" 라벨(408)은 디바이스 라이센스 정보 테이블에 격납되어 있는 각각의 디바이스 라이센스 정보 레코드의 이용 정지일을 표시하기 위해 설치된 라벨이다. "조작" 영역(409)은 디바이스 라이센스 정보 테이블에 격납되어 있는 각각의 디바이스 라이센스 정보 레코드의 라이센스 타입에 따라 조작가능한 버튼을 표시하기 위해 설치된 영역이다.
전송 버튼(410)은 디바이스 라이센스 정보 테이블에 격납되어 있는 디바이스 라이센스 정보 레코드의 라이센스 타입이 "패키지"인 경우에 표시될 수 있는 버튼이다. 이 전송 버튼(410)을 포함하는 화면을 "라이센스 전송 화면"으로 부르기로 한다. 어플리케이션 정보 화면(401)은 라이센스 전송 화면이다.
라이센스 타입이 "월별"일 때 전송 버튼(410)의 표시를 금지하는 이유는, 계약 서버(122)에 의해 현재 관리되고 있는 화상 형성장치에 비해 디바이스 시리얼 번호의 계약의 차이를 갖지 않도록 의도되었기 때문이다. 라이센스 타입이 "시험 사용"인 경우에 전송 버튼(410)의 표시를 금지하는 이유는, 전송처(화상 형성장치)에 대한 새로운 라이센스 파일을 발행함으로써 시험 사용 판의 이용 기간이 실질적으로 연장될 수 있기 때문이다. 전송 버튼(410)이 눌러진 경우에는, 전송 라이센스 발행 요구가 정보 처리장치(111)의 네트워크 I/F(205)를 거쳐 화상 형성장치(112)로 송신된다. 이 경우에, 전송 라이센스 발행 요구는 "어플리케이션 ID" 라벨(402)에 격납된 값을 포함한다.
무효화 버튼(411)은 디바이스 라이센스 정보 테이블에 격납되어 있는 디바이스 라이센스 정보 레코드의 라이센스 타입이 "시험 사용"인 경우에 표시될 수 있는 버튼이다. 무효화 버튼(411)이 눌러진 경우에는, 무효화 라이센스 발행 요구가 정보 처리장치(111)의 네트워크 I/F(205)를 거쳐 화상 형성장치(112)에 송신한다. 이 경우, 무효화 라이센스 발행 요구는 "어플리케이션 ID" 라벨(402)에 격납된 값을 포함한다.
무효화 버튼(411)의 누름에 의해 송신되는 무효화 라이센스 발행 요구에 응답하여, 송신한 어플리케이션 ID와 일치하는 디바이스 라이센스 정보 레코드의 이용 정지일에 근거하여 산출될 수 있는 잔여 일수(즉, 이용 가능 잔여 일수(518))를 포함하는 라이센스 파일을 취득할 수 있다. 무효화 라이센스 파일을 발행한 후에, 화상 형성장치 송신된 무효화 라이센스 발행 요구에 포함된 어플리케이션 ID에 대응하는 어플리케이션을 이용할 수 없게 된다. 다시 이용한 경우에는, 무효화 라이센스 발행 요구의 응답으로서 취득한 라이센스 파일을 화상 형성장치에 송신함으로써, 무효화 라이센스 파일에 포함되는 잔일 일수 동안 어플리케이션이 이용 가능해 진다.
무효화 라이센스 파일은 어플리케이션의 시험 사용이 불가능하게 되는 기간에 이용 일수가 줄어드는 것을 방지하도록 의도하는 라이센스 파일이다. 그 때문에, 라이센스 타입이 "월별" 또는 "패키지"인 경우에, 그것의 표시를 행해지지 않도록 제어한다.
인스톨 화면(421)은, 의도된 어플리케이션을 인스톨하기 위해 유저가 라이센스 액세스 번호를 입력할 수 있도록 하는 화면이다. 인스톨 화면(421)은 인스톨 화면 표시 요구 수신부(351)에 의해 표시될 수 있다. 인스톨 화면(421)은 정보 처리장치(111)의 브라우저로부터의 수신된 인스톨 화면 표시 요구에 응답하여, 정보 처리장치(111)의 표시부(211)에 인스톨 화면(421)이 표시가능한 형식으로, 화상 형성장치(112)로부터 송신될 수 있다. 라이센스 액세스 번호 입력 필드(422)는, 인스톨할 어플리케이션을 입력할 수 있는 텍스트 필드이다. 인스톨 버튼(423)은, 인스톨 요구를 송신하도록 동작가능한 버튼이다. 인스톨 버튼(423)이 눌러진 경우에는, 인스톨 요구가 정보 처리장치(111)의 네트워크 I/F(205)를 거쳐 화상 형성장치(112)에 송신된다. 이 경우에, 인스톨 요구는 라이센스 액세스 번호 입력 필드(422)에 격납된 값을 포함한다.
도 5a 내지 도 5e는 다양한 파일의 데이터 구조를 도시한 도면이다. 도 5a는 어플리케이션 파일의 데이터 구조를 도시한 도면이다. 어플리케이션 파일(501)은, 공장 출하 상태에서 화상 형성장치(112)에 존재하지 않는 어플리케이션을 인스톨하는데 필요한 확장 프로그램 파일이다. 어플리케이션 파일(501)은, 적어도 다음의 항목 502 내지 505의 정보를 유지하는 데이터다. "어플리케이션 ID"(502) 항목은, 어플리케이션을 고유하게 식별하기 위한 식별자다. "어플리케이션 명"(503) 항목은 어플리케이션의 명칭이다. "어플리케이션 버전"(504) 항목은 어플리케이션의 버전이다. "실행 파일"(505) 항목은, 화상 형성장치(112)에서 실행될 수 있는 프로그램이다.
도 5b는 상품 타입이 "월별"인 경우에 발행되는 라이센스 파일(월별)(511)의 예다. 라이센스 파일(월별)(511)은 화상 형성장치(112)가 어플리케이션 파일(501)을 이용할 때 필요한 파일이다. 라이센스 파일(월별)(511)은, 상품 타입이 "월별"인 상품의 라이센스 액세스 번호에 대해 라이센스 파일이 발행될 때 적어도 다음의 항목 512 내지 517의 정보를 유지하는 데이터다.
"라이센스 ID"(512) 항목은 라이센스 파일을 고유하게 식별가능한 라이센스 ID를 격납하는 데이터다. "라이센스 타입"(513) 항목은 라이센스 파일의 라이센스 타입을 격납하는 데이터다. 상품 타입이 "월별"인 상품의 라이센스 액세스 번호에 대해 라이센스 파일이 발행되는 경우에는 "월별"이라고 하는 정보가 "라이센스 타입"(513) 항목에 격납된다. "어플리케이션 ID"(514) 항목은, 이 라이센스 파일에 근거하여 인스톨가능한 어플리케이션 파일의 어플리케이션 ID를 격납하는 데이터다. "디바이스 시리얼 번호"(515) 항목은, 이 라이센스 파일에 근거하여 인스톨가능한 화상 형성장치(112)의 디바이스 시리얼 번호를 격납하는 데이터다. "이용 개시 연월일"(516) 항목은, 이 라이센스 파일에 근거한 어플리케이션 파일의 이용을 개시할 수 있는 연월일을 격납하는 데이터다. "이용 정지 연월일"(517) 항목은, 이 라이센스 파일에 근거한 어플리케이션 파일의 이용을 종료하는 연월일을 격납하는 데이터다.
도 5c는 상품 타입이 "시험 사용"인 경우에 발행되는 라이센스 파일(시험 사용)(511)의 예다. 라이센스 파일(시험 사용)(511)은 상품 타입이 "시험 사용"인 상품의 라이센스 액세스 번호에 대해 라이센스 파일이 발행된 경우에는 적어도 항목 512 내지 515, 및 521의 정보를 유지하는 데이터다. "라이센스 타입"(513) 항목에는, 상품 타입이 "시험 사용"인 상품의 라이센스 액세스 번호에 대해 라이센스 파일이 발행된 경우에, "시험 사용"이라고 하는 정보가 격납된다. "이용 가능 잔여 일수"(526) 항목은, 이 라이센스 파일에 근거하여 어플리케이션 파일의 이용을 할 수 있는 잔여 일수를 격납하는 데이터다.
도 5d는 상품 타입이 "패키지"인 경우에 발행되는 라이센스 파일(패키지)(511)의 예다. 라이센스 파일(패키지)(511)은 상품 타입이 "패키지"인 상품의 라이센스 액세스 번호에 대해 라이센스 파일이 발행된 경우에는 적어도 항목 512 내지 515의 정보를 유지하는 데이터다. 라이센스 타입(513)에는, 상품 타입이 "패키지"인 상품의 라이센스 액세스 번호에 대해 라이센스 파일이 발행된 경우에, "패키지"라고 하는 정보가 격납된다.
도 5e는 화상 형성장치(112)가 전송 라이센스 발행 요구 수신부(356)를 실행했을 때에 생성되는 라이센스 파일(전송 라이센스 파일(521))의 예다. 전송 라이센스 파일(521)은, 화상 형성장치(112)가 어플리케이션 파일(501)의 이용을 정지할 때 필요하며, 다른 화상 형성장치에서 이 파일이 이용될 수 있도록 라이센스 서버(101)에게 반환되어야 한다. 전송 라이센스 파일(521)은 적어도 다음의 항목 522와 523의 정보를 유지하는 데이터다. "어플리케이션 ID"(522) 항목은, 이용을 정지한 어플리케이션의 어플리케이션 ID를 격납하는 데이터다. "전송원 디바이스 시리얼 번호"(523) 항목은, 어플리케이션의 이용을 정지한 화상 형성장치(112)의 디바이스 시리얼 번호를 격납하는 데이터다.
이후, 도 6a 및 도 6b에 도시된 흐름도를 참조하여 본 발명의 제1 실시형태를 상세히 설명한다. 도 6a는 라이센스 서버(101)의 라이센스 취득 요구 수신부(325)에 의해 네트워크 I/F(226)를 경유해서 수신한 라이센스 취득 요구에 응답하여 행해질 수 있는 처리를 나타낸 흐름도다. 라이센스 취득 요구는 인스톨 화면(421)에서 인스톨 버튼(423)이 눌러졌을 때에, 화상 형성장치(112)로부터 송신될 수 있다.
스텝 S601에 있어서, 라이센스 취득 요구 수신부(325)는 라이센스 취득 요구를 수신한다. 스텝 S602에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S601에서 수신한 라이센스 취득 요구로부터 라이센스 액세스 번호를 취득한다. 스텝 S603에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S601에서 수신한 라이센스 취득 요구로부터 디바이스 시리얼 번호를 취득한다. 스텝 S604에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S602에서 취득한 라이센스 액세스 번호와 일치하는 "라이센스 액세스 번호" 칼럼에 격납된 값을 갖는 라이센스 액세스 번호 정보 레코드를 라이센스 액세스 번호 정보 테이블로부터 취득한다. 스텝 S605에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S604에서 취득한 라이센스 액세스 번호 정보 레코드로부터 상품 ID를 취득한다. 스텝 S606에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S605에서 취득한 상품 ID와 일치하는 "상품 ID" 칼럼에 격납된 값을 갖는 상품 정보 레코드를 상품 정보 테이블로부터 취득한다.
스텝 S607에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S606에서 취득한 상품 정보 레코드로부터 권리 수를 취득한다. 스텝 S608에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S602에서 취득한 라이센스 액세스 번호와 일치하는 "라이센스 액세스 번호" 칼럼에 격납된 값을 갖는 라이센스 정보 레코드 일람을 발행된 라이센스 정보 레코드 일람으로서 취득한다. 스텝 S609에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S608에서 취득한 일람의 발행된 라이센스 정보 레코드의 수가 스텝 S607에서 취득한 권리 수보다도 적은지 아닌가를 체크한다. 발행된 라이센스 정보 레코드의 수가 권리 수보다도 적은 것으로 판정된 경우에(스텝 S609에서 Yes), 새로운 라이센스가 발행가능하기 때문에, 스텝 S610으로 동작을 진행하여 라이센스 발행 처리를 실행한다. 발행된 라이센스 정보 레코드의 수가 권리 수보다도 적지 않은 경우에는(스텝 S609에서 No), 라이센스가 새롭게 발행 가능하지 않기 때문에, 스텝 S612로 동작을 진행한다. 스텝 S610에 있어서, 라이센스 취득 요구 수신부(325)는, 도 6b를 참조하여 이하에서 설명하는 라이센스 발행 처리를 행한다. 스텝 S611에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S610에서 발행된 라이센스를 스텝 S601에서 수신한 라이센스 취득 요구에 대한 응답으로서 송신한 후, 도 6a에 나타낸 흐름도의 처리를 종료한다. 스텝 S612에 있어서, 라이센스 취득 요구 수신부(325)는 이용가능한 권리가 남아 있지 않다는 것을 알리는 에러 메시지를 스텝 S601에서 수신한 라이센스 취득 요구의 응답으로서 송신한 후, 도 6a에 도시된 흐름도의 처리를 종료한다.
도 6b는 라이센스 취득 요구 수신부(325)에 의해 스텝 S610에서 실행되는 처리의 상세히 나타낸 흐름도다. 스텝 S631에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S606에서 취득한 상품 정보 레코드로부터 상품 타입을 취득한다. 스텝 S632에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S606에서 취득한 상품 정보 레코드로부터 어플리케이션 ID를 취득한다. 스텝 S633에 있어서, 라이센스 취득 요구 수신부(325)는 고유한 라이센스 ID를 생성한다. 스텝 S634에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S631에서 취득한 상품 타입이 "월별"인지 아닌지를 체크한다. 상품 타입이 "월별"인 경우에는(스텝 S634에서 Yes), 스텝 S635로 동작을 진행한다. 하고, 상품 타입이 "월별"이 아닌 경우에는(스텝 S634에서 No),스텝 S638로 동작을 진행한다. 스텝 S635에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S604에서 취득한 라이센스 액세스 번호 정보 레코드로부터 계약 개시 연월일을 취득한다. 스텝 S636에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S604에서 취득한 라이센스 액세스 번호 정보 레코드로부터 계약 종료 연월일을 취득한다.
스텝 S637에 있어서, 라이센스 취득 요구 수신부(325)는 라이센스 파일(511)을 생성한다. 이 경우 생성된 라이센스 파일(511)은 스텝 S633에서 생성한 라이센스 ID와, 스텝 S603에서 취득한 디바이스 시리얼 번호와, 스텝 S632에서 취득한 어플리케이션 ID와, 상품 타입 정보 "월별"을 포함한다. 더구나, 라이센스 파일 타입이 "월별"이기 때문에, 발행된 라이센스 파일은 스텝 S635에서 취득한 계약 개시 연월일과, 스텝 S636에서 취득한 계약 종료 연월일을 더 포함한다. 그후, 스텝 S611로 동작을 진행한다. 스텝 S638에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S631에서 취득한 상품 타입이 "시험 사용"인지 아닌지를 체크한다. 상품 타입이 "시험 사용"인 경우에는(스텝 S638에서 Yes), 스텝 S639로 동작을 진행한다. 상품 타입이 "시험 사용"이 아닌 경우에는(스텝 S638에서 No), 스텝 S641로 동작을 진행한다. 스텝 S639에 있어서, 라이센스 취득 요구 수신부(325)는 스텝 S606에서 취득한 상품 정보 레코드로부터 이용 일수를 취득한다.
스텝 S640에 있어서, 라이센스 취득 요구 수신부(325)는 라이센스 파일(511)을 생성한다. 이 경우 생성된 라이센스 파일(511)은 스텝 S633에서 생성한 라이센스 ID, 스텝 S603에서 취득한 디바이스 시리얼 번호, 스텝 S632에서 취득한 어플리케이션 ID와, 상품 타입 정보 "시험 사용"을 포함한다. 더구나, 라이센스 파일 타입이 "시험 사용"이기 때문에, 발행된 라이센스 파일은 스텝 S639에서 취득한 이용 일수를 더 포함한다. 그후, 스텝 S611로 동작을 진행한다. 스텝 S641에 있어서, 라이센스 취득 요구 수신부(325)는 라이센스 파일(511)을 생성한다. 이 경우 생성된 라이센스 파일(511)은, 스텝 S633에서 생성한 라이센스 ID, 스텝 S603에서 취득한 디바이스 시리얼 번호, 스텝 S632에서 취득한 어플리케이션 ID와, 상품 타입 정보"패키지"를 포함한다. 그 후, 스텝 S611로 동작을 진행한다.
도 6a 및 도 6b에 도시된 흐름도의 전술한 처리를 통해, 화상 형성장치(112)에 처음에 어플리케이션 파일(501)을 인스톨하는데 필요한 각각의 라이센스 파일(511)을 상품의 종별에 따라 발행할 수 있다.
도 7은 라이센스 서버(101)의 계약 종료 연월일 갱신부(326)에 의해 매일 실행될 수 있는 처리를 나타낸 흐름도다. 스텝 S701에 있어서, 계약 종료 연월일 갱신부(326)는 화상 형성장치(112)에서 설치된 시계로부터 현재의 연월일을 취득한다. 스텝 S702에 있어서, 계약 종료 연월일 갱신부(326)는 계약이 다음 달에 만료된다는 것을 나타내는 계약 종료 연월일을 갖는 각각의 라이센스 액세스 번호 정보 레코드를 계약 종료 라이센스 액세스 번호 정보 레코드 일람으로서 취득한다. 스텝 S703에 있어서, 계약 종료 연월일 갱신부(326)는 스텝 S702에서 취득한 계약 종료 라이센스 액세스 번호 정보 레코드 일람으로부터 미처리의 레코드를 취득한다. 스텝 S704에 있어서, 계약 종료 연월일 갱신부(326)는 스텝 S703에서 취득한 계약 종료 라이센스 액세스 번호 정보 레코드로부터 상품 ID를 취득한다. 스텝 S705에 있어서, 계약 종료 연월일 갱신부(326)는 스텝 S704에서 취득한 상품 ID와 일치하는 "상품 ID" 칼럼에 격납된 값을 갖는 상품 정보 레코드를 상품 정보 테이블로부터 취득한다.
스텝 S706에 있어서, 계약 종료 연월일 갱신부(326)는 스텝 S705에서 취득한 상품 정보 레코드로부터 계약 정지 접수일을 취득한다. 스텝 S707에 있어서, 계약 종료 연월일 갱신부(326)는 스텝 S706에서 취득한 계약 정지 접수일이 오늘인지를 스텝 S701에서 취득한 연월일을 참조하여 체크한다. 계약 정지 접수일이 오늘인 경우에는(스텝 S707에서 Yes), 스텝 S708로 동작을 진행한다. 계약 정지 접수일이 오늘이 아닌 경우에는(스텝 S707에서 No), 스텝 S713으로 동작을 진행한다. 스텝 S708에 있어서, 계약 종료 연월일 갱신부(326)는 스텝 S703에서 취득한 계약 종료 라이센스 액세스 번호 정보 레코드에 계약 정지 접수일이 존재하는지 아닌지를 체크한다. "계약 정지 접수일" 칼럼에 값이 존재하고 있는 경우에는, 계약 정지 요구 수신부(324)가 계약 서버(122)로부터 계약 정지 요구를 수신하였다는 것을 의미한다. "계약 정지 접수일" 칼럼이 값을 격납하는 경우에는(스텝 S708에서 Yes), 계약 종료 연월일 갱신부(326)는 계약이 현재 정지되어 있다고 판단하여, 계약 종료 연월일을 갱신하지 않는다. 그후, 스텝 S713으로 동작을 진행한다. "계약 정지 접수일" 칼럼이 값을 격납하지 않는 경우에는(스텝 S708에서 No), 스텝 S709로 동작을 진행하여, 계약 만료 타이밍을 자동적으로 연장하도록 계약 종료 연월일을 갱신한다.
스텝 S709에 있어서, 계약 종료 연월일 갱신부(326)는 스텝 S705에서 취득한 계약 기간을 취득한다. 스텝 S710에 있어서, 계약 종료 연월일 갱신부(326)는 스텝 S705에서 취득한 상품 정보 레코드로부터 라이센스 정지일을 취득한다. 스텝 S711에 있어서, 계약 종료 연월일 갱신부(326)는 스텝 S709 및 스텝 S710에서 취득한 계약 기간과 라이센스 정지일을 기초로 스텝 S703에서 취득한 계약 종료 라이센스 액세스 번호 정보 레코드의 계약 종료 연월일을 갱신하기 위한 값을 산출한다. 예를 들면, 계약 종료 연월일이 "2015/5/31"이고, 계약 기간이 "1개월", 라이센스 정지일이 "월말"인 경우에는, 계약 종료 연월일 갱신부(326)에 의해 산출 값 "2015/6/30"(즉, 다음 달의 말)이 얻어질 수 있다. 스텝 S703에서 취득한 계약 종료 라이센스 액세스 번호 정보 레코드의 "계약 종료 연월일" 칼럼에 격납된 값은 산출된 값으로 덮어쓰여질 수 있다(갱신될 수 있다).
스텝 S712에 있어서, 계약 종료 연월일 갱신부(326)는 스텝 S703에서 취득한 계약 종료 라이센스 액세스 번호 정보 레코드의 "계약 갱신" 칼럼에 있는 값으로서 TRUE를 격납한다. "계약 갱신" 칼럼에 격납된 값은, 화상 형성장치(112)로부터 수신된 갱신 라이센스 취득 요구에 응답하여 갱신 라이센스를 발행할지 아닌지를 판정하기 위해서 사용될 수 있다. 스텝 S712에서 "계약 갱신" 칼럼에 값 TRUE가 설정된 후, 갱신 라이센스 취득 요구를 수신했을 때에 갱신 라이센스가 발행될 수 있다. 스텝 S713에 있어서, 계약 종료 연월일 갱신부(326)는 계약 종료 라이센스 액세스 번호 정보 레코드 일람에 미처리의 레코드가 존재하는지를 체크한다. 미처리된 레코드가 존재하는 경우에는(스텝 S713에서 Yes), 스텝 S703으로 동작을 진행한다. 미처리된 레코드가 존재하지 않는 경우에는(스텝 S713에서 No), 계약 종료 연월일 갱신부(326)가 도 7에 도시된 흐름도의 처리를 종료한다.
다음 달에 만료하는 라이센스가 존재하는 경우에, 도 7에 도시된 흐름도의 전술한 처리를 통해, 계약 정지 접수일을 지났더라도, 계약이 정지되지 않는 경우에는, 라이센스의 계약 기간을 갱신할 수 있다.
도 8은 라이센스 서버(101)의 갱신 라이센스 취득 요구 수신부(327)에 의해 네트워크 I/F(226)를 거쳐 수신된 갱신 라이센스 취득 요구에 응답하여 행해질 수 있는 처리를 나타낸 흐름도다. 갱신 라이센스 취득 요구는 화상 형성장치(112)의 갱신 라이센스 취득 요구부(354)로부터 송신될 수 있다. 갱신 라이센스 취득 요구 수신부(327)는, 갱신 라이센스 취득 요구에 포함되는 디바이스 시리얼 번호에 대해 갱신된 계약을 갖는 월별 라이센스 파일을 발행해서, 발행된 라이센스 파일을 포함하는 응답을 송신하는 처리를 행한다.
스텝 S801에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 갱신 라이센스 취득 요구를 수신한다. 스텝 S802에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S801에서 수신한 갱신 라이센스 취득 요구로부터 디바이스 시리얼 번호를 취득한다. 스텝 S803에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S802에서 취득한 디바이스 시리얼 번호와 일치하는 라이센스 정보 레코드를 라이센스 정보 테이블로부터 발행된 라이센스 정보 레코드 일람으로서 취득한다. 스텝 S804에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S803에서 취득한 발행된 라이센스 정보 레코드 일람으로부터 미처리의 레코드를 취득한다. 스텝 S805에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S804에서 취득한 발행된 라이센스 정보 레코드로부터 라이센스 액세스 번호를 취득한다.
스텝 S806에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S805에서 취득한 라이센스 액세스 번호와 일치하는 라이센스 액세스 번호 정보 레코드를 라이센스 액세스 번호 정보 테이블로부터 취득한다. 스텝 S807에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S806에서 취득한 라이센스 액세스 번호 정보 레코드로부터 "계약 갱신" 칼럼에 격납된 값을 취득한다. 스텝 S808에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S807에서 취득한 계약 갱신의 값이 TRUE인지 아닌지를 체크한다. 계약 갱신 값이 TRUE인 경우에는(스텝 S808에서 Yes), 스텝 S809로 동작을 진행한다. 계약 갱신 값이 TRUE가 아닌 경우에는(스텝 S808에서 No), 스텝 S817로 동작을 진행한다. 스텝 S809에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S806에서 취득한 라이센스 액세스 번호 정보 레코드로부터 계약 종료 연월일을 취득한다. 스텝 S810에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S806에서 취득한 라이센스 액세스 번호 정보 레코드로부터 계약 개시 연월일을 취득한다.
스텝 S811에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S806에서 취득한 라이센스 액세스 번호 정보 레코드로부터 상품 ID를 취득한다. 스텝 S812에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S811에서 취득한 상품 ID와 일치하는 상품 정보 레코드를 상품 정보 테이블로부터 취득한다. 스텝 S813에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S812에서 취득한 상품 정보 레코드로부터 어플리케이션 ID를 취득한다. 스텝 S814에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S804에서 취득한 라이센스 정보 레코드로부터 라이센스 ID를 취득한다. 이 경우 취득한 라이센스 ID는 이전에 발행된 라이센스 파일의 라이센스 ID이다. 스텝 S815에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 "갱신용의 라이센스 파일"(511)을 발행한다. "갱신용의 라이센스 파일"(511)의 라이센스 타입(513)으로서 정보 "월별"을 설정한다. 또한, "갱신용 라이센스 파일"(511)을 설정하기 위해, 스텝 S802에서 취득한 디바이스 시리얼 번호, 스텝 S809에서 취득한 계약 종료 연월일, 스텝 S810에서 취득한 계약 개시 연월일, 스텝 S813에서 취득한 어플리케이션 ID를 사용한다. 또한, "갱신용 라이센스 파일"(511)의 라이센스 ID(512)로서 스텝 S814에서 취득한 라이센스 파일 ID를 설정한다.
스텝 S816에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S806에서 취득한 라이센스 액세스 번호 정보 레코드의 "계약 갱신" 칼럼의 값으로서 FALSE를 설정한다. 스텝 S817에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S803에서 취득한 발행된 라이센스 정보 레코드 일람에 미처리의 레코드가 존재하는지 체크한다. 미처리의 레코드가 존재하는 경우에는(스텝 S817에서 Yes), 스텝 S804로 동작을 진행한다. 미처리의 레코드가 존재하지 않는 경우에는(스텝 S817에서 No), 스텝 S818로 동작을 진행한다. 스텝 S818에 있어서, 갱신 라이센스 취득 요구 수신부(327)는 스텝 S815에서 발행한 "갱신용의 라이센스 파일"을 포함하는 응답을 송신하고, 도 8에 도시된 흐름도의 처리를 종료한다.
도 8에 도시된 흐름도의 전술한 처리를 통해, 갱신 라이센스 취득 요구에 포함된 디바이스 시리얼 번호에 대해 연장된 계약 기간을 갖는 갱신된 라이센스 파일을 포함하는 응답을 송신할 수 있다. 이 경우 발행되는 라이센스 파일은 이전에 발행한 라이센스 파일 ID를 유지하는 라이센스일 수 있다.
도 9a는 화상 형성장치(112)에서 인스톨 요구 수신부(352)에 의해 네트워크 I/F(205)를 거쳐 수신된 인스톨 요구에 응답하여 실행될 수 있는 처리를 나타낸 흐름도다. 스텝 S901에 있어서, 인스톨 요구 수신부(352)는 인스톨 요구를 수신한다. 스텝 S902에 있어서, 인스톨 요구 수신부(352)는 수신한 인스톨 요구로부터 라이센스 액세스 번호를 취득한다. 스텝 S903에 있어서, 인스톨 요구 수신부(352)는 디바이스 정보 테이블로부터 디바이스 시리얼 번호를 취득한다. 스텝 S904에 있어서, 인스톨 요구 수신부(352)는 어플리케이션 파일 취득 요구를 라이센스 서버(101)에 대해 송신한다. 이 경우 송신된 어플리케이션 파일 취득 요구는 스텝 S902에서 취득한 라이센스 액세스 번호를 포함한다. 인스톨 요구 수신부(352)는 송신한 어플리케이션 파일 취득 요구의 응답으로서 어플리케이션 파일을 취득한다. 복수의 버전이 있는 경우에는, 수신된 응답이 복수의 버전의 정보를 포함한다. 따라서, 인스톨 요구 수신부(352)는 버전을 선택하고 어플리케이션 파일 취득 요구를 다시 송신하여 의도하는 어플리케이션 파일을 취득한다. 또한, 어플리케이션 파일이 존재하지 않는 경우에는, 인스톨 요구 수신부(352)는 Null을 송신한다.
스텝 S905에 있어서, 인스톨 요구 수신부(352)는 라이센스 취득 요구를 라이센스 서버(101)에 대해 송신한다. 이 경우 송신된 라이센스 취득 요구는 스텝 S902에서 취득한 라이센스 액세스 번호와 스텝 S903에서 취득한 디바이스 시리얼 번호를 포함한다. 인스톨 요구 수신부(352)는 송신한 라이센스 취득 요구의 응답으로서 라이센스 파일을 취득한다. 스텝 S906에 있어서, 인스톨 요구 수신부(352)는 스텝 S904에서 취득한 어플리케이션 파일과 스텝 S905에서 취득한 라이센스 파일에 근거하여 인스톨 처리를 행한다. 인스톨 처리는 도 9b에 도시된 흐름도를 참조하여 이하에서 상세히 설명한다.
도 9b는 스텝 S906에서 행해지는 인스톨 처리의 상세를 나타낸 흐름도다. 스텝 S921에 있어서, 인스톨 요구 수신부(352)는 스텝 S905에서 취득한 라이센스 파일로부터 라이센스 ID를 취득한다. 스텝 S922에 있어서, 인스톨 요구 수신부(352)는 스텝 S905에서 취득한 라이센스 파일로부터 어플리케이션 ID를 취득한다. 스텝 S923에 있어서, 인스톨 요구 수신부(352)는 스텝 S905에서 취득한 라이센스 파일로부터 라이센스 타입을 취득한다. 스텝 S924에 있어서, 인스톨 요구 수신부(352)는 스텝 S904에서 어플리케이션 파일을 성공적으로 취득하였는지 체크한다. 어플리케이션 파일을 성공적으로 취득한 경우에는(스텝 S924에서 Yes), 스텝 S925로 동작을 진행한다. Null로 인해 취득이 실패한 경우에는(스텝 S924에서 No), 스텝 S927로 동작을 진행한다. 스텝 S925에 있어서, 인스톨 요구 수신부(352)는 스텝 S904에서 취득한 어플리케이션 파일로부터 어플리케이션 ID를 취득한다.
스텝 S926에 있어서, 인스톨 요구 수신부(352)는 스텝 S925에서 취득한 어플리케이션 ID가 스텝 S922에서 취득한 어플리케이션 ID와 일치하는지를 체크한다. 비교한 어플리케이션 ID들이 서로 일치하는 경우에는(스텝 S926에서 Yes), 스텝 S929로 동작을 진행한다. 비교한 어플리케이션 ID들이 서로 일치하지 않는 경우에는(스텝 S926에서 No), 스텝 S928로 동작을 진행한다. 스텝 S927에 있어서, 인스톨 요구 수신부(352)는 스텝 S922에서 취득한 어플리케이션 ID와 일치하는 어플리케이션 파일이 화상 형성장치(112)의 하드디스크(208)에 존재하는지를 체크한다. 어플리케이션 파일이 존재하는 경우, 즉, 동일한 라이센스 ID가 이미 디바이스 라이센스 정보 이력 테이블에 존재하는 것으로 인스톨 요구 수신부(352)가 확인한 경우에는(스텝 S927에서 Yes), 스텝 S929로 동작을 진행한다. 동일한 라이센스 ID가 존재하지 않는 경우에는(스텝 S927에서 No), 스텝 S928로 동작을 진행한다. 스텝 S928에 있어서, 인스톨 요구 수신부(352)는 라이센스 파일에 근거하여 이용할 수 있는 어플리케이션 파일이 존재하지 않는다는 것을 통보하는 에러 메시지를 표시하고 도 9b에 도시된 흐름도의 처리를 종료한다.
스텝 S929에 있어서, 인스톨 요구 수신부(352)는 스텝 S921에서 취득한 라이센스 ID가 디바이스 라이센스 정보 이력 테이블의 "라이센스 ID" 칼럼에 격납된 값으로서 존재하는지를 체크한다. 디바이스 라이센스 정보 이력 테이블이 체크된 라이센스 ID를 포함하는 경우에는(스텝 S929에서 Yes), 스텝 S931로 동작을 진행한다. 체크된 라이센스 ID가 존재하지 않는 경우에는(스텝 S929에서 No), 스텝 S930으로 동작을 진행한다. 스텝 S930에 있어서, 인스톨 요구 수신부(352)는 스텝 S921에서 취득한 라이센스 ID를 "라이센스 ID" 칼럼 내에 격납된 값으로서 포함하는 디바이스 라이센스 이력 정보 레코드를 신규로 생성하고, 생성된 디바이스 라이센스 이력 정보 레코드를 디바이스 라이센스 정보 이력 테이블에 추가한다. 스텝 S931에 있어서, 인스톨 요구 수신부(352)는 스텝 S923에서 취득한 라이센스 타입이 "월별"인지 아닌지를 체크한다. 라이센스 타입이 "월별"인 경우에는(스텝 S931에서 Yes) 스텝 S933으로 동작을 진행한다. 라이센스 타입이 "월별"이 아닌 경우에는(스텝 S931에서 No) 스텝 S932로 동작을 행한다. 스텝 S932에 있어서, 인스톨 요구 수신부(352)는 라이센스 파일이 이미 사용된다는 것을 통보하는 에러 메시지를 표시하고, 도 9b에 도시된 흐름도의 처리를 종료한다. 스텝 S933에 있어서, 인스톨 요구 수신부(352)는 스텝 S922에서 취득한 어플리케이션 ID와 일치하는 "어플리케이션 ID" 칼럼의 값을 갖는 디바이스 라이센스 정보 레코드가 존재하는지를 체크한다. 체크된 디바이스 라이센스 정보 레코드가 존재하는 경우에는(스텝 S933에서 Yes), 스텝 S935로 동작을 진행한다. 체크된 디바이스 라이센스 정보 레코드가 존재하지 않는 경우에는(스텝 S933에서 No), 스텝 S934로 동작을 진행한다.
스텝 S934에 있어서, 인스톨 요구 수신부(352)는 디바이스 라이센스 정보 레코드를 신규로 작성해서, 생성된 레코드를 디바이스 라이센스 정보 테이블에 추가한다. 스텝 S923에서 취득한 라이센스 타입이 "월별"인 경우, 디바이스 라이센스 정보 레코드는 라이센스 파일(511)에 포함되는 "라이센스 타입"(513) 항목, "이용 개시 연월일"(516) 항목 및 "이용 정지 연월일"(517) 항목의 정보를 포함한다. 스텝 S923에서 취득한 라이센스 타입이 "시험 사용"인 경우, 디바이스 라이센스 정보 레코드는 라이센스 파일(511)에 포함되는 "이용 가능 잔여 일수"(518)를 현재의 연월일에 가산하여 얻어진 항목 "라이센스 타입"(513) 및 연월일의 정보를 포함한다. 스텝 S923에서 취득한 라이센스 타입이 "패키지"인 경우, 디바이스 라이센스 정보 레코드는 라이센스 파일(511)에 포함되는 "라이센스 타입"(513) 항목의 정보를 포함한다. 디바이스 라이센스 정보 레코드는 어플리케이션 파일(501)에 포함되는 "어플리케이션 ID"(502) 항목, "어플리케이션 명"(503) 항목 및 "어플리케이션 버전"(504) 항목을 더 포함한다. 또한, 인스톨 요구 수신부(352)는 디바이스 라이센스 정보 레코드의 "스테이터스" 칼럼 내부에 격납된 값으로 "개시"를 설정한다.
스텝 S935에 있어서, 인스톨 요구 수신부(352)는 스텝 S933에서 취득한 디바이스 라이센스 정보 레코드를 갱신한다. 스텝 S923에서 취득한 라이센스 타입이 "월별"인 경우, 인스톨 요구 수신부(352)는, 라이센스 파일(511)에 포함되는 "이용 정지 연월일"(517) 항목의 값으로 "이용 정지" 칼럼에 격납된 값을 갱신하도록, 디바이스 라이센스 정보 레코드를 갱신한다. 스텝 S923에서 취득한 라이센스 타입이 "시험 사용"인 경우, 인스톨 요구 수신부(352)는, 라이센스 파일(511)에 포함되는 "이용 가능 잔여 일수"(518) 항목의 값을 "이용 정지" 칼럼에 격납된 값에 가산하도록, 디바이스 라이센스 정보 레코드를 갱신한다. 본 실시형태에서는, 라이센스 타입이 "월별"인 경우에, 라이센스 파일에 포함된 "이용 정지 연월일"(517) 항목의 값으로 "이용 정지" 칼럼에 격납된 값을 덮어쓴다. 그러나, "이용 정지 연월일"(517) 항목의 값이 디바이스 라이센스 정보 레코드의 이용 정지일보다도 오래된 경우에는, 인스톨 요구 수신부(352)는 디바이스 라이센스 정보 레코드의 갱신을 취소할 수 있다. 스텝 S936에 있어서, 인스톨 요구 수신부(352)는 스텝 S904 또는 스텝 S927에서 취득한 어플리케이션 파일을 유효로 한다.
이상에서 설명한 도 9a 및 도 9b에 도시된 흐름도의 처리를 통해, 수신된 인스톨 요구에 응답하여 어플리케이션의 인스톨을 행할 수 있다. 이 경우, 취득한 라이센스 파일의 라이센스 ID가 이미 이용되는 경우에는, 라이센스 타입이 "월별"인 것을 확인하였을 때 만료 타이밍을 갱신하고, 라이센스 타입이 "월별" 이외인 것을 확인하였을 때 처리를 중단(에러 처리)할 수 있다. 전술한 처리를 행함으로써, 불법 이용(에를 들어, 이전에 이용한 라이센스 파일을 사용해서 유효 일자를 연장시키는 행위)을 방지할 수 있다.
도 10은 화상 형성장치(112)에서 라이센스 갱신 검지부(353)에 의해 개시될 수 있는 갱신 라이센스 취득 요구부(354)에 의해 실행될 수 있는 처리를 나타낸 흐름도다. 스텝 S1001에 있어서, 갱신 라이센스 취득 요구부(354)는 라이센스 서버(101)에 갱신 라이센스 취득 요구를 송신한다. 갱신 라이센스 취득 요구는 디바이스 정보 테이블로부터 취득한 디바이스 시리얼 번호를 포함한다. 스텝 S1002에 있어서, 갱신 라이센스 취득 요구부(354)는 스텝 S1001에서 송신한 갱신 라이센스 요구에 응답으로서 라이센스 파일을 수신한다.
스텝 S1003에 있어서, 갱신 라이센스 취득 요구부(354)는 스텝 S1002에서 수신한 라이센스 파일로부터 어플리케이션 ID를 취득한다. 스텝 S1004에 있어서, 갱신 라이센스 취득 요구부(354)는 스텝 S1003에서 취득한 어플리케이션 ID와 일치하는 "어플리케이션 ID" 칼럼의 값을 갖는 레코드가 라이센스 정보 테이블에 존재하고 있는지를 체크한다. 체크된 레코드가 존재하는 경우에는(스텝 S1004에서 Yes), 스텝 S1006으로 동작을 진행한다. 체크된 레코드가 존재하지 않는 경우에는(스텝 S1004에서 No), 스텝 S1005로 동작을 진행한다.
스텝 S1005에 있어서, 갱신 라이센스 취득 요구부(354)는 갱신할 어플리케이션이 존재하지 않는다는 것을 통보하는 에러 메시지를 포함하는 응답을 송신한다. 스텝 S1006에 있어서, 갱신 라이센스 취득 요구부(354)는 스텝 S1002에서 취득한 라이센스 파일로부터 라이센스 ID를 취득한다. 스텝 S1007에 있어서, 갱신 라이센스 취득 요구부(354)는 스텝 S1002에서 취득한 라이센스 파일로부터 라이센스 타입을 취득한다. 스텝 S1008에 있어서, 갱신 라이센스 취득 요구부(354)는 스텝 S1006에서 취득한 라이센스 ID와 일치하는 "라이센스 ID 칼럼"에 격납된 값을 갖는 레코드가 디바이스 라이센스 정보 이력 테이블에 존재하는지를 체크한다. 디바이스 라이센스 정보 이력 테이블이 체크된 레코드를 포함하는 경우에는(스텝 S1008에서 Yes), 스텝 S1009로 동작을 진행한다. 체크된 레코드가 존재하지 않는 경우에는(스텝 S1008에서 No) 스텝 S1011로 동작을 진행한다. 스텝 S1009에 있어서, 갱신 라이센스 취득 요구부(354)는 스텝 S1007에서 취득한 라이센스 타입이 "월별"인지를 체크한다. 라이센스 타입이 "월별"인 경우에는(스텝 S1009에서 Yes), 스텝 S1012로 동작을 진행한다. 라이센스 타입이 "월별"이 아닌 경우에는(스텝 S1009에서 No), 스텝 S1010으로 동작을 진행한다. 스텝 S1010에 있어서, 갱신 라이센스 취득 요구부(354)는 라이센스가 이미 사용된다는 것을 통보하는 에러 메시지를 포함하는 응답을 송신한다.
스텝 S1011에 있어서, 갱신 라이센스 취득 요구부(354)는 스텝 S1006에서 취득한 라이센스 ID를 유지하는 디바이스 라이센스 이력 정보 레코드를 신규로 생성해서, 생성된 디바이스 라이센스 이력 정보 레코드를 디바이스 라이센스 정보 이력 테이블에 추가한다. 스텝 S1012에 있어서, 갱신 라이센스 취득 요구부(354)는 스텝 S1004에서 취득한 디바이스 라이센스 정보 레코드의 이용 정지일을 갱신한다. 스텝 S1007에서 취득한 라이센스 타입이 "월별"인 경우에는 갱신 라이센스 취득 요구부(354)는 스텝 S1002에서 취득한 라이센스 파일의 이용 정지 연월일(517)의 값으로 이용 정지일을 덮어쓴다. 스텝 S1007에서 취득한 라이센스 타입이 "시험 사용"인 경우에는 갱신 라이센스 취득 요구부(354)는 스텝 S1002에서 취득한 라이센스 파일의 "이용 가능 잔여 일수"의 값을 가산한다. 본 실시형태에서는, 라이센스 타입이 "월별"인 경우에, 라이센스 파일에 포함된 이용 정지 연월일(517)의 값으로 덮어쓰기를 행한다. 그러나, "이용 정지 연월일"(517)의 값이 디바이스 라이센스 정보 레코드의 이용 정지일보다도 오래된 경우에는, 갱신 라이센스 취득 요구부(354)는 디바이스 라이센스 정보 레코드의 갱신을 취소할 수 잇다.
이상 설명한 도 10에 도시된 흐름도의 처리를 통해, 취득한 라이센스 파일의 라이센스 ID가 이미 이용되는 경우에는, 라이센스 타입이 "월별"인 경우에는 만료 타이밍을 갱신하고, 라이센스 타입이 "월별" 이외엔 경우에는 (에러 처리로서) 처리를 중단할 수 있다. 중단(또는 에러) 처리를 행함으로써, 불법 이용(에를 들어, 이전에 이용한 라이센스 파일을 사용해서 유효 일자를 연장시키는 행위)을 방지할 수 있다. 한편, 상품이 월 과금에 기초할 때에는, 보다 많은 라이센스 이력을 정보 처리장치가 유지할 수 있도록, 라이센스 ID의 일치를 에러로 간주하지 않고, 라이센스 기간을 갱신할 수 있다.
기타 실시형태
본 발명의 실시형태는, 본 발명의 전술한 실시형태(들)의 1개 이상의 기능을 수행하기 위해 기억매체('비일시적인 컴퓨터 판독가능한 기억매체'로서 더 상세히 언급해도 된다)에 기록된 컴퓨터 실행가능한 명령(예를 들어, 1개 이상의 프로그램)을 판독하여 실행하거나 및/또는 전술한 실시예(들)의 1개 이상의 기능을 수행하는 1개 이상의 회로(예를 들어, 주문형 반도체 회로(ASIC)를 포함하는 시스템 또는 장치의 컴퓨터나, 예를 들면, 전술한 실시형태(들)의 1개 이상의 기능을 수행하기 위해 기억매체로부터 컴퓨터 실행가능한 명령을 판독하여 실행함으로써, 시스템 또는 장치의 컴퓨터에 의해 수행되는 방법에 의해 구현될 수도 있다. 컴퓨터는, 1개 이상의 중앙처리장치(CPU), 마이크로 처리장치(MPU) 또는 기타 회로를 구비하고, 별개의 컴퓨터들의 네트워크 또는 별개의 컴퓨터 프로세서들을 구비해도 된다. 컴퓨터 실행가능한 명령은, 예를 들어, 기억매체의 네트워크로부터 컴퓨터로 주어져도 된다. 기록매체는, 예를 들면, 1개 이상의 하드디스크, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 분산 컴퓨팅 시스템의 스토리지, 광 디스크(콤팩트 디스크(CD), 디지털 다기능 디스크(DVD), 또는 블루레이 디스크(BD)TM 등), 플래시 메모리소자, 메모리 카드 등을 구비해도 된다.
본 발명은, 상기한 실시형태의 1개 이상의 기능을 실현하는 프로그램을, 네트워크 또는 기억매체를 개입하여 시스템 혹은 장치에 공급하고, 그 시스템 혹은 장치의 컴퓨터에 있어서 1개 이상의 프로세서가 프로그램을 읽어 실행하는 처리에`서도 실행가능하다. 또한, 1개 이상의 기능을 실현하는 회로(예를 들어, ASIC)에 의해서도 실행가능하다.
예시적인 실시형태들을 참조하여 본 발명을 설명하였지만, 본 발명이 이러한 실시형태에 한정되지 않는다는 것은 자명하다. 이하의 청구범위의 보호범위는 가장 넓게 해석되어 모든 변형, 동등물 구조 및 기능을 포괄하여야 한다.

Claims (11)

  1. 라이센스 파일을 기초로 어플리케이션의 동작을 제어할 수 있는 정보 처리장치로서,
    인스톨된 라이센스 파일을 고유하게 식별하는 라이센스 식별 정보를 이력 테이블에 유지하는 유지수단과,
    라이센스 파일을 인스톨하는 지시를 수신하고, 상기 인스톨 지시된 라이센스 파일을 고유하게 식별하는 상기 라이센스 식별 정보가 상기 이력 테이블에 존재하는 경우, 상기 라이센스 파일이 다시 인스톨되는 것을 방지하는 제어수단과,
    상기 인스톨 지시된 라이센스 파일로부터 취득한 라이센스 타입 정보를 기초로, 상기 라이센스 파일의 타입이 정기적으로 과금이 필요한 상품의 라이센스 타입인지의 여부를 판정하는 판정 수단을 구비하고,
    상기 라이센스 파일의 상기 인스톨이 지시되었을 때에, 상기 제어수단은, 상기 인스톨 지시된 라이센스 파일의 타입이 정기적으로 과금이 필요한 상품의 라이센스 타입이다라고 상기 판정수단이 판정한 경우에는, 상기 인스톨 지시된 라이센스 파일을 고유하게 식별하는 상기 라이센스 식별 정보가 상기 이력 테이블에 존재하더라도, 상기 라이센스 파일을 인스톨하도록 제어를 행하는 정보 처리장치.
  2. 제 1항에 있어서,
    유저가 상기 정기적으로 과금이 필요한 상품의 라이센스 타입의 라이센스 파일을 다른 정보 처리장치에 전송하는 것을 지시하지 못하게 하고, 상기 유저가 상기 정기적으로 과금이 필요한 상품의 라이센스 타입의 라이센스 파일 이외의 라이센스 파일을 다른 정보 처리장치에 전송하는 것을 지시할 수 있도록 하는 라이센스 전송 화면을 표시하는 표시수단을 더 구비한 정보 처리장치.
  3. 제 2항에 있어서,
    상기 표시수단에 의해 표시된 상기 라이센스 전송 화면은 각 라이센스 파일의 타입을 인식할 수 있는 정보 처리장치.
  4. 제 2항 또는 제 3항에 있어서,
    라이센스 파일이 상기 정기적으로 과금이 필요한 상품의 라이센스 타입의 라이센스 파일 이외이고 그것의 이용 정지 일자가 사전에 정해진 경우에, 상기 표시수단은, 상기 유저가, 라이센스 파일을 전송하는 것 대신에, 라이센스 파일의 무효를 지시할 수 있도록 하는 상기 라이센스 전송 화면을 표시하는 정보 처리장치.
  5. 제 1항 내지 제 3항 중 어느 한 항에 있어서,
    상기 정기적으로 과금이 필요한 상품의 라이센스 타입의 라이센스 파일은, 고객과의 라이센스 갱신 계약에 근거하여 라이센스의 갱신시에 발행되고, 상기 라이센스 갱신에 근거하여 할당되는 라이센스 식별 정보가 과거에 발행된 라이센스 파일에 할당된 라이센스 식별 정보와 동일하게 되도록 발행되는 정보 처리장치.
  6. 제 1항 내지 제 3항 중 어느 한 항에 있어서,
    상기 정기적으로 과금이 필요한 상품의 라이센스 타입의 라이센스 파일에 포함되는 정지일 또는 상기 라이센스 파일을 발행하는 라이센스 서버에 대한 문의에 근거하여 상기 라이센스 파일의 갱신이 필요하다고 판단한 경우에, 상기 정기적으로 과금이 필요한 상품의 라이센스 타입의 라이센스 파일의 발행을 요구하는 정보 처리장치.
  7. 제 1항 내지 제 3항 중 어느 한 항에 있어서,
    상기 정기적으로 과금이 필요한 상품의 라이센스 타입의 라이센스 파일 이외의 라이센스 파일은, 상기 라이센스 파일이 발행될 때마다 상기 라이센스 식별 정보가 고유하게 할당되도록 발행되는 라이센스 파일인 정보 처리장치.
  8. 제 1항 내지 제 3항 중 어느 한 항에 있어서,
    상기 라이센스 파일의 인스톨이 지시되었을 때에, 상기 제어수단은, 상기 인스톨 지시된 라이센스 파일을 고유하게 식별하는 상기 라이센스 식별 정보가 상기 이력 테이블에 포함되어 있는 경우, 상기 라이센스 파일이 이미 사용되고 있다는 것을 통보하는 에러 메시지를 표시하는 정보 처리장치.
  9. 제 1항 내지 제 3항 중 어느 한 항에 있어서,
    상기 라이센스 파일은, 상기 라이센스 식별 정보 및 어플리케이션 ID의 적어도 2개를 포함하는 정보 처리장치.
  10. 라이센스 파일을 기초로 어플리케이션의 동작을 제어할 수 있는 정보 처리장치를 위한 방법으로서,
    인스톨된 라이센스 파일을 고유하게 식별하는 라이센스 식별 정보를 이력 테이블에 유지하는 단계와,
    라이센스 파일을 인스톨하는 지시를 수신하고, 상기 인스톨 지시된 라이센스 파일을 고유하게 식별하는 상기 라이센스 식별 정보가 상기 이력 테이블에 존재하는 경우, 상기 라이센스 파일이 다시 인스톨되는 것을 방지하는 단계와,
    상기 인스톨 지시된 라이센스 파일로부터 취득한 라이센스 타입 정보를 기초로, 상기 라이센스 파일의 타입이 정기적으로 과금이 필요한 상품의 라이센스 타입인지의 여부를 판정하는 단계를 포함하고,
    상기 라이센스 파일의 상기 인스톨이 지시되었을 때에, 상기 방법은, 상기 판정하는 단계에서 상기 인스톨 지시된 라이센스 파일의 타입이 정기적으로 과금이 필요한 상품의 라이센스 타입이다라고 판정된 경우에는, 상기 인스톨 지시된 라이센스 파일을 고유하게 식별하는 상기 라이센스 식별 정보가 상기 이력 테이블에 존재하더라도, 상기 라이센스 파일을 인스톨하도록 제어를 행하는 것을 포함하는 방법.
  11. 프로세서에 의해 실행될 때, 정보 처리장치를 제어하여, 라이센스 파일을 기초로 어플리케이션의 동작을 제어할 수 있는 방법을 실행하는 명령들을 기억하는 비일시적인 컴퓨터 판독가능한 기억매체로서, 상기 방법은,
    인스톨된 라이센스 파일을 고유하게 식별하는 라이센스 식별 정보를 이력 테이블에 유지하는 단계와,
    라이센스 파일을 인스톨하는 지시를 수신하고, 상기 인스톨 지시된 라이센스 파일을 고유하게 식별하는 상기 라이센스 식별 정보가 상기 이력 테이블에 존재하는 경우, 상기 라이센스 파일이 다시 인스톨되는 것을 방지하는 단계와,
    상기 인스톨 지시된 라이센스 파일로부터 취득한 라이센스 타입 정보를 기초로, 상기 라이센스 파일의 타입이 정기적으로 과금이 필요한 상품의 라이센스 타입인지의 여부를 판정하는 단계와,
    상기 라이센스 파일의 상기 인스톨이 지시되었을 때에, 상기 판정하는 단계에서 상기 인스톨 지시된 라이센스 파일의 타입이 정기적으로 과금이 필요한 상품의 라이센스 타입이다라고 판정된 경우에는, 상기 인스톨 지시된 라이센스 파일을 고유하게 식별하는 상기 라이센스 식별 정보가 상기 이력 테이블에 존재하더라도, 상기 라이센스 파일을 인스톨하도록 제어를 행하는 단계를 포함하는 기억매체.
KR1020160078337A 2015-06-26 2016-06-23 정보 처리장치, 방법, 및 기억매체 KR102031585B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2015-128691 2015-06-26
JP2015128691A JP6562734B2 (ja) 2015-06-26 2015-06-26 情報処理装置、方法、およびプログラム

Publications (2)

Publication Number Publication Date
KR20170001618A KR20170001618A (ko) 2017-01-04
KR102031585B1 true KR102031585B1 (ko) 2019-10-14

Family

ID=57602551

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160078337A KR102031585B1 (ko) 2015-06-26 2016-06-23 정보 처리장치, 방법, 및 기억매체

Country Status (4)

Country Link
US (1) US10621311B2 (ko)
JP (1) JP6562734B2 (ko)
KR (1) KR102031585B1 (ko)
CN (1) CN106293551B (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6682849B2 (ja) * 2015-12-22 2020-04-15 株式会社Jvcケンウッド プログラム、情報処理装置、管理方法
JP6882645B2 (ja) * 2016-10-06 2021-06-02 富士フイルムビジネスイノベーション株式会社 情報処理装置、情報処理システム及びプログラム
JP6796861B2 (ja) * 2017-04-11 2020-12-09 株式会社アクセル アプリケーションソフトウェアの提供及び認証方法並びにそのためのシステム
CN107358032B (zh) * 2017-06-23 2020-05-19 深圳市康冠医疗设备有限公司 一种产品的升级方法、装置及产品升级系统
JP7183873B2 (ja) * 2019-03-05 2022-12-06 京セラドキュメントソリューションズ株式会社 電子機器及び電子機器の制御方法
CN111143788B (zh) * 2019-12-31 2022-04-29 奇安信科技集团股份有限公司 许可证处理方法、电子设备、存储介质
CN112286553B (zh) * 2020-10-27 2021-11-05 北京深思数盾科技股份有限公司 用户锁的升级方法、装置、系统、电子设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040088176A1 (en) * 2002-11-04 2004-05-06 Balaji Rajamani System and method of automated licensing of an appliance or an application
US20040249762A1 (en) * 2003-06-03 2004-12-09 Bea Systems, Inc. Self-service customer license management application using configuration input pages
KR100957269B1 (ko) 2002-01-15 2010-05-12 산요덴키가부시키가이샤 기밀 데이터의 입출력을 정확하게 재개 가능한 기억 장치
JP2012247925A (ja) * 2011-05-26 2012-12-13 Canon Inc 装置、制御方法、およびプログラム。

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006035A (en) * 1997-12-31 1999-12-21 Network Associates Method and system for custom computer software installation
US7900246B1 (en) * 2005-05-31 2011-03-01 Adobe Systems Incorporated Software deactivation based on a deactivation time period
US20100057674A1 (en) 2008-08-27 2010-03-04 Honeywell International, Inc. Floating licenses for a real time license system
JP2011008659A (ja) 2009-06-29 2011-01-13 Canon Inc 情報処理装置、制御方法、制御プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100957269B1 (ko) 2002-01-15 2010-05-12 산요덴키가부시키가이샤 기밀 데이터의 입출력을 정확하게 재개 가능한 기억 장치
US20040088176A1 (en) * 2002-11-04 2004-05-06 Balaji Rajamani System and method of automated licensing of an appliance or an application
US20040249762A1 (en) * 2003-06-03 2004-12-09 Bea Systems, Inc. Self-service customer license management application using configuration input pages
JP2012247925A (ja) * 2011-05-26 2012-12-13 Canon Inc 装置、制御方法、およびプログラム。

Also Published As

Publication number Publication date
CN106293551B (zh) 2020-03-24
CN106293551A (zh) 2017-01-04
JP6562734B2 (ja) 2019-08-21
JP2017016167A (ja) 2017-01-19
US10621311B2 (en) 2020-04-14
KR20170001618A (ko) 2017-01-04
US20160378959A1 (en) 2016-12-29

Similar Documents

Publication Publication Date Title
KR102031585B1 (ko) 정보 처리장치, 방법, 및 기억매체
JP5413078B2 (ja) 機器管理システム、機器管理装置、仲介装置、機器管理方法、及び機器管理プログラム
BR112016024107B1 (pt) Sistema de impressão e método de controlar sistema de impressão
US8792111B2 (en) Image processing apparatus, information processing method, and storage medium
CN111353073B (zh) 终端设备标识信息处理方法、装置及电子设备
US10528304B2 (en) Server for placing an order based on identification information for identifying a source or purchase, image processing apparatus, and system
JP5732777B2 (ja) 情報処理装置
US20180144108A1 (en) License management system and license management method
US20150294093A1 (en) Management system, information processing device, management server, control method therefor, and program
US8885210B2 (en) Image forming apparatus and control method thereof
JP4075586B2 (ja) インベントリ情報管理方法
US20170329939A1 (en) Information processing apparatus, programmable device, license management system, and license management method
JP2017016636A (ja) 情報処理システム、情報処理装置、情報処理方法、プログラム
JP2017188796A (ja) 情報処理システム、情報処理方法及びプログラム
JP6656014B2 (ja) ライセンスシステム、ライセンス管理サーバ、方法、およびプログラム
US9569600B2 (en) Information processing apparatus with license information management
US20160094659A1 (en) Information processing system and information processing method
JP6840952B2 (ja) 店舗機器所在管理システム
EP3872613A1 (en) Information processing apparatus, information processing system, and method
JP5704219B2 (ja) 機器管理システム及び機器管理方法
JP6597240B2 (ja) システム、管理装置および管理方法
JP6710977B2 (ja) 情報処理装置及び情報処理プログラム
JP2013047900A (ja) 情報処理装置
JP2016081455A (ja) 管理システム、および、管理システムの制御方法
JP5951127B2 (ja) プログラマブルロジックコントローラ

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