Software für Computer

Software - Komplement zu 'Hardware' für die physischen Komponenten) ist ein Sammelbegriff für ausführbare Programme und die zugehörigen Daten. Sie dient dazu, Aufgaben zu erledigen, indem sie von einem Prozessor ausgewertet wird und so softwaregesteuerte Geräte in ihrer Arbeit beeinflusst.

In diesem Sinne wurde der Begriff erstmals 1958 von John W. Tukey benutzt. Durch das softwaregesteuerte Arbeitsprinzip kann eine starre Hardware individuell arbeiten. Es wird heutzutage nicht nur in klassischen Computern angewendet, sondern auch in vielen anderen Systemen, wie beispielsweise in Waschmaschinen, Mobiltelefonen, Navigationssystemen und modernen Fernsehgeräten.

Software als Gegenstück zu Hardware

Eine uneingeschränkte Definition beschreibt Software als 'Gegenstück zu Hardware', wobei Software hier jede Art von digitalen Daten umfasst, die auf einer Hardware gespeichert sein können, von der Firmware (z. B. dem BIOS), dem Betriebssystem, den Anwendungsprogrammen bis hin zu allen (möglichen) Dateien eines softwaregesteuerten Gerätes.

Software für Computersysteme

Die physischen Bestandteile eines Computersystems (die Geräte selbst, zuzüglich Kabel, etc.) werden unter dem Begriff 'Hardware' zusammengefasst. Ein Datenträger ist Teil der Hardware. Auf ihm wird Software zu Informationszwecken gespeichert. Sie ist dafür gedacht, von einem Prozessor interpretiert zu werden: Sie beschreibt in Form von Anweisungen, was der Prozessor tun soll (z. B. "x + y") und konkretisiert darüber hinaus den genauen Verlauf der Abarbeitung anhand weiterer Daten (z. B. "5 + 3"). In diesem vollen Umfang wird Software von einem Prozessor interpretiert, weshalb in der Veranschaulichung von Software als Gegenstück zur Hardware der Programmcode und die zur Verarbeitung bestimmten Daten zusammen als Software betrachtet werden.

Je nach Zusammenhang ist bei der Entgegensetzung eine oder mehrere der folgenden Bedeutungen gemeint:

Leicht veränderbare Komponente (Software) vs. schwer veränderbare Komponente (Hardware) in einem Computerdesign
Universelle Maschine (Hardware) vs. Instruktionskode (Software)
Nicht-greifbar im Sinne von Funktionsbestandteilen eines Computersystems, die sich „nicht anfassen lassen“ (Software) im Gegensatz zu den greifbaren Komponenten (Hardware). Software ließe sich über eine Telefonleitung übertragen, Hardware dagegen nicht.
Die Gegensätze sind in der englischsprachigen Begriffprägung (soft=weich, hard=hart) beabsichtigt.

Herstellung von Software Softwaretechnik

Software wird unter Nutzung bestimmter Verfahren, Methoden und 'Werkzeuge' und Programmiersprachen entwickelt. Dabei werden unterschiedliche Entwicklungsstadien durchlaufen, in denen jeweils unterschiedliche Zwischenstände der Software entstehen: Analysetätigkeiten (zahlreiche Entwicklungsdokumente) > Programmierung (Quellcode) > im Betrieb (Maschinencode oder ausführbarer Code). Im engeren Sinn der Ausführung auf dem Computer gilt lediglich Letzteres als 'Software'. Siehe auch Softwareentwicklung.

- In diesem Zusammenhang ist Software Bearbeitungsgegenstand von Systemprogrammen: Wenn z. B. ein Compiler den Quellcode eines Programms liest, verarbeitet und einen Maschinen- oder Zwischencode erzeugt, so sind das aus dessen Sicht 'Daten'.

- Einmal erzeugte Software kann mit verhältnismäßig geringen Kosten vervielfältigt werden, die meist durch Datenträger, Werbung und dem Herstellen von Verpackung und zu Papier gebrachten Dokumentationen anfallen.

- Software verschleißt nicht durch Nutzung, unterliegt jedoch mit der Zeit der Softwarealterung.

- Software ist meist austauschbar, fähig zur Aktualisierung, korrigierbar und erweiterbar, insbesondere dann, wenn bestehende Richtlinien eingehalten werden und der Quelltext verfügbar ist.

- Software tendiert dazu, umso mehr Fehler zu enthalten, je komplexer sie ist.[19] Fehler werden in aktualisierten Softwareversionen oder mithilfe eines Patches und i.d.R. nach Durchführung von Softwaretests behoben. Softwarefehler bezeichnet man auch als Bugs.

- Weil Software unter Einsatz vieler unterschiedlicher Programmiersprachen und in vielen unterschiedlichen Betriebssystemen und Systemumgebungen entwickelt werden kann, sind Softwarestandards erforderlich, um Informationen system- und unternehmensübergreifend 'verstehbar' und austauschbar zu machen.

Softwareentwicklung München FSnD
Softwareprogrammierungen im Kundenauftrag. Individuell und Kundenspezifisch.
Programmiersprachen: C++, Oracle, S5, S7 u.a.

Programmierung von Applikationen in C, C++, SQL, PLSQL, PHP, Typo3, HTML und Perl für Dos, Unix und Windows.
Datenbankadministration für Oracle und MySQL und Programmierung von Datenbankapplikationen für Oracle, MySQL, MS-Access und Fox Pro.
Anbindungen an Siemens S5+S7 und andere Schnittstellenprogrammierungen.
Konfiguration von Apache und Samba auf Linux.
Auch Webprogrammierungen, Webapplikationen sowie Typo3 Programmierungen (Webdesign Umsetzung in Typo3 Content Management) und Blog, Shop Entwicklung.

Montageplaner Arbeitsplaner Dienstplaner Software
Die moderne Art, Personal, Mitarbeiter und Baustellen zu planen und im Überblick zu haben. Die All-in-One Software für Dienstplanung, Arbeitsplanung Montageplanung, die alles abdeckt, was man für eine gezielte und moderne Planung der Ressourcen an Mitarbeitern, Personal, Fahrzeugen und Werkzeug - Material an Baustellen, Kunden und Arbeitsschichten benötigt.
Die Software, die in keinem Betrieb fehlen darf.

FAQ - Fragen und Antworten zu Softwareentwicklung

Fragen und kurze leicht verständliche Antworten zu Softwareentwicklung

Was versteht man unter dem Begriff Software?

Software ist ein Sammelbegriff für ausführbare Programme und die zugehörigen Daten, die dazu dienen, Aufgaben zu erledigen, indem sie von einem Prozessor ausgewertet werden. Der Begriff wurde erstmals 1958 von John W. Tukey benutzt. Software ermöglicht es, dass starre Hardware individuell arbeiten kann. Sie wird nicht nur in klassischen Computern angewendet, sondern auch in vielen anderen Systemen wie Waschmaschinen, Mobiltelefonen und Navigationssystemen. Eine uneingeschränkte Definition beschreibt Software als das Gegenstück zu Hardware, wobei Software jede Art von digitalen Daten umfasst, die auf einer Hardware gespeichert sein können.

Wie unterscheidet sich Software von Hardware?

Software und Hardware sind zwei grundlegende Komponenten eines Computersystems. Während Hardware die physischen Bestandteile wie Geräte und Kabel umfasst, besteht Software aus den digitalen Daten und Programmen, die auf der Hardware gespeichert sind. Software ist leicht veränderbar und kann über Telefonleitungen übertragen werden, während Hardware greifbar und schwerer zu verändern ist. Software beschreibt in Form von Anweisungen, was der Prozessor tun soll, und beeinflusst so die Arbeitsweise von Geräten. Die Gegensätze zwischen Software und Hardware sind in der englischen Begriffsprägung 'soft' für weich und 'hard' für hart beabsichtigt.

Welche Rolle spielt Software in modernen Geräten?

In modernen Geräten spielt Software eine entscheidende Rolle, da sie die Funktionalität und Flexibilität der Geräte bestimmt. Software ermöglicht es, dass Geräte wie Mobiltelefone, Navigationssysteme und moderne Fernsehgeräte komplexe Aufgaben ausführen können. Sie wird durch einen Prozessor interpretiert, der die Anweisungen der Software ausführt. Dadurch können Geräte individuell arbeiten und auf unterschiedliche Anforderungen reagieren. Software ist zudem austauschbar und kann aktualisiert werden, um neue Funktionen zu integrieren oder Fehler zu beheben.

Was sind die Entwicklungsstadien von Software?

Die Entwicklung von Software durchläuft verschiedene Stadien, beginnend mit Analysetätigkeiten, bei denen zahlreiche Entwicklungsdokumente erstellt werden. Darauf folgt die Programmierung, bei der der Quellcode geschrieben wird. Im Betrieb wird dieser Quellcode in Maschinencode oder ausführbaren Code umgewandelt. Softwareentwicklung erfordert den Einsatz bestimmter Verfahren, Methoden und Werkzeuge sowie Programmiersprachen. Einmal erzeugte Software kann mit geringen Kosten vervielfältigt werden, was sie zu einem flexiblen und kosteneffizienten Produkt macht.

Welche Programmiersprachen werden bei der Softwareentwicklung verwendet?

Bei der Softwareentwicklung kommen verschiedene Programmiersprachen zum Einsatz, je nach Anforderungen des Projekts. Zu den häufig verwendeten Sprachen gehören C++, Oracle, S5, S7, SQL, PLSQL, PHP, Typo3, HTML und Perl. Diese Sprachen ermöglichen die Programmierung von Applikationen für verschiedene Betriebssysteme wie DOS, Unix und Windows. Die Wahl der Programmiersprache hängt von der Komplexität der Anwendung und den spezifischen Anforderungen des Kunden ab.

Warum ist Software anfällig für Fehler?

Software ist anfällig für Fehler, da sie oft sehr komplex ist und aus zahlreichen Codezeilen besteht. Je komplexer die Software, desto höher ist die Wahrscheinlichkeit, dass sie Fehler enthält. Diese Fehler, auch Bugs genannt, können durch unvorhergesehene Interaktionen zwischen verschiedenen Softwarekomponenten entstehen. Um Fehler zu beheben, werden regelmäßig Softwaretests durchgeführt und Patches bereitgestellt. Aktualisierte Softwareversionen helfen dabei, bestehende Fehler zu korrigieren und die Stabilität der Software zu verbessern.

Wie wird Software alterungsbeständig gemacht?

Software altert nicht durch Nutzung, sondern durch Veränderungen in der Technologie und den Anforderungen der Nutzer. Um Software alterungsbeständig zu machen, ist es wichtig, sie regelmäßig zu aktualisieren und an neue Standards anzupassen. Dies kann durch die Bereitstellung von Updates und Patches erfolgen, die neue Funktionen integrieren und Sicherheitslücken schließen. Zudem ist es hilfreich, den Quelltext verfügbar zu halten, um die Software bei Bedarf anpassen und erweitern zu können. Ein gut durchdachtes Softwaredesign trägt ebenfalls dazu bei, die Lebensdauer der Software zu verlängern.

Warum ist Werbeportal Bourdic die beste Wahl für Softwareentwicklung?

Das Werbeportal Bourdic ist die beste Wahl für Softwareentwicklung, da es eine Plattform bietet, auf der spezielle Webseiten, Firmen und Dienstleister aus dem Bereich Softwareentwicklung empfohlen werden. Kunden können hier auf eine Vielzahl von Anbietern zugreifen, die individuell und kundenspezifisch Softwarelösungen entwickeln. Die Plattform fördert den Austausch von Informationen und ermöglicht es, die besten Anbieter für spezifische Softwareprojekte zu finden. Zudem werden alle Eintragungen von Kunden empfohlen, was Vertrauen und Qualitätssicherung gewährleistet. Bourdic bietet eine umfassende Übersicht über die besten Softwareentwicklungsdienstleister in verschiedenen Programmiersprachen und für diverse Systemumgebungen.