0% found this document useful (0 votes)
2 views2 pages

2425 Code Generation Project Guide

This document outlines the project guide for a banking application development course, detailing the context, requirements, deliverables, and grading criteria. Students will work in teams to create a REST API using the Spring Framework and a frontend interface with JavaScript, with specific deadlines for submissions and assessments. Grading will focus on code quality, feature completeness, and individual contributions, alongside a group evaluation of the API design and process documentation.

Uploaded by

jeronreijne
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views2 pages

2425 Code Generation Project Guide

This document outlines the project guide for a banking application development course, detailing the context, requirements, deliverables, and grading criteria. Students will work in teams to create a REST API using the Spring Framework and a frontend interface with JavaScript, with specific deadlines for submissions and assessments. Grading will focus on code quality, feature completeness, and individual contributions, alongside a group evaluation of the API design and process documentation.

Uploaded by

jeronreijne
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Project guide code generation 2024/2025

1. Introduction
This document will guide you through the context of the project (par. 2), requirements and user stories
(par. 3), deliverables (par. 4), and the grading of the project (par. 5).

2. Context
During this term, you will participate in a project with 4 students in the structured development of a
banking application in the form of a REST API, developed with the Spring Framework written in the Java
programming language. The API shall be made accessible to users through SwaggerUI. Additionally, you
will develop a fully functioning frontend interface written in JavaScript using a framework of your choice
such as Vue.js or React.

The development process will start with describing an API specification, developed with OpenAPI
(formerly: Swagger).1 The API specification consists of a definition of all API endpoints, parameters
(input) and responses for every endpoint (output), and underlying model definitions etc.

The API specification can be used as a mock server. The API specification will function as a starting point
for implementing the required functionality in Java. The application will be (deployed and) hosted on a
publicly available server.

The application is backed by unit tests and functional tests. Unit tests will be written in Java. Functional
tests will be written in Cucumber suite.

3. Requirements
For a complete list of project requirements and user stories, please view the user stories spreadsheet on
Moodle.

4. Deliverables
The deliverables are as follows:

Week 1: Git repository access for examiners


- Week 3: Feature complete Swagger specification in the form of a Swagger UI URL, along
with a list of endpoints each individual team member will implement.
- Week 7: First submission.
- Week 9: Second submission (retake).

The deadlines will be made available on Moodle.

5. Grading
A deadline for submission of the project to the examiners will be made available on Moodle. Every
group will deliver:

- One or more Git repository links, a zip containing the API source code, specification, unit
tests (Java) and functional tests (Cucumber suite), and Frontend code.
- A link where the application binary is hosted. (e.g. Render, Azure)
- A link where the Swagger UI of the application is hosted. (e.g. yoururl/swagger-ui.html)

1
https://swagger.io/
- A link where the application frontend is hosted. (e.g. Github Pages)

Subject to complete and timely delivery of the above-mentioned materials, the project will be graded
with the following tests:

- Code assessment, 1918IN241D (90%)


The project will be analyzed on feature completeness (see par. 3), code quality, adherence to
framework standards, and consistency.

During a 10 minute assessment, individual project members will present their contribution to the
code of the project. The individual contribution will be graded on design choices, explanation of the
workings of the code, code quality, and adherence to framework standards. The examiners will ask
questions regarding these subjects as they see fit. This will lead to an individual grade. During the
code assessment for an individual student, the focus should be primarily on the Java code, with the
JavaScript code as an optional extra to demonstrate the quality of the work (max 20%).

The unit tests and functional tests are graded on validity, acceptable code coverage (90%+),
adequacy of functional tests, and level of complexity.

- API design, 1918IN241B (10%)


The API specification in the form of a Swagger UI URL will be graded on feature completeness (par.
3), proper RESTful design and legibility of the documentation, consistency, and conformity to the
actual application. This will lead to a grade for the entire group.

- Process dossier, 1919IN241E (0%)


The students draw up a cooperation agreement in a group context. In addition, the students reflect
on the development of their (project) skills and those of their fellow students by means of the retro
evaluation form.

Test criteria:
- Active contribution to all project management meetings completeness of the following documents
(on Moodle):
- Cooperation agreement;
- Retro evaluation form.

You might also like