DocumentCode :
702807
Title :
An update to the software architecture of the iLab Service Broker
Author :
Colbran, Samuel ; Schulz, Mark
Author_Institution :
Univ. of Queensland, Brisbane, QLD, Australia
fYear :
2015
fDate :
25-27 Feb. 2015
Firstpage :
90
Lastpage :
93
Abstract :
The MIT iLab architecture (consisting of Lab Servers and Service Brokers) was designed in the 1990´s and while the Lab Server was designed as a software service the same architectural approach was not adopted for the Service Broker. This paper reports on a redesign of the Service Broker as a software service, which is itself a collection of software services. In the process of this redesign it was decided to examine the API on the Lab Server and to support not only the existing Lab Server API (to maintain support for all existing iLab Lab Servers) but to concurrently support an alternative lightweight API based upon a RESTful architecture and to use JSON to encode the data. As these changes required a complete rewrite of the Service Broker code base, it was decided to experiment with an implementation of the services using Node.js - a popular approach to the implementation of servers in Javascript. The intention was to open up the code base to code developers normally associated with web development and not normally associated with the development of remote laboratories. A new software service named an “agent” was developed that wraps around the service broker to allow programmable modification of requests. The agent also has the ability to serve up an interface to user clients. The use of agents has advantages over existing implementations because it allows customised authentication schemes (such as OAuth) as well as providing different user groups with unique Lab Clients to the same Lab Servers. Lab Clients no longer are served up through the Service Broker, but can reside anywhere on the Internet and access the Service Broker via access to a suitable agent. One outcome of these architectural changes has been the introduction of a simple integration of a remote laboratory in the Blackboard Learning Management System (LMS) using a Learning Tool Interoperability (LTI) module for user authentication.
Keywords :
Internet; Java; application program interfaces; learning management systems; open systems; security of data; software architecture; user interfaces; API; Blackboard learning management system; Internet; JSON; Javascript; LMS; LTI module; Lab Server; MIT iLab architecture; Node.js; RESTful architecture; application program interfaces; customised authentication schemes; iLab service broker; learning tool interoperability; remote laboratory; software architecture; software service; user authentication; Authentication; Computer architecture; Java; Protocols; Remote laboratories; Servers; Software; ISA; ISABM; MIT iLab; Node.js; Remote laboratories; Web Services; iLab Service Broker;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Remote Engineering and Virtual Instrumentation (REV), 2015 12th International Conference on
Conference_Location :
Bangkok
Type :
conf
DOI :
10.1109/REV.2015.7087269
Filename :
7087269
Link To Document :
بازگشت