What software tools should be used to build Web-based DSS?
by Dan Power
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.
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.
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) .
Last update: 2009-03-18 09:36
Author: Daniel Power
You cannot comment on this entry