Service Based Software Development (5op)
Toteutuksen tunnus: 5G00GC13-3002
Toteutuksen perustiedot
- Ilmoittautumisaika
- 17.05.2025 - 30.08.2025
- Ilmoittautuminen toteutukselle on päättynyt.
- Ajoitus
- 25.08.2025 - 21.12.2025
- Toteutus on käynnissä.
- Laajuus
- 5 op
- Toteutustapa
- Lähiopetus
- Yksikkö
- Software Engineering
- Toimipiste
- TAMK Pääkampus
- Opetuskielet
- englanti
- Koulutus
- Bachelor's Degree Programme in Software Engineering
- Opettajat
- Jussi Pohjolainen
- Vastuuhenkilö
- Esa Kunnari
- Ryhmät
-
23I260EBDegree Programme in Software Engineering
- Opintojakso
- 5G00GC13
Osaamistavoitteet (Opintojakso)
The student understands the concept of service-based software development, knows the common technologies, and has practical skills to create software services in cloud environment. Student knows how to use existing software interfaces and build service-based software systems and is aware of their challenges.
Sisältö (Opintojakso)
Different types and technologies of software services: APIs, microservices, REST, GraphQL. Developing software services to cloud, versioning, and documenting APIs. Developing and consuming services with a modern programming language.
Arviointikriteerit, tyydyttävä (1-2) (Opintojakso)
The student knows about some technologies for software services like APIs, microservices, REST, GraphQL. The student can develop a software service to a cloud with an example. The student can produce versioning and a documentation for the APIs with an example. The student can develop a service with an example.
Arviointikriteerit, hyvä (3-4) (Opintojakso)
The student knows different technologies of software services: APIs, microservices, REST, GraphQL. The student can develop a software service to a cloud. The student can produce versioning and a documentation for the APIs. The student can develop and exploit services with a modern programming language in an application.
Arviointikriteerit, kiitettävä (5) (Opintojakso)
The student knows comprehensively the different technologies of software services: APIs, microservices, REST, GraphQL. The student can develop different software services to cloud. The student can produce versioning and a comprehensive documentation for the APIs. The student can develop and exploit services with a modern programming language in different applications.
Aika ja paikka
See the calendar.
Tenttien ja uusintatenttien ajankohdat
Week 51 (2025) to Week 04 (2026) in exam.tuni.fi
Arviointimenetelmät ja arvioinnin perusteet
Students study the course content independently in a virtual learning environment and complete weekly exercises based on it. Weekly support for the exercises is available at TAMK, but the exercises can also be completed independently. 40% of the exercises are mandatory. The course grade is based on an exam, which is taken in the exam.tuni.fi service.
Arviointiasteikko
0-5
Opiskelumuodot ja opetusmenetelmät
The course combines online lectures, weekly home exercises, and an exam. The lectures cover key programming concepts and principles through practical examples. The course concludes with a programming exam that assesses the understanding of essential programming principles and practices.
Oppimateriaalit
The primary learning materials are online lecture and exercise materials provided during the course.
But if interested here are books that covers the concepts of the course:
“Spring Boot in Action” - Craig Walls
“Spring Start Here” - Laurentiu Spilca
“Full Stack GraphQL Applications” - William Lyon
Opiskelijan ajankäyttö ja kuormitus
The course is worth 5 ECTS credits, and one credit corresponds to 27 hours of student work. This means the total workload for the course is:
5 ECTS × 27 hours = 135 hours
The course runs over 9 weeks, so the average weekly workload is:
135 hours ÷ 9 weeks = 15 hours per week
This workload includes watching online lectures, completing weekly assignments, studying independently and preparing for the final exam.
Sisällön jaksotus
Premilinary, my change:
Week 43:
Introduction to Service-Based Software Development & Gradle
Key topics: Introduction to Gradle, build automation, recap of Java
Week 44:
RESTful APIs and HTTP
Key topics: REST principles, HTTP methods, CRUD API, JSON and Java, Hello World Spring Boot
Week 45:
Spring Boot Basics
Key topics: Spring Boot dependency injection, RESTful API introduction with Spring Boot
Week 46:
Spring Boot RESTful API
Key topics: Error handling, meaningful HTTP status codes, logging, API versioning, validation
Week 47:
Databases
Key topics: Spring Boot and database connection
Week 48:
API Documentation & Versioning
Key topics: Swagger/OpenAPI, API versioning strategies, error handling, security basics
Week 49:
Introduction to GraphQL in Spring Boot
Key topics: GraphQL vs. REST, schema, queries, mutations, GraphQL implementation
Week 50:
Deploying Services to Render.com
Key topics: Dockerizing apps, cloud deployment, database configuration
Week 51: Exams
Toteutuksen valinnaiset suoritustavat
No optional completion methods available.
Harjoittelu- ja työelämäyhteistyö
This course is designed for learning the fundamentals of programming and does not include actual work placement or direct collaboration with industry. However, the course content reflects current industry requirements. Lectures and home assignments focus on practical programming tasks that enhance students’ problem-solving skills and prepare them for further studies as well as real-world challenges. The instruction emphasizes industry best practices and programming concepts commonly used in professional environments, supporting a smooth transition into working life.
Kansainvälisyys
This course does not include specific international collaboration arrangements or opportunities for internships abroad. However, the course content is based on internationally recognized programming practices and standards, preparing students for the demands of modern work environments. Students are also encouraged to make use of international resources and networks to further expand their skills and knowledge.