Software wird nicht produziert, sondern entwickelt
Software wird oftmals wie ein 'normales' Produkt gesehen und behandelt. Dabei bleiben wichtige Unterschiede unbeachtet und Möglichkeiten ungenutzt.
In den meisten Industrien sind die Produktionskosten eine Schlüsselgröße für die Bestimmung des Preises. Software hingegen kann einfach kopiert werden. Das kostet nichts. Bei Software gibt es daher keine Produktionskosten, sondern vor allem Entwicklungskosten. Software wird nicht produziert, sondern entwickelt.
Anders als bei den meisten Produkten, deren Spezifikationen vor der Produktion detailliert festgelegt werden müssen, braucht Software nicht im Detail vor der Entwicklung festgelegt werden. Damit diese Möglichkeit zur flexiblen Anpassung auch realisiert werden kann, muß sowohl der Code entsprechend leicht veränderbar geschrieben werden, als auch das Projektgestaltung offen für Veränderungen sein.
Ein Produkt, welches immer in Entwicklung ist und meist auch noch unter Termindruck, bekommt leicht Qualitätsprobleme. Softwarefirmen übernehmen normalerweise keinerlei Haftung für Schäden und Kosten, die durch Nutzung ihrer Software entstehen. Oftmals werden daher neue Features und Funktionen allzu leichtfertig hinzugefügt und den Kunden nicht einzuhaltende Versprechungen gemacht.
Zur Qualitätskontrolle ist intensives Testen notwendig. Das erfordert einen hohen Zeitaufwand, vor allem bei kritischen Anwendungen. Beim Testen und Verbessern der Anwendungen können jedoch die Anwender einen großen Teil der Arbeit übernehmen.