KR20190050993A - 이관 시스템 및 방법 업데이트 - Google Patents

이관 시스템 및 방법 업데이트 Download PDF

Info

Publication number
KR20190050993A
KR20190050993A KR1020197008308A KR20197008308A KR20190050993A KR 20190050993 A KR20190050993 A KR 20190050993A KR 1020197008308 A KR1020197008308 A KR 1020197008308A KR 20197008308 A KR20197008308 A KR 20197008308A KR 20190050993 A KR20190050993 A KR 20190050993A
Authority
KR
South Korea
Prior art keywords
application
personalization data
updated
edition
version
Prior art date
Application number
KR1020197008308A
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 KR20190050993A publication Critical patent/KR20190050993A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

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

Abstract

장치 업데이트 시스템은 업데이트될 애플리케이션으로부터 데이터를, 특히 버전 업데이트 이후 지속될 개인 설정 데이터를 저장할 수 있다. 데이터가 저장된 이후에 애플리케이션은 삭제될 수 있고, 이관 애플리케이션이 설치된다. 이관 애플리케이션은 애플리케이션 이전 에디션과 설치된 에디션 사이의 차이를 특징하는 매트릭스 등을 사용할 수 있다. 이관 애플리케이션은 이전 에디션을 결정하고 매트릭스에 따라 개인 설정 데이터를 업데이트할 수 있다. 데이터가 저장된 이후에 이관 애플리케이션은 삭제될 수 있고, 새 애플리케이션이 설치된다. 새 애플리케이션은 업데이트된 데이터를 복구할 수 있으며 이전 에디션이었던 것에 대한 우려 없이 운영할 준비가 될 수 있다. 버전 매트릭스를 수행할 새 애플리케이션, 및 현재 에디션과 모든 가능한 이전 에디션 사이에 가능한 모든 변경 사항을 요구하지 않음으로써 메모리 공간은 유지될 수 있다.

Description

