www.wikidata.de-de.nina.az
Dieser Artikel oder Abschnitt bedarf einer grundsatzlichen Uberarbeitung Naheres sollte auf der Diskussionsseite angegeben sein Bitte hilf mit ihn zu verbessern und entferne anschliessend diese Markierung Software Evolution ist ein Begriff aus der Softwaretechnik im Speziellen aus der Softwarewartung und beschreibt den Prozess der folgt nachdem ein Softwaresystem entwickelt und ausgeliefert wurde Nach Auslieferung und Benutzung kommen neue Anforderungen dazu und alte Anforderungen verandern sich Teile des Softwaresystems mussen moglicherweise korrigiert werden da Fehler auftreten die zuvor nicht bemerkt wurden Das System muss an eine neue Plattform adaptiert werden Die Performance muss verbessert werden und andere nichtfunktionale Anforderungen mussen uberpruft werden Lehmans Gesetze BearbeitenSoftware Evolution ist ein stetiger Prozess der sich uber den gesamten Lebenszyklus einer Software hinzieht Aufgrund von Beobachtungen bei grossen Softwaresystemen haben die damaligen IBM Mitarbeiter Meir M Lehman und Laszlo Belady folgende Gesetzmassigkeiten zusammengestellt 1 Zusammengefasst die Wichtigsten Anhaltender Wandel Ein System das verwendet wird unterliegt kontinuierlichen Veranderungen oder verliert an Effektivitat Zunehmende Komplexitat Ein Softwaresystem das standig geandert wird verliert zusehends an Struktur Die Anderungen erhohen die Entropie und Komplexitat des Programms Alle acht Gesetze in ihrer ursprunglichen Form Anhaltender Wandel Softwaresysteme mussen kontinuierlich angepasst werden oder sie werden immer weniger zufriedenstellend Zunehmende Komplexitat Die Komplexitat von sich entwickelnden Softwaresystemen erhoht sich exponentiell zur Lebensdauer zumindest solange sie nicht gewartet oder reduziert wird Selbstregulation Software Evolution ist ein sich selbst regulierender Prozess mit einer nahezu Normalverteilung von Produkt und Prozess Massnahmen Erhaltung der organisatorischen Stabilitat unveranderlicher Arbeitsrhythmus Die durchschnittliche effektive globale Effektivitatsquote in einem sich entwickelnden Softwaresystem ist invariant uber die Produkt Lebensdauer Erhaltung der Vertrautheit Um eine zufriedenstellende Entwicklung eines sich weiterentwickelnden Softwaresystems gewahrleisten zu konnen mussen alle die mit einem System arbeiten z B Entwickler Verkaufspersonal Benutzer dafur Sorge tragen dass sie die Inhalte und Verhaltensweisen im Blick behalten und das Verhalten des Systems genau kennen Durch Verringerung von ubermassigem Wachstum lasst sich die Kontrolle leichter behalten Daher sollte das durchschnittliche zusatzliche Wachstum eines Systems invariant bleiben da sich das System stetig weiterentwickelt Anhaltendes Wachstum Die funktionalen Inhalte eines Softwaresystems mussen standig erhoht werden um die Zufriedenheit der Nutzer wahrend ihrer gesamten Nutzungsdauer zu erhalten Sinkende Qualitat Die Qualitat von Softwaresystemen scheint rucklaufig zu sein es sei denn sie werden konsequent gewartet und an betriebliche Veranderungen angepasst Feedback System Software Evolutions Prozesse stellen Multi Level Multi Schleifen und Multi Agenten Feedback Systeme dar und mussen als solche behandelt werden um eine signifikante Verbesserung uber eine vernunftige Basis zu erreichen Literatur BearbeitenHarry M Sneed Richard Seidl Softwareevolution 1 Auflage dpunkt verlag Heidelberg 2013 ISBN 978 3 86490 041 9 S 284 Tom Mens Serge Demeyer Software Evolution 1 Auflage Springer Verlag Berlin Heidelberg 2008 ISBN 978 3 540 76439 7 S 347 englisch Ian Sommerville Software Engineering 1 Auflage Band 8 Addison Wesley 2006 ISBN 0 321 31379 8 S 864 Einzelnachweise Bearbeiten Meir Lehman Metrics and laws of software evolution the nineties view PDF 115 kB Metrics 97 IEEE 1997 Abgerufen von https de wikipedia org w index php title Software Evolution amp oldid 238790212