상술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되어 있는 상세한 설명을 통하여 보다 명확해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대 한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다.
도 1 은 본 발명이 적용되는 작업 환경 이동 서비스 시스템의 일실시예 구성도이다.
도 1에 도시된 바와 같이, 본 발명이 적용되는 작업 환경 이동 서비스 시스템은, 사용자 단말(101, 102, 103, 104)에서 작업 중이었던 작업 환경을 저장하고 저장된 작업 환경을 이동시키기 위한 이동식 저장 장치(100)와, 무선 또는 유선 네트워크 통신을 지원하는 사용자 단말(101, 102, 103, 104)과, 애플리케이션 스트리밍 서비스(소프트웨어 서비스(Software as a Service))를 제공하는 스트리밍 서비스 서버(105)를 포함한다.
여기서, 네트워크에 연결된 사용자 단말(101, 102, 103, 104)은 스트리밍 서비스 서버(105)에 접속하여 소프트웨어 서비스(Software as a Service)를 이용할 수 있지만, 네트워크에 연결되지 않은 사용자 단말은 소프트웨어 서비스를 이용할 수 없다. 하지만, 상기 소프트웨어 서비스를 이용하는 경우는 이동식 저장 장치(100)에 저장된 데이터를 실행시킬 애플리케이션이 해당 사용자 단말에 존재하지 않는 경우에만 국한되므로, 이동식 저장 장치(100)에 저장된 데이터를 실행시킬 애플리케이션이 해당 사용자 단말에 존재하는 경우에는 네트워크에 연결되지 않은 사용자 단말에서도 작업 환경 이동 서비스를 이용할 수 있다.
이때, 사용자 단말은 PC(Personal Computer), 노트북(Laptop), PDA(Personal Digital Assistants), 스마트 폰(Smart Phone), PMP(Portable Multimedia Player) 등과 같이 CPU(Central Processing Unit)와 오퍼레이팅 시스템(Operating System)이 장착된 모든 단말을 가리킨다.
도 2 는 본 발명에 따른 작업 환경 이동 서비스를 위한 이동식 저장 장치 및 이와 연결되는 사용자 단말의 일실시예 내부 구성도이다.
도 2에 도시된 바와 같이, 본 발명에 따른 작업 환경 이동 서비스를 위한 이동식 저장 장치(이하, '이동식 저장 장치'라 함)(10)는, 단말 어댑터(11), 설정 관리부(12), 애플리케이션 관리부(13), 스트리밍 서비스 인터페이스(14), 자동 실행부(15), 컨텍스트 관리부(16) 및 작업 환경 데이터베이스(17)를 포함한다.
여기서, 단말 어댑터(11)는 사용자 단말(20)에 접속하여 사용자 단말(20)의 정보를 획득하고, 획득된 사용자 단말(20)의 정보를 기반으로 사용자 단말(20)에 적합한 연결을 수행한다.
이때, 사용자 단말(20)의 정보로는 단말의 종류, 단말의 인터페이스 정보 등이 될 수 있다.
그리고 설정 관리부(12)는 단말 어댑터(11)에 의해 연결된 사용자 단말(20)을 통해 사용자로부터 사용자 프로파일을 설정받아 이를 관리한다.
이때, 사용자 프로파일은 사용자에 대한 정보(즉, 사용자 아이디 및 패스워드 등), 사용자에 의해 설정된 정보(즉, 수집 및 저장할 애플리케이션에 대한 컨텍스트 및 데이터 정보 등), 스트리밍 서비스 이용 시 필요한 정보(애플리케이션 주소, 스트리밍 서비스를 이용할 것인지의 여부 등) 등을 포함한다.
그리고 애플리케이션 관리부(13)는 작업 환경 데이터베이스(17)에 저장된 애플리케이션 컨텍스트 및 데이터를 실행시킬 수 있는 애플리케이션에 대한 정보를 관리한다.
그리고 스트리밍 서비스 인터페이스(Streaming Service Interface)(14)는 작업 환경 데이터베이스(17)에 저장된 애플리케이션 컨텍스트 및 데이터를 실행시킬 수 있는 애플리케이션이 사용자 단말(20)에 존재하는지를 판단하여 사용자 단말(20)에 작업 환경 데이터베이스(17)에 저장된 애플리케이션 컨텍스트 및 데이터를 실행시킬 수 있는 애플리케이션이 존재하지 않으면 설정 관리부(12)에 의해 관리되는 사용자 프로파일(특히, 사용자 아이디, 사용자 패스워드 및 스트리밍 서비스 서버상에서의 애플리케이션의 주소 등)을 기반으로 스트리밍 서비스 서버에 접속하여 스트리밍 서비스 즉, 소프트웨어 서비스(Software as a Service)를 제공받는다.
그리고 자동 실행부(15)는 단말 어댑터(11)를 통해 연결된 사용자 단말(20)로부터 사용자 로그인 정보 등에 기초하여 사용자를 인증하고, 컨텍스트 관리부(16)를 자동 실행시킨다.
그리고 컨텍스트 관리부(16)는 자동 실행부(15)에 의해 자동 실행되면 작업 환경 데이터베이스(17)에 기 저장된 애플리케이션 컨텍스트 및 데이터(즉, 이전에 사용자 단말(20)에서 실행되고 있었던 작업 상태)를 복원하여 실행시키고, 사용자가 작업 완료 후 작업 환경 이동 서비스를 로그아웃하면 설정 관리부(12)에 의해 관리되는 사용자 프로파일(특히, 수집 및 저장할 애플리케이션에 대한 컨텍스트 및 데이터 정보)에 따라 사용자의 작업 상태 즉, 애플리케이션 컨텍스트 및 데이터를 수집하여 작업 환경 데이터베이스(17)에 저장한다.
또한, 이동식 저장 장치(10)와 연결되는 사용자 단말(20)은 커넥터(30)를 통해 애플리케이션(40)을 실행한다.
여기서, 사용자 단말(20)은 애플리케이션(소프트웨어)을 컨트롤(Control)하는 응용 프로그래밍 인터페이스(API : Application Programming Interface)인 컨트롤 API(21) 및 단말의 종류, 단말에 설치되어 있는 애플리케이션 정보 등의 사용자 단말(20)에 대한 정보를 이동식 저장 장치(10)로 제공하기 위한 단말 프로파일(22)을 포함한다.
그럼, 상기와 같이 동작하는 이동식 저장 장치(10)가 작업 환경 이동 서비스를 실행하는 과정에 대해 도 3 및 도 4를 참조하여 보다 상세하게 살펴보기로 한다.
도 3 은 본 발명에 따른 작업 환경을 저장하는 방법에 대한 일실시예 흐름도이다.
먼저, 사용자가 사용자 단말 상에서의 작업을 완료하고 작업 환경 이동 서비스를 로그아웃하면(301), 이동식 저장 장치(10)는 사용자 프로파일에 따라 사용자의 작업 상태 즉, 애플리케이션 컨텍스트 및 데이터를 수집한다(302).
이후, 이동식 저장 장치(10)는 수집된 애플리케이션 컨텍스트 및 데이터를 저장한다(303).
도 4 는 본 발명에 따른 작업을 실행하는 방법에 대한 일실시예 흐름도이다.
먼저, 이동식 저장 장치(10)가 사용자 단말(20)에 연결되면, 이동식 저장 장치(10)는 사용자로부터 로그인 정보를 입력받고, 작업 환경 이동 서비스를 자동 실행시킨다(401).
이후, 이동식 저장 장치(10)는 입력된 사용자 로그인 정보를 기반으로 사용자 인증을 수행한다(402).
이후, 이동식 저장 장치(10)는 사용자 단말(20)로부터 사용자 단말 정보(즉, 단말 프로파일(22))를 획득하고(403), 저장된 애플리케이션 컨텍스트 및 데이터 정보(즉, 이전에 사용자 단말(20)에서 실행되고 있었던 작업 상태 정보)를 획득한다(404).
그리고 이동식 저장 장치(10)는 획득된 애플리케이션 컨텍스트 및 데이터를 실행시킬 수 있는 애플리케이션이 사용자 단말(20)에 존재하는지를 판단한다(405).
이때, 이동식 저장 장치(10)는 획득된 사용자 단말 정보(단말 프로파일(22))를 기반으로 사용자 단말(20)에 해당 애플리케이션이 설치되어 있는지를 판단할 수 있다.
상기 판단 결과(405), 사용자 단말(20)에 작업을 실행시킬 수 있는 애플리케이션이 존재한다면, 이동식 저장 장치(10)는 획득된 애플리케이션 컨텍스트 및 데이터를 복원하여 이를 실행시킨다(406).
이때, 이동식 저장 장치(10)는 연결된 사용자 단말(20)의 종류 및 인터페이스 정보에 따라 복원 설정 값을 각각 달리하여 애플리케이션 컨텍스트 및 데이터를 복원한다.
한편, 상기 판단 결과(405), 사용자 단말(20)에 작업을 실행시킬 수 있는 애플리케이션이 존재하지 않는다면, 이동식 저장 장치(10)는 스트리밍 서비스 서버에 접속하여 필요한 애플리케이션을 서비스받고(소프트웨어 서비스(Software as a Service))(407), 획득된 애플리케이션 컨텍스트 및 데이터를 복원하여 이를 실행시킨다(406).
이때, 사용자 단말(20)은 필요한 소프트웨어를 서비스받을 수 있도록 네트워크 통신을 지원하는 것으로 한다.
상기와 같이, 이동식 저장 장치(10)는 사용자 단말(20)의 종류에 따라 그 목적에 맞게 작업 환경 이동 서비스를 실행시킬 수 있다.
도 5 는 본 발명에 따라 작업 환경을 이동시키는 모습을 나타내는 일실시예 설명도이다.
도 5에 도시된 바와 같이, 작업 중이던 단말(510)에서 다른 단말(520, 530)로 작업 환경을 이동시킬 때, 이동식 저장 장치는 작업을 실행시킬 단말이 작업 중이던 단말(510)과 같은 환경을 제공하는 단말(520)이면 사용자가 작업하고 있던 모습 그대로 작업을 실행시키고, 작업을 실행시킬 단말이 작업 중이던 단말(520)과 다른 환경을 제공하는 단말(530)이면 해당 단말의 종류에 맞게(즉, 해당 단말의 프로파일에 따라) 작업을 실행시킨다.
일예로, 데스크탑 PC(510)에서 다른 데스크탑 PC(520)으로 작업 환경을 이동시킬 경우에는 이동식 저장 장치는 데스크탑 PC(510)에서 작업 중이었던 작업 환경 그대로를 데스크탑 PC(520)에 나타내는 한편, 데스크탑 PC(510)에서 PDA(530)로 작 업 환경을 이동시킬 경우에는 이동식 저장 장치는 작업하던 애플리케이션을 아이콘(531, 532, 533)으로 나타내고 사용자가 선택한 애플리케이션(534)만 전체 화면으로 나타낼 수 있다.
이때, 이동식 저장 장치는 작업 환경을 이동시킬 단말의 스크린 해상도가 작업 중이었던 단말의 스크린 해상도와 일치하지 않을 경우, 리퍼포징(Repurposing) 기술을 이용하여 애플리케이션 컨텍스트 및 데이터를 복원한다.
예를 들면, 이동식 저장 장치는 데스크탑 PC(510)에서 작업 중이었던 환경을 PDA(530)와 같이 화면 크기가 현저히 작은 단말로 이동시키고자 할 때 PDA(530)의 프로파일에 따라 리퍼포징(Repurposing) 기술을 적용하여 다른 방법으로 애플리케이션 컨텍스트 및 데이터를 복원할 수 있다.
상기와 같은 본 발명에 따르면, 사용자의 요구에 따라 데이터 및 애플리케이션 상태 정보를 수집 및 저장하는 기능, 애플리케이션 상태 정보를 복원하는 기능, 애플리케이션 제어 라이브러리를 동적으로 링킹(Linking)하여 실행시키는 기능에 대한 실현을 가능하게 한다.
그리고 본 발명은, 사용자들이 단말에서 작업하고 있는 화면상의 애플리케이션 컨텍스트 및 데이터를 수집하는 프로그램 및 저장하는 데이터베이스 시스템이 설치된 이동식 저장 장치와 그 방법에 관한 것으로, 다양한 단말을 지원하는 리퍼포징 방법 및 시스템과 애플리케이션이 설치되지 않은 단말을 지원하는 스트리밍 서버에 대한 인터페이스 및 그 방법을 포함한다.
한편, 전술한 바와 같은 본 발명의 방법은 컴퓨터 프로그램으로 작성이 가능 하다. 그리고 상기 프로그램을 구성하는 코드 및 코드 세그먼트는 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 작성된 프로그램은 컴퓨터가 읽을 수 있는 기록매체(정보저장매체)에 저장되고, 컴퓨터에 의하여 판독되고 실행됨으로써 본 발명의 방법을 구현한다. 그리고 상기 기록매체는 컴퓨터가 판독할 수 있는 모든 형태의 기록매체를 포함한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.