이관 시스템 및 방법 업데이트
관련 출원에 대한 상호 참조
본 출원은 2016년 9월 23일자로 출원된 미국 비가특허 출원 제15/274,856호에 대한 우선권을 주장하며, 전문은 본원에 참조로 인용된다.
본원에 제공된 배경기술 설명은 일반적으로 본 개시 내용의 맥락을 제시하는 목적을 위한 것이다. 본 배경기술 부분에서 설명된 범위뿐만 아니라 출원 시에 선행 기술로서의 자격을 갖지 않을 수 있는 설명의 양태까지는, 현재 지명된 발명자의 연구는 본 출원에 대한 선행 기술로서 명시적으로 또는 묵시적으로 인정되지 않는다.
운영 체제에서 워드 프로세서와 같은 프로그램에 이르기까지, 전자 장치의 여러 세대를 위해 애플리케이션을 업그레이드해왔다. 프로세스는 일반적으로 애플리케이션을 제거하고 교체한 다음 사용자 사전, 북마크 등과 같은 임의의 개인 설정 데이터를 재생성하는 단계를 포함한다. 다른 애플리케이션에서, 새 버전 애플리케이션은 이전 버전 애플리케이션에서 사용하는 개인 설정 데이터를 읽고 통합할 수 있다. 그러나 여러 세대의 업데이트 내용에 대해 업데이트하는 경우, 새로 설치된 버전은 여러 세대의 업데이트 내용에 대해 개인 설정 데이터의 차이를 성공적으로 해결할 수 없다. 일부 경우에서 여러 버전에 대해 업데이트할 때, 최신 버전으로 업데이트를 완료하기 위해, 사용자는 버전에서 버전으로 순차적으로 업데이트해야 할 수 있다.
미지수의 애플리케이션 에디션에 대해 업데이트하는 프로세스는, 현재 에디션과 새 에디션 사이의 간극을 평가하는 이관 애플리케이션을 사용할 수 있으며, 기존 데이터의 관점에서 새 에디션에 적합한 개인 설정 데이터를 수정한다. 일 구현예에서의 이관 애플리케이션은, 이전 필드 및 객체와 새로운 필드 및 객체 사이의 차이, 그리고 각각의 가능한 에디션 사이의 차이뿐만 아니라, 이전 에디션과 새 에디션의 특정 세트 사이에 새로운 필드에 대한 초기 값을 나타내는 매트릭스를 포함할 수 있다. 현재(이전) 에디션의 개인 설정 데이터를 저장한 후에, 이전 에디션은 삭제되고 이관 애플리케이션을 위한 공간을 생성할 수 있다. 새 에디션의 요구 사항을 충족하기 위해 개인 설정 데이터를 업데이트한 후에, 이관 애플리케이션은 삭제되고 새 버전이 설치될 수 있다. 설치 후, 새 에디션은 업데이트된 개인 설정 데이터를 복구하고 사용자에게 거의 또는 전혀 영향을 주지 않고 작업을 시작할 수 있다.
도면들은 단지 예시의 목적을 위하여 바람직한 구현예를 도시하고 있다. 당업자는 본 명세서에 도시된 구조 및 방법의 대안적인 구현예가 본원에서 설명된 원리를 벗어나지 않고 사용될 수 있다는 점을 하기 설명으로부터 쉽게 인식할 수 있다.
도 1은 본 개시에 따라 애플리케이션 업데이트 기술을 지원하는 시스템의 블록 다이어그램이다.
도 2는 업데이트 동안에 시스템의 상태를 도시하는 블록 다이어그램이다.
도 3은 업데이트가 계속되는 동안에 시스템의 상태를 도시하는 블록 다이어그램이다.
도 4는 업데이트가 계속되는 동안에 시스템의 상태를 도시하는 블록 다이어그램이다.
도 5는 업데이트가 계속되는 동안에 시스템의 상태를 도시하는 블록 다이어그램이다.
도 6은 업데이트가 계속되는 동안에 시스템의 상태를 도시하는 블록 다이어그램이다.
도 7은 업데이트가 계속되는 동안에 시스템의 상태를 도시하는 블록 다이어그램이다.
도 8은 업데이트가 계속되는 동안에 시스템의 상태를 도시하는 블록 다이어그램이다.
도 9는 업데이트 종결 시 시스템의 상태를 도시하는 블록 다이어그램이다.
도 10은 본 개시에 따라 업데이트 기술의 사용에 적합한 대체 시스템의 블록 다이어그램이다.
도 11은 보안 요소 내의 인스턴스를 도시하는 블록 다이어그램이다.
도 12는 본 개시에 따른 예시적인 애플리케이션 서비스를 도시하는 블록 다이어그램이다.
도 13은 개별 이관 관리자를 도시하는 대안적인 구현예이다.
도 14는 본 개시에 따라 애플리케이션 업데이트를 수행하는 방법의 흐름도이다.
컴퓨터 애플리케이션은 일상적으로 이전 버전에서 새 버전으로 업데이트된다. 대부분의 경우에 업데이트는 한 버전에서 다음 버전으로 연속적으로 적용되며, 종종 컴퓨터 배경 화면에서 실행되는 자동 업데이트 루틴에 의해 수행된다. 새로 설치한 애플리케이션의 요구 사항에 따라 업데이트된 애플리케이션이 데이터를 복구하고 업데이트할 수 있도록, 사용자 전용 데이터나 사전, 기본 설정, 시스템 특정 설정 등과 같은 애플리케이션의 인스턴스가 저장된다. 그러나 현재의 많은 장치에서, 업데이트 여부는 업데이트가 이용 가능할 때에 업데이트를 항상 설치하는 것에 대해 부지런할 수 없는 사용자의 수중에 자주 있다.
예를 들어, 휴대폰, 태블릿, 랩톱 또는 기타 휴대용 장치에서, 사용자는 예를 들어 전원과 필요한 시간을 갖춘 적절한 환경일 때에 업데이트를 수행하는 것에 대해 기억하지 않거나 관심을 갖지 않을 수 있다. 따라서, 애플리케이션의 버전은 5개, 6개, 또는 그 이상의 사소한 업데이트와 하나 이상의 주요한 업데이트를 놓쳤을 수 있다. 선행 기술 모델에서, 새로 설치된 애플리케이션은 애플리케이션의 초기 에디션에서 현재 에디션으로 데이터 및 데이터 형식 변경 사항을 재구성할 수 있어야 한다. 비록 이 개인 설정 데이터에 대한 업데이트를 처리하는 데 사용되는 코드가 한 번만 사용되고 오직 응용 프로그램이 의도된 용도로 작동을 시작하기 전이라도, 이 내용은 그러하다. 칩 카드 또는 휴대용 전자 장치의 보안 요소와 같이 제한된 메모리 환경에서, 애플리케이션 메모리가 프리미엄에 있는 경우, 새 애플리케이션 에디션은 이전 에디션의 모든 가능한 조합에 대한 "일회용" 업데이트 코드를 포함하지 않을 수 있다.
도 1 내지 도 9는 개시된 업데이트 이관 시스템 및 방법을 구현하는 장치(100)의 다양한 상태를 도시한다. 장치(100)는 스마트폰, 태블릿, 랩톱, 휴대용 결제 장치 또는 데스크톱 컴퓨터를 포함하지만 이에 한정되지 않는 수많은 컴퓨팅 플랫폼 중 임의의 것일 수 있다. 장치(100)는 산업 공정 제어기, 접촉식 또는 비접촉식 액세스 제어 카드뿐만 아니라, 접촉식 또는 비접촉식 결제 카드(칩 카드)와 같으나 이에 한정되지 않는 수많은 특수 사용 장치 중 임의일 수도 있다. 본 개시는 특히, 애플리케이션 저장을 위해 제한된 양의 메모리를 갖는 장치(100)에 매우 적합하다. 예시 목적을 위해 제한 없이, 도 1 내지 도 9는 스마트폰, 웨어러블 장치 또는 유사한 장치에서 예시적인 구현예를 참조한다.
도 1의 장치(100)는, 사용자 인터페이스를 지원하는 터치 스크린일 수 있는 디스플레이(140), 셀룰러 음성 및 데이터, 블루투스, Wi-Fi, GPS, 및 근거리 통신(NFC)을 포함하는 다양한 무선 플랫폼(142)을 포함하는, 오리지널 또는 컴패니온 장치로서의 스마트폰을 작동하는 것과 관련되어 잘 알려진 구성요소를 갖는 운영 플랫폼(102)을 일반적으로 도시한다. 운영 플랫폼(102)은 하나 이상의 카메라(144), 온도 및 동작 센서(146)뿐만 아니라 애플리케이션을 실행하기 위한 프로세서(150) 및 메모리(148)를 포함하는 다른 구성요소를 또한 포함할 수 있다. 이러한 요소는 간결성을 위해 나머지 그림에서 반복되지 않는다.
운영 플랫폼(102)은 위탁 관리자(104)를 포함할 수도 있다. 일 구현예에서, 위탁 관리자(104)는 근거리 통신 에코시스템에 사용되는 것과 같은 위탁 서비스 관리자일 수 있다. 다른 구현예에서, 위탁 관리자(104)는 GlobalPlatform 카드 규격에 정의된 것과 동일하거나 유사한 제어 권한 기반 체계일 수 있다. 위탁 관리자(104)는 후술되는 보안 요소(106)와의 상호 작용을 책임질 수 있다. 보안 요소(106)를 사용하지 않는 다른 구현예에서, 위탁 관리자(104)는 단순히 장치(100)의 운영 시스템에 의해 사용되는 업데이트 프로세스일 수 있다. 위탁 관리자(104)는 다른 무엇보다 새 버전의 운영 시스템, 및 근거리 통신 인터페이스 관리를 포함하는 다른 핵심 기능의 장치(102)를 업데이트하는 것을 담당할 수 있다.
장치(100)는 또한 보안 요소(106)를 포함할 수 있다. 보안 요소(106)는 프로세서(152) 및 하나 이상의 애플리케이션(108, 112, 116)을 포함할 수 있다. 각각의 애플리케이션은 각각의 개인 설정 데이터(110, 114, 118)를 포함할 수 있다. 이러한 각 애플리케이션의 개인 설정 데이터는 사용자 ID 정보, 발급자 ID, 최근 결제 내역, PIN 값, 주요 자료 등을 포함할 수 있다. 각 애플리케이션(108, 112, 116)은 결제 영역뿐만 아니라 액세스 제어, ID 확인, 이동 등에서의 상이한 발급자와 연관될 수 있다. 후술되는 예시에서 각 애플리케이션은 업데이트될 것이지만, 실제로 애플리케이션은 개별적으로 동일한 프로세스를 따라 업데이트될 수 있다.
업데이트를 수행하는 것으로 결정한 이후에, 위탁 관리자(104)는 애플리케이션(108, 112, 116)으로 신호를 전달하여 업데이트 프로세스를 시작할 수 있다. 도 2를 참조하면, 각각의 애플리케이션(108, 112, 116)은 보안 요소(106) 범위 내에 각각의 개인 설정 데이터(110, 114, 118)를 내보내거나 단순히 저장해서, 개인 정보를 보안 요소(106) 외부로 복사함에 의한 위험에 노출되지 않는다. 도 3에 도시된 바와 같이, 위탁 관리자(104)는 각각의 애플리케이션(108, 112, 116)을 삭제할 수 있다.
도 4에 나타낸 바와 같이, 이관 매트릭스(124)를 포함하는 이관 애플리케이션(122)은 네트워크(123)를 통해 애플리케이션 서비스(120)로부터 다운로드되고 보안 요소(106) 내의 위탁 관리자(104)에 의해 설치될 수 있다. 일 구현예에서, 이관 매트릭스(124)는 현재 버전으로 업데이트되는 애플리케이션의 모든 이전 버전의 매핑을 포함할 수 있다. 일부 구현예에서, 이관 애플리케이션(122) 및 관련 이관 매트릭스(124)는 사용 가능할 때에 각각의 애플리케이션 에디션에 대해 맞춤화될 수 있을 것으로 예상된다. 또 다른 구현예에서, 각각의 애플리케이션은 별도의 이관 애플리케이션을 가질 수 있다. 그 경우, 여기에 설명된 단계는 각각의 애플리케이션에 대해 반복된다. 일 구현예에서, 이관 매니저(122)의 유일한 기능은 이전 버전으로부터 새로운 버전으로 개인 설정 데이터(110, 114, 118)를 업데이트하는 것이다. 다른 구현예에서, 이관 매니저(122)는
표 1은 애플리케이션(108)을 이전에 설치한 에디션과 설치될 새 에디션 사이에서 수행될 변경 또는 전환을 보여주는 애플리케이션(108)용 이관 매트릭스(124)의 예시적인 부분을 도시한다. 가장 최근 에디션인 버전 3과 최신 에디션인 버전 4 간의 변경에 대한 목록을 나타내지 않음을 주목하기 바란다. 일 구현예에서, 이는 단순히 에디션 3과 및 에디션 4 사이 버전 변화가 없기 때문이다. 그러나, 다른 하나의 구현예에서의 이관 애플리케이션은 에디션 4의 소프트웨어가 가장 최근의 에디션 즉, 버전 3으로부터의 변경을 인식하고 업데이트할 수 있음을 이해할 수 있다. 따라서, 이관 애플리케이션(122)은 그러한 변경을 수행할 필요가 없으며 다른 애플리케이션으로 이동하거나, 위탁 서비스 매니저(104)가 프로세스를 계속할 수 있도록 필요한 변경이 완료됨을 단순히 보고할 필요가 없을 수 있다.
Figure pct00001
도 5를 참조하면, 이관 애플리케이션(122)은 각각 저장된 데이터 파일(110, 114, 118)을 분석하여 그 버전을 결정할 수 있다. 분석은 데이터 자체의 분석을 통해 즉, 데이터의 구조 및 형식을 관찰함으로써 수행될 수 있거나, 또 다른 구현예에서는 단순히 데이터(110, 114, 118)에 내장된 버전 식별자를 가질 수 있다. 이관 애플리케이션(122)은 이관 매트릭스에 따라 각각의 데이터 파일에 필요한 업데이트를 수행할 수 있다.
새로운 데이터 레코드가 추가되는 경우, 예를 들어 에디션 0에서 에디션 4로의 이관에 대해 표 1에 나타난 바와 같이, 이관 애플리케이션 (122)은 새로 생성된 레코드를 채우기 위한 기본 값을 가질 수 있다. 새로 생성된 데이터 버전(126, 128, 130)은 이관 애플리케이션(112)에 의해 생성되고 저장될 수 있다.
다양한 구현예에서, 데이터 이관은 더 작은 단계로 진행할 수 있다. 예를 들어, 일 구현예에서 이관 애플리케이션(122)에 의해 데이터를 복구하고 업데이트하는 것은 하나의 단계일 수 있다. 새 버전 데이터가 로컬로 생성된 후, 업데이트된 데이터를 저장하는 단계는 별도 단계로 수행될 수 있다. 또 다른 구현예에서, 이관 매트릭스(124)는 단순히 특정 필드에 대한 데이터를 제공할 수 없다. 이 경우, 업데이트 프로세스 완료 후에 적어도 부분적으로 애플리케이션을 권한 설정하는 것이 요구될 수 있다.
이 예시의 도 6에 나타난 바와 같이, 이관 애플리케이션(122) 및 이전 버전 데이터(110, 114, 118)는 삭제될 수 있다. 이 단계는 이관 애플리케이션(122) 자체에 의해 프로세싱의 마지막 단계로 실행할 수 있거나 위탁 관리자(104)에 의해 수행될 수도 있다. 일 구현예에서, 필요한 경우 이전 버전으로의 롤백이 쉽게 달성될 수 있도록 새 애플리케이션 에디션이 설치된 후까지, 이전 에디션의 데이터(110, 114, 118)는 제 위치에 저장될 수 있다. 개인 설정 데이터는 대부분의 경우 비교적 적어서, 두 버전의 저장이 새 버전의 애플리케이션을 설치하는 것을 막기 위해 메모리를 충분히 줄일 수는 없다.
새 애플리케이션 에디션(132, 134, 136)은 도 7에 나타낸 바와 같이 위탁 관리자(104)에 의해 다운로드 및 설치될 수 있다. 최근 설치된 각각의 에디션이, 이관 애플리케이션의 결과로서 이미 구조화되고 사용하도록 채워질 수 있는 관련 데이터를 복구하거나 가져옴을 도8이 도시할 수 있다. 마지막으로 도 9에 도시된 바와 같이, 업데이트된 개인 설정 데이터의 복사본이 삭제될 수 있고 업데이트된 애플리케이션(132, 134, 136)은 작동 상태에 있다.
도 10은 업데이트되는 애플리케이션이 장치(100)에 의해 사용되는 서비스의 일부일 수 있음을 보여주는 대안적인 구현예를 도시한다. 개인 설정 데이터(156)를 갖는 애플리케이션(154)은 디스플레이(140)와 연관될 수 있고, 애플리케이션(162) 및 그의 데이터(164)는 센서(146)와 함께 작동할 수 있다. 애플리케이션(158) 및 그 데이터(160)는 애플리케이션 별로 업데이트되는 많은 독립형 애플리케이션 중 하나일 수 있다. 비록 기술적으로 보안 요소(106) 외부에서 사용할 수 있는 공간이 훨씬 더 많지만, 모든 종류의 장치(100)는 새 에디션과 이전 에디션의 애플리케이션이 업데이트 동안에 나란히 상주할 수 없는 메모리 제한으로 결국 실행될 수 있다. 또 다른 경우, 애플리케이션 설계자는 각 에디션에서 멀티 에디션 업데이트 지원 백을 보유하기를 원하지 않을 수 있다. 사용자 데이터, 구성 데이터, 또는 둘 모두 그리고 귀중한 메모리 공간에 거의 또는 전혀 영향을 주지 않으면서 업데이트 프로세스를 수행하도록, 본원에 설명된 메모리 저장 기술은 업데이트 관리자(149)에 의해 사용될 수 있다. 업데이트 관리자(149)는 위탁 관리자(104)와 동일하거나 유사할 수 있다.
도 11은 보안 요소(106)의 다른 구현예를 도시하는 블록 다이어그램으로 이 경우, 단일 애플리케이션(170)이 상이한 사용을 갖는 예를 들어, 커피숍 결제 애플리케이션(172) 및 백화점 결제 애플리케이션(174)을 갖는, 다중 인스턴스를 지원할 수 있다는 것을 보여준다. 이 경우 애플리케이션의 단일 복사본만이 업데이트되지만, 개인 설정 데이터의 다중 복사본은 본원에 기술된 프로세스를 사용하여 이관 애플리케이션(122)에 의해 업데이트될 수 있다. 이러한 구현예에서의 인스턴스 데이터(172, 174)는, 업데이트된 애플리케이션(170)이 설치되기 전에 이관 애플리케이션(122)에 의해 저장 및 업데이트될 수 있다.
도 12는 애플리케이션 서비스(120)의 일 구현예의 블록 다이어그램으로, 애플리케이션(180)의 특정 에디션에 대해 해당 이관 관리자 애플리케이션(182)을 이용할 수 있음을 도시한다. 이 예시에서, 애플리케이션 에디션 4(180) 및 애플리케이션 에디션 5(184) 둘 모두는 해당 이관 애플리케이션(182 및 186)을 가질 수 있다. 이러한 이관 애플리케이션(182, 186)은 이전 버전 중 어느 하나에 대한 업그레이드를 지원하는 개별적인 이관 매트릭스를 가질 수 있다. 에디션 3의 또 다른 애플리케이션(188)은 이전 버전 각각에 대한 이관 매트릭스를 갖는 해당 이관 관리자를 가질 수도 있다.
도 13을 참조하면, 업데이트를 수행하는 대체 구성이 논의된다. 이 구현예에서, 분리된 이관 매니저(122, 192, 196)는 각각의 개별적인 개인 설정 데이터(110, 114, 118)에 대한 업데이트를 개별적으로 취급하도록 설치된다. 일 구현예에서 분리된 이관 매니저(122, 192, 196) 각각은 병렬로 설치되고 실행될 수 있는 반면에, 또 다른 구현예에서 이관 매니저(122, 192, 196)는 순차적으로 실행될 수 있다. 또 다른 구현예에서, 각각의 이관 매니저(122, 192, 196)는 한 번에 하나씩 설치될 수 있고, 그 다음 이하에서 더욱 상세히 설명될 바와 같이 삭제된다. 다른 이관 관리자의 조합을 가지고 개인 설정 데이터 업데이트를 수행하는 단계도 가능하다.
도 14는 업데이트 이관을 수행하는 방법(200)의 흐름도이다. 블록(202)에서, 하나 이상의 애플리케이션을 업데이트할 필요가 있음을 결정하는 것이 위탁 관리자(104) 또는 다른 업데이트 관리자(149)에 의해 이루어질 수 있다. 업데이트가 계속될 수 있도록 개인 설정 데이터(110)를 저장하는 애플리케이션(108)으로 신호가 전달될 수 있다.
블록(206)에서, 데이터가 저장된 후에 현재 설치된 애플리케이션이 삭제되어 이관 애플리케이션(122)을 위한 공간을 생성할 수 있다. 이관 애플리케이션(122)은 블록(208)에서 설치될 수 있고, 블록(210)에서 이전 에디션의 애플리케이션(108)은 결정될 수 있다. 일 구현예에서, 이관 애플리케이션(122)은 저장된 데이터(110)를 분석하여 소스의 에디션을 결정할 수 있다. 다른 구현예에서, 애플리케이션(108)의 에디션은 저장된 데이터(110)에 명시적으로 기록될 수 있다. 또 다른 구현예에서, 위탁 관리자(104)는 업데이트 프로세스를 개시하는 일부로서 에디션 정보를 읽을 수 있다.
블록(212)에서 이전 에디션 정보가 결정된 후에, 이관 애플리케이션(122)의 이관 매트릭스(124)를 사용하여 업데이트 실행 과정이 결정될 수 있다. 블록(214)에서의 이관 애플리케이션(122)은, 애플리케이션의 설치될 에디션의 필요에 따라 업데이트된 개인 설정 데이터(126)를 생성할 수 있다. 여기에는 데이터를 재포맷하거나, 레코드를 삭제하거나 추가하고, 기본값으로 새 레코드를 채우는 것이 포함될 수 있다.
이관 애플리케이션(122)과 일 구현예에서, 이전의 개인 설정 데이터(110)는 블록(216)에서 삭제될 수 있다. 데이터 삭제는 다양하게 적절한 방법으로 발생할 수 있다. 일 구현예에서, 데이터는 이를 삭제한 위에 쓰여진다. 다른 구현예에서, 프로세서가 삭제될 데이터가 위치하는 곳을 더 이상 알지 못하도록 메모리 내 데이터에 대한 포인터는 제거되고 결국 그 위에 덮어쓴다. 전술한 바와 같이, 롤백이 필요할 경우에 이전 개인 설정 데이터(110)는 저장될 수 있다.
블록(218)에서, 새 애플리케이션 에디션(132)은 이관 애플리케이션(122)을 삭제함으로써 비어진 메모리 공간을 사용하여 설치될 수 있다. 업데이트된 데이터(126)가 새 애플리케이션 에디션(132) 내로 복구되고 상기 애플리케이션이 복구된 데이터(126)를 사용하여 실행될 수 있을 때, 이 프로세스는 블록(220)에서 종료될 수 있다.
제한된 메모리로 작동하거나 단순히 메모리 사용에 있어서 절약하기를 원하는 전자 장치(100) 어느 것에 상기 설명된 기술이 사용될 수 있다. 필요한 애플리케이션 데이터를 저장시킨 후, 애플리케이션(132, 154)의 각 에디션에 전체 업데이트 툴을 설치하는 대신에, 위탁 관리자(104) 또는 업데이트 관리자(149)는 기존 버전을 삭제하고 그 메모리 공간을 사용하여 각각 가능한 업데이트 조합에 대해 맞추어진 사용자 정의 이관 애플리케이션을 설치하고 실행할 수 있다. 데이터 이관이 완료된 후, 업데이트 관리자는 이관 애플리케이션을 삭제하여 타겟 버전 애플리케이션의 공간을 비울 수 있다. 애플리케이션이 이관 애플리케이션보다 클 것으로 예상되므로, 필요한 총 공간은 저장된 데이터의 크기 및 새 애플리케이션의 임의 증가 정도만 원래 설치보다 더 클 수 있다. 새 애플리케이션을 설치하는 동안에 이전 데이터와 새 데이터가 모두 저장될 수 있기 때문에, 새 애플리케이션이 설치되지 않거나 실행되지 않으면 이전 에디션으로 롤백할 수 있다. 개인 설정 데이터가 보안 요소(106) 외부로 전송되지 않기 때문에, 정보의 개인정보 보호 및 보안은 업데이트 프로세스 동안에 보호되어, 보안 환경에서 업데이트를 수행할 필요성을 줄이거나 제거한다.
이관 관리자는 사용자와 애플리케이션 설계자에게 혜택을 준다. 애플리케이션 설계자는 애플리케이션 개발에 초점을 맞출 수 있으며 실제 설치 및 개인화 데이터의 오버헤드를 별도의 애플리케이션으로 분리하여, 가변 사용 및 명명 규칙에 대한 우려를 완화할 수 있다. 애플리케이션 개발자는 전체 사용 가능한 메모리 공간을 사용할 수 있으며, 정상 작동 중에 실행되지 않으며 다른 실패 지점을 도입하는 업그레이드 코드용 절약 공간에 기반한 설계를 결정할 필요가 없음을 또한 알 수 있다. 추가 메모리 비용이 단순히 업데이트 프로세스를 수용하기 위해 제품에 추가되지 않는 경우, 사용자는 더 낮은 장치 비용 혜택을 얻을 수 있다. 업그레이드를 완수하도록 메모리를 비우기 위해서 포트(phots)를 삭제할 필요 없이 업데이트를 수행할 수 있음으로, 사용자는 또한 혜택을 얻을 수 있다.
도면은 단지 예시의 목적을 위하여 바람직한 구현예를 도시한다. 당업자는 본 명세서에 도시된 구조 및 방법의 대안적인 구현예가 본원에서 설명된 원리를 벗어나지 않고 사용될 수 있다는 점을 하기 설명으로부터 쉽게 인식할 것이다.
본 개시를 읽을 때, 당업자는 본원에 개시된 원리를 통해 본원에 기술된 시스템 및 방법에 대해 여전히 추가적이고 대안적인 구조 및 기능 설계를 이해할 것이다. 따라서, 특정 구현예 및 응용이 도시되고 설명되었지만, 개시된 구현예는 본원에 개시된 정확한 구성 및 구성요소로 제한되지 않음을 이해해야 한다. 당업자에게 명백하게 될 다양한 변형, 변경 및 변형은 첨부된 청구범위에 정의된 사상 및 범위를 벗어나지 않고 본원에 개시된 시스템 및 방법의 배열, 작동 및 세부사항을 통해 이루어질 수 있다.

