TY - GEN
T1 - A mosaic of software
AU - McHenry, Kenton
AU - Kooper, Rob
AU - Ondrejcek, Michael
AU - Marini, Luigi
AU - Bajcsy, Peter
PY - 2011
Y1 - 2011
N2 - In this paper we describe a Software Server, a background process that in conjunction with a central repository of lightweight wrapper scripts allows functionality within heterogeneous software to be called in a simple and consistent manner. The key role of the Software Server is to provide a common interface to software functionality in a manner that can be programmed against, in essence re-introducing an API to compiled code. Using the Java rest let framework, we provide a Restful interface consisting of URL endpoints allowing any programming/scripting language capable of accessing URLs to utilize software functionality as a black box. In addition to being widely accessible the Restful interface allows for a secondary role from Software Servers by giving them the ability to turn any traditional desktop software into a cloud based web service. In this paper we describe these Software Servers, the scripts we use to wrap primarily GUI based software, and show how these servers allow software to be called and interconnected into workflows across distributed machines. Finally, quantitative experiments showing the feasibility of the described Software Servers on a number of applications are presented.
AB - In this paper we describe a Software Server, a background process that in conjunction with a central repository of lightweight wrapper scripts allows functionality within heterogeneous software to be called in a simple and consistent manner. The key role of the Software Server is to provide a common interface to software functionality in a manner that can be programmed against, in essence re-introducing an API to compiled code. Using the Java rest let framework, we provide a Restful interface consisting of URL endpoints allowing any programming/scripting language capable of accessing URLs to utilize software functionality as a black box. In addition to being widely accessible the Restful interface allows for a secondary role from Software Servers by giving them the ability to turn any traditional desktop software into a cloud based web service. In this paper we describe these Software Servers, the scripts we use to wrap primarily GUI based software, and show how these servers allow software to be called and interconnected into workflows across distributed machines. Finally, quantitative experiments showing the feasibility of the described Software Servers on a number of applications are presented.
KW - cloud computing
KW - digital preservation
UR - http://www.scopus.com/inward/record.url?scp=84856352395&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84856352395&partnerID=8YFLogxK
U2 - 10.1109/eScience.2011.46
DO - 10.1109/eScience.2011.46
M3 - Conference contribution
AN - SCOPUS:84856352395
SN - 9780769545974
T3 - Proceedings - 2011 7th IEEE International Conference on eScience, eScience 2011
SP - 279
EP - 286
BT - Proceedings - 2011 7th IEEE International Conference on eScience, eScience 2011
T2 - 7th IEEE International Conference on eScience, eScience 2011
Y2 - 5 December 2011 through 8 December 2011
ER -