Wie lernt man den Unterschied zwischen harten und minimalen Systemanforderungen?
Da Software und Hardware typischerweise separat verkauft oder entwickelt werden, stehen Unternehmen vor einem gemeinsamen Problem. Wie entwickelt man eine kosteneffiziente Komplettlösung, die aus Hardware- und Software-Sicht nahtlos als System funktioniert? Denken Sie an das letzte Mal, als Sie einen Computer gekauft haben. Wer kann Ihnen sagen, ob die Software, die Sie verwenden möchten, mit dem Computer, den Sie kaufen, kompatibel ist? Der Kauf eines Computers, selbst für Verbraucherzwecke, kann arbeitsintensive Recherchen erfordern und Sie sind sich immer noch nicht sicher, ob Sie den Computer überdimensionieren, nur um den regulären Betrieb aufrechtzuerhalten.
Aus der Sicht von Softwareentwicklern entwickeln sie ihre Lösung üblicherweise mit Blick auf Funktionalität und Leistungsfähigkeit, können jedoch nicht vorhersagen, welche Hardwareplattform Benutzer nutzen werden. In der Vergangenheit mussten Benutzer manchmal warten, bis die Prozessoren der nächsten Generation auf den Markt kamen, um die erforderliche Hardware auszuführen. Aufgrund der Siliziumbeschränkungen sollte die Software nun unter Berücksichtigung der Hardware-Einschränkungen entwickelt werden (umgekehrt gilt dies auch). Infolgedessen haben wir festgestellt, dass immer mehr Ingenieure über „Mindestsystemanforderungen“ sprechen.
Was sind Mindestsystemanforderungen?
Mindestsystemanforderungen sind eine Reihe technischer Spezifikationen, die Softwareunternehmen zusammen mit ihren Softwarelösungen veröffentlichen, um den Kunden über die damit funktionierende Hardware zu informieren. Diese Anforderungen bedeuten niemals, dass die Software ganzheitlich oder intensiv mit verschiedenen Hardwareplattformen getestet wurde, um herauszufinden, welche am besten funktioniert und welche kosteneffizient ist. Im Gegenteil: Diese Anforderungen wurden als rechtliche Absicherung für den Fall erfunden, dass die Softwarelösung nicht von einem Hardwaresystem mit weniger als den angegebenen Spezifikationen unterstützt werden kann. Wenn Sie die Software also auf einem System mit geringerer Kapazität betreiben, können Sie sich nicht beim Unternehmen beschweren, da dieses Sie zuvor auf die „Mindestanforderungen“ hingewiesen hat.
Wie legen Sie fest, welche Anforderungen gelten sollten?
Wenn Sie Verkäufer normalerweise danach fragen, erhalten Sie möglicherweise die nervige Antwort: „Das kommt darauf an!“. In diesem Beitrag finden Sie jedoch einige wichtige Punkte, die Sie beim Entwerfen einer Lösung untersuchen sollten. Es stimmt, dass Sie mehrere Aspekte analysieren müssen, bevor Sie entscheiden, ob eine Softwarelösung auf einer bestimmten Hardwareplattform läuft. Allerdings sind nicht alle Anforderungen absolut notwendig. Die Funktionen, ohne die das System nicht ordnungsgemäß funktioniert, sind harte Anforderungen. Können Sie den Unterschied bei den Mindestsystemanforderungen erkennen? Die erste impliziert, dass das System Tests durchlaufen hat, um die erforderlichen Fähigkeiten zu ermitteln, ohne dass die Komponenten überdimensioniert wurden. Letzteres führt nicht nur dazu, dass Bauteile unbeabsichtigt überdimensioniert werden, sondern auch die einwandfreie Funktion nicht gewährleistet werden kann.
Sehen wir uns also einige gängige Anforderungskategorien an, die Sie untersuchen sollten, um harte Systemanforderungen zu ermitteln:
- Technische Architekturbeschränkungen: Normalerweise ist dies eine Anforderung, die vom zu entwerfenden System erfüllt werden muss und die von Anfang an speziell in die Lösung einbezogen wird. Wenn Ihre Anwendung beispielsweise mit einer x86-Architektur ausgeführt wird, können Sie diese Anwendung nicht mit einer ARM-Architektur ausführen.
- Implizite Hardwareanforderungen: Oft werden diese Systemanforderungen nicht bewusst ausgewählt, da diese Art von Systemanforderungen von anderen Bibliotheken oder Treibern abhängen, die Sie verwenden. Wenn Sie beispielsweise eine .Net 3.0-Anwendung erstellen, muss Ihr System die Mindestsystemanforderungen für das .Net 3.0-Framework erfüllen.
- Kontextbezogene Hardwareanforderungen: Dies sind die Anforderungen, über die die meisten Benutzer frei sprechen, da sie normalerweise mit der Benutzererfahrung zusammenhängen.Auf diese Weise unterstützen Sie bestimmte Qualitätsattributsszenarien, zum Beispiel: Leistung, Zuverlässigkeit und Verfügbarkeit. Dies sind die Anforderungen, die Sie einbeziehen möchten, um eine positive Benutzererfahrung zu bieten.
- Mindestanforderungen an unterstützte Hardware: Hierbei handelt es sich um die Hardwarespezifikationen, von denen erwartet wird, dass sie ordnungsgemäß mit bestimmter Software funktionieren und dass Ihre Support-Gruppe bereit ist, bei der Fehlerbehebung zu helfen. Im Allgemeinen handelt es sich hierbei um die Hardware, auf die Sie direkten Zugriff haben, entweder über Ihren Entwicklungscomputer oder über ein Testlabor.
Das Erlernen des Unterschieds zwischen harten und minimalen Systemanforderungen ist nur der Anfang bei der Bestimmung der besten Hardware für Ihre Softwarelösung. Die richtige Dimensionierung der Hardware kann Ihnen bei der Bewältigung der derzeit schwierigen Markt- und Wirtschaftsbedingungen helfen, da Sie Geld und Zeit sparen und gleichzeitig leistungsstarke Lösungen anbieten, die nahtlos funktionieren. Wenn Sie mehr darüber erfahren möchten, wie Sie die beste Hardware für Ihre Lösung auswählen, lesen Sie (Embedded System Architecture is the Foundation for Design and Planning. Um weiter über Embedded zu lesen Systeme, besuchen Sie diese Seite.


