24
Vertrauen ist gut ... ... Source Control ist besser Robert Eichenseer conplement AG

Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

Vertrauen ist gut ...... Source Control ist besser

Robert Eichenseerconplement AG

Page 2: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

Vertrauen ist gutSource Control ist besser!

Robert Eichenseer

conplement AG, Nürnberg

Page 3: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.112 © conplement AG 2010. All Rights Reserved.

• 08. September 2011

• Robert Eichenseer

• Senior Software Engineer

[email protected]

• conplement AG

• Südwestpark 92

• 90449 Nürnberg

www.conplement.de

• .NET DevCon Nürnberg

• Vertrauen ist gut -

• Source Control ist besser!

Page 4: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.113 © conplement AG 2010. All Rights Reserved.

• Die Grundlagen

• Geschichte

• 30.04.1999 Totalverlust Militärsatellit;

Start mit Titan IV Rakete

• Sprengung weil Flugbahn instabil wurde

• Finanzieller Schaden in Milliardenhöhe

• Nicht messbarer Imageschaden

(1) Quelle: http://www.flickr.com/photos/landoni/3272161687/

(1)

Page 5: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.114 © conplement AG 2010. All Rights Reserved.

• Die Grundlagen

• Geschichte

• Fehler in Steuerungssoftware!

• Fixer Filter Wert „Roll-Rate“

– -0,1992476 -> -1,992476

– Datei mit Wert wurde von

NASA geliefert

• Verlust und manuelle Neuerstellung

– „Kommasetzung“ war Grund für Sprengung

http://sunnyday.mit.edu/accidents/titan_1999_rpt.doc

(1) Quelle: http://www.flickr.com/photos/landoni/3272161687/

(1)

Page 6: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.115 © conplement AG 2010. All Rights Reserved.

• Vertrauen ist gut – SC ist besser!

• Agenda• Die Buzzwords

– Was ... Wie ...

– Die Beispielsysteme

• Hauptaufgaben (Demo)

– Cooperation

– History

– Parallele Entwicklung

• Die Zukunft

– Sharepoint Collaboration

Page 7: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.116 © conplement AG 2010. All Rights Reserved.

• Die Grundlagen

• Buzzwords

• SCM (Software Configuration Management)

– Unterstützung bei „Application Lifecycle Management“

– MS Team Foundation Server, IBM ClearCase, BitMover

BitKeeper

Page 8: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.117 © conplement AG 2010. All Rights Reserved.

• Die Grundlagen

• Buzzwords

• Versionskontrollsysteme (VCS)

– Teilbereich eines SCM

– Konzentration auf die Bereiche Entwicklung / Bugfix

– Beispiele

• Microsoft Visual Source Safe

• CVS / Subversion

• Git

Page 9: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.118 © conplement AG 2010. All Rights Reserved.

• Die Grundlagen

• Buzzwords

• Lokale Verwaltung

– Historisierung in der jeweiligen Datei

– Bsp.:

• SCCS, RCS

• MS Word; Office Anwendungen

Page 10: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.119 © conplement AG 2010. All Rights Reserved.

• Die Grundlagen

• Buzzwords

• Zentrale Verwaltung

– Client – Server Architektur

– Bsp.:

• Visual Source Safe, Team Foundation Server

• Clear Case, Subversion

Page 11: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1110 © conplement AG 2010. All Rights Reserved.

• Die Grundlagen

• Buzzwords

• Dezentrale Verwaltung

– Peer – To – Peer Architektur

– Bsp.:

• Git

• Mercurial (Codeplex)

Page 12: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1111 © conplement AG 2010. All Rights Reserved.

• Die Grundlagen

• Die Beispielsyteme

• Microsoft Visual Source Safe (VCS)

– Entwicklung von „One Tree Software“

• Clients für DOS, OS/2, Windows, Windows NT, MAC

und Unix

• 1994 von MS gekauft; Konzentration Windows

– Brian Harry Gründungsmitglied „One Tree Software“

• Technical Fellow bei MS

• „Mastermind“ TFS

– „Eating their own dog food“ nicht für Source – Safe

• Gerüchteweise „Source Depot“ (1)

(1) O‘Reily; Practical Software Development, Seite 73

Page 13: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1112 © conplement AG 2010. All Rights Reserved.

• Die Grundlagen

• Die Beispielsysteme

• Microsoft Team Foundation Server (SCM)

– Aktuelle Version „Visual Studio TFS 2010“

• 3te Version von TFS

– Seit Visual Studio 2010

