Zum Inhalt springen

Nounou und Individualsoftware: Unterschied zwischen den Seiten

aus Wikipedia, der freien Enzyklopädie
(Unterschied zwischen Seiten)
Inhalt gelöscht Inhalt hinzugefügt
Keine Bearbeitungszusammenfassung
 
K Änderungen von 94.216.36.182 (Diskussion) auf die letzte Version von Ute Erb zurückgesetzt
 
Zeile 1: Zeile 1:
'''Individualsoftware''' (auch ''Individuallösung'') ist ein Begriff der [[Informationstechnik]], welcher eine für einen Kunden individuell angefertigte [[Anwendungssoftware]] bezeichnet. Sie zeichnet sich dadurch aus, dass sie gemäß den Anforderungen eines ''einzelnen'' Kunden maßgeschneidert erstellt wird, im Gegensatz zu [[Standardsoftware]], die für eine große Menge (potenzieller) Kunden entwickelt wird.
{{QS-Antrag|19. Januar 2013|2=Vollprogramm}}


Typische Kunden von Individualsoftware sind Einrichtungen, die einzigartige Anforderungen an ihre Software haben, für die keine exakt passende marktgängige Softwareprodukte verfügbar sind.
'''Nounou''' (griech. ΝΟΥΝΟΥ) ist ein von [[FrieslandCampina]] produziertes Milchprodukt aus den Niederlanden, das ausschließlich in Griechenland angeboten wird. Das Produkt besteht in wesentlichem aus einem flüssigen Konzentrat aus haltbarer Milch und enthält auch Zucker. Angeboten wird es seit 1929 und ist ein fester Bestandteil vieler Gerichte der [[Griechische Küche|griechischen Küche]] und wird darüber hinaus auch als Brotaufstrich verzehrt.


== Gründe für die Entscheidung für eine Individuallösung ==
Der Name geht auf ein urprünglich für den französischprachigen Markt konzipierten Produkt mit dem Namen ''La Nounou'' zurück, das die griechischen Streitkräfte bis in die 1920er Jahren von [[Friesland Foods|Friesland]] bezogen. Verkauft wird das Produkt in einer Dose mit Papiermanschette, die "kleine Holländerin" ist seit 1929 unverändert und ein Charakteristikum, seit 1936 ist die Farbe des Logos blau. In der Werbung wurde und wird stets mit der holländischen Herkunft des Produkt geworben. [[Nestle]] zog mit dem Produkt "Gala Vlachas" nach, es ist aber bei weitem nicht so beliebt wie das Original ist. In den 1980er Jahren wurde auch eine Light-Variante auf den Markt gebracht.
Wenn sich ein Unternehmen für die Erstellung einer Individualsoftware entscheidet, kann dies unterschiedliche, einander nicht ausschließende Gründe haben:
* Es gibt keine bekannte, geeignete Standardsoftware.
* Es gibt eine geeignete Standardsoftware, die Entwicklung einer Individualsoftware wird jedoch monetär günstiger bewertet.
* Man möchte eine vollkommene Kontrolle über die künftige Entwicklung der Software und Beherrschung des [[Quellcode|Quellcodes]] garantieren
* Die Software soll dem einsetzenden Unternehmen gegenüber anderen Mitbewerbern einen Wettbewerbsvorteil verschaffen.
* Man möchte „das Rad neu erfinden“, weil die angestrebte Lösung noch besser werden soll, als diese von vorhandenen Produkten bereits angeboten werden.


Die Entwicklung von Individualsoftware hat häufig den Charakter eines Forschungsprojektes. Denn nicht nur die Zielvorgaben sind in der Regel (mangels Kenntnis der Softwaretechnologie, des technisch Machbaren oder wegen nicht genügend tief durchdachter Thematik) unscharf. Die Lösung ist oft auch für den Entwickler ein zumindest teilweise unbekanntes Terrain. Häufig herrscht beim Auftraggeber der Gedanke vor: „Wenn ich mich schon in so ein Projekt stürze, dann soll es auch alle meine Wünsche erfüllen.“ Dies wird später aus Kostengründen häufig relativiert.
Unter dem Namen Nounou Family werden weitere Milchprodukte angeboten, aufgrund der Beliebtheit des Produkt lautet auch die Webpräenz von FrieslandCampina Hellas ''nounou.gr''.


== Markt und Anbieter ==
==Weblink==
Die Erstellung und Pflege von Individualsoftware durch Dritte wird [[Outsourcing]] genannt. Sie ist das Hauptgeschäft vieler Softwareunternehmen.
Im Zuge des Outsourcings werden oft nicht nur die Erstellung und Pflege von Individuallösungen, sondern auch der Betrieb und andere IT-Dienstleistungen in Form von langfristigen Großaufträgen komplett an externe IT-Unternehmen ausgelagert.


Aus Kostengründen verlagern viele Unternehmen die Programmierung der Individuallösungen zu Niederlassungen oder Unterauftragnehmern in Billiglohnländer ([[Offshoring]]). Die daraus resultierende Know-How-Verlagerung hat wiederum zur Folge, dass indische und osteuropäische Unternehmen verstärkt selbst auf den westlichen Märkten auftreten, was weitere Kostensenkungen verspricht. Einheimische Softwareunternehmen geraten deshalb unter einen massiven Konkurrenzdruck und müssen zunehmend auf modernste, kostensenkende Technologien setzen.
* [http://www.nounou.gr/ebook/index.html Geschichte der Marke als Ebook]


Dennoch sind IT-Projekte für Individuallösungen immer noch ein Milliardengeschäft und einer der Gründe für die große Vielfalt an Softwaretechnologien.
[[Kategorie:Milchprodukt]]

[[Kategorie:Griechische Küche]]
== Vorgehensweise und eingesetzte Technologien ==
Sehr unterschiedliche Auffassungen gibt es hinsichtlich der Frage, wie Individuallösungen zu erstellen sind. Oft wird selbstverständlich davon ausgegangen, dass Individualsoftware basierend auf geeigneten [[Vorgehensmodell]]en, auf dem aktuellen Stand der Technik (beispielsweise [[JEE]] oder [[.Net]]) und für die entsprechende Anforderung geeignet qualitätsgesichert umgesetzt wird.

Solange diese Annahmen aber nicht durch entsprechende Verträge und Pflichtenhefte gesichert sind, hat der Auftraggeber nur beschränkten Einfluss auf das entsprechende Ergebnis der Individualsoftwareentwicklung.

=== Lasten- und Pflichtenheft ===
In der Regel gibt es einen konkreten Anwendungsfall, und es werden, oft in einem sogenannten [[Lastenheft]], Anforderungen festgelegt, die in der Lösung realisiert werden müssen. Lastenhefte umfassen idealerweise nicht nur die fachlichen Anforderungen an die Individualsoftware, sondern auch die technischen und nicht-funktionalen wie [[Fehlerrate]], [[Mengengerüst]], [[Leistung (Informatik)|Performance]], [[Skalierbarkeit]] und [[Wartbarkeit]]. Lastenhefte werden üblicherweise vom Auftraggeber vor Vergabe und als Basis für den Auftrag erstellt.

Auf diesen Lastenheften aufbauend, werden vor oder während der Umsetzung der Anforderungen sogenannte [[Pflichtenheft]]e erstellt. Dies passiert – obwohl sie noch großen Einfluss auf die Aufwände bei der Umsetzung haben – oft in gemeinsamer Arbeit zwischen Auftraggeber und Auftragnehmer. Dabei kommt es idealerweise zu einer Fusion des Gewünschten und des realistischerweise Machbaren. Nach der Erstellung des Pflichtenheftes werden zumeist die Abweichungen vom ursprünglich beauftragten Lastenheft geschätzt und fließen entsprechend in den Umsetzungsplan und die monetären Aufwände ein.

=== Ziel-Modifikation ===
Allerdings steht häufig zu Beginn eines Softwareprojektes noch gar nicht fest, was am Ende alles enthalten sein wird. Vieles ergibt sich erst in der Entwicklungsphase, da sich sowohl dem Entwickler als auch dem Auftraggeber erst durch die andauernde Arbeit an und mit dem Projekt neue interessante Standpunkte eröffnen. Dies dient in der Regel dem Gesamtergebnis und sollte von vornherein eingeplant werden, beispielsweise durch eine etappenweise Neuformulierung von Teilen des Pflichtenheftes, durch entsprechende Neukalkulierung des Preises (falls nicht ohnehin nach Aufwand abgerechnet wird) und durch Anpassung des Zeitplans und der verwendeten Mittel (Systemumgebung und Werkzeuge).

=== Einführung ===
→ ''Hauptartikel: [[Softwareeinführung]]''

Die Einführung von Individualsoftware kann ähnlich wie das Customizing und Einführen von Standardsoftware erfolgen – entweder sukzessive, eine Fachlichkeit nach der anderen, oder alles auf einmal. Den ersten Ansatz nennt man iterative Einführung, den zweiten Big-Bang-Einsatz. Beide haben eine Reihe von Vor- und Nachteilen.

== Kosten ==
Es sind verhältnismäßig hohe Kosten für Entwicklung, Pflege und Wartung einzukalkulieren, wenn man den Erwerb von Individualsoftware mit dem Erwerb einer Standardsoftware vergleicht.

Die Entwicklungskosten bei Individualsoftware können enorm hoch sein. Denn abgesehen von den unten aufgezählten Ersparnissen, entsteht im Großen und Ganzen bei einer Individualsoftware ein vergleichbarer Entwicklungsaufwand wie bei einer Standardsoftware, mit dem Unterschied, dass diese Kosten hierbei nicht auf Hunderte, Tausende oder Millionen von Nutzern umgelegt werden, sondern häufig nur von einem einzelnen Auftraggeber aufzubringen sind. Denn diese Kosten werden nicht auf viele Anwender verteilt, sondern sind alle vom Entwickler bzw. Auftraggeber zu tragen.

=== Kostensenkende Faktoren ===
Es gibt einige Kostenfaktoren, die bei der Entwicklung von Individualsoftware nicht oder nur in geringerem Maße anfallen:

*Es gibt eine sehr geringe oder zumindest besser überschaubare Anzahl von Benutzern sowie Anzahl von Arbeitsplätzen, an denen die Software installiert ist, als bei [[Standardsoftware]].
:*Daher sind die Kosten für Hilfs- und Unterstützungsleistungen („[[Support (Dienstleistung)|Support]]“) gegenüber der Vielzahl von Benutzern bei [[Standardsoftware]] bei der Individualsoftware geringer. Oft sind die Benutzer und die Person, die die Unterstützung bietet, bei Individualsoftware räumlich besser verbunden.
:*Die Kosten für Dokumentation sind geringer, wenn man davon ausgehen kann, dass die Benutzer in den Entwicklungsprozess in der Regel eingebunden sind und das Programm so schon kennen oder sogar selbst auf die Gestaltung der Oberfläche Einfluss genommen haben.
*Es ist nicht ein so hoher Standardisierungsgrad zu erreichen. Das heißt, dass bei der Software nicht mit einer so hohen Vielzahl von Anwendungsfällen gerecht werden muss. Sie muss auch nicht einer so hohen Anzahl von [[Hardware]]-Umgebungen gerecht werden.
*Die Fehlerbehebung verläuft einfacher, da in der Regel einfach nur an einem Ort eine neue Version eingespielt werden muss. Bei der Standardsoftware sind die Kosten zur Verteilung von neuen Programmversionen, die verteilt werden müssen, da sie Fehler beheben, erheblich.
*Auf eine Installationssoftware kann oft verzichtet werden. Bei Standardsoftware ist ein Mechanismus, in der Regel ein Installationsprogramm, Bestandteil des Vertriebsapparates, das die fehlerfreie und automatische Installation auf den Zielsystemen durch in der Regel Laien ermöglicht. Dieser Mechanismus muss mit einer Vielzahl von unbekannten Zuständen auf den Zielsystemen zurechtkommen, und es muss außerdem ein sauberer Deinstallations-Mechanismus zur Verfügung gestellt werden, um die Software wieder zu entfernen. Dies kann erhebliche Kosten verursachen und ist auch in Test, Fehlersuche und Support sehr umfangreich.
*Die Kosten für Werbung und Verteilung entfallen in der Regel.
*Falls eine Software auf mehreren Rechnern eingesetzt werden soll, entstehen bei Standardsoftware höhere Lizenzkosten, da entsprechend viele Lizenzen gekauft werden müssen. Eine Individualprogrammierung kann hier durchaus günstiger sein, da die Entwicklung nur einmal bezahlt werden muss.
*Durch die Abrechnung nach Aufwand können in Individualprojekten ebenfalls Kosten gespart werden, wenn Auftraggeber und Auftragnehmer partnerschaftlich, professionell und offen miteinander arbeiten.<ref>Siehe auch ''[http://www.kalyxo.de/2005/10/seibertmedia/vorteile-der-abrechnung-nach-aufwand-fur-partner/ Vorteile der Abrechnung nach Aufwand].''</ref>

=== Kostenerhöhende Faktoren ===
Andererseits wird in der Praxis der Kostenaufwand häufig enorm unterschätzt. Dies mag darin begründet sein, dass die Anwender oder Auftraggeber aus den geringen Kosten für den Erwerb einer Standardsoftware irrtümlich auf die Kosten einer Individualsoftware schließen.

Weitere Faktoren für hohe Kosten bei Individualsoftware (die meisten dieser Punkte können bei der Standardsoftware auch auftreten, jedoch zeigt die Erfahrung, dass sie sich hier mit der Zeit selbst aus dem Projekt eliminieren):
* Die (im Vergleich zu [[Standardsoftware]]) häufig kurze Entwicklungszeit und damit verbundener „zeitlicher Erfolgsdruck“ führen zu allerlei Fehlentscheidungen oder voreiligen Entscheidungen oder Entwicklungsabläufen. Oft wird nicht genug Zeit genommen, um die am Markt verfügbaren Entwicklungsumgebungen, Bausteine oder Teillösungen in Betracht zu ziehen.
* Der Auftraggeber möchte, da er beispielsweise auch Teilzahlungen geleistet hat, vorzeitig Teilergebnisse sehen. Häufig sind jedoch in der Softwareentwicklung über lange Zeiträume keine sichtbaren Erfolge vorweisbar, jedenfalls nicht gegenüber dem Auftraggeber, wenn dieser ein softwaretechnischer Laie ist. Daher werden oft vorzeitig gewisse wichtige Entwicklungsschritte vernachlässigt, um schnell zu vorzeigbaren Ergebnissen zu kommen. Dies rächt sich später durch hohen Zeitaufwand, der nötig ist, um dadurch entstandene Fehler wieder auszubügeln. Ein Großteil des Entwicklungsaufwandes besteht in Planungen, in vorbereitender Entwicklung, der Entwicklung von Modulen oder Teilprogrammen, der Vorbereitung von Umgebungen, dem Test und der Anpassung von Teilsystemen, der Dokumentation der Quelltexte und der Systementwicklung und dergleichen.
* Die Wahl von falschen oder unangemessenen Entwicklungswerkzeugen oder Umgebungen.
* Der Auftraggeber greift durch nicht sachgerechte Weisungen in den Entwicklungsprozess ein, die zu Kostenerhöhungen führen, oder er hat gewisse sachfremde Vorgaben (z.&nbsp;B. Aufsetzen auf nicht mehr zeitgemäße vorhandene Software oder Hardware, Zusammenarbeit mit von ihm vorgeschlagenen Mitarbeitern oder Firmen oder Systemen).
* Beauftragung oder Einbeziehung von nicht qualifizierten Firmen oder Personen durch die Entwickler.
* Der Auftraggeber entscheidet sich während des Entwicklungsprozesses um, was Umfang und Art der Aufgabenstellung betrifft
* Die Entwickler entscheiden sich während des Entwicklungsprozesses um, was die Art der eingesetzten Entwicklungssysteme und Werkzeuge betrifft.
* Fehlender Konkurrenzdruck. Auf dem Markt für [[Standardsoftware]] besteht dadurch ein gewisser Konkurrenzdruck, dass sich das Endprodukt mit ähnlichen am Markt befindlichen Produkten messen muss.

== Siehe auch ==
*[[Standardsoftware]]
*[[Branchensoftware]]

== Einzelnachweise ==
<references/>

[[Kategorie:Softwaretechnik]]

[[ar:البرنامج المخصوص]]
[[en:Custom software]]
[[fr:Logiciel spécifique]]

Version vom 10. März 2013, 18:11 Uhr

Individualsoftware (auch Individuallösung) ist ein Begriff der Informationstechnik, welcher eine für einen Kunden individuell angefertigte Anwendungssoftware bezeichnet. Sie zeichnet sich dadurch aus, dass sie gemäß den Anforderungen eines einzelnen Kunden maßgeschneidert erstellt wird, im Gegensatz zu Standardsoftware, die für eine große Menge (potenzieller) Kunden entwickelt wird.

Typische Kunden von Individualsoftware sind Einrichtungen, die einzigartige Anforderungen an ihre Software haben, für die keine exakt passende marktgängige Softwareprodukte verfügbar sind.

Gründe für die Entscheidung für eine Individuallösung

Wenn sich ein Unternehmen für die Erstellung einer Individualsoftware entscheidet, kann dies unterschiedliche, einander nicht ausschließende Gründe haben:

  • Es gibt keine bekannte, geeignete Standardsoftware.
  • Es gibt eine geeignete Standardsoftware, die Entwicklung einer Individualsoftware wird jedoch monetär günstiger bewertet.
  • Man möchte eine vollkommene Kontrolle über die künftige Entwicklung der Software und Beherrschung des Quellcodes garantieren
  • Die Software soll dem einsetzenden Unternehmen gegenüber anderen Mitbewerbern einen Wettbewerbsvorteil verschaffen.
  • Man möchte „das Rad neu erfinden“, weil die angestrebte Lösung noch besser werden soll, als diese von vorhandenen Produkten bereits angeboten werden.

Die Entwicklung von Individualsoftware hat häufig den Charakter eines Forschungsprojektes. Denn nicht nur die Zielvorgaben sind in der Regel (mangels Kenntnis der Softwaretechnologie, des technisch Machbaren oder wegen nicht genügend tief durchdachter Thematik) unscharf. Die Lösung ist oft auch für den Entwickler ein zumindest teilweise unbekanntes Terrain. Häufig herrscht beim Auftraggeber der Gedanke vor: „Wenn ich mich schon in so ein Projekt stürze, dann soll es auch alle meine Wünsche erfüllen.“ Dies wird später aus Kostengründen häufig relativiert.

Markt und Anbieter

Die Erstellung und Pflege von Individualsoftware durch Dritte wird Outsourcing genannt. Sie ist das Hauptgeschäft vieler Softwareunternehmen. Im Zuge des Outsourcings werden oft nicht nur die Erstellung und Pflege von Individuallösungen, sondern auch der Betrieb und andere IT-Dienstleistungen in Form von langfristigen Großaufträgen komplett an externe IT-Unternehmen ausgelagert.

Aus Kostengründen verlagern viele Unternehmen die Programmierung der Individuallösungen zu Niederlassungen oder Unterauftragnehmern in Billiglohnländer (Offshoring). Die daraus resultierende Know-How-Verlagerung hat wiederum zur Folge, dass indische und osteuropäische Unternehmen verstärkt selbst auf den westlichen Märkten auftreten, was weitere Kostensenkungen verspricht. Einheimische Softwareunternehmen geraten deshalb unter einen massiven Konkurrenzdruck und müssen zunehmend auf modernste, kostensenkende Technologien setzen.

Dennoch sind IT-Projekte für Individuallösungen immer noch ein Milliardengeschäft und einer der Gründe für die große Vielfalt an Softwaretechnologien.

Vorgehensweise und eingesetzte Technologien

Sehr unterschiedliche Auffassungen gibt es hinsichtlich der Frage, wie Individuallösungen zu erstellen sind. Oft wird selbstverständlich davon ausgegangen, dass Individualsoftware basierend auf geeigneten Vorgehensmodellen, auf dem aktuellen Stand der Technik (beispielsweise JEE oder .Net) und für die entsprechende Anforderung geeignet qualitätsgesichert umgesetzt wird.

Solange diese Annahmen aber nicht durch entsprechende Verträge und Pflichtenhefte gesichert sind, hat der Auftraggeber nur beschränkten Einfluss auf das entsprechende Ergebnis der Individualsoftwareentwicklung.

Lasten- und Pflichtenheft

In der Regel gibt es einen konkreten Anwendungsfall, und es werden, oft in einem sogenannten Lastenheft, Anforderungen festgelegt, die in der Lösung realisiert werden müssen. Lastenhefte umfassen idealerweise nicht nur die fachlichen Anforderungen an die Individualsoftware, sondern auch die technischen und nicht-funktionalen wie Fehlerrate, Mengengerüst, Performance, Skalierbarkeit und Wartbarkeit. Lastenhefte werden üblicherweise vom Auftraggeber vor Vergabe und als Basis für den Auftrag erstellt.

Auf diesen Lastenheften aufbauend, werden vor oder während der Umsetzung der Anforderungen sogenannte Pflichtenhefte erstellt. Dies passiert – obwohl sie noch großen Einfluss auf die Aufwände bei der Umsetzung haben – oft in gemeinsamer Arbeit zwischen Auftraggeber und Auftragnehmer. Dabei kommt es idealerweise zu einer Fusion des Gewünschten und des realistischerweise Machbaren. Nach der Erstellung des Pflichtenheftes werden zumeist die Abweichungen vom ursprünglich beauftragten Lastenheft geschätzt und fließen entsprechend in den Umsetzungsplan und die monetären Aufwände ein.

Ziel-Modifikation

Allerdings steht häufig zu Beginn eines Softwareprojektes noch gar nicht fest, was am Ende alles enthalten sein wird. Vieles ergibt sich erst in der Entwicklungsphase, da sich sowohl dem Entwickler als auch dem Auftraggeber erst durch die andauernde Arbeit an und mit dem Projekt neue interessante Standpunkte eröffnen. Dies dient in der Regel dem Gesamtergebnis und sollte von vornherein eingeplant werden, beispielsweise durch eine etappenweise Neuformulierung von Teilen des Pflichtenheftes, durch entsprechende Neukalkulierung des Preises (falls nicht ohnehin nach Aufwand abgerechnet wird) und durch Anpassung des Zeitplans und der verwendeten Mittel (Systemumgebung und Werkzeuge).

Einführung

Hauptartikel: Softwareeinführung

Die Einführung von Individualsoftware kann ähnlich wie das Customizing und Einführen von Standardsoftware erfolgen – entweder sukzessive, eine Fachlichkeit nach der anderen, oder alles auf einmal. Den ersten Ansatz nennt man iterative Einführung, den zweiten Big-Bang-Einsatz. Beide haben eine Reihe von Vor- und Nachteilen.

Kosten

Es sind verhältnismäßig hohe Kosten für Entwicklung, Pflege und Wartung einzukalkulieren, wenn man den Erwerb von Individualsoftware mit dem Erwerb einer Standardsoftware vergleicht.

Die Entwicklungskosten bei Individualsoftware können enorm hoch sein. Denn abgesehen von den unten aufgezählten Ersparnissen, entsteht im Großen und Ganzen bei einer Individualsoftware ein vergleichbarer Entwicklungsaufwand wie bei einer Standardsoftware, mit dem Unterschied, dass diese Kosten hierbei nicht auf Hunderte, Tausende oder Millionen von Nutzern umgelegt werden, sondern häufig nur von einem einzelnen Auftraggeber aufzubringen sind. Denn diese Kosten werden nicht auf viele Anwender verteilt, sondern sind alle vom Entwickler bzw. Auftraggeber zu tragen.

Kostensenkende Faktoren

Es gibt einige Kostenfaktoren, die bei der Entwicklung von Individualsoftware nicht oder nur in geringerem Maße anfallen:

  • Es gibt eine sehr geringe oder zumindest besser überschaubare Anzahl von Benutzern sowie Anzahl von Arbeitsplätzen, an denen die Software installiert ist, als bei Standardsoftware.
  • Daher sind die Kosten für Hilfs- und Unterstützungsleistungen („Support“) gegenüber der Vielzahl von Benutzern bei Standardsoftware bei der Individualsoftware geringer. Oft sind die Benutzer und die Person, die die Unterstützung bietet, bei Individualsoftware räumlich besser verbunden.
  • Die Kosten für Dokumentation sind geringer, wenn man davon ausgehen kann, dass die Benutzer in den Entwicklungsprozess in der Regel eingebunden sind und das Programm so schon kennen oder sogar selbst auf die Gestaltung der Oberfläche Einfluss genommen haben.
  • Es ist nicht ein so hoher Standardisierungsgrad zu erreichen. Das heißt, dass bei der Software nicht mit einer so hohen Vielzahl von Anwendungsfällen gerecht werden muss. Sie muss auch nicht einer so hohen Anzahl von Hardware-Umgebungen gerecht werden.
  • Die Fehlerbehebung verläuft einfacher, da in der Regel einfach nur an einem Ort eine neue Version eingespielt werden muss. Bei der Standardsoftware sind die Kosten zur Verteilung von neuen Programmversionen, die verteilt werden müssen, da sie Fehler beheben, erheblich.
  • Auf eine Installationssoftware kann oft verzichtet werden. Bei Standardsoftware ist ein Mechanismus, in der Regel ein Installationsprogramm, Bestandteil des Vertriebsapparates, das die fehlerfreie und automatische Installation auf den Zielsystemen durch in der Regel Laien ermöglicht. Dieser Mechanismus muss mit einer Vielzahl von unbekannten Zuständen auf den Zielsystemen zurechtkommen, und es muss außerdem ein sauberer Deinstallations-Mechanismus zur Verfügung gestellt werden, um die Software wieder zu entfernen. Dies kann erhebliche Kosten verursachen und ist auch in Test, Fehlersuche und Support sehr umfangreich.
  • Die Kosten für Werbung und Verteilung entfallen in der Regel.
  • Falls eine Software auf mehreren Rechnern eingesetzt werden soll, entstehen bei Standardsoftware höhere Lizenzkosten, da entsprechend viele Lizenzen gekauft werden müssen. Eine Individualprogrammierung kann hier durchaus günstiger sein, da die Entwicklung nur einmal bezahlt werden muss.
  • Durch die Abrechnung nach Aufwand können in Individualprojekten ebenfalls Kosten gespart werden, wenn Auftraggeber und Auftragnehmer partnerschaftlich, professionell und offen miteinander arbeiten.[1]

Kostenerhöhende Faktoren

Andererseits wird in der Praxis der Kostenaufwand häufig enorm unterschätzt. Dies mag darin begründet sein, dass die Anwender oder Auftraggeber aus den geringen Kosten für den Erwerb einer Standardsoftware irrtümlich auf die Kosten einer Individualsoftware schließen.

Weitere Faktoren für hohe Kosten bei Individualsoftware (die meisten dieser Punkte können bei der Standardsoftware auch auftreten, jedoch zeigt die Erfahrung, dass sie sich hier mit der Zeit selbst aus dem Projekt eliminieren):

  • Die (im Vergleich zu Standardsoftware) häufig kurze Entwicklungszeit und damit verbundener „zeitlicher Erfolgsdruck“ führen zu allerlei Fehlentscheidungen oder voreiligen Entscheidungen oder Entwicklungsabläufen. Oft wird nicht genug Zeit genommen, um die am Markt verfügbaren Entwicklungsumgebungen, Bausteine oder Teillösungen in Betracht zu ziehen.
  • Der Auftraggeber möchte, da er beispielsweise auch Teilzahlungen geleistet hat, vorzeitig Teilergebnisse sehen. Häufig sind jedoch in der Softwareentwicklung über lange Zeiträume keine sichtbaren Erfolge vorweisbar, jedenfalls nicht gegenüber dem Auftraggeber, wenn dieser ein softwaretechnischer Laie ist. Daher werden oft vorzeitig gewisse wichtige Entwicklungsschritte vernachlässigt, um schnell zu vorzeigbaren Ergebnissen zu kommen. Dies rächt sich später durch hohen Zeitaufwand, der nötig ist, um dadurch entstandene Fehler wieder auszubügeln. Ein Großteil des Entwicklungsaufwandes besteht in Planungen, in vorbereitender Entwicklung, der Entwicklung von Modulen oder Teilprogrammen, der Vorbereitung von Umgebungen, dem Test und der Anpassung von Teilsystemen, der Dokumentation der Quelltexte und der Systementwicklung und dergleichen.
  • Die Wahl von falschen oder unangemessenen Entwicklungswerkzeugen oder Umgebungen.
  • Der Auftraggeber greift durch nicht sachgerechte Weisungen in den Entwicklungsprozess ein, die zu Kostenerhöhungen führen, oder er hat gewisse sachfremde Vorgaben (z. B. Aufsetzen auf nicht mehr zeitgemäße vorhandene Software oder Hardware, Zusammenarbeit mit von ihm vorgeschlagenen Mitarbeitern oder Firmen oder Systemen).
  • Beauftragung oder Einbeziehung von nicht qualifizierten Firmen oder Personen durch die Entwickler.
  • Der Auftraggeber entscheidet sich während des Entwicklungsprozesses um, was Umfang und Art der Aufgabenstellung betrifft
  • Die Entwickler entscheiden sich während des Entwicklungsprozesses um, was die Art der eingesetzten Entwicklungssysteme und Werkzeuge betrifft.
  • Fehlender Konkurrenzdruck. Auf dem Markt für Standardsoftware besteht dadurch ein gewisser Konkurrenzdruck, dass sich das Endprodukt mit ähnlichen am Markt befindlichen Produkten messen muss.

Siehe auch

Einzelnachweise

  1. Siehe auch Vorteile der Abrechnung nach Aufwand.