KR20100048965A - 웹 기반 사용자 인터페이스 구현 장치 및 그 방법 - Google Patents

웹 기반 사용자 인터페이스 구현 장치 및 그 방법 Download PDF

Info

Publication number
KR20100048965A
KR20100048965A KR1020100022146A KR20100022146A KR20100048965A KR 20100048965 A KR20100048965 A KR 20100048965A KR 1020100022146 A KR1020100022146 A KR 1020100022146A KR 20100022146 A KR20100022146 A KR 20100022146A KR 20100048965 A KR20100048965 A KR 20100048965A
Authority
KR
South Korea
Prior art keywords
program
manager
script
server
information
Prior art date
Application number
KR1020100022146A
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 블루가 (주)
Priority to KR1020100022146A priority Critical patent/KR20100048965A/ko
Publication of KR20100048965A publication Critical patent/KR20100048965A/ko
Priority to PCT/KR2010/008814 priority patent/WO2011111926A2/ko
Priority to CN2010800587044A priority patent/CN102667751A/zh
Priority to JP2012545841A priority patent/JP2013515315A/ja
Priority to US13/142,254 priority patent/US20120324376A1/en
Priority to KR1020100125604A priority patent/KR101148043B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • 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
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • 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]
    • 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]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • 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]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 발명은 통신망에 연결된 단말기에 대하여 웹 기반의 사용자 인터페이스를 구현하는 장치 및 그 방법에 관한 것으로, 본 발명에 의한 웹 기반 사용자 인터페이스 구현 장치는, 통신 단말기에 구비되고, 프로그램 서버에서 스크립트 프로그램을 수신하여 플랫폼 라이브러리와 함께 실행시키는 스크립트 실행 계층; 통신 단말기에 구비되고, 그래픽 사용자 인터페이스, 화면 재배치, 컨텍스트 관리, 단말기 엔진 호환, 통신, 데이터 저장 및 관리, 동적 모듈 관리 및 애니메이션과 효과 중 어느 하나 이상의 기능을 스크립트 프로그램에 제공하는 플랫폼 라이브러리; 프로그램 서버에 구비되고, 스크립트 실행 계층에 의해 URL로 지정되어 통신 단말기에 다운로드 되어 실행되고, 프로그램 매니저 서버로부터 제공받은 인터페이스 구성 정보 데이터 파일에 의해 단말기 사용자 인터페이스를 구성하는 프로그램 매니저; 프로그램 서버에 구비되고, 사용자별로 통신 단말기의 인터페이스 구성 정보를 관리하고, 프로그램 매니저의 요청에 의해 인터페이스 구성 정보 데이터 파일을 제공하는 프로그램 매니저 서버; 및 프로그램 서버에 구비되고, 스크립트와 플랫폼 라이브러리를 사용하여 작성된 스크립트 프로그램;을 포함하여 구성된다.

Description

