Web-based Software Development - An introduction
The Client/Server Model Process to process communication (PPC) The underlying platform of the client/server programming. Web-based Software Development
The Client/Server Model Two Tier (Traditional) Client/Server Model Exercise: Name a commonly used client/server technique. Sockets programming Web-based Software Development
The Client/Server Model Three Tier Client/Database/Server Model ? ? APIs: JDBC ADO Web-based Software Development
The Client/Server Model Two Tier Web Based Model Web-based Software Development
Three Tier Web Based Model Web-based Software Development
Multi-Tier Web Based Model Various configurations? Multiple Databases Distributed Databases Multiple application instances Web server farm Web-based Software Development
Sample Web Based Applications dynamic web pages – interactive i/o multimedia presentations Web based multi-player games access to remote databases connectivity to legacy computer systems front end of a transaction application intranet applications scientific simulation and visualization Web-based Software Development
Web-based Software Development Sample Web Based Applications - scientific simulation and visualization Web-based Software Development
Representative Web technology - Client Side Development Interpreted or executed by the client (that is, the Web browser). Note: Web pages are originally stored on the Web server. Web-based Software Development
Representative Web technology - Client Side Development Issues with client side scripting Inconsistent support across the Web browsers Source exposed to the viewer Security Awkward connectivity to back-end (e.g., ODBC) Web-based Software Development
Representative Web technology - Server Side Development Interpreted or executed by the server side applications. The result is then sent back to the Web browser. Web-based Software Development
Representative Web technology Server Side Technologies Common Gateway Interface (CGI) Active Server Pages (ASP) Java Servlets Java Server Pages (JSP) Distributed Components-Based Technology ( CORBA, DCOM, EJB, RMI, … ) Web-based Software Development
Representative Web technology Database Connections JDBC: Java Database Connectivity ODBC: Open Database Connectivity OLE-DB ADO: ActiveX Data Objects Web-based Software Development
Representative Web technology Components Programming Tools - languages, technologies and APIs Web Browsers Internet Explorer, Netscape Navigator Web Servers Apache, IIS, … Applications (Servers) Oracle Application Server, WebSphere Advanced Server, WebLogic, Netscape Enterprise Server, … Database Servers Oracle Database Server, MS SQL Server, IBM DB2, SyBase, Informix, … Java Virtual Machines (JVMs), plug-ins, activeX components, ... Client-side programming: HTML, JAVA Applets, Java Script, VB Script, VRML, XML, … Server-side programming: Java Servlets, Java Server Pages, Active Server Pages, CGI, Java Script, VB Script, ... ODBC, JDBC, ADO, SQL Net, SQLJ, ... Web-based Software Development