What is a RESTful decision support application?
by Daniel J. Power
Editor, DSSResources.COM
A specific decision support vision and a well-defined architecture for a new application provides a direction for making design decisions. As technologies evolve computing and decision support architectures change and evolve, but new patterns are not common (cf., Power, 2007). Service oriented and message-based implementations of decision support systems (cf., Natis, 2003) are still not common. The REST/AJAX architectural style is an evolving set of standards for web-based and now smart phone applications. The four traditional DSS architectures, bridge, network, sandwich and tower identified by Sprague and Carlson (1982) continue to provide high-level design direction, but more architectural detail is desirable. REST is an architectural style. A RESTful DSS uses a REST architecture.
A RESTful decision support application is a web-based application built using AJAX, Asynchronous JavaScript and XML. REST, an acronym for Representational State Transfer, is an architectural style built on standards governed by the World Wide Web Consortium (W3C), such as HTTP, URI (Uniform Resource Identifier) and RDF (Resource Description Format).
The REST/AJAX architectural style updates web pages asynchronously by exchanging small amounts of data with the server and updating only parts of a web page. In the Web browser an event occurs, for example a mouse click on a button, that creates an XMLHttpRequest object and sends a request to the web server, the server processes the request and creates a response that is sent back to the browser over the Internet. The browser processes the data response using Javascript to update the page content. AJAX is built on W3C standards including the XMLHttpRequest object, JavaScript/Document Object Model (DOM), Cascading Style Sheets (CSS), and Extensible Markup Language (XML). AJAX applications are browser- and platform-independent (see w3schools.com).
Commentators disagree about the definition of REST and about its advantages and disadvantages. In general, it seems REST creates more structure for coding web-based decision support applications. The Web API is easier to understand and use and the response of pages is faster. REST is better for decision support than for transaction processing applications. Some observers feel the development of Web services is faster with a REST architecture. A post at coderanch.com argues "RESTful web services are typically stateless and therefore easily scalable." REST is often viewed as an alternative to Simple Object Access Protocol (SOAP). These protocols are difficult to assess for a decision support developer. Additional research and a review of development environments seems very desirable.
References
MacVittie, L. "REST (Representational State Transfer)," Network Computing, September 28, 2006 at URL http://www.networkcomputing.com/other/rest-representational-state-transfer/229611129 .
Natis, Y. V., "Service-Oriented Architecture Scenario," Gartner, April 16, 2003, URL http://www.gartner.com/DisplayDocument?doc_cd=114358 .
Power, D. J. "What are common DSS architectural patterns or styles?" DSS News, Vol. 8, No. 20, October 7, 2007.
Sprague, R.H. and E.D. Carlson. Building Effective Decision Support Systems. Englewood Cliffs, NJ: Prentice-Hall, 1982.
W3Schools, "AJAX Tutorial," http://www.w3schools.com/ajax/default.asp
Wikipedia -- the free encyclopedia, "REST" at URL http://en.wikipedia.org/wiki/REST
Wikipedia -- the free encyclopedia, "SOAP" at URL http://en.wikipedia.org/wiki/SOAP
Last update: 2014-01-19 07:24
Author: Daniel Power
Print this record
Show this as PDF file
You cannot comment on this entry