Eine Applikation soll den Benutzer beim Berechnen von bestimmten Problemen unterstützen. Er muss sich sich nicht besonders mit der Thematik auskennen um die Rechnung durchzuführen.
Es existiert eine Eingabe die es ermöglicht eine gewünschte Aktion auszuwählen.
Ist eine Aktion ausgewählt müssen basierend auf der Auswahl weitere Eingaben gemacht werden.
Es wird immer nur die Anzahl von Eingaben gezeigt die auch benötigt werden
Die Liste der Rechenregeln (s.u.) ist konfigurativ (nicht Hardcoded) abgelegt und kann z.B. durch ein restart oder redeployment der Applikation neu geladen werden.
Ein geschulter Entwickler/Anwender kann die Rechenregeln konfigurieren ➝ erweitern, verändern, reduzieren.
User-Flow
Start der Applikation "Bei welcher Berechnung wollen Sie unterstützt werden?"
Auswahl erfolgt durch Benutzer
basierend auf der ausgewählten Rechenregel werden ggfs. weitere Inputs angezeigt
nach Eingabe der weiteren Felder wird die Rechnung durchgeführt
Anzeige des/der Ergebnisse
Rechenregeln
Name
Beschreibung
Input A
Benötigt?
Input B
Benötigt?
Regel
Hypotenuse berechnen
Anhand von Ankathete und Gegenkathete die Länge der Hypotenuse berechnen
Ankathete
JA
Gegenkathete
JA
Ergebnis = root(a²+b² )
Name
Beschreibung
Input A
Benötigt?
Input B
Benötigt?
Regel
Ganzzahligen Rest ausgeben
Ausgehend von einer Zahl wird der ganzzahlige Rest einer Division berechnet.
Zahl
JA
Divisor
JA
Ergebnis = Zahl mod(Divisor)
Name
Beschreibung
Input A
Benötigt?
Input B
Benötigt?
Regel
Kreisumfang berechnen
Mit dem Durchmesser eines Kreises kann hier der Umfang berechnet werden.
Durchmesser
JA
–
NEIN
Ergebnis = Durchmesser * 3,1415
Ablauf und Umfang
Du kannst deine Frameworks und Programmiersprache frei wählen. Ausgeschlossen sind nur pseudo Sprachen wie z.B. Brainfuck oder Whitespace
Ergebnisse sind bitte in einem public Github/Gitlab Projekt oder Repository hinterlegt. Den Link uns dann bitte zukommen lassen
Du hast so viel Zeit wie du willst. Wir gehen davon aus, dass die Aufgabe in 4-8 Stunden gut zu lösen ist und ein maximaler zeitlicher Einsatz wird nicht bewertet weder negativ noch positiv
Bitte lege eine Beschreibung in as Repository wie die Applikation zu starten und zu nutzen ist (für technisch versierte)
Bitte beschreibe auch was man machen muss, damit die „Rechenregeln“ angelegt und verändern bzw. auch eine neue erstellt werden kann
Was musst du NICHT machen
Authentifizierung / Autorisierung
Production Ready deployment ➝ Ausführung auf dem Entwicklerrechner reicht
Ausführliche Dokumentation
Dir ein Bein ausreissen wenn es nicht klapp ➝ Lieber mit uns sprechen
Hinweise
Nutze Technologien die dir liegen und in denen du dich wohlfühlst
Achte auf Clean Code und vernünftigen Code-Style nutze ggfs. quality checker
Wenn du Code/Snippets von dritten verwendest, dann mach das bitte kenntlich
Struktur, Vorgehen und Lösungsidee ist uns wichtiger als working code
Bereite dich darauf vor dein Vorgehen zu erläutern
Die Aufgabe ist bewusst nur grob spezifiziert. Überrasche uns mit Ideen wie du es verstehst.