Abstract
Mashups have become very popular over the last few years, and their use also varies for IT convergency services. In spite of their popularity, there are several challenging issues when combining Open APIs into mashups, First, since portal sites may have a large number of APIs available for mashups, manually searching and finding compatible APIs can be a tedious and time-consuming task. Second, none of the existing portal sites provides a way to leverage semantic techniques that have been developed to assist users in locating and integrating APIs like those seen in traditional SOAP-based web services. Third, although suitable APIs have been discovered, the integration of these APIs is required for in-depth programming knowledge. To solve these issues, we first show that existing techniques and algorithms used for finding and matching SOAP-based web services can be reused, with only minor changes. Next, we show how the characteristics of APIs can be syntactically defined and semantically described, and how to use the syntactic and semantic descriptions to aid the easy discovery and composition of Open APIs. Finally, we propose a goal-directed interactive approach for the dynamic composition of APIs, where the final mashup is gradually generated by a forward chaining of APIs. At each step, a new API is added to the composition.
최근에 매쉬업은 미래 IT 융합 서비스의 효과적인 구현 방법으로써 그 관심도가 점점 높아지고 있으며 그들의 활용도 매우 다양하다. 그렇지만 이러한 높은 관심에도 불구하고 Open API들을 매쉬업 속으로 결합할 때 여러 가지 이슈들이 있을 수 있다. 첫째, 포털사이트들은 매쉬업에서 사용 가능한 수많은 API들을 제공하고 있는데, 이들에 대한 적합한 API들을 수동으로 탐색하고 발견하는 것은 매우 힘들고 많은 시간이 소비되는 작업이다. 둘째, 현존하는 어떠한 매쉬업 포털 사이트들도 전통적인 SOAP 기반 웹 서비스 분야에서 보였던 것처럼 API들을 찾고 통합하는데 시맨틱 기법을 활용하는 사이트는 없다. 세째, 적합한 API들을 발견하였더라도 특별한 기술적 훈련 없이 값어치 있는 매쉬업을 생성하기란 현실적으로 어려운 일이다. 본 논문에서는 위와 같은 이슈들을 해결하기 위해 먼저 기존의 SOAP 기반 웹 서비스 분야에서 사용된 시맨틱 기반 기술 및 알고리즘들을 최소의 수정만으로 재사용할 수 있음을 보인다. 다음으로, 조합 가능한 API들을 발견하기 위해 어떻게 API 특성들이 신택틱하게 정의되고 시맨틱하게 묘사될 수 있는지 보인다. 그러고 이러한 신택틱/시맨틱 정보들이 어떻게 Open API들의 발견과 조합에 도움을 줄 수 있는지 보인다. 마지막으로, 동적 Open API 조합을 위한 대화형 목표 지향 접근 방법을 제안한다. 여기서 최종 매쉬업은 API들의 순차적 접근 방법에 의해 점차적으로 각 단계에서 하나씩 새로운 API가 조합에 첨가된다.