Surrey University Stag

WEB AND DATABASE SYSTEMS - 2023/4

Module code: COM1025

Module Overview

This module introduces students to key technologies of the World Wide Web (WWW) and Database Systems. Students will learn the fundamental concepts of database management systems, with a focus on relational database design and development to solve real-world problems. Additionally, the module introduces the basic client and server-side web technologies needed to develop an interface and connect to a database system. The module uses a problem-based approach to provide students with the necessary support to develop their analytical and problem-solving skills. The students’ knowledge and skills will be applied on a real-world coursework project.

Module provider

Computer Science

Module Leader

CIROVIC Mariam (CS & EE)

Number of Credits: 15

ECTS Credits: 7.5

Framework: FHEQ Level 4

JACs code: I200

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

Overall student workload

Independent Learning Hours: 95

Lecture Hours: 22

Laboratory Hours: 22

Captured Content: 11

Module Availability

Semester 1

Prerequisites / Co-requisites

None

Module content


  • Database Systems

    • Introduction to the concepts of databases: data, data modelling, database design, database management and recent trends such as NoSQL databases

    • Conceptual data modelling using the Entity-Relationship (ER) and Enhanced ER models (EER)

    • The Relational Data Model

    • Translation of an ER/EER Model to a Relational Model

    • Functional dependencies and normalisation.

    • Data definition and manipulation using the query language SQL

    • DBMS-level issues



  • Web Systems

    • Basic concepts of the Internet: clients, servers, and communication

    • Frontend technologies: Markup languages, stylesheets, cookies

    • Backend technologies: PHP/JavaScript & Node.js

    • Database connectivity and security issues




Assessment pattern

Assessment type Unit of assessment Weighting
Coursework INDIVIDUAL COURSEWORK 100

Alternative Assessment

N/A

Assessment Strategy

The assessment strategy is designed to provide students with the opportunity to demonstrate all the learning outcomes of this module.

Students will need to have a clear understanding of key web and database concepts and the relationships among them as well as appreciate the importance of both theory and practical problem-solving skills. Students will need the ability to think logically (for data modelling and database design) and to programme reasonably (for coding part).

Summative assessment:


  • An individual coursework  (100%). This coursework will test your independent capability to model data, design and implement a relational database, and create a dynamic website to interact with the database. The coursework will consist of five separate tasks as well as a written report.



Formative assessment and feedback:


  • Weekly quizzes assess the understanding of key concepts and provide immediate feedback.

  • A group database design exercise will provide the opportunity for peer feedback.

  • The use of 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.

  • Critical feedback will be given for the coursework.


Module aims

  • Develop students' understanding of the theory, design, and development of database systems and the key role database systems play in the real world
  • Equip students with the basic knowledge of frontend and backend web technologies that can be used to interface a database system
  • Develop students' analytical and problem-solving skills via modelling data of real-world problems

Learning outcomes

Attributes Developed
001 Analyse a real-world application and write the business rules for the data that needs to be stored in a database system KCPT
002 Create a conceptual model (EERD) based on a given set of business rules KCPT
003 Interpret the conceptual model and translate it to a logical (relational) model correctly and ensure the relations are normalised KC
004 Implement the logical model using the data definition language of SQL KCP
005 Write queries to retrieve information from the database using the data manipulation language of SQL KCP
006 Design and build an interface to a database system using the appropriate client-side Internet technologies KPT
007 Develop code using server-side technologies to connect to the database system and interact with the interface. KPT
008 Write a report to document their project work using appropriate presentation and digital skills. PT

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 use a problem-based approach to develop students’ understanding of applying theoretical and practical knowledge to solve real-world problems in web and database development. The skills gained will allow students to extend their knowledge via independent-study and more practical work.

The learning and teaching methods include:


  • In-person Lectures/tutorials (22 hours; 2 hours/week)

  • In-person Lab sessions (22 hours; 2 hours/week)

  • Captured content (11 hours).

  • Discussion forums



The lectures provide an introduction to the core concepts, which are reinforced through examples and activities. Students will apply their knowledge in the practical lab sessions, using open source data modelling software and web development platform. Pre-recorded bite-size videos of the module content are provided for preparation and revision in the SurreyLearn VLE. This also provides discussion forums to support the module material and coursework project. Individual and general feedback is continuously provided to support the students' learning. 

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

Other information

Digital Capabilities

This module covers the foundational theory behind Databases, with lab-based sessions to give students the practical skills to design and develop their own database systems with a web interface. Web and database systems are a key component of everyday interactions with the web, and the skills taught on this module are highly valued in industry. This module prepares students for COM1028, Software Engineering and COM2025, Web Application Development.

Employability

By learning about building database systems that solve real life problems, students are equipped with theoretical skills, practical problem-solving skills, and design and development skills. Students are also made aware of professional, ethical and security issues related to working with database systems. Transferable skills are developed via report writing and teamwork. All of these are highly valuable to employers.

Global and Cultural Skills

Computer Science is a global language and the tools and languages used on this module can be used internationally. This module allows students to build skills that will allow them to develop applications with global reach and collaborate with their peers around the world as these applications form the basis of the web sites that we interact with every day.

Resourcefulness and Resilience

Given a business scenario, how does a database developer model that scenario and build a system that captures and allows users to access the relevant information? This module builds practical problem-solving skills by teaching students how to reason about and solve new unseen problems through combining the foundation theory taught with practical technologies for systems that are in everyday use.

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 2023/4 academic year.