Module Identifier CS15820  
Module Title WEB PROGRAMMING  
Academic Year 2004/2005  
Co-ordinator Mr Nigel W Hardy  
Semester Semester 2  
Other staff Dr Adrian D Shaw, Dr Lynda A Thomas, Mr Nigel W Hardy  
Pre-Requisite CS12230 or CS12320  
Mutually Exclusive CS10210, CS25810  
Course delivery Lecture   44 Hours  
  Practical   11 x 2 hours  
Assessment
Assessment TypeAssessment Length/DetailsProportion
Semester Exam1.5 Hours Written Exam  60%
Semester Assessment Assessed coursework An average student should carry out the work to an acceptable standard during weekly practical sessions. Twice this amount of time is allocated in the breakdown below.4 x 1-week assignments (4% each).3 x 2-week assignments (8% each).40%
Supplementary Assessment Will take the same form under the terms of the Department's policy.   

Learning outcomes

On successful completion of this module students should be able to:
1. Describe the architecture of the web and publication of material on the web.

2. Explain the distinction between structure, content and presentation of web material and the benefits of maintaining that distinction.

3. Describe the client-side environment and its potential in providing web features.

4. Describe the server-side environment and its potential in providing web features.

5. Explain the role and potential of databases in providing web features.

6. Describe the main features of XML and XSL in the context of the web.

7. Build simple web pages by writing HTML and control presentation using CSS.

8. Write simple EcmaScript code, embedded in HTML, to interact with the browser, generate content, and check input.

9. Write and deploy an applet.

10. Write and deploy simple server-side code embedded in HTML and in the cgi-bin environment.

11. Write and deploy a servlet.

12. Write code to generate web pages from a database.

13. Write server-side code that maintains a session.

Aims

CS10210 was designed to be accessible to service students. We no longer have any uptake from them. Material from CS25810 is needed at ever-earlier stages in degree schemes. A 20 credit module introducing this material and developing practical skills for later use is central to the proposed new Business Information Technology degree and will represent a positive development for all single honours schemes.

Brief description

This module introduces the crucial technologies and architectures for the production of web material. The communications basis of the web, structure and presentation of content, client-side code and server-side code are covered. Students will have the opportunity to develop their technical understanding and their practical skills.

It will become a pre-requisite for new level 2 modules.

Content

Each item represents 1 week, comprising 4 one-hour lectures and 2 hours of practical.

1. IntroductionOutline of the architecture of the web and the associated technologies: HTTP; servers; server environments; browsers, browser helper applications; static and dynamic content. Importance of standards, 'rrowser wars?. Introduction of a running case study. Version control. Information architectures.

2. Content, structure and presentationHTML, CSS. HTML as XML. Documents as trees.

3. Client-side code - IEcmaScript: interaction with browsers; content generation; input checking.

4. Client-side code ? IIApplets: the API; the JVM.

5. Server-side codeContent generation. The server-side environment: HTTP methods; HTTP parameters.

6. Code embedded in HTMLServer-side includes. A suitable general language.

7. cgi-bin codingA suitable language. HTML generation. Operating system and Internet service access.

8. ServletsThe API, containers. JSP.

9. Database accessHTML embedding; cgi-bin; applets; servlets. Dynamic generation of web pages.

10. Session maintenanceHTTP parameters; cookies; session IDS.

11. XMLHTML as a DTD. DTDs and schemas. XML and CSS. HTML extension. XPath and XSLT. XML for representing web content and structure. Dynamic generation of web pages.

Reading Lists

Books
** Recommended Text
Harvey M. Deitel, Paul J. Deitel, Andrew B. Goldberg (2004) Internet & World Wide Web How to Program, 3/E Prentice Hall 0-13-145091-3

Web Page/Sites
Extensive internet resources, particularly www.w3c.org. Identified during lectures

Notes

This module is at CQFW Level 4