WEB AND DATABASE SYSTEMS - 2019/0

Module code: COM1025

Module Overview

This module introduces students to key technologies of the World Wide Web (WWW) and Database systems. In more detail, it introduces front-end and backend web technologies using HTML, CSS, PHP, JavaScript and JSON/XML. It also introduces students to basic concepts of database management systems, issues involved in relational database design and practical skills of using a relational database management system (MySQL) to solve real-world problems. Additionally, the module introduces students to ways to implement database connectivity to the front-end (e.g. a web-based content management). Finally, the module covers basic concepts of web security to motivate students about its importance given the latest threat landscape. The module uses a problem-based approach to provide students with the necessary support to improve their problem-solving skills by working on given and self-selected web application in lab sessions and a coursework assignment.

Module provider

Computer Science

Module Leader

CROSSAN Andrew (Computer Sci)

Number of Credits: 15

ECTS Credits: 7.5

Framework: FHEQ Level 4

Module cap (Maximum number of students): N/A

Overall student workload

Independent Learning Hours: 106

Lecture Hours: 22

Laboratory Hours: 22

Module Availability

Semester 1

Prerequisites / Co-requisites

N/A

Module content

The following topics will be covered:


  • Basic concepts of the Internet

    • Clients, Servers, and Communication

    • HTTP Request Response Cycle

    • Web servers



  • Front-End Web Technologies

    • Markup Languages and Stylesheets: HTML, XHTML, Forms, JSON/XML, CSS

    • Other: Cookies, DOM, JavaScript



  • Server-side programming

    • PHP

    • Java Servlets





  • Backend: database systems and data modelling

    • Basic concepts of databases and relational databases

    • Entity-relationship (ER) data modelling including enhanced ER models (EER)

    • The query language SQL (MySQL as an example)

    • Using MySQL in PHP to build database-driven websites



  • Web security:

    • Same Origin Policy

    • Command Injections

    • Cross Site Request Forgery

    • Cross Site Scripting




Assessment pattern

Assessment type Unit of assessment Weighting
School-timetabled exam/test IN-SEMESTER TEST (INDIVIDUAL) (2 HOURS) 40
Coursework COURSEWORK (INDIVIDUAL WORK) 60

Alternative Assessment

N/A

Assessment Strategy

The assessment strategy is designed to provide students with the opportunity to demonstrate:

• How WWW works
• A clear understanding of key web and database concepts and relationships among them
• Ability to think logically (for data modelling and database design) and to programme reasonably (for coding part)
• Appreciation of importance of both theories and practical problem-solving skills

Thus, the summative assessment for this module consists of:
• In-semester test for assessing LOs 1-2 (40%).
• Coursework on relational database design and its use in Web publishing (60%). This coursework tests all learning outcomes in a practical setting. It will pay more attention on LOs 3-5 (60%).


The in-semester test will take place around Week 6 and the coursework will be due around Week 12, but the precise deadlines will be decided by the Department according at the beginning of the semester after considering all modules’ deadlines and balancing students’ overall workload.

Formative assessment and feedback:

The use of electronic voting using polleverywhere offers formative feedback opportunities throughout the module. Verbal feedback is also given in lab sessions as the students attempt the lab exercises. The online discussion forum will be another channel to constantly give feedback to students. A mid-term diagnostic test will help students to self-evaluate their progress and get further individual feedback. Critical feedback will be given for the final coursework.

Module aims

  • Introduce internet systems
  • Introduce front-end and back-end web technologies
  • Introduce ER/EER data modelling
  • Help students to develop their analytic skills via modelling data of real-world problems
  • Enhance students' problem-solving skills
  • Introduce relational databases and database management systems

Learning outcomes

Attributes Developed
001 Understand how the World Wide Web works and how it relates to the wider context of the Internet KCT
002 Build and demonstrate understanding of key client and server-side Internet technologies: HTML, CSS, Cookies and Session Variables, PHP, JavaScript, JSON/XML KCPT
003 Understand main issues in database design: data modelling, data definition, data manipulation, data retrieval KCT
004 Model data of a real-world application, construct a conceptual database schema, translate it into a logical relational schema, and implement it in SQL CPT
005 Appreciate importance of combining theories with practical solutions for real-world problems using deployed system case studies P

Attributes Developed

C - Cognitive/analytical

K - Subject knowledge

T - Transferable skills

P - Professional/Practical skills

Methods of Teaching / Learning

The learning and teaching strategy is designed to: 
Help students to gain a basic understanding of important how WWW and database technologies via hands-on experiences on data modelling of real-world applications, translating data models to relational databases and building websites for data presentation on the Web. The skills gained will allow students to extend their knowledge via self-study and more practical work, and they are transferrable to other modules of the programme.

The learning and teaching methods include:


  • 2 hours lecture per week x 11 weeks

  • 2 hours lab session per week x 11 weeks

  • Use of e-voting questions in lectures and tutorials

  • Use of online discussion forum

  • Encouraging independent work in lab sessions at the beginning and discussion with the module lecturer/demonstrators towards the end to get “hot” feedback

  • Diagnostic in-semester test in the middle of the term


Indicated Lecture Hours (which may also include seminars, tutorials, workshops and other contact time) are approximate and may include in-class tests where one or more of these are an assessment on the module. In-class tests are scheduled/organised separately to taught content and will be published on to student personal timetables, where they apply to taken modules, as soon as they are finalised by central administration. This will usually be after the initial publication of the teaching timetable for the relevant semester.

Reading list

https://readinglists.surrey.ac.uk
Upon accessing the reading list, please search for the module using the module code: COM1025

Programmes this module appears in

Programme Semester Classification Qualifying conditions
Computer Science BSc (Hons) 1 Compulsory A weighted aggregate mark of 40% is required to pass the module
Computing and Information Technology BSc (Hons) 1 Compulsory A weighted aggregate mark of 40% is required to pass the module

Please note that the information detailed within this record is accurate at the time of publishing and may be subject to change. This record contains information for the most up to date version of the programme / module for the 2019/0 academic year.