Claims (20)

  1. 장치에 애플리케이션을 업데이트하는 방법으로서,
    상기 장치에 설치된 현재 애플리케이션 에디션으로부터 현재 버전 개인 설정 데이터 세트를 저장하는 단계;
    상기 현재 애플리케이션 에디션을 삭제하는 단계;
    이관 애플리케이션을 설치하는 단계;
    상기 장치에 설치될 업데이트된 애플리케이션의 요구 사항을 충족하기 위해, 상기 이관 애플리케이션을 통해 상기 현재 버전 개인 설정 데이터를 다음 버전 개인 설정 데이터로 프로세싱하는 단계;
    상기 이관 애플리케이션을 삭제하는 단계;
    다음 애플리케이션 에디션을 설치하는 단계; 및
    상기 다음 버전 개인 설정 데이터를 상기 업데이트된 애플리케이션에 복구하는 단계를 포함하는 방법.
  2. 제1항에 있어서, 상기 이관 애플리케이션을 통해 저장된 상기 현재 버전 개인 설정 데이터를 평가함으로써 상기 현재 애플리케이션 에디션의 버전을 결정하는 단계를 더 포함하는 방법.
  3. 제1항에 있어서, 상기 이관 애플리케이션을 설치하는 단계는 상기 이관 애플리케이션을 설치하는 위탁 관리자를 포함하는 방법.
  4. 제1항에 있어서, 상기 다음 애플리케이션 에디션을 설치하는 단계는 상기 장치의 일부인 보안 요소의 메모리에 상기 다음 애플리케이션 에디션을 설치하는 단계를 포함하는 방법.
  5. 제1항에 있어서, 상기 이관 애플리케이션을 설치하는 단계는 네트워크를 통해 상기 장치에 연결된 애플리케이션 서비스로부터 상기 이관 애플리케이션을 수신하는 단계를 포함하는 방법.
  6. 제1항에 있어서, 상기 이관 애플리케이션을 설치하는 단계는, 복수의 상기 애플리케이션 이전 버전에서 상기 다음 애플리케이션 에디션으로의 전환 매트릭스를 갖는 이관 애플리케이션을 설치하는 단계를 포함하는 방법.
  7. 제1항에 있어서,
    제2 현재 애플리케이션 에디션에 해당하는 제2 개인 설정 데이터 세트를 저장하는 단계;
    상기 이관 애플리케이션을 통해, 상기 장치에 설치될 업데이트된 제2 애플리케이션의 요구 사항을 충족하도록, 상기 제2 개인 설정 데이터 세트를 다음 버전인 제2 개인 설정 데이터 세트로 프로세싱하는 단계;
    상기 이관 애플리케이션을 삭제한 다음에 상기 업데이트된 제2 애플리케이션을 설치하는 단계; 및
    상기 업데이트된 제2 애플리케이션을 통해, 상기 다음 버전인 제2 개인 설정 데이터를 상기 업데이트된 제2 애플리케이션에 복구하는 단계를 더 포함하는 방법.
  8. 제1항에 있어서, 복수의 애플리케이션 각각에 대응하는 별도의 이관 애플리케이션을 사용하여, 상기 장치에 설치된 상기 복수의 애플리케이션의 각각의 적용에 대해 "저장" 단계에서 "복구" 단계를 반복하는 단계를 추가로 포함하는 방법.
  9. 제한된 메모리 환경에서 다수 버전에 걸쳐 애플리케이션을 업데이트하는 시스템으로서,
    운영 플랫폼 및 보안 요소를 포함하는 장치;
    상기 보안 요소와 상호 작용을 관리하는 위탁 관리자를 포함하는 상기 운영 플랫폼; 및
    업데이트되는 별도 애플리케이션을 위해 복수로 건너뛴 업데이트 내용에 대해 저장된 개인 설정 데이터를 업데이트하는 이관 애플리케이션을 실행하는 프로세서를 포함하는 상기 보안 요소를 포함하는 시스템.
  10. 제9항에 있어서, 상기 이관 애플리케이션은 상기 저장된 개인 설정 데이터를 업데이트하는 단계 이전에 상기 저장된 개인 설정 데이터의 현재 버전을 결정하는 시스템.
  11. 제9항에 있어서, 상기 위탁 관리자는 상기 이관 애플리케이션을 상기 보안 요소에 설치하는 단계 이전에 업데이트되는 상기 별도 애플리케이션을 삭제하는 시스템.
  12. 제9항에 있어서, 상기 위탁 관리자는 상기 이관 애플리케이션이 상기 저장된 개인 설정 데이터를 업데이트한 이후에 상기 이관 애플리케이션을 삭제하는 시스템.
  13. 제12항에 있어서, 상기 위탁 관리자는 상기 업데이트되고 저장된 개인 설정 데이터를 사용하는 업데이트된 애플리케이션을 설치하는 시스템.
  14. 제9항에 있어서, 상기 위탁 관리자가 다운로딩하기 위해 상기 이관 애플리케이션의 적어도 하나의 버전을 이용할 수 있는 애플리케이션 서비스를 더 포함하는 시스템.
  15. 제14항에 있어서, 상기 위탁 관리자는 상기 애플리케이션 서비스에서 상기 업데이트된 애플리케이션의 가장 최근 사용 가능한 버전을 기반으로 설치되는 상기 이관 애플리케이션의 정확한 버전을 결정하는 시스템.
  16. 제한된 메모리 장치에서 애플리케이션을 업데이트하는 방법으로서,
    상기 제한된 메모리 장치에 이관 애플리케이션을 설치하는 단계;
    삭제되었던 애플리케이션에 대한 개인 설정 데이터의 버전을 결정하는 단계;
    상기 이관 애플리케이션에서, 상기 버전 결정에 기반한 상기 개인 설정 데이터에 적용되는 변환을 선택하는 단계;
    업데이트된 개인 설정 데이터를 생성하기 위해 상기 변환을 상기 개인 설정 단계에 적용하는 단계; 및
    상기 애플리케이션의 업데이트된 에디션의 설치 이전에 상기 이관 애플리케이션을 삭제하는 단계를 포함하는 방법.
  17. 제16항에 있어서,
    개인 설정 데이터를 내보내기 위해 애플리케이션을 시그널링하는 단계; 및
    상기 이관 애플리케이션을 설치하기 전에 상기 애플리케이션을 삭제하는 단계를 더 포함하는 방법.
  18. 제17항에 있어서,
    상기 업데이트된 개인 설정 데이터를 상기 애플리케이션의 업데이트된 에디션으로 가져오는 단계를 더 포함하는 방법.
  19. 제17항에 있어서, 상기 개인 설정 데이터를 내보내기 위해 상기 애플리케이션을 시그널링하는 단계는 상기 개인 설정 데이터를 상기 제한된 메모리 장치 내의 공간으로 내보내기 위해 상기 애플리케이션을 시그널링하는 단계를 포함하는 방법.
  20. 제16항에 있어서, 상기 제한된 메모리 장치는 보안 요소인 방법.
