Course - Application Development - IDATA2306
Application Development
About
About the course
Course content
The course is concerned about server application development (backend).
The following topics are included:
- Web services and REST API
- Data persistence, entities, Java Persistence Api (JPA), Object-Relational Mapping (ORM)
- The different component roles in an application: repositories, services, controllers, model classes
Java frameworks such as Spring are used for practical application development.
Learning outcome
Knowledge - students will understand:
- The history of server application development
- The architecture of modern backend applications and microservices
- The layers of a backend application: data access, services, presentation
- Object-relational mapping approach and limitations
- Backend endpoint authentication mechanisms, including tokens (JWT)
- Communication between backend and frontend systems
Skills - students will be able to:
- Design a server (backend) application according to business logic
- Implement a server application using a backend framework such as Java Spring
- Connect the business logic to a persistent data storage including CRUD operations (Create, Read, Update, Delete)
- Create automated test suite for a REST API using a tool such as Postman
- Implement endpoint authentication
- Present their ideas, knowledge, and results
- Deploy the application on a server
General competence - students will strengthen the following skills learned previously:
- Agile work methodology
- Version control using GIT
- Can interact with AI-tools about application development topics.
Learning methods and activities
Lectures and exercises, project work in groups.
Compulsory assignments
- Mandatory assignments
Further on evaluation
- All mandatory assignments must be approved before students can access the final examination.
- Assignments are designed to support the achievement of specific course learning outcomes, and formative feedback is provided throughout the course period.
- The oral exam includes questions related to basic knowledge, details in exercises, and project work.
- Re-sit exam is in August.
Specific conditions
Admission to a programme of study is required:
Computer Science - Engineering (BIDATA) - some programmes
Recommended previous knowledge
The following courses or their equivalents
- IDATA2001 Programming 2 - Object-oriented programming
- IDATA2003 Programming 2 - Object-oriented programming
- IDATA2305 Operating systems (same semester) - multi-threaded programming
- IDATA2302 Algorithms and data structures - algorithmic thinking
- IDATA2303 Data modeling and database applications - relational databases, SQL
- IDATA2002 Databases - relational databases, SQL
Course materials
Announced at the start of the semester.
Syllabus
Credit reductions
| Course code | Reduction | From |
|---|---|---|
| ID303911 | 7.5 sp | Autumn 2020 |
Subject areas
- Information Systems
- Computer Systems
- Engineering