Allgemein Für Administratoren Für Architekten Für Entwickler Für Projektleiter Für Tester News Produkte Publikationen

Archiv für Oktober 2008

X
Nico Orschel
ist Software Process Consultant, Autor und Referent im Umfeld Microsoft ALM bei der AIT und wurde von Microsoft als MVP für VS ALM ausgezeichnet. Er hilft Unternehmen auf Basis von TFS effizienter Software zu entwickeln und zu testen und so ein höheres Qualitätsniveau bei kürzeren Release-Zyklen zu erreichen. Mein Profil auf Google+ .

Nico Orschel

Skype Unterstützung für die neuen TFS Power Tools Okt. 2008

Montag, 27. Oktober 2008

Die neuen TFS Power Tools werden im nächsten Release umfangreiche Erweiterungen für die Kommunikation im Team über den Team Explorer zur Verfügung stellen. Es wird möglich sein mit Teammitgliedern über Instant Messenger-, Voip- und Videoclients über das Internet zu kommunizieren.

Die Power Tools liefern von Haus aus eine Unterstützung für den Live Messenger und Communicator von Microsoft mit. Über die neue Collaboration API lassen sich auch Clients von Drittanbietern anbinden. In diesem Zusammenhang entwickeln wir im Moment einen Skype Collaboration Provider für die neuen Power Tools. Die Veröffentlichung ist parallel mit der Freigabe der neuen Power Tools geplant.

X
Sven Hubert

Sven Hubert

Team Foundation Build 2008 – Leere Properties in BeforeCompileSolution und AfterCompileSolution

Sonntag, 26. Oktober 2008

Wer bereits die Targets BeforeCompileSolution und AfterCompileSolution verwendet hat, um eigene Aktionen während eines Buildprozesses im TFS auszuführen, wird das Problem kennen. Eigene Properties besitzen keine Werte mehr, sie schein nicht definiert zu sein. Und tatsächlich ist das auch das Problem. Aus Gründen der Rückwärtskompatibilität wird zwischen den Targets BeforeCompile und AfterCompile das Target CallCompile aufgerufen. Dieses nutzt den MSBuild-Task, um CoreCompile aufzurufen, welches letztendlich die SolutionsToBuild kompiliert. Hier ein Code-Ausschnitt aus der Datei Microsoft.TeamFoundation.Build.targets:

<Target Name=“CallCompile“ DependsOnTargets=“$(CoreCompileDependsOn)“>
<!– Backwards Compatibility –>
[…]

  <!– Pass in all properties that users might want during the course of the compile targets. –>
<MSBuild Projects=“$(MSBuildProjectFile)“
Properties=“BuildAgentName=$(BuildAgentName);BuildAgentUri=$(BuildAgentUri);BuildDefinitionName=$(BuildDefinitionName);BuildDefinitionUri=$(BuildDefinitionUri);
BuildDirectory=$(BuildDirectory);BuildNumber=$(BuildNumber);CompilationStatus=$(CompilationStatus);CompilationSuccess=$(CompilationSuccess);
[…]
SolutionRoot=$(SolutionRoot);BinariesRoot=$(BinariesRoot);TestResultsRoot=$(TestResultsRoot);
$(CustomPropertiesForBuild)
Targets=“CoreCompile“>
<Output TaskParameter=“TargetOutputs“ ItemName=“CompilationOutputs“ />
</MSBuild>

  <OnError ExecuteTargets=“SetBuildBreakProperties;OnBuildBreak;“ />

</Target>

Der durch Team Foundation Build vorgegebene Buildablauf gestaltet sich wie folgt (Einstiegspunkt ist das Target Compile):

image

Es fällt ein Property namens CustomPropertiesForBuild auf. Tatsächlich dient es dazu, eigene Properties in den Build (Target Compile) „einzuschleusen“. Dazu definiert man spätestens im Target BeforeCompile folgende PropertyGroup:

<PropertyGroup>
<CustomPropertiesForBuild>
MyCustomProperty1=Value1;
MyCustomProperty2=ValueFirstPart%3BValueSecondPart;
</CustomPropertiesForBuild>
</PropertyGroup>

MyCustomProperty2 enthält im Wert ein Semikolon. Dieses würde aber beim Aufruf von MSBuild als Trennungszeichen für das nächste Property interpretiert werden. Daher müssen Semikolons, die im Property enthalten sein sollen (z.B. bei Datenbank-Connection-Strings) mit %3B escaped werden (Kommandozeilen-Escape).

Mit diesen Properties kann man dann in den Targets BeforeCompileSolution und AfterCompileSolution arbeiten…

X
Rudi Guenther

Rudi Guenther

AIT und SYNDATO erweitern das AIT – TeamSystemPro Team in Deutschland

Montag, 20. Oktober 2008