KR1020197008308A 2016-09-23 2017-09-25 이관 시스템 및 방법 업데이트 KR20190050993A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/274,856 2016-09-23
US15/274,856 US10613849B2 (en) 2016-09-23 2016-09-23 Update migration system and method
PCT/US2017/053280 WO2018058051A1 (en) 2016-09-23 2017-09-25 Update migration system and method

Publications (1)

Publication Number Publication Date
KR20190050993A true KR20190050993A (ko) 2019-05-14

Family

ID=61685410

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197008308A KR20190050993A (ko) 2016-09-23 2017-09-25 이관 시스템 및 방법 업데이트

Country Status (7)

Country Link
US (1) US10613849B2 (ko)
EP (1) EP3516511B1 (ko)
KR (1) KR20190050993A (ko)
CN (1) CN109863474B (ko)
AU (1) AU2017330452A1 (ko)
CA (1) CA3037007A1 (ko)
WO (1) WO2018058051A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102356010B1 (ko) 2021-08-13 2022-02-08 주식회사 쓰리데이즈 장치 간에 데이터를 이관하는 방법 및 그 시스템

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130311382A1 (en) * 2012-05-21 2013-11-21 Klaus S. Fosmark Obtaining information for a payment transaction
EP2843605A1 (en) * 2013-08-30 2015-03-04 Gemalto SA Method for authenticating transactions
CN108089879B (zh) * 2016-11-21 2021-11-26 阿里巴巴(中国)有限公司 增量更新方法、设备及可编程设备
CN109302289B (zh) * 2017-07-24 2021-07-30 中国移动通信有限公司研究院 一种se空间管理方法及装置
US10979445B2 (en) 2018-07-09 2021-04-13 At&T Intellectual Property I, L.P. Security management of devices using blockchain technology
CN110532000B (zh) * 2019-09-06 2023-01-10 程延辉 一种用于运营发布的kbroker分布式操作系统和运营发布系统
CN114174990A (zh) * 2020-07-09 2022-03-11 深圳市汇顶科技股份有限公司 一种数据管理方法、装置、电子元件以及终端设备
US11966773B2 (en) 2021-02-09 2024-04-23 Red Hat, Inc. Automated pipeline for generating rules for a migration engine
US12026522B2 (en) * 2021-04-06 2024-07-02 International Business Machines Corporation Automatic application dependency management

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9623298D0 (en) * 1996-11-08 1997-01-08 Int Computers Ltd Updating mechanism for software
JP3674351B2 (ja) * 1999-01-08 2005-07-20 富士通株式会社 マスタサーバ
US6795835B2 (en) * 2000-05-19 2004-09-21 Centerbeam, Inc. Migration of computer personalization information
EP1267263A3 (en) * 2001-06-11 2006-06-28 Océ-Technologies B.V. Hot migration through incremental roll-over using migration plug-ins for conversion during upgrade
US7155462B1 (en) * 2002-02-01 2006-12-26 Microsoft Corporation Method and apparatus enabling migration of clients to a specific version of a server-hosted application, where multiple software versions of the server-hosted application are installed on a network
US7263698B2 (en) * 2002-08-29 2007-08-28 Sap Aktiengesellschaft Phased upgrade of a computing environment
JP2006119901A (ja) * 2004-10-21 2006-05-11 Toshiba Corp 携帯可能電子装置および携帯可能電子装置のアプリケーション更新方法
US8131682B2 (en) * 2006-05-11 2012-03-06 Hitachi, Ltd. System and method for replacing contents addressable storage
JP4864557B2 (ja) * 2006-06-15 2012-02-01 富士通株式会社 ソフトウェアの更新処理プログラム及び更新処理装置
US20130139230A1 (en) 2006-09-24 2013-05-30 Rfcyber Corporation Trusted Service Management Process
CN101563672B (zh) * 2006-12-18 2013-04-17 株式会社爱可信 应用程序更新管理终端和系统
US8365165B2 (en) * 2006-12-30 2013-01-29 Sap Ag Dynamic addition of products and removal of software products on a distribution server
US8064605B2 (en) * 2007-09-27 2011-11-22 Intel Corporation Methods and apparatus for providing upgradeable key bindings for trusted platform modules
US8606765B2 (en) * 2007-11-30 2013-12-10 Red Hat, Inc. Systems and methods for updating software appliances
DE102008033976A1 (de) * 2008-07-21 2010-01-28 Giesecke & Devrient Gmbh Laden und Aktualisieren einer personalisierungsbedürftigen Applikation
US8850423B2 (en) * 2009-10-29 2014-09-30 International Business Machines Corporation Assisting server migration
US20120324436A1 (en) * 2009-12-15 2012-12-20 Aleksandar Milenovic Method of updating versioned software using a shared cache
CN102135963B (zh) * 2010-01-21 2013-04-24 深圳市智骏数据科技有限公司 数据迁移的方法和系统
US9417865B2 (en) * 2010-05-28 2016-08-16 Red Hat, Inc. Determining when to update a package manager software
US9378007B2 (en) * 2010-12-01 2016-06-28 Apple Inc. Pre-heated software installation
JP5424134B2 (ja) * 2011-10-14 2014-02-26 コニカミノルタ株式会社 情報処理装置、プリンタドライバ及び印刷設定方法並びにデータ構造体
US8898641B2 (en) * 2012-01-31 2014-11-25 International Business Machines Corporation Managing transactions within a middleware container
US20130346960A1 (en) * 2012-06-25 2013-12-26 Infosys Limited Method and system for updating an application
CN104395909B (zh) * 2012-09-18 2017-08-25 谷歌公司 用于多个服务供应商可信服务管理器和安全元件的接口连接的系统、方法和计算机程序产品
CN103729204B (zh) * 2012-10-16 2017-11-24 阿里巴巴集团控股有限公司 一种网络平台中应用更新的数据在线迁移方法和装置
GB2508599A (en) * 2012-12-04 2014-06-11 Ibm Software version management when downgrading software
US20140223152A1 (en) * 2013-02-01 2014-08-07 International Business Machines Corporation Configuring operating system administration capabilities using an embedded workflow engine
US9542172B2 (en) * 2013-02-05 2017-01-10 Apple Inc. Automatic updating of applications
US9483249B2 (en) * 2014-01-06 2016-11-01 Apple Inc. On-board applet migration
SG10201710449TA (en) 2014-10-10 2018-01-30 Visa Int Service Ass Methods and systems for partial personalization during mobile application update
KR20170127138A (ko) * 2016-05-11 2017-11-21 현대자동차주식회사 업데이트 소프트웨어 제공 시스템 및 그 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102356010B1 (ko) 2021-08-13 2022-02-08 주식회사 쓰리데이즈 장치 간에 데이터를 이관하는 방법 및 그 시스템
KR20230025317A (ko) 2021-08-13 2023-02-21 주식회사 쓰리데이즈 개발 데이터를 전달하는 시스템

