Ohjelmoitava web ¶
Ilmoittaudu Spring 2026
Kurssin sisältö ¶
- Important dates
- Assessment
- Project Work Assignment
- Ryhmien muodostaminen
-
Deliverable 0 - Group Registration
2026-01-19, 23:590.00 / 0.00
-
Deliverable 1 - API description
2026-01-26, 23:590.00 / 5.00
- Course Material
- Tutorials
- Setting up Python environments for exercises
- Setting up the project work environment in GIT
- API Design Example
- Using Course Resources in CSC Cloud
- Exercises
Course description¶
This is an eminently practical course which aims to provide adequate knowledge to design, implement test and document a Web API.
During the course students will design and implement a REST Web API as well as a client for such API.
Learning Outcomes¶
- Students understand what a Web API is and learn different Web API architectures.
- Students are able to design and implement a Web API following REST architectural style principles using existing web frameworks.
- Students are able to write proper test suites to inspect their APIS.
- Students are able to document their Web APIs using adequate software tools.
- Students are able to implement simple software applications that make use of the APIs.
- Students are able to deploy and setup the API in the cloud.
- Students understand the concept of hypermedia and how it can be used to build Web APIs.
Course implementationInitial lectures¶
Present main theoretical concepts of the course. Schedule is in Peppi/Tuudo.
- Lecture 1 Course presentation. Introduction to Web APIs. 07.01.2026. 10:15-12:00 You can follow via Zoom.
- Lecture 2 Creating and deploying Web APIs. 14.01.2025. 10:15-12:00 at IT115.
Exercises¶
Exercises will guide students through the different aspects of the course. Exercises sessions are preceded by a Lecture where main aspects of the Exercise are explained. During exercise session (not mandatory) we expect students have completed a big part of the exercise. The session is mainly for a Q&A. Students wont have enough time during the exercise session to solve the whole exercise.
Attendance to the exercise session is not mandatory but attending at least one hour to the session will give you some extra points.
Exercises Schedule¶
Schedule of lecture and exercise sessions are defined in Peppi/Tuudo.
Summary of schedule and deadlines can be found from Important dates
Project Work¶
During the project work, groups of 3 to 4 students design, implement, test and document a RESTful API and a client application that consumes the API. The project work is divided into several deadlines that students have to meet to pass the course.
Instructions for the project work can be found the Project Work Assignment page
An schedule with the project deadlines can be found in the Important dates
Help will be provided mainly through Discord. You can consult also via email.
Assessment¶
There is no exam for the course. The final grade is mainly based on the Project work (report and software generated by the students). Exercises results, students' initiative and degree of participation will also be considered. Students can increase the final grade implementing some extra work.
Why this course?¶
Students will gain necessary competences to design, implement, document, test and deploy an API for a web application. During the course students will have to go through the different steps of application development, namely: design, implementation, documentation, testing and deployment. In addition, students will have to do several iterations based on customer (course staff) feedback. This work resembles quite a lot the way of working in IT companies.
Finally students need to develop team work skills, such as role assignment and time management.
Course Registration¶
- For this course you need to have an account in one GIT cloud service. You can choose among Github or , Gitlab. Github is preferred but if you wish to have a private repository, use Gitlab instead.
- Project topic registration will be done through a return box in Lovelace.
Contact¶
Mail: pwp-course@lists.oulu.fi
Discord: The invitation link has been sent to your email when you enrolled for the course in Lovelace.
Course staff¶
- Mika Oja
- Iván Sánchez Milara