Full Stack Development, Operations and Distributed Systems
Overall Course Objectives
The purpose of the course is to train the participants in developing web applications using some modern front-end technologies and to design, build, deploy and operate a modern backend for an app or website.
To understand of theory and good practice in the construction of distributed systems.
See course description in Danish
Learning Objectives
- Explain the principles and architecture of web applications (front- and back-end)
- Develop full-stack applications of a certain complexity
- Document, implement, deploy and monitor a distributed system
- Organize code according to the chosen architecture
- Explain the principles of reactive programming
- Use resource oriented protocols (such as REST) as client and server
- Understand transactions and transaction isolation in a distributed system
- Understand security aspects in a distributed system
- Select and configure a suitable deployment platform and deploy a backend
- Distinguise between different container-based virtualization technologies, such as Docker, and modern server management
- Assess the sustainability when choosing deployment platform backend
Course Content
Architectures and design of modern backends as part of a distributed systems, such as client-server, Service oriented architectures (SOA), and web services, such as JSON, REST and GraphQL.
Development of modern front- and back-end services.
Richardson’s maturity model for a REST service.
Architectures in web application development (HTML, Javascript, serverside and client side languages and their interaction)
Best practices in modern backend development.
Managing concurrency issues in a backend.
The course is project-oriented and includes development of a distributed system of your choice, typically a front- and back-end and communicatiing with a web page and/or an app.
Teaching Method
Lectures and excercises and mandatory project work.
Development of a backend of own choic
Faculty
Remarks
Section of AI, Mathematics and Software
Diplomingeniørretning IT og Økonomi