Københavns Erhvervsakademi

en

Full-Stack Web Development

2022/2023
Engelsk titel
Full-Stack Web Development
Uddannelse
Software udvikling
Uddannelsestype
Fuldtidsuddannelse
Niveau
Professionsbachelor (top-up)
Semester
2. semester
Fagets/modulets varighed
2 semestre
Ects
10
Udd. element
Valgfag
Sprog
Dansk
Opstart
Efterår
Forår
Studiested
Håndværkergården, København N
Fagkode
4136201
Fag- /modulansvarlig
Arturo Mora Rioja
Tomas Pesek
  • Formål og læringsmål

    This practical subject focuses on architecture, development, and deployment of web applications. It is language/framework-agnostic, but the examples will be in Java/Spring Boot, JavaScript/node.js for the backend, React.js for the frontend, and MySQL, MongoDB, Neo4j for the databases.

    The subject includes coding in the front-end and in the back-end, administering basic elements of a web server, connecting with a database, designing and implementing API-driven front-end applications, designing and implementing REST and GraphQL APIs following market standards, protecting applications against the most usual security threats, and deploying web applications online. Basic web service concepts like cookies and sessions will be addressed. The students will not only learn to develop web applications, but they will also gather a deeper understanding of web architectures and web development environments.

    Viden

    Students will acquire the following knowledge:
    - Web Development Architectures
    - HTTP Protocol and Methods
    - PWA – Progressive Web Applications
    - Client-side vs Server-side rendering
    - Security:
    --- Authentication: JWT, sessions, cookies
    --- Authorization
    --- Hashing and encryption
    --- SQL injections
    --- XSS, CSRF
    --- CORS

    - The Front-End:
    --- HTML5
    --- CSS3, Flexbox, Grid
    --- JavaScript and the DOM
    --- Ajax
    --- API Consumption
    --- SPA – Single page application
    --- React.js:
    ------ Logging
    ------ Routing
    ------ Pagination, filtering, sorting
    ------ Forms + input validation
    ------ Building reusable components

    - The Back-End:
    --- Web servers
    --- APIs:
    ------ REST API
    ------ GraphQL
    ------ + others like SOAP, RPC, and event driven APIs
    --- Databases

    - Online Web Application Deployment
    --- CI/CD pipeline
    --- Testing:
    ------ Unit tests
    ------ Integration tests
    ------ End to end tests
    --- Scaling:
    ------ databases, backend, frontend
    ------ Technologies: Containers, Kubernetes

    Færdigheder

    The students will acquire the following skills:
    - Front-end web development
    - Back-end web development
    - API development and consumption
    - Web application deployment

    Kompetencer

    The students will acquire the following competences:
    - Design the architecture of a web application
    - Work with a web development environment
    - Create full-stack web applications
    - Create applications that connect to external APIs
    - Deploy web applications online

  • Undervisningsform
    The teaching is organised as a variation between class teaching, guest lecturing, and individual work. The learning is most often problem-based and cross-disciplinary and always practise-oriented. In addition to learning the subject, the student will gain competences to work individually.

    The common aim of the activities is always to set clear intended learning objectives.
  • Forudsætninger for at deltage i faget

    Faglige forudsætninger for at deltage i faget
    As it is common for any other course at KEA, students must make sure that they are sufficiently prepared to learn the course material, handle the course assignments, and participate in course interactions. Students should have working knowledge of and proficiency in at least a high-level programming language.

  • Prøve

    Læringsmålene for prøven er identiske med fagets/fagenes læringsmål

    Faget prøves
    The final project consists of a CRUD web application deployed online. It must fulfil the standards and best practices addressed throughout the subject.
    Prøveform
    Mundtlig prøve
    Individuel eller gruppeprøve
    Individuel
    Anvendt sprog til prøven
    Dansk (Norsk/Svensk)
    Varighed
    30 minutes including grading. The student will present the final project (max. 10 minutes), then the examiners will ask questions.
    Hjælpemidler der må medbringes
    None
    Bedømmelsesform
    7-trins skala
    Bedømmer(e)
    Intern censur
60
timers undervisning
214
timers forberedelse
Tallene viser omfanget af arbejdsbelastningen relateret til faget fordelt på forskellige studieaktiviteter.

På faget Full-Stack Web Development modtager du 60 timers undervisning, hvilket svarer til 80 lektioner (1 lektion = 45 min.) og 22% af din samlede arbejdsbelastning på faget.

Undervisningen vil primært bestå af følgende aktiviteter: klasseundervisning, øvelser, projektarbejde.
Forberedelsen vil primært bestå af følgende aktiviteter: projektarbejde.

Læs om KEAs studieaktivitetsmodel

*KEA kan fravige det angivne timetal, hvis det er begrundet i særlige forhold.