Fachinformatiker/in Anwendungsentwicklung · Übungsfall zur Ausbildung
Den Grenzfehler in einer Versandkostenfunktion testen
Aminas Versandkostenfunktion behandelt genau den Warenwert falsch, ab dem der Versand laut Auftrag kostenlos sein soll; gerechnet wird dabei ausdrücklich mit ganzen Cent. Vier Aufgaben mit Sollwerttabelle und Lösungen führen dich vom Vergleich der Bedingungen zur Fehlerhöhe und zu Tests unmittelbar vor, auf und nach der Grenze samt erneuter Prüfung nach der Änderung.
Vier eigene Aufgaben · etwa 20 Minuten · Lösungen direkt aufklappen
Dein Fall: Spezifikation und Grenzwerttests
Amina Roth entwickelt eine Versandkostenfunktion. Für diesen Auftrag gilt: Bei einem Warenwert unter 50 € werden 4,90 € Versand berechnet, ab einschließlich 50 € ist der Versand kostenlos. Der Warenwert wird in ganzen Cent übergeben. Ein Kollege hat die Bedingung warenwertCent > 5000 programmiert; weitere Rabatte oder Sonderfälle gibt es nicht.
Eigene, vereinfachte Falldaten von Karriere-Route. Die Werte sind keine allgemeinen Normen, Herstellerangaben oder echten Patientendaten.
Arbeitsanlage
Soll-Ausgabe laut Auftragsregel
| Warenwert | Versandkosten |
|---|---|
| 49,99 € | 4,90 € |
| 50,00 € | 0,00 € |
| 50,01 € | 0,00 € |
Vier Aufgaben zum Fall
Notiere zunächst deine eigene Antwort. Vergleiche danach deinen Weg mit der Lösung und den genannten Kriterien.
Aufgabe 1 · Entscheidung begründen
Welche Bedingung für kostenlosen Versand erfüllt die Auftragsregel für alle Warenwerte in ganzen Cent?
- Kostenloser Versand, wenn warenwertCent >= 5000 gilt.
- Kostenloser Versand, wenn warenwertCent >= 5001 gilt.
- Kostenloser Versand, wenn warenwertCent >= 4999 gilt.
- Kostenloser Versand, wenn warenwertCent == 5000 gilt.
Lösung und Begründung ansehen
Richtige Auswahl: Kostenloser Versand, wenn warenwertCent >= 5000 gilt.
- 1. Kostenloser Versand, wenn warenwertCent >= 5000 gilt.
Ab einschließlich 50 € bedeutet im Centmodell mindestens 5000. Die Bedingung liefert bei 4999 Cent kostenpflichtigen Versand und bei 5000 sowie 5001 Cent kostenlosen Versand. Sie erfüllt damit die vorgegebene Grenze. - 2. Kostenloser Versand, wenn warenwertCent >= 5001 gilt.
5001 Cent sind 50,01 €. Bei genau 5000 Cent wäre die Bedingung noch falsch und es würden weiter 490 Cent Versand berechnet. Der ursprüngliche Fehler bei genau 50 € bliebe bestehen. - 3. Kostenloser Versand, wenn warenwertCent >= 4999 gilt.
4999 Cent sind 49,99 € und liegen noch unter 50 €. Diese Bedingung würde den Versand bereits dort kostenlos machen und die Freigabe um einen Cent zu früh beginnen lassen. - 4. Kostenloser Versand, wenn warenwertCent == 5000 gilt.
Der Gleichheitsvergleich erfasst genau 5000 Cent, schließt aber höhere Warenwerte aus. Beispielsweise wäre 5001 Cent wieder kostenpflichtig. Laut Auftrag muss der Versand ab der Grenze auch für alle höheren Werte kostenlos bleiben.
Kostenloser Versand gilt für alle ganzzahligen Centwerte ab einschließlich 5000. Deshalb erfüllt von den vier angebotenen Bedingungen nur >= 5000 die gesamte Auftragsregel. Bei 4999 Cent fallen noch 490 Cent Versand an, bei 5000 und 5001 Cent keine. Im reinen Centmodell wäre auch > 4999 eine gleichwertige Bedingung.
Worauf du bei deiner Antwort achtest
- Fachlich passende Auswahl aus den konkreten Falldaten
Aufgabe 2 · Rechnen und Bezugsgrößen prüfen
Um wie viele Cent ist die berechnete Rechnung bei genau 50 € Warenwert durch den Grenzfehler zu hoch?
Rechne mit den vorgegebenen Fallwerten und gib dein Ergebnis in Cent an.
Lösung und Begründung ansehen
Ergebnis: 490 Cent
- Bei 5000 Cent ist > 5000 falsch, deshalb werden irrtümlich 4,90 € berechnet.
- 4,90 € = 490 Cent.
Die Abweichung betrifft diesen Grenzfall; über andere Fehler wird hier nichts behauptet.
Worauf du bei deiner Antwort achtest
- Ansatz und Bezugsgröße nachvollziehbar
- Ergebnis mit passender Einheit
Aufgabe 3 · Grafik oder Tabelle auswerten
Amina möchte den Unterschied zwischen warenwertCent > 5000 und warenwertCent >= 5000 mit einem einzelnen Test sichtbar machen. Welchen Warenwert muss sie dafür verwenden?
- 49,99 € Warenwert.
- 50,00 € Warenwert.
- 100,00 € Warenwert.
- 0,00 € Warenwert.
Lösung und Begründung ansehen
Richtige Auswahl: 50,00 € Warenwert.
- 1. 49,99 € Warenwert.
Bei 4.999 Cent ist keine der beiden Bedingungen erfüllt. Beide Versionen berechnen Versandkosten. - 2. 50,00 € Warenwert.
Bei genau 5.000 Cent ist > falsch und >= wahr. Nur dieser Test zeigt den Gleichheitsfehler. - 3. 100,00 € Warenwert.
Bei 10.000 Cent sind beide Bedingungen erfüllt. Der Fehler bleibt damit unsichtbar. - 4. 0,00 € Warenwert.
Bei null Cent sind beide Bedingungen falsch. Der Gleichheitsfall wird nicht geprüft.
Die Auftragsregel verlangt kostenlosen Versand ab einschließlich 5.000 Cent. Die fehlerhafte Bedingung > 5000 berechnet bei genau 50 Euro noch 4,90 Euro Versand, während >= 5000 bereits null Euro liefert. Der Test mit 50 Euro unterscheidet die beiden Versionen deshalb eindeutig. Tests direkt darunter und darüber sind zusätzlich sinnvoll, ersetzen den Gleichheitstest aber nicht.
Worauf du bei deiner Antwort achtest
- Fachlich passende Auswahl aus den konkreten Falldaten
Aufgabe 4 · Auf den Arbeitsalltag übertragen
Amina ändert die Versandbedingung auf warenwertCent >= 5000. Lege je einen Test direkt vor, auf und nach der Grenze mit Eingabewert und erwarteten Versandkosten in Cent fest. Beschreibe, wie sie diese Tests nach der Änderung erneut ausführt und auswertet.
Formuliere deine Antwort mit Bezug auf den Fall.
Lösung und Begründung ansehen
Mögliche Antwort: Die Testfälle lauten: 4.999 Cent Warenwert ergeben 490 Cent Versand, 5.000 Cent ergeben 0 Cent und 5.001 Cent ebenfalls 0 Cent. Amina leitet diese Erwartungen aus der Auftragsregel ab, nicht aus dem bisherigen Programmverhalten. Nach der Änderung führt sie alle drei Tests erneut aus und vergleicht die tatsächlichen mit den erwarteten Ausgaben. Der mittlere Test macht den Gleichheitsfehler sichtbar; die beiden Nachbarwerte prüfen, dass die Versandkosten direkt unter und über der Grenze weiterhin zur Regel passen. Ein erfolgreicher Test nur deutlich oberhalb von 5.000 Cent würde dafür nicht genügen.
Bei ganzen Centwerten liegen 4.999, 5.000 und 5.001 unmittelbar vor, auf und nach der Grenze. Der ursprüngliche Vergleich > 5000 ist bei 5.000 noch falsch, die korrigierte Bedingung >= 5000 wahr. Alle drei Tests gemeinsam prüfen den Randwert und seine beiden Seiten; sie sind kein allgemeiner Nachweis für nicht beschriebene zusätzliche Geschäftsregeln.
Worauf du bei deiner Antwort achtest
- Drei Grenzwerte mit korrekten Erwartungen
- Bezug zur Spezifikation und erneute Ausführung
Einordnung und Kompetenzrahmen
Diese eigenen Aufgaben greifen ausgewählte berufliche Kompetenzen auf. Sie sind keine amtlichen Prüfungsaufgaben und bilden keine vollständige Prüfung ab. Die folgenden Verweise dienen der fachlichen Einordnung; beachte deinen konkreten Ausbildungsgang und Jahrgang.