Heterogeneous nature of pervasive environments requires applications to be dynamically reconfigured according to the current context. Dynamic adaptation is one of major considerations to support application reconfiguration seamlessly and transparently. However, the existing approaches only try to bind the exactly same as or similar to the service in the previous context when a user moves to a new context. If the required service does not exist, application reconfiguration fails or users are interrupted since they have to choose appropriate service components. To overcome this, we incorporate the notion of behavioral sub-typing, a principle of substitutability, into application reconfiguration. The proposed mechanism substitutes the required service with either its sub-type or its super-type in run-time when it is not available at the target context. A request to an original operation (functionality) is transparently translated into one of three cases; substitution with its sub-type, substitution with its super-type, or coercion to its super-type functionality.
퍼베이시브 컴퓨팅(pervasive computing) 환경에서 어플리케이션은 동적으로 변하는 컨텍스트(context)에 따라서 현재 컨텍스트에 맞게 동적으로 변화해야만 한다. 이러한 동적인 적응성은 어플리케이션이 컨텍스트에 따라 투명하게 그리고 끊임없이 동작하도록 하는데 있어 중요한 고려사항 중 하나이다. 사용자가 새로운 컨텍스트로 이동했을 매 기존의 접근 방법은 똑같은 서비스만을 찾거나 기존의 컨텍스트와 유사한 것만을 찾는 방식이었다. 이러한 접근방법의 단점은 요구되는 서비스가 없을 시에 투명한 어플리케이션 재구성이 실패하게 되어 결국 사용자로 하여금 직접 적절한 서비스를 선택하는 작업을 수행시킨다는 것이다. 이러한 단점을 극복하기 위해, 본 논문에서는 behavior subtyping의 개념(치환의 원리)을 이용한 탄력적인 서비스 구성 메커니즘을 제시하였다. 즉, 요구되는 서비스가 새로운 컨텍스트에 없을 시에 그 서비스의 sub-type이나 super-type으로의 변환을 가능하게 하는 것이다. 어플리케이션 실행 시, 기존 서비스 기능의 요청은 다음과 같이 3가지 형태로 투명하게 변환된다. Sub-type 혹은 super-type 서비스 기능으로 대체되거나, super-type 기능으로 교체된다.