... Projekt und im zweiten Schritt die zu verwendende Profiling Methode wählen. In den „Session-Properties“ lassen sich nachträglich eine Vielzahl von Parametern ändern, um das Profiling noch feiner an die Bedürfnisse anzupassen.
Der Start des Profiling-Laufs führt die zu untersuchende Applikation aus und erzeugt einen äußerst ausführlichen Report (Abb. 6), in dem die Laufzeiten der einzelnen Methoden, deren Callgraph, der Speicherbedarf von Objekten und deren Lebenszeit aufgelistet werden.
Mit diesen Informationen lassen sich schnell die Stellen finden, die es wert sind optimiert zu werden, um eine markante Laufzeitverbesserung zu erreichen. Die Analyse des Speicherverbrauchs und der Lebensdauer der Objekte kann zudem Stellen aufdecken, die für einen hohen Speicherverbrauch verantwortlich sind oder unnötigerweise noch Referenzen auf Objekte halten, die eigentlich dem Garbage Collector zugeführt werden sollten. Insgesamt stellt die Performance-Analyse ein mächtiges Tool zur Überprüfung nichtfunktionaler Anforderungen dar, welches sich durch den komplexen Auswertungsaufwand der Ergebnisse nur schwer automatisieren lässt.
Qualitätssicherung ist nicht nur Testen
Diese Folge der VSTS-Serie beschränkte sich auf die Aspekte der Qualitätssicherung und des Testens. Generell sollte sich die Qualitätssicherung nicht im Testen erschöpfen, sondern muss durch vielfältige Aktivitäten während des gesamten Software Lifecycles präsent sein. In vielen Fällen wird die Qualitätssicherung durch manuelle Prozesse von außen definiert, die aufwändig und selbst fehleranfällig sind. Daher ist der Einsatz passender Werkzeuge zur Automatisierung möglichst vieler qualitätssichernder Maßnahmen empfehlenswert. VSTS ist aus unserer Sicht ein Werkzeug, das schon in der aktuellen Version eine Menge an Features zur Unterstützung der Qualitätssicherung bietet und in zukünftigen Versionen mehr Komfort und weitergehende Unterstützung bieten soll. Interessant ist in diesem Zusammenhang, dass die Qualität und der Kundennutzen bei den integrierten und von Microsoft selbst eingesetzten Prozessen während der Entwicklung des VSTS im Vordergrund stehen. Sehr viel Hintergrundinformation dazu liefert das Buch „Software Engineering with Microsoft Visual Studio Team System“ [5], in dem die leitenden Ideen des VSTS und dessen Anwendung im Software Lifecycle beleuchtet werden.
Carsten Kind (cmk@zuehlke.com), Klaus Schmitt (kls@zuehlke.com) und Erik Steiner (est@zuehlke .com) sind Mitarbeiter von Zühlke und hauptsächlich in den Bereichen Software-Entwicklung und -test, Entwicklungsprozesse und Projektleitung aktiv.
Links & Literatur
- ISO/IEC 9126-1 Software engineering – Product quality – Part1: Quality model
- ISO/IEC 12207 Information technology – Software life cycle processes
- http://www.codeplex.com/BranchingGuidance
- http://sourceforge.net/projects/nunit
- Sam Guckenheimer, Software Engineering with Microsoft Visual Studio Team System, Addison Wesley 2006
- http://msdn2.microsoft.com/en-us/library/ms364045(VS.80).aspx
- http://www.ekobit.com/testmngr.aspx




