Kritische Systeme zeichnen sich gegenüber den "nicht kritischen Systemen" dadurch aus, dass an diese Systeme besondere Anforderungen an die Qualität der Funktionserfüllung gestellt werden. Es besteht ein Zusammenhang zwischen Kritikalität und Qualität. Eine ganzheitliche Betrachtung von System und Systemumgebung ist zwingend notwendig, da sich die besonderen Anforderungen und damit die geforderte Qualität aus dem Systemumfeld ergeben. Eine Anforderungsanalyse im Rahmen einer Problemlösung muss drei wesentliche Bereiche umfassen
Risikoanalyse: Welche Konsequenzen hat die Nichterfüllung bzw. fehlerhafte Erfüllung der Systemfunktion?
Funktionale Anforderungsanalyse: Welche Funktionalität muss realisiert werden, um die Systemfunktion zu erfüllen?
Nicht funktionale, qualitative Anforderungsanalyse: Wie gut muss die Systemfunktion erfüllt werden?
Die aus dem Bereich Software-Engineering bekannten Methoden werden einem Teil dieser Aufgabe nicht gerecht, da sie das Problem zu isoliert aus der Sicht der Software heraus betrachten. Für den Bereich des Gesamtsystems sind die bekannten Methoden aus dem Bereich System-Engineering einzusetzen. Sie geben letztendlich auch Antwort auf die Frage, welche Anteile der Software kritisch in bezug auf die Erfüllung der Systemfunktion sind und daher besonderer Sorgfalt im Entwurfsprozess bedürfen. Letzteres ist dann wieder eine Aufgabe für das Software-Engineering.
Inbetriebnahme und Betrieb sicherheitskritischer Systeme können zudem Bestimmungen des Gesetzgebers unterworfen sein.