• Im Lieferumfang von >= VS 2010 Professional

• Installation / Konfiguration innerhalb von ~ 5 Minuten

• Installation auf Client OS (Win7, Windows Vista SP2)

• Komplettes SCM System

– Unterstützt alle Phasen der Softwareentwicklung

Page 14: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1113 © conplement AG 2010. All Rights Reserved.

• Hauptaufgaben

• Cooperation Support

• Zwei Grundlegende Verfahren

– Check Out -> Modify -> Check In

• Zentrale Systeme

– Exclusive Check Out

– Multiple Check Out

– Modify -> Merge -> Commit

• Dezentrale Systeme

Page 15: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1114 © conplement AG 2010. All Rights Reserved.

• Hauptaufgaben

• Demo App• Demo Applikation Rocket Control

Page 16: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1115 © conplement AG 2010. All Rights Reserved.

• Hauptaufgaben

• History Management;

• Situation

• Herausforderung:

– Wiederherstellung Stand: Release 1.0

– Wiederherstellung Stand: UI Bug; 7011

Page 17: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1116 © conplement AG 2010. All Rights Reserved.

• Hauptaufgaben

• History Management;

• Widerherstellung Release 1.0

• Wiederherstellung UI Bug; 7011

– Reaction -> Revision 3

– Left -> Revision 2

– Right -> Revision 1

– Top -> Revision 1

(Änderung UI Bug; 7011)

• SCM Funktionen

– Label

• Zusammenfassung von Revisions im Repository

– Changeset

• Zusammenfassung aller Check-In Änderungen (nicht

in VSS)

Page 18: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1117 © conplement AG 2010. All Rights Reserved.

• Hauptaufgaben

• History Management;

• Aus dem Alltag ...

– Aufwendiger Algorithmus zur Steuerung der

Rakete fertiggestellt. Es fehlt nur noch ein

„kleines“ Refactoring. Nach Refactoring

funktioniert gar nichts mehr !

– Kurz vor dem Urlaub kann der Code nicht gebaut

werden. Wie soll der Code übergeben werden?

– Freitag 18:00 Uhr, das WorkItem ist noch nicht

fertig.

• SCM Funktion: Shelveset

– Ablage im Repository

– Nicht via „Get-Latest“

– Nicht in Visual Source Safe

Page 19: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1118 © conplement AG 2010. All Rights Reserved.

• Hauptaufgaben

• Parallele EntwickungAufgabenstellung

Koordination • Release• Feature Entwicklung• Bugfix

Wie kommt Bugfix „Top/Left Rate“ in Release 1 (ohne RR Steuerung)?

Wie kommt Bugfix „Right Rate“ in Release 1 (ohne RR und Galileo)?

Wie kommt Bugfix „Galielo“ in Release 1 und Release 2 (ohne Clavius)?

Page 20: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1119 © conplement AG 2010. All Rights Reserved.

• Hauptaufgaben

• Parallele EntwicklungLösung

Branching / Merging

http://tfsbranchingguideiii.codeplex.com/

Page 21: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1120 © conplement AG 2010. All Rights Reserved.

• Die Zukunft?

• Sharepoint CollaborationGemeinsames gleichzeitiges Arbeiten an einer Version

Sharepoint 2010 / Office 2010

Dariuzs Parys; Technical Evangelist Microsoft

Online Pair-Programming Tool für Visual Studio 2010

Page 22: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1121 © conplement AG 2010. All Rights Reserved.

• Zusammenfassung

• Was benötige ICH?Software Configuration Management (SCM) vs. Version Control

System (VCS)

Umfeld entscheidet über SCM Auswahl

Anzahl Teammitglieder

Lokation Teammitglieder

Verbindung zum Repository

Versionspflege

Einsatz SCM / VCS

In jedem Projekt sinnvoll und nötig!

Page 23: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1122 © conplement AG 2010. All Rights Reserved.

• Zusammenfassung

• Fazit

Keine Softwareprobleme bei zukünftigen Missionen!

Quelle: http://www.thefutureschannel.com/img/pics/mike_griffin/NASA_CEV_Orion01.jpg

Page 24: Vertrauen ist gut€¦ · • Microsoft Team Foundation Server (SCM) – Aktuelle Version „Visual Studio TFS 2010“ • 3te Version von TFS – Seit Visual Studio 2010 • Im Lieferumfang

14.09.1123 © conplement AG 2010. All Rights Reserved.

• Ich freue mich auf Ihre Fragen

• Robert Eichenseer

• www.conplement.de