Also Published As

Publication number Publication date
US10613849B2 (en) 2020-04-07
WO2018058051A1 (en) 2018-03-29
EP3516511A1 (en) 2019-07-31
US20180088924A1 (en) 2018-03-29
CN109863474B (zh) 2024-01-09
EP3516511B1 (en) 2022-04-06
AU2017330452A1 (en) 2019-04-04
EP3516511A4 (en) 2020-06-24
CN109863474A (zh) 2019-06-07
CA3037007A1 (en) 2018-03-29

Similar Documents

Publication Publication Date Title
KR20190050993A (ko) 이관 시스템 및 방법 업데이트
US9864736B2 (en) Information processing apparatus, control method, and recording medium
US20220244941A1 (en) System and method for downgrading applications
KR101781447B1 (ko) 시스템 리셋
CN102193817B (zh) 简化物理和虚拟部署的管理
US10657522B2 (en) Apparatus and method for processing card application in electronic device
US20130227085A1 (en) Terminal and method for using cloud services
CN107832099A (zh) 一种客户端版本兼容的方法、装置及存储介质
CN105589657A (zh) 一种实现移动存储挂载的方法及装置
CN103902562A (zh) 一种终端数据库升级方法及相关装置
CN102999349A (zh) 一种软件升级方法
CN106886539B (zh) 数据归档系统及方法
US20190370116A1 (en) Index based smart folder scan system and method for cloud-computing provider network
CN109597707A (zh) 克隆卷数据拷贝方法、装置及计算机可读存储介质
EP3343395B1 (en) Data storage method and apparatus for mobile terminal
WO2016037777A1 (en) Data migration tool with intermediate incremental copies
CN104765631B (zh) 一种移动终端的应用程序恢复方法及装置
US8726147B1 (en) Systems and methods for restoring web parts in content management systems
CN110046317A (zh) Ios应用的页面信息记录方法、终端及存储介质
CN106020616A (zh) 桌面快链图标的更新方法和装置
CN103714186A (zh) 用于管理文件资源的系统和方法
CN114675776A (zh) 资源存储方法和装置、存储介质和电子设备
US7702890B2 (en) Information processing apparatus and program
CN112445650B (zh) 用来提升增量备份的速度的方法、桥接装置以及储存系统
US11061866B2 (en) Smart folder scan system and method