Skip to main content

Application Programming (5 cr)

Code: 5000BL73-3016

General information


Enrollment

02.07.2024 - 10.09.2024

Timing

10.09.2024 - 13.12.2024

Number of ECTS credits allocated

5 op

Mode of delivery

Contact teaching

Unit

Engineering and Business

Campus

Kupittaa Campus

Teaching languages

  • Finnish
  • English

Degree programmes

  • Degree Programme in Information and Communication Technology
  • Degree Programme in Business Information Technology
  • Degree Programme in Information and Communications Technology

Teachers

  • Tuomo Helo

Groups

  • PTIETS23sepm
    Software Engineering and Project Management
  • 10.09.2024 14:00 - 16:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 13.09.2024 08:00 - 10:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 17.09.2024 14:00 - 16:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 24.09.2024 14:00 - 16:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 01.10.2024 14:00 - 16:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 08.10.2024 14:00 - 16:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 22.10.2024 14:00 - 16:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 25.10.2024 08:00 - 10:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 29.10.2024 14:00 - 16:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 05.11.2024 14:00 - 16:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 12.11.2024 14:00 - 16:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 19.11.2024 14:00 - 16:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 26.11.2024 14:00 - 16:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 03.12.2024 14:00 - 16:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 10.12.2024 14:00 - 16:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016
  • 13.12.2024 08:00 - 10:00, Theory and practice, Sovellusohjelmointi 5000BL73-3016

Objective

After completing the course the student can:
* program efficiently in a team
* reuse code and utilize libraries
* understand and apply some design patterns
* use an IDE as a programming tool
* use a version control system

Content

* relevant programming libraries
* learning some common design patterns
* using IDE in programming
* using a version control system in application development
* project work: implementing an application in a team

Materials

The course book:

Microservice APIs: Using Python, Flask, FastAPI, OpenAPI and more
Jose Haro Peralta
Mar 7, 2023

The part 3 of the course book "Designing And Building GraphQL APIs" is going to be totally skipped.

A limited number of book licenses is going to be available via TUAS' electronic library.

Other learning material can be announced during the course.

Teaching methods

- reading the course books and other reading material, watching videos
- participating in the lectures
- programming together with instructor
- programming alone
- defining interactive documents
- participating in the teamwork

Completion alternatives

The student can complete the course by demonstrating his knowledge and skills of the subjects of the course, for example with the work samples they have made. However, this must be agreed with the instructor during the first 4 weeks of the course.

The student can include a corresponding course taken elsewhere at some educational institution that is acceptable by our educational institution. This happens via AHOT process. Also this matter should be initiated immediately at the beginning of the course.

Student workload

30 h contact lessons
4 h presenting and following team works onsite
47 h preparing teamworks
54 h doing personal exercises

Content scheduling

The contents.

REST API
Microservice Architecture
Designing and implementing a back-end service with a REST API
Documenting a REST API
Testing the REST API
Using professional tools

The programming language is Python.

6 personal assignments.
Two teamworks (not compulsory)

Evaluation scale

H-5

Assessment methods and criteria

The maximum number of points available from course is 120.

Of that maximum, 60 points comes from 6 individual exercises, 40 points from teamworks, and 20 points from being present on the lectures.

The course evaluation scale is the following:

Min points -> Grade

0 -> 0
40 -> 1
56 -> 2
72 -> 3
88 -> 4
104 -> 5

An additional condition: You must to get at least 25 points from the exercises to pass the course.

The points from being present are calculated in a following way:

Percentage of being present on the normal lectures -> points

20% -> 5
40% ->10
60%->15
80%->20

Please also note that by being present you can earn some of the points available from the individual exercises working together with the instructor.

You must be present in demonstration. It does not accumulate your points of being present. If you are not present in the demonstrations, then there is a reduction of 50 % of the points of your returned exercises on these demos. There is also a reduction of 50 % for exercises that are returned late. No exercises are accepted after the end date of the course implementation. After the end date of the course, no substitute or supplementary assignments will be given either. The student must therefore make sure that he collects enough points from different performances during the time of the course.

Assessment criteria, fail (0)

The student has not managed to accumulate enough points to pass the course during the time of the course. Consequently, they have not been able to demonstrate the kind of competence on the basis of which an acceptable grade could be given.

Assessment criteria, satisfactory (1-2)

The student understands the basic of the REST API
The student knows what microservice architecture and microservices are
The student can implement a simple REST API and call the services it offers
The student understands the importance of documenting the REST API in a modern way
The student is ready to use the programming, documentation and testing tools necessary for API development

Assessment criteria, good (3-4)

The student understands the basics of the REST API and related authentication
The student knows what microservice architecture and microservices are
The student can implement a simple REST API, the related authentication and call the services it offers
The student understands the importance of REST API documentation in a modern way and knows how to prepare these documents
The student can use the programming, documentation and testing tools necessary for API development
The student knows how to work in a project where a microservice that permanently stores data is implemented

Assessment criteria, excellent (5)

The student understands the basics of the REST API and related authentication
The student knows what microservice architecture and microservices are
The student knows how to implement a simple REST API, the related authentication and call the services it offers
The student understands the importance of REST API documentation in a modern way and knows how to prepare these documents
The student can test the REST API
The student can use efficiently the programming, documentation and testing tools necessary for interface development
The student can effectively search for information to develop their skills and solve problems
The student can work proactively and efficiently in various roles in API programming projects
The student knows how to work in a project where a microservice that permanently stores data is implemented