Die AIT AG aus Stuttgart und SYNDATO GmbH aus Dresden bilden eine strategische Partnerschaft und erweitern das AIT – TeamSystem Pro Team um die SYNDATO Experten. Mit der Erweiterung des AIT – TeamSystem Pro Teams wird die führende Position für Dienstleistungen rund um den Microsoft Team Foundation Server (TFS) auf dem deutschsprachigen Markt weiter ausgebaut.

Die beiden Spezialisten Jens Korte und Tomasz Puzak der SYNDATO Gmbh haben wie die Experten der AIT AG schon mit der ersten Beta Version des Team Foundation Servers mit der Einführung der neuen Entwicklungsumgebung bei ihren Kunden begonnen. Bis heute haben sie ihre Erfahrungen in vielen weiteren Projekten kontinuierlich vergrößert und weitergegeben.

Der Visual Studio Team Foundation Server ist eine Plattform für die effiziente Zusammenarbeit in Softwareprojekten. Über den TFS können Entwicklungsprojekte geplant, erstellt und verwaltet werden. Auf dessen Basis ist eine kontinuierliche Optimierung des Software-Entwicklungsprozesses – unabhängig ob agil oder formal – optimal realisierbar. Mit den AIT – TeamSystemPro Team Experten führen Kunden den Team Foundation Servers als Plattform zur effizienten Entwicklung von Software noch schneller und produktiver ein.

Die Dienstleistungen im Rahmen der Software Development LifeCycle Management Produkte von Microsoft werden gemeinsam unter dem Markennamen AIT – TeamSystemPro Team angeboten.

Wollen Sie mehr über unsere Leistungen rund um das Thema Software Development LifeCycle Management erfahren, schauen Sie auf www.aitag.com/vsts.

Über SYNDATO:
Die SYNDATO GmbH hat sich auf die Gestaltung von Software Entwicklungsprozessen und deren Anpassung auf Basis des Team Foundation Servers spezialisiert. Dabei reicht das Spektrum von agilen Vorgehensweisen wie Scrum bis zu komplexeren CMMI konformen Prozessen. Insbesondere bei Veränderungsprojekten im Bereich der Softwareentwicklung und bei der Einführung komplexen Build- und Testumgebungen hat die SYNDATO Expertise erlangt. Jens Korte gibt als Fachautor und Sprecher auf Konferenzen sein Wissen und seine Erfahrungen weiter.

Über AIT:
Die AIT AG ist führender Anbieter für individuelle, innovative Softwarelösungen auf Basis von Microsoft .NET Plattformen. AIT ist Microsoft Gold Certified Partner und hat sich als maßgeblicher Service Partner für Software LifeCycle Management Lösungen auf Basis des Team Foundation Servers und Visual Studio Team System etabliert. Die AIT AG berät Unternehmen bei der strategischen Einführung des TFS und unterstützt bei der kontinuierlichen Optimierung des Softwareentwicklungsprozesses. AIT ist Visual Studio Team System Inner Circle-Partner und Service Partner des Microsoft Team System Quality Boards sowie TFS Service Partner des Jahres.

X
Sven Hubert

Sven Hubert

TeamConf Schweiz 2008

Mittwoch, 15. Oktober 2008

Vom 1. bis 3. Dezember findet in Zürich die TeamConf Schweiz 2008 statt. Das TeamSystemPro Team wird dort durch Neno Loje, Rudolf Günther und meine Person – Sven Hubert vertreten sein. Neno wird zusammen mit Rudi die Keynote halten dürfen. Ich werde zusammen mit einem belgischen Kunden einen Methodikvortrag zum Thema „Formale Agilität mit Scrum – ein Praxisbericht“ halten. Dabei geht es um das Erreichen einer CMMI-Zertifizierung unter Einsatz von Scrum als Prozessframework. Welche Konflikte und Herausforderungen dabei auftreten und wie diese im Referenzprojekt gelöst wurden, soll im Vortrag beleuchtet werden.

TeamConf_CH_Banner_234x60

Der Vortrag ist in erweiterter Form auch für die TeamConf 2009 vom 5. bis 7. Mai in München vorgesehen. Dort wird Ken Schwaber – „Vater des SCRUM“ – selbst die Keynote halten.

X
Sven Hubert

Sven Hubert

Spezifische Versionen im lokalen Workspace erkennen

Dienstag, 14. Oktober 2008

Über den Befehl "Get Specific Version…" kann man im Source Control Explorer eine alte Version einer Datei oder eines Verzeichnisses wiederherstellen.

image

Wählt man ein altes Changeset oder Datum aus, wird die lokale Datei mit der alten Version überschrieben (so denn das Häkchen zum Überschreiben im Dialog gesetzt ist). Das ist im Source Control Explorer anhand der Spalte "Latest" erkennbar.

