Opening a Closed System: Implementing a Remote Communication Mechanism over an Existing Product

2008 
The design and implementation of new product features must be mindful of the existing product architecture. This report describes how we transformed our product from instances that resided as isolated nodes to instances that are able to share knowledge with each other over a peer-to-peer network. Our product, Health Data Integration (HDI), is a tool designed to be used by researchers to integrate data from various data sources. Recently HDI has been enhanced to add a feature that allows distinct HDI instances (known as Remote Domains) to communicate with each other. The design for Remote Domain communication is based on a peer to peer model that communicates over the HTTPS protocol[1]. The design enables the reduction of coupling between remote HDI installations as much as practical, thus providing the ability for HDI instances with different versions to communicate with each other. This report describes the architecture of HDI prior to the implementation of the Remote Domain feature, and how this architecture influenced the decisions that were made when designing the new feature. The requirements and constraints on Remote Domain communication are then described, followed by the design that was created to support Remote Domain communication. Our experiences with using source code control processes to implement the new feature are described, along with how our quality control procedures helped to increase confidence in the end product. Lastly reflections are made on alternative approaches and possible improvements.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    2
    References
    1
    Citations
    NaN
    KQI
    []