Final Year Project (Web Development)
Learning Outcomes:
- Designing and implementing a full-stack web application realizing an online service
- Understanding and applying web development as a fundamental skill in computer science
- Using state-of-the-art technologies and established best practices in web development
- Developing a web application following an N-tier architectural pattern
- Implementing application logic and user interface using existing web application technologies/platforms
- Designing a relational database schema with sound constraints according to normalization rules
- Evaluating state-of-the-art options for web development technologies based on various comparison criteria
- Investigating and reflecting on a number of candidate technologies for web development
- Justifying the choices made in technology selection for the web application
- Implementing advanced features such as ACID transactions, comprehensive security/privacy analysis, and advanced security mechanisms
- Using NoSQL data stores to speed up user interaction while maintaining sound levels of transactional consistency
- Implementing advanced UI features such as push notifications
- Exploring the use of emerging platforms such as blockchain in web development
Skills for module:
TypeScript
JavaScript
Next.js
React
Chakra UI
Firebase
Recoil
Docker
GitHub Actions
GitHub
Google Cloud Platform
Git
HTML
CSS
Yarn
ESLint
Prettier
Python
SQLAlchemy
Flask
Relational Databases (SQL)
Normalisation
Indexing
Poetry
REST APIs
Problem Solving
Project Management
Critical Thinking
Creativity
Adaptability
Time Management
Scope Management
Stakeholder Management
Communication
Risk Management
Object Oriented Programming
Design Patterns
Algorithms
Web Development
User Centric Design
Database Management Systems
Non Relational Databases (NoSQL)
Databases
Cloud Computing
User Authentication
SDK
Security
Cyber-Security
State Management
Containerization
DevOps
Infrastructure as Code
Continuous Delivery
Continuous Integration
Continuous Deployment
Automation
Version Control
Linting
Object Relational Mapping
APIs
Final Year Project (Web Development)
CS3821
Learning Outcomes
- Designing and implementing a full-stack web application realizing an online service
- Understanding and applying web development as a fundamental skill in computer science
- Using state-of-the-art technologies and established best practices in web development
- Developing a web application following an N-tier architectural pattern
- Implementing application logic and user interface using existing web application technologies/platforms
- Designing a relational database schema with sound constraints according to normalization rules
- Evaluating state-of-the-art options for web development technologies based on various comparison criteria
- Investigating and reflecting on a number of candidate technologies for web development
- Justifying the choices made in technology selection for the web application
- Implementing advanced features such as ACID transactions, comprehensive security/privacy analysis, and advanced security mechanisms
- Using NoSQL data stores to speed up user interaction while maintaining sound levels of transactional consistency
- Implementing advanced UI features such as push notifications
- Exploring the use of emerging platforms such as blockchain in web development
Related Material
Related Material