웹 기반 사용자 인터페이스 구현 장치 및 그 방법{Apparatus for implementing a web-based user interface and method thereof}
본 발명은 통신망에 연결된 단말기에 대하여 웹 기반의 사용자 인터페이스를 구현하는 장치 및 그 방법에 관한 것이다.
종래의 기술은 단말기 운영체제(OS : Operating Systems) 위에 사용자 인터페이스 계층 소트프웨어를 설치하고, 그 위에 프로그램 매니저 소프트웨어를 설치하여, 이 프로그램 매니저가 응용 프로그램을 기동시키는 기능을 수행함으로써 사용자에게 단말기 사용자 인터페이스를 제공했다.
사용자 인터페이스의 구조는 통상적으로 계층적 메뉴나 아이콘의 방식으로 구성이 되며 메뉴의 종단과 아이콘은 해당 응용 프로그램을 실행시키는 링크로 구성이 되어서, 이것을 선택하면 해당 프로그램이 실행되도록 구성한다. 또한 사용자의 개인화 욕구를 지원하기 위해서 몇 가지 템플릿을 미리 단말기 메모리에 제공하여 선택할 수 있도록 하는 단말기도 있다. 또한, 일부 범용 OS 단말기는 프로그램 매니저의 화면 구조, 아이콘, 배경, 이미지들을 다양하게 수정할 수 있는 기능을 제공하는 것도 있다.
이러한 종래 기술의 문제점은, 통신 단말기의 출시와 함께 프로그램 매니저가 단말기에 고정이 되어서, 사용자 입장에서 사용자는 단말기가 제공하는 이상의 기능은 사용할 수가 없다는 것이다. 따라서, 출시된 단말기는 사용자 인터페이스가 고정된 상태이며, 사전에 구현된 제한된 기능 외에는 사용자 인터페이스에 다양성을 줄 수가 없었으며 동적으로 다양하게 변화하는 화면 구성을 할 수가 없다.
또한, 단말기 개발사의 입장에서 각 출시 단말기마다 이러한 사용자 인터페이스 프로그램을 각각 이식, 개발, 시험 및 설치를 해야 하며, 다수 모델의 단말기에 대해서 유사한 작업을 반복적으로 실행해야 한다. 결과적으로 각각을 개별적으로 유지 및 보수를 실행해야 한다. 다른 문제점은 이미 출시된 단말기의 사용자 인터페이스 프로그램에 결함이 발견이 되어도 사용자 단말기를 수거하여 재설치하는 방법 외에는, 기능 추가, 개선 및 교체가 사실상 어렵다는 점이다. 따라서, 신규 모델에 훨씬 개선된 인터페이스가 탑재된다고 해도 구형 모델의 사용자는 기존 사용자 인터페이스를 그대로 사용해야 하는 문제점이 있다.
마지막으로, 통신 사업자 관점에서, 단말기 제조사별, 단말기의 출시 년도에 따라 서로 사업자 단말기들이 다른 인터페이스를 가지고 있게 되어, 통일된 인터페이스의 제공이 어려우며, 기존 단말기의 인터페이스 수정이 불가능하다.
본 발명은 상기의 문제점들을 해결하기 위하여 창안된 것으로, 통신 단말기의 사용자 인터페이스 전체가 프로그램 서버를 통해서 제어되는 웹 사이트로 구성되어 동적으로 다양하게 변화하는 화면 구성을 할 수 있고, 사용자 인터페이스를 구성하는 스크립트 프로그램은 별도의 설치 없이 서버에서 다운로드가 되어 통신 단말기에서 바로 실행될 수 있으며, 포탈 사이트의 서비스를 통신 단말기의 기본 사용자 인터페이스로 사용할 수 있고, 스트립트 프로그램 뿐만 아니라 통신 단말기에 설치된 일반 바이너리 프로그램에 대한 매니저 기능도 하나의 인터페이스로 제공할 수 있는 웹 기반 사용자 인터페이스 구현 장치 및 그 방법을 제공함을 목적으로 한다.
상기의 목적들을 달성하기 위하여, 본 발명에 의한 웹 기반 사용자 인터페이스 구현 장치는, 통신 단말기에 구비되고, 프로그램 서버에서 스크립트 프로그램을 수신하여 플랫폼 라이브러리와 함께 실행시키는 스크립트 실행 계층; 통신 단말기에 구비되고, 그래픽 사용자 인터페이스, 화면 재배치, 컨텍스트 관리, 단말기 엔진 호환, 통신, 데이터 저장 및 관리, 동적 모듈 관리 및 애니메이션과 효과 중 어느 하나 이상의 기능을 스크립트 프로그램에 제공하는 플랫폼 라이브러리; 프로그램 서버에 구비되고, 스크립트 실행 계층에 의해 URL로 지정되어 통신 단말기에 다운로드 되어 실행되고, 프로그램 매니저 서버로부터 제공받은 인터페이스 구성 정보 데이터 파일에 의해 단말기 사용자 인터페이스를 구성하는 프로그램 매니저; 프로그램 서버에 구비되고, 사용자별로 통신 단말기의 인터페이스 구성 정보를 관리하고, 프로그램 매니저의 요청에 의해 인터페이스 구성 정보 데이터 파일을 제공하는 프로그램 매니저 서버; 및 프로그램 서버에 구비되고, 스크립트와 플랫폼 라이브러리를 사용하여 작성된 스크립트 프로그램;을 포함하여 구성된다.
상기의 목적을 달성하기 위하여, 본 발명에 의한 웹 기반 사용자 인터페이스 화면 구성 방법은, (a) 통신 단말기의 스크립트 실행 계층이 실행되고, URL에 의해 프로그램 서버의 프로그램 매니저가 다운로드 되는 단계; (b) 프로그램 매니저 서버가 프로그램 매니저의 요청에 의해 통신 단말기에 대응하는 고객 설정 정보에 의해 인터페이스 구성 정보 데이터 파일을 생성하되, 고객 설정 정보가 없는 경우에는 기본 템플릿에 의해 고객 설정 정보를 미리 구성하고, 생성된 인터페이스 구성 정보 데이터 파일을 프로그램 매니저에 제공하는 단계; (c) 프로그램 매니저가 인터페이스 구성 정보 데이터 파일을 분석하여 통신 단말기에 사용자 인터페이스를 구성하는 단계; 및 (d) 프로그램 매니저가 인터페이스 구성 정보 데이터 파일에 포함된 동적 실행 정보를 분석하여 "실행" 상태인 프로그램의 URL에 접속하여, 해당 스크립트 프로그램을 다운로드하여 실행하는 단계;를 포함하여 구성된다.
상기의 목적을 달성하기 위하여, 본 발명에 의한 웹 기반 사용자 인터페이스에서의 프로그램 관리 방법은, (a) 웹 기반 사용자 인터페이스에서 사용자로부터 프로그램을 선택받는 단계; (b) 프로그램 매니저가 프로그램의 링크 정보를 통해 프로그램의 종류를 판별하는 단계; (c) 프로그램의 종류가 스크립트 프로그램이면, 프로그램의 URL에 접속하여 해당 스크립트 프로그램을 다운로드하여 실행하되, 사용자의 프로그램 전환에 의하여 비활성화되었던 프로그램인 경우에는 통신 단말기의 임시 저장소에 저장된 스크립트 프로그램을 바로 실행하는 단계; 및 (d) 프로그램 종류가 일반 바이너리 프로그램이면, 운영체제에 의해 해당 프로그램을 실행하되, 스크립트 실행 계층의 일반 프로그램 매니저가 운영체제의 시스템 호출을 사용하여 프로그램의 실행 상태를 프로그램 매니저에게 제공함으로써 프로그램 매니저가 일반 바이너리 프로그램의 상태를 관리하는 단계;를 포함하여 구성된다.
상기 웹 기반 사용자 인터페이스에서의 프로그램 관리 방법에 있어서, 상기 (c) 단계에서 스크립트 프로그램이 컨텍스트 관리 기능을 구비하면, (c1) 해당 스크립트 프로그램의 실행 직후, 플랫폼 라이브러리가 관리하는 해당 스크립트 프로그램의 컨텍스트를 로딩하는 단계; 및 (c2) 해당 스크립트 프로그램의 실행 결과에 의한 화면 및 데이터의 변화를 해당 스크립트 프로그램의 컨텍스트에 저장하는 단계;를 더 구비함을 특징으로 한다.
상기의 목적을 달성하기 위하여, 웹 기반 사용자 인터페이스에 프로그램 추가 방법의 일 측면은, (a) 프로그램 매니저가 사용자로부터 프로그램 추가 기능을 선택받는 단계; (b) 프로그램 매니저에 의해 설정 프로그램이 통신 단말기에 다운로드 되어 실행되고, 설정 프로그램이 스크립트 사용 계층의 일반 프로그램 매니저로부터 일반 바이너리 프로그램 목록을 제공받고, 프로그램 매니저 서버로부터 사용자가 사용가능한 스크립트 프로그램과 일반 바이너리 프로그램 목록을 제공받는 단계; (c) 사용자가 추가하는 프로그램이 통신 단말기에 설치된 일반 바이너리 프로그램인 경우, (c1) 설정 프로그램은 일반 프로그램 매니저로부터 해당 프로그램의 프로그램 정보를 수신하여 해당 프로그램을 추가할 화면 위치 정보와 함께 프로그램 매니저 서버에 전달하여 등록을 요청하는 단계; (c2) 프로그램 매니저 서버가 고객 설정 정보에 프로그램 정보와 화면 위치 정보를 등록하고, 변경된 고객 설정 정보에 의한 인터페이스 구성 정보 데이터 파일을 생성하여 프로그램 매니저에 전달하는 단계; 및 (c3) 프로그램 매니저가 인터페이스 구성 정보 데이터 파일을 분석하여 등록된 프로그램의 아이콘과 정보를 표시하는 단계;를 포함하여 구성된다.
상기의 목적을 달성하기 위하여, 웹 기반 사용자 인터페이스에 프로그램 추가 방법의 다른 측면은, (a) 프로그램 매니저가 사용자로부터 프로그램 추가 기능을 선택받는 단계; (b) 프로그램 매니저에 의해 설정 프로그램이 통신 단말기에 다운로드 되어 실행되고, 설정 프로그램이 스크립트 사용 계층의 일반 프로그램 매니저로부터 사용자가 설치한 일반 프로그램 목록을 제공받고, 프로그램 매니저 서버로부터 사용자가 사용가능한 스크립트 프로그램과 일반 바이너리 프로그램 목록을 제공받는 단계; (c) 사용자가 추가하는 프로그램이 프로그램 서버에 있는 스크립트 프로그램인 경우, (c1) 설정 프로그램은 해당 프로그램의 프로그램 ID와 해당 프로그램을 추가할 화면 위치 정보와 함께 프로그램 매니저 서버에 전달하여 등록을 요청하는 단계; (c2) 프로그램 매니저 서버가 고객 설정 정보에 프로그램 ID에 대응하는 프로그램 정보와 화면 위치 정보를 등록하고, 변경된 고객 설정 정보에 의한 인터페이스 구성 정보 데이터 파일을 생성하여 프로그램 매니저에 전달하는 단계; 및 (c3) 프로그램 매니저가 인터페이스 구성 정보 데이터 파일을 분석하여 등록된 프로그램의 아이콘과 정보를 표시하는 단계;를 포함하여 구성된다.
상기의 목적을 달성하기 위하여, 웹 기반 사용자 인터페이스에 프로그램 추가 방법의 또 다른 측면은, (a) 프로그램 매니저가 사용자로부터 프로그램 추가 기능을 선택받는 단계; (b) 프로그램 매니저에 의해 설정 프로그램이 통신 단말기에 다운로드 되어 실행되고, 설정 프로그램이 스크립트 사용 계층의 일반 프로그램 매니저로부터 사용자가 설치한 일반 프로그램 목록을 제공받고, 프로그램 매니저 서버로부터 사용자가 사용가능한 스크립트 프로그램과 일반 바이너리 프로그램 목록을 제공받는 단계; (c) 사용자가 추가하는 프로그램이 프로그램 서버에 있는 일반 바이너리 프로그램인 경우, (c1) 설정 프로그램은 해당 프로그램의 프로그램 ID와 해당 프로그램을 추가할 화면 위치 정보와 함께 프로그램 매니저 서버에 전달하여 등록을 요청하는 단계; (c2) 프로그램 매니저 서버가 고객 설정 정보에 프로그램 ID에 대응하는 프로그램 정보와 화면 위치 정보를 등록하는 단계; (c3) 일반 프로그램 매니저가 일반 바이너리 프로그램의 설치 파일을 다운로드 받아 통신 단말기에 일반 바이너리 프로그램을 설치하는 단계; (c4) 프로그램 매니저 서버가 변경된 고객 설정 정보에 의한 인터페이스 구성 정보 데이터 파일을 생성하여 프로그램 매니저에 전달하는 단계; 및 (c5) 프로그램 매니저가 인터페이스 구성 정보 데이터 파일을 분석하여 등록된 프로그램의 아이콘과 정보를 표시하는 단계;를 포함하여 구성된다.
본 발명은 통신 단말기의 각 사용자 인터페이스 소프트웨어 계층을 각 단말기에서만 실행될 수 있는 바이너리 코드 형태로 제작하지 않고, 표준적 스크립트를 사용하여 사용자 인터페이스를 구성할 수 있는 사용자 인터페이스 소프트웨어 계층을 제공한다. 따라서, 이 소프트웨어를 탑재한 단말기는 기종에 관계없이 본 발명의 사용자 인터페이스를 구동할 수 있게 된다.
본 발명의 플랫폼 라이브러리는 표준화된 웹 기반 자바스크립트로 개발된 사용자 인터페이스 플랫폼으로, 사용자 그래픽 인터페이스, 데이터 관리, OS 기능, 서버 연동 등의 기능을 제공하여, 스크립트를 사용하여 애플리케이션 소프트웨어의 개발을 가능하게 해준다. 따라서 플랫폼 라이브러리를 사용하여 개발된 스크립트 프로그램은 별도의 설치 없이 서버에서 다운로드가 되어 단말기에서 바로 실행됨으로써, 언제든지 프로그램을 개선할 수가 있다.
또한, 본 발명은 단말기 사용자 인터페이스 전체를 이러한 스크립트 프로그램으로 제작한 것이다. 따라서 사용자의 단말기 인터페이스 구성과 인터페이스를 구동하기 위한 프로그램 그 자체가 서버에서 다운로드가 되어서 단말기로 설치된다. 따라서 본 발명의 플랫폼 라이브러리는 자바스크립트로 구현되어 HTML, CSS와 자바스크립트와 동작하므로 기술적으로 기술하면 통신 단말기의 사용자 인터페이스 전체가 프로그램 서버를 통해서 제어되는 웹 사이트로 구성된 것이다. 즉, 단말기의 사용자 인터페이스 전체가 웹 사이트로 구성되며 단말기의 주요 프로그램도 웹 사이트로 구성되게 된다.
따라서, 사용자는 단말기의 사용자 인터페이스를 완전히 다른 모양으로 개인화하거나 프로그램 매니저의 기능 자체를 즉시 교체할 수가 있게 되며, 교체 통신 단말기 또는 인터넷에 접속된 PC를 사용하여 자신의 통신 단말기의 화면을 그대로 재현할 수 있으며, 주소록, 문자메시지, 사진 등의 개인 정보를 조회 및 수정할 수 있게 된다.
통신 사업자의 관점에서, 본 발명을 사용하여 사용자의 단말기 인터페이스 및 통신 프로그램의 디자인, 개발을 동적 관리함으로써 사업자의 전체 단말기의 사용자 인터페이스를 일관되게 유지할 수 있게 된다. 또한, 통신 사업자는 일반적으로 자사의 포탈 사이트를 통해서 다양한 서비스를 제공하는데, 이러한 포탈 사이트의 서비스들은 웹 기반이므로 본 발명의 프로그램 매니저에 연동하여 포탈 사이트의 서비스를 사용자의 통신 단말기의 기본 사용자 인터페이스로 사용할 수 있게 된다. 즉, 사업자의 포탈 사이트가 사용자 단말기의 인터페이스 중심이 되는 것이다.
또한, 본 발명의 중요한 특징의 하나는 본 발명의 프로그램 매니저는 웹 기술로 구현된 인터넷 사이트나 스트립트 프로그램 뿐만 아니라 통신 단말기에 설치된 일반 바이너리 프로그램에 대한 매니저 기능도 하나의 인터페이스로 제공한다는 것이다. 따라서, 프로그램 매니저가 프로그램 서버와 연동하여 웹 기술로 동작하고 있다는 것을 사용자는 인식하지 못하고 모든 종류의 프로그램을 동일한 프로그램 매니저로 관리할 수 있게 된다.
도 1은 본 발명에 의한 웹 기반 사용자 인터페이스 구현 장치의 전체 모듈 구성과 연동 관계를 나타낸 도면이고,
도 2는 스크립트 실행 계층의 내부 구조를 도시한 것이고,
도 3은 통신 단말기가 기동된 후에 사용자의 인터페이스 화면을 통신 단말기의 디스플레이에 출력하는 절차를 도시한 것이고,
도 4는 도 3의 S117 단계의 일부분으로, 스크립트 프로그램을 사용자 인터페이스 화면에서 동적으로 실행하는 절차를 도시한 것이고,
도 5 프로그램 매니저에서 스크립트 프로그램을 실행하는 절차를 도시한 것이고,
도 6은 프로그램 매니저에서 스크립트 프로그램을 실행하는 절차로서, 여러 스크립트 프로그램을 동시에 실행하기 위해서 단말기 OS의 프로그램 관리 정책을 그대로 활용하는 방식을 도시한 것이고,
도 7은 프로그램 매니저에서 일반 바이너리 프로그램을 실행하는 절차를 도시한 것이고,
도 8은 통신 단말기에 설치해 놓은 일반 바이너리 프로그램을 사용자 인터페이스 화면에 추가하는 절차를 도시한 것이고,
도 9는 프로그램 서버에 있는 프로그램 중에서 스크립트 프로그램을 사용자 인터페이스 화면에 추가하는 절차를 도시한 것이고,
도 10은 프로그램 서버에 있는 프로그램 중에서 일반 바이너리 프로그램을 사용자 인터페이스 화면에 추가하는 절차를 도시한 것이고,
도 11은 플랫폼 라이브러리의 컨텍스트 관리 기능을 설명하기 위한 도면이다.
먼저, 이하의 설명에서 사용되는 용어들을 다음과 같이 정의한다.
◆ 통신 단말기 - 데이터통신망에 접속이 되어 있는 통신용 단말기이며, 전용 OS 또는 범용 OS를 가지고 있으며, 웹 브라우저 모듈의 실행이 가능한 단말기이다. 대부분의 이동통신용 단말기가 여기에 해당하며 일부 유선 통신 단말기도 이에 해당된다.
◆ HTML ­ Hyper-Text Markup Language
◆ CSS ­ Cascading Style Sheet
◆ DOM - Document Object Model
◆ HTTP ­ Hyper-Text Transfer Protocol
◆ 자바스크립트 ­ 웹 기반 브라우저에서 대부분 제공되는 스크립트 언어로서, DOM과 CSS를 통해서 웹 사이트를 제어할 수 있다.
◆ 웹 브라우저 핵심 모듈 ­ 본 발명에서 정의한 용어로 웹 브라우저의 핵심 기능이 되는 HTML(Hypertext Markup Language), CSS, DOM, 자바스크립트 엔지, HTTP 통신 모듈을 지칭한다.
◆ 컨텍스트 ­ 프로그램/프로세스의 실행 상태 정보를 나타낸다. 실행이 중지된 프로그램이 이 정보를 분석하여 원래의 실행 상태로 복귀한다.
◆ 템플릿 ­ 일반적으로 스타일, 스킨으로 지칭되며, 인터페이스의 형태를 일괄적으로 정의하기 위한, 색상, 형태, 이미지, 동영상, 음향 파일의 집합 데이터를 지칭한다.
◆ 사용자 인터페이스 화면 ­ 사용자가 통신 단말기를 사용하기 위한 메뉴, 프로그램 아이콘, 전화 걸기 등 시스템 프로그램, 설정 프로그램 등으로 모두 지칭한다.
◆ 사용자UX ­ UX는 User Experience의 약자이며 사용자 인터페이스와 동일한 뜻으로 사용된다.
◆ 사용자UX 모듈 ­ GUI(Graphic User Interface)의 화면을 구성하기 위한 각 요소를 나타낸다. 즉, 윈도우, 리스트, 입력 컨트롤, 이미지 뷰어 등의 각 요소를 지칭한다.
◆ 문자메시지, 문자서비스 ­ Short Message Service
◆ 일반 바이너리 프로그램 ­ 본 발명에서 사용하는 용어로써 단말기 OS의 기계어 코드 또는 자바 VM 코드로 컴파일 되어 실행되는 일반적 프로그램들을 지칭한다.
◆ 스크립트 프로그램 ­ 본 발명에서 정의한 용어로써 HTML, CSS, 자바스크립트를 사용하여 구성된 사이트나 프로그램을 지칭하는 것이며, 부가적으로 이미지, 동영상, 음향 정보 등이 포함된다.
◆ 임시 저장소/캐시/캐싱/Caching ­ 일반적인 컴퓨터 기법으로써 변경되지 않고 자주 사용되는 데이터를 보다 빠른 저장소에 임시로 저장하여 사용하는 기법을 말한다.
이하에서는 첨부도면을 참조하여 본 발명에 대해 상세히 설명한다.
도 1은 본 발명에 의한 웹 기반 사용자 인터페이스 구현 장치의 전체 모듈 구성과 연동 관계를 나타낸 것이다. 도 1에서 음영으로 표시된 부분이 본 발명을 구성하는 모듈이며, 점선으로 표시된 부분은 프로그램 서버(3)의 모듈이 통신 단말기(1)에 임시로 저장될 수 있는 경우(Caching)를 나타낸 것이다.
통신 단말기(1)는 데이터 통신망에 접속이 되어 있는 통신용 단말기이며, 전용 OS 또는 범용 OS(11)를 가지고 있으며 웹 브라우저 모듈의 실행이 가능한 단말기이다. 대부분의 이동통신용 단말기가 여기에 해당하며 일부 유선 통신 단말기도 이에 해당된다.
스크립트 실행 계층(13)은 통신과 스크립트의 실행을 담당한다. 현재의 범용 기술 표준으로 HTML, CSS와 자바스크립트를 사용하도록 개발되었으며, 통신은 HTTP를 사용하므로 표준 웹 브라우저 핵심 모듈을 포함하고 있다. 따라서, 프로그램 서버(3)에서 스크립트 프로그램(32)을 수신하여 플랫폼 라이브러리(14)와 함께 실행시키는 기능을 담당한다. 추가적으로 단말기OS(11)의 기능을 사용하기 위하여 OS 사용 계층(15)을 추가로 가지고 있으며, 일반 바이너리 프로그램(12) 관리를 위한 모듈을 가지고 있다. 이에 대해서도 도 2에서 상세히 설명하도록 한다.
플랫폼 라이브러리(14)는 스크립트 프로그램이 일반 프로그램 수준으로 동작할 수 있는 기능을 제공하기 위한 자바스크립트 라이브러리이다. 플랫폼 라이브러리(14)는 다음과 같은 라이브러리 모듈로 구성되어 있다.
◆ 그래픽 사용자UX모듈 ­ 그래픽 사용자 인터페이스 제공을 위한 윈도우(창), 메뉴, 리스트, 버튼, 이미지 앨범, 입력 컨트롤 등의 기능을 제공하는 모듈
◆ 화면 재배치 엔진 ­ 단말기의 다양한 화면 규격 차이를 고려하여 화면에 사용자 인터페이스를 재배치하는 엔진
◆ 컨텍스트 관리자 ­ 각 스크립트 프로그램(32)의 실행 상태를 저장하고, 프로그램의 기동, 재시동 정보를 관리하기 위한 모듈. 도 11에서 보다 상세히 설명하기로 한다.
◆ 단말기엔진 호환 계층 ­ 각 단말기의 기능, 규격 차이, 각 브라우저 엔진의 규격 차이를 극복하고 동일한 시스템 인터페이스를 제공하기 위한 계층
◆ 통신 모듈 ­ 다양한 방식의 서버/클라이언트 통신을 제공하기 위한 모듈
◆ 데이터저장/관리 ­ 데이터를 단말기와 서버에 저장하고 불러오기 위한 모듈
◆ 동적 모듈 관리 ­ 프로그램 또는 라이브러리를 동적으로 설치, 관리하기 위한 모듈
◆ 애니메이션/효과 ­ 각종 애니메이션과 효과를 제공하기 위한 모듈
따라서, 플랫폼 라이브러리(14)를 사용하여 스크립트 프로그램을 개발하며 이러한 스트립트 프로그램은 일반 바이너리 프로그램 수준의 사용자 인터페이스와 기능을 제공한다. 또한, 본 발명의 프로그램 매니저(33)도 플랫폼 라이브러리(14)를 사용하여 개발된 스크립트 프로그램이다.
OS 사용 계층(15)은 플랫폼 라이브러리(14)에서 단말기 시스템 기능, 즉 전화, 문자서비스, 데이터 전송, 공유 파일 접근, 개인 데이터 접근, 시스템 설정 등에 대한 기능을 제공하기 위한 인터페이스를 제공하기 위한 모듈이며, 자바스크립트를 통하여 스크립트 실행 계층(13)에서 제공된다. 구현 방법은 두 가지 방식이 가능한데, 스크립트 실행 계층(13)의 확장 모듈 형태로 설치되어 스크립트 실행 계층(13)에 포함되는 방식과 단말기 OS(11)에 따라서는 외부 모듈로 분리하고 스크립트 실행 계층(13)의 자바스크립트 엔진에서 호출하는 방식이 가능하다.
프로그램 서버(3)는 기술적으로는 웹 서버의 형태이며, 통신 단말기(1)의 사용자 인터페이스를 구성하기 위한 스크립트 프로그램(32)과 각종 서버 프로그램, 그리고 관련 데이터베이스로 구성이 되어 있으며, 통신 사업자 포탈 서버(5)와 연동하여 사용자의 단말기 인터페이스를 포탈 서비스화 하는 기능도 제공한다.
스크립트 프로그램(32)은 HTML, CSS와 자바스크립트로 구성된 사이트를 지칭하기 위한 용어로 본 발명에서 정의한다. 넓게는 HTML만 사용하는 HTML 사이트도 포함할 수 있으며, 일반적으로는 HTML, CSS와 자바스크립트를 사용하고 플랫폼라이브러리(14)를 사용하여 구성된 애플리케이션을 지칭한다. 프로그램 서버(3)에서 스크립트 프로그램(32)의 저장 방식은 두 가지 방식이 있는데, HTML, CSS와 자바스크립트 파일 형태로 관리하는 방법과 파일들을 불러오기 위한 URL만 관리하는 방식을 병행해서 사용한다. 프로그램 매니저(33)는 부가적으로 프로그램 아이콘, 위치, 제목, 설명, 카테고리, 등급의 부가적 정보를 사용자 인터페이스를 위해서 관리한다.
프로그램 매니저(33)는 스크립트 프로그램 중 하나이며, 단말기 사용자 인터페이스를 제공하기 위한 프로그램이다. 통신 단말기(1)가 기동되어 스트립트 실행 계층(13)이 실행되면 초기 URL이 프로그램 매니저(33)이며, 따라서 프로그램 매니저(33)가 실행된다. 프로그램 매니저(33)가 실행되면 프로그램 서버(3)의 프로그램 매니저 서버(34)에 접속하여 인터페이스 구성 정보 데이터 파일을 수신한다. 프로그램 매니저(33)는 데이터 파일의 정보를 분석하여 메뉴, 프로그램 아이콘, 단말기정보, 화면 구성을 표시하여 단말기 인터페이스를 완성한다. 프로그램 매니저(33)는 스크립트 프로그램(32)과 일반 바이너리 프로그램(36)을 함께 관리할 수 있으며, 스크립트 프로그램(32)의 동적 실행도 제공한다. 이 절차와 관련하여, 도 3, 도 4에서 상세히 기술한다. 또한, 사용자의 선택에 의해서 프로그램을 실행하는 기능(도 5, 도 6, 도 7)과 사용자가 새로운 프로그램을 추가하거나 메뉴를 설정하는 기능(도 8, 도 9, 도 10)을 제공한다.
프로그램 매니저 서버(34)는 프로그램 매니저(33)에 사용자의 단말기 인터페이스 구성 정보를 생성하여 전송하며 프로그램 매니저(33)의 요청에 의해서 사용자의 단말기 인터페이스 구성 정보를 추가, 수정, 삭제하는 기능을 제공한다. 프로그램 매니저 서버(34)는 웹 서버 프로그램이며, 템플릿 정보(341), 고객 설정 정보(342), 포탈서비스 정보(343) 데이터베이스를 관리/분석하여 인터페이스 구성 정보 데이터 파일을 생성하여 프로그램 매니저(33)에 제공한다. 인터페이스 구성 정보 데이터 파일에는 화면 구조, 표시 스타일, 메뉴 구성 및 위치, 프로그램 정보 및 위치, 포탈 추천 프로그램 정보 등이 포함되어 있다.
설정 프로그램(35)은 스크립트 프로그램이며 사용자 인터페이스의 설정 기능 화면을 제공한다. 즉, 프로그램의 추가, 삭제, 설정, 화면 스타일의 설정, 메뉴의 설정 기능을 제공한다. 프로그램 매니저(33)에서 설정 기능을 선택하면, 프로그램 매니저(33)는 설정 프로그램(35)으로 URL을 전환하여 설정 프로그램(35)이 실행되도록 한다. 설정 프로그램(35)은 프로그램 매니저 서버(34)와 연동하여 설정 데이터를 전송해 주면, 프로그램 매니저 서버(34)는 사용자가 수정한 정보를 데이터베이스에 저장한다.
일반 바이너리 프로그램(12, 36)은 단말기 OS(11)에서 바이너리 형태로 동작하는 일반적 프로그램을 지칭한다. 일반 바이너리 프로그램(12, 36)은 사용자가 통신 단말기(1)에 이미 설치하고 프로그램 매니저(33)에 등록할 수도 있고, 또는 프로그램 매니저(33)를 통해서 프로그램 서버(3)에 있는 것을 통신 단말기(1)로 다운로드하여 등록할 수 있다. 이러한 절차는 프로그램 매니저(33)가 일반 바이너리 프로그램(12, 36)도 함께 관리함으로써 단일 사용자 인터페이스를 제공하기 위한 것이다. 통신 단말기(1)에서 등록 절차는 도 8에, 프로그램 서버(3)에서 등록 절차는 도 9, 도 10에 기술되어 있다.
시스템 스크립트는 스크립트 프로그램 중에서 전화 걸기, 문자메시지 전송, 개인 정보 관리와 같이 단말기 시스템 주요 기능을 제공하는 스크립트 프로그램을 지칭한다. 프로그램 서버(3)는 이러한 프로그램을 위해서 시스템 스트립트 서버(37)를 제공한다. 시스템 스트립트 서버(37)는 시스템 스크립트들이 고객 개인 정보(371)를 서버로 동기화하여 저장할 수 있는 기능을 제공함으로써 사용자 정보의 백업 기능과 함께 사용자가 인터넷(7)을 통하여 프로그램 서버(3)에 접속하여 자신의 단말기 사용자 화면을 그대로 보면서 개인 정보를 조회하고, 일부 통신 기능을 사용할 수 있도록 하기 위한 것이다. 이러한 기능은 본 발명이 표준 웹 기술로 구현하였으므로 가능하게 된 것이며, 도 1에서 c 인터페이스에 표시되어 있다.
본 발명에서는 단말기 사용자 인터페이스 구성을 위한 단말기의 구성 화면, 아이콘, 색상, 이미지, 영상, 음향, 프로그램 구성에 대한 정보를 템플릿 정보(341)로 정의하고 다양한 템플릿을 제공한다. 본 발명에서는 템플릿을 무제한으로 제공 가능하며 지속적으로 새로운 템플릿을 제공하는 것이 가능하다. 또한, 프로그램 매니저(33)의 기능 개선과 더불어서 템플릿 기능도 개선할 수 있다.
본 발명에서는 모든 사용자의 단말기 사용자 인터페이스 구성 화면이 고객 설정 정보(342)로서 프로그램 서버(3)에 저장된다. 고객 설정 정보(342)에는 사용자의 화면 구성, 메뉴 구조, 사용 프로그램 아이콘 및 위치, 색상, 음향 및 영상 정보 등이 포함된다. 또한, 이러한 기능으로 인해서 본 발명에서는 사용자가 단말기를 바꾸어도 새 단말기에서 동일한 사용자 인터페이스를 볼 수가 있으며 인터넷을 통해서도 단말기 화면을 볼 수가 있다.
포탈 서비스 정보(343)는 b 포탈 서버 인터페이스와 관련된 정보이다. 통신 사업자 포탈 서버(5)는 프로그램 서버(3)와 연동하여 포탈 서비스들을 스크립트 프로그램(32)으로 제공할 수가 있으며, 또한 포탈 서비스를 프로그램 매니저(33)를 통해서 사용자의 단말기 화면에 추천/표시할 수 있는 기능을 제공한다. 따라서, 통신 사업자는 자사의 포탈 서비스와 단말기 사용자 인터페이스가 융합된 새로운 단말기 사용자 인터페이스를 생성할 수 있게 된다. 포탈 서비스 정보(343)는 이와 같이 단말기 사용자 인터페이스에 포탈 서비스를 추천/표시하기 위해서 포탈 사이트에서 기획하여 제공한 정보이다. 포탈 사이트의 프로그램이 동일한 수준의 사용자 인터페이스를 가지기 위해서는 본 발명의 플랫폼 라이브러리(14)로 구성되어야 한다.
통신 인터페이스 a ­ 통신 단말기(1)와 프로그램 서버(3)의 연동은 통신 단말기(1)의 스크립트 실행 계층(13)과 프로그램 서버(3)의 웹 서버(31)가 표준 HTTP 프로토콜로 연동한다.
포탈 서버 인터페이스 b ­ 통신 사업자 포탈 서버(5)는 포탈의 각 서비스 사이트를 프로그램 서버(3)에 스크립트 프로그램으로 등록하여 통신 단말기(1)의 사용자 인터페이스에 포탈 서비스들이 함께 표시/구성되도록 한다. 또한, 통신 사업자 포탈 서버(5)의 기획에 의해서 추천하는 스크립트 프로그램을 포탈 서비스정보(343)에 등록할 수 있다. 따라서, 추천 서비스나 신규 서비스가 사용자 단말기 인터페이스에 동적으로 표시된다. 포탈 서버 인터페이스 b는 이와 같은 연동을 위한 인터페이스이다.
인터넷 인터페이스 c ­ 인터넷(7)을 통해서 프로그램 서버(3)에 접속하기 위한 인터페이스이다. 본 발명의 플랫폼 라이브러리(14)는 PC의 웹 브라우저에서도 동일하게 동작하므로, PC에서 프로그램 매니저(33)를 기동시키면 사용자의 통신 단말기 화면을 동일하게 보고, 시스템 스크립트를 통해서 사용자의 단말기 정보를 조회/수정하거나 인터넷(7)을 통한 전화 걸기, 문자 서비스와 연동할 수가 있다.
도 2는 스크립트 실행 계층(13)의 구조를 나타낸 것이다. 스크립트 실행 계층(13)은 일반적 웹 브라우저 핵심 모듈인 HTML&CSS 엔진(131), 자바스크립트엔진(132)과 HTTP 통신 모듈(133)을 가지고 있으며, 본 발명을 위해서 다음과 같은 세 가지 모듈(실행 프로그램(134), OS 사용 계층(15), 일반 프로그램 매니저(135))을 더 포함하여 구성된다.
실행 프로그램(134)은 스크립트 실행 계층(13)의 다른 모듈을 포함하여 실재 구동하는 프로그램이다. 사용자 인터페이스로 동작하기 위해서, 단말기OS(11)에서 사용자 프로그램 매니저 또는 바탕화면 프로그램으로 동작되도록 개발된 프로그램이다. 실행 프로그램(134)의 개발 방식은 각 OS마다 다르게 개발된다.
OS 사용 계층(15)에 대해서는 도 1에서 설명하였으므로 중복된 설명은 생략하기로 한다.
일반 프로그램 매니저(135)는 일반 바이너리 프로그램(12)의 프로세스를 관리하기 위한 모듈이다. 즉, 단말기 OS의 프로그램을 기동, 관리, 종료하기 위한 기능을 제공함으로써 스크립트 프로그램과 일반 바이너리 프로그램간의 동일한 사용자 인터페이스를 제공한다.
플랫폼 라이브러리(14)의 컨텍스트 관리자(141)는 일반 프로그램 매니저(135)와 유사한 기능으로 스크립트 프로그램의 기동, 재시동 관련하여 실행 정보를저장, 관리하는 모듈이다. 이 모듈은 스크립트 프로그램의 컨텍스트(실행 정보)를 관리하고, 스크립트 프로그램이 재시동될 때 이전의 컨텍스트를 읽어서 실행 상태가 복구되도록 한다.
도 3은 통신 단말기(1)가 기동된 후에 사용자의 인터페이스 화면을 통신 단말기(1)의 디스플레이에 출력하는 절차를 나타낸 것이다.
통신 단말기(1)가 기동되면 OS 기능에 의해서 스크립트 사용 계층(13)이 먼저 실행된다. 스크립트 사용 계층(13)이 실행되면 설정에 의해서 프로그램 매니저(33)의 URL에 접속한다(S101). 그러면, 프로그램 매니저(33)의 소스, 즉 HTML, CSS와 자바스크립트(및 기타 이미지, 동영상등…)가 프로그램 서버(3)에서 통신 단말기(1)로 다운로드 된다(S103). 이때, 프로그램 매니저(33) 소스가 변경되지 않았으면, 일반적인 캐싱 기능을 사용하여 다운로드 하지 않고 통신 단말기(1)에 미리 저장된 소스를 사용할 수도 있다.
프로그램 매니저(33)는 HTML 또는 자바스크립트 소스에 의해서 플랫폼 라이브러리(14)와 함께 실햄된다(S105). 프로그램 매니저(33)가 기동되면 설정에 의해서 프로그램 매니저 서버(34)에 접속한다(S107)(이때도 S103과 같은 캐싱 기능을 사용할 수 있다.).
프로그램 매니저 서버(34)는 고객 설정 정보가 없는 경우(즉, 최초 접속자의 경우)(S109), 기본 템플릿을 사용하여 고객 설정 정보를 구성한다(S111). 이러한 기본 템플릿의 화면 설정은 통신 사업자가 설계한 사용자 인터페이스 구조를 기본으로 하고 포탈 서비스에서 추가한 서비스가 함께 포함된다. 이후, 프로그램 매니저 서버(34)는 고객 설정 정보를 프로그램 매니저(33)가 분석할 수 있는 데이터 파일(인터페이스 구성 정보 데이터 파일)로 구성하여 통신 단말기(1)에 다운로드 한다(S113, S115).
프로그램 매니저(33)는 데이터 파일을 분석하여 단말기 화면에 사용자 인터페이스를 구현한다. 즉, 화면 분할 구조, 프로그램 아이콘들, 메뉴 구조 및 정보, 시스템 정보, 화면 스타일 이미지, 동영상 등이 화면에 표시된다(S117). 이때, 본 발명의 프로그램 매니저(33)는 프로그램의 아이콘을 표시하는 기능뿐 아니라, 스크립트 프로그램(32)을 실행하여 실행 결과 자체를 화면에 표시하는 기능도 제공한다. 이러한 기능을 사용하는 스크립트 프로그램에 대해서는 동적 실행 정보가 데이터 파일에 포함된다. 따라서, 동적 실행 정보가 있으면 해당 스크립트 프로그램을 동적으로 다운로드 하여 사용자 바탕 화면에서 실행할 수 있다. 이 절차는 도 4에 의해 설명된다.
이후, 통신 단말기(1)는 사용 가능 상태로 유지된다(S119).
도 4는 스크립트 프로그램(32)을 사용자 인터페이스 화면에서 동적으로 실행하는 기능에 대한 것으로, 도 3의 S117 단계의 일부분이다.
단말기 사용자 화면의 구성이 끝난 후에, 데이터 파일에 기술된 프로그램 실행 정보에서 동적 실행 정보가 포함되어 있으면 해당 프로그램은 "동적 실행"이 가능한 것이므로 프로그램 매니저(33)는 동적 실행 정보를 분석한다(S151). 동적 실행 정보에는 프로그램 URL, 프로그램 생성 및 실행 정보, 화면 표시 위치, 크기, 실행 주기, 실행 상태(실행/중지) 정보를 가지고 있다.
본 발명은 이러한 프로그램을 모두 미리 다운로드하여 실행 여부를 결정하는 방식이 아니고, 실행이 필요한 프로그램만을 단말기 사용자 화면 표시 후에 다운로드하여 실행한다. 이것은 초기 단말기 화면 구성을 빠르게 하기 위함이다.
실행 상태가 "실행"으로 표시되어 있으면(S153), 프로그램 매니저(33)는 프로그램 URL에 접속하여 해당 스크립트 프로그램(32)을 프로그램 서버(3)로부터 다운로드하고(S155), "프로그램 생성 및 실행 정보"에 의해서 프로그램을 생성하여 실행한다(S157). 실행 프로그램을 "화면 표시 위치"에 "크기"에 맞추어 출력하고, "실행 주기" 정보가 있으면, 단말기 화면에 표시되어 있는 중에도 주기적으로 실행한다.
도 5부터 도 7은 사용자가 사용자 인터페이스 화면, 즉 프로그램 매니저(33)에서 프로그램을 실행시키는 절차와 프로그램 관리 방식을 기술한 것이다. 본 발명에서 사용자는 스크립트 프로그램(32)과 일반 바이너리 프로그램(12)을 구분하지 않고 실행시킬 수가 있다.
먼저, 도 5는 스크립트 프로그램의 실행 절차에 대하여 설명한다. 통신 단말기(1)에서 사용자가 프로그램을 선택하여 실행하면(S201), 프로그램 매니저(33)는 프로그램의 LINK 정보를 통해서 프로그램의 종류를 판별한다(S203). 프로그램 종류가 스크립트 프로그램이면 S207 단계 이하를 실행하고, 그렇지 않으면 도 7의 과정을 실행한다(S205).
프로그램 매니저(33)가 프로그램 URL에 접속하여 프로그램 서버(3)의 스크립트 프로그램(32)을 다운로드 받는다(이때, 일반적 캐싱 기능 사용이 가능하다)(S207, S209). 프로그램 URL은 프로그램 서버(3)의 프로그램을 가리키며, 프로그램을 구성하는 HTML, CSS와 자바스크립트 및 이미지, 동영상 등의 자원이 다운로드 된다. 이후, 다운로드 된 스크립트 프로그램의 HTML이 로딩되어 플랫폼 라이브러리(14)와 함께 실행된다(S211).
하나의 스크립트 실행 계층(13)으로 다수의 스크립트 프로그램(32)을 실행할 수 있도록 하기 위해서 플랫폼 라이브러리(14)는 컨텍스트 관리 기능을 제공하며, 스크립트 프로그램 실행 직후에 컨텍스트를 로딩하면 프로그램은 이전 실행의 종료 상태를 그대로 유지하고 실행된다(S213). 이 단계는 도 11(a)에서 보다 상세히 기술한다.
이후, 사용자는 스크립트 프로그램(32)을 일반 프로그램처럼 사용할 수 있다(S215). 사용자의 실행 결과에 의한 화면 및 데이터의 변화는 컨텍스트에 저장되는데, 이 단계는 도 11(b)에서 보다 상세히 설명한다(S217).
사용자의 프로그램 전환에 의해서 비활성화 되었던 프로그램이 활성화되는 경우에는 통신 단말기(1)의 임시 저장소(캐시)에 저장되었던 스크립트 프로그램이 바로 로딩되어 실행된다(S219, S221). 프로그램 실행 후에 컨텍스트 관리에 의해서 이전 화면 상태가 복구된다(S223). 이 단계는 도 11(a)에 대응된다.
도 6은 도 5와 같은 목적이지만 여러 스크립트 프로그램을 동시에 실행하기 위해서 단말기 OS의 프로그램 관리 정책을 그대로 활용하는 방식에 대한 것이다.
통신 단말기(1)에서 사용자가 프로그램을 선택하여 실행하면(S231), 프로그램 매니저(33)는 프로그램의 LINK 정보를 통해서 프로그램의 종류를 판별한다(S233). 프로그램 종류가 스크립트 프로그램이면 S237 단계 이하를 실행하고, 그렇지 않으면 도 7의 과정을 실행한다(S235).
스크립트 프로그램(32)을 실행하기 위해서 새로운 스크립트 실행 계층 프로세스를 실행한다. 즉, 프로그램 매니저(33)를 실행하는 스크립트 실행 계층과는 별도로 새로운 스크립트 실행 계층 프로세스를 생성하고, 새로운 프로세스에 프로그램 URL을 전달한다(S237).
새로운 스크립트 실행 계층 프로세스가 프로그램 URL에 접속하여 프로그램 서버(3)의 스크립트 프로그램(32)을 다운로드 받는다(이때, 일반적 캐싱 기능 사용이 가능하다)(S239, S241). 프로그램 URL은 프로그램 서버(3)의 프로그램을 가리키며, 프로그램을 구성하는 HTML, CSS와 자바스크립트 및 이미지, 동영상 등의 자원이 다운로드 된다. 이후, 다운로드 된 스크립트 프로그램의 HTML이 로딩되어 플랫폼 라이브러리(14)와 함께 실행된다(S243).
이때, 새로운 스크립트 실행 계층 프로세스의 실행 상태 및 컨텍스트는 단말기 OS(11)의 관리 정책에 의해서 관리된다.
도 7은 프로그램 매니저(33)에서 일반 바이너리 프로그램(12)을 실행하는 절차에 대한 것이다.
통신 단말기(1)에서 사용자가 프로그램을 선택하여 실행하면(S261), 프로그램 매니저(33)는 프로그램의 LINK 정보를 통해서 프로그램의 종류를 판별한다(S263). 프로그램 종류가 스크립트 프로그램이면 도 5 또는 도 6의 과정을 실행하고, 그렇지 않으면 S267 이하의 과정을 실행한다(S265).
스크립트 실행 계층(13)에 포함된 일반 프로그램 매니저(135)가 해당 단말기OS(11) 기능을 사용하여 프로그램을 실행한다(S267). 이때, 해당 프로그램의 실행 경로 또는 고유 ID를 사용하여 실행한다. 일반 바이너리 프로그램(12)의 실행 상태는 단말기 OS(11)의 정책에 의해서 관리된다. 일반 프로그램 매니저(135)는 단말기 OS(11)의 시스템 호출을 사용하여 프로그램 실행 상태를 프로그램 매니저(33)에 제공하여, 프로그램 매니저(33)가 일반 바이너리 프로그램과 스크립트 프로그램을 구분 없이 표시하도록 한다. 또한, 일반 프로그램 매니저(135)는 프로그램 종료와 같은 상태 변경 기능을 프로그램 매니저(33)에 제공하여, 프로그램 매니저(33)가 프로그램의 상태를 변경할 수 있도록 한다(S269). 따라서, 프로그램 매니저(33)는 스크립트 프로그램과 일반 바이너리 프로그램의 실행 상태 및 상태 변화를 통합 관리하는 화면을 제공할 수 있다(S271).
도 8부터 도 10까지는 프로그램 매니저(33)를 통해서 새로운 프로그램을 사용자 인터페이스 화면에 추가하는 절차를 기술한 것이다.
도 8은 프로그램 매니저(33)를 통해서 사용자가 통신 단말기(1)에 설치해 놓은 일반 바이너리 프로그램(12)을 사용자 인터페이스 화면에 추가하는 절차를 기술한 것이다.
사용자가 프로그램을 사용자 인터페이스에 추가하기 위해서 프로그램 매니저(33)를 통해 설정 프로그램(35)을 실행한다(S301). 설정 프로그램(35)은 스크립트 프로그램이다.
설정 프로그램(35)이 스크립트 실행 계층(13)의 일반 프로그램 매니저(135)를 호출하여 단말기에 사용자가 설치한 일반 프로그램의 목록을 알아내고, 프로그램 서버(3)의 프로그램 매니저 서버(34)에 접속하여 사용자가 사용 가능한 스크립트 프로그램과 일반 바이너리 프로그램 목록을 수신하여 표시한다(S303, S305, S307, S309).
사용자가 통신 단말기(1)에 설치된 일반 바이너리 프로그램을 선택하여 추가하면(S311), 설정 프로그램(35)은 스크립트 사용 계층(13)의 일반 프로그램 매니저(135)를 호출하여 일반 바이너리 프로그램의 프로그램 정보를 수신한다(S313). 여기서, 프로그램 정보는 프로그램의 경로 또는 고유ID, 아이콘, 실행 환경과 관련된 정보이다.
설정 프로그램(35)은 수신된 프로그램 정보와 프로그램을 추가할 화면 위치 정보를 함께 프로그램 매니저 서버(34)로 전송하여 프로그램 등록을 요청한다(S315). 이에 프로그램 매니저 서버(34)는 일반 바이너리 프로그램의 프로그램 정보를 데이터베이스에 등록하고(S317), 고객 설정 정보(342)에 프로그램 정보와 위치 정보를 등록한다(S319).
프로그램 매니저 서버(34)가 수정된 고객 설정 정보(342)를 바탕으로 인터페이스 구성 정보 데이터 파일을 생성하여 프로그램 매니저(33)로 전송하면(S321), 프로그램 매니저(33)는 사용자가 선택한 화면 위치에 등록된 프로그램의 실행 아이콘을 추가하여 표시한다(S323).
도 9는 프로그램 서버(3)에 있는 프로그램 중에서 스크립트 프로그램(32)을 사용자 인터페이스 화면에 추가하는 절차를 나타낸 것이다.
사용자가 프로그램을 사용자 인터페이스에 추가하기 위해서 프로그램 매니저(33)를 통해 설정 프로그램(35)을 실행한다(S331). 설정 프로그램(35)은 스크립트 프로그램이다.
설정 프로그램(35)이 스크립트 실행 계층(13)의 일반 프로그램 매니저(135)를 호출하여 단말기에 사용자가 설치한 일반 프로그램의 목록을 알아내고, 프로그램 서버(3)의 프로그램 매니저 서버(34)에 접속하여 사용자가 사용 가능한 스크립트 프로그램과 일반 바이너리 프로그램 목록을 수신하여 표시한다(S333, S335, S337, S339).
사용자가 프로그램 서버(3)에 있는 프로그램을 선택하여 추가하면(S341), 설정 프로그램(35)은 프로그램 ID와 추가할 위치 정보를 함께 프로그램 매니저 서버(34)에 전송하여 프로그램 등록을 요청한다(S343). 프로그램 매니저 서버(34)는 고객 설정 정보(342)에 프로그램 정보와 위치 정보를 등록한다(S345). 등록된 프로그램이 스크립트 프로그램이면 S349 단계 이하의 과정을 수행하고, 그렇지 않으면 도 10에 의한 과정을 수행한다(S347). 프로그램 매니저 서버(34)가 수정된 고객 설정 정보(342)를 바탕으로 인터페이스 구성 정보 데이터 파일을 생성하여 프로그램 매니저(33)로 전송하면(S349), 프로그램 매니저(33)는 사용자가 선택한 화면 위치에 등록된 프로그램의 실행 아이콘을 추가하여 표시한다(S351).
도 10은 프로그램 서버(3)에 있는 프로그램 중에서 일반 바이너리 프로그램(36)을 사용자 인터페이스 화면에 추가하는 절차를 나타낸 것이다.
사용자가 프로그램을 사용자 인터페이스에 추가하기 위해서 프로그램 매니저(33)를 통해 설정 프로그램(35)을 실행한다(S361). 설정 프로그램(35)은 스크립트 프로그램이다.
설정 프로그램(35)이 스크립트 실행 계층(13)의 일반 프로그램 매니저(135)를 호출하여 단말기에 사용자가 설치한 일반 프로그램의 목록을 알아내고, 프로그램 서버(3)의 프로그램 매니저 서버(34)에 접속하여 사용자가 사용 가능한 스크립트 프로그램과 일반 바이너리 프로그램 목록을 수신하여 표시한다(S363, S365, S367, S369).
사용자가 프로그램 서버(3)에 있는 프로그램을 선택하여 추가하면(S371), 설정 프로그램(35)은 프로그램 ID와 추가할 위치 정보를 함께 프로그램 매니저 서버(34)에 전송하여 프로그램 등록을 요청한다(S373). 프로그램 매니저 서버(34)는 고객 설정 정보(342)에 프로그램 정보와 위치 정보를 등록한다(S375). 등록된 프로그램이 스크립트 프로그램이면 도 9에 의한 과정을 수행하고, 그렇지 않으면 이하의 과정을 수행한다(S377). 프로그램 매니저 서버(34)는 등록된 일반 바이너리 프로그램의 설치 파일을 통신 단말기(1)로 다운로드하고(S379), 통신 단말기(1)의 일반 프로그램 매니저(135)는 다운로드 된 프로그램 설치 파일을 실행하여 통신 단말기(1)에 등록된 일반 바이너리 프로그램을 설치한다(S381).
이후, 프로그램 매니저 서버(34)가 수정된 고객 설정 정보(342)를 바탕으로 인터페이스 구성 정보 데이터 파일을 생성하여 프로그램 매니저(33)로 전송하면(S383), 프로그램 매니저(33)는 사용자가 선택한 화면 위치에 등록된 프로그램의 실행 아이콘을 추가하여 표시한다(S385).
본 발명에서는 사용자가 사용자 인터페이스 화면에서 프로그램을 삭제하는 기능도 당연히 제공하며, 프로그램 매니저(33)에서 프로그램 아이콘을 삭제하면 삭제 프로그램 정보가 프로그램 매니저 서버(34)로 전송되어 고객 설정 정보(342)에서 해당 프로그램이 삭제되며, 프로그램 매니저(33)는 사용자 인터페이스 화면에서 해당 프로그램의 아이콘 또는 메뉴를 삭제한다.
본 발명에서는 프로그램 외에 사용자인터페이스 화면의 표시 속성과 형태를 바꾸는 기능도 제공한다. 즉, 이것은 화면의 구조, 색상, 이미지, 버튼, 동영상 및 음향 정보를 설정하는 것이다. 본 발명은 프로그램 매니저(33)가 스크립트 프로그램이므로 이러한 수정 정보가 모두 프로그램 서버(3)로 전송되어서 저장되는 것을 특징으로 한다.
도 11은 본 발명의 도 5의 실행 절차에서 기술된 플랫폼 라이브러리(14)의 컨텍스트 관리 기능에 대한 것이다. 컨텍스트는 프로그램의 현재 실행 상태를 말하는 것으로, 본 발명에서는 스크립트 프로그램의 컨텍스트이므로 단말기 OS(11)나 스크립트 실행 계층(13)에서 제공할 수 있는 기능이 아니고, 플랫폼 라이브러리(14)의 각 사용자 UX 모듈이 컨텍스트 저장 기능을 모두 제공해야 구현이 가능하다.
스크립트 프로그램에 컨텍스트 관리 기능을 필요할 경우 프로그램 소스에 컨텍스트 사용 및 컨텍스트 ID 정보가 설정되고, 이 정보가 설정되면 플랫폼 라이브러리(14)의 모든 사용자UX 모듈은 컨텍스트 저장 함수를 활성화시킨다.
도 11(a) 부분은 컨텍스트를 로딩하여 프로그램의 실행 상태를 복구하는 절차 부분이다.
프로그램이 실행 또는 활성화할 때(S401), 스크립트 프로그램이 컨텍스트를 사용하는 것으로 설정되었으면, 플랫폼 라이브러리(14)는 포함된 모듈인 컨텍스트 관리자(141)에 컨텍스트 ID를 전달하여 컨텍스트의 로딩을 요청한다(S403).
컨텍스트 관리자(141)는 컨텍스트 ID로 저장된 컨텍스트가 있으면 로딩하고 분석하여 플랫폼 라이브러리(14)의 각 사용자 UX 모듈이 해석할 수 있는 컨텍스트 정보로 메모리에 로딩한다(S405). 프로그램이 실행되어 표시될 때, 프로그램을 구성하고 있는 각 사용자UX 모듈은 해당 모듈의 컨텍스트 정보에 의해 화면을 생성하여 표시한다(S407). 따라서 프로그램의 이전 실행 상태가 복구된다.
도 11(b) 부분은 스크립트 프로그램이 실행 도중에 실행 화면의 현재 상태 정보를 컨텍스트에 저장하는 절차에 대한 것이다.
사용자에 의해 프로그램 사용될 때(S451), 프로그램에 컨텍스트 ID가 지정되어 있으면 플랫폼 라이브러리(14)의 각 사용자 UX 모듈은 컨텍스트 관리 함수를 통해서 현재 상태를 컨텍스트 정보로서 메모리에 저장한다(S453).
프로그램의 종료 또는 프로그램 전환에 의해서 프로그램이 비활성화되는 상황이 되었을 때(S455), 프로그램의 컨텍스트ID가 지정되어 있으면 플랫폼 라이브러리(14)는 프로그램의 종료 또는 비활성화 전에 컨텍스트 관리자(141)에 컨텍스트 저장을 요청한다(S457). 그러면, 컨텍스트 관리자(141)는 플랫폼 라이브러리(14) 각 모듈의 컨텍스트 정보를 취합하여 컨텍스트를 생성하여 저장한다(S459).
본 발명의 "스크립트 실행 계층"이 기동이 되어 실행되는 방식은 각 단말기 OS마다 다를 수가 있으며, 이러한 바이너리 프로그램을 기동해서 단말기의 사용자 인터페이스를 교체하는 방법이, 공식적으로 OS에서 제공하는 방법이던지 사적으로 개발되던 방법을 사용하던지, 이 발명에 기술된 기능을 수행하면, 이 발명의 변형의 예로 보는 것이 타당하다.
본 발명에서 "OS 사용 계층"의 개발 방식은 단말기 OS와 사용하는 웹 브라우저의 핵심 모듈에 따라서 다를 수가 있다. 즉, 웹 브라우저에 플러그인으로 SW를 설치할 수도 있고, "스크립트 실행 계층"이 "웹 브라우저 핵심 모듈"을 상위에서 제어하면서 기능을 제공할 수도 있다. 또한, 외부의 분리된 모듈을설치하고 그 모듈에 기능을 요청하여 제공할 수도 있다. 이러한 개발 방식은 모두 본 발명의 변형의 예에 해당된다.
본 발명에서는 "통신 사업자 포탈"은 반드시 "통신 사업자"의 "포탈 서비스"만을 지칭하는 것이 아니며, 유력한 일반 포탈 사업자들도 당연히 해당될 수가 있다. 즉, 단말기 OS의 개방성정도에 따라서, 일반 포탈 사업자, 게임 사업자와 같은 인터넷 사업자에도 본 발명 플랫폼을 사업에 적용이 가능하다.
본 발명의 <그림 1> 등에서 기술된 "템플릿 정보"(즉, 특정 주제 및 디자인 스타일을 가지고 사전에 정의된 사용자 인터페이스 화면, 즉 "화면 구조", "이미지", "바탕화면에서 실행되는 동적 스크립트 프로그램", "시스템 스크립트", "동영상", "음향" 등의 정보 집합)를 사용자가 선택하여 사용하는 것과 관련하여, 이러한 템플릿을 광고와 관련된 주제로 구성하여 광고 사업을 하는 것도 본 발명에 속하는 것이다. 특히, 이러한 사업에서 본 발명을 사용하면, 사용자가 템플릿을 교체할 때, 단말기 OS적으로 시스템 모듈의 교체가 전혀 없이 바로 적용되는 장점이 있으므로 사용자가 부담 없이 적용할 수가 있으며, 바탕 화면에 동적으로 "스크립트 프로그램"을 표시하여 동적으로 변하는 관련 정보를 표시할 수 있는 장점을 가지게 된다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
1 : 통신 단말기 3 : 프로그램 서버
5 : 통신 사업자 포탈 서버 7 : 인터넷
11 : 단말기 OS 12 : 일반 바이너리 프로그램
13 : 스크립트 실행 계층 14 : 플랫폼 라이브러리
15 : OS 사용 계층 31 : 웹서버
32 : 스크립트 프로그램 33 : 프로그램 매니저
34 : 프로그램 매니저 서버 35 : 설정 프로그램
36 : 일반 바이너리 프로그램 37 : 시스템 스크립트 서버
131 : HTML&CSS 엔진 132 : 자바스크립트 엔진
133 : HTTP 통신 모듈 134 : 실행 프로그램
135 : 일반 프로그램 매니저 141 : 컨텍스트 관리자
341 : 템플릿 정보 342 : 고객 설정 정보
343 : 포탈 서비스 정보 371 : 고객 개인 정보

Claims (7)

  1. 통신 단말기에 구비되고, 프로그램 서버에서 스크립트 프로그램을 수신하여 플랫폼 라이브러리와 함께 실행시키는 스크립트 실행 계층;
    통신 단말기에 구비되고, 그래픽 사용자 인터페이스, 화면 재배치, 컨텍스트 관리, 단말기 엔진 호환, 통신, 데이터 저장 및 관리, 동적 모듈 관리 및 애니메이션과 효과 중 어느 하나 이상의 기능을 스크립트 프로그램에 제공하는 플랫폼 라이브러리;
    프로그램 서버에 구비되고, 스크립트 실행 계층에 의해 URL로 지정되어 통신 단말기에 다운로드 되어 실행되고, 프로그램 매니저 서버로부터 제공받은 인터페이스 구성 정보 데이터 파일에 의해 단말기 사용자 인터페이스를 구성하는 프로그램 매니저;
    프로그램 서버에 구비되고, 사용자별로 통신 단말기의 인터페이스 구성 정보를 관리하고, 프로그램 매니저의 요청에 의해 인터페이스 구성 정보 데이터 파일을 제공하는 프로그램 매니저 서버; 및
    프로그램 서버에 구비되고, 스크립트와 플랫폼 라이브러리를 사용하여 작성된 스크립트 프로그램;을 포함함을 특징으로 하는 웹 기반 사용자 인터페이스 구현 장치.
  2. (a) 통신 단말기의 스크립트 실행 계층이 실행되고, URL에 의해 프로그램 서버의 프로그램 매니저가 다운로드 되는 단계;
    (b) 프로그램 매니저 서버가 프로그램 매니저의 요청에 의해 통신 단말기에 대응하는 고객 설정 정보에 의해 인터페이스 구성 정보 데이터 파일을 생성하되, 고객 설정 정보가 없는 경우에는 기본 템플릿에 의해 고객 설정 정보를 미리 구성하고, 생성된 인터페이스 구성 정보 데이터 파일을 프로그램 매니저에 제공하는 단계;
    (c) 프로그램 매니저가 인터페이스 구성 정보 데이터 파일을 분석하여 통신 단말기에 사용자 인터페이스를 구성하는 단계; 및
    (d) 프로그램 매니저가 인터페이스 구성 정보 데이터 파일에 포함된 동적 실행 정보를 분석하여 "실행" 상태인 프로그램의 URL에 접속하여, 해당 스크립트 프로그램을 다운로드하여 실행하는 단계;를 포함함을 특징으로 하는 웹 기반 사용자 인터페이스 화면 구성 방법.
  3. (a) 웹 기반 사용자 인터페이스에서 사용자로부터 프로그램을 선택받는 단계;
    (b) 프로그램 매니저가 프로그램의 링크 정보를 통해 프로그램의 종류를 판별하는 단계;
    (c) 프로그램의 종류가 스크립트 프로그램이면, 프로그램의 URL에 접속하여 해당 스크립트 프로그램을 다운로드하여 실행하되, 사용자의 프로그램 전환에 의하여 비활성화되었던 프로그램인 경우에는 통신 단말기의 임시 저장소에 저장된 스크립트 프로그램을 바로 실행하는 단계; 및
    (d) 프로그램 종류가 일반 바이너리 프로그램이면, 운영체제에 의해 해당 프로그램을 실행하되, 스크립트 실행 계층의 일반 프로그램 매니저가 운영체제의 시스템 호출을 사용하여 프로그램의 실행 상태를 프로그램 매니저에게 제공함으로써 프로그램 매니저가 일반 바이너리 프로그램의 상태를 관리하는 단계;를 포함함을 특징으로 하는 웹 기반 사용자 인터페이스에서의 프로그램 관리 방법.
  4. 제3항에 있어서, 상기 (c) 단계에서 스크립트 프로그램이 컨텍스트 관리 기능을 구비하면,
    (c1) 해당 스크립트 프로그램의 실행 직후, 플랫폼 라이브러리가 관리하는 해당 스크립트 프로그램의 컨텍스트를 로딩하는 단계; 및
    (c2) 해당 스크립트 프로그램의 실행 결과에 의한 화면 및 데이터의 변화를 해당 스크립트 프로그램의 컨텍스트에 저장하는 단계;를 더 구비함을 특징으로 하는 웹 기반 사용자 인터페이스에서의 프로그램 관리 방법.
  5. (a) 프로그램 매니저가 사용자로부터 프로그램 추가 기능을 선택받는 단계;
    (b) 프로그램 매니저에 의해 설정 프로그램이 통신 단말기에 다운로드 되어 실행되고, 설정 프로그램이 스크립트 사용 계층의 일반 프로그램 매니저로부터 일반 바이너리 프로그램 목록을 제공받고, 프로그램 매니저 서버로부터 사용자가 사용가능한 스크립트 프로그램과 일반 바이너리 프로그램 목록을 제공받는 단계;
    (c) 사용자가 추가하는 프로그램이 통신 단말기에 설치된 일반 바이너리 프로그램인 경우,
    (c1) 설정 프로그램은 일반 프로그램 매니저로부터 해당 프로그램의 프로그램 정보를 수신하여 해당 프로그램을 추가할 화면 위치 정보와 함께 프로그램 매니저 서버에 전달하여 등록을 요청하는 단계;
    (c2) 프로그램 매니저 서버가 고객 설정 정보에 프로그램 정보와 화면 위치 정보를 등록하고, 변경된 고객 설정 정보에 의한 인터페이스 구성 정보 데이터 파일을 생성하여 프로그램 매니저에 전달하는 단계; 및
    (c3) 프로그램 매니저가 인터페이스 구성 정보 데이터 파일을 분석하여 등록된 프로그램의 아이콘과 정보를 표시하는 단계;를 포함함을 특징으로 하는 웹 기반 사용자 인터페이스에 프로그램 추가 방법.
  6. (a) 프로그램 매니저가 사용자로부터 프로그램 추가 기능을 선택받는 단계;
    (b) 프로그램 매니저에 의해 설정 프로그램이 통신 단말기에 다운로드 되어 실행되고, 설정 프로그램이 스크립트 사용 계층의 일반 프로그램 매니저로부터 사용자가 설치한 일반 프로그램 목록을 제공받고, 프로그램 매니저 서버로부터 사용자가 사용가능한 스크립트 프로그램과 일반 바이너리 프로그램 목록을 제공받는 단계;
    (c) 사용자가 추가하는 프로그램이 프로그램 서버에 있는 스크립트 프로그램인 경우,
    (c1) 설정 프로그램은 해당 프로그램의 프로그램 ID와 해당 프로그램을 추가할 화면 위치 정보와 함께 프로그램 매니저 서버에 전달하여 등록을 요청하는 단계;
    (c2) 프로그램 매니저 서버가 고객 설정 정보에 프로그램 ID에 대응하는 프로그램 정보와 화면 위치 정보를 등록하고, 변경된 고객 설정 정보에 의한 인터페이스 구성 정보 데이터 파일을 생성하여 프로그램 매니저에 전달하는 단계; 및
    (c3) 프로그램 매니저가 인터페이스 구성 정보 데이터 파일을 분석하여 등록된 프로그램의 아이콘과 정보를 표시하는 단계;를 포함함을 특징으로 하는 웹 기반 사용자 인터페이스에 프로그램 추가 방법.
  7. (a) 프로그램 매니저가 사용자로부터 프로그램 추가 기능을 선택받는 단계;
    (b) 프로그램 매니저에 의해 설정 프로그램이 통신 단말기에 다운로드 되어 실행되고, 설정 프로그램이 스크립트 사용 계층의 일반 프로그램 매니저로부터 사용자가 설치한 일반 프로그램 목록을 제공받고, 프로그램 매니저 서버로부터 사용자가 사용가능한 스크립트 프로그램과 일반 바이너리 프로그램 목록을 제공받는 단계;
    (c) 사용자가 추가하는 프로그램이 프로그램 서버에 있는 일반 바이너리 프로그램인 경우,
    (c1) 설정 프로그램은 해당 프로그램의 프로그램 ID와 해당 프로그램을 추가할 화면 위치 정보와 함께 프로그램 매니저 서버에 전달하여 등록을 요청하는 단계;
    (c2) 프로그램 매니저 서버가 고객 설정 정보에 프로그램 ID에 대응하는 프로그램 정보와 화면 위치 정보를 등록하는 단계;
    (c3) 일반 프로그램 매니저가 일반 바이너리 프로그램의 설치 파일을 다운로드 받아 통신 단말기에 일반 바이너리 프로그램을 설치하는 단계;
    (c4) 프로그램 매니저 서버가 변경된 고객 설정 정보에 의한 인터페이스 구성 정보 데이터 파일을 생성하여 프로그램 매니저에 전달하는 단계; 및
    (c5) 프로그램 매니저가 인터페이스 구성 정보 데이터 파일을 분석하여 등록된 프로그램의 아이콘과 정보를 표시하는 단계;를 포함함을 특징으로 하는 웹 기반 사용자 인터페이스에 프로그램 추가 방법.
KR1020100022146A 2010-03-12 2010-03-12 웹 기반 사용자 인터페이스 구현 장치 및 그 방법 KR20100048965A (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020100022146A KR20100048965A (ko) 2010-03-12 2010-03-12 웹 기반 사용자 인터페이스 구현 장치 및 그 방법
PCT/KR2010/008814 WO2011111926A2 (ko) 2010-03-12 2010-12-09 통신 단말기의 웹 기반 사용자 인터페이스 구현 장치 및 그 방법
CN2010800587044A CN102667751A (zh) 2010-03-12 2010-12-09 实现基于网络的通信终端的用户界面的装置及其方法
JP2012545841A JP2013515315A (ja) 2010-03-12 2010-12-09 通信端末機のウェブ基盤ユーザインターフェース具現装置およびその方法
US13/142,254 US20120324376A1 (en) 2010-03-12 2010-12-09 Apparatus for implementing web-based user interface for communication terminal and method thereof
KR1020100125604A KR101148043B1 (ko) 2010-03-12 2010-12-09 통신 단말기의 웹 기반 사용자 인터페이스 구현 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100022146A KR20100048965A (ko) 2010-03-12 2010-03-12 웹 기반 사용자 인터페이스 구현 장치 및 그 방법

Publications (1)

Publication Number Publication Date
KR20100048965A true KR20100048965A (ko) 2010-05-11

Family

ID=42275590

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020100022146A KR20100048965A (ko) 2010-03-12 2010-03-12 웹 기반 사용자 인터페이스 구현 장치 및 그 방법
KR1020100125604A KR101148043B1 (ko) 2010-03-12 2010-12-09 통신 단말기의 웹 기반 사용자 인터페이스 구현 장치 및 그 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020100125604A KR101148043B1 (ko) 2010-03-12 2010-12-09 통신 단말기의 웹 기반 사용자 인터페이스 구현 장치 및 그 방법

Country Status (4)

Country Link
US (1) US20120324376A1 (ko)
JP (1) JP2013515315A (ko)
KR (2) KR20100048965A (ko)
CN (1) CN102667751A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210058103A (ko) * 2019-11-13 2021-05-24 한국건설기술연구원 개방형 플랫폼 서비스를 이용한 건물에너지관리시스템 및 방법

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101668118B1 (ko) * 2010-07-23 2016-10-21 삼성전자주식회사 원격 사용자 인터페이스 시스템에서 원격 사용자 인터페이스 데이터 송/수신장치 및 방법
BG66795B1 (bg) * 2011-04-11 2018-12-17 Николаев Попов Красимир Метод и система за реализиране на комплексни задачи, остойностяване и разплащане, осъществявани в обща компютърно базирана среда
KR102202574B1 (ko) * 2013-01-31 2021-01-14 삼성전자주식회사 디바이스가 사용자 인터페이스를 디스플레이하는 방법 및 그 디바이스
WO2014119889A1 (en) * 2013-01-31 2014-08-07 Samsung Electronics Co., Ltd. Method of displaying user interface on device, and device
KR102067661B1 (ko) * 2013-05-23 2020-01-17 에스케이플래닛 주식회사 위젯 저작 시스템 및 방법
CN103530127B (zh) * 2013-10-22 2017-08-29 北京奇虎科技有限公司 图标显示方法及装置
CN103686432B (zh) * 2013-11-15 2015-09-23 北京视联动力国际信息技术有限公司 一种基于视联网的屏幕共享方法和系统
US9825812B2 (en) * 2013-12-05 2017-11-21 Pulse Secure, Llc Transparently intercepting and optimizing resource requests
WO2015187175A1 (en) 2014-06-06 2015-12-10 Hewlett-Packard Development Company, L.P. Action execution based on management controller action request
JP6363888B2 (ja) 2014-06-30 2018-07-25 キヤノン株式会社 情報処理装置、およびプログラム
CN105446710B (zh) * 2014-08-06 2020-04-14 阿里巴巴集团控股有限公司 界面提供系统及界面提供方法
KR101705816B1 (ko) * 2014-09-05 2017-02-22 주식회사 포워드벤처스 쇼핑 서비스 제공 장치, 방법, 및 컴퓨터 프로그램
JP2016099813A (ja) * 2014-11-21 2016-05-30 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
CN104580375A (zh) * 2014-12-11 2015-04-29 百度在线网络技术(北京)有限公司 确定目标应用的ui样式信息的方法与设备
US10116497B2 (en) * 2016-05-20 2018-10-30 Moneygram International, Inc. Systems and methods for providing split control of multiple execution environments
CN109165336B (zh) * 2018-08-23 2021-10-01 广东小天才科技有限公司 一种信息输出控制方法及家教设备
CN112631643B (zh) * 2019-10-08 2024-05-24 华晨宝马汽车有限公司 综合运维管理方法、系统、设备和介质
CN111324496B (zh) * 2020-02-20 2023-05-26 山东汇贸电子口岸有限公司 对裸机进行检测的方法及装置
KR102377607B1 (ko) * 2020-06-23 2022-03-23 (주)지산웨어 정보시스템을 설계하여 프로그램과 데이터베이스를 자동으로 생성하고 테스트를 자동 수행하는 소프트웨어 공학플랫폼
KR102612851B1 (ko) * 2022-11-16 2023-12-13 쿠팡 주식회사 스크립트와 관련한 정보를 제공하는 전자 장치 및 그 방법

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000012553A (ko) * 1999-12-11 2000-03-06 김창곤 사용자 인터페이스 및 화면메뉴를 재구성할 수 있는액티브브라우저
KR20030060884A (ko) * 2001-06-28 2003-07-16 주식회사 라스트원 웹 운영체제 및 웹 데스크탑
KR100475432B1 (ko) * 2002-02-26 2005-03-10 삼성전자주식회사 그래픽 사용자 인터페이스의 디자인 변경 방법 및 이를 위한 기록매체
US10156959B2 (en) * 2005-03-16 2018-12-18 Icontrol Networks, Inc. Cross-client sensor user interface in an integrated security network
US20050256923A1 (en) * 2004-05-14 2005-11-17 Citrix Systems, Inc. Methods and apparatus for displaying application output on devices having constrained system resources
US20080147671A1 (en) * 2006-12-18 2008-06-19 Lampdesk Corporation System for Running Web Applications Offline and Providing Access to Native Services
JP2008282297A (ja) * 2007-05-14 2008-11-20 Ize:Kk クライアント・サーバシステム、ウェブosのプログラム、ウェブosの実行方法
US8458612B2 (en) * 2007-07-29 2013-06-04 Hewlett-Packard Development Company, L.P. Application management framework for web applications
DE102007059972A1 (de) * 2007-12-11 2009-06-18 T-Mobile Internationale Ag Implementierung des User Interfaces von Mobiltelefonen auf Basis von Browser Technologie
EP2394224A1 (en) * 2009-02-05 2011-12-14 Digimarc Corporation Television-based advertising and distribution of tv widgets for the cell phone
CN101853264B (zh) * 2009-04-03 2012-12-19 鸿富锦精密工业(深圳)有限公司 提供主动式网页用户界面的方法
US8521217B2 (en) * 2009-06-10 2013-08-27 Digimarc Corporation Content sharing methods and systems
KR101961741B1 (ko) * 2009-06-15 2019-03-25 삼성전자 주식회사 위젯 생성 및 통신 방법
KR101633366B1 (ko) * 2010-04-09 2016-06-24 삼성전자주식회사 앱스토어 서비스 제공 방법 및 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210058103A (ko) * 2019-11-13 2021-05-24 한국건설기술연구원 개방형 플랫폼 서비스를 이용한 건물에너지관리시스템 및 방법

Also Published As

Publication number Publication date
US20120324376A1 (en) 2012-12-20
JP2013515315A (ja) 2013-05-02
KR101148043B1 (ko) 2012-05-24
KR20110103309A (ko) 2011-09-20
CN102667751A (zh) 2012-09-12

Similar Documents

Publication Publication Date Title
KR20100048965A (ko) 웹 기반 사용자 인터페이스 구현 장치 및 그 방법
US11709668B2 (en) Systems and methods for application program and application program update deployment to a mobile device
AU2018319444B2 (en) Editing a database during preview of a virtual web page
US8103865B2 (en) Server method and system for rendering content on a wireless device
US8478245B2 (en) Method and system for rendering content on a wireless device
US8572602B1 (en) System and method for synchronization of a web application to a cloud provider
US8954553B1 (en) System and method for developing, deploying, managing and monitoring a web application in a single environment
CN101383842B (zh) 利用计算机背景屏幕显示网络信息的系统和方法
CN109614565B (zh) 网页生成方法与装置
CN114064024A (zh) 微应用的开发方法、装置、设备、存储介质及程序产品
CN104219295A (zh) 基于服务器端配置的移动设备的信息展示方法及系统
CN103634393A (zh) Ivr及其实现方法
CN114756228A (zh) 页面处理方法、装置、设备及存储介质
EP2372532A1 (en) Method for programming a web application
CN103001981A (zh) 一种调用能力服务的方法及系统
CN117270837B (zh) 基于低代码的手机应用设计的方法及系统
KR102045917B1 (ko) 광고 정보 운용 방법 및 이를 지원하는 장치
CN116974557A (zh) 小程序处理方法、装置、设备及计算机可读存储介质
Shustov Evaluation and development of a progressive web app
Ghoda et al. Advanced Silverlight 3 Features
CN116501319A (zh) 网页的生成方法、网站的编辑方法及电子设备
CN117055792A (zh) 界面呈现方法、装置、设备、介质和程序产品

Legal Events

Date Code Title Description
A201 Request for examination
G15R Request for early publication