http://ccd-school.de 1 Architecture Kata „Sicherer Taschenrechner“ Entwickle eine Taschenrechneranwendung, bei der einzelne Operationen nur bestimmten Benutzern zur Verfügung stehen. Das grundsätzliche UI des Taschenrechners soll so aussehen: Darüber hinaus soll der Taschenrechner aber auch eine Benutzerverwaltung enthalten. Sie kann z.B. über ein Menü erreichbar sein. Mit ihr soll man Benutzer registrieren können, Benutzer können sich an- und abmelden und ihr Passwort neu vergeben. Beim Start der Anwendung müssen sich Benutzer zuerst anmelden. 1 Falls sie ihr Passwort vergessen haben, können sie sich ein neues per Email zusenden lassen. Nach Installation der Anwendung gibt es einen Default-Benutzer „admin“ (Passwort: „admin“), der weitere Benutzer anlegen kann. Jeder Benutzer ist einer Rolle zugeordnet. Sie bestimmt, welche Operationen er verwenden darf. Andere sind für ihn ausgegraut. Daten • Rechte: Addieren (A), Subtrahieren (S), Multiplizieren (M), Dividieren (D), Benutzer registrieren (R) • Rollen: Schüler [A,S], Bachelor [A,S,M], Master [A,S,M,D] Admin [R] • Benutzer: Email, Passwort (nur als Hash speichern), Rolle 1 Als Benutzername wird der zuletzt benutzte vorgeschlagen.