image

Doch wie war doch jetzt gleich die aktuelle lokale Version der Datei? Um das herauszufinden, muss man einen Blick in die Eigenschaften der Datei werfen. Dort sind aktuelle Server und lokale Version aufgelistet.

image

X
Sven Hubert

Sven Hubert

TFS Work Item Security im Details

Montag, 13. Oktober 2008

Der TFS bietet ein Berechtigungskonzept, welches auch die Work Items einschließt. Für Work Items gelten zunächst einmal die Grenzen des Teamprojektes, in dem sie enthalten sind. Innerhalb eines Teamprojektes, lassen sich die Berechtigungen zum Anzeigen und Editieren von Work Items auf Area-Level festlegen. Areas bieten dabei folgende Rechtetabelle an:

clip_image002

Die Abbildung zeigt, die Rechte auf dem Area-Knoten „Specification“ eines Beispielprojektes. Diese sind für unseren Beispielnutzer entzogen. Versucht dieser Nutzer, auf diesem Knoten, Berechtigungen einzusehen oder zu editieren, bekommt er eine Fehlermeldung.

clip_image004

Man könnte meinen, dass das Recht „View this node“ einschließt, dass der Knoten z.B. in einem Work Item Formular sichtbar bzw. versteckt bleibt. Doch ist dem nicht so. Areas und Iterations sind generell sichtbar, wenn man im TFS nicht die Metadaten nach Berechtigungen filtert (siehe Blog von Martin Woodward).

Die Reports hingegen kümmern sich nicht um Work Item Security. Alle Daten, die ein Report abfragt sind dem Nutzer, der den Report ansehen darf zugänglich (read-only). Das liegt daran, dass die Berichte als User ReportService o.ä. auf das Data-Warehouse zugreifen und das Rechtekonzept dort nicht so feingranular umgesetzt wird. Man muss sich also genau überlegen, wer auf welche Reports zugreifen darf.

Hier ein Beispiel für einen Work-Item-Bericht, der auch Work Items aus der „sicheren“ Area (siehe oben) anzeigt.

clip_image006

Und das obwohl der Benutzer keine Berechtigung hat, dieses Work Item direkt mit dem TFS zu öffnen.

clip_image008

Das vorgestellte Konzept sollte in die Überlegungen zum Aufbau einer Teamprojektstruktur einfließen. Je nachdem, welche Sicherheit benötigt wird, muss man in mehrere Teamprojekte aufteilen und von einem einzelnen Teamprojekt absehen bzw. sich dafür entscheiden, mehr Informationen sichtbar zu machen.

X
Rudi Guenther

Rudi Guenther

AIT und Ekobit erweitern das AIT – TeamsystemPro Team in Europa

Montag, 06. Oktober 2008

Die AIT AG aus Stuttgart und Ekobit aus Zagreb bilden eine strategische Partnerschaft und erweitern das AIT – TeamSystem Pro Team um die beiden international anerkannten Experten Ognjen Bajić und Ivan Kardum. Mit der Erweiterung des AIT – TeamSystem Pro Teams wird die führende Position für Dienstleistungen rund um den Microsoft Team Foundation Server (TFS) auf dem europäischen Markt weiter ausgebaut.

Die beiden TFS Experten Ognjen Bajić und Ivan Kardum verstärken den Bereich Custom Development Expertise des AIT – TeamSystemPro Teams. Beide Consultants sind Sprecher auf internationalen Veranstaltungen und für die wohl bekannteste TFS – Outlook Integration TeamCompanion verantwortlich.

Der Visual Studio Team Foundation Server ist eine Plattform für die effiziente Zusammenarbeit in Softwareprojekten. Über den TFS können Entwicklungsprojekte geplant, erstellt und verwaltet werden. Auf dessen Basis ist eine kontinuierliche Optimierung des Software-Entwicklungsprozesses – unabhängig ob agil oder formal – optimal realisierbar. Mit den AIT – TeamSystemPro Team Experten führen Kunden den Team Foundation Servers als Plattform zur effizienten Entwicklung von Software noch schneller und produktiver ein.
Die Dienstleistungen im Rahmen der Software Development LifeCycle Management Produkte von Microsoft werden gemeinsam unter dem Markennamen AIT – TeamSystemPro Team angeboten.
Wollen Sie mehr über unsere Leistungen rund um das Thema Software Development LifeCycle Management erfahren, schauen Sie auf www.aitag.com/vsts.

Über Ekobit:
Ekobit beschäftigt sich vorwiegend mit Anwendungsentwicklung und Beratung für deutsche und Schweizer Unternehmen auf Basis von Microsoft Entwicklungsplattformen. Ekobit war als Microsoft Gold Certified Partner mit Ognjen Bajić in Europa das erste Unternehmen mit einem zertifizierten Berater für Visual Studio Team System. Ekobit berät Firmen rund um die Microsoft .NET-Technologie mit Schwerpunkt auf Visual Studio Team System und den Team Foundation Server und bietet Produkte wie z.B. TeamCompanion (www.teamcompanion.com) an.

Über AIT:
Die AIT AG ist führender Anbieter für individuelle, innovative Softwarelösungen auf Basis von Microsoft .NET Plattformen. AIT ist Microsoft Gold Certified Partner und hat sich als maßgeblicher Service Partner für Software LifeCycle Management Lösungen auf Basis des Team Foundation Servers und Visual Studio Team System etabliert. Die AIT AG berät Unternehmen bei der strategischen Einführung des TFS und unterstützt bei der kontinuierlichen Optimierung des Softwareentwicklungsprozesses. AIT ist Visual Studio Team System Inner Circle-Partner und Service Partner des Microsoft Team System Quality Boards sowie TFS Service Partner des Jahres.

X
Nico Orschel
ist Software Process Consultant, Autor und Referent im Umfeld Microsoft ALM bei der AIT und wurde von Microsoft als MVP für VS ALM ausgezeichnet. Er hilft Unternehmen auf Basis von TFS effizienter Software zu entwickeln und zu testen und so ein höheres Qualitätsniveau bei kürzeren Release-Zyklen zu erreichen. Mein Profil auf Google+ .

Nico Orschel

Genauere Arbeitszeiten erfassen…

Montag, 06. Oktober 2008

Für ein gutes Projektcontrolling sind die Erfassung von Arbeitszeiten zu Arbeitsaufgaben (Work Items) die Basis.

Täglich zeigt sich, dass diese Routinetäglichkeit leider mangelhaft wahrgenommen durch die verschiedenen Projektbeteiligten wird. Die Gründe hierfür sind vielfältig, beispielhaft sei hier genannt, dass Aufwände mit einer zeitlichen Verzögerung erfasst und/oder geschätzt werden.

Wir haben für die Erfassung von Arbeitszeiten eine TFS Erweiterung mit dem Namen CheckinTimeTracker entwickelt.

(mehr …)

X
Sven Hubert

Sven Hubert

Back To The Past mit Work Item Queries

Donnerstag, 02. Oktober 2008

Einige Zertifizierungen im Bereich des Application Lifecycle Managements setzen für das Audit voraus, dass sich alle Artefakte des Konfigurationsmanagements im nachhinein zu einem Datum in der Vergangenheit wiederherstellen lassen. Das trifft also im Falle des Visual Studio Team System auch die Work Items.

Doch nicht nur für ein Audit, sondern auch für Vergleichszwecke zwischen den Work Items vor und nach einer Iteration ist das relevant. Können doch so sehr genau offengebliebene Aufgaben sowie kleinere Veränderungen an Work Items ausgemacht werden.

Die Work Item Queries im VSTS besitzen schon diese Funktionalität. Über den "As of" Parameter lassen sich Queries wie zu einem zurückliegenden Datum ausführen. Im Normalfall ist diese Funktion nicht über das Visual Studio zu erreichen. Wir haben daher ein Visual Studio Addin geschriebe, welches diese Lücke schließt.

(mehr …)

X
Sven Hubert

Sven Hubert

IntelliSense für die Anpassung von Work Item Typen

Mittwoch, 01. Oktober 2008

Beim Editieren von Work Item Typen mit dem XML-Editor von Visual Studio tut man sich schwer. Ist doch anscheindend keine Intellisense-Unterstützung vorhanden…

Aber es gibt sie doch.

  1. Öffnen Sie das Visual Studio Team System Integration Verzeichnis des VS 2008 SDK. Das Schema kann auch direkt von hier heruntergeladen werden.
  2. Navigieren Sie zum Verzeichnis Work Item Tracking.
  3. Kopieren Sie die Datei WorkItemTypeDefinition.xsd aus der Work Item Tracking Schemas.zip nach „C:\Program Files\Microsoft Visual Studio 9.0\Xml\Schemas“, bzw. dem entsprechenden Visual Studio Verzeichnis.

Nun muss im Work Item Type XML noch das Root-Element angepasst werden. Der Knoten muss „witd:WITD“ heißen und nicht nur „WITD“. Außerdem muss der Namespace-Name eingetragen werden. Das Root-Element sieht dann in etwa wie folgt aus:

<witd:WITD application=“Work item type editor“ version=“1.0″ xmlns:witd=“http://schemas.microsoft.com/VisualStudio/2005/workitemtracking/typedef“>

Das Ende-Tag nicht vergessen („</witd:WITD>“) und nach dem erneuten Öffnen gibt es auch Intellisense für die Work Item Typen.