Hallo @Crash2001!
Mit diesem einen Satz bringst du es eigentlich auf den Punkt und hättest dir den Rest deiner Ausführung sparen können.
Ich führ es dennoch mal aus, weil der Nuget-Server grade lahmt und ich Lust&Zeit habe.
---
Lassen wir künstliche Intelligenz mal außen vor, das würde den Sachverhalt unnötig verkomplizieren.
In den anderen Fällen kann ein System nur mit dem Satz an Regeln umgehen, den du ihm vorgibst.
Natürlich kann die Software nicht vorhersehen, welcher Nutzerinput kommt. Muss sie aber auch nicht. Auf bestimmte Eingaben ist Software durch den zugrunde liegenden Code eingestellt, auf andere nicht. Die können entweder aufgrund der der Programmiersprache/-architektur implizit innewohnenden Technik trotzdem korrekt verarbeitet werden, oder eben nicht. Aber selbst der Ausgang "kann nicht verarbeitet werden (und wirft Exception)" ist für eine bestimmte Menge nicht definierter Eingaben ein Vorgegebener.
Es bleibt "kompliziert". Denn auch wenn das Element der Nutzereingabe nicht vorhersehbar ist, für die Verarbeitung vorgegebener Eingaben gibt es ausschließlich endliche Möglichkeiten. Dass der Begriff "komplex" in diesem Zusammenhang so gerne benutzt wird, liegt meiner Einschätzung daran, dass die wenigsten Menschen (mich eingeschlossen) den Grad der Kompliziertheit der Software(-Systeme), die sie benutzen, zu 100% erfassen können.
Der entscheidende Unterschied zwischen deiner Fußball-Analogie und Software ist, dass so viele verschiedene Faktoren auf den Menschen Einfluss haben, dass nie 100%-ig vorhersehbar ist, welchen Reaktion eine Aktion hervorruft.
Software wird unter absolut gleichen Umständen immer gleich reagieren.
Ein Mensch befolgt im Gegensatz zu Software keinen vorgegebenen Plan, sondern trifft in diesem Fall eine Entscheidung. Das Wählen einer Option aus einer vorgegebenen Menge an Optionen unterscheidet sich drastisch von einer Entscheidung, bei der man im Gegensatz zur Wahl nicht in Gänze weiß, was die Konsequenzen sind.
Das ist so nicht ganz korrekt. Im Programm geschriebene Prozeduren sind ebenso wie in einer Datenbank hinterlegte Daten Wissen. Nämlich Wissen, wie man auf bestimmten Input reagieren soll. Wenn dein Programm zur Laufzeit selbst ohne speziell dafür geschriebenen Code "entscheiden" könnte, wie es auf bestimmte Aktionen reagiert oder selbst laufen lernt, wäre das "Können". Aber da sind wir wieder bei KI, und da bin ich mir ähnlich wie beim Wetter selbst noch nicht ganz sicher, ob es sich da um eine überwiegend komplexe oder komplizierte Domäne handelt.
Gruß, Goulasz
P.S.: In einer Datenbank liegen auch keine Informationen vor, sondern Daten. Informationen entstehen beim Aufnehmen und Verarbeiten durch Rezipienten. Gleiche Daten können bei unterschiedlichen Rezipienten und unterschiedlichem Kontext unterschiedliche Informationen erzeugen.