Advanced Application DevelopmentLaajuus (5 op)
Tunnus: TE00BR90
Laajuus
5 op
Osaamistavoitteet
After completing the course the student can:
Implement a desktop or a web application for an assigned task.
Program efficiently in a team using professional tools.
Reuse code, utilize libraries, and/or application platforms and application frameworks.
Write code from UML diagrams or implement user stories.
Understand some common design patterns.
Sisältö
An assignment for a desktop or a web application.
Elaborating on programming language and features suitable for the application.
Learning and utilising one or more design patterns.
Using professional coding and version control tools.
Re-using code and utilising libraries, frameworks and/or platforms.
Developing a desktop or a web application as a team work.
Ilmoittautumisaika
02.07.2024 - 12.09.2024
Ajoitus
12.09.2024 - 13.12.2024
Opintopistemäärä
5 op
Toteutustapa
Lähiopetus
Yksikkö
Tekniikka ja liiketoiminta
Toimipiste
Kupittaan kampus
Opetuskielet
- Suomi
Koulutus
- Tietojenkäsittelyn koulutus
Opettaja
- Tuomo Helo
Ryhmät
-
PTIETS22swisPTIETS22 Ohjelmistojen kehittäminen ja tietojärjestelmät
-
PTIETS22sepmPTIETS22 Ohjelmistotekniikka ja projektihallinta
Tavoitteet
After completing the course the student can:
Implement a desktop or a web application for an assigned task.
Program efficiently in a team using professional tools.
Reuse code, utilize libraries, and/or application platforms and application frameworks.
Write code from UML diagrams or implement user stories.
Understand some common design patterns.
Sisältö
An assignment for a desktop or a web application.
Elaborating on programming language and features suitable for the application.
Learning and utilising one or more design patterns.
Using professional coding and version control tools.
Re-using code and utilising libraries, frameworks and/or platforms.
Developing a desktop or a web application as a team work.
Oppimateriaalit
Kurssilla käytetään ulkopuolista kurssivideomateriaalia. Tämä aiheuttaa opiskelijalle jonkin verran kustannuksia.
Muuta Internet-materiaalia.
Opetusmenetelmät
- videoiden katsominen ja muun oppimismateriaalin lukeminen
- osallistuminen luennoille
- ohjelmointi opettajan johdolla
- itsenäinen ohjelmointi
- emulaattorin ja muiden työkalujen kanssa työskentely; configurointi
- osallistuminen ryhmätyön tekemiseen
Tenttien ajankohdat ja uusintamahdollisuudet
Ei tenttiä.
Toteutuksen valinnaiset suoritustavat
Opiskelija voi suorittaa opintojakson osoittamalla osaamisensa opintojakson aiheista esimerkiksi tekemillään työnäytteillä. Osoittamisesta täytyy sopia opettajan kanssa opintojakson 4 ensimmäisen viikon aikana.
Opiskelija voi myös ahotoida opintojakson vastaavalla muualla oppilaitoksemme hyväksymässä oppilaitoksessa suoritetulla kurssilla. Asia kannattaa laittaa vireille heti opintojakson alkaessa.
Opiskelijan ajankäyttö ja kuormitus
40 h videoita, luettavaa
26 h kontaktiluentoja
4 h harjoitustyön esittäminen ja muiden harjoitustöiden seurantaa paikan päällä
39 h harjoitustyö
26 h henkilökohtaiset harjoitustehtävät
Sisällön jaksotus
Mobiiliohjelmointia React Native -kirjastolla.
Sisältö:
Mikä on React Native
React Native perusteet:
Debuggaus
Tyylit ja asemointi
Navigointi
Tilanhallinta app-tasolla
Käyttäjien syötteen käsitteleminen
HTTP-pyyntöjen lähettäminen
Autentikointi
Julkaiseminen
Expo ja muita työkaluja
6 henkilökohtaista harjoitustehtävää.
Ryhmätyö (ei pakollinen) : natiivin mobiilisovelluksen toteuttaminen
Arviointiasteikko
H-5
Arviointimenetelmät ja arvioinnin perusteet
Opintojakson kokonaismaksimipistemäärä on 120.
Maksimissaan 60 pistettä 6 henkilökohtaisesta harjoitustehtävästä, 40 pistettä harjoitustyöstä ja 20 pistettä luentoläsnäoloista.
Opintojakson arviointiskaala on seuraava:
Pisteitä vähintään -> Arvosana
0 -> 0
40 -> 1
56 -> 2
72 -> 3
88 -> 4
104 -> 5
Huomaa seuraava lisäehto: hyväksyttävään suoritukseen tarvitaan vähintään 25 pistettä henkilökohtaisista harjoitustehtävistä .
Läsnäolopisteet annetaan seuraavan skaalan perusteella:
Läsnäoloprosentti käytännön- ja teorialuennoilla -> pisteitä
30% -> 5
45% ->10
60%->15
80%->20
Osa henkilökohtaisista harjoitustehtävistä tehdään käytännöntunneilla yhdessä opettajan kanssa. Näin läsnäolo niillä karruttaa myös harjoitustehtäväpisteitä.
Demokerroilla on oltava läsnä. Läsnäolo demoissa ei karruta läsnäolopisteitä. Poissaolo demoista aiheuttaa 50 % vähennyksen opiskelijan näihin demoihin palauttamien tehtävien pisteisiin. Myös tehtävien palauttaminen myöhässä aiheuttaa 50 prosentin vähennyksen. Tehtäviä ei oteta enää vastaan opintojakson päättymispäivän jälkeen. Opintojakson päättymispäivän jälkeen ei myöskään anneta korvaavia tai täydentäviä tehtäviä. Opiskelija täytyy huolehtia siis siitä, että hän saa kerättyä eri suorituksista riittävästi pisteitä opintojakson aikana.
Hylätty (0)
Opiskelija ei ole opintojakson aikana onnistunut keräämään läpäisyyn riittävää pistemäärää. Näin ollen hän ei ole pystynyt osoittamaan sellaista osaamista, jonka perusteella voitaisiin antaa hyväksyttävä arvosana.
Arviointikriteerit, tyydyttävä (1-2)
Opiskelija tietää mitä ovat natiivit mobiilisovellukset ja tuntee niiden kehittämiseen liittyviä kysymyksiä
Opiskelija tuntee React Nativen perusteet
Opiskelija osaa ohjelmoida yksinkertaisen React Native -sovelluksen
Opiskelija tietää joitakin keskeisiä React Native -kehittämisessä käytettäviä työkaluja
Arviointikriteerit, hyvä (3-4)
Opiskelija tietää mitä ovat natiivit mobiilisovellukset ja tuntee niiden kehittämiseen liittyviä kysymyksiä
Opiskelija hallitsee React Nativen perusteet
Opiskelija osaa ohjelmoida React Native -sovelluksen ja hyödyntää React Native -kirjastoja
Opiskelija osaa etsiä tietoja mobiilisovellusosaamisensa kehittämiseksi ja ongelmien ratkaisemiseksi
Opiskelija osaa hyödyntää joitakin keskeisiä React Native -kehittämisessä käytettäviä työkaluja
Opiskelijalla osaa työskennellä mobiiliohjelmointiprojektissa
Arviointikriteerit, kiitettävä (5)
Opiskelija tietää mitä ovat natiivit mobiilisovellukset ja tuntee laajasti niiden ohjelmointiin liittyviä kysymyksiä
Opiskelija hallitsee laajasti React Native -kehittämisen perusteita
Opiskelija osaa ohjelmoida tehokaasti React Native -sovelluksen ja hyödyntää React Native -kirjastoja
Opiskelija osaa suunnitella ja toteuttaa modulaarisia React Native -sovelluksia
Opiskelija osaa etsiä tehokkaasti tietoja osaamisensa kehittämiseksi ja ongelmien ratkaisemiseksi
Opiskelija osaa hyödyntää keskeisiä React Native -kehittämisessä käytettäviä työkaluja
Opiskelijalla osaa työskennellä aloitteellisesti ja tehokkaasti erilaisissa rooleissa mobiiliohjelmointiprojektissa määrittelystä mobiilisovelluksen julkaisuun
Ilmoittautumisaika
24.07.2024 - 12.09.2024
Ajoitus
02.09.2024 - 18.12.2024
Opintopistemäärä
5 op
Toteutustapa
Lähiopetus
Yksikkö
Tekniikka ja liiketoiminta
Toimipiste
Kupittaan kampus
Opetuskielet
- Englanti
Koulutus
- Tieto- ja viestintätekniikan koulutus
- Degree Programme in Information and Communications Technology
Opettaja
- Ali Khan
Ryhmät
-
PTIVIS21OSoftware Engineering and Project Management
Tavoitteet
After completing the course the student can:
Implement a desktop or a web application for an assigned task.
Program efficiently in a team using professional tools.
Reuse code, utilize libraries, and/or application platforms and application frameworks.
Write code from UML diagrams or implement user stories.
Understand some common design patterns.
Sisältö
An assignment for a desktop or a web application.
Elaborating on programming language and features suitable for the application.
Learning and utilising one or more design patterns.
Using professional coding and version control tools.
Re-using code and utilising libraries, frameworks and/or platforms.
Developing a desktop or a web application as a team work.
Oppimateriaalit
Text books: Course is based on:
"Spring Boot in Action" by Craig Walls:
This book provides a comprehensive guide to building web applications, including RESTful web services, using Spring Boot. It covers the fundamentals of Spring Boot and how to create RESTful APIs with it.
"Spring Microservices in Action" by John Carnell:
While this book focuses on microservices architecture, it extensively covers creating RESTful APIs with Spring Boot as a fundamental part of building microservices. It's a great choice if you're interested in microservices-based RESTful services.
"Mastering Spring Boot 2.0" by Dinesh Rajput:
This book covers advanced topics related to Spring Boot, including RESTful web services. It's suitable for those who have a basic understanding of Spring Boot and want to dive deeper into building RESTful APIs.
"Spring REST" by Balaji Varanasi and Sudha Belida:
This book, mentioned earlier in the context of RESTful web services in general, is also a good resource if you're specifically interested in using Spring for building RESTful APIs.
"Building RESTful Web Services with Spring 5" by Ludovic Dewailly and Alexandre Chapellon:
This book focuses on Spring 5 and covers building RESTful web services using the latest features of the Spring framework, making it a valuable resource for staying up-to-date with Spring technology.
"Spring Boot 2.0 Cookbook" by Alex Antonov:
This book provides practical recipes for building various types of applications with Spring Boot, including RESTful web services. It's a hands-on guide with real-world examples.
More course material and assignments implementation instructions will be provided during learning period.
Opetusmenetelmät
- Weekly face-to-face meetings with lectures and small group work
- Learning by doing and experimenting (Implementation assignments, project work)
- Small group work and peer learning
- Self-study material and FLIP classroom
Tenttien ajankohdat ja uusintamahdollisuudet
No exam
Pedagogiset toimintatavat ja kestävä kehitys
Learning by doing and FLIP classrooms
Toteutuksen valinnaiset suoritustavat
Ask the teacher about possible alternative methods of completion
Opiskelijan ajankäyttö ja kuormitus
Contact hours
- Course introduction: 3 hours
- 13 times 3h theory and practice: 13 x 3h = 39 hours
- FLIP classroom 7 X 2h = 14
Home work:
- Working with assignments: approximately 80 hours
Total: approximately 135 hours
Sisällön jaksotus
The course content is divided into four learning objectives(CLOs):
CLO1 Develop applications interacting with cloud-based/regular SQL databases using the latest ORM frameworks:
Database Connectivity using JDBC
1.1 Create a database connection
1.2 Create Statement Objects
1.3 Perform SQL Commands
1.4 Manipulate databases
Database Connectivity using Spring Boot Data JPA
1.5 Implement Database connectivity using Spring Boot Data JPA
1.6 Manipulate persistent data using Spring Boot Data JPA
NoSQL Database Connectivity using ORM
1.7 Compare JSON with XML
1.8 Implement a NoSQL Database connectivity using Spring Boot Data JPA
CLO2 Apply services architecture to implement REST based web services and micro services:
Web services and SOA (Service Oriented Architecture) (optional)
2.1 Explain SOA advantages and Principles
2.2 Explain the limitations of software capabilities
2.3 Implement SOAP Web services
Backend web development RESTful web services
2.4 Introduce the Representational State Transfer (REST)
2.5 Use HTTP Methods for CRUD operations
2.6 Analyze HTTP Status Codes
RESTful web services
2.7 Configure Spring Boot Application
2.8 Create RESTful web services using Spring Boot Framework
2.9 Connect RESTful web services using Spring Boot Framework with a database
2.10 Implement entities, JPA Repository, and controllers
2.11 Build a Restful API
2.12 Test Restful API
CLO3 Analyze responsive web apps using latest UI frameworks to interact with web services:
Angular as Front-End framework
3.1 Introduce Angular Components
3.2 Implement Angular Services
3.3 Analyze an application that consumes the REST API Web service
CLO4 Deploy micro services using Dockers:
Service Virtualization Tools
4.1 Explain Service Virtualization
4.2 Introduce Docker
4.3 Create Docker Container
4.4 Deploy Application in Docker
We will use the following languages, protocols and tools:
Eclipse
MySQL
NodeJS
Spring boot
JPA
JSON
XML
REST
Angular (HTML, CSS, TS)
Docker
Viestintäkanava ja lisätietoja
Course material and assignments during learning period.
Arviointiasteikko
H-5
Arviointimenetelmät ja arvioinnin perusteet
Personal assignments:
6 personal assignments: 80 points
The group project work: 20 points.
The assignments must be returned by the deadline to get the points. The assignments returned after the deadline will give you only half of the points.
Demonstrations of exercises during the contact session is mandatory without demonstration you will lose 50% of your marks.
Hylätty (0)
0-49 (0)
Arviointikriteerit, tyydyttävä (1-2)
50-59 (1)
60-69 (2)
Arviointikriteerit, hyvä (3-4)
70-79 (3)
80-89 (4)
Arviointikriteerit, kiitettävä (5)
90-100 (5)
Ilmoittautumisaika
01.06.2023 - 14.09.2023
Ajoitus
04.09.2023 - 15.12.2023
Opintopistemäärä
5 op
Toteutustapa
Lähiopetus
Yksikkö
Tekniikka ja liiketoiminta
Toimipiste
Kupittaan kampus
Opetuskielet
- Suomi
Paikat
15 - 35
Opettaja
- Tuomo Helo
Ryhmät
-
PTIETS21swisPTIETS21 Ohjelmistojen kehittäminen ja Tietojärjestelmät
Tavoitteet
After completing the course the student can:
Implement a desktop or a web application for an assigned task.
Program efficiently in a team using professional tools.
Reuse code, utilize libraries, and/or application platforms and application frameworks.
Write code from UML diagrams or implement user stories.
Understand some common design patterns.
Sisältö
An assignment for a desktop or a web application.
Elaborating on programming language and features suitable for the application.
Learning and utilising one or more design patterns.
Using professional coding and version control tools.
Re-using code and utilising libraries, frameworks and/or platforms.
Developing a desktop or a web application as a team work.
Oppimateriaalit
Imoitetaan tässä toteutuksen alussa.
Tenttien ajankohdat ja uusintamahdollisuudet
- ei tenttiä
Opiskelijan ajankäyttö ja kuormitus
40 h videos, reading
26 h contact lessons
40 h teamwork
26 h personal exercises
Sisällön jaksotus
Opintojakson sisältö.
Mikä on React Native
React Native perusteet:
Debuggaus
Tyylit ja asemointi
Navigointi
Tilanhallinta app-tasolla
Käyttäjien syötteen käsitteleminen
HTTP-pyyntöjen lähettäminen
Autentikointi
Julkaiseminen
Expo ja muita työkaluja
6 henkilökohtaista harjoitustehtävää.
Ryhmätyö (ei pakollinen) : mobiilisovelluksen toteuttaminen
Arviointiasteikko
H-5
Arviointimenetelmät ja arvioinnin perusteet
6 henkilökohtaista harjoitustehtävää: 60 pistettä
Ryhmätyö: 40 pistettä.
Harjoitustehtävät täytyy palauttaa määräaikoihin mennessä. Demoissa on oltava läsnä. Myöhästyneistä palautuksista ja palautuksista ilman demoläsnäoloa tehdään 50 prosentin pistevähennys.
Opiskelijan täytyy saada ainakin 30 pistettä (joista ainakin 25 pistettä henkilökohtaisista harjoitustehtävistä) läpäistääkseen opintojakson.
Arvosteluskaala (pistettä -> arvosana):
30 -> 1
50 -> 2
70 -> 3
80 -> 4
90 -> 5
Ilmoittautumisaika
26.07.2023 - 14.09.2023
Ajoitus
04.09.2023 - 15.12.2023
Opintopistemäärä
5 op
Toteutustapa
Lähiopetus
Yksikkö
Tekniikka ja liiketoiminta
Toimipiste
Kupittaan kampus
Opetuskielet
- Englanti
Paikat
20 - 70
Opettaja
- Ali Khan
Ajoitusryhmät
- Group 1 (Koko: 25. Avoin AMK: 0.)
- Group 2 (Koko: 25. Avoin AMK: 0.)
Ryhmät
-
ICT_MOD_UPV_23mahdolliset Valenciasta tulevat vaihtarit
-
PTIVIS20OSoftware engineering and Project Management
Pienryhmät
- Group 1
- Group 2
Tavoitteet
After completing the course the student can:
Implement a desktop or a web application for an assigned task.
Program efficiently in a team using professional tools.
Reuse code, utilize libraries, and/or application platforms and application frameworks.
Write code from UML diagrams or implement user stories.
Understand some common design patterns.
Sisältö
An assignment for a desktop or a web application.
Elaborating on programming language and features suitable for the application.
Learning and utilising one or more design patterns.
Using professional coding and version control tools.
Re-using code and utilising libraries, frameworks and/or platforms.
Developing a desktop or a web application as a team work.
Arviointiasteikko
H-5
Ilmoittautumisaika
03.10.2022 - 30.01.2023
Ajoitus
03.11.2022 - 23.03.2023
Opintopistemäärä
5 op
Toteutustapa
Lähiopetus
Yksikkö
Tekniikka ja liiketoiminta
Toimipiste
Kupittaan kampus
Opetuskielet
- Englanti
Paikat
20 - 40
Opettaja
- Golnaz Sahebi
- Ali Khan
Ryhmät
-
PTIETS20swisPTIETS20 Ohjelmistojen kehittäminen ja Tietoturva
Tavoitteet
After completing the course the student can:
Implement a desktop or a web application for an assigned task.
Program efficiently in a team using professional tools.
Reuse code, utilize libraries, and/or application platforms and application frameworks.
Write code from UML diagrams or implement user stories.
Understand some common design patterns.
Sisältö
An assignment for a desktop or a web application.
Elaborating on programming language and features suitable for the application.
Learning and utilising one or more design patterns.
Using professional coding and version control tools.
Re-using code and utilising libraries, frameworks and/or platforms.
Developing a desktop or a web application as a team work.
Oppimateriaalit
JavaScript Everywhere: Building Cross-Platform Applications with GraphQL, React, React Native, and Electron
by Adam D. Scott | Feb 25, 2020
The chapters from 18 to 20 will be skipped.
The book is (at the course beginning) available In Ebook Central.
Sisällön jaksotus
Contents:
During this course
1) a backend web server with GrahpQL API is implemented together with related
2) React based web client and
3) React Native based mobile client.
In this order.
Also an authentication process is implemented. Attention is paid for the architecture of the solution.
In the teamwork the students can elaborate more deeply on the subject by creating their own web site with mobile access.
The instructors will provide with one teamwork subject, but the students can select a different subject as long as it satisfies the requirements set in the teamwork commission and utilizes GraphQL and React Native.
Technology:
- JavaScript
- Node.js
- Express.js web framework
- GraphQL API with Apollo
- GraphQL Playground
- MongoDB database with Mongoose
- JSON Web Tokens
- React
- React native
- Expo
Contact lessons: Theory, programming together, demos and some support to working in teams.
6 personal assignments:
A teamwork project (Not compulsory)
Arviointiasteikko
H-5
Arviointimenetelmät ja arvioinnin perusteet
6 personal assignments: 60 points
The teamwork: 40 points.
The assignments must be returned by the deadline to get the points. The student must also participate in the demonstration to get the points.
The assignments returned after the deadline and/or without participating in the demos will give only half of the points.
The student must get at least 30 points (of which at least 25 from the personal assignments) to pass the course.
The grading scale (points -> grade):
30 points -> 1
50 points -> 2
70 points -> 3
80 points -> 4
90 points -> 5
Ilmoittautumisaika
20.07.2022 - 08.09.2022
Ajoitus
29.08.2022 - 16.12.2022
Opintopistemäärä
5 op
Toteutustapa
Lähiopetus
Yksikkö
Tekniikka ja liiketoiminta
Toimipiste
Kupittaan kampus
Opetuskielet
- Suomi
- Englanti
Paikat
25 - 40
Koulutus
- Tietojenkäsittelyn koulutus
Opettaja
- Tuomo Helo
Ajoitusryhmät
- SWIS (Koko: 35. Avoin AMK: 0.)
- SEPM (Koko: 35. Avoin AMK: 0.)
Ryhmät
-
PTIETS20sepmPTIETS20 Ohjelmistotekniikka ja Projektinhallinta
Pienryhmät
- SWIS
- SEPM
Tavoitteet
After completing the course the student can:
Implement a desktop or a web application for an assigned task.
Program efficiently in a team using professional tools.
Reuse code, utilize libraries, and/or application platforms and application frameworks.
Write code from UML diagrams or implement user stories.
Understand some common design patterns.
Sisältö
An assignment for a desktop or a web application.
Elaborating on programming language and features suitable for the application.
Learning and utilising one or more design patterns.
Using professional coding and version control tools.
Re-using code and utilising libraries, frameworks and/or platforms.
Developing a desktop or a web application as a team work.
Oppimateriaalit
JavaScript Everywhere: Building Cross-Platform Applications with GraphQL, React, React Native, and Electron
by Adam D. Scott | Feb 25, 2020
The chapters from 18 to 20 will be skipped.
The book is (at the course beginning) available In Ebook Central.
Sisällön jaksotus
Contents:
During this course
1) a backend web server with GrahpQL API is implemented together with related
2) React based web client and
3) React Native based mobile client.
In this order.
Also an authentication process is implemented. Attention is paid for the architecture of the solution.
In the teamwork the students can elaborate more deeply on the subject by creating their own web site with mobile access.
The instructors will provide with one teamwork subject, but the students can select a different subject as long as it satisfies the requirements set in the teamwork commission and utilizes GraphQL and React Native.
Technology:
- JavaScript
- Node.js
- Express.js web framework
- GraphQL API with Apollo
- GraphQL Playground
- MongoDB database with Mongoose
- JSON Web Tokens
- React
- React native
- Expo
Contact lessons: Theory, programming together, demos and some support to working in teams.
6 personal assignments:
A teamwork project (Not compulsory)
Arviointiasteikko
H-5
Arviointimenetelmät ja arvioinnin perusteet
6 personal assignments: 60 points
The teamwork: 40 points.
The assignments must be returned by the deadline to get the points. The student must also participate in the demonstration to get the points.
The assignments returned after the deadline and/or without participating in the demos will give only half of the points.
The student must get at least 30 points (of which at least 25 from the personal assignments) to pass the course.
The grading scale (points -> grade):
30 points -> 1
50 points -> 2
70 points -> 3
80 points -> 4
90 points -> 5
Ilmoittautumisaika
30.07.2022 - 09.09.2022
Ajoitus
29.08.2022 - 22.12.2022
Opintopistemäärä
5 op
Toteutustapa
Lähiopetus
Yksikkö
Tekniikka ja liiketoiminta
Toimipiste
Kupittaan kampus
Opetuskielet
- Suomi
- Englanti
Koulutus
- Tieto- ja viestintätekniikan koulutus
- Degree Programme in Information and Communications Technology
Opettaja
- Tuomo Helo
- Ali Khan
Vastuuopettaja
Tuomo Helo
Ryhmät
-
PTIVIS19OSoftware Engineering and Project Management
Tavoitteet
After completing the course the student can:
Implement a desktop or a web application for an assigned task.
Program efficiently in a team using professional tools.
Reuse code, utilize libraries, and/or application platforms and application frameworks.
Write code from UML diagrams or implement user stories.
Understand some common design patterns.
Sisältö
An assignment for a desktop or a web application.
Elaborating on programming language and features suitable for the application.
Learning and utilising one or more design patterns.
Using professional coding and version control tools.
Re-using code and utilising libraries, frameworks and/or platforms.
Developing a desktop or a web application as a team work.
Oppimateriaalit
JavaScript Everywhere: Building Cross-Platform Applications with GraphQL, React, React Native, and Electron
by Adam D. Scott | Feb 25, 2020
The chapters from 18 to 20 will be skipped.
The book is (at the course beginning) available In Ebook Central.
Sisällön jaksotus
During this course
1) a backend web server with GrahpQL API is implemented together with related
2) React based web client and
3) React Native based mobile client.
In this order.
Also an authentication process is implemented. Attention is paid for the architecture of the solution.
In the teamwork the students can elaborate more deeply on the subject by creating their own web site with mobile access.
The instructors will provide with one teamwork subject, but the students can select a different subject as long as it satisfies the requirements set in the teamwork commission and utilizes GraphQL and React Native.
Technology:
- JavaScript
- Node.js
- Express.js web framework
- GraphQL API with Apollo
- GraphQL Playground
- MongoDB database with Mongoose
- JSON Web Tokens
- React
- React native
- Expo
Contact lessons: Theory, programming together, demos and some support to working in teams.
6 personal assignments:
A teamwork project (Not compulsory)
Arviointiasteikko
H-5
Arviointimenetelmät ja arvioinnin perusteet
6 personal assignments: 60 points
The teamwork: 40 points.
The assignments must be returned by the deadline to get the points. The student must also participate in the demonstration to get the points.
The assignments returned after the deadline and/or without participating in the demos will give only half of the points.
The student must get at least 30 points (of which at least 25 from the personal assignments) to pass the course.
The grading scale (points -> grade):
30 points -> 1
50 points -> 2
70 points -> 3
80 points -> 4
90 points -> 5