KR101036861B1 - Augmenting service description with expected usage information - Google Patents

Augmenting service description with expected usage information Download PDF

Info

Publication number
KR101036861B1
KR101036861B1 KR1020080050255A KR20080050255A KR101036861B1 KR 101036861 B1 KR101036861 B1 KR 101036861B1 KR 1020080050255 A KR1020080050255 A KR 1020080050255A KR 20080050255 A KR20080050255 A KR 20080050255A KR 101036861 B1 KR101036861 B1 KR 101036861B1
Authority
KR
South Korea
Prior art keywords
service
information
usage information
interface
expected usage
Prior art date
Application number
KR1020080050255A
Other languages
Korean (ko)
Other versions
KR20090124191A (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 KR1020080050255A priority Critical patent/KR101036861B1/en
Publication of KR20090124191A publication Critical patent/KR20090124191A/en
Application granted granted Critical
Publication of KR101036861B1 publication Critical patent/KR101036861B1/en

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

웹 서비스와 상호 작용하는 고품질 인터페이스를 구성하는 시스템 및 방법이 제공된다. 일 양태의 방법은 웹 서비스의 인터페이스와의 연관을 위한 서비스 기술 정보를 서비스 기술 언어로 기재하는 단계, 상기 웹 서비스의 예상되는 사용 정보를 기재하는 단계로서, 상기 예상되는 사용 정보는 서비스 동작의 그룹화, 서비스 동작의 확률, 서비스 동작의 상대적인 중요도, 및 서비스 동작에 대한 연상 기호 중 적어도 하나를 포함하는 것인, 예상되는 사용 정보를 기재하는 단계, 및 상기 서비스 기술 정보 및 상기 예상되는 사용 정보에 기초하여, 상기 웹 서비스와 상호 작용하는 클라이언트를 위한 인터페이스를 구성하는 단계를 포함한다.Systems and methods are provided for configuring a high quality interface for interacting with web services. In one aspect, a method includes writing service description information for association with an interface of a web service in a service description language, listing expected usage information for the web service, wherein the expected usage information is a grouping of service operations. Listing expected usage information, comprising at least one of a probability of a service operation, a relative importance of a service operation, and an associative symbol for the service operation, and based on the service description information and the expected usage information. Thereby configuring an interface for a client to interact with the web service.

Description

예상되는 사용 정보로 확장된 서비스 기술정보{AUGMENTING SERVICE DESCRIPTION WITH EXPECTED USAGE INFORMATION}Service description extended to expected usage information {AUGMENTING SERVICE DESCRIPTION WITH EXPECTED USAGE INFORMATION}

본 발명은 일반적으로 컴퓨터 시스템에 관한 것으로, 더 상세하게는 서비스 지향 아키텍처(Service-Oriented Architecture)를 위한 사용자 인터페이스에 관한 것이다.TECHNICAL FIELD The present invention generally relates to computer systems and, more particularly, to user interfaces for Service-Oriented Architectures.

서비스 지향 아키텍처(SOA)의 중요한 측면은, 서비스 인터페이스를 기술(describe)하는 능력이다. 클라이언트는, 명확한 인터페이스 기술 정보를 가짐으로써 내장된 서비스에 관한 모든 것을 알 필요없이 서비스와 상호 작용할 수 있다. 이는 서비스 조합과 같은 SOA의 다양한 특징들을 가능케 한다. 서비스 인터페이스는 표준화된 언어, 그 중에서도 특히 웹 서비스 기술 언어(WSDL; Web Service Description Language)에 의해 기술된다. 이와 같은 언어는 사람이 판독할 수 있는 다양한 서비스 요소의 기술 정보와 같은 서비스를 문서화하는 정보뿐만 아니라, 동작 명칭, 파라미터, 및 바인딩과 같은 서비스의 동작적 측면도 기술한다. 이러한 정보는, 서비스와 상호 작용하는 클라이언트 프로그램을 위한 사용자 인터페이스를 생성할 때 중요하다. 그러나, 고품질 클라이언트 인터페이스를 생성하려 시도할 때 이러한 정보는 부족하다.An important aspect of Service Oriented Architecture (SOA) is the ability to describe a service interface. Clients can interact with services without having to know everything about embedded services by having clear interface description information. This enables various features of SOA such as service combinations. The service interface is described by a standardized language, in particular the Web Service Description Language (WSDL). Such a language describes the operational aspects of the service, such as operation names, parameters, and bindings, as well as information that documents the service, such as technical information of various service elements that are human readable. This information is important when creating a user interface for a client program that interacts with a service. However, this information is lacking when attempting to create a high quality client interface.

기존에 알려진 솔루션들은 본질적으로 서비스 동작들을 나열하는 클라이언트를 자동으로 생성하기 위해 WSDL을 이용한다. 예를 들어, 이클립스 웹 툴링 플랫폼 프로젝트(http:// www. eclipse.org/webtools/)의 일부인 웹 서비스 익스플로러는 자신의 WSDL에 기초하여 서비스와 상호 작용하기 위해 자동으로 브라우저 기반의 클라이언트를 생성한다. 이 클라이언트는 플랫 리스트로서 서비스 동작 세트를 디스플레이한다.Known solutions essentially use WSDL to automatically generate a client that lists service operations. For example, Web Services Explorer, part of the Eclipse Web Tools Platform project (http: // www.eclipse.org/webtools/), automatically generates a browser-based client to interact with the service based on its WSDL. . This client displays a set of service operations as a flat list.

웹 서비스와 상호 작용하기 위한 고품질 인터페이스를 구성하는 시스템 및 방법이 제공된다. 일 양태의 방법은, 웹 서비스의 인터페이스와의 연관을 위한 서비스 기술 정보를 서비스 기술 언어로 기재하는 단계, 상기 웹 서비스의 예상되는 사용 정보를 기재하는 단계로서, 상기 예상되는 사용 정보는 서비스 동작의 그룹화, 서비스 동작의 확률, 및 서비스 동작의 상대적인 중요도 중 적어도 하나를 포함하는 것인, 사용 정보를 기재하는 단계, 및 상기 서비스 기술 정보 및 상기 예상되는 사용 정보에 기초하여, 상기 웹 서비스와 상호 작용하는 클라이언트를 위한 인터페이스를 구성하는 단계를 포함한다. 일 양태의 시스템은 상기 방법의 단계들을 수행하는 매체를 포함한다.A system and method are provided for configuring a high quality interface for interacting with a web service. In one aspect, a method includes writing service description information for associating with an interface of a web service in a service description language, and listing expected usage information of the web service, wherein the expected usage information is associated with a service operation. Describing usage information, and interacting with the web service based on the service description information and the expected usage information, wherein the usage information includes at least one of grouping, probability of service operation, and relative importance of service operation. Configuring an interface for the client. One aspect of a system includes a medium for performing the steps of the method.

다양한 실시예들의 구조 및 동작뿐만 아니라 추가 특징들도 첨부한 도면을 참조하여 아래에 상세하게 설명된다. 도면에서, 동일한 참조 번호는 기능적으로 동 일한 또는 유사한 구성 요소들을 나타낸다. Further features as well as the structure and operation of various embodiments are described in detail below with reference to the accompanying drawings. In the drawings, like reference numerals refer to functionally identical or similar components.

고품질 인터페이스를 구성하는 시스템 및 방법이 제공된다. Systems and methods of constructing a high quality interface are provided.

실시예에서 본 발명의 시스템 및 방법은 웹 서비스와 상호 작용하는 클라이언트를 위한 고품질 사용자 인터페이스(UI)의 생성을 용이하게 한다. 일 실시예에서, 시스템 및 방법은 서비스 동작의 상대적 중요도 및 동작 간의 관계와 같은 예상되는 서비스 사용에 관한 정보로 서비스 기술 정보를 확장한다. 이와 같은 정보를 추가함으로써, 서비스와 상호 작용하는 클라이언트를 위해 (자동으로 또는 수동으로) 생성된 UI는, 관련된 동작들을 그룹화하는 것과 같은 다양한 유용성에 대한 고려에 대해 최적화될 수 있어, 흔하게 사용되는(common) 동작을 실시(invoke)하기 쉽게 만든다.In embodiments, the systems and methods of the present invention facilitate the creation of high quality user interfaces (UIs) for clients that interact with web services. In one embodiment, the system and method extends service description information with information about expected service usage, such as the relative importance of service operations and relationships between operations. By adding such information, the UI generated (automatically or manually) for a client interacting with the service can be optimized for various usability considerations, such as grouping related actions, which is commonly used ( common) makes the operation easy to invoke.

일 실시예에서, 본 발명의 시스템 및 방법은 예상되는 사용 정보로 서비스 기술 정보를 확장한다. 일 실시예의 시스템 및 방법은 서비스와 상호 작용하기 위한 고품질 인터페이스를 생성하기 위해 이러한 정보를 이용한다. 예를 들어, 이하의 정보가 서비스 기술 정보에 추가될 수 있다.In one embodiment, the systems and methods of the present invention extend service description information to expected usage information. The system and method of one embodiment uses this information to create a high quality interface for interacting with a service. For example, the following information may be added to the service description information.

ㆍ서비스 동작들의 그룹화Grouping of service operations

ㆍ 서비스 동작들의 확률Probability of service operations

ㆍ 서비스 동작들의 조건부 확률Conditional probability of service operations

ㆍ 서비스 동작들의 상대적 중요도Relative importance of service operations

ㆍ 동작을 위한 연상 기호(mnemonic)Mnemonic for operation

그룹화 정보는 어떤 동작들이 함께 속하는지를 나타낸다. 이 정보는, (그룹화된 동작들을 물리적으로 근접하게 유지하는) 그래픽 UI를 위한 레이아웃 힌트로서 작용하기 위해, 또는 메뉴 또는 스피치 기반의 인터페이스를 위한 그룹화 정보로서 작용하는 것과 같은 다양한 방식에서 이용될 수 있다. 예를 들어, 그룹들은 네스티드될 수 있고, 다른 그룹을 포함할 수 있다.The grouping information indicates which operations belong together. This information can be used in a variety of ways, such as to serve as a layout hint for a graphical UI (which keeps the grouped operations physically in close proximity) or as grouping information for a menu or speech based interface. . For example, groups may be nested and may include other groups.

확률 정보는, 예컨대, 그래픽 UI에 물적 공간 (예컨대, 흔하게 사용되는 동작을 위한 큰 버튼)을 할당하거나 또는 메뉴 엔트리 및 키보드 단축키(keyboard shortcut)의 우선순위를 정하는 것을 돕는데 이용될 수 있다. 인터페이스가 동적일 때 (예를 들어, 음성 기반의 인터페이스), 어떤 동작이 앞서 실시되었는지에 기초하여 동작을 실시할 가능성과 같은 조건부 확률 정보는 유용할 수 있다. 더 일반적으로, 마르코프 프로세스는 적응 인터페이스를 생성하는데 이용될 수 있는 서비스 동작 모음에 연관될 수 있다.Probability information can be used, for example, to assign physical space (eg, large buttons for commonly used operations) to a graphical UI or to help prioritize menu entries and keyboard shortcuts. When the interface is dynamic (eg, voice-based interface), conditional probability information such as the likelihood of performing the operation based on which operation was performed previously may be useful. More generally, Markov processes can be associated with a collection of service operations that can be used to create an adaptive interface.

중요도 정보는 확률과 상관성이 있지만, 확률에 기초한 것만이 아닌 추가 정보를 전달할 수 있다. 예를 들어, 전원 온/오프 동작은 그렇게 자주 사용되는 것은 아니지만 매우 중요한 것으로 간주될 수 있다.The importance information correlates with the probability, but may convey additional information, not just based on the probability. For example, power on / off operation may not be used very often but may be considered very important.

연상 기호는 동작들을 핫 키로 바인딩하는 것을 용이하게 하는데 이용될 수 있다. 예를 들어, "출력" 동작은 서비스 기술 정보에서 연상 기호 "p"를 가질 수 있는데, 이는 "<ctrl>-p"가 결과 인터페이스의 출력 동작을 위한 약칭(shorthand)이 되도록 할 것이다.The associative symbol can be used to facilitate binding actions to hot keys. For example, an "output" operation may have an associative symbol "p" in the service description information, which will cause "<ctrl> -p" to be a shorthand for the output operation of the resulting interface.

예컨대, 프로그래머에 의해, 자동으로 또는 수동으로, 웹 서비스와 상호 작용하는 고품질 사용자 인터페이스를 생성하는 것은 서비스가 어떻게 이용되는지에 대한 이해를 요구한다. 일 실시예에서 본 발명의 시스템 및 방법은 확장된 서비스 기술 정보의 이와 같은 사용 정보를 인코딩하는데, 이 확장된 서비스 기술 정보는, (WSDL과 같은) 서비스 기술 언어의 정보를 서비스 동작 그룹화 및 서비스 동작 중요도와 같은 예상되는 사용에 관련된 정보까지 확장한다.For example, creating a high quality user interface that interacts with a web service, automatically or manually, by a programmer requires an understanding of how the service is used. In one embodiment, the systems and methods of the present invention encode such usage information of the extended service description information, which extends the service operation grouping and service operation information of the service description language (such as WSDL). It also extends to information related to the expected use, such as importance.

도 1은 서비스를 위해 고품질 사용자 인터페이스를 발생시키는 시스템의 하이 레벨 아키텍처를 도시한 도면이다. 확장된 서비스 기술 정보(101)는 서비스를 위해 고품질 사용자 인터페이스를 발생시키는 인터페이스 발생기 프로그램(102)에 대한 입력으로서 제공된다. 사용자 인터페이스는 표준 서비스 기술 정보로부터 발생될 수 있지만, 고품질 사용자 인터페이스를 발생시키기 위해 확장된 기술 정보가 제공된다.1 illustrates a high level architecture of a system for generating a high quality user interface for a service. The extended service description information 101 is provided as input to the interface generator program 102 which generates a high quality user interface for the service. The user interface may be generated from standard service description information, but extended description information is provided to generate a high quality user interface.

도 2는 프로그래머가 확장된 서비스 기술 정보를 어떻게 이용할 수 있는지를 보여주는 도면이다. 확장된 서비스 기술 정보(201)는 서비스를 위해 사용자 인터페이스를 생성하기 위해 확장된 서비스 기술 정보(201)를 이용하는 프로그래머(202)를 참조하여 제공된다. 서비스 기술 정보(201)는 사용자 인터페이스를 생성하기 위해 프로그래머(202)에 의해 이용되는 툴에 입력될 수 있다. 확장된 기술 정보를 갖는 것은 더 나은 사용자 인터페이스의 생성을 가능하게 한다.2 is a diagram illustrating how a programmer may use extended service description information. The extended service description information 201 is provided with reference to the programmer 202 using the expanded service description information 201 to generate a user interface for the service. The service description information 201 may be entered into a tool used by the programmer 202 to generate a user interface. Having extended technical information enables the creation of better user interfaces.

도 3은 본 발명의 일 실시예에서 인터페이스 발생기(102)에 의해 이용되는 방법 또는 알고리즘의 예를 도시한 도면이다. 이 예에서, 발생기는 각각의 서비스 동작을 실시하기 위한 버튼으로 그래픽 사용자 인터페이스(GUI)를 생성한다. 도시된 프로세스는 확장된 서비스 기술 정보가 어떻게 이용될 수 있는지를 예시하고 있다. 시작 후(단계 301), 발생기는 확장된 서비스 기술 정보를 판독한다(단계 302). 그 다음, 발생기는 확장된 서비스 기술 정보에 기재된 바와 같이, 서비스 동작들을 상위-레벨 그룹들로 분할한다(단계 303). 이하의 단계들은 각 그룹에 적용되고, 그룹들이 네스티드(nested) 되기 때문에, 단계들은 반복적으로 적용될 수 있다(단계 304). 단계(305)는 GUI 윈도우 영역("물적 공간")을 그룹에 할당한다. 영역의 크기는, 예컨대, 그룹의 동작 갯수 및 가능한 다른 고려사항들에 기초하여, 알고리즘으로 계산된다. 그 다음, 그룹의 각 서비스 동작에 대응하는 버튼이 생성된다(단계 306). 버튼은 대응하는 동작의 확률에 따라 크기가 재조정된다(단계 307). 따라서, 버튼의 상대적인 크기는 그들의 예상되는 사용 빈도수에 대응하고, 따라서, 더 흔히 사용되는 동작들이 더 큰 버튼을 갖는다. 최종적으로, 단계(308)는 버튼을 그것의 중요도를 고려하는 방식으로 위치시킨다. 따라서, 예컨대, 확장된 서비스가, 중요하지만 자주 사용되는 것은 아닌 "전원 온/오프" 동작을 제공하는 경우, 이 동작은 눈에 띄는 위치에 작은 크기의 버튼으로서 디스플레이될 것이다. 프로세스는 처리해야 할 그룹이 더 남아있는 한(단계 309), 동작을 완료(단계 310)한 후에도 계속된다.3 illustrates an example of a method or algorithm used by interface generator 102 in one embodiment of the invention. In this example, the generator creates a graphical user interface (GUI) with buttons for performing each service operation. The illustrated process illustrates how extended service description information can be used. After startup (step 301), the generator reads the extended service description information (step 302). The generator then divides the service operations into higher-level groups, as described in the extended service description information (step 303). The following steps apply to each group, and because the groups are nested, the steps may be applied repeatedly (step 304). Step 305 assigns a GUI window area (“material space”) to the group. The size of the area is calculated algorithmically, for example, based on the number of operations of the group and other possible considerations. Then, a button corresponding to each service operation of the group is generated (step 306). The button is resized according to the probability of the corresponding action (step 307). Thus, the relative size of the buttons corresponds to their expected frequency of use, and therefore, the more commonly used operations have a larger button. Finally, step 308 locates the button in a manner that takes into account its importance. Thus, for example, if an extended service provides a "power on / off" operation that is important but not frequently used, this operation will be displayed as a small size button in a prominent position. The process continues after completing the operation (step 310), as long as there are more groups to process (step 309).

도 3에 도시된 방법은 고품질 사용자 인터페이스를 발생시키기 위해 확장된 기술 정보를 이용하는 많은 가능한 알고리즘들 중 하나를 설명한다. 다른 알고리즘들은 비-GUI 인터페이스를 발생시킬 수 있고, (연상 기호 정보와 같은)향상된 기술 정보의 다른 요소들을 이용할 수 있으며, 크기 및 위치만이 아닌 (컬러 및 폰트를 이용하는 것과 같은) 다른 방식으로 발생된 GUI에 영향을 줄 수 있다. 도 3에 도시된 방법은 이와 같은 확장된 정보를 어떻게 이용할 수 있는지에 대한 예를 보여준다.The method illustrated in FIG. 3 describes one of many possible algorithms that use extended technical information to generate a high quality user interface. Other algorithms can generate non-GUI interfaces, use other elements of enhanced technical information (such as associative symbol information), and generate in other ways (such as using colors and fonts), not just size and position. Can affect the GUI. The method shown in FIG. 3 shows an example of how such extended information can be used.

도 4는 서비스와 상호 작용하는 사용자 인터페이스의 스크린 샷으로, 이 사용자 인터페이스는 본 발명의 시스템 및 방법을 이용하여 자동으로 발생된다. 이 예에서, 사용자 인터페이스는 이동 장치(PDA) 상에서 동작하고, 자신의 폰 키패드를 이용한다. 도 4는 특정 그룹의 서비스 작동("알람 시계" 작동)을 포함하는 사용자 인터페이스의 한 페이지를 보여준다. 그룹들은 페이지들로 분할되고, (폰의 키패드 상에 12개의 키가 존재하기 때문에) 각 페이지는 최대 12개 작동을 포함한다. 페이지 내의 작동 순서는 그 작동의 빈도수와 관련 있다. 도 4는 확장된 서비스 기술의 정보가 발생된 사용자 인터페이스의 구성 요소들로 어떻게 번역될 수 있는지를 증명한다.4 is a screen shot of a user interface interacting with a service, which is automatically generated using the systems and methods of the present invention. In this example, the user interface operates on a mobile device (PDA) and uses its phone keypad. 4 shows a page of a user interface that includes a specific group of service operations (“alarm clock” operations). The groups are divided into pages, and each page contains up to 12 operations (since there are 12 keys on the phone's keypad). The order of operations in the page is related to the frequency of the operations. 4 demonstrates how the information of the extended service description can be translated into the components of the generated user interface.

이하의 코드들은 향상되지 않은 간단한 서비스의 XML 기술 정보의 단편들 및 본 발명의 일 실시예에 설명된 바와 같이 향상된 간단한 서비스의 XML 기술 정보의 단편들을 보여준다. XML 기술 정보는 이 서비스의 완료된 WSDL 사양서의 일부, 예를 들어, 본 발명의 실시에에 관련된 구성 요소들을 보여준다.The following codes show fragments of XML description information of the simple service that have not been enhanced and fragments of XML description information of the enhanced simple service as described in one embodiment of the present invention. The XML description information shows some of the components of the completed WSDL specification of this service, for example the components related to the practice of the present invention.

향상되지 않은 간단한 서비스의 XML 기술 정보XML technical details of simple, unenhanced services

Figure 112008038589623-pat00001
Figure 112008038589623-pat00001

Figure 112008038589623-pat00002
Figure 112008038589623-pat00002

위의 기술 정보는 현재 WSDL 사양에서 행해지는 바와 같은 간단히 열거한 서비스 동작을 보여준다. 동작들은 이 예에서 생략된 기술 정보와 같은 다른 요소들뿐만 아니라 리턴 타입 및 파라미터들을 가질 수 있다. 이 예에서, 서비스는 알람 시계를 제어하는 동작 4개 및 텔레비전을 제어하는 동작 6개인 10개의 동작을 갖는다. 이 기술 정보를 보면, 동작들이 어떻게 서로 관련되는지, 그들이 얼마나 흔하게 이용되는지 분명하지 않다.The above technical information shows a simple enumerated service behavior as is done in the current WSDL specification. The operations may have return types and parameters as well as other elements such as technical information omitted in this example. In this example, the service has ten operations, four operations controlling the alarm clock and six operations controlling the television. Looking at this technical information, it is not clear how the operations relate to each other and how often they are used.

이하의 기술 정보는 본 발명의 일 실시예에 따라 향상된 동일한 서비스를 보여준다.The following technical information shows the same service improved according to an embodiment of the present invention.

향상된 간단한 서비스 XML 기술 정보Enhanced Simple Service XML Technical Information

Figure 112008038589623-pat00003
Figure 112008038589623-pat00003

Figure 112008038589623-pat00004
Figure 112008038589623-pat00004

이 향상된 기술 정보에서, 동작들은 (모든 TV 볼륨과 관련된 동작들에 대한 것과 같은) 추가 하위-그룹화로, 2개의 그룹 ("알람 시계" 동작 및 "텔레비전" 동작)으로 그룹화된다. 또한, 빈도 값이 각 동작에 대해 기재되고, 이값은 액션의 상 대적인 인기를 나타낸다. 위의 2개의 기술 정보를 비교해보면, 향상된 기술 정보가 서비스와 상호 작용하는 고품질 인터페이스를 어떻게 생성하는지에 대한 추가의 중요한 힌트를 제공하는 것이 분명하다.In this enhanced technical information, the operations are grouped into two groups ("alarm clock" operation and "television" operation), with further sub-grouping (such as for all TV volume related operations). In addition, a frequency value is described for each action, which indicates the relative popularity of the action. Comparing the two pieces of technical information above, it is clear that the enhanced technical information provides additional important hints on how to create a high quality interface to interact with the service.

본 발명의 시스템 및 방법은 일반적인 용도의 컴퓨터 또는 컴퓨터 시스템상에서 구현되고 동작할 수 있다. 컴퓨터 시스템은 알려진 임의의 유형일 수 있고 또는 알려진 시스템일 것이며, 통상적으로 프로세서, 메모리 장치, 저장 장치, 입력/출력 장치, 내부 버스, 및/또는 통신 하드웨어 및 소프트웨어 등과 함께 다른 컴퓨터 시스템과 통신하는 통신 인터페이스를 포함할 수 있다.The systems and methods of the present invention may be implemented and operate on a general purpose computer or computer system. The computer system may be of any type known or may be a known system and typically communicates with another computer system in conjunction with a processor, memory device, storage device, input / output device, internal bus, and / or communication hardware and software, and the like. It may include.

상술한 실시예들은 예시적 예들이며 본 발명이 이러한 특정 실시예들로 한정되는 것으로 파악되어서는 안된다. 따라서, 첨부된 청구 범위에서 정의된 바와 같이 본 발명의 정신 또는 범위에서 벗어나지 않고 당업자들에 의해 다양한 변경 및 조정들이 달성될 수 있다.The above-described embodiments are illustrative examples and should not be construed as limiting the invention to these specific embodiments. Accordingly, various changes and adjustments may be made by those skilled in the art without departing from the spirit or scope of the invention as defined in the appended claims.

도 1은 본 발명의 일 실시예의 서비스 기술 정보로부터 서비스 인터페이스를 발생시키는 하이 레벨 아키텍처를 도시한 흐름도이다.1 is a flow diagram illustrating a high level architecture for generating a service interface from service description information in one embodiment of the present invention.

도 2는 본 발명의 일 실시예의 서비스를 위한 사용자 인터페이스를 생성하기 위해, 하이 레벨에서 프로그래머가 어떻게 서비스 기술 정보를 이용하는지를 도시한 도면이다.2 is a diagram illustrating how a programmer uses service description information at a high level to generate a user interface for a service of an embodiment of the present invention.

도 3은 본 발명의 일 실시예에의 GUI를 발생시키면서 향상된 서비스 기술 정보를 이용하는 샘플 프로세스의 흐름도이다.3 is a flow diagram of a sample process that utilizes enhanced service description information while generating a GUI for one embodiment of the present invention.

도 4는 인터페이스가 장치의 폰 키패드를 이용하는 이동 장치를 위해 발생된 서비스 인터페이스의 스크린 샷의 예를 도시한 도면이다.4 shows an example of a screen shot of a service interface generated for a mobile device whose interface uses the phone keypad of the device.

Claims (9)

웹 서비스와 상호 작용하는 고품질 인터페이스를 컴퓨터 시스템 상에서 구성하는 방법에 있어서,In a method for configuring a high quality interface on a computer system to interact with a web service, 웹 서비스의 인터페이스와의 연관을 위하여 서비스 기술 정보(description)를 서비스 기술 언어로 입력받는 단계;Receiving service description information in a service description language for association with an interface of a web service; 상기 웹 서비스의 예상되는 사용 정보를 입력받는 단계로서, 상기 예상되는 사용 정보는 서비스 동작의 그룹화, 서비스 동작의 확률, 서비스 동작의 상대적인 중요도, 및 서비스 동작에 대한 연상 기호 중 적어도 하나를 포함하는 것인, 예상되는 사용 정보를 입력받는 단계; 및Receiving the expected usage information of the web service, wherein the expected usage information includes at least one of grouping of service operations, probability of service operations, relative importance of service operations, and associative symbols for service operations; Receiving input of expected usage information; And 상기 서비스 기술 정보 및 상기 예상되는 사용 정보에 기초하여, 상기 웹 서비스와 상호 작용하는 클라이언트를 위한 인터페이스를 구성하는 단계Configuring an interface for a client to interact with the web service based on the service description information and the expected usage information 를 포함하는 고품질 인터페이스를 컴퓨터 시스템 상에서 구성하는 방법.And configuring a high quality interface on the computer system. 제1항에 있어서, 상기 구성 단계는 머신 상에서 실행되는 프로그램에 의해 자동으로 수행되는 것인, 고품질 인터페이스를 컴퓨터 시스템 상에서 구성하는 방법.The method of claim 1, wherein the configuring step is performed automatically by a program running on a machine. 제1항에 있어서, 상기 구성 단계는 수동으로 수행되는 것인, 고품질 인터페이스를 컴퓨터 시스템 상에서 구성하는 방법.The method of claim 1, wherein the configuring step is performed manually. 제1항에 있어서, 상기 예상되는 사용 정보는 서비스 사용도 또는 이들의 조합에 기초하여, 정적으로 또는 동적으로 기재되는 것인, 고품질 인터페이스를 컴퓨터 시스템 상에서 구성하는 방법.The method of claim 1, wherein the expected usage information is described statically or dynamically based on service usage or a combination thereof. 제1항에 있어서, 상기 서비스 동작은 계층(hierarchy)을 형성하는 것인, 고품질 인터페이스를 컴퓨터 시스템 상에서 구성하는 방법.The method of claim 1, wherein the service operation forms a hierarchy. 제1항에 있어서, 확률 정보는 조건부 확률을 포함하는 것인, 고품질 인터페이스를 컴퓨터 시스템 상에서 구성하는 방법.The method of claim 1, wherein the probability information comprises conditional probabilities. 제1항에 있어서, 상기 예상되는 사용 정보는 사용자와 통신함으로써 사용자에 대해 맞춤화되는(tailored) 것인, 고품질 인터페이스를 컴퓨터 시스템 상에서 구성하는 방법.The method of claim 1, wherein the expected usage information is tailored for the user by communicating with the user. 제7항에 있어서, 상기 사용자와 통신하는 것은, 사용자의 위치, 나이, 성별, 또는 다른 선호 사항 중 적어도 하나에 대한 판단을 포함하는 것인, 고품질 인터페이스를 컴퓨터 시스템 상에서 구성하는 방법.8. The method of claim 7, wherein communicating with the user includes determining at least one of a user's location, age, gender, or other preferences. 웹 서비스와 상호 작용하는 고품질 인터페이스를 구성하는 시스템에 있어서,In the system to configure a high quality interface to interact with the web service, 웹 서비스의 인터페이스와의 연관을 위하여 서비스 기술 정보를 서비스 기술 언어로 기재하는 수단;Means for describing service description information in a service description language for association with an interface of a web service; 상기 웹 서비스의 예상되는 사용 정보를 기재하는 수단으로서, 상기 예상되는 사용 정보는 서비스 동작의 그룹화, 서비스 동작 확률 및 상대적인 중요도 중 적어도 하나를 포함하는 것인, 예상되는 사용 정보를 기재하는 수단; 및Means for describing expected usage information of the web service, wherein the expected usage information includes at least one of a grouping of service operations, a service operation probability, and a relative importance; And 상기 서비스 기술 정보 및 상기 예상되는 사용 정보에 기초하여, 상기 웹 서비스와 상호 작용하는 클라이언트를 위한 인터페이스를 구성하는 수단Means for configuring an interface for a client to interact with the web service based on the service description information and the expected usage information 을 포함하는 고품질 인터페이스를 구성하는 시스템.System for configuring a high quality interface comprising a.
KR1020080050255A 2008-05-29 2008-05-29 Augmenting service description with expected usage information KR101036861B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080050255A KR101036861B1 (en) 2008-05-29 2008-05-29 Augmenting service description with expected usage information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080050255A KR101036861B1 (en) 2008-05-29 2008-05-29 Augmenting service description with expected usage information

Publications (2)

Publication Number Publication Date
KR20090124191A KR20090124191A (en) 2009-12-03
KR101036861B1 true KR101036861B1 (en) 2011-05-25

Family

ID=41686153

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080050255A KR101036861B1 (en) 2008-05-29 2008-05-29 Augmenting service description with expected usage information

Country Status (1)

Country Link
KR (1) KR101036861B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002215486A (en) 2000-08-31 2002-08-02 Schneider Autom Communication system for controller based on wsdl
KR20050056899A (en) * 2003-12-10 2005-06-16 마이크로소프트 코포레이션 Systems and methods that employ process algebra to specify contracts and utilize performance prediction implementations thereof to measure the specifications
JP2005209194A (en) 2004-01-23 2005-08-04 Hewlett-Packard Development Co Lp User profile service
KR20060089616A (en) * 2005-02-04 2006-08-09 마이크로소프트 코포레이션 Utilizing abstract descriptions to generate, exchange, and configure service and client runtimes

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002215486A (en) 2000-08-31 2002-08-02 Schneider Autom Communication system for controller based on wsdl
KR20050056899A (en) * 2003-12-10 2005-06-16 마이크로소프트 코포레이션 Systems and methods that employ process algebra to specify contracts and utilize performance prediction implementations thereof to measure the specifications
JP2005209194A (en) 2004-01-23 2005-08-04 Hewlett-Packard Development Co Lp User profile service
KR20060089616A (en) * 2005-02-04 2006-08-09 마이크로소프트 코포레이션 Utilizing abstract descriptions to generate, exchange, and configure service and client runtimes

Also Published As

Publication number Publication date
KR20090124191A (en) 2009-12-03

Similar Documents

Publication Publication Date Title
US20080172621A1 (en) Augmenting service description with expected usage information
US20190220332A1 (en) Application processing method and apparatus
TWI528282B (en) Method for customizing launching of applications
US20090031243A1 (en) Method and apparatus for controlling display of windows
AU2014327147B2 (en) Quick tasks for on-screen keyboards
US8694925B1 (en) Generating customized graphical user interfaces for mobile processing devices
US20120209608A1 (en) Mobile communication terminal apparatus and method for executing application through voice recognition
CN108549568B (en) Application entry processing method and device, storage medium and electronic equipment
US8712756B2 (en) Character input device and program for displaying next word candidates based on the candidates&#39; usage history
KR20120002580A (en) Mobile communications device user interface
JP2003186614A (en) Automatic software input panel selection based on application program state
WO2008127939A1 (en) Input method editor integration
EP2866158A1 (en) Method for reader to provide service, reader, terminal and computer storage medium
CN110727434B (en) Rendering method, rendering device, electronic equipment and storage medium
CN114174972B (en) Automated assistant controlled compressed spoken utterances for complex application GUIs
CN107729042A (en) Mobile solution upgrade method and device, storage medium, electronic equipment
US7675435B2 (en) Smart filtering with multiple simultaneous keyboard inputs
CN111766987B (en) Application program management method and device and electronic equipment
US20140325535A1 (en) Method of switching desktop subjects of mobile terminal and its switching apparatus
CN108052212A (en) A kind of method, terminal and computer-readable medium for inputting word
KR101036861B1 (en) Augmenting service description with expected usage information
US20160313958A1 (en) Cross-platform command extensibility
CN114416232A (en) Method, device, equipment and storage medium for remote application to use local input method
CN103685747B (en) The modification method of input number and correction device
KR20040095410A (en) Method for processing data service using multi window in mobile phone

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140219

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150519

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee