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 EnterpriseScale, 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.)