Coronavirus (Covid-19) Information

Module ICP-3046:
Web-Based Applications

Module Facts

Run by School of Computer Science and Electronic Engineering

10 Credits or 5 ECTS Credits

Semester 2

Organiser: Mr Andy Harbach

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.

• Practical implementation of a web based application

Learning outcomes mapped to assessment criteria







Use PHP for server side processing.

Can use PHP to implement a range of simple web applications. Can use advanced features of PHP including:object oriented techniques; error handling; regular expressions. 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 describe a range of security threats and outline appropriate security policies; can describe authentication techniques. Can implement systems of access control;can store and encrypt passwords; can protect multiple pages; can use PHP and Apache authentication technologies. Can accurately describe and make effective use of a range of security technologies including SSL; Encryption; Digital Certificates\Signatures.

Design and build a realistic e-commerce 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. 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 construct a simple e-commerce site with limited security; can describe a variety of payment services.

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

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. Can describe the nature and purpose of web usage mining; can describe the problem of session management

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 demonstrate extensive and in-depth knowledge of Internet technologies; can research technologies independently and apply them in the development of web applications. 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.

Assessment Methods

Type Name Description Weight
COURSEWORK Assignment 4 25
COURSEWORK Assignment 1 25
COURSEWORK Assignment 2 25
COURSEWORK Assignment 3 25

Teaching and Learning Strategy


Labs to develop an e-commerce system

Private study

Work on e-commerce system outside of labs sessions, and personal study


Formal lectures on PHP programming with opportunities to write code in a lab


Tutorial sessions going over real-world software development.


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


Courses including this module