What software tools should be used to build Web-based DSS?
by Dan Power
Editor, DSSResources.com
Many Information Systems people, including students and managers,
want to do more that try a Web-based DSS. They want to build one!
Routinely I receive emails from students working on Masters degree
projects who want to build a Web-based DSS. I also receive emails
from IS/T staff who want to build low cost or experimental
applications for their companies. Much has changed over the past 10
years in terms of how I respond to this question.
In 1996, my response was to use Perl and static HTML with an Apache
web server running on a Sun Solaris server. I'd caution people about
problems accessing databases. By the late 1990s, I was criticising
the user interfaces of home grown Web-based DSS and encouraging IS/T
staff to buy off-the-shelf development tools from Information
Advantage or Microstrategy. In a short Ask Dan! column in 2000 (DSS
News, Vol. 1, No. 3) titled "How can we provide Web access to a
DW/DSS database?", I was explaining the need to use middleware like
ColdFusion, Active Server Pages, and PHP to access legacy databases.
Managers wanted easier access to DSS and Web-based DSS was the answer
to meeting that need.
A Web-based DSS delivers decision support information and decision
support tools to a manager or business analyst using a "thin-client"
Web browser. Web-Based DSS can be communications-driven, data-driven,
document-driven, knowledge-driven, or model-driven DSS or a
combination of Web-based transaction processing-data gathering and
various DSS supporting business processes. Web technologies can be
used to implement any category or type of DSS. Web-based means the
entire application is implemented using Web technologies; Web-enabled
means key parts of an application like a database remain on a legacy
system, but the application can be accessed from a Web-based
component and displayed in a browser.
Today, I tell students that they should use LAMP technologies to
build their innovative Web-based DSS projects. Similarly I recommend
LAMP for IS/T staff who want to build innovative, small-scale
Web-based DSS.
For example, I spoke recently with the President of a small
manufacturing company who wanted to build a Web-based DSS that would
capture and codify the expertise of two long term employees who were
retiring. He was considering videotaping interviews with the
employees on various technical topics related to the installation and
maintenance of the equiptment the firms manufactured and making the
videos available from the Web to support the training and decision
making of service technicians. The idea needs some further analysis
and elaboration, but I would probably recommend working with LAMP
technologies for this project. Also, my research project to build a
role-oriented planning decision support system (PlanningDSS.com) uses
LAMP technologies (cf., DSS News, Vol. 6, No. 12).
Some readers may be wondering what are LAMP technologies. That's OK
because the jargon of open source software is just now catching up
with the commercial, proprietary world associated with Wintel, Oracle
and MicroStrategy. The acronym LAMP (or L.A.M.P.) refers to a set of
open source software programs commonly used together to run dynamic
Web sites: Linux, the operating system; Apache, the Web server;
MySQL, the database management system and server; and PHP, the
scripting/programming language. The LAMP acronym describes the web
server infrastructure and some vendors are bundling the products
together as a software distribution package. Check the Wikipedia
articles on Linux, PHP and the LAMP software bundle.
LAMP is a powerful, low cost development environment for Web-based
DSS. Let's examine the four major components in more detail.
Linux, pronounced lee-nucks or lih-nucks. According to Linux.org,
"Linux is a free Unix-type operating system originally created by
Linus Torvalds with the assistance of developers around the world.
Developed under the GNU General Public License, the source code for
Linux is freely available to everyone." Torvalds began writing his
kernel as a fun student project while attending the University of
Helsinki in 1991. The Linux kernel can be found at
http://kernel.org/, as well as versions of several free
distributions.
Apache, an open source Web server originally formed by taking all the
'patches' (bug fixes) to the NCSA Web server and creating a new
server. The Apache Software Foundation's homepage is located at
http://www.apache.org/.
MySQL is an open source database for the Web. It has a small, highly
optimized database engine that implements the SQL92 specification. It
can be found online at http://www.mysql.com/.
PHP is a general-purpose scripting language for Web application
development that can be embedded into HTML. PHP is
"self-referentially short for PHP: Hypertext Preprocessor". It was
created sometime in 1994 by Rasmus Lerdorf. During mid-1997, Zeev
Suraski and Andi Gutmans, rewrote the parser from scratch to create
PHP version 3 (PHP3). PHP is open-source, cross-platform, offers
excellent connectivity and provides a choice of using procedural
programming or object oriented programming. The homepage for PHP can
be found at http://www.php.net/.
Linux has been the cornerstone of the "LAMP" server-software
combination. PHP and MySQL are often referred to as the "dynamic duo"
of Web scripting. These technologies are receiving increasing interest
and attention from IBM, Oracle and even Microsoft. PHP is also used
with Microsoft components in place of ASP. Also, the United Nations
Development Program is pushing open source and LAMP as a means of
reducing the cost of IS/T infrastructure and applications.
Recently, Oracle announced its "Unbreakable Linux support package"
for the Red Hat Linux distribution. Microsoft announced a long-term
partnership with Zend, the PHP distributor. PHP 5.2 was just released
by Zend Technologies. Speaking at the Zend/PHP Conference & Expo, Andy
Gutmans, Zend co-founder, said the 5.2 release would have significant
performance improvements and a security extension. Also featured is
better AJAX (Asynchronous JavaScript and XML) support. The theme of
the recent 2nd Annual Zend/PHP Conference & Expo was "Creating Modern
Web Applications with PHP".
According to NetCraft, PHP has surpassed ASP as most popular web
scripting language and the Zend Engine is being utilized on over 15
million websites. Commercially, the company's web application
platform products have over 8,000 customers in over 6,000 companies
worldwide.
Can LAMP be used to build large-scale, data-driven DSS and business
intelligence applications? I am still somewhat skeptical about the
performance of LAMP with muli-Terabyte databases, but I'm exploring
the possibilities. In July 2003, MySQL AB announced that Cox
Communications was using a large scale data warehouse built with
MySQL for decision support. I am following up on that press release
with plans to write a case study.
Cox Communications serves more than 6 million customers. It uses its
DW/BI system to provide real-time customer support and expedite
internal and customer trending and analysis. On a daily basis, Cox
uses MySQL to pull data from over 1.2 million cable modems. In 2003
the database included more than 3,600 tables and 2 billion rows of
data. Overall, the MySQL database handles approximately 4 million
inserts every two hours. Cox uses the "LAMP" software set, with Red
Hat Linux, Apache, MySQL, PHP and Perl. The Cox technical environment
included the IBM xSeries servers, running Linux. Two Linux boxes with
2.5 terabytes of disk space in a high availability configuration
serve all of their high speed Internet customer care account lookups
and real-time modem polling.
My plan is to follow-up with Mark Cotner, manager of Network
Application Development at Cox, and see how the DW/BI LAMP
application is currently performing.
Can and should companies use LAMP technologies to build Web-based
DSS? YES, MAYBE. The jury is still waiting to make a decision on open
source for Web-based DSS, especially large-scale, data-driven DSS. My
sense is that we'll see a mix of proprietary and open source in
applications. The challenge is to determine what mix best meets the
decision support need at the lowest total cost of ownership.
References
Power, D., How can we provide Web access to a DW/DSS database? DSS
News, Vol. 1, No. 3, June 6, 2000.
Power, D., What are some examples of web-based DSS? DSS News, Vol. 4,
No. 10, May 11, 2003.
Power, D., What is PlanningDSS.COM? DSS News, Vol. 6, No. 12, May 22,
2005.
Power, D., Where can I find or download a DSS demo?" DSS News,
January 5, 2003.
Power, D. and S. Kaparthi, "Building Web-based Decision Support
Systems", Studies in Informatics and Control, Vol. 11, Number 4, Dec.
2002, pp. 291-302, URL
http://www.ici.ro/ici/revista/sic2002_4/art1.pdf
Wikipedia, the free encyclopedia, URL
http://en.wikipedia.org/wiki/LAMP_(software_bundle) .
Recommended Websites:
http://www.onlamp.com
http://www.linux.org
http://www.apache.org
http://www.mysql.com
http://www.php.net
http://www.zend.com
Last update: 2009-03-18 09:36
Author: Daniel Power
Print this record
Show this as PDF file
You cannot comment on this entry