nextChallenge.md
1 |
|
2 |
============ |
3 |
|
4 |
Maak een programma om een jeugdherberg te beheren. |
5 |
|
6 |
Kamers |
7 |
------ |
8 |
- Kamers hebben een bepaald aantal bedden |
9 |
- Kamers kunnen faciliteiten hebben (bv. Airco, douche, bad, ...) |
10 |
- Kamers zijn van een bepaald type: Mannen, Vrouwen, of gemengd. |
11 |
|
12 |
Reserveringen |
13 |
------------- |
14 |
- Reserveringen bestaan uit: |
15 |
- Groepsnaam |
16 |
- # personen |
17 |
- Gewenste faciliteiten |
18 |
- Gewenste type |
19 |
- Ontbijt (optioneel, op alle dagen, of op bepaalde dagen) |
20 |
- Datum van aankomst |
21 |
- Verblijfsduur (== datum van vertrek) |
22 |
- Reserveringen gebeuren op basis van bedden, niet per sé op kamer |
23 |
- Reserveringen moeten kunnen worden aangepast en geannuleerd (zie "Zoeken") |
24 |
- Reserveringen krijgen een unieke ID |
25 |
|
26 |
Prijsberekening |
27 |
--------------- |
28 |
- Alle bedden kosten hetzelfde, maar onderhevig aan hoog-, midden- en |
29 |
laagseizoen |
30 |
- Elk ontbijt kost een supplement (--> ontbijt voor 4 man = 4 ontbijten) |
31 |
- Als een groep een hele kamer zelf afhuurt, 10% korting op totaalprijs |
32 |
|
33 |
Wijze van plaatsing |
34 |
------------------- |
35 |
- Bij reservatie: controleren of groep niet bij een deels bezette kamer gezet |
36 |
kan worden. |
37 |
- Indien niet mogelijk: Dan pas in nieuwe kamer plaatsen |
38 |
|
39 |
Zoeken |
40 |
------ |
41 |
Op basis van een gegeven tijdspanne: |
42 |
- Kunnen opzoeken hoeveel ontbijtjes gevraagd zijn op bepaalde dagen |
43 |
- Reserveringen kunnen opzoeken (ook op basis van groepsnaam en ID) |
44 |
- Kunnen opzoeken welke bedden in de gegeven tijdspanne gereserveed zijn |
45 |
|
46 |
Overig |
47 |
------ |
48 |
- Contractueel programmeren ("In Engels") |
49 |
- Alles in Java, en dus ook OOP =( |
50 |
- "Schrijf duidelijke, uitbreidbare, robuuste code" |
51 |
- Bij elke class @author vermelden |
52 |
- Ontwerpkeuzes; uitleggen hoe dat ge bovenstaande vereisten tegemoet komt |
53 |
- Documenteer code waar nodig |
54 |