KR20160019436A - 제3자 제품에 대한 교차 스토어 라이센싱 기법 - Google Patents

제3자 제품에 대한 교차 스토어 라이센싱 기법 Download PDF

Info

Publication number
KR20160019436A
KR20160019436A KR1020157035034A KR20157035034A KR20160019436A KR 20160019436 A KR20160019436 A KR 20160019436A KR 1020157035034 A KR1020157035034 A KR 1020157035034A KR 20157035034 A KR20157035034 A KR 20157035034A KR 20160019436 A KR20160019436 A KR 20160019436A
Authority
KR
South Korea
Prior art keywords
product
customer
store
global
licensing service
Prior art date
Application number
KR1020157035034A
Other languages
English (en)
Inventor
데이비드 모와트
데이비드 아스
파이터 카셀만
오웬 오브라이언
테리 패럴
Original Assignee
마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 filed Critical 마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Publication of KR20160019436A publication Critical patent/KR20160019436A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/18Legal services
    • G06Q50/184Intellectual property management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0212Chance discounts or incentives
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0623Item investigation
    • G06Q30/0625Directed, with specific intent or strategy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • Technology Law (AREA)
  • Development Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Primary Health Care (AREA)
  • Human Resources & Organizations (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Operations Research (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Game Theory and Decision Science (AREA)
  • Cash Registers Or Receiving Machines (AREA)

Abstract

전역 라이센싱 서비스는 고객을, 하나 이상의 스토어에서 그 고객이 행한 구매에 매핑하는 것을 용이하게 한다. 다양한 스토어들에서 고객에 의해 사용되는 하나 이상의 고객 식별자는 중앙 데이터 저장소에 저장된다. 다양한 고객 식별자가 고객에 의해 행해진 구매에 매핑되어 중앙 트랜잭션 매핑을 제공한다. 전역 라이센싱 서비스는, 고객이 다른 스토어에서 이전에 제품을 구매했음을 스토어가 결정할 수 있게 하는 방식을 제공함으로써, 교차 스토어 라이센싱을 가능하게 할 수 있다. 일부 구현에서, 고객이 이전에 제품을 구매했으면, 고객에게는 제품이 무료로 제공될 수 있거나 제품에 대한 할인 가격이 제공될 수 있다.

Description

제3자 제품에 대한 교차 스토어 라이센싱 기법{CROSS-STORE LICENSING FOR THIRD PARTY PRODUCTS}
컴퓨팅 디바이스 시장은 지난 수십 년에 걸쳐 점점 더 단편화(fragmented)되어 왔다. 다수의 회사는 자신의 회사에서 제공하는 장치에서 작동하도록 연동되는 자사 브랜드의 제품을 제공한다. 랩탑(laptop), 개인용 컴퓨터(PC), 태블릿 및 스마트폰까지, 고객이 사용하도록 이용 가능한 디바이스의 유형들은 해가 갈수록 증가한다. 고객은 흔히 디바이스의 편의성에 기초하여 또는 디바이스가 제공할 수 있는 능력(capability)을 고려하여 하나 이상의 디바이스들을 선택한다. 고객은 업무를 위해 PC를 사용하고 개인 활동을 위해 태블릿을 사용할 수 있다. 고객은 또한 자신의 생활과 업무의 다양한 양상에 스마트폰을 점점 더 사용하여, 개인 및 업무 컴퓨팅의 상호 연결성이 증가된다.
다양한 유형의 디바이스를 사용하는 것 외에도, 고객은 전형적으로 둘 이상의 회사에 의해 판매되는 디바이스들을 사용한다. 고객이 제1 제조사가 만든 무선 모바일 디바이스, 제2 제조사가 만든 태블릿 및 제3 제조사가 만든 랩탑을 사용하는 것이 드물지 않다. 고객은 흔히 동일한 기능을 수행하기 위하여 둘 이상의 디바이스를 사용한다. 고객은 PC, 태블릿 및 무선 모바일 디바이스를 사용하여, 이메일을 확인하고, 문서를 작성하고, 연구 등을 수행할 수 있다.
디바이스들과 그 디바이스들의 용도 사이에는 중복성이 있으므로, 디바이스의 제조사는 경쟁사와 자신을 구별하기 위한 독점적 또는 회사 특정 기술을 사용하는 시도를 행하고 있다. 회사 제작 애플리케이션 및 서비스가 온라인 애플리케이션 스토어(application store)에서 제공되는 것과 마찬가지로, 회사는 전형적으로 제3자 개발자들 및 서비스 제공자들에게 그들의 애플리케이션 또는 서비스를 회사의 애플리케이션 스토어에 제공할 것을 권장한다. 이 스토어에 제공되는 애플리케이션 또는 서비스는, 특정 회사에 따르기 때문에 상기 스토어를 제공하는 회사가 판매하는 디바이스 상에서만 작동되도록 구성될 수 있다.
개발자는 또한 단편화된 시장으로 인해 어려움을 겪고 있다. 개발자는 흔히 스토어 내에서 애플리케이션 또는 서비스를 파는 것을 허락받기 위하여 회사 특정 디바이스에서 작동하는 애플리케이션 또는 서비스를 개발할 필요가 있을 것이다. 더욱이, 개발자 및 고객 사이의 상호 작용은 고객이 흔히 동일한 애플리케이션 또는 서비스를 얻기 위해 다수의 스토어들에 액세스하려는 욕구로 인해 단편화될 수 있다. 개발자는 꾸준히 고객과 상호 작용할 수 없으므로 개발자와 고객 사이에는 신뢰 관계가 형성되지 않을 수 있다. 더욱이, 고객은 자신이 소유한 디바이스 별로 반복해서 동일한 애플리케이션 또는 서비스를 구매해야 하는 것을 좋아하지 않을 수 있다. 개발자는 자기 자신의 스토어에서 자신의 애플리케이션 또는 서비스를 직접 판매함으로써 자신의 애플리케이션 또는 서비스에 대한 단일 시장을 만들려고 시도할 수 있지만, 이로 인해 개발자는 결제 시스템뿐만 아니라 라이센스를 추적하는 시스템을 설정할 필요가 있을 수 있다. 또한, 애플리케이션 스토어에 의해 제공되는 시장 노출이 없으면, 개발자는 자신의 상품을 마케팅하는 시간과 에너지를 들여야 필요가 있을 수 있다.
고객과 개발자가 체험하는 단편화는 회사의 경제적 손실들로 전환될 수 있다. 단편화는 고객이 특정한 디바이스 상의 특정한 회사의 스토어에 액세스하고자 하는 욕구를 감소시킬 수 있는데, 그 이유는 애플리케이션을 받거나 고객이 개발자로부터 이전에 구매한 애플리케이션 또는 서비스로부터 이익을 얻는 트랜잭션(transaction)을 수행하는 데 추가적인 노력 또는 비용이 필요하기 때문이다. 고객은 단지 추가적인 노력을 할 가치가 없고 다른 트랜잭션에 진입하는 것을 그만 두는 결정을 내릴 수 있다.
본원에서 행해지는 개시는 상기 및 다른 고려사항들에 관하여 제시된다.
제3자 제품에 대한 교차 스토어 라이센싱을 위한 개념 및 기술이 설명된다. 일부 구성에서, 전역 라이센싱 서비스(global licensing service)가 제공된다. 전역 라이센싱 서비스는 다양한 스토어에 있는 고객을 포함하는 트랜잭션(transaction)의 중앙집중화된 매핑(centralized mapping)을 제공함으로써 고객의 제품 구매를 다수의 스토어에 걸쳐 추적할 수 있다. 하나의 구현에서, 전역 라이센싱 서비스는 다양한 식별자를 매핑하고 교차 스토어 라이센싱을 용이하게 하기 위하여 상기 식별자들을 상이한 엔티티(entity)들에 제공한다. 하나의 식별자는 특정 고객에 대한 전역 고객 식별자일 수 있다. 전역 고객 식별자는 다양한 스토어들에서 고객에 의해 사용되는 하나 이상의 식별자들과 연관될 수 있다. 다른 식별자는 특정 제품에 대한 전역 제품 식별자일 수 있다. 전역 제품 식별자는 다양한 스토어들에서 판매되는 하나 이상의 제품들과 연관될 수 있다.
상기 및 다른 전역 식별자는 전역 라이센싱 서비스에 의해 매핑되고 저장될 수 있다. 매핑은 스토어, 고객 또는 개발자가 참조하는 데 이용 가능해질 수 있다. 스토어는 스토어에 액세스하는 고객이 다른 스토어에서 고객에 의해 표시되는 제품을 구매했는지를 결정하기 위하여 전역 고객 식별자를 사용할 수 있다. 고객이 다른 스토어에서 특정한 제품을 구매했다는 정보를 수신하면, 스토어는 가격을 변경하거나, 제품을 무료로 제공함으로써 또는 다른 방식들로 고객 체험을 변경할 수 있다. 개발자는 단일 전역 제품 식별자를 사용하여 다양한 스토어들에서 판매되는 유사한 제품들을 연계시킬 수 있다. 스토어 또는 고객은 그 후에 다양한 스토어들에 걸쳐 이 스토어들과는 무관하게 트랜잭션을 용이하게 하기 위하여 전역 제품 식별자를 사용할 수 있다.
상술한 특허 대상은 또한 컴퓨터 제어가능 장치, 컴퓨터 프로세스, 컴퓨팅 시스템으로서, 또는 컴퓨터 판독 가능 저장 매체와 같은 제조 물품으로서 구현될 수 있음이 인정될 것이다. 상기 또는 다양한 다른 특징은 다음의 상세한 설명 및 연관 도면들의 검토를 판독하는 것으로부터 자명할 것이다.
본 요약은 상세한 설명에서 더 후술되는 개념 중 선택된 것을 간소화된 형태로 소개하도록 제공된다. 본 요약은 본원에 개시되는 개념들 및 기술들의 핵심 특징들 또는 필수 특징들을 식별하도록 의도되거나 또는 본 발명이 청구되는 특허 대상의 범위를 제한하는 데 사용되도록 의도되지 않는다. 더욱이, 청구되는 특허 대상은 본 명세서의 임의의 부분에서 언급되는 임의의 또는 모든 단점들을 해결하는 구현들로 제한되지 않는다.
도 1은 일부 실시예에 따라, 교차 스토어 라이센싱을 위해 구성되는 컴퓨팅 시스템을 도시하는 시스템도.
도 2는 일부 실시예에 따라, 다른 스토어에서 고객의 제품 구매에 기초하여 하나의 스토어에서 판매되는 제품의 가격을 결정하는 예시 방법을 도시하는 흐름도.
도 3은 일부 실시예에 따라, 식별자들의 쌍을 프로비저닝(provisioning)하는 예시 방법을 도시하는 블록도.
도 4는 일부 실시예에 따라, 전역 라이센싱 서비스에서 개발자가 사용할 수 있는 여러 인터페이스를 도시하는 사용자 인터페이스(user interface; UI)도.
도 5는 일부 실시예에 따라, 다수의 디바이스의 전역 라이센싱 서비스로의 등록을 도시하는 시스템도.
도 6은 일부 실시예에 따라, 전역 라이센싱 서비스와 자생적으로 통합되는 스토어에서 새 제품을 매핑하는 예시적인 방법을 도시하는 블록도.
도 7은 일부 실시예에 따라, 전역 라이센싱 서비스와 자생적으로 통합되지 않는 스토어에서 새 제품을 매핑하는 예시적인 방법을 도시하는 블록도.
도 8은 일부 실시예에 따라, 전역 라이센싱 서비스와 자생적으로 통합되는 스토어에서 고객 트랜잭션을 매핑하는 예시적인 방법을 도시하는 블록도.
도 9는 본원에서 제시되는 실시예의 양태를 구현할 수 있는 컴퓨팅 시스템에 대한 실례의 컴퓨터 하드웨어 및 소프트웨어 아키텍처를 도시하는 컴퓨터 아키텍처 도.
다음의 상세한 설명은 다양한 실시예에서, 제3자 제품들에 대한 교차 스토어 라이센싱이 가능하도록 설계되는 개념 및 기술에 관한 것이다. 다양한 구현에서, 고객은 이전의 트랜잭션에 기초하여, 애플리케이션 스토어와 같은 스토어에서 할인된 비용으로 제품을 사용하는 것을 받을 수 있다. 본 발명의 일부 구현은 하나 이상의 스토어에 걸쳐 있는 고객을 포함하고 하나 이상의 제품에 대한 트랜잭션을 매핑하는 전역 라이센싱 서비스를 사용한다. 구매 또는 사용하기 위한 제품 섹션을 수신하면, 애플리케이션 스토어는 고객이 할인된 비용으로 제품을 받아야 하는지를 결정하기 위해 전역 라이센싱 서비스에 액세스할 수 있다.
본원에서 개시되는 다양한 양태에 따르면, 이종의 소스(source)들로부터의 정보를 매핑하는 전역 라이센싱 서비스가 제공된다. 이종의 소스는 고객, 제품을 판매하는 상점, 개발자 또는 공급자를 포함하는 시장을 형성하는 다양한 구성요소로부터 기원할 수 있다. 본원에서 사용되는 바와 같이, "고객"은 개인, 기업 또는 다른 엔티티를 포함할 수 있다. 정보는 다양한 스토어, 디바이스 및 고객에 걸쳐 정보를 연결하기 위하여 매핑될 수 있다.
위에 약술된 하나의 식별자는 전역 고객 식별자이다. 전역 고객 식별자는 특정한 고객에 대하여 생성될 수 있다. 고객이 다수의 스토어에서 사용할 수 있는 다양한 아이덴티티(identity)들이 전역 고객 식별자로 매핑될 수 있다. 이 매핑은 전역 라이센싱 서비스, 애플리케이션 스토어 또는 이 둘 모두에서 유지될 수 있다. 전역 고객 식별자는 전역 라이센싱 서비스 고객 카탈로그 데이터 저장소("고객 카탈로그")에 저장될 수 있다. 다양한 엔티티들은 다른 것들 중에서도, 다양한 스토어들에서의 고객의 아이덴티피케이션(identification), 고객이 행한 이전 구매, 고객이 특정한 제품을 구매했는지의 여부, 고객이 구매할 수 있는 특정 제품의 남아 있는 사용뿐만 아니라 기타 등등을 결정하기 위하여 고객 카탈로그에 액세스할 수 있다.
다양한 스토어에서 구매된 제품은 전역 라이센싱 서비스 지불 제품 카탈로그 데이터 저장소("지불 제품 카탈로그")에 저장될 수 있다. 지불 제품 카탈로그는 개발자에게 상점의 특정 제품과 관련되는 정보를 검색하는 단일 장소를 제공하기 위하여 다양한 스토어들에 걸쳐 있는 라이센스 또는 구매 정보를 중앙집중화하는 것을 도울 수 있다. 지불 제품 카탈로그는 제품이 판매된 인스턴스(instance)의 수를 특정한 스토어에 연계시킬 수 있다. 이것은 개발자가 받아야 할 로열티들의 양을 이 개발자가 결정하는 것을 도울 수 있다. 예를 들어, 이 정보는 개발자가 다른 것들 중에서도, 어디서 초기 구매가 행해졌는지, 어떤 스토어들이 가장 인기가 있는지, 다수의 스토어들에 걸쳐 그 제품을 구매한 사용자의 퍼센티지 등을 포함하여, 다수의 스토어들에 걸친 소정의 제품의 획득 패턴을 결정하는 것을 도울 수 있다.
전역 라이센싱 서비스 고객의 라이센싱 매핑 저장소("라이센싱 매핑 저장소")는 지불 제품 카탈로그 내에 저장되는 정보를 고객 카탈로그 내에 저장되는 정보와 연계시키는 중앙집중화된 데이터 저장소를 제공할 수 있다. 엔티티는 특정한 제품을 구매한 특정한 고객 또는 고객들에 의해 행해진 제품 구매를 결정하기 위하여 라이센스 매핑 저장소에 액세스할 수 있다. 라이센스 매핑 저장소는 또한 특정한 고객을 특정한 스토어에 있는 특정한 제품과 연계시키기 위하여 지불 제품 카탈로그에 저장되는 저장 특정 정보를 사용할 수 있다.
전역 라이센싱 서비스는 다양한 스토어들의 제품을 다수의 디바이스들 및 플랫폼들에 걸쳐서 사용하는 것을 용이하게 하기 위하여 개발자에 의해 이 스토어들에 걸친 제품을 매핑하는 데 사용될 수 있다. 개발자는 전역 라이센싱 서비스에 제품을 제출할 수 있다. 전역 제품 식별자가 생성되고 각 스토어에 있는 제품의 식별자와 연계될 수 있다. 이 방식에서, 개발자는 동일한 제품이 고객에 의해 다수의 스토어들 중 하나에서 또는 다수의 디바이스들 중 하나의 디바이스에 대하여 구매될 때 이 스토어들 또는 디바이스들에 걸쳐 이 개발자의 제품의 구매를 용이하게 하는 것을 도울 수 있다. 더욱이, 일부 구현에서, 개발자는 동일한 제품이 이미 고객에 의해 상이한 스토어에서 구매될 때 2차 스토어에서 더 좋은 조건들로 제품을 획득하는 것을 용이하게 할 수 있다.
본원에서 개시되는 특허 대상이 컴퓨터 시스템 상에서 운영 시스템 및 애플리케이션 프로그램들의 실행과 함께 실행되는 프로그램 모듈들에 대한 일반적인 상황으로 제시될지라도, 당업자는 다른 유형의 프로그램 모듈과 함께 다른 구현이 수행될 수 있음을 인정할 것이다. 일반적으로, 프로그램 모듈은 루틴, 프로그램, 구성요소, 데이터 구조 및 특정한 업무들을 수행하거나 특정한 추상 데이터 유형을 구현하는 다른 유형의 구조를 포함한다. 더욱이, 당업자는 본원에서 기술되는 특허 대상이 소형 디바이스, 멀티프로세서 시스템, 마이크로프로세서 기반 또는 프로그램 가능 소비자 일렉트로닉스, 마이크로컴퓨터, 메인프레임 컴퓨터 등을 포함하는 다른 컴퓨터 시스템 구성과 함께 실시될 수 있음을 인정할 것이다.
본원에서 사용되는 바와 같이, "제품"은 소프트웨어 애플리케이션 또는 서비스를 포함할 수 있지만 이로 제한되지 않는다. 현재 개시되는 특허 대상은 제품의 제공자로부터 제품의 고객까지 한 형태의 지불이 요구되거나 예상되는 제품들로 제한되지 않음이 이해되어야 한다. 게다가, 제품은 번들(bundle)로서 함께 배포되는 상보 제품들의 결합일 수 있다. 번들은 소프트웨어 애플리케이션과 같은 동일 유형의 제품 또는 소프트웨어 애플리케이션 및 서비스의 결합과 같은 상이한 유형의 제품들의 결합을 포함할 수 있다. 번들은 스토어에 제공될 수 있거나 번들의 다양한 구성요소가 여러 스토어에 걸쳐 제공될 수 있다. 상보 제품들은 하나 이상의 기능을 수행하기 위하여 함께 작업하도록 설계되는 제품뿐만 아니라 하나의 스토어에서는 한 언어를 그리고 다른 스토어에서는 다른 언어를 가지는 제품을 포함할 수 있다.
본원에서 사용되는 바와 같이, "소프트웨어 애플리케이션"은 단독형 소프트웨어 제품 또는 다른 소프트웨어 제품과 함께 사용되도록 의도되는 소프트웨어 제품을 포함할 수 있으나, 이로 제한되지 않는다. 더욱이, 본원에서 사용되는 바와 같이, "서비스"는 서비스형 소프트웨어(software as a service), 정기 간행물, 저널, 간행물, 뉴스 미디어 또는 소프트웨어 애플리케이션에 의해 제공되는 기능을 포함할 수 있으나, 이로 제한되지 않는다. 더욱이, 서비스는 사람에 의한 지불 작업을 포함하는 비 가상 구성요소를 포함할 수 있다. 지불 작업의 일부 예는 의무 구술기록(medical dictation transcription), 이종의 스파 부티크(spa boutique)의 집단에서의 스파 치료, 이종의 주차장에서의 대행 세차를 포함하나 이로 제한되지 않는다.
다음의 상세한 설명에서는, 본원의 일부를 형성하고 실례의 특정한 실시예 또는 예에 의해 도시되는 첨부 도면이 참조된다. 동일한 숫자가 여러 도면에 걸쳐 동일한 요소를 표현하는 도면을 이제 참조하여, 제3자 제품에 대한 교차 스토어 라이센싱을 위한 컴퓨팅 시스템, 컴퓨터 판독 가능 저장 매체 및 컴퓨터 구현 방법의 양태 및 다른 양태가 제시될 것이다.
이제 도를 참조하면, 도 1은 전역 라이센싱 서비스(102)의 개요도이다. 전역 라이센싱 서비스(102)의 다양한 양태는 고객에 의한 제품의 구매를 다수의 스토어들에 걸쳐 매핑하기 위한 중앙 라이센싱 서비스를 제공한다. 전역 라이센싱 서비스(102)의 부가 양태들은 제품 구매 시에 스토어 간에 맞지 않는 것(friction)을 제거함으로써 고객에게 더 양호한 트랜잭션 체험을 제공할 수 있다. 전역 라이센싱 서비스(102)의 다른 양태는 제3자 제품의 개발자가 다수의 스토어에 걸쳐 제품을 판매하고, 이 제품의 지불을 추적하고 상이한 플랫폼 및 디바이스에 걸쳐 제품의 사용을 추적하기 위하여 전역 라이센싱 서비스(102)에 의해 제공되는 라이센싱 서비스를 사용하는 것을 가능하게 할 수 있다. 본원에서 사용되는 바와 같이, "제3자"는 특정한 스토어의 제공자와 연관되지 않거나 이 제공자 대신 작업하지 않는 개발자를 의미한다. 특정한 스토어에서의 제1 또는 영(zero) 자라 칭해질 수 있는 상기 스토어의 제공자는 다른 엔티티에 의해 제공되는 스토어에서는 제3자일 수 있다. 본원에서 개시되는 개념 및 기술은 임의의 특정한 엔티티를 지정하는 것으로 제한되지 않는다. 용어 "제3자"를 사용하는 것은 단지 설명 및 편의를 위한 것으로 현재 개시되는 특허 대상의 범위를 제한하지 않는다.
전역 라이센싱 서비스(102)는 지불 제품 카탈로그(104), 라이센스 매핑 저장소(106) 및 고객 카탈로그(108)를 포함한다. 지불 제품 카탈로그(104)는 하나 이상의 스토어들(110)에서 판매된 다양한 제품들에 대한 전역 제품 식별자를 내부에 저장한 데이터 저장소이다. 예를 들어, "지출(expenses)"이라는 제목의 제품은 스토어(110A)에서 "22", 스토어(110B)에서 "57", 스토어(110C)에서 "27", 그리고 스토어(110D)에서 "12"의 스토어 특정 아이덴티피케이션을 가질 수 있다(이후에 스토어(110A -내지 110D)는 총칭하여 그리고/또는 일반적으로 "스토어들(110)"로 또는 개별적으로 "스토어(110A)", "스토어(110B)" 및 기타 등등으로 칭해진다). 지불 제품 카탈로그(104)는 "지출" 제품의 다양한 제품 식별자들을 "지출" 제품의 전역 제품 식별자("103")로 매핑할 수 있다. 유사한 방식으로, "아키텍처"라고 제목이 붙은 제품은 스토어(110B)에서 "84", 스토어(110C)에서 "99", 그리고 스토어(110D)에서 "18"의 스토어 특정 아이덴티피케이션을 가질 수 있다. 스토어들(110)의 예는 California, Cupertino의 Apple Inc.에 의해 제공되는 ITUNES 애플리케이션 스토어, California, Mountain View의 Google.Inc.에 의해 제공되는 GOOGLE PLAY 애플리케이션 스토어 및 Washington, Redmond의 Microsoft Corporation에 의해 제공되는 WINDOWS 및 OFFICE 스토어를 포함할 수 있으나 이로 제한되지 않는다. 현재 개시되는 특허 대상은 임의의 특정한 스토어로 제한되지 않는다. 스토어들(110)의 추가 예는 개발자에 의해 셋업되고 운영되는 스토어일 수 있다. 스토어들(110)은 개발자가 판매하기 위하여 개발하고 제공하는 하나 이상의 제품의 구매를 용이하게 하기 위하여 개발자에 의해 운영되는 웹사이트일 수 있다.
스토어들(110) 중 하나 이상은 "아키텍처"라는 제목의 제품과 같이, 제품에 대하여 다양한 유형의 식별자를 사용할 수 있음이 인정될 것이다. 도 1에서 도시되는 예에서, "아키텍처"라는 제목이 붙은 제품은 상기에 식별되는 수 또는 스토어 중 하나 이상에서의 제목과 연관될 수 있다. 예를 들어, "아키텍처"라는 제목이 있는 제품은 스토어(110B)에 "84"의 스토어 특정 아이덴티피케이션을 가질 수 있지만 또한 "아키텍처 매거진"으로 식별될 수 있다. 현재 개시되는 특허 대상은 임의의 특정한 제품 식별 방식으로 제한되지 않는다.
전역 제품 식별자를 사용하는 다양한 이유가 있을 수 있을지라도, 하나의 이유는 동일한 제품 또는 제품의 구성요소가 상이한 스토어들에서 상이한 제목을 가질 수 있는 점일 수 있다. 예를 들어, "103"의 전역 제품 식별자를 가지는 "지출" 제품은 스토어(110A)에서 "지출 보고 작성기(creator)", 스토어(110B)에서 "지출 보고 뷰어(viewer)", 스토어(110C)에서 "익스펜스 리포트 온더고(expense reports on the go)" 및 스토어(110D)에서 "익스펜스 미 애플리케이션(expense me application)"이라는 제목의 제품과 연관되거나 상기 제품이다. 유사한 방식으로, "119"의 전역 제품 식별자를 가지는 "아키텍처" 제품은 스토어(110B)에서 "아키텍처 매거진"이라는 제목일 수 있고 스토어(110C) 및 스토어(110D) 모두에서 "아키텍처 주간"이라는 제목일 수 있다.
동일한 제품의 맵을 제공하는 것 이외에, 전역 제품 식별자는 또한 다양한 구성요소 또는 관련 제품을 지불 제품 카탈로그(104) 내의 단일 제품 지정으로 매핑할 수 있다. 도 2에서, "지출"이라는 제목의 제품은 스토어(110A)에 "지출 보고 작성기", 스토어(110B)에 "지출 보고 뷰어", 스토어(110C)에 "익스펜스 리포트 온더고" 그리고 스토어(110D)에 "익스펜스 미 애플리케이션"이라는 제목의 제품으로 매핑된다. 다양한 스토어들에서 동일한 제품을 판매하는 대신, 개발자는 판매를 위해 상이한 버전의 동일한 제품 또는 서로 관련되는 상이한 제품을 제공할 수 있다. 예를 들어, 스토어(110A)에서 판매되는 "22 - 지출 보고 작성기" 제품은 지출 보고를 생성할 수 있고 반면에 스토어(110B)에서 판매되는 "57-지출 보고 뷰어" 제품은 보고의 디스플레이를 제공할 수 있다.
이 제품 각각은 다양한 디바이스 상에서 하나 이상의 서비스를 제공할 수 있다. 예를 들어, 스토어(110A)에서 판매되는 "22 - 지출 보고 작성기" 제품은 하나의 디바이스 상에서 사용될 수 있거나 다양한 디바이스 상에서 사용되는 소프트웨어 패키지에서의 구성요소로서 사용될 수 있다. 이 예에서, 스토어(110A)는 Washington, Redmond에 있는 Microsoft Corporation의 MICROSOFT OFFICE 제품군의 일부인 제품에서 사용되도록 의도되는 제품을 포함할 수 있다. 이 제품의 예는 MICROSOFT WORD, MICROSOFT EXCEL, MICROSOFT POWERPOINT, MICROSOFT ACCESS, MICROSOFT VISIO 또는 MICROSOFT OUTLOOK 애플리케이션 프로그램 군이다. 스토어(110A)는 또한 California, Mountain View의 Google, Inc.의 GOOGLE DOCS 제품군의 일부인 제품에서 사용되도록 의도되는 제품을 포함할 수 있다. 이 제품군 스위트는 단지 예이고 현재 개시되는 특허 대상의 범위를 상기 특정 스위트로 제한하지 않는다.
스토어(110B)에서 판매되는 "57-지출 보고 뷰어" 제품은 Washington, Redmond에 있는 Microsoft Corporation의 WINDOWS 운영 시스템을 운영하는 하나 이상의 디바이스에서 사용될 수 있다. 다른 유형의 운영 시스템이 사용되고 본 발명의 범위 내에 있는 것으로 간주될 수 있다. 2개의 제품들, "22- 지출 보고 작성기" 및 "57-지출 보고 뷰어"는 동일한 개발자에 의한 관련 제품일 수 있고 함께 작업하거나 서로에게 서비스를 제공하도록 의도될 수 있다. 예를 들어, "22-지출 보고 작성기"는 지출 보고를 작성하기 위하여 OFFICE 제품에서 고객에 의해 사용될 수 있고, 반면에 "57-지출 보고 뷰어"는 OFFICE 제품에서 작성되는 지출 보고를 보기 위하여 비 OFFICE 제품에서 고객에 의해 사용될 수 있다. 상이한 기능을 수행하기 위하여, 2개의 제품을 함께 "103-지출" 전역 제품을 형성할 수 있다.
상이하지만 관련되는 제품들을 전역 제품 식별자("103")로 매핑함으로써, 전역 라이센싱 서비스(102)는 다수의 스토어에 걸쳐 관련되는 구성요소를 추적하고 상기 정보를 개발자 또는 스토어들 중 하나에 제공하는 것이 가능할 수 있다. 예를 들어, 전역 제품 식별자("103")로 매핑되는 "지출" 제품의 관련성은 관련 제품이 다른 스토어에서 구매될 때 하나의 스토어에서 인센티브 및 할인을 제공하는 데 사용될 수 있다. 제품의 전역 제품 식별자로의 매핑은 스토어들(110)에서 상이한 트랜잭션 체험을 제공할 수 있다. 고객은 스토어(110D)에서 "12-익스펜스 미 애플리케이션"에 값을 지불할 수 있고, "27-익스펜스 리포트 온더고" 제품에 대하여 지불하기 위하여 스토어(110C)에 액세스할 때, 할인된 가격을 받거나 심지어 지불 없이 이 제품을 받을 수 있다.
제품이 전역 제품 식별자로 매핑되는 것 외에, 전역 라이센싱 서비스(102)는 또한 고객들(120)을 전역 고객 식별자로 매핑할 수 있다. 도 1에는 스토어(110A) 고객(120A), 스토어(110B) 고객(120B), 스토어(110C) 고객(120C) 및 스토어(110D) 고객(120D)(이후에 고객들(120A 내지 120D)은 총칭하고 그리고/일반적으로 "고객들(120)"로 칭해지고 개별적으로 "고객(120A)", "고객(120B)" 등으로 칭해진다)이 도시된다. 세 고객들(120), "밥(BOb)", "조우(Joe)" 및 "캣(Cat)"이 있다.
고객들(120)은 스토어들(110)과 연관되는 상이한 고객 식별자를 가진다. 스토어(110A) 및 스토어(110B)의 경우, "밥"은 스토어들에 대한 서비스에 액세스하기 위하여 "19-Bob@email.com"라 하는 스토어 고객 식별자(124A)를 사용한다. 스토어(110C)에 액세스하고 이 스토어를 사용하기 위하여 "밥"은 "88-Bob@storec.com"라 하는 스토어 고객 식별자(124C)를 사용한다. 그리고, 스토어(110D)에 액세스하고 이 스토어를 사용하기 위하여, "밥"은 스토어 고객 식별자(124D) "15-Bob@stored.com"을 사용한다. 유사하게, "캣"은 스토어(110B)에 대해 "71-cat@email.com"을 그리고 스토어(110C)에 대해 "99-cat@storec.com"을 사용한다. "조우"는 스토어(110A)에 대해 "77-Joe@email.com"을 그리고 스토어(110D)에서 "99-Joe@stored.com"을 사용한다. 이후에, 스토어 고객 식별자(124A 내지 124D)는 총칭하여 그리고 일반적으로 "고객 식별자들(124)"로, 또는 개별적으로 "스토어 고객 식별자(124A)", "고객 식별자(120B)" 등으로 칭해진다. 상기 식별자들에서의 수는 식별자에 대한 숫자 지정일 수 있다. 제품에 대하여 위에 약술한 바와 같이, 고객(120)은 또한 수 또는 텍스트 또는 이 둘에 의해 식별될 수 있다. 예를 들어, 조우는 스토어(110A)에서 ""77", Jow@email.com 또는 77-Joe@email.com으로 식별될 수 있다. 본 개시는 고객(120)이 식별될 수 있는 임의의 방식으로 제한되지 않는다.
종래의 단편화된 시스템에서, 스토어들(110) 내의 고객들(120)에 의해 사용되는 상이한 식별자들은 상이한 고객들로 해석될 수 있다. 예를 들어, "밥"이 스토어(110C)에서 사용하는 식별자, "Bob@storec.com"은 "밥"이 스토어(110A) 및 스토어(110B)에 액세스하는 데 사용하는 식별자인 "Bob@email.com"과 상이한 고객으로 식별될 수 있다. 그러므로, 스토어들(110) 중 하나에서 "밥"이 행한 구매는 다른 스토어에서 "밥"이 행한 구매와 연결되지 않을 수 있다. 이 스토어들(110)에 액세스하는 데 사용되는 식별자들과 실제 고객들(120) 사이의 분리는 상술한 단편화에 이바지하는 요인일 수 있다.
상이한 방식으로, 전역 라이센싱 서비스(102)는 고객들(120)을 상이한 스토어들에서 사용되는 자신들의 다양한 식별자들로 매핑하기 위하여 중앙집중화된(centralized) 고객 매핑 서비스를 제공한다. 고객 카탈로그(108)에서, "밥"에 대한 다양한 아이덴티티가 "222"의 수 지정으로 매핑되었고, "캣"에 대한 다양한 아이덴티티가 "289"의 수 지정으로 매핑되었다. 그러므로, "밥" 또는 "캣"에 대한 다양한 아이덴티티를 포함하는 활동은 하나의 수 지정으로 매핑될 수 있다. 스토어들(110)의 경우에서와 같이, 전역 라이센싱 서비스(102)는 또한 고객들(120)에게 전역 고객 식별자를 제공할 수 있다. "밥"에 대한 전역 고객 식별자는 "GLS_ID-860"이고 "캣"에 대한 전역 고객 식별자는 "GLS-ID-810"이다. 고객들(120)은 이 전역 고객 식별자를 다양한 방식으로 사용할 수 있고, 이의 예들은 아래 다양한 도면의 설명에서 제공된다.
일단 제품이 지불 제품 카탈로그(104)에 매핑되었고 고객들(120)이 고객 카탈로그(108)에 매핑되었으면, 전역 라이센싱 서비스(102)는 지불 제품 카탈로그(104)를 라이센스 매핑 스토어(106) 내의 고객 카탈로그(108)로 매핑할 수 있다. 라이센스 매핑 저장소(106)는 트랜잭션 매핑을 제공하는 중앙 장소이다. 트랜잭션 매핑은 고객들(120) 및 제품들을 매핑함으로써 제공되는 정보를 수집한다. 라이센스 매핑 저장소(106)에 있는 정보에 액세스하는 엔티티는 특정 고객들(120)에 의해 행해진 특정 제품에 대한 트랜잭션을 뷰잉하는 것이 가능할 수 있다. 예를 들어, 라이센스 매핑 저장소(106)는 "지출" 제품인 "103"의 전역 제품 아이덴티피케이션을 가지는 제품이 "밥"인 "222" 그리고 "캣"인 "289"의 아이덴티피케이션을 가지는 고객들(120)에 의해 구매되었음을 나타낸다. 유사하게, 라이센스 매핑 저장소(106)는 "캣"이 또한 "아키텍처" 제품인 "119"의 아이덴티피케이션을 가지는 제품을 구매했음을 보이는 데이터를 나타낸다.
지불 제품 카탈로그(104), 라이센스 매핑 저장소(106) 및 고객 카탈로그(108)의 결합은 시장의 단편화를 해소하는 것을 도울 수 있는 다양한 이익을 제공할 수 있다. 예를 들어, "밥"은 스토어(110A)에서 "22-지출 보고 작성기" 제품을 구매했을 수 있다. 전역 라이센싱 서비스(102)는 고객 "19"의 스토어 특정 아이덴티피케이션 및 구매된 제품 "22"의 스토어 특정 아이덴티피케이션을 포함하는 상기 트랜잭션에 관한 정보를 수신할 수 있다. 전역 라이센싱 서비스(102)는 상기 정보를 수신하고 "밥"인 고객 "19"를 고객 카탈로그(108)에 저장된 "밥"에 대한 아이덴티피케이션들로 매핑한다. 전역 라이센싱 서비스(102)는 또한 제품 아이덴티피케이션 "22"를 매핑하고 상기 정보를 지불 제품 카탈로그(104)에 저장한다. 이 정보는 라이센스 매핑 저장소(106)에 매핑되어, "밥"의 다양한 아이덴티티를 제품 "지출"의 다양한 아이덴티티와 연계시킨다.
매핑은 다른 엔티티들에 의해 사용될 수 있는 트랜잭션 정보의 중앙 레포지토리(central repository)를 제공한다. 예를 들어, "밥"은 제품 "27-익스펜스 리포트 온더고"를 구매하기 위하여 스토어(110C)에 액세스할 수 있다. 스토어(110C)는 "밥"이 이미 다른 스토어에서 "22-지출 보고 작성기" 제품을 구매했다는 정보를 전역 라이센싱 서비스(102)로부터 수신할 수 있다. 이 스토어가 그와 같이 구성되면, 스토어(110C)는 이전의 트랜잭션에 기초하여 "27-익스펜스 리포트 온더고" 제품에 대한 가격을 조정할 수 있다.
하나의 구현에서, "지출" 제품의 개발자는 한 스토어에서 구매된 제품이 다른 스토어에서 가격 인하를 유발시킬 수 있는 하나 이상의 규칙을 진술할 수 있다. 개발자는 또한 "밥"과 같은 고객들(120)에게 "지출" 제품과 관련하여 제품에 대한 2개의 가격을 제공하는 지불 구조를 설정할 수 있다. 제1 가격은 "지출" 제품에 관한 제품을 구매하는 표준 가격으로 다른 디바이스에서, 또는 다른 스토어에서 "지출" 제품을 구매할 때 고객들(120)에게 어떠한 할인, 가격 인하 또는 다른 혜택을 제공하지 않을 수 있다. 제2 가격은 고객들(120)에게 추가 혜택들을 제공할 수 있는 프리미엄(premium) 가격일 수 있다. 이것은 도 2의 예에 의해 설명된다.
도 2는 고객이 다른 스토어에서 제품을 구매한 것에 기초하여 한 스토어에서 판매되는 제품의 가격을 결정하는 예시적인 방법(200)을 도시하는 흐름도이다. 방법(200)의 동작 및 본원에서 개시되는 다른 방법들은 반드시 임의의 특정한 순서로 제시되는 것이 아니고 대안의 순서(들)에서의 동작의 일부 또는 모두를 수행하는 것이 가능하고 고려되는 것이 이해되어야 한다. 동작은 설명 및 예시의 편의를 위하여 도시된 순서로 제시되었다. 첨부된 청구항들의 범위를 벗어나지 않고 동작이 추가, 생략 및/또는 동시에 수행될 수 있다. 실례의 방법은 임의의 시간에 종료될 수 있고 방법 전부가 수행될 필요가 없음이 또한 이해되어야 한다.
방법의 일부 또는 모든 동작 및/또는 실질적으로 등가의 동작은 본원에서 규정되는 바와 같이, 컴퓨터 저장 매체 상에 포함되는 컴퓨터 판독 가능 명령을 실행함으로써 수행될 수 있다. 명세서 및 청구항에서 사용되는 바와 같은 용어 "컴퓨터 판독 가능 명령" 및 이의 변형은 본원에서 루틴, 애플리케이션, 애플리케이션 모듈, 프로그램 모듈, 프로그램, 구성요소, 데이터 구조, 알고리즘 등을 포함하도록 광범위하게 사용된다. 컴퓨터 판독 가능 명령은 단일 프로세서 또는 다중 프로세서 시스템, 미니컴퓨터, 메인프레임 컴퓨터, 개인용 컴퓨터, 소형 컴퓨팅 디바이스, 마이크로프로세서 기반, 프로그램 가능 고객 일렉트로닉스(electronics), 이의 결합 등을 포함하는 다양한 시스템 구성 상에서 구현될 수 있다.
그러므로, 본원에서 기술되는 논리 연산은 (1) 컴퓨팅 시스템 상에서 가동되는 컴퓨터 구현 행위 또는 프로그램 모듈의 시퀀스로서 그리고/또는 (2) 컴퓨팅 시스템 내의 상호 접속 기계 논리 회로 또는 회로 모듈로서 구현되는 것이 인정되어야 한다. 이 구현은 컴퓨팅 시스템의 성능 및 다른 요건에 좌우되는 선택의 문제이다. 이에 따라, 본원에서 기술되는 논리 연산은 상태, 동작, 구조 디바이스, 행위 또는 모듈로서 다양하게 칭해진다. 이 동작, 구조 디바이스, 행위 및 모듈은 소프트웨어에서, 펌웨어에서, 특수목적 디지털 로직(digital logic) 및 이의 임의의 결합에서 구현될 수 있다.
도 2로 전환해서, 방법(200)은 동작 202에서, 시작하고 동작 202에서, 고객의 아이덴티피케이션은 애플리케이션 스토어에서 수신된다. 상술한 바와 같이, 고객은 스토어에서 사용하기 위한 스토어 특정 아디덴티피케이션을 설정했었을 수 있다. 일부 구성에서, 고객은 상술한 바와 같이 전역 고객 식별자를 사용할 수 있다. 도 2의 구성은 임의의 특정한 고객 식별자로 제한되지 않는다.
동작 202로부터, 방법(200)은 동작 204로 진행되고, 동작 204에서 고객이 구매하고자 하는 제품의 아이덴티피케이션이 수신된다. 고객과 연계되는 아이덴티피케이션에 있어서와 같이, 본원에서 기술되는 개념은 스토어들(110) 중 하나 또는 전역 라이센싱 서비스(102)를 포함하는, 임의의 특정한 소스에 의해 제공되는 아이덴티피케이션으로 제한되지 않는다. 제품 "103-지출"은 스토어들(110)에서 판매하는 하나 이상의 관련 구성요소를 가질 수 있고, 이의 일부는 스토어(110A)에서 판매되는 "22-지출 보고 작성기" 및 스토어(110B)에서 판매되는 "57-지출 보고 뷰어"를 포함한다.
동작 204로부터, 방법(200)은 동작 206으로 진행되고, 동작 206에서 전역 라이센싱 서비스(102)에 액세스된다. 전역 라이센싱 서비스(102)에 액세스하는 이유는 다양할 수 있다. 예를 들어, 방법(200)은 트랜잭션 정보에 기초하여 제품의 가격을 결정하는 예시 방법이다. 특정한 스토어에 액세스하는 고객은 제품을 구매했거나 다른 스토어들에서 상이한 아이덴티피케이션으로 연관되는 제품을 구매했었을 수 있으므로, 스토어는 동작 204에서 식별되는 고객 및 제품을 포함하는 트랜잭션에 대한 완전한 기록을 가지지 않을 수 있다.
상술한 바와 같이, 전역 라이센싱 서비스(102)의 다양한 구현들은 동작 204에서 다른 스토어들에서 상이한 제품 아이덴티피케이션으로 선택된 제품을 매핑하는 하나 이상의 데이터 스토어들을 포함하는, 정보의 중앙집중화된 레포지토리를 제공한다. 전역 라이센싱 서비스(102)는 또한 동작 204에서 선택된 제품 및 고객에 관한 트랜잭션 정보를 제공할 수 있다. 일부 구현에서, 스토어는 다른 무엇보다도, 보안 이유로 인해 고객 카탈로그(108)로의 액세스가 승인받지 않을 수 있다. 한 스토어에 다른 스토어에서의 고객의 식별자들을 제공하는 것은 바람직하지 않을 수 있다.
방법(200)은 동작 206으로부터 동작 208로 진행되고, 동작 208에서 제품이 고객에 의해 이전에 구매된 것인지의 여부에 대한 결정이 행해진다. 일단 동작 206에서 전역 라이센싱 서비스(102)에 액세스되면, 스토어는 전역 라이센싱 서비스(102)의 라이센스 매핑 저장소(106)로부터 정보를 검색할 수 있다. 라이센스 매핑 저장소(106)는 고객에 의해 구매된 하나 이상의 제품으로 고객의 상이한 아이덴티티를 매핑할 수 있다. 전역 라이센싱 서비스(102)에 액세스함으로써, 스토어는 동작 204에서 식별된 제품에 관한 가격 정보를 검색할 수 있다. 가격 정보는 전역 라이센싱 서비스(102)에 의해 제공될 수 있다. 일부 구현에서, 전역 라이센싱 서비스(102)는 가격 정보에 액세스하지 않을 수 있다. 상기 구현에서, 스토어들(110)은 개발자에 의해 스토어들(110)로 제공되는 정보를 가질 수 있다.
대안으로, 가격 책정(pricing)은 스토어에 공지된 가격 정보가 수정되어야 하는지에 대한 결정일 수 있다. 위에서 간략하게 논의된 바와 같이, 특정한 제품의 가격은 제품 및 고객을 포함하여 트랜잭션이 이전에 발생했는지에 좌우될 수 있다. 고객은 상이한 스토어에서 제품을 구매했었을 수 있고, 그러므로 고객에게는 추가 비용 없이 제품이 제공되어야 한다. 다른 예에서, 고객은 제품을 프리미엄으로 구매했을 수 있고, 따라서 그 제품에 대한 후속 구매는 전체 할인을 포함하는 할인된 가격일 수 있다. 부가적인 예에서, 고객은 제2 스토어에서 제품을 구매해야 할 수도 있으나, 상이한 형태로 크레디트를 받을 수 있다.
다른 형태는 특정한 수의 텍스트 효과 피처(text effect feature)의 사용, 아키텍처 도에 대한 특정한 수의 주석 등과 같은, 그러나 이로 제한되지 않는 제품 내(in-product) 소비재일 수 있다. 다른 형태는 추가 클라우드 저장 공간, 추가 제품 능력 등과 같은, 그러나 이로 제한되지 않는 내구재일 수 있다. 본원에서 사용되는 바와 같이, "제품 내 구매" 또는 "애플리케이션 내" 구매는 제품 또는 애플리케이션에 의해 용이해지는 구매를 칭한다.
동작 208에서, 제품이 이전에 구매되지 않았음이 결정되면, 방법(200)은 동작 210으로 진행되고, 이 동작에서 제품은 스토어에서 디폴트 가격(default price)으로 판매된다. 디폴트 가격은 구매용 제품을 스토어에 제출할 때 제품의 개발자에 의해 설정되는 가격일 수 있다. 디폴트 가격은 또한 전역 라이센싱 서비스(102)에 의해 스토어에 제공되는 가격일 수 있다. 본원에서 기술되는 개념은 임의의 특정한 제품 소스로 제한되지 않고 본원에서 지정되지 않은 다른 소스를 포함할 수 있다.
방법(200)은 동작 210에서 동작 212로 계속되고, 동작 212에서 라이센스 정보는 전역 라이센싱 서비스(102)로 전송된다. 트랜잭션 정보는 스토어 또는 다른 스토어들과의 후속 트랜잭션에서 고객 또는 제품에 관한 정보를 제공하기 위하여 전역 라이센싱 서비스(102)에 의해 사용될 수 있다. 동작 212의 수행은 전역 라이센싱 서비스(102)에서 스토어 또는 다른 스토어들이 이용 가능한 정보를 증가시키는 것을 도울 수 있다. 이에 따라, 트랜잭션 데이터의 전송은 시장에서의 단편화 해소(defragmentation)의 레벨을 낮추는 것을 도울 수 있다. 방법(200)은 이후에 종료된다.
동작 208로 복귀하여, 제품이 이전에 고객에 의해 구매되었다고 결정되면, 방법은 동작 208에서 동작 214로 계속되고, 동작 214에서 이전의 구매에 기초하여 할인이 이용 가능한지에 대한 결정이 행해진다. 상술한 바와 같이, 제품의 동일한 고객에 의한 이전 구매는 고객에게 감소된 가격 책정의 혜택을 제공할 수 있다. 이전 구매가 할인을 보장하지 않으면, 방법(200)은 동작 214에서 동작 210으로 진행되고 바로 위에 기술된 방식으로 계속된다.
이전의 구매가 할인을 보장하면, 방법(200)은 동작 214에서 동작 216으로 진행되고, 동작 216에서 제품의 가격은 할인된 가격으로 제공된다. 할인된 가격은 더 낮은 가격일 수 있거나, 또는 가격 책정 모델에 따라, 고객에게 비용 없이 제공될 수 있다. 더 낮거나 상이한 가격은 개발자, 전역 라이센싱 서비스(102), 제품 자체, 별개의 가격 책정 서비스(도시되지 않음) 등과 같은, 그러나 이로 제한되지 않는 다양한 엔티티에 의해 설정될 수 있다. 본 발병은 가격 책정 변경들 또는 임의의 특정한 가격 변경 방법의 임의의 특정한 소스로 제한되지 않는다. 트랜잭션 정보는 동작 212에서 전역 라이센싱 서비스(102)로 전송되고 방법(200)은 그 후에 종료된다. 하나의 구현에서, 2차 구매가 필요해서 완료되면, 라이센스 매핑 저장소(106)에 저장되는 라이센싱 매핑 정보는 2차 트랜잭션의 세부사항으로 증강될 수 있다. 이 구현에서, 라이센싱 매핑 저장소(106)는 고객이 제품을 구매했다는 사실뿐만 아니라 어떤 스토어로부터 구매가 행해졌는지, 구매가 기본 또는 프리미엄 구매였는지, 구매가 갱신 가능한 제품에 대한 신청이었는지 등과 같은 더 입상의 정보를 저장할 수 있다.
도 3은 전역 라이센싱 서비스(102)에 새 제품을 등록하는 예시 방법(300)을 도시하는 흐름도이다. 방법(300)은 스토어 및 전역 라이센싱 서비스(102)를 포함하는 등록 프로세스이다. 일부 구현들에서, 개발자는 또한 아래에서 더 상세하게 논의되는 바와 같이, 제품을 전역 라이센싱 서비스(102)에 바로 등록할 수 있다.
방법(300)은 동작 302에서 시작하고, 이 동작 302에서 스토어는 전역 라이센싱 서비스(302)와 인터페이스한다. 스토어는 스토어(110A), 스토어(110B), 스토어(110C) 및 스토어(110D)일 수 있다. 그러나, 본 발명은 본원에서 도시되는 스토어들(110)로 제한되지 않음이 이해될 것이다. 스토어는 스토어 내에서 판매하기 위한 제품을 개발자로부터 받았었을 수 있다. 스토어는 제품을 등록하기 위해 전역 라이센싱 서비스(102)와 인터페이스할 수 있다.
방법(300)은 동작 302로부터 동작 304로 진행되고, 동작 304에서 전역 라이센싱 서비스(304)는 스토어의 아이덴티피케이션 및 제품에 대한 스토어 특정 제품 아이덴티피케이션을 수신한다. 스토어(110A)에서의 제품 "지출 보고 작성기"에 대한 "22"의 같은 스토어 특정 제품 아이덴티피케이션은 스토어 및 제품을 다양한 다른 제품으로 매핑하기 위하여 정보를 제공할 수 있다. 본 발명이 스토어 아이덴티피케이션을 요구하지 않을 수 있지만, 특정한 감사(auditing) 또는 정보 서비스들을 제공하기 위하여, 스토어 아이덴티피케이션이 유용할 수 있음이 주지되어야 한다. 예를 들어, 위에 약술된 바와 같이, 개발자는 자신의 특정 제품의 판매를 결정하기 위하여 지불 제품 카탈로그(104)에 액세스할 수 있다. 스토어 아이덴티피케이션 없이, 판매 번호는 특정한 스토어까지 추적하는 것이 어려울 수 있는 원수(raw number)일 수 있다. 스토어 아이덴티피케이션을 제공함으로써, 특정한 제품에 대한 트랜잭션이 특정한 스토어와 연계될 수 있다.
방법(300)은 동작 304에서 동작 306으로 진행되고, 동작 306에서 제품이 이전에 등록되었는지에 대한 결정이 행해진다. 제품이 이전에 등록되었다면, 방법(300)은 동작 306으로부터 종료로 진행된다. 제품이 이전에 등록되지 않았다면, 방법(300)은 동작 306에서 동작 308로 진행되고, 동작 308에서 새로운 식별자가 제품에 대하여 프로비저닝된다. 제품은 스토어들(110)에 걸친 제품을 포함하는 트랜잭션의 매핑을 가능하게 하는 프로비저닝된 하나 이상의 아이덴티피케이션들을 가질 수 있다.
식별자의 하나의 예는 전역 라이센싱 서비스 식별자일 수 있다. 도 1에 예로 도시되는 바와 같이, 제품 "지출"은 전역 제품 식별자("103")와 연계되었다. 도 1의 지출 제품 카탈로그(104)에 관하여, 스토어들(110)의 각각은 제품 "지출"에 대한 고유 식별자를 가진다. "지출" 제품은 스토어(110A)에서 "22", 스토어(110B)에서 "57", 스토어(110C)에서 "27" 그리고 스토어(110D)에서 "12"의 식별자를 가진다. 이 스토어 특정 식별자 전부는 아닐지라도 적어도 일부는 동작 308에서 전역 라이센싱 서비스(102)에 의해 프로비저닝되는 전역 제품 식별자(103)와 연관된다.
방법(300)은 동작 308에서 동작 310으로 진행되고, 동작 310에서 제품이 개발자에 의해 페어링(paring)되는지에 대한 결정이 행해진다. 페어링의 예는 특정한 스토어와 제품에 대한 스토어 특정 아이덴티피케이션과의 연계일 수 있다. 개발자는 개발자가 특정한 제품에 대하여 특정한 스토어로부터 수신한 정보를 제공할 수 있다. 예를 들어, 전역 라이센싱 서비스(102)는 스토어(110A)가 "지출" 제품에 대한 "22"의 아이덴티피케이션을 프로비저닝했다는 입력을 개발자로부터 수신할 수 있다. 전역 라이센싱 서비스(102)가 이 데이터를 개발자 또는 다른 소스로부터 수신하도록 구성되면, 방법(300)은 동작 310에서 동작 312로 진행되고, 동작 312에서 전역 라이센싱 서비스(102)는 페어링 정보를 수신 및 저장한다. 방법(300)은 이후에 종료된다. 전역 라이센싱 서비스(102)가 페어링 데이터를 수신하도록 구성되지 않으면, 방법(300)은 동작 310에서 종료로 진행된다.
도 4는 개발자로부터 다양한 입력을 수신하는 예시 개발자 UI(400)이다. 위에 약술된 바와 같이, 제품의 개발자 또는 공급자는 전역 라이센싱 서비스(102)에서의 제품의 매핑을 용이하게 하기 위하여 다양한 여러 정보를 제출할 수 있다. 개발자 UI(400)는 제품의 등록뿐만 아니라 다른 예들과 함께 판매용 제품 또는 전역 라이센싱 서비스(102)를 제출하면 개발자가 스토어들(110) 중 하나에 로그인할 때 개시될 수 있다. 정보가 제출되기 때문에, 일부 구현에서, 개발자 UI(400)는 보안 네트워크 접속에 의해 제공될 수 있다. 그러나, 개발자는 전역 라이센싱 서비스(102)와 직접 통합되는 개발자 대시보드(dashboard) 또는 데이터의 프로그램 질의(querying)뿐만 아니라 웹 인터페이스의 구조를 제공할 수 있는 개발자 데이터 웹 서비스와 같은 다른 인터페이스를 제공받을 수 있음이 이해될 것이다.
개발자 UI(400)를 제공하는 엔티티는 예로 그러나 제한하지 않고, 개발자, 전역 라이센싱 서비스(102) 및 스토어 사이에 보안 네트워크 접속을 사용할 수 있다. 하나의 예에서, 전역 라이센싱 서비스(102)와 직접 통합되는 스토어는 개발자 UI(400)를 호스팅(hosting)할 수 있고, 이에 의해, 전역 라이센싱 서비스(102)와 직접 통합되지 않는 스토어는 개발자 UI(400)와 유사한 기능들을 수행하기 위하여 고객을 전역 라이센싱 서비스(102)에 의해 호스팅되는 보안 웹 사이트로 안내할 수 있다.
개발자 UI(400)는 개발자 UI(400)를 개시하는 엔티티가 개발자로부터 데이터를 수신하는 하나 이상의 UI 제어들을 포함할 수 있다. 본원에서 기술되는 제어들은 단지 실례인 것이 주지되어야 한다. 본원에서 설명되는 기술은 개발자로부터 수신되는 임의의 특정한 제어 또는 데이터로 제한되지 않는다. 하나의 예시적인 제어는 제품 명칭 제어(402)이다. 제품 명칭 제어(402)에서, 제품의 명칭을 포함하는 데이터는 개발자로부터 수신될 수 있다. 일부 구성들에서, 스토어들(110)에 의해 제공되는 식별자 또는 전역 라이센싱 서비스(102)가 제품을 다양한 고객들을 포함하는 트랜잭션으로 매핑하는 데 충분할 수 있으므로, 제품의 명칭은 필요하지 않을 수 있다.
다른 예시의 제어는 제품 식별자 제어(404)일 수 있다. 제품 식별자 제어(404)에서, 개발자는 개발자에게 공지되는 제품에 대하여 알려진 식별자들을 입력할 수 있다. 예를 들어, 개발자가 제품을 특정한 스토어에 이미 제출하였으면, 개발자는 스토어에 의해서 이 스토어 내의 제품에 대하여 생성되는 식별자를 인지할 수 있다. 이것은 스토어로부터의 아이덴티피케이션을 탐색 및 검색하기 위하여 전역 라이센싱 서비스(102)를 필요로 하는 것을 불필요하게 할 수 있다. 제품 식별자 제어(404)는 개발자가 하나 또는 여러 식별자를 입력하는 것을 가능하게 할 수 있다. 일부 구성에서, 제품 식별자 제어(404)는 개발자가 제품에 대한 식별자를 지정하는 것을 가능하게 할 수 있다.
다른 구현에서, 스토어들(110) 내의 제품의 식별자를 직접 등록할 필요성이 제거될 수 있다. 이 구현에서, 개발자는 자신의 제품에 대한 전역 식별자를 제공받을 수 있다. 사용 시에, 개발자는 고객이 다른 스토어에서 제품을 구매했는지를 결정하기 위하여 애플리케이션 내에 애플리케이션 내 체크를 수행할 수 있다. 그러나, 스토어에 의해 제공되는 제품 식별자를 사용하는 것보다는 오히려, 개발자는 전역 라이센싱 서비스(102)에 의해 제공되는 전역 제품 식별자를 사용할 수 있다.
부가적인 예시의 제어는 감사 제어(audit control)(406)이다. 상술한 바와 같이, 지불 제품 카탈로그(104)는 특정한 제품을 포함하는 트랜잭션 정보의 중앙집중화된 데이터 저장소를 제공할 수 있다. 제품이 스토어들 중 하나에서 판매되는 횟수는 지불 제품 카탈로그(104)에 저장될 수 있다. 개발자는 다양한 스토어들에 걸쳐 제품의 판매에 대한 감사를 수행하고자 희망할 수 있다. 지불 제품 카탈로그(104)는 개발자가 스토어들(110)의 각 스토어 별 데이터베이스에 액세스하고 정보를 컴파일링하는 대신 감사를 수행하는 편리한, 단일 장소일 수 있다. 선택되면, 감사 제어(406)는 개발자에게 스토어들(110)에 걸친 제품의 판매 정보를 제공할 수 있다. 정보는 스토어들(110) 중 하나 이상이 최신 판매 정보를 제출하지 않으면 불완전할 수 있다.
제어의 다른 부가적인 예는 페어링 제어(pairing control)일 수 있다. 도 3에 관하여 상술한 바와 같이, 개발자는 제품을 특정한 스토어와 페어링하고자 할 수 있다. 전역 라이센싱 서비스(102)가 정보를 결정하도록 구성될 수 있을지라도, 페어링 제어(408)는 개발자가 전역 라이센싱 서비스(102)가 아니고, 쌍들을 결정하는 메커니즘을 제공할 수 있다. 다른 유형의 페어링은 제품의 다른 제품과의 연계일 수 있다. 관련 제품 제어(410)는 개발자에게 제출되는 제품과 연관되는 제품의 아이덴티피케이션을 제출하는 메커니즘을 제공할 수 있다.
개발자 UI(400)는 또한 특수 가격 책정 제어(410)를 포함할 수 있다. 특수 가격 책정 제어(410)는 개발자가 다양한 가격 책정 모델을 전역 라이센싱 서비스(102)에 입력하는 것을 가능하게 할 수 있다. 상술한 예는 프리미엄/디폴트 가격 책정 모델이다. 이 모델에서, 고객에게는 제품의 구매를 위한 2개의 가격 책정 선택사양들이 제시될 수 있다. 하나의 선택사양은 고객에게 제품의 단일 인스턴스(instance)를 사용할 권한을 제공하는 디폴트 금액을 지불하는 것일 수 있다. 다른 선택사양은 프리미엄 가격을 지불하는 것일 수 있다. 이 가격 책정 모델에서, 고객은 디폴트 가격보다 더 많이 지불할 수 있지만, 단지 제품의 하나의 인스턴스에 대한 권리를 수신하는 대신, 고객은 다른 스토어들에 액세스하고 이 스토어들로부터 제품을 다운로드하는 것이 가능할 수 있다. 다른 구현에서, 프리미엄 가격은 고객이 고객에게 등록된 다수의 디바이스들에 제품을 다운로드하는 것을 가능하게 할 수 있고, 이는 아래, 도 5에서의 예로 설명된다.
도 5는 고객(502)이 다수의 디바이스들(504A 내지 504N)(이후에, 디바이스들(504A 내지 504N)은 총칭하여 그리고/일반적으로 "디바이스들(504)"로 칭해지거나 또는 개별적으로 "디바이스(504A)", "디바이스(504B)" 등으로 칭해진다)을 등록할 수 있는 예시 시스템(500)을 도시하는 시스템도이다. 고객(502)은 디바이스들(504)을 다양한 이유로 전역 라이센싱 서비스(102)에 등록하는 것을 희망할 수 있다. 고객(502)은 디바이스들(504)을 수반하는 더 효율적인 트랜잭션 체험을 제공하기 위하여 디바이스들(504)을 매핑할 것을 원할 수 있다. 예를 들어, 고객(502)은 한 디바이스에 대하여 구매된 제품을 다른 디바이스들(504) 상으로 다운로드하기를 원할 수 있다. 디바이스들(504)을 전역 라이센싱 서비스(102)에 등록함으로써, 고객(502)은 제품이 디바이스들(504) 중 어느 디바이스에 다운로드되어야 하는지를 간단히 식별할 필요가 있을 수 있다. 더욱이, 인가되지 않은 복제 및 제품의 공유를 줄이려는 노력으로, 고객(504)은 제품을 디바이스들(504) 중 하나 이상에서 동작시키기 위한 허가를 받기 위하여 디바이스들(504)을 등록할 필요가 있을 수 있다.
디바이스들(504)의 등록을 제공하기 위하여, 전역 라이센싱 서비스(102)는 GLS 디바이스 등록 제어(506)를 포함할 수 있다. 고객(502)은 GLS 디바이스 등록 제어(506)에 액세스하여 디바이스들(504)에 관한 정보를 제출할 수 있다. 일부 구현에서, 디바이스들(504)에 관한 정보는 디바이스 자체에 특정될 수 있다. 예를 들어, 디바이스(504A)는 무선 모바일 디바이스일 수 있다. 고유 식별자는 디바이스에 할당되는 국제 모바일 가입자 아이덴티티(international mobile subscriber identity; IMSI)일 수 있다. 다른 예로, 디바이스(504B)는 태블릿 컴퓨터일 수 있다. 디바이스(504B)에 대한 고유 식별자는 태블릿 컴퓨터의 일련 번호(serial number), MAC 주소 등일 수 있다. 그러나, 현재 개시되는 특허 대상의 일부 구현에서, 심지어 디바이스들(504)을 등록하지 않아도, 고객(502)은 스토어들(110)에 액세스하고 스토어들(110)에 제공되는 제품을 구매할 수 있음이 이해될 것이다. 본원에서 제공되는 개시내용은 일부 디바이스들(504)이 자동 등록되도록 구성될 수 있으므로 수동 디바이스 등록으로 제한되지 않음이 인정될 것이다. 예를 들어, 디바이스들(504)은 고객이 전역 라이센싱 서비스(102)에 의해 인식되는 아이덴티티가 있는 디바이스 또는 전역 라이센싱 서비스(102)와 통합되는 스토어에 가입되어 있을 때 자동 등록될 수 있다.
고객(502)이 제품을 구매하는 트랜잭션 동안 또는 주기적인 간격으로, 고객이 이전에 구매한 제품은 전역 라이센싱 서비스(102)에 등록된 디바이스들(504)에 다운로드될 수 있다. 예를 들어, 트랜잭션을 조성하는 동안, 스토어는 등록되어 있는 하나 이상의 디바이스들(504)의 아이덴티피케이션을 수신할 수 있다. 아이덴티피케이션의 출처는 고객 또는 전역 라이센싱 서비스(102)를 포함하는 다양한 소스일 수 있다. 하나 이상의 디바이스들(504)의 아이덴티피케이션을 수신하면, 스토어는 구매된 제품을 디바이스들(504)로 다운로드할 수 있다. 다른 구현에서, 다운로드는 전역 라이센싱 서비스(102)에 의해 개시될 수 있다. 예를 들어, 전역 라이센싱 서비스(102)는 제품이 구매되었고 디바이스들(504) 중 하나에 다운로드되었다는 통지를 수신할 수 있다. 전역 라이센싱 서비스(102)는 그 후에, 고객(502) 또는 스토어로부터의 입력 또는 프롬프트(prompt) 없이, 제품을 다른 디바이스들(504)로 다운로드할 수 있다. 일부 구현에서, 전역 라이센싱 서비스(102)는 디바이스들(504) 상의 제품을 동기화하기 위하여 트랜잭션의 통지 시에 또는 주기적으로 제품을 다른 디바이스들(504)에 다운로드할 수 있다. 일부 구현에서, 전역 라이센싱 서비스(102)는 또한 업데이트, 보안 패치 또는 새로운 특징을 다운로드할 수 있다.
제품의 전역 라이센싱의 일부로서, 고객을 구매된 제품으로 매핑하는 것이 설정될 필요가 있을 수 있다. 하나의 구성에서, 이 매핑은 고객이 제품을 처음 구매할 때 설정될 수 있다. 후속 거래에서, 이 매핑은 트랜잭션의 파라미터를 결정하는 데 사용될 수 있다. 일부 구성에서, 스토어는 전역 라이세싱 서비스(102)와 자생적으로 통합될 수 있다. 다른 구성에서, 스토어는 전역 라이센싱 서비스(102)와 통합되지 않을 수 있다.
도 6은 전역 라이세싱 서비스(102)와 자생적으로 통합되는 스토어를 포함하는 트랜잭션을 프로세싱하는 예시 방법(600)을 도시하는 흐름도이다. 방법(600)은 동작 602에서 시작하고, 동작 602에서 고객이 구매를 위하여 제품을 선택한 스토어(110)에서 입력이 수신된다. 제품은 애플리케이션, 서비스, 정기간행물 등을 포함할 수 있으나 이로 제한되지 않는다. 일부 구성에서, 고객은 스토어 특정 아이덴티피케이션을 사용하여 판매용 제품을 제공하는 스토어(110)에 로그인할 것이다. 다른 구성에서, 고객은 전역 고객 식별자와 같은 식별자를 사용하여 스토어(110)에 로그인할 수 있다. 본 발명은 임의의 특정한 로그인 기준으로 제한되지 않는다.
방법(600)은 동작 602에서 동작 604로 진행되고, 동작 604에서 제품이 전역 라이센싱을 지원하는지에 대한 결정이 행해진다. 스토어(110)가 전역 라이센싱 서비스(102)와 자생적으로 완전히 통합되는 일부 구성에서, 스토어(110)는 지불 제품 카탈로그(104)에 직접 액세스할 수 있고 통신 링크를 요청할 필요가 없을 수 있다. 다른 구성에서, 스토어(110)는 통합될 수 있지만 여전히 스토어(110) 및 전역 라이센싱 서비스(102) 사이의 통신 링크의 개시를 요구할 수 있다. 상기 및 다른 구성에서, 통신은 전형적으로 보안 통신일 수 있다.
예를 들어, 통신은 스토어(110)의 진정성(authenticity)을 증명하기 위하여 인증 체킹(certificate-checking) 기술을 사용하는 것을 통합할 수 있다. 스토어(110)와 전역 라이센싱 서비스(102)의 통합 동안, 스토어(110)에는 인증서가 발행될 수 있다. 전역 라이센싱 서비스(102)에 액세스할 때, 스토어(110)는 전역 라이센싱 서비스(102)의 다양한 자원에 액세스하기 위하여 이 인증서를 사용할 필요가 있을 수 있다. 그러나, 본 발명은 보안 접속을 요구하는 것으로 제한되더나 임의의 특정한 보안 방법으로 제한되지 않음이 이해될 것이다.
일부 구성들에서, 제품이 전역 라이센싱을 지원하는지를 결정하는 데 필요한 정보를 제품 자체가 제공할 수 있다. 예를 들어, 제품은 제품과 연계되는 메타데이터를 가질 수 있고, 이 메타데이터는 제품이 전역 라이센싱을 지원한다는 것을 표시할 수 있다. 다른 구성은 제품을 구매를 위한 스토어(110)에 제출한 개발자에 의해 제공되는 데이터일 수 있다. 상기 및 다른 구성은 본 발명의 범위 내에 있는 것으로 간주된다.
제품이 전역 라이센싱을 지원하지 않으면, 방법(600)은 동작 604에서 동작 606으로 진행되고, 동작 606에서 스토어(110)에서의 트랜잭션은 스토어(110)에 국지적인 방식으로 진행된다. 예를 들어, 스토어(110)는 고객과의 트랜잭션을 완료하기 위하여 스토어(110)가 이용 가능한 가격 책정, 라이센싱 또는 배포 정보를 국지적으로 사용할 수 있다. 방법(600)은 동작 606에서 종료로 진행된다.
동작 604에서, 제품이 전역 라이센싱을 지원한다고 결정되었으면, 방법(600)은 동작 604에서 동작 608로 진행되고, 동작 608에서 전역 라이센싱 서비스(102)는 스토어(110)의 명칭 또는 스토어 아이덴티피케이션뿐만 아니라 제품의 아이덴티피케이션을 수신한다. 동작 608에 따라 제출되는 정보는 제품에 대한 전역 제품 식별자를 검색하는 데 사용될 수 있다. 전역 라이센싱 서비스(102)가 이용 가능한 정보에 따라, 스토어 아이덴티피케이션은 요구되지 않을 수 있다. 스토어(110)가 자생적으로 통합되는 경우, 스토어(110) 및 전역 라이센싱 서비스(102) 사이의 통신 링크가 설정되면, 접속에 따라 스토어 아이덴티피케이션이 결정될 수 있다.
방법(600)은 동작 608에서 동작 610으로 진행되고, 동작 610에서 스토어(110)는 구매하고자 희망하는 고객에 대한 전역 고객 식별자에 대하여 전역 라이센싱 서비스(102)에 질의한다. 일부 구현에서, 질의는 스토어 명칭 및 스토어(110)에 로그인하는 데 사용되는 고객 식별자와 같은 고객 쌍에 대한 전역 고객 식별자가 있는지를 결정하기 위한 것이다. 일부 구현에서, 고객 식별자는 이메일 서비스 제공자와 같은 서비스 제공자 및 고객에 대한 서비스 제공자의 고유 식별자를 포함한다. 아직 설정되지 않았으면, 전역 라이센싱 서비스(102)는 새로운 전역 고객 식별자를 생성하고 이 식별자를 스토어(110) 및 제품과 연계시킬 것이다.
방법(600)은 동작 610에서 동작 612로 진행되고, 동작 612에서 전역 고객 식별자의 전역 서비스 식별자로의 새로운 맵이 생성된다. 이 맵은 고객 및 제품을 포함하는 후속 트랜잭션에서 스토어(110) 또는 다른 스토어들에 의해 사용될 수 있다. 고객이 아마도 다른 디바이스를 위해 상이한 스토어에 있는 제품을 구매하고자 희망하는 것을 나타내는 정보를 이 고객이 제출하면, 상이한 스토어는 고객이 이전의 구매로부터 어떤 혜택을 가지고 있는지를 결정하기 위하여 전역 라이센싱 서비스(102)에 액세스할 수 있다. 동작 612에서 생성되는 맵은 상이한 스토어가 트랜잭션의 파라미터를 결정하는 것을 보조할 수 있다. 방법은 동작 612에서 종료로 진행된다.
도 7은 스토어가 전역 라이센싱 서비스(102)와 자생적으로 통합되지 않는 경우 사용될 수 있는 예시 방법(700)을 도시하는 흐름도이다. 방법(700)은 동작 702에서 시작하고, 동작 702에서, 개발자는 매핑을 용이하게 하기 위한 코드를 기록한다. 난제는 고객/제품 매핑의 생성이 탬퍼링(tampering)의 확률을 감소시키는 방식으로 행해지는 것을 보장해야 하는 것일 수 있다. 예를 들어, 고객은 할인 또는 무료로 제품을 받기 위하여 자신을 위해 또는 다른 사람 또는 엔티티를 위해 고객/제품 맵을 불법으로 생성할 수 있다. 그러므로, 방법(700)은 불법 맵들이 생성되는 것을 어렵게 하면서도 고객/제품의 합법적인 맵이 생성될 수 있는 검증 시스템을 생성하도록 설계되는 동작들을 포함할 수 있다. 하나의 구현에서, 개발자는 탬퍼링의 가능성을 줄이기 위하여, 고객의 디바이스에 다운로드되는 애플리케이션의 코드 내보다는 오히려 개발자의 컴퓨터상의 코드의 일부분을 유지할 수 있다.
방법(700)은 동작 702에서 동작 704로 진행되고, 동작 704에서 개발자는 전역 라이센싱 서비스(102)에 제품을 등록한다. 개발자가 자신의 제품을 전역 라이센싱 서비스(102)에 등록할 수 있는 다양한 방식이 있을 수 있다. 위에 도 4와 관련하여 하나의 예가 제공되었다. 도 4는 개발자가 정보를 제출하기 위하여 사용할 수 있는 여러 제어들을 가지는 개발자 UI(400)를 포함하였다.
방법(700)은 동작 704에서 동작 706으로 진행되고, 동작 706에서 전역 제품 식별자 및 제품과 연계되는 개인 키가 생성된다. 전역 제품 식별자의 예는 위에서 도 1에 제공된다. 이 예는 "지출" 제품에 대하여 "103"이고 "아키텍처 제품"에 대하여 "119"이다. 개인 키는 아래에서 다양한 도면에서 논의되는 바와 같이, 트랜잭션의 다양한 양태를 검증하기 위하여 전역 라이센싱 서비스(102)에 의해 사용될 수 있다.
방법(700)은 동작 706에서 동작 708로 진행되고, 동작 708에서 제품은 트랜잭션을 수행하는 스토어(110)에서 미리 결정된 가격 또는 디폴트 가격(default price)으로 기재된다. 일부 구성에서, 제품은 스토어(110)에서 무료로 기재될 수 있다. 제품은 스토어(110)에서 무료로 기재될 수 있지만 제품에 액세스하기 위해 여전히 애플리케이션 내 구매와 같은, 그러나 이로 제한되지 않는 구매를 수행할 요건이 있을 수 있다. 일부 경우에, 제품은 무료로 기재될 수 있지만 제품 내 구매를 요구할 수 있다. 제품이 지불(시험용(trial)으로)로 기재될 수 있을지라도, 스토어가 고객에게 이 제품을 디폴트 가격으로 구매하라고 계속 프롬프팅할 수 있는 문제가 발생할 수 있다. 이 구성에서, 스토어는 제품을 지불보다는 오히려 무료로 기재할 수 있다.
방법(700)은 동작 708에서 동작 710으로 진행되고, 동작 710에서 전역 라이센싱 서비스(102)는 고객에게 전역 고객 식별자와 같이, 전역 라이센싱 서비스(102)에 공지되어 있는 아이덴티피케이션을 사용하여 전역 라이센싱 서비스(102)에 서명 진입(sign in)할 것을 프롬프팅한다. 하나의 구현에서, 제품이 bob@email.com에 대한 고객 식별자와 같은 현재 고객의 식별자를 스토어(110B)와 같은 현재 스토어에 대하여 프로그램적으로 검색할 수 있으면, 전역 라이센싱 서비스(102)는 제공자 명칭이 있는 고객 식별자의 수치 표현과 같은 고객이 ID를 안전하게 전송할 수 있다. 일부 구현에서, OAuth 경로와 같은 오픈 인증 시스템이 사용될 수 있다. 예를 들어, 전역 라이센싱 서비스(102)는 소셜 네트워크에 등록될 수 있다. 고객은 소셜 네트워크 상의 자신의 계정에 서명 진입할 수 있다. 그 후에, 소셜 네트워크는 전역 라이센싱 서비스(102)에 고객 식별자를 송신할 수 있다.
방법(700)은 동작 710에서 동작 712로 진행되고, 동작 712에서 고객에게는 고객이 전역 라이센싱 서비스(102)로부터 고객의 아이덴티티에 액세스하는 것을 허가하는 것을 확인하도록 프롬프팅된다. 일부 구성에서, 제품은 이 동작 712를 수행할 수 있다. 다른 구성에서, 스토어는 이 동작 712을 수행할 수 있다.
방법(700)은 동작 712에서 동작 714로 진행되고, 동작 714에서 액세스 또는 매핑 토큰(token)과 같은 토큰이 생성된다. 일부 구성에서, 토큰은 스토어가 방법(700)의 다양한 동작을 수행하고 있는 경우 스토어에 제공된다. 다른 구성에서, 토큰은 제품이 방법(700)의 다양한 동작들을 수행하고 있는 경우 제품에 부여될 수 있다. 일부 구성에서, 토큰은 전역 제품 식별자 및 전역 고객 식별자를 포함한다. 일부 구성에서, 토큰은 제품 또는 스토어가 상기 전역 제품 식별자 및 전역 고객 식별자 사이의 매핑 및 질의를 프로그램적으로 변경하기 위하여 사용하는 보안 키일 수 있다. 일부 구현에서, 토큰은 또한 고객이 다른 스토어에서 이미 제품을 구매했는지의 여부와 같이, 임의의 새로운 트랜잭션 이전의 라이센스의 상태를 포함할 수 있다.
방법(700)은 동작 714에서 동작 716으로 진행되고, 동작 716에서 고객은 스토어(110)와 연관되는 고객의 식별자를 사용하여 스토어(110)에 서명 진입하여 제품의 구매를 완료할 수 있다. 도 2에 예로 설명되는 방법(700)의 변형에서, 고객이 제품을 이전에 구매했으면 그리고 그와 같은 경우 개발자 또는 스토어가 제품이 무료로 구매되는 것을 허용하면, 방법(700)은 종료될 수 있다. 그렇지 않으면, 트랜잭션에 대한 영수증이 스토어에 의해 생성되고 제품과 연계될 수 있다.
방법(700)은 동작 716에서 동작 718로 진행되고, 동작 718에서 개발자에 의해 운영되는 웹사이트와 같은 서버 측 구성요소는 토큰 및 영수증을 사용하여 호출된다. 서버 측 구성요소는 스토어(110)와 영수증의 유효성을 확인하고 스토어(110)의 식별자, 개인 키 및 토큰을 사용하여 전역 라이센싱 서비스(102)를 안전하게 호출할 수 있다.
방법(700)은 동작 718에서 동작 720으로 진행되고, 동작 720에서 전역 라이센싱 서비스(102)는 토큰을 검증하고 개인 키와 연계되는 전역 제품 식별자를 검색한다. 전역 라이센싱 서비스(102)는 그 후에 전역 고객 식별자 및 새로 프로비저닝된 전역 고객 식별자 사이의 매핑을 만든다. 예를 들어, 도 1에서, "밥"과 연관되는 "222"의 전역 고객 식별자는 새로 프로비저닝된 전역 고객 식별자로 매핑될 수 있다. 방법(700)은 동작 720에서 종료로 진행된다.
일부 구성에서, 동작 718의 서버 측 구성요소의 액세스가 제거될 수 있다. 방법(700)은 제품이 제품의 공개 키(public key)를 사용하여 고객의 동의를 요청하도록 수정될 수 있다. 전역 라이센싱 서비스(102)는 제품이 전역 라이센싱을 설정하는 것을 고객이 허가할 것을 요청한다. 이 승인을 수신하면, 새로운 전역 고객 식별자가 생성되고 전역 라이센싱 서비스는 토큰을 생성한다. 제품은 고객의 스토어 특정 식별자를 사용하는 구매 프로세스를 통해 고객을 유도한다. 제품은 그 후에 영수증 및 토큰을 전역 라이센싱 서비스(102)로 송신할 수 있다. 전역 라이센싱 서비스(102)는 영수증 및 토큰을 검증한다. 전역 라이센싱 서비스(102)는 영수증으로부터 고객의 스토어 특정 식별자를 검색하고 개발자가 제품에 대해 등록했던 전역 제품 식별자를 결정한다. 그리고 나서 전역 라이센싱 서비스(102)는 전역 고객 식별자를 전역 제품 식별자로 매핑하기 위한 새로운 엔트리(entry)를 생성할 수 있다.
전역 라이센싱 서비스(102)에서 고객 및 제품의 매핑을 생성하면, 고객은 다른 스토어에서 제품을 할인된 가격으로 또는 무료로 받기를 원할 수 있다. 본원에서 기술되는 개념의 다양한 양태는 제품을 상이한 스토어들 또는 동일한 스토어들로부터 다양한 디바이스들 상의 고객으로 자동으로 분배할 수 있다.
도 8은 한 스토어에서 이전에 구매했던 제품을 다른 스토어에서 제공하는 예시적인 방법(800)을 도시하는 흐름도이다. 도 8에서 도시되는 구성에서 스토어들은 자생적으로 전역 라이센싱 서비스(102)와 인터페이스된다. 방법(800)은 동작 802에서 시작되고, 동작 802에서 고객은 제2 스토어에 서명 진입하고 구매를 위하여 제품을 선택한다. 방법(800)은 동작 802에서 동작 804로 진행되고, 동작 804에서 고객이 선택한 것을 받으면, 이 제품 또는 스토어는 제품에 대한 전역 제품 식별자를 검색하기 위하여 전역 라이센싱 서비스(102)에 질의한다. 방법(800)은 동작 804에서 동작 806으로 진행되고, 동작 806에서 고객이 이전에 행한 제품 구매에 관한 데이터가 검색된다. 데이터는 스토어에 서명 진입할 때 사용되는 고객 식별자 및 전역 제품 식별자를 사용함으로써 검색될 수 있다.
일부 구성에서, 고객이 제1 스토어에서 제품에 대해 대금을 지불했으면, 제품은 무료로 또는 할인된 가격으로 제공될 수 있다. 일부 구성에서, 전역 라이센싱 서비스(102)는 제1 스토어의 최초 트랜잭션의 완료 시에 고객이 다른 스토어들에서 제품을 받을 권한이 있다는 것을 고지하는 통지를 이 고객에게 전송할 수 있다. 다른 구성에서, 제품의 개발자는 고객이 트랜잭션의 완료의 결과로서 다른 제품을 받을 수 있는 트랜잭션을 완료했다는 통지를 수신할 수 있다. 개발자는 그 후에 트랜잭션의 완료의 결과로서 다른 제품을 받을 수 있는 다른 스토어 또는 장소에 관한 정보를 제공하기 위하여 고객에 바로 접촉하는 것이 가능할 수 있다.
더 추가적인 구성에서, 고객이 제1 스토어에서 제품을 사용할 권한을 받았으면, 제품에 대한 권한은 하나 이상의 개인에게 제공될 수 있거나 고객으로부터 하나 이상의 개인에게 위임될 수 있다. 예를 들어, 전역 라이센싱 서비스(102) 또는 다른 엔티티는 하나 이상의 개인에게 고객이 제품에 대한 권한을 받았다는 통지를 전송할 수 있다. 하나 이상의 개인은 그 후에 제품 또는 다른 제품으로의 액세스를 받기 위하여 통지 내의 정보를 사용할 수 있다. 더 추가적인 구성에서, 고객은 통지를 수신할 수 있고 그 후에 정보를 한 명 이상의 개인에게 전송할 수 있고 따라서 그 하나 이상의 개인은 제품 또는 다른 제품을 받을 수 있다.
다른 구성에서, 제품은 후속 지불을 받을 때까지 제한된 방식으로 기능할 수 있다. 예를 들어, 제품은 생성될 수 있는 보고들의 수와 같은 특정한 사용 횟수, 또는 편집 가능 대 편집 불가능 보고들과 같은 특정한 특징들을 포함할 수 있다. 방법(800)은 동작 806에서 종료로 계속된다.
일부 구성에서, 전역 라이센싱 서비스(102) 또는 스토어들(110) 중 하나 이상 또는 다른 엔티티는 하나의 디바이스에서 이전에 구매한 제품을 고객이 등록한 다른 디바이스로 자동으로 다운로드할 수 있다. 예를 들어, 스토어는 고객이 이전에 구매했던 제품의 목록을 수신할 수 있다. 목록은 전역 라이센싱 서비스(102)에 질의하는 스토어에 의해 주기적으로 갱신될 수 있거나, 또는 대안의 구성에서, 전역 라이센싱 서비스(102)는 전역 라이센싱 서비스(102)와 통합되는 스토어들을 자동으로 갱신할 수 있다. 일부 구성에서, 스토어는 고객이 스토어에 로그인될 때 고객에 의해 액세스되는 다른 스토어로부터 제품을 받을 수 있다.
일부 구성들에서, 고객이 한 스토어에서 제품을 구매한 경우 이 고객이 이 제품을 다른 디바이스로 다운로드하고자 희망하면 고객에게는 웹사이트에 액세스하는 것이 프롬프팅될 수 있다. 웹사이트에서, 고객은 제품을 다운로드할 웹사이트에 액세스하기 위하여 자신의 스토어 특정 식별자 또는 전역 고객 식별자를 사용할 수 있다. 전역 라이센싱 서비스(102)는 고객과 연관되는 다양한 식별자 및 전역 제품 식별자를 매핑할 수 있다. 그 후에 스토어는 고객이 지불한 모든 제품들의 목록을 검색하기 위하여 전역 라이센싱 서비스(102)에게 질의할 수 있다. 이 정보는 그 후에 어떤 제품이 고객에게 할인된 가격으로 또는 무료로 제공되어야 하는지를 결정하기 위하여 스토어에 의해 사용될 수 있다.
이 지점에서, 고객이 서명 진입하여 제2 디바이스에서 제품을 사용하도록 하는 플로우가 가능하다. 사용자 이름 및 패스워드 공유의 방지와 같은 보안의 증가를 제공하는 부가적인 향상이 행해질 수 있다. 예를 들어, 특정한 스토어들은 제품이 인스톨(install)되는 디바이스의 하드웨어 서명(hardware signature)을 기록할 수 있다. 전역 라이센싱 서비스(102)를 자생적으로 지원하는 스토어들의 경우, 이 스토어들은 초기 스토어 전역 고객 식별자/스토어 특정 고객 식별자 매핑에 액세스될 때 하드웨어 서명을 거부할 수 있다.
전역 라이센싱 서비스(102)는 소정의 스토어 고객 식별자에 대하여 존재하는 고유 하드웨어 서명의 번호를 나타내는 데이터를 리턴(return)할 수 있고, 스토어는 제품으로의 액세스를 단속(gating)하는데 이것을 사용할 수 있다. 대안으로, 고객이 전역 라이센싱 서비스(102)로 서명 진입하면, 전역 라이센싱 서비스(102)는 고객이 이 식별자로 서명 진입한 최종 시간을 기록할 수 있다. 소정의 시간 기간 내에 너무도 많은 동시 서명 진입들이 있으면, 추가 액세스가 차단될 수 있다.
지불 서비스의 경우, 본원에서 개시된 내용의 다양한 구현은 고객이 구매했던 제품을 결정하기 위하여 전역 라이센싱 서비스(102)에 주기적으로 질의할 수 있다. 더욱이 전역 라이센싱 서비스(102)는 예를 들어, 제품과 연관되는 라이센스의 유효성을 결정함으로써, 고객이 제품을 사용할 권한을 더 이상 가지고 있지 않음을 주기적으로 결정할 수 있다. 예를 들어, 고객은 특정한 수의 제품의 인스턴스를 구매했거나, 취소된 서비스에 가입했거나, 또는 환불 또는 사기 체크(fraud check)로 인해 후속해서 철회된 라이센스를 가졌을 수 있다. 스토어들(110)은 전역 라이센싱 서비스(102)에 권한 정보를 주기적으로 전송할 수 있다. 고객이 더 이상 제품을 사용할 권한을 가지지 않으면, 전역 라이센싱 서비스(102)는 만료 통지를 저장할 수 있다. 만료 통지는 고객이 제품에 대한 권한을 가지는지를 결정하기 위하여 스토어들(110)에 의해 또는 제품에 의해 사용될 수 있다.
도 9는 상술한 소프트웨어 구성요소를 실행할 수 있는 디바이스에 대한 실례의 컴퓨터 아키텍처(900)이다. 그러므로, 도 9에 도시되는 컴퓨터 아키텍처(900)는 서버 컴퓨터, 모바일 전화기, PDA, 스마트 전화기, 데스크탑 컴퓨터, 넷북 컴퓨터, 태블릿 컴퓨터 및/또는 랩탑 컴퓨터에 대한 아키텍처를 도시한다. 컴퓨터 아키텍처(900)는 본원에서 제시되는 소프트웨어 구성요소의 임의의 양태를 실행하는 데 사용될 수 있다. 예를 들어, 컴퓨터 아키텍처(900)는 전역 라이센싱 서비스(102)를 구현하는 데 사용될 수 있다.
도 9에 도시되는 컴퓨터 아키텍처(900)는 중앙 처리 장치(central processing unit; "CPU")(902), 랜덤 액세스 메모리(random access memory)(906)("RAM") 및 판독 전용 메모리(read-only memory)(908)("ROM")를 포함하는 시스템 메모리(904) 및 메모리(904)를 CPU(902)에 결합시키는 시스템 버스(910)를 포함한다. 예를 들어, 스타트업(startup) 중에 컴퓨터 아키텍처(900) 내의 요소들 사이에서 정보를 전달하는 것을 돕는 기본 루틴을 포함하는 기본 입력/출력 시스템이 ROM(908) 내에 저장된다. 컴퓨터 아키텍처(900)는 도 1의 지불 제품 카탈로그(104), 라이센스 매핑 저장소(106) 및 고객 카탈로그(108)를 저장하기 위한 대용량 저장 디바이스(912)를 더 포함한다.
대용량 저장 디바이스(912)는 버스(910)에 접속되는 대용량 저장 제어기(도시되지 않음)를 통해 CPU(902)에 접속된다. 대용량 저장 디바이스(912) 및 이의 연관되는 컴퓨터 판독 가능 매체는 컴퓨터 아키텍처(900)에 비휘발성 저장을 제공할 수 있다. 본원에서 포함되는 컴퓨터 판독 가능 매체에 대한 설명이 하드 디스크 또는 CD-ROM 드라이브와 같은 대용량 저장 디바이스를 칭할지라도, 컴퓨터 판독 가능 매체가 컴퓨터 아키텍처(900)에 의해 액세스될 수 있는 임의의 이용 가능한 컴퓨터 저장 매체 또는 통신 매체일 수 있음이 당업자에 의해 인정될 것이다.
통신 매체는 컴퓨터 판독 가능 명령들, 데이터 구조들, 프로그램 모듈들 또는 반송파 또는 다른 운반 매커니즘과 같은 변조 데이터 신호 내의 다른 데이터를 포함하고 임의의 전달 매체를 포함한다. 용어 "변조 데이터 신호(modulated data signal)"는 자체의 특성 중 하나 이상이 신호 내의 정보를 인코딩(encoding)하는 방식으로 변경 또는 세팅되는 신호를 의미한다. 예로서, 그리고 제한하지 않고, 통신 매체는 유선 네트워크 또는 직접 유선 접속과 같은 유선 매체 및 음향, RF, 적외선 및 다른 무선 매체와 같은 무선 매체를 포함한다. 상기 중 임의의 결합 또한 컴퓨터 판독 가능 매체의 범위 내에 포함될 것이다.
예로서 그리고 제한하지 않고, 컴퓨터 저장 매체는 컴퓨터 판독 가능 명령들, 데이터 구조들, 프로그램 모듈들 또는 기타 데이터와 같은 정보의 저장을 위해 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 제거 가능 및 제거 불가능 매체를 포함할 수 있다. 예를 들어, 컴퓨터 매체는 RAM, ROM, EPROM, EEPROM, 플래시 메모리 또는 다른 고체 메모리 기술, CD-ROM, 디지털 다목적 디스크(digital versatile disk: "DVD"), HD-DVD, BLU-RAY 또는 다른 광 스토리지, 자기 카세트, 자기 테이프, 자기 디스크 스토로지 또는 다른 자기 저장 디바이스 또는 원하는 정보를 저장하는 데 사용될 수 있고 컴퓨터 아키텍처(900)에 의해 액세스될 수 있는 임의의 다른 매체를 포함하나 이로 제한되지 않는다. 청구항을 위하여, 어구 "컴퓨터 저장 매체" 및 이의 변형들은 파 또는 신호 자체 그리고/또는 통신 매체를 포함하지 않는다.
다양한 실시예들에 따르면, 컴퓨터 아키텍처(900)는 네트워크(920)와 같은 네트워크를 통한 원격의 컴퓨터와의 논리 접속들을 사용하여 네트워크화된 환경에서 동작할 수 있다. 컴퓨터 아키텍처(900)는 버스(910)에 접속되는 네트워크 인터페이스 유닛(916)을 통해 네트워크(920)에 접속할 수 있다. 네트워크 인터페이스 유닛(916) 또한 다른 유형의 네트워크 및 원격의 컴퓨터 시스템에 접속하는 데 사용될 수 있음이 인정될 것이다. 컴퓨터 아키텍처(900)는 또한 키보드, 마우스 또는 전자 스타일러스를 포함하는 다수의 다른 디바이스로부터의 입력을 수신 및 프로세싱하기 위한 입력/출력 제어기(918)를 포함할 수 있다. 유사하게, 입력/출력 제어기(918)는 디스플레이 스크린, 프린터 또는 다른 유형의 출력 디바이스에 출력을 제공할 수 있다.
본원에서 기술되는 소프트웨어 구성요소는 CPU(902)로 로딩되고 실행될 때, CPU(902) 및 전체 컴퓨터 아키텍처(900)를 범용 컴퓨팅 시스템으로부터 본원에서 제시되는 기능을 용이하게 하도록 맞춤화되는 특수 목적 컴퓨팅 시스템으로 변환할 수 있음이 인정될 것이다. CPU(902)는 개별적으로 또는 총칭하여 임의의 수의 상태를 취할 수 있는 임의의 수의 트랜지스터 또는 다른 이산의 회로 요소로부터 구성될 수 있다. 더 구체적으로, CPU(902)는 본원에서 개시되는 소프트웨어 모듈 내에 포함되는 실행 가능 명령에 응답하여, 유한 상태 기계(finite-state machine)로서 동작할 수 있다. 이 컴퓨터 실행 가능 명령은 CPU(902)가 상태 사이에서 어떻게 전이되는지를 명시함으로써 CPU(902)를 변환시킬 수 있고, 이에 의해 CPU(902)를 구성하는 트랜지스터 또는 다른 이산의 하드웨어 요소를 변환시킬 수 있다.
본원에서 제시되는 소프트웨어 모듈을 인코딩하는 것 또한 본원에서 제시되는 컴퓨터 판독 가능 매체의 물리적 구조를 변환할 수 있다. 물리적 구조의 특정 변환은 본 설명의 상이한 구현에서, 다양한 요인에 좌우될 수 있다. 그와 같은 요인의 예는 컴퓨터 판독 가능 매체를 구현하는 데 사용되는 기술, 컴퓨터 판독 가능 매체가 1차 또는 2차 스토리지로서 특징되는지의 여부 등을 포함할 수 있으나 이로 제한되지 않는다. 예를 들어, 컴퓨터 판독 가능 매체가 반도체 기반 메모리로서 구현되면, 본원에서 개시되는 소프트웨어는 반도체 메모리의 물리적 상태를 변환함으로써 컴퓨터 판독 가능 매체에 인코딩될 수 있다. 예를 들어, 소프트웨어는 반도체 메모리를 구성하는 트랜지스터, 커패시터 또는 다른 이산의 회로 요소의 상태를 변환할 수 있다. 소프트웨어는 또한 그와 같은 구성요소에 데이터를 저장하기 위하여 이 구성요소의 물리적 상태를 변환할 수 있다.
다른 예로서, 본원에서 개시되는 컴퓨터 판독 가능 매체는 자기 또는 광 기술을 사용하여 구현될 수 있다. 그와 같은 구현에서, 본원에서 제시되는 소프트웨어는 소프트웨어가 내부에 인코딩될 때 자기 또는 광 매체의 물리적 상태를 변환할 수 있다. 이 변환은 소정의 자기 매체 내의 특정한 위치의 자기 특성을 변경하는 것을 포함할 수 있다. 이 변환은 또한 소정의 광 매체 내의 특정한 장소의 물리적 특징 또는 특성을 변경하여 상기 장소의 광 특성을 변경하는 것을 포함할 수 있다. 본 설명의 사상 및 범위를 벗어나지 않고 물리 매체의 다른 변환이 가능하며, 상기 예는 단지 본 설명을 용이하게 하기 위하여 제공된다.
상술한 바를 고려하면, 본원에서 제시되는 소프트웨어 구성요소를 저장 및 실행하기 위하여 컴퓨터 아키텍처(900) 내에서 많은 유형의 물리적 변환이 발생하는 것이 인정될 것이다. 또한 컴퓨터 아키텍처(900)가 소형 컴퓨터, 임베딩식 컴퓨터 시스템, 개인용 디지털 보조장치 및 당업자에게 공지되어 있는 다른 유형의 컴퓨팅 디바이스를 포함하는 다른 유형의 컴퓨팅 디바이스를 포함할 수 있음이 인정될 것이다. 컴퓨터 아키텍처(900)가 도 9에 도시된 구성요소 모두를 포함하지 않을 수 있거나, 도 9에 명백하게 도시되지 않은 다른 구성요소를 포함할 수 있거나 또는 도 9에 도시된 것과 완전히 다른 아키텍처를 사용할 수 있음이 또한 고려된다.
상술한 바에 기초하여, 제3자 제품에 대한 교차 스토어 라이센싱을 위한 개념 및 기술이 본원에서 개시되었음이 인정될 것이다. 본원에서 제시되는 특허 대상이 컴퓨터 구조 특징, 방법 및 변환 행위, 특정 컴퓨팅 기계 및 컴퓨터 판독 가능 매체에 특정한 언어로 기술되었을지라도, 첨부된 청구항에서 규정되는 본 발명은 반드시 본원에서 기술되는 이 특정한 특징, 행위 또는 매체로 제한되는 것이 아님이 이해되어야 한다. 오히려, 특정한 특징, 행위 및 매체는 청구항을 구현하는 예의 형태들로서 개시된다.
상술한 특허 대상은 단지 실례로 제공되고 제한하는 것으로 해석되어서는 안 된다. 본원에서 기술된 특허 대상에 대한 다양한 수정 및 변형은 설명되고 기술된 예의 실시예 및 적용예를 따르지 않고, 그리고 다음의 청구항에서 진술되는 본 발명의 진정한 사상 및 범위를 벗어나지 않고 행해질 수 있다.

Claims (10)

  1. 전역 라이센싱 서비스(global licensing service)로서:
    적어도 하나의 제품 및 상기 적어도 하나의 제품에 대한 적어도 하나의 제품 식별자(identifier)를 식별하는 데이터를 포함하는 지불 제품 카탈로그(paid product catalog)와;
    적어도 하나의 고객과 적어도 하나의 스토어 고객 식별자(store consumer identifier) 사이의 매핑(mapping)을 식별하는 데이터를 포함하는 고객 카탈로그와;
    상기 적어도 하나의 제품과 상기 적어도 하나의 고객 사이의 매핑을 식별하는 데이터를 포함하는 라이센스 매핑 저장소(license mapping store)를 포함하는
    전역 라이센싱 서비스.
  2. 제1항에 있어서,
    상기 지불 제품 카탈로그는 상기 적어도 하나의 제품 중 판매된 인스턴스의 수를 규정하는 데이터를 더 포함하는
    전역 라이센싱 서비스.

  3. 제2항에 있어서,
    상기 지불 제품 카탈로그는 상기 적어도 하나의 제품이 판매된 복수의 스토어의 식별자를 규정하는 데이터를 더 포함하는
    전역 라이센싱 서비스.
  4. 제1항에 있어서,
    상기 적어도 하나의 제품은 디폴트 가격(default price) 및 프리미엄 가격(premium price)을 포함하고, 상기 디폴트 가격은 상기 적어도 하나의 고객이 상기 적어도 하나의 제품을 이전에 구매하지 않은 경우에 상기 제품을 판매하는 스토어에서 상기 적어도 하나의 제품에 할당된 가격인
    전역 라이센싱 서비스.
  5. 제1항에 있어서,
    상기 적어도 하나의 고객 식별자는 상기 전역 라이센싱 서비스에 의해 생성되거나, 상기 적어도 하나의 제품을 구매하기 위해 상기 적어도 하나의 고객이 액세스하는 스토어로부터 프로그램적으로 검색되거나 또는 오픈 인증(open authentication)을 통해 수신되는 식별자를 포함하는
    전역 라이센싱 서비스.
  6. 스토어 내의 제품에 대한 교차 스토어 라이센싱을 위한 방법으로서:
    고객의 아이덴티피케이션(identification)을 수신하는 단계와;
    구매를 위하여 상기 고객에 의해 선택되는 제품의 아이덴티피케이션을 수신하는 단계와;
    상기 제품이 상기 고객에 의해 이전에 구매되었는지를 판정하기 위하여 전역 라이센싱 서비스에 액세스하는 단계와;
    상기 제품이 상기 고객에 의해 이전에 구매되지 않았다고 판정하는 것에 응답하여, 상기 제품을 디폴트 가격으로 제공하는 단계와;
    상기 제품이 상기 고객에 의해 이전에 구매되었다고 판정하는 것에 응답하여,
    상기 제품이 이전의 구매 할인을 받는지를 판정하고;
    상기 제품이 상기 이전의 구매 할인을 받지 않는다고 판정하는 것에 응답하여, 상기 제품을 상기 디폴트 가격으로 제공하고;
    상기 제품이 상기 이전의 구매 할인을 받는다고 판정하는 것에 응답하여, 상기 제품을 상기 디폴트 가격과 상이한 가격으로 제공하는 단계
    를 포함하는 방법.
  7. 제6항에 있어서,
    상기 제품이 상기 고객에 의해 이전에 구매되었는지를 판정하는 것은 상기 고객이 상기 제품을 제2 스토어에서 구매했는지를 판정하기 위하여 전역 고객 식별자의 상기 제품으로의 매핑에 액세스하는 것을 포함하는
    방법.
  8. 제6항에 있어서,
    상기 제품이 다운로드될 하나 이상의 디바이스의 아이덴티피케이션을 수신하는 단계를 더 포함하고, 상기 아이덴티피케이션은 상기 고객 또는 상기 전역 라이센싱 서비스로부터 수신되는
    방법.
  9. 제6항에 있어서,
    상기 제품을 하나 이상의 디바이스에 다운로드하는 단계를 더 포함하고, 상기 제품을 다운로드하는 것은 상기 고객에 의해 또는 상기 전역 라이센싱 서비스에 의해 개시되는
    방법.
  10. 교차 스토어 라이센싱 시스템으로서:
    프로세서와;
    상기 프로세서와 통신하는 컴퓨터 판독 가능 저장 매체
    를 포함하고, 상기 컴퓨터 판독 가능 저장 매체는 내부에 저장되는 컴퓨터 실행 가능 명령어들을 포함하고, 상기 명령어들은 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금:
    고객의 아이덴티피케이션을 수신하고;
    상기 고객이 구매할 제품의 아이덴티피케이션을 수신하고;
    전역 라이센싱 서비스에 액세스하고;
    상기 고객의 상기 제품의 상기 아이덴티피케이션으로의 매핑을 검색함으로써 상기 제품의 가격을 판정하고;
    상기 제품이 상기 고객에 의해 이전에 구매되지 않았다고 판정하는 것에 응답하여, 상기 제품을 디폴트 가격으로 제공하고;
    상기 제품이 상기 고객에 의해 이전에 구매되었다고 판정하는 것에 응답하여,
    상기 제품이 이전의 구매 할인을 받는지를 판정하고;
    상기 제품이 상기 이전의 구매 할인을 받지 않는다고 판정하는 것에 응답하여, 상기 제품을 상기 디폴트 가격으로 제공하고;
    상기 제품이 상기 이전의 구매 할인을 받는다고 판정하는 것에 응답하여, 상기 제품을 상기 디폴트 가격과 상이한 가격으로 제공하도록 하는
    교차 스토어 라이센싱 시스템.
KR1020157035034A 2013-06-10 2014-06-05 제3자 제품에 대한 교차 스토어 라이센싱 기법 KR20160019436A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/914,562 US20140365384A1 (en) 2013-06-10 2013-06-10 Cross-store licensing for third party products
US13/914,562 2013-06-10
PCT/US2014/040972 WO2014200782A2 (en) 2013-06-10 2014-06-05 Cross-store licensing for third party products

Publications (1)

Publication Number Publication Date
KR20160019436A true KR20160019436A (ko) 2016-02-19

Family

ID=51023195

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157035034A KR20160019436A (ko) 2013-06-10 2014-06-05 제3자 제품에 대한 교차 스토어 라이센싱 기법

Country Status (11)

Country Link
US (1) US20140365384A1 (ko)
EP (1) EP3008651A4 (ko)
JP (1) JP2016521887A (ko)
KR (1) KR20160019436A (ko)
CN (1) CN105339975A (ko)
AU (1) AU2014278552A1 (ko)
BR (1) BR112015030444A2 (ko)
CA (1) CA2914053A1 (ko)
MX (1) MX2015017057A (ko)
RU (1) RU2015152814A (ko)
WO (1) WO2014200782A2 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130144755A1 (en) * 2011-12-01 2013-06-06 Microsoft Corporation Application licensing authentication
US10108924B2 (en) * 2013-09-26 2018-10-23 At&T Mobility Ii Llc Methods and apparatus to emulate a toy
US10628559B2 (en) 2015-06-23 2020-04-21 Microsoft Technology Licensing, Llc Application management
EP3393610A1 (de) * 2015-12-21 2018-10-31 Gorillabox GmbH I. G. Verfahren zum abspielen von applikationen aus einer cloud sowie telekommunikationsnetz zum streamen und zur wiedergabe von anwendungen (apps) über ein bestimmtes telekommunikationssystem sowie verwendung eines telekommunikationsnetzes zum streamen und zur wiedergabe von anwendungen (apps)
CN107452225A (zh) * 2017-07-21 2017-12-08 上海高屋信息科技有限公司 停车位租赁管理系统及方法
US11403649B2 (en) 2019-09-11 2022-08-02 Toast, Inc. Multichannel system for patron identification and dynamic ordering experience enhancement
US11586746B2 (en) 2019-11-08 2023-02-21 Microsoft Technology Licensing, Llc Integration management of applications
CN111510748B (zh) * 2020-04-08 2023-01-24 博泰车联网科技(上海)股份有限公司 一种多媒体资源管理方法、装置及计算机存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6748365B1 (en) * 1999-09-15 2004-06-08 Chris Quinlan Method and system for redeeming product marketing rebates
EP1974490A4 (en) * 2005-12-19 2012-01-18 Commvault Systems Inc SYSTEM AND METHOD FOR APPLYING DIGITAL CONTENT A FLEXIBLE LICENSE ASSIGNMENT PROCEDURE
US20090037337A1 (en) * 2007-07-31 2009-02-05 Ahmad Baitalmal Software Licensing and Enforcement System
EP2510484A4 (en) * 2009-12-13 2015-01-07 Intuit Inc SYSTEMS AND METHODS FOR PURCHASING PRODUCTS FROM A RETAIL POINT USING A MOBILE DEVICE
WO2011112990A1 (en) * 2010-03-11 2011-09-15 Wal-Mart Stores, Inc. System and method for transaction payments using a mobile device

Also Published As

Publication number Publication date
CN105339975A (zh) 2016-02-17
EP3008651A2 (en) 2016-04-20
RU2015152814A (ru) 2017-06-19
BR112015030444A2 (pt) 2017-07-25
AU2014278552A1 (en) 2015-12-17
WO2014200782A3 (en) 2015-12-10
CA2914053A1 (en) 2014-12-18
WO2014200782A2 (en) 2014-12-18
US20140365384A1 (en) 2014-12-11
JP2016521887A (ja) 2016-07-25
EP3008651A4 (en) 2017-01-11
MX2015017057A (es) 2016-04-28

Similar Documents

Publication Publication Date Title
US9727903B2 (en) Online marketplace for pre-installed software and online services
KR20160019436A (ko) 제3자 제품에 대한 교차 스토어 라이센싱 기법
US12034855B2 (en) Systems and methods for tying token validity to a task executed in a computing system
US20150262151A1 (en) Access Control System for Online Content
US20150242850A1 (en) Methods and systems for permissions management
US20220058274A1 (en) Compartments
US11947936B2 (en) User interface common components and scalable integrable reusable isolated user interface
US10516667B1 (en) Hidden compartments
US11042918B2 (en) Customer service tool
US20220351156A1 (en) Systems and methods for authentication using existing credential
US20240248732A1 (en) User interface common components and scalable integrable reusable isolated user interface
US12093353B2 (en) Systems and methods for user authentication
US20240013199A1 (en) Methods and systems for pre-validating token-based access control
US12088736B2 (en) Methods and systems for authorizing transactions based on a derived public key
WO2023184012A1 (en) Method and system for workflow attestation
US12061684B2 (en) Systems and methods for controlling access to a computing device
US20240020683A1 (en) Methods and systems for multiple gating verifications based on a blockchain wallet
US20240013202A1 (en) Methods and systems for usage-conditioned access control based on a blockchain wallet

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid