Module ICP-3046:
Web-Based Applications

Module Facts

Run by Computer Science

10 Credits or 5 ECTS Credits

Semester 2

Overall aims and purpose

To introduce a variety of technologies underpinning web programming, to explore the use of the three tier model, and to familiarise students with the principles of server side scripting.

Course content

• The Internet and World Wide Web; Client-Server Architectures; Web Browsers and Servers; Three Tier Model; Web Protocols; Addressing;

• Embedding PHP in web pages; Variables and control structures; Arrays; Strings;Functions; Object oriented features.

• Client-Server Database Interaction; Using PHP for Database Access; Database Specific Extensions vs Generic Interfaces;Advanced database techniques.

• Contemporary e-commerce; Product catalogs; Item ordering and shopping carts; Payment systems; Order management and tracking; Session management;

• Types of Security Threat; Security Policies; Principles of Authentication; Encryption Techniques; Implementing Authentication and Secure Transactions.

• Web Mining; Web-usage Mining;Web Server Access Logs; Analysis of Access Logs; Use of Analytical Tools; Interpretation Techniques.

Learning outcomes mapped to assessment criteria

  good

60%

excellent

70%

threshold

40%

Use PHP for server side processing.

Can use advanced features of PHP including:object oriented techniques; error handling; regular expressions. Can use PHP to implement a range of simple web applications. Can research and utilise a range of PHP techniques including file system management, network and protocol functions, date-time functions, graphical images.

Develop web applications to access and manipulate data using a Relational Database Management System

Can connect to, query and manipulate a database using PHP scripts. Can use advanced features of PHP to interact with a database including: prepared queries; transactions; metadata; Can perform a variety of DBMS administration tasks; can use advanced database programming techniques, including storage engines, transactions, stored procedures.

Understand the need for security and implement appropriate levels of system protection.

Can implement systems of access control;can store and encrypt passwords; can protect multiple pages; can use PHP and Apache authentication technologies. Can describe a range of security threats and outline appropriate security policies; can describe authentication techniques. Can accurately describe and make effective use of a range of security technologies including SSL; Encryption; Digital Certificates\Signatures.

Use appropriate techniques for session control and management of visitor data.

Can describe the nature and purpose of web usage mining; can describe the problem of session management Can use a range of tools to analyse web-logs; can describe and effectively use cookies for session management. Can effectively implement authentication with session control; can select appropriate techniques for web usage analysis.

Appreciate how web applications are developed and distributed using the the Internet and World Wide Web

Can describe how a browser interacts with a web server; can use a browser to access a variety of resources; can use a variety of web protocols. Can describe the architecture of a web application; can describe the three-tier model; can describe and make effective use of the TCP/IP model. Can demonstrate extensive and in-depth knowledge of Internet technologies; can research technologies independently and apply them in the development of web applications.

Design and build a realistic e-commerce system.

Can construct a simple e-commerce site with limited security; can describe a variety of payment services. Can construct a small scale but realistic e-commerce site with substantial security and authentication policies; Can implement and integrate a dummy payment system. Can independently research and utilise technologies associated with e-commerce sites e.g. payment systems, web-based email services, web services e.g. SOAP.

Assessment Methods

Type Name Description Weight
Practical Exam 40
Assignment 1 20
Assignment 2 20
Assignment 3 20

Teaching and Learning Strategy

Hours
Lecture

Semester 2, 1 hour x 12 weeks

24
Laboratory

Semester 2, 2 hours x 12 weeks

24
Private study 52

Transferable skills

  • Computer Literacy - Proficiency in using a varied range of computer software
  • Exploring - Able to investigate, research and consider alternatives
  • Information retrieval - Able to access different and multiple sources of information
  • Critical analysis & Problem Solving - Able to deconstruct and analyse problems or complex situations. To find solutions to problems through analyses and exploration of all possibilities using appropriate methods, rescources and creativity.

Subject specific skills

  • Knowledge and understanding of facts, concepts, principles & theories
  • Problem solving strategies
  • Analyse if/how a system meets current and future requirements
  • Deploy theory in design, implementation and evaluation of systems
  • Recognise legal, social, ethical & professional issues
  • Deploy tools effectively
  • System Design
  • Specify, deploy, verify and maintain computer-based systems
  • Principles of appropriate supporting engineering and scientific disciplines

Pre- and Co-requisite Modules

Courses including this module