ADVANCED CHALLENGES IN WEB TECHNOLOGIES - 2020/1

Module code: COM3014

Module Overview

Web applications have become robust and easy to use; therefore, the largest population is now confident to use the Web as a mean of purchasing, banking or communicating with other people. This module examines the architectural/design needs and challenges encountered when developing secure and scalable web applications using the latest technology. It also covers a broad introduction into the weaknesses and limitations of web applications and what technical solutions can be applied to overcome these.

Module provider

Computer Science

Module Leader

VRUSIAS Bogdan (Computer Sci)

Number of Credits: 15

ECTS Credits: 7.5

Framework: FHEQ Level 6

JACs code: I300

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

Module Availability

Semester 1

Prerequisites / Co-requisites

COM2025 Web Application Development and COM2022 Computer Networking. COM2033 Advanced Object Oriented Programming and COM3009 Computer Security would also be desirable but not essential.

Module content

Indicative content includes:


  • Review of current state of the art web technologies and emerging technologies

  • Rich Client Web Applications

    • Ajax, 

    • jQuery, 

    • HTML 5



  • Software Patterns and Frameworks

    • Spring MVC

    • Inversion of Control (IC) and Dependence Injection (DI)

    • Aspect Oriented Programming (AOP)



  • Introduction to Web security

    • Authentication and authorisation

    • Session Management

    • Preventing cyber attacks



  • Web services

    • Building web services

    • Consuming third party API services



  • Scalable web architectures

    • Load balancing for servers and database connections

    • Data persistence and access

    • Distributed processing



  • Intelligent Web services

    • Data analytics

    • Recommendation engines




Assessment pattern

Assessment type Unit of assessment Weighting
Coursework GROUP COURSEWORK 40
Examination 2 HOUR EXAM 60

Alternative Assessment

N/A

Assessment Strategy

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

·         Ability to appraise technical literacy in the area of Web technologies

·         Ability to solve requirements specification (problem solving) and design appropriate solutions

·         Group collaboration in building a software system

·         Appreciation of the importance of high quality and efficient coding

 

Thus, the summative assessment for this module consists of:

·         The student will form groups and work together to design and implement a Web Application that covers at least four out of the six topics taught (rich client, frameworks, security, web services, intelligent applications, and scalability). The group will also produce a report related to their implementation and also present the system to the rest of the class.

Deadline: Monday week 11

Presentation: week 12

Two hour unseen exam

 

Formative assessment and feedback

Students will be able to post comments and questions on a group-private forum on SurreyLearn. Students can also use the lab time o ask questions about their coursework, or arrange with the module coordinator to meet.

Module aims

  • This module aims to introduce students to the main design, implementation, scalability, security and maintainability challenges that are involved in the development of real world web applications and demonstrate that ensuring security, quality and performance is also a developer issue. It also aims to provide a state-of-the art view and practical experience of web technologies

Learning outcomes

Attributes Developed
1 Understand the challenges of developing scalable web applications KCT
2 Identify the emerging web technologies KCT
3 Realise the need to develop secure applications CP
4 Know how to identify and implement some of the most important software patterns KCT

Attributes Developed

C - Cognitive/analytical

K - Subject knowledge

T - Transferable skills

P - Professional/Practical skills

Overall student workload

Methods of Teaching / Learning

The learning and teaching strategy is designed to:

Develop a critical understanding and gain practical experience of the literature through facilitated group learning. The skills gained on this module are directly transferable to all other modules on the programme, and to the wider science profession.

The learning and teaching methods include:


  • 22 hours of teaching

  • 18 hours of labs

  • SurreyLearn links to additional learning

  • SurreyLearn discussion forums



 

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

Reading list for ADVANCED CHALLENGES IN WEB TECHNOLOGIES : http://aspire.surrey.ac.uk/modules/com3014

Programmes this module appears in

Programme Semester Classification Qualifying conditions
Computer Science BSc (Hons) 1 Optional A weighted aggregate mark of 40% is required to pass the module
Computing and Information Technology BSc (Hons) 1 Optional 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 2020/1 academic year.