Web Application Development Tools/Environments Tim Sigmon George Pipkin, Bill Niebel, Wade Komisar Dave Saunders, Nathan Piazza Advanced Technology Group May 13, 1999
Introduction • development of web apps is a huge topic • this overview focuses on • apps needing database connectivity • tools/environments for developing apps • this overview does not focus on • non-programmatic web sites • tools like HTML editors, etc. • DBMS, data modeling, etc.
Pieces of the puzzle • deployment • database • application logic (server-side, client-side) • browser • development • easy-to-use studio • visual programming vs. traditional • extensive collection of useful objects
Application categories • Enterprise/institutional • School/department/organization • Individual faculty/staff/student
Comparison Space • what can it do? • who can develop/author using it? • who must support it? • how much does it cost? • what platforms does it support for development? for deployment? • how reliable/scalable is it?
Survey of products/environments • “low end” solutions • CGI with Perl, C++, etc. • PHP - http://php.myphp.net • open-source embedded server-side scripting language • platforms: Unix and NT with Apache (and other web servers) • databases: mySQL, Oracle, Sybase, Informix, ODBC • no load-balancing but higher-performance engine soon (Zend) • no visual builder (could use Dreamweaver which is extensible) • ASP - Active Server Pages • part of Microsoft IIS running on NT server • supports embedded Jscript, VBscript • no studio builder (can use Drumbeat, MSFT Visual Interdev)
Product survey (cont’d) • “higher-end” (more scalable) solutions • Cold Fusion Studio/Server • http://www.allaire.com • serves dynamic, database-driven content • uses CFML, SQL, and HTML • platforms: NT and Solaris • multi-threaded service with thread pooling, db connection caching, just-in-time compilation • studio (NT only) provides easy-to-use visual builder
Product survey (cont’d) • Sun NetDynamics Application Server/Studio • http://www.netdynamics.com • highly scalable, sophisticated app server centered around Java • Platform Adapter Components support CORBA, COM, SAP, PeopleSoft (SDK provided for customized PAC’s) • supports Enterprise Java Beans • visual builder with lots of wizards • platforms: IIS, Apache, Netscape Enterprise Server • databases: Oracle, Sybase, Informix, DB2, ODBC, JDBC
Product survey (cont’d) • Apple WebObjects • http://www.apple.com/webobjects • centered around NeXT’s OpenStep • app server supports multi-CPU and load balancing • runs on web servers that support CGI, NSAPI, ISAPI, WAI • database interface via proprietary adapters for Oracle, Sybase, Informix, ODBC • visual builder for NT and MacOS X • v4.1 shows considerable support for Java
Product survey (cont’d) • Sapphire Web • http://www.sapphireweb.com • uses proprietary Java-based architecture called Universal Business Server • supports load balancing and multi-CPU operation • platforms: NT and Unix • databases: Oracle, Sybase, Informix, DB2, ODBC, JDBC • includes a visual builder
Product survey (cont’d) • HAHTsite • http://www.haht.com • now capable of 100% Java or HahtTalk Basic • supports load balancing and multi-CPU operation • particularly nice support for PDF forms • platforms: NT and Unix • databases: Oracle, Sybase, Informix, ODBC • nice visual builder tool
UVA environment • institutional apps • CGI using C++ and Perl, e.g., event calendar, eforms, Instructional Toolkit, Electronic Filing Cabinet • Crosstalk used for web access to CICS legacy apps, e.g., student info, registration, etc. • school/dept and individual apps • most dept/org/indiv web sites now on large Unix machines with Apache web server • minimal central support for app development (special programs such as TTI, IATH, etc.) • CGI/Perl, Cold Fusion, Sapphire, etc.
UVA plans • working on some centrally supported solutions • NT with Microsoft tools plus Cold Fusion plus ? • for our large Unix platforms may provide mySQL with Java servlets, JSP, PHP, Perl, etc. • investigating generic enterprise solutions • Java servlets, Java Server Pages, Java beans • Sun’s Java web server • supports servlets, servlet beans, remote servlets • IBM’s Websphere app server • Apache add-on • extensions to servlet API support multi-CPU operation • IBM’s Visual Age for Java servlet builder
CSG survey results • only a handful of responses • little to no central support for dept/indiv application development • institutional apps developed using ERP tools or CGI with Perl/C or Cold Fusion or ...
Other CSG member activities • Michigan (Gavin Eadie) • Georgetown (Charlie Leonhardt) • others?
IDC’s Imperatives for Enterprise-Scale, Web-Centric Computing • standards compliance • object orientation • database neutrality • modularity and team-based development • transaction orientation (ACID properties) • security • reliable, scalable performance
Preferences peculiar to a given institution • ERP decision/direction • existing expertise/support (tools, server platforms, etc.) • buy or build tradition/preference • existing infrastructure (security, authentication, directory, etc.)