SoftwareSoftware [ˈsɒf(t)wɛː] ist ein Sammelbegriff für die Gesamtheit ausführbarer Datenverarbeitungsprogramme und die zugehörigen Daten.[1] Ihre Aufgabe ist es, die Arbeitsweise von softwaregesteuerten Geräten (die einen Teil der Hardware bilden) zu beeinflussen. In diesem Sinne wurde der Begriff erstmals 1958 von John W. Tukey benutzt.[2]
ÜberblickIm allgemeinen Sprachgebrauch und in der Literatur zu Softwaretechnik wird die Definition eingeschränkt auf Computerprogramme und die mit ihnen eng verbundenen Ressourcen, wie z. B. Konfigurationsdaten neben Icons und Schriftarten, die zum Betrieb notwendig sind.[3] Daten, die zur Verarbeitung bestimmt sind (z. B. digitalisierte Musikstücke), werden hier meist nicht als Software verstanden.[4] Diese Definition wird auch als Softwaresystem oder Softwareprodukt angesehen, das als Beiwerk zusätzlich Bestandteile wie z. B. die Softwaredokumentation in der digitalen oder gedruckten Form eines Handbuchs enthalten kann.[5][6] Die allgemeine Definition beschreibt Software als Gegenstück zur Hardware, wobei Software hier jede Art von digitalen Daten umfasst, die auf einer Hardware gespeichert sein können,[7] von der Firmware und (möglichem) BIOS, dem Betriebssystem, den I/O-Daten bis hin zu allen (möglichen) Dateien eines softwaregesteuerten Gerätes. Dieser Definition nach gehören zur Software auch z. B. Musikdaten auf einer CD. Wobei die CD selbst der Datenträger (die Hardware) ist, auf dem die Software gespeichert wurde, die für ein softwaregesteuertes Gerät, den CD-Spieler, bestimmt ist. Juristische DefinitionIn der Rechtsprechung wird zwischen Individualsoftware und Standardsoftware unterschieden: Bei dem Erwerb von Individualsoftware wird ein Werkvertrag bzw. Werklieferungsvertrag abgeschlossen, der Erwerb von Standardsoftware gilt als Sachkauf. Siehe auch: Seriennummer, Spyware, Langzeitarchivierung, Gebraucht-Software Wesen und Eigenschaften von SoftwareSoftware als Gegenstück zur HardwareAus technischer Sicht bezeichnet Software nichtphysische Funktionsbestandteile eines softwaregesteuerten Gerätes. Physische Bestandteile umschließen alles, was sich anfassen lässt (die Geräte selbst, zuzüglich Kabel, etc. – zusammen Hardware genannt). Hardware gibt den physischen Rahmen vor, innerhalb dessen Grenzen eine Software funktioniert: Sie stellt den physischen Träger, auf dem die Software existiert und die weitere physische Umgebung, allein mit Hilfe dessen eine Software ihre Funktion erfüllen kann. Aus physischer Sicht könnte man sagen, dass es so etwas wie Software nicht gibt, da sie keine eigene Substanz besitzt. Was es gibt, das ist der Datenträger, der eine bestimmte Beschaffenheit aufweist. Software ist ein (meist elektronisch veränderbarer) Teil dieser Beschaffenheit. Zur Veranschaulichung der nichtphysischen Gestalt von Software und ihren Einfluss auf die Arbeitsweise solcher Geräte, lässt sich ein Computer vorstellen, auf dem ein alternatives Betriebssystem installiert wird. Dafür muss die Hardware nicht erweitert oder ausgetauscht werden, was bedeutet, dass das Gerät äußerlich unverändert wirkt. Dennoch arbeitet es dank der neuen Software anders, als zuvor. Software ist im Voraus geleistete geistige ArbeitDie Programmautoren erarbeiten z. B. ein Lösungsverfahren für die korrekte Trennung aller deutschen Wörter in einem Textverarbeitungsprogramm. Damit ist im Voraus, also bevor diese Tätigkeit überhaupt anfällt, schon für alle Schreiber, die mit diesem Textverarbeitungsprogramm arbeiten, die geistige Arbeit „korrektes Trennen deutscher Wörter“ geleistet. Dabei kann ein Softwareentwickler mitunter auf „im Voraus“ von Dritten entwickelte Algorithmen zurückgreifen. Weitere Eigenschaften von SoftwareWeitere Eigenschaften von Software sind:
Arten von SoftwareSoftware lässt sich nach verschiedenen Kriterien unterscheiden.
LizenzmodelleDie Verbreitung und Nutzung von Software unterliegt dem Urheberrecht. Es gibt in diesem Zusammenhang mehrere typische Überlassungsmodelle:
Zwischen den oben genannten Hauptformen der Softwareverbreitung gibt es zahlreiche Zwischen- und Mischstufen. Siehe auch: Lizenzen der freien Software, Lizenzmanagement Freie Software und Open Source→ Hauptartikel: Freie Software und Open Source ‚Freie Software’ ist eine soziale Bewegung, die unfreie Software als gesellschaftliches Problem begreift.[8] Wobei „frei“ hier nicht „kostenlos“ bedeutet (‚Freie Software’ ist nicht dasselbe wie ‚Freeware’), sondern die Freiheiten für die Gesellschaft meint, die ein derart lizenziertes (auch kommerzielles) Produkt bietet. In den Augen der von Richard Stallman 1985 gegründeten Free Software Foundation (FSF) ist die Entscheidung für oder gegen Freie Software deshalb primär eine ethische und soziale Entscheidung. Dagegen begreift die 1998 gegründete Open Source Initiative (OSI) quelloffene Software als bloßes Entwicklungsmodell, wobei die Frage, ob Software quelloffen sein sollte, dort eine rein praktische und keine ethische Frage ist. Die FSF wirft der OSI daher eine Ablenkung von den wesentlichen Punkten vor.[9] Eric S. Raymond hat den Begriff ‚Open Source’ in der Annahme eingeführt, dass das unpopuläre Thema ‚Freiheit’ Geldgeber für solche Projekte abschrecken könne. Auch wenn es sich heute um zwei unterschiedliche Bewegungen mit unterschiedlichen Ansichten und Zielen handelt, verbindet sie die gemeinsame Wertschätzung für quelloffenen Code, was in zahlreichen Projekten mündet, in denen sie zusammenarbeiten. Erstellung von Software→ Hauptartikel: Softwaretechnik Die Entwicklung von Software ist ein komplexer Vorgang. Dieser wird durch die Softwaretechnik, einem Teilgebiet der Informatik, systematisiert. Hier wird die Erstellung der Software schrittweise in einem Prozess von der Analyse über die Softwaremodellierung bis hin zum Testen als wiederholbarer Prozess beschrieben. In aller Regel wird die Software nach der Entwicklung mehrfach angepasst und erweitert. Der Software-Lebenszyklus kann durchaus mehrere Jahre betragen. Siehe auchLiteratur
Weblinks
Einzelnachweise
|