https://github.com/ribeaud/swa-en
Template for any SWA based EN (Erfahrungsnote)
https://github.com/ribeaud/swa-en
Last synced: 4 months ago
JSON representation
Template for any SWA based EN (Erfahrungsnote)
- Host: GitHub
- URL: https://github.com/ribeaud/swa-en
- Owner: ribeaud
- Created: 2020-11-08T19:28:47.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-11-10T16:31:26.000Z (over 5 years ago)
- Last Synced: 2025-10-07T23:46:41.229Z (8 months ago)
- Homepage:
- Size: 20.5 KB
- Stars: 0
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# SWA Module, Graded Exercise
## Project
Matriculation Number: (_to be filled by student_)
You might choose between following **Java** applications:
* Contact list
* Library
The delivered application should be composed of multiple **modules** resp. should generate multiple **jars**.
The **frontend** (or **view** - probably in its own **module**/**component**) might be a **REST** API or **Server Pages** based. If you implement a **REST** API, then you will have to provide me a client (i.e., **React**) or you will have to tell how I can realise the minimum requirements (see below).
To start the application, you might use one of the following mechanisms:
* Using **Java** [modules](https://github.com/ribeaud/ch.fhnw.swa.modserv.cli/blob/master/Commands.txt).
* [Repacking](https://ribeaud.github.io/SWA/lectures/5/#10) a multi-**modules** **Spring Boot** application into a single **jar**.
* Using `-classpath` **Java** option.
#### Minimum requirements
The application should be able to, at least, do the following:
* List the entities
* Create/edit one entity
You will have to use a repository (or database), where you will _persist_ the entities. This repository could be a _real_ database (deployed via **Docker** for instance), an _in-memory_ one or a simple file.
#### Suggested course of action
1. Think about the components you will need
1. Draw a component/class diagram
1. Start to code
#### Possible extensions
* Delete
* Entity:
* `Magazine` (as extension of `Book`)
* `Company` (as extension of `Person`)
* Image upload (in its own *module*)
#### Reference applications
* [ch.fhnw.swa.modserv.cli](https://github.com/ribeaud/ch.fhnw.swa.modserv.cli)
* [myshop](https://github.com/ribeaud/blog-code-samples/tree/master/myshop)
* [PetClinic](https://github.com/spring-projects/spring-petclinic)
## Project delivery
(_to be filled by student_)
How to start the project:
How to test the project:
External contributions:
Other comments:
I'm particular proud of:
## Project grading
(_to be filled by lecturer_)