KR20150075171A - 원격 사용자 인터페이스 제공 시스템 및 그의 원격 사용자 인터페이스 제공 방법 - Google Patents

원격 사용자 인터페이스 제공 시스템 및 그의 원격 사용자 인터페이스 제공 방법 Download PDF

Info

Publication number
KR20150075171A
KR20150075171A KR1020130162620A KR20130162620A KR20150075171A KR 20150075171 A KR20150075171 A KR 20150075171A KR 1020130162620 A KR1020130162620 A KR 1020130162620A KR 20130162620 A KR20130162620 A KR 20130162620A KR 20150075171 A KR20150075171 A KR 20150075171A
Authority
KR
South Korea
Prior art keywords
user
context
page
resource
resources
Prior art date
Application number
KR1020130162620A
Other languages
English (en)
Other versions
KR101557835B1 (ko
Inventor
문재원
금승우
임태범
김경원
박종빈
정종진
유영선
정지민
Original Assignee
전자부품연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 전자부품연구원 filed Critical 전자부품연구원
Priority to KR1020130162620A priority Critical patent/KR101557835B1/ko
Publication of KR20150075171A publication Critical patent/KR20150075171A/ko
Application granted granted Critical
Publication of KR101557835B1 publication Critical patent/KR101557835B1/ko

Links

Images

Classifications

    • 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
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • 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)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 발명은 사용자 환경 및 디바이스에 의존적인 인터페이스 속성에 따라서 실시간 적응적인 사용자 경험을 제공할 수 있으며, 리소스와 사용자 인터페이스 간의 의존성을 최소화하여 리소스의 재활용 및 관리가 용이한 원격 사용자 인터페이스 제공 시스템 및 그의 원격 사용자 인터페이스 제공 방법에 관한 것으로서, 상기 시스템은, 하나 이상의 리소스 및 상기 하나 이상의 리소스와 사용자 페이지 간의 관계를 정의하는 리소스 관리 모듈과, 사용자 관련 정보인 사용자 컨텍스트를 수집하여 관리하는 컨텍스트 관리 모듈과, 사용자 요청에 대응하여, 상기 리소스 관리 모듈 및 상기 컨텍스트 관리 모듈로부터 사용자 페이지의 구성에 필요한 사용자 컨텍스트 및 리소스를 수집하고, 사용자 컨텍스트에 따라서 수집된 리소스를 결합하여 상기 사용자 요청에 대응하는 사용자 페이지를 구성하는 UI 콘트롤 모듈을 포함하여 이루어질 수 있다.

Description

원격 사용자 인터페이스 제공 시스템 및 그의 원격 사용자 인터페이스 제공 방법 {User Interface Providing System and the Method}
본 발명은 원격 사용자 인터페이스 제공 장치 및 방법에 관한 것으로서, 더욱 상세하게는 사용자 환경 및 디바이스에 의존적인 인터페이스 속성에 따라서 실시간 적응적인 사용자 경험을 제공할 수 있으며, 리소스와 사용자 인터페이스 간의 의존성을 최소화하여 리소스의 재활용 및 관리가 용이한 원격 사용자 인터페이스 제공 시스템 및 그의 원격 사용자 인터페이스 제공 방법에 관한 것이다.
IT 기기의 고도화 및 네트워크의 발전으로 다양한 종류의 멀티미디어 콘텐츠를 퍼스널 컴퓨터, 스마트 TV, 모바일 폰과 같은 이종 기기 간에 공유 및 연동하여 사용하는 것이 가능해졌다.
이러한 이종 기기들은 해상도, 스크린 사이즈 등의 기기 성능 및 사양에 큰 차이가 있기 때문에, 사용자 환경에 따라서 동적으로 사용자 인터페이스를 제공할 수 있어야 한다.
이러한 사용자 환경을 고려한 기술로서, 스케일러블 비디오 코딩(Scalable Video Coding)과 같은 다중화 비디오 코딩을 이용하여 적응적인 콘텐츠를 제공하는 방법이 있으나 이는 부호화 기법일 뿐이며, 또한 동영상에 최적화되어 있다.
그러나, 사용자 인터페이스를 위해 제공되는 사용자 페이지는, 동영상을 포함한 다양한 리소스들의 프레젠테이션 정보를 제공하기 때문에, 이에 대한 통합 요소들이 모두 고려되어야 한다.
한편, 이러한 통합 요소들을 고려한 사용자 인터페이스 기술로서, 기존에는 기존에는 사용자가 이용하는 디바이스의 기종 혹인 사양을 확인하여, 해당하는 사용자 환경에 따라서 다른 사용자 페이지 혹은 다른 서버로 분기하거나, 사용자 상황에 맞게 동적으로 사용자 페이지를 재구성하여 전달하는 방식을 이용하였다.
그러나, 이러한 기존의 원격 사용자 인터페이스 제공 기술들은, 모두 기본적으로 이미 구성된 사용자 페이지를 사용자 환경에 따라서 선택하거나 재구성하는 방식이기 때문에, 사용자 페이지의 변화 범위 및 사용자 환경의 적응 범위가 제한적이라는 단점이 있다.
아울러, 기존의 원격 사용자 인터페이스 제공 기술들은, 각 리소스 간 의존성이 높기 때문에, 리소스의 재활용 및 관리에 어려움이 따르며, 특히, 리소스를 다른 응용 프로그램에 적용하는데 어려움이 따른다.
한국공개특허 제10-2006-0106677호, 2006년 10월 12일 공개 (명칭: 사용자 인터페이스 제어를 위한 컴퓨터 판독 가능한 매체 및 통신 방법)
본 발명은 종래의 문제점을 해결하여, 사용자 환경 및 디바이스에 의존적인 인터페이스 속성에 따라서 실시간 적응적인 사용자 경험을 제공할 수 있으며, 리소스와 사용자 인터페이스 간의 의존성을 최소화하여 리소스의 재활용 및 관리가 용이한 원격 사용자 인터페이스 제공 시스템 및 그의 원격 사용자 인터페이스 제공 방법을 제공하고자 한다.
본 발명은 상술한 과제의 해결 수단으로서, 하나 이상의 리소스 및 상기 하나 이상의 리소스와 사용자 페이지 간의 관계를 정의하는 리소스 관리 모듈; 사용자 관련 정보인 사용자 컨텍스트를 수집하여 관리하는 컨텍스트 관리 모듈; 및 사용자 요청에 대응하여, 상기 리소스 관리 모듈 및 상기 컨텍스트 관리 모듈로부터 사용자 페이지의 구성에 필요한 사용자 컨텍스트 및 리소스를 수집하고, 사용자 컨텍스트에 따라서 수집된 리소스를 결합하여 상기 사용자 요청에 대응하는 사용자 페이지를 구성하는 UI 콘트롤 모듈을 포함하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 시스템을 제공한다.
본 발명에 따른 원격 사용자 인터페이스 제공 시스템에 있어서, 상기 사용자 페이지는 사용자가 인지할 수 있는 물리적 사용자 인터페이스의 독립적 단위인 아이템을 하나 이상 포함하여 이루어지고, 상기 아이템은 리소스 및 상기 리소스의 선택 여부의 기준이 되는 조건 정보를 포함하는 콤포넌트를 하나 이상 포함하여 이루어질 수 있다.
이때, 상기 리소스 관리 모듈은, 요청에 따라서 하나 이상의 리소스를 등록하고, 등록된 리소스를 관리할 수 있도록 지원하는 리소스 콘트롤 매니저; 요청에 따라서, 상기 하나 이상의 리소스와 하나 이상의 사용자 페이지 간의 관계를 기술하고 구조화하는 UI 콘트롤 매니저; 상기 리소스 콘트롤 매니저에 의하여 등록된 하나 이상의 리소스를 저장하는 리소스 DB; 및 상기 UI 콘트롤 매니저에 의해 기술된 하나 이상의 리소스와 하나 이상의 사용자 페이지와의 관계를 저장하는 관계 DB를 포함할 수 있다.
또한, 상기 UI 콘트롤 매니저는, 사용자 페이지와 상기 사용자 페이지에 포함된 아이템의 관계를 기술하는 아이템-페이지 매니저; 상기 아이템과 상기 아이템에 포함된 콤포넌트의 관계를 기술하는 콤포넌트-아이템 매니저; 상기 콤포넌트와 상기 콤포넌트에 포함된 리소스의 관계를 기술하는 리소스-콤포넌트 매니저; 상기 콤포넌트와 상기 콤포넌트에 설정된 컨텍스트의 관계를 기술하는 컨텍스트-콤포넌트 매니저를 포함할 수 있다.
또한, 상기 컨텍스트 관리 모듈은, 사용자 컨텍스트를 수집하여 기술하는 컨텍스트 매니저; 및 상기 컨텍스트 매니저에 의해 기술된 사용자 컨텍스트를 저장하는 컨텍스트 DB를 포함하여 이루어질 수 있다.
그리고, 상기 UI 콘트롤 모듈은, 요청된 사용자 페이지를 구성하기 위해 필요한 사용자 컨텍스트 및 리소스를 수집하고, 사용자 컨텍스트에 따라서 수집된 리소스를 선택 결합하여 상기 사용자 요청에 대응하는 사용자 페이지를 구성하는 오거나이저; 상기 오거나이저에 의하여 구성된 사용자 페이지를 랜더링할 수 있도록 재가공하는 전처리기; 및 상기 사용자의 요청을 수신하여 상기 오거나이저로 전달하고, 상기 전처리기로부터 재가공된 사용자 페이지를 상기 사용자의 요청에 대응하여 전송하는 리퀘스트 핸들러를 포함할 수 있으며, 더하여, 상기 요청된 사용자 페이지의 구성에 필요한 컨텍스트를 분석하여 상기 오거나이저로 제공하는 페이지 분석기와, 사용자 식별 정보를 기반으로 상기 오거나이저로부터 요청된 사용자의 사용자 컨텍스트를 검색하여 상기 오거나이저로 제공하는 사용자 컨텍스트 검색기를 더 포함할 수 있다.
여기서, 상기 전처리기는 레이아웃 구조화 정보, 디자인 정보 및 레이아웃 처리를 위한 기능 함수를 포함하여 사용자 페이지를 구성하기 위한 템플릿을 정의하는 서비스 인스턴스 라이브러리; 및 상기 서비스 인스턴스 라이브러리를 참조하여, 상기 오거나이저에서 구성된 사용자 페이지를 랜더링할 수 있도록, 상기 사용자 페이지에 포함된 리소스를 필터링 및 재가공하는 리소스 리패키징 모듈로 이루어질 수 있다.
또한, 본 발명에 따른 원격 사용자 인터페이스 제공 시스템은, 원격 사용자 인터페이스를 위해 사용자 식별 정보 및 사용자 페이지의 식별 정보를 포함하는 사용자 요청을 전송하고, 상기 사용자 요청에 대응하는 사용자 페이지를 수신하는 서비스 클라이언트; 및 상기 서비스 클라이언트로부터 전송된 사용자 요청을 상기 UI 콘트롤 모듈로 전달하고, 이후 상기 UI 콘트롤 모듈로부터 출력된 사용자 페이지를 상기 서비스 클라이언트로 전송하는 서비스 매니저를 더 포함하여, 통신망을 통해 연결된 디바이스에 대하여 원격 사용자 인터페이스를 제공할 수 있다.
더하여, 본 발명은 상술한 과제의 다른 해결 수단으로서, 사용자 식별 정보 및 사용자 페이지의 식별 정보를 포함하는 사용자 요청을 수신하는 단계; 상기 사용자 페이지의 식별 정보에 대응하는 사용자 페이지의 관계 정보를 참조하여, 상기 사용자 페이지를 구성하는데 필요한 사용자 컨텍스트를 수집하는 단계; 상기 수집한 사용자 컨텍스트 및 해당 사용자 페이지의 관계 정보를 참조하여, 사용자 상황에 맞는 리소스를 추출하는 단계; 상기 추출한 리소스를 결합하여 상기 사용자 페이지를 구성하는 단계; 및 상기 구성된 사용자 페이지를 디바이스로 제공하는 단계를 포함하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 방법을 제공한다.
본 발명에 따른 원격 사용자 인터페이스 제공 방법은, 랜더링할 수 있도록 상기 구성된 사용자 페이지의 리소스를 재가공하는 단계를 더 포함할 수 있으며, 또한, 상기 사용자 페이지의 식별정보를 기준으로, 상기 사용자 페이지와 리소스의 관계를 분석하여, 상기 사용자 페이지에 포함된 콤포넌트에서 요구되는 컨텍스트의 식별 정보를 확인하는 단계를 더 포함하고, 이때, 상기 사용자 컨텍스트를 수집하는 단계는, 상기 확인된 컨텍스트 및 사용자 식별 정보를 참조하여, 상기 사용자 컨텍스트를 수집하도록 할 수 있다.
더하여 상술한 원격 사용자 인터페이스 제공 방법은 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램으로 구현될 수 있다.
상술한 구성에 따르면, 본 발명은 사용자 인터페이스를 적응적으로 제공하기 위해 각 리소스를 독립적으로 설정하고 상황에 맞게 재구성하여 제공함으로써, 사용자 환경에 최적화된 사용자 인터페이스를 제공할 수 있을 뿐만 아니라, 사용자 환경이 변하더라도 유연하게 실시간 적응적인 사용자 인터페이스를 제공할 수 있다.
또한, 본 발명은 리소스와 최종 사용자 인터페이스와의 의존성을 최소화함으로써, 리소스를 제공하는 콘텐츠 제공자와 사용자 인터페이스를 제공하는 서비스 제공자가 서로 다른 경우, 리소스의 재활용 및 관리를 용이하게 할 수 있다.
도 1은 본 발명에 따른 원격 사용자 인터페이스 제공 시스템의 전체 구성을 나타낸 블럭도이다.
도 2는 본 발명에 따른 원격 사용자 인터페이스 제공 시스템에 있어서, 리소스 관리 모듈의 상세 구성을 나타낸 블럭도다.
도 3은 본 발명에 따른 원격 사용자 인터페이스 제공 시스템에 있어서, 사용자 인터페이스 콘트롤 모듈의 상세 구성을 나타낸 블럭도이다.
도 4는 본 발명에 따른 원격 사용자 인터페이스 제공 시스템에 있어서의 사용자 인터페이스의 구성 요소 및 그 관계를 설명하기 위한 도면이다.
도 5는 본 발명에 따른 원격 사용자 인터페이스 제공 시스템에 있어서의 원격 사용자 인터페이스 제공 과정을 설명하기 위한 예시도이다.
도 6은 본 발명에 따른 원격 사용자 인터페이스 제공 시스템의 적용 예를 도시한 블럭도이다.
도 7은 본 발명에 따른 원격 사용자 인터페이스 제공 시스템에 있어서, 사용자 인터페이스 제공 과정을 나타낸 도면이다.
이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
아울러, 이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
더하여, 이하에서 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급할 경우, 이는 논리적 또는 물리적으로 연결되거나, 접속될 수 있음을 의미한다. 다시 말해, 구성요소가 다른 구성요소에 직접적으로 연결되거나 접속되어 있을 수 있지만, 중간에 다른 구성요소가 존재할 수도 있으며, 간접적으로 연결되거나 접속될 수도 있다고 이해되어야 할 것이다.
또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는 "포함 한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명에 따른 원격 사용자 인터페이스 제공 시스템 및 방법은, 사용자가 이용하는 디바이스로부터 요청에 따라서 특정 사용자 페이지를 제공하는 임의의 서비스 시스템에 적용될 수 있다. 이때, 본 발명에 따른 원격 사용자 인터페이스 제공 시스템 및 방법은, 리소스 및 사용자 페이지와 리소스 간의 관계를 독립적으로 설정하고, 사용자 요청 시, 상기 관계 및 사용자 환경을 정의하는 사용자 컨텍스트에 기반하여 리소스들을 선택하고, 선택된 리소스들을 사용자 페이지를 구성함으로써 사용자 환경에 따라 실시간 적응적이며 유연한 사용자 인터페이스를 제공할 수 있도록 하는 것이다.
먼저, 도 1을 참조하여 이러한 본 발명에 따른 원격 사용자 인터페이스 제공 시스템의 전체 구조 및 기능을 개략적을 살펴본다.
도 1은 본 발명에 따른 원격 사용자 인터페이스 제공 시스템의 전체 구성을 나타낸 블럭도이다.
도 1을 참조하면, 본 발명에 따른 원격 사용자 인터페이스 제공 시스템은, 리소스 관리 모듈(100)과, 컨텍스트 관리 모듈(200)과, 사용자 인터페이스(이하, UI라 함) 콘트롤 모듈(300)을 포함하여 이루어진다. 여기서 모듈(Module)은 본 발명에 따른 원격 사용자 인터페이스 제공을 위한 구성을, 기능별 단위로 분할하여 나타낸 것으로서, 소프트웨어, 또는 하드웨어 또는 소프트웨어와 하드웨어의 결합 중 어느 하나로 구현될 수 있다. 즉, 본 발명에 따른 원격 사용자 인터페이스 제공 시스템은, 소프트웨어, 또는 하드웨어 또는 소프트웨어와 하드웨어의 결합 중 어느 하나로 구현될 수 있다.
상기 리소스 관리 모듈(100)은 본 발명에 따른 사용자 페이지를 구성하기 위한 이용될 수 있는 하나 이상의 리소스를 관리하기 위한 구성 수단이다. 구체적으로, 상기 리소스 관리 모듈(100)은 리소스 등록 및 등록된 리소스와 사용자 페이지 간의 관계를 정의할 수 있도록 지원한다. 이를 위하여, 리소스 관리 모듈(100)은 리소스 관계 DB(110)와 리소스 매니저(120)를 구비할 수 있다.
상기 리소스 관계 DB(110)는 리소스 및 리소스와 사용자 페이지 간의 관계 정보를 저장하는 수단이며, 리소스 매니저(120)는 사용자 페이지를 구성하기 위해 필요한 리소스 및 리소스와 사용자 페이지의 관계를 요청에 따라서 기술하기 위한 수단이다. 이들에 대해서는 추후 도 2를 참조하여 더 구체적으로 설명하기로 한다.
다음으로, 컨텍스트 관리 모듈(200)은 사용자 관련 정보인 사용자 컨텍스트를 수집하여 관리하기 위한 구성이다. 이러한 컨텍스트 관리 모듈(200)은 컨텍스트 DB(210)와, 컨텍스트 매니저(220)를 포함할 수 있다. 여기서, 컨텍스트 매니저(220)는 사용자 컨텍스트를 수집하며, 수집된 사용자 컨텍스트를 상기 컨텍스트 DB(210)에 기록한다. 이때, 상기 사용자 컨텍스트는, 사용자 별로 수집되는 사용자의 상황을 나타내는 정보로서, 사용자 식별 정보와, 컨텍스트 구분 정보와, 컨텍스트 정보를 포함할 수 있다. 여기서, 사용자 식별 정보는 사용자를 식별할 수 있는 정보로서, 예를 들어, 사용자 ID, 휴대 전화 번호, 단말 식별 정보를 포함할 수 있다. 컨텍스트 구분 정보는, 컨텍스트의 종류를 구분하기 위한 정보로서, 예를 들어, 위치, 상태, 나이, 성별, 직업, 날씨, 감정, 취미 등이 될 수 있다. 컨텍스트 정보는 상기 사용자 식별 정보에 매칭되는 사용자에 대해서 수집된 실제 컨텍스트 값을 나타낸 것으로서, 예를 들어, 위치에 대응하여 사용자의 디바이스로부터 수집된 위도 및 경도값, 성별 값으로서 여성 또는 남성, 감정 값으로서 우울, 슬픔, 화남, 행복함 등이 될 수 있다.
컨텍스트 매니저(200)는 주기적으로 혹은 요청에 따라서 특정 사용자의 상술한 사용자 컨텍스트를 수집하여 컨텍스트 DB(210)에 저장할 수 있다.
아울러, 상기 컨텍스트 관리 모듈(200)은 이외에 추론 매니저(Inference manager)(도시생략)를 더 포함할 수 있으며, 이 추론 매니저를 통해서 컨텍스트 매니저(200)를 통해 수집된 사용자 컨텍스트를 기반으로 상위 개념의 사용자 컨텍스트를 더 추론할 수 있다.
다음으로, UI 콘트롤 모듈(300)은, 사용자 요청에 대응하여 요청된 사용자 페이지를 구성하기 위한 수단이다. 구체적으로, UI 콘트롤 모듈(300)은, 사용자 요청에 대응하여, 상기 리소스 관리 모듈(100) 및 상기 컨텍스트 관리 모듈(200)로부터 사용자 페이지의 구성에 필요한 사용자 컨텍스트 및 리소스를 수집하고, 사용자 컨텍스트에 따라서 수집된 리소스를 결합하여 상기 사용자 요청에 대응하는 사용자 페이지를 구성한다.
이러한 UI 콘트롤 모듈(300)은, 오거나이저(Organizer)(310)와, 전처리기(320)와, 리퀘스트 핸들러(Request handler)(330)를 포함할 수 있다.
여기서, 상기 UI 콘트롤 모듈(300)의 리퀘스트 핸들러(330)는 특정 사용자 페이지에 대한 사용자 요청을 수신하여 오거나이저(310)로 전달한다. 이때, 사용자 요청은, 해당 사용자의 사용자 식별 정보와, 요청된 사용자 페이지의 식별 정보를 포함할 수 있다. 여기서, 사용자 식별 정보는 앞서 설명한 바와 같이, 사용자 ID, 휴대 전화 번호, 디바이스 식별 정보 중 어느 하나로 될 수 있으며, 사용자 페이지의 식별 정보는, URL로 표현될 수 있다.
이에 오거나이저(310)는 요청된 사용자 페이지의 식별 정보와, 요청한 사용자의 사용자 식별자를 기반으로 상기 리소스 관리 모듈(100) 및 컨텍스트 관리 모듈(200)로부터 해당 사용자의 상황을 나타내는 사용자 컨텍스트를 수집하고, 수집된 사용자 컨텍스트를 기반으로 사용자 상황에 맞는 리소스를 선택하여 결합함으로써 사용자 상황에 실시간 적응적인 사용자 페이지를 구성한다.
상기 오거나이저(310)에 의해 구성된 사용자 페이지는 전처리기(320)를 통해서 필터링 및 재가공 과정을 거쳐, 랜더링 가능한 형태로 보정된 후 리퀘스트 핸들러(330)를 통해서 사용자 측으로 전송된다.
여기서, 사용자 요청 및 응답을 처리하는 리퀘스트 핸들러(330)는 웹 기반으로 동작하도록 구현될 수 있다.
이어서 도 2 내지 도 3을 참조하여, 본 발명에 따른 원격 사용자 인터페이스 제공 시스템(10)의 각 구성 요소를 더 구체적으로 설명한다.
도 2는 본 발명에 따른 원격 사용자 인터페이스 제공 시스템에 있어서, 리소스 관리 모듈(100)의 상세 구성을 나타낸 블럭도다.
도 2를 참조하면, 상기 리소스 관리 모듈(100)은 앞서 설명한 바와 같이, 크게 리소스 관계 DB(110)와 리소스 매니저(120)를 포함하여 이루어지는데, 여기서 상기 리소스 관계 DB(110)는 리소스 DB(111)와 관계 DB(112)로 구분될 수 있으며, 리소스 매니저(120)는 UI 콘트롤 매니저(121)와 리소스 콘트롤 매니저(122)로 구분될 수 있다.
상기 리소스 DB(111)는 사용자 페이지에 이용될 수 있는 하나 이상의 리소스를 저장한다. 리소스 DB(111)에 저장되는 리소스는 CSS, HTML, JavaScript, XML 등 다양한 포맷으로 이루어질 수 있다. 이때, 상기 리소스 DB(111)에 저장되는 리소스들은 사용자 페이지와 독립적으로 관리된다. 즉, 사용자 페이지에 종속적으로 저장되는 것이 아니라, 각각의 리소스들이 독립적인 형태로 저장된다. 이렇게 등록된 리소스 들은 각각 하나 이상의 사용자 페이지와 연관될 수 있다.
관계 DB(112)는 상기 리소스 DB(111)에 등록된 리소스들과 사용자 페이지와 사용자 간의 관계 정보를 저장한다. 여기서 관계 정보는, 각 리소스가 사용자 페이지에 결합되는 조건 및 형태를 정의하기 위한 정보로서, 이러한 관계 정보는 도 5에 보인 본 발명에 따른 사용자 페이지의 구조를 참조함으로써 더 쉽게 이해될 수 있다.
먼저, 도 4는 본 발명에 따른 사용자 페이지의 구조 및 구성 요소 간의 관계를 나타낸 도면이다.
도 4를 참조하면, 본 발명에 다른 사용자 페이지(page)는 하나 이상의 아이템(Item)으로 이루어지며, 상기 아이템은 하나 이상의 콤포넌트(Component)로 이루어지며, 상기 콤포넌트는 하나 이상의 리소스(Resource) 및 조건 정보(Condition)을 포함하여 이루어진다.
본 발명에 있어서, 리소스는 최소 단위의 콘텐츠를 의미하는 것으로서, 동영상(Video), 오디오(Audio), 메시지, 자바스크립트, CSS, HTML 등의 하나 이상의 서로 다른 포맷의 결합으로 이루어질 수 있다. 더불어, 상기 리소스는 콘텐츠 제작자의 배포 단위가 도리 수 있다. 리소스는 콘텐츠 본연의 분위기, 인지 부하량, 사용 모덜리티 등의 각기 다른 리소스에 대한 성격을 기술할 수 있다. 이러한 리소스는 각각 독립된 단위로 리소스 콘트롤 매니저(122)를 통해서 리소스 DB(111)에 저장된다. 즉, 리소스 콘트롤 매니저(122)는 요청에 따라서 하나 이상의 리소스를 등록하고, 등록된 리소스를 관리할 수 있도록 지원한다. 따라서, 콘텐츠 제공자는 리소스 콘트롤 매니저(122)를 통해서 사용자 페이지의 구조와는 무관하게 리소스 DB(111)d에 새로운 리소스를 등록하고, 기 등록한 리소스의 변경이나 수정이나 삭제 등의 관리를 수행할 수 있다.
다음으로, 콤포넌트는 사용자의 상황에 따라서 선택되는 사용자 페이지의 구성 단위로서, 조건 정보가 부여된 리소스로 정의될 수 있다. 여기서 조건 정보는 콤포넌트의 유효 여부에 대한 기준이 되며, 조건 정보를 만족할 경우 상기 리소스가 사용자 페이지에 결합될 수 있다. 만약, 콤포넌트가 하나 이상의 리소스를 갖고 있으며 조건에 관계 없이 유효한 경우, 상기 조건 정보는 생략할 수 있다.
이러한 콤포넌트는 상기 조건 정보를 통해서 사용자의 상황과 밀접하게 연결될 수 있으며, 이러한 콤포넌트의 구조에 의하여 사용자 페이지의 최종 사용자 인터페이스가 사용자 상황에 따라서 달라질 수 있다. 예를 들어, A라는 콤포넌트에서 조건 정보가 사용자 컨텍스트 중 감정 값이 행복으로 설정되어 있는 경우, 상기 콤포넌트 A는 사용자 감정이 행복인 경우에만 선택된다.
다음으로, 아이템은 사용자가 인지하는 물리적 사용자 인터페이스의 독립적 단위를 나타내는 것으로서, 그 하위에 포함된 하나 이상의 콤포넌트 중 조건에 맞는 콤포넌트에 의해 사용자 인터페이스를 생성하게 된다. 아이템 단위별 가로, 세로 크기와 콤포넌트에 대한 Index 정보에 의해서 최종 선택되는 콤포넌트를 결정한다. 기본적으로 아이템은 여러 개의 콤포넌트를 포함하고 있지만 모든 경우의 콤포넌트가 참인 것은 아니므로 최종적으로는 선택적인 콤포넌트 안의 리소스들이 모여 아이템을 구성하게 된다.
페이지는 사용자 인터페이스의 추상적 단계로 실제 아이템의 상위 레이어이다. 상황에 따른 다른 레이아웃에 대해서 사용자가 어떤 장비를 사용하는가에 따라 장비의 물리적 성격(레졸루션, 디바이스 퍼포먼스, 모덜리티)이 다르고 이에 적응적으로 보여주기 위해 페이지는 한 개 이상의 아이템을 설정할 수 있다.
이와 같이, 본 발명에 따른 사용자 페이지는 하나 이상의 아이템으로 설정되며, 각각의 아이템은 조건화된 하나 이상의 콤포넌트로 이루어짐으로써, 개개의 사용자 상황에 따라서 실시간적으로 적응될 수 있다.
따라서, 상기 관계 DB(112)는 상술한 사용자 페이지의 구조화와 관련된 관계 정보, 즉, 사용자 페이지와 아이템의 관계, 아이템과 콤포넌트와의 관계, 콤포넌트와 리소스와의 관계, 콤포넌트와 사용자와의 관계 중 하나 이상을 포함하는 관계 정보를 저장한다.
아울러 상기 관계 DB(112)에 저장되는 관계 정보는, UI 콘트롤 매니저(121)에 의해 기술된다.
상기 UI 콘트롤 매니저(121)는 서비스 제공자의 요청에 따라서 상기 리소스 DB(111)에 저장된 하나 이상의 리소스와 하나 이상의 사용자 페이지 간의 관계를 기술하고 구조화하여 상기 관계 DB(112)에 저장한다.
아울러, 상기 도 5와 같은 구조의 사용자 페이지의 관계 정보를 기술하기 위하여, 상기 UI 콘트롤 매니저(121)는, 사용자 페이지와 상기 사용자 페이지에 포함된 아이템의 관계를 기술하는 아이템-페이지 매니저(121a)와, 상기 아이템과 상기 아이템에 포함된 콤포넌트의 관계를 기술하는 콤포넌트-아이템 매니저(121b)와, 상기 콤포넌트와 상기 콤포넌트에 포함된 리소스의 관계를 기술하는 리소스-콤포넌트 매니저(121c)와, 상기 콤포넌트와 상기 콤포넌트에 설정된 컨텍스트의 관계를 기술하는 컨텍스트-콤포넌트 매니저(121d)를 포함할 수 있으며, 이를 통해서 사용자 페이지와 사용자와 리소스 간의 관계를 구조화하여 정의할 수 있다.
다음으로, 도 3을 참조하여 본 발명에 따른 원격 사용자 인터페이스 제공 시스템(10)에 있어서의 UI 콘트롤 모듈(300)을 더 상세하게 설명하기로 한다.
도 3을 참조하면, 본 발명에 따른 UI 콘트롤 모듈(300)은, 앞서 도 1에 도시한 오거나이저(310)와 전처리기(320)와 리퀘스트 핸들러(330) 이외에, 페이지 분석기(340) 및 사용자 컨텍스트 검색기(350)를 더 포함할 수 있다.
상기 오거나이저(310)와 전처리기(320)와 리퀘스트 핸들러(330)에 대해서는 앞서 설명한 바 있으나, 다시 요약하면, 오거나이저(310)는 요청된 사용자 페이지의 식별 정보와, 요청한 사용자의 사용자 식별자를 기반으로 상기 리소스 관리 모듈(100) 및 컨텍스트 관리 모듈(200)로부터 해당 사용자의 상황을 나타내는 사용자 컨텍스트를 수집하고, 수집된 사용자 컨텍스트를 기반으로 사용자 상황에 맞는 리소스를 선택하여 결합함으로써 사용자 상황에 실시간 적응적인 사용자 페이지를 구성하며, 전처리기(320)는 오거나이저(310)에서 구성된 사용자 페이지에 대한 필터링 및 재가공 과정을 통해, 랜더링 가능한 형태로 보정하기 위한 것이며, 리퀘스트 핸들러(330)는 사용자 페이지에 대한 요청 및 응답을 처리하는 것이다.
상기 전처리기(320)에 대해서 도 3을 참조하여 더 구체적으로 설명하면, 전처리기(320)는 리소스 리패키징 모듈(321)과 서비스 인스턴스 라이브러리(322)를 포함하여 이루어질 수 있다.
상기 서비스 인스턴스 라이브러리(322)는, 레이아웃 구조화 정보, 디자인 정보 및 레이아웃 처리를 위한 기능 함수를 포함하여 사용자 페이지를 구성하기 위한 템플릿을 정의하며, 리소스 리패키징 모듈(321)은, 상기 서비스 인스턴스 라이브러리(321)를 참조하여, 상기 오거나이저에서 구성된 사용자 페이지를 랜더링할 수 있도록, 상기 사용자 페이지에 포함된 리소스를 필터링 및 재가공한다.
참고로, 상기 오거나이저(310)에서 구성된 사용자 페이지에 포함된 리소스는 리소스 DB(111)로부터 추출된 원래의 리소스 데이터로서, 메타 데이터 등의 불필요한 데이터가 함께 포함되어 있어 랜더링될 수 없다. 따라서, 본 발명의 전처리기(320)의 리소스 리패키징 모듈(321)은 각 리소스들의 개별 리소스 타입을 고려하여 재가공한다. 아울러, 상기 리소스 리패키징 모듈(321)은 서비스 인스턴스 라이브러리(322)로부터 제공되는 서비스 인스턴스 및 랜더링을 위한 라이브러리들과 결합되어, 랜더링이 가능한 형태로 재가공된다.
다음으로, 상기 페이지 분석기(340)는, 상기 오거나이저(310)와 연동하여, 요청된 사용자 페이지의 구성에 필요한 컨텍스트를 분석하여 상기 오거나이저(310)로 제공하기 위한 구성이다. 즉, 오거나이저(310)는 상기 페이지 분석기(340)를 통해서 요청된 사용자 페이지의 구성에 필요한 각 컨텍스트의 조건 정보에 대응하는 컨텍스트 구분 정보(예를 들어, 컨텍스트 명)를 확인하고, 확인된 컨텍스트 명 및 사용자 식별 정보를 사용자 컨텍스트 검색기(350)로 전송하여, 해당 사용자의 특정 사용자 컨텍스트 정보를 요청할 수 있다.
이때, 상기 사용자 컨텍스트 검색기(350)는 사용자 식별 정보 및 컨텍스트 구분 정보를 기반으로 상기 오거나이저(310)로부터 요청된 사용자의 사용자 컨텍스트를 검색하여 상기 오거나이저(310)로 제공한다. 예를 들어, 오거나이저(310)로부부터 [사용자 ID = A, 컨텍스트 구분 정보 = 감정]이 수신되면, 상기 사용자 컨텍스트 검색기(350)는 컨텍스트 DB(210)로부터 [사용자 ID=A, 컨텍스트 구분 정보 = 감정]에 대응하는 사용자 컨텍스트 값(예를 들어, 행복)을 검색하여 상기 오거나이저(310)로 전달한다. 물론 상기 사용자 컨텍스트 검색기(350)는 특정 사용자에 대하여, 하나 이상의 사용자 컨텍스트를 검색하여 제공할 수 있다.
상술한 바와 같이 구성된 원격 사용자 인터페이스 시스템(10)은 사용자의 요청에 따라서 사용자 페이지를 제공하되, 사용자 상황에 맞게 사용자 페이지를 적응적으로 구성하여 제공할 수 있게 된다.
이러한 원격 사용자 인터페이스 시스템(10)의 원격 사용자 인터페이스 제공 과정은 도 5의 예시를 참조함으로써 더 쉽게 이해될 수 있다.
도 5는 일 예로서, 사용자 페이지 1,2의 구조를 나타낸 것으로서, 도 6의 실선은 사용자 페이지, 아이템, 콤포넌트, 리소스 들간의 관계를 나타낸다.
Comic News, TV 프로그램, Happy News, 스포츠 동영상, 음악 뉴스, 게임 광고 등과 같은 다양한 리소스 들이 존재할 때, 각 콤포넌트는 하나 이상의 리소스와 연결될 수 있다. 예를 들어, 조건 정보로서 감정 값인 행복(Happy)이 설정된 제1 콤포넌트는, TV 프로그램, Happy News, 드라마, 밝은 배경 등의 리소스가 연결되고, 조건 정보로서 감정 값이 슬픔(Sad)으로 설정된 제2 콤포넌트는 Comic News, Sad News, 오늘의 음식, 어두운 배경 등의 리소스가 연결된다고 하고, 상기 제1,2 콤포넌트는 사용자 페이지 1(page 1)의 아이템 2(Item 2)를 구성한다고 할 때, 각각의 리소스는 리소스 DB(111)에 저장되고, 상기 리소스와 콤포넌트와 아이템과 페이지 간의 관계 정보는 관계 DB(112)에 저장된다.
이때, 사용자가 사용자 페이지 1을 요청하면, 본 발명에 따른 원격 사용자 인터페이스 시스템(10)은, 사용자 식별 정보 및 사용자 페이지의 식별 정보를 참조하여 상기 관계 DB(112)로부터 해당 사용자 페이지의 관계 정보를 가져오고, 아울러, 상기 관계 정보를 기반으로 페이지 구성 시 필요한 컨텍스트, 즉, 감정에 대한 사용자 컨텍스트를 검색한다. 이때, 상기 원격 사용자 인터페이스 시스템(10)은 사용자의 디바이스 정보를 참조하여, 아이템 2를 선택한다. 이어, 상기 아이템 2에 연결된 콤포넌트 중 상기 사용자 컨텍스트에 기반하여 콤포넌트를 선택하는데, 사용자 감정 값이 '행복(happy)'인 경우, 제1 콤포넌트가 선택되며, 그에 연결된 리소스, TV 프로그램, Happy News, 드라마, 밝은 배경 등의 리소스가 추출되어, 상기 아이템 2로 구성된다.
반면, 사용자 감정이 '슬픔(Sad)'인 경우에는, 제2 콤포넌트가 선택되며, 그에 연결된 리소스, Comic News, Sad News, 오늘의 음식, 어두운 배경 등이 추출되어 상기 아이템 2로 구성된다.
이에 따르면, 본 발명은 사용자 인터페이스의 각 요소와 그 관계에 대한 테이블을 독립적으로 기술함으로써 각기 다른 콘텐츠 제공자와 서비스 제공자, 서비스 정책에 독립적으로 사용자 인터페이스 제공이 가능해진다.
더 구체적으로, 콘텐츠 제공자는 리소스를 독립적으로 제작하여 등록할 수 있으며, 서비스 제공자는 이렇게 등록된 리소스를 활용 및 재활용하여 다양한 사용자 인터페이스를 구현할 수 있다.
그러므로 본 발명에 의하면, 독립적인 요소의 특성에 따라 리소스의 재사용, 재활용, 타 응용 프로그램으로의 이식이 용이하고, 사용자 환경 설정에 대한 서비스 사업자의 자유도가 높은 사용자 사용환경에 적응적인 사용자 인터페이스 제공할 수 있게 된다.
아울러, 상술한 바와 같이 구성된 본 발명에 따른 원격 사용자 인터페이스 제공 시스템(10)은, 인터넷 등의 통신망을 기반으로 한 서비스 시스템에 적용될 수 있다.
도 6은 본 발명에 따른 원격 사용자 인터페이스 제공 시스템의 적용 예를 도시한 블럭도이다.
도 6을 참조하면, 본 발명에 따른 원격 사용자 인터페이스 제공 시스템(10)은, 통신망(20)을 통해서 접속한 사용자의 디바이스(30)와 연동하여 본 발명에 따른 원격 사용자 인터페이스를 제공할 수 있다.
이때, 상기 원격 사용자 인터페이스 제공 시스템(10)은, 디바이스(30)와의 연동을 위해, 서비스 매니저(400) 및 서비스 클라이언트(500)를 더 포함할 수 있다.
상기 서비스 매니저(400)는 상기 서비스 클라이언트(500)로부터 전송된 사용자 요청을 수신하여, 상기 UI 콘트롤 모듈(300)로 전달하고, 이후 요청에 대한 응답으로서 상기 UI 콘트롤 모듈(300)로부터 출력된 사용자 페이지를 상기 서비스 클라이언트(500)로 전송한다.
상기 서비스 클라이언트(500)는, 원격 사용자 인터페이스 제공 시스템(10)과의 연동을 위해서 사용자가 이용하는 디바이스(30) 측에 설치되는 구성으로서, 원격 사용자 인터페이스를 위해 사용자 식별 정보 및 사용자 페이지의 식별 정보를 포함하는 사용자 요청을 생성하여 통신망(20)을 통해서 서비스 매니저(400)로 전송하고, 상기 사용자 요청에 대응하는 사용자 페이지를 수신하여 디바이스(500)의 디바이스 콘트롤러(도시생략)로 제공한다. 상기 디바이스(500)는 서비스 클라이언트(500)를 통해 수신된 사용자 페이지를 랜더링하여 화면상에 출력하게 된다.
다음으로 도 7을 참조하여, 도 4와 같은 네트워크 구조에서의 원격 사용자 인터페이스 제공 과정을 설명한다.
사용자는 자신이 사용하는 디바이스(30)을 조작하여, 특정 서비스를 선택할 수 있다. 이러한 사용자 요청은 디바이스(30)에 설치된 서비스 클라이언트(500)를 통해서 서비스 매니저(400)로 전송된다(S205).
서비스 매니저(400)는 수신한 사용자 요청을 리퀘스트 핸들러(330)로 전송한다(S210). 이때, 상기 서비스 매니저(400)는 요청을 전송한 사용자의 사용자 식별 정보와, 요청된 사용자 페이지의 식별 정보를 확인하여 이를 상기 리퀘스트 핸들러(330)로 전달하며, 상기 리퀘스트 핸들러(330)는 수신된 사용자 식별 정보 및 사용자 페이지의 식별 정보를 오거나이저(310)로 전달한다.
오거나이저(310)는, 컨텍스트 DB(210)를 검색하여 상기 사용자 페이지를 구성하는데 필요한 사용자 컨텍스트를 수집한다(S225).
이때, 상기 컨텍스트 DB(210)에는 컨텍스트 매니저(220)에 의해서 주기적으로 혹은 필요 시에 수집된 사용자 컨텍스트가 저장된다(S105, S110). 따라서 상기 오거나이저(310)는 컨텍스트 DB(210)를 검색하여, 원하는 사용자의 사용자 컨텍스트를 실시간으로 추출할 수 있다.
이때, 상기 오거나이저(310)는 페이지 분석기(340)를 통해서, 요청된 사용자 페이지의 관계 정보를 분석하여, 요청된 페이지의 콤포넌트 선택에 필요한 컨텍스트들을 의미하는 컨텍스트 구분 정보를 확인하고, 확인된 컨텍스트 구분 정보 및 사용자 식별 정보를 기준으로 상기 컨텍스트 DB(210)를 검색할 수 있다.
또한, 상기 오거나이저(310)는 상기 수집한 사용자 컨텍스트를 참조하여, 사용자 상황에 맞는 리소스를 수집하는 단계(S220). 이때, 상기 오거나이저(310)는 리소스 관계 DB(110)의 관계 정보를 기반으로, 상기 확인된 사용자 컨텍스트에 대응하는 콤포넌트를 선택하고, 선택된 콤포넌트의 리소스들을 추출한다.
그리고, 상기 오거나이저(310)는 추출한 리소스들을 결합하여 사용자 페이지를 구성하고, 구성된 사용자 페이지를 전처리기(320)로 전달한다(S230).
이때, 상기 오거나이저(310)로부터 추출된 리소스들은 DB에 저장된 세부 사항(메타데이터)을 포함하는 것으로서, 전처리기(320)는 랜더링에 불필요한 정보들을 필터링하고, 아울러 각 리소스 타입에 맞추어 상기 사용자 페이지를 재구성하여 리퀘스트 핸들러(330)로 전달한다(S235).
이에, 상기 리퀘스트 핸들러(330)는 상기 전처리기(320)에 의해 재구성된 사용자 페이지를 서비스 매니저(400)로 전달하며, 상기 서비스 매니저(400)는 앞서 S205 단계에서 수신한 사용자 요청에 대한 응답으로 상기 수신한 사용자 페이지를 서비스 클라이언트(500)로 전송한다(S245).
이렇게 전송된 사용자 페이지는 디바이스(30)에서 소정 처리(예를 들어, 랜더링)된 후 화면으로 출력될 수 있다.
본 발명에 따른 원격 사용자 인터페이스 제공 방법은 다양한 컴퓨터 수단을 통하여 판독 가능한 소프트웨어 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM), 램(RAM, Random Access Memory), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이, 본 명세서와 도면에는 본 발명의 바람직한 실시 예에 대하여 개시하였으나, 여기에 개시된 실시 예외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. 또한, 본 명세서와 도면에서 특정 용어들이 사용되었으나, 이는 단지 본 발명의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 발명의 범위를 한정하고자 하는 것은 아니다.
비록 본 명세서와 도면에서는 예시적인 장치 구성을 기술하고 있지만, 본 명세서에서 설명하는 기능적인 동작과 주제의 구현물들은 다른 유형의 디지털 전자 회로로 구현되거나, 본 명세서에서 개시하는 구조 및 그 구조적인 등가물들을 포함하는 컴퓨터 소프트웨어, 펌웨어 혹은 하드웨어로 구현되거나, 이들 중 하나 이상의 결합으로 구현 가능하다. 본 명세서에서 설명하는 주제의 구현물들은 하나 이상의 컴퓨터 프로그램 제품, 다시 말해 본 발명에 따른 장치의 동작을 제어하기 위하여 혹은 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령에 관한 하나 이상의 모듈로서 구현될 수 있다. 컴퓨터로 판독 가능한 매체는 기계로 판독 가능한 저장 장치, 기계로 판독 가능한 저장 기판, 메모리 장치, 기계로 판독 가능한 전파형 신호에 영향을 미치는 물질의 조성물 혹은 이들 중 하나 이상의 조합일 수 있다.
본 발명에 있어서 "시스템"이라는 용어는 예컨대 프로그래머블 프로세서, 컴퓨터 혹은 다중 프로세서나 컴퓨터를 포함하여 데이터를 처리하기 위한 모든 기구, 장치 및 기계를 포괄한다. 시스템은, 하드웨어에 부가하여, 예컨대 프로세서 펌웨어를 구성하는 코드, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제 혹은 이들 중 하나 이상의 조합 등 요청 시 컴퓨터 프로그램에 대한 실행 환경을 형성하는 코드를 포함할 수 있다.
본 발명에 따른 장치에 탑재되고 본 발명에 따른 방법을 실행하는 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 혹은 코드로도 알려져 있음)은 컴파일 되거나 해석된 언어나 선험적 혹은 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 콤포넌트, 서브루틴 혹은 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 반드시 대응하는 것은 아니다. 프로그램은 요청된 프로그램에 제공되는 단일 파일 내에, 혹은 다중의 상호 작용하는 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 혹은 코드의 일부를 저장하는 파일) 내에, 혹은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치하거나 복수의 사이트에 걸쳐서 분산되어 통신 네트워크에 의해 상호 접속된 다중 컴퓨터나 하나의 컴퓨터 상에서 실행되도록 전개될 수 있다.
컴퓨터 프로그램 명령어와 데이터를 저장하기에 적합한 컴퓨터로 판독 가능한 매체는, 예컨대 EPROM, EEPROM 및 플래시메모리 장치와 같은 반도체 메모리 장치, 예컨대 내부 하드디스크나 외장형 디스크와 같은 자기 디스크, 자기광학 디스크 및 CD-ROM과 DVD-ROM 디스크를 포함하여 모든 형태의 비휘발성 메모리, 매체 및 메모리 장치를 포함한다. 프로세서와 메모리는 특수 목적의 논리 회로에 의해 보충되거나, 그것에 통합될 수 있다.
본 명세서에서 설명한 주제의 구현물은 예컨대 데이터 서버와 같은 백엔드 콤포넌트를 포함하거나, 예컨대 어플리케이션 서버와 같은 미들웨어 콤포넌트를 포함하거나, 예컨대 사용자가 본 명세서에서 설명한 주제의 구현물과 상호 작용할 수 있는 웹 브라우저나 그래픽 유저 인터페이스를 갖는 클라이언트 컴퓨터와 같은 프론트엔드 콤포넌트 혹은 그러한 백엔드, 미들웨어 혹은 프론트엔드 콤포넌트의 하나 이상의 모든 조합을 포함하는 연산 시스템에서 구현될 수 있다. 시스템의 콤포넌트는 예컨대 통신 네트워크와 같은 디지털 데이터 통신의 어떠한 형태나 매체에 의해서도 상호 접속 가능하다.
본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.
마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 콤포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 콤포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 당업자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. 따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다.
따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.
상술한 구성에 따르면, 본 발명은 사용자 인터페이스를 적응적으로 제공하기 위해 각 리소스를 독립적으로 설정하고 상황에 맞게 재구성하여 제공함으로써, 사용자 환경에 최적화된 사용자 인터페이스를 제공할 수 있을 뿐만 아니라, 사용자 환경이 변하더라도 유연하게 실시간 적응적인 사용자 인터페이스를 제공할 수 있다.
또한, 본 발명은 리소스와 최종 사용자 인터페이스와의 의존성을 최소화함으로써, 리소스를 제공하는 콘텐츠 제공자와 사용자 인터페이스를 제공하는 서비스 제공자가 서로 다른 경우, 리소스의 재활용 및 관리를 용이하게 할 수 있다.
10: 원격 사용자 인터페이스 제공 시스템
20: 통신망
30: 디바이스
100: 리소스 관리 모듈
200: 컨텍스트 관리 모듈
300: 사용자 인터페이스(UI) 콘트롤 모듈

Claims (15)

  1. 하나 이상의 리소스 및 상기 하나 이상의 리소스와 사용자 페이지 간의 관계를 정의하는 리소스 관리 모듈;
    사용자 관련 정보인 사용자 컨텍스트를 수집하여 관리하는 컨텍스트 관리 모듈; 및
    사용자 요청에 대응하여, 상기 리소스 관리 모듈 및 상기 컨텍스트 관리 모듈로부터 사용자 페이지의 구성에 필요한 사용자 컨텍스트 및 리소스를 수집하고, 사용자 컨텍스트에 따라서 수집된 리소스를 결합하여 상기 사용자 요청에 대응하는 사용자 페이지를 구성하는 UI 콘트롤 모듈을 포함하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 시스템.
  2. 제1항에 있어서,
    상기 사용자 페이지는 사용자가 인지할 수 있는 물리적 사용자 인터페이스의 독립적 단위인 아이템을 하나 이상 포함하여 이루어지고,
    상기 아이템은 리소스 및 상기 리소스의 선택 여부의 기준이 되는 조건 정보를 포함하는 콤포넌트를 하나 이상 포함하여 이루어지는 것을 특징으로 하는 원격 사용자 인터페이스 제공 시스템.
  3. 제1항에 있어서, 상기 리소스 관리 모듈은
    요청에 따라서 하나 이상의 리소스를 등록하고, 등록된 리소스를 관리할 수 있도록 지원하는 리소스 콘트롤 매니저;
    요청에 따라서, 상기 하나 이상의 리소스와 하나 이상의 사용자 페이지 간의 관계를 기술하고 구조화하는 UI 콘트롤 매니저;
    상기 리소스 콘트롤 매니저에 의하여 등록된 하나 이상의 리소스를 저장하는 리소스 DB; 및
    상기 UI 콘트롤 매니저에 의해 기술된 하나 이상의 리소스와 하나 이상의 사용자 페이지와의 관계를 저장하는 관계 DB;
    를 포함하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 시스템.
  4. 제3항에 있어서, 상기 UI 콘트롤 매니저는
    사용자 페이지와 상기 사용자 페이지에 포함된 아이템의 관계를 기술하는 아이템-페이지 매니저;
    상기 아이템과 상기 아이템에 포함된 콤포넌트의 관계를 기술하는 콤포넌트-아이템 매니저;
    상기 콤포넌트와 상기 콤포넌트에 포함된 리소스의 관계를 기술하는 리소스-콤포넌트 매니저;
    상기 콤포넌트와 상기 콤포넌트에 설정된 컨텍스트의 관계를 기술하는 컨텍스트-콤포넌트 매니저를 포함하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 시스템.
  5. 제1항에 있어서, 상기 컨텍스트 관리 모듈은
    사용자 컨텍스트를 수집하여 기술하는 컨텍스트 매니저; 및
    상기 컨텍스트 매니저에 의해 기술된 사용자 컨텍스트를 저장하는 컨텍스트 DB를 포함하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 시스템.
  6. 제1항에 있어서, 상기 UI 콘트롤 모듈은
    요청된 사용자 페이지를 구성하기 위해 필요한 사용자 컨텍스트 및 리소스를 수집하고, 사용자 컨텍스트에 따라서 수집된 리소스를 선택 결합하여 상기 사용자 요청에 대응하는 사용자 페이지를 구성하는 오거나이저;
    상기 오거나이저에 의하여 구성된 사용자 페이지를 랜더링할 수 있도록 재가공하는 전처리기; 및
    상기 사용자의 요청을 수신하여 상기 오거나이저로 전달하고, 상기 전처리기로부터 재가공된 사용자 페이지를 상기 사용자의 요청에 대응하여 전송하는 리퀘스트 핸들러를 포함하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 시스템.
  7. 제6항에 있어서, 상기 UI 콘트롤 모듈은
    상기 요청된 사용자 페이지의 구성에 필요한 컨텍스트를 분석하여 상기 오거나이저로 제공하는 페이지 분석기를 더 포함하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 시스템.
  8. 제6항에 있어서, 상기 UI 콘트롤 모듈은
    사용자 식별 정보를 기반으로 상기 오거나이저로부터 요청된 사용자의 사용자 컨텍스트를 검색하여 상기 오거나이저로 제공하는 사용자 컨텍스트 검색기를 더 포함하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 시스템.
  9. 제4항에 있어서, 상기 전처리기는
    레이아웃 구조화 정보, 디자인 정보 및 레이아웃 처리를 위한 기능 함수를 포함하여 사용자 페이지를 구성하기 위한 템플릿을 정의하는 서비스 인스턴스 라이브러리; 및
    상기 서비스 인스턴스 라이브러리를 참조하여, 상기 오거나이저에서 구성된 사용자 페이지를 랜더링할 수 있도록, 상기 사용자 페이지에 포함된 리소스를 필터링 및 재가공하는 리소스 리패키징 모듈;
    을 포함하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 시스템.
  10. 제1항에 있어서,
    원격 사용자 인터페이스를 위해 사용자 식별 정보 및 사용자 페이지의 식별 정보를 포함하는 사용자 요청을 전송하고, 상기 사용자 요청에 대응하는 사용자 페이지를 수신하는 서비스 클라이언트; 및
    상기 서비스 클라이언트로부터 전송된 사용자 요청을 상기 UI 콘트롤 모듈로 전달하고, 이후 상기 UI 콘트롤 모듈로부터 출력된 사용자 페이지를 상기 서비스 클라이언트로 전송하는 서비스 매니저를 더 포함하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 시스템.
  11. 사용자 식별 정보 및 사용자 페이지의 식별 정보를 포함하는 사용자 요청을 수신하는 단계;
    상기 사용자 페이지의 식별 정보에 대응하는 사용자 페이지의 관계 정보를 참조하여, 상기 사용자 페이지를 구성하는데 필요한 사용자 컨텍스트를 수집하는 단계;
    상기 수집한 사용자 컨텍스트 및 해당 사용자 페이지의 관계 정보를 참조하여, 사용자 상황에 맞는 리소스를 추출하는 단계;
    상기 추출한 리소스를 결합하여 상기 사용자 페이지를 구성하는 단계; 및
    상기 구성된 사용자 페이지를 디바이스로 제공하는 단계를 포함하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 방법.
  12. 제11항에 있어서,
    상기 사용자 페이지는 사용자가 인지할 수 있는 물리적 사용자 인터페이스의 독립적 단위인 아이템을 하나 이상 포함하여 이루어지고, 상기 아이템은 리소스 및 상기 리소스의 선택 여부의 기준이 되는 조건 정보로 이루어진 콤포넌트를 하나 이상 포함하여 이루어지는 것을 특징으로 하는 원격 사용자 인터페이스 제공 방법.
  13. 제11항에 있어서,
    랜더링할 수 있도록 상기 구성된 사용자 페이지의 리소스를 재가공하는 단계를 더 포함하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 방법.
  14. 제11항에 있어서,
    상기 사용자 페이지의 식별정보를 기준으로, 상기 사용자 페이지와 리소스의 관계를 분석하여, 상기 사용자 페이지에 포함된 콤포넌트에서 요구되는 컨텍스트의 식별 정보를 확인하는 단계를 더 포함하고,
    상기 사용자 컨텍스트를 수집하는 단계는, 상기 확인된 컨텍스트 및 사용자 식별 정보를 참조하여, 상기 사용자 컨텍스트를 수집하는 것을 특징으로 하는 원격 사용자 인터페이스 제공 방법.
  15. 제11항 내지 제14항 중 어느 한 항에 기재된 원격 사용자 인터페이스 제공 방법을 실행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.
KR1020130162620A 2013-12-24 2013-12-24 원격 사용자 인터페이스 제공 시스템 및 그의 원격 사용자 인터페이스 제공 방법 KR101557835B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130162620A KR101557835B1 (ko) 2013-12-24 2013-12-24 원격 사용자 인터페이스 제공 시스템 및 그의 원격 사용자 인터페이스 제공 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130162620A KR101557835B1 (ko) 2013-12-24 2013-12-24 원격 사용자 인터페이스 제공 시스템 및 그의 원격 사용자 인터페이스 제공 방법

Publications (2)

Publication Number Publication Date
KR20150075171A true KR20150075171A (ko) 2015-07-03
KR101557835B1 KR101557835B1 (ko) 2015-10-07

Family

ID=53788226

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130162620A KR101557835B1 (ko) 2013-12-24 2013-12-24 원격 사용자 인터페이스 제공 시스템 및 그의 원격 사용자 인터페이스 제공 방법

Country Status (1)

Country Link
KR (1) KR101557835B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101944022B1 (ko) * 2018-07-04 2019-04-17 한국건설기술연구원 시설물 에너지 관리를 위한 bim-bems 연계 장치 및 방법
CN109656556A (zh) * 2018-12-13 2019-04-19 中国银行股份有限公司 一种自适应页面的生成方法及装置
KR20220019602A (ko) * 2020-08-10 2022-02-17 쿠팡 주식회사 프로그램 인터페이스 원격 관리 및 프로비저닝

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11832614B1 (en) 2023-04-28 2023-12-05 King Faisal University Method of inhibiting mycotoxin growth using Arthrospira platensis nanoparticles

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7500197B2 (en) * 2001-04-10 2009-03-03 Hewlett-Packard Development Company, L.P. Extensible user interface
JP4898581B2 (ja) 2007-07-12 2012-03-14 株式会社日立製作所 ユーザインターフェース方法、表示装置、および、ユーザインターフェースシステム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101944022B1 (ko) * 2018-07-04 2019-04-17 한국건설기술연구원 시설물 에너지 관리를 위한 bim-bems 연계 장치 및 방법
CN109656556A (zh) * 2018-12-13 2019-04-19 中国银行股份有限公司 一种自适应页面的生成方法及装置
CN109656556B (zh) * 2018-12-13 2022-05-27 中国银行股份有限公司 一种自适应页面的生成方法及装置
KR20220019602A (ko) * 2020-08-10 2022-02-17 쿠팡 주식회사 프로그램 인터페이스 원격 관리 및 프로비저닝

Also Published As

Publication number Publication date
KR101557835B1 (ko) 2015-10-07

Similar Documents

Publication Publication Date Title
US9947025B2 (en) Method and apparatus for providing search capability and targeted advertising for audio, image, and video content over the internet
CN109863527B (zh) 用于展现的本地内容的服务器侧渲染的方法和系统
US9813479B2 (en) Browser with video display history
US8909617B2 (en) Semantic matching by content analysis
US8935798B1 (en) Automatically enabling private browsing of a web page, and applications thereof
EP2999228B1 (en) Mobile device, image reproducing device and server for providing relevant information about image captured by image reproducing device, and method thereof
US10515142B2 (en) Method and apparatus for extracting webpage information
US8799252B2 (en) Method and apparatus for collecting and providing information of interest to user regarding multimedia content
EP2936336B1 (en) Method and apparatus for metadata directed dynamic and personal data curation
US20150242538A1 (en) Method and system for developing applications for consulting content and services on a telecommunications network
US10812867B2 (en) Discovering and displaying media content related to an electronic document
US10909190B2 (en) Systems, devices, and methods for providing multidimensional search results
EP3084568A1 (en) Customized contextual user interface information displays
US20170132267A1 (en) Pushing system and method based on natural information recognition, and a client end
KR20150046221A (ko) 네트워크에서 적어도 하나의 비디오 서비스 제공자의 이용자를 위해 비디오 콘텐트를 자동으로 요약하기 위한 처리
KR101557835B1 (ko) 원격 사용자 인터페이스 제공 시스템 및 그의 원격 사용자 인터페이스 제공 방법
CN104144357A (zh) 视频播放方法和系统
KR20150106479A (ko) 컨텐츠 공유 서비스 시스템, 그의 컨텐츠 공유를 위한 장치 및 컨텐츠 공유 서비스 제공 방법
CN112000823A (zh) 功能入口显示方法、电子设备及计算机可读存储介质
KR101659147B1 (ko) 정보 처리 장치, 및 그의 제어 방법
FR2898707A1 (fr) Procede, dispositif et systeme de gestion d'informations structurees au sein d'une scene graphique
US20160353176A1 (en) Contextual content programming
US11659234B1 (en) Techniques for moving content playback
CN117688999A (zh) 排序模型的训练的方法、搜索方法、装置及其设备
KR102178820B1 (ko) 광고 표시 시스템 및 그 방법, 그리고 이에 적용되는 장치

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

Payment date: 20180627

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190806

Year of fee payment: 5