56
Team Foundation Server Hans-Petter Halvorsen, M.Sc. Visual Studio Team Services

Team Foundation Server Overview

  • Upload
    phamque

  • View
    222

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Team Foundation Server Overview

TeamFoundationServer

Hans-PetterHalvorsen,M.Sc.

VisualStudioTeamServices

Page 2: Team Foundation Server Overview

RequirementsAnalysis

Design

Implementation

Testing

MaintenancePlanningTheSoftware

DevelopmentLifecycle(SDLC)

Deployment

TeamFoundationServer

TeamFoundationServer(TFS)isanApplicationLifecycleManagement(ALM)system

SourceCodeControl(SCC)

BugTracking

ProjectManagement

CollaborationPlatformScrum

Agile

VisualStudio

SDLCManagement

MSExcelMSProject

VisualStudioOnline

Page 3: Team Foundation Server Overview

TeamFoundationServer(TFS)

TFS

Visual Studio

LabVIEWServer Clients

FileExplorer

Repository

Services

TeamExplorer

MSSCCIProvider

PowerTools

MS Excel

MS Project

Others

Web Access

SQLServer(TFVC)

TeamFoundationServer(TFS)isanApplicationLifecycleManagement(ALM)system

Git

Eclipse

Page 4: Team Foundation Server Overview

4

ThediagramdemonstratesthatteammembersondifferentplatformscancollaboratebyusingTeamFoundationServer

Page 5: Team Foundation Server Overview

• TeamFoundationServer(TFS)isanApplicationLifecycleManagement(ALM)system,– i.e.,thesystemtakescareofallaspectsinsoftwaredevelopment– fromplanning,requirements,coding,testing,deploymentand

maintenance.• TFSisaSourceCodeControl(SCC),BugTracking,Project

Management,andTeamCollaborationplatform• TightlyintegratedwithVisualStudioasMicrosoftisthevendor

ofbothVisualStudioandTFS• Cloudbasededition(HostingService):“VisualStudioOnline”

(former:“TeamFoundationService”)

5

WhatisTFS?

Page 6: Team Foundation Server Overview

ApplicationLifecycleManagement,ALM

• ALMTools:Toolsthatfacilitateandintegrate:– RequirementsManagement,– Architecture,– Coding,– Testing,– (Bug)Tracking,– AndReleaseManagement(->SoftwareDevelopment!)

• Thereexistalotofsuchtools(TFS,Jita,etc…)• WewilluseTeamFoundationServer(TFS)fromMicrosoft,sinceitis

tightlyintegratedwithVisualStudiohttp://en.wikipedia.org/wiki/Application_lifecycle_management 6

Page 7: Team Foundation Server Overview

VisualStudioTeamServices• TFSisaSourceCodeControl(SCC),BugTracking,Project

Management,andTeamCollaborationplatform• IntegratedwithVisualStudio• TFSintheCloud(Thismeansyoudon'tneedtohosttheserver

yourself)• Freeforupto5users www.visualstudio.com

Page 8: Team Foundation Server Overview

TeamFoundationServer• SDLCManagement(SDLC– SoftwareDevelopmentLifeCycle)• SoftwareTeam Collaboration• SourceCodeManagement• SupportsAgile,Scrum,CMMI• BugTracking• IntegratedTest Tools• AutomatedBuilds• BuiltinTeamFoundationVersionControl(TSVC)+SupportforGit

repositories• Built-insupportforTFSinVisualStudio(TeamExplorer)• Plug-inforEclipse(TeamExplorerEverywhere)• MSSCCIProviderforotherIDEslikeLabVIEW,etc.

8

Page 9: Team Foundation Server Overview

TFSTechnicalOverview

Itusesa3tier/layerarchitecture• Clienttier(WebServices(usedbyVisualStudio,etc.))

• Applicationtier• WebServices• WebPortal,TeamWebAccess(TWA)• DocumentrepositoryusingSharePointServices

• Datatier(SQLServer)

9

Page 10: Team Foundation Server Overview

TFSClientTools• TeamExplorer (integratedwithVisualStudio)• MSExcel Add-in(partofTeamExplorerinstallation)• MSProjectAdd-in(partofTeamExplorerinstallation)• WindowsExplorerIntegration(partofPowerTools)

VeryusefulwhenworkingwithTeamFoundationServeroutsideofVisualStudioorEclipse

• TFSMSSCCIProvider (makesitpossibletouseTFSwithintoolsthatdonotsupportTFS,suchase.g.,LabVIEW,SQLServer,etc.)

• TeamExplorerEverywhere• 3.partysoftwarethatintegrateswithTFS(usingavailablewebservices)

10

Page 11: Team Foundation Server Overview

SourceCodeControl/RevisionControl

WithTFSyoumayusedifferentsourcecoderepositories:• TFVC

– TeamFoundationVersionControl(TFVC)usesasingle,centralizedserverrepositorytotrackandversionfiles.Localchangesarealwayscheckedintothecentralserverwhereotherdeveloperscangetthelatestchanges.

• Git (“opensource”alternative)– GitisaDistributedVersionControlSystem(DVCS)thatusesalocal

repositorytotrackandversionfiles.Changesaresharedwithotherdevelopersbypushingandpullingchangesthrougharemote,sharedrepository.

11

Page 12: Team Foundation Server Overview

VisualStudioTeamServices(VSTS)

Hans-PetterHalvorsen,M.Sc.

Page 13: Team Foundation Server Overview

VisualStudioTeamServices• TFSintheCloud(Thismeansyoudon'tneedtohosttheserveryourself)

• Freeforupto5users• www.visualstudio.com

Page 14: Team Foundation Server Overview

Wewilllearnto• CreateanVisualStudioTeamServicesAccount• CreateProjectsandAddTeamMembers• CreateagoodFolderstructure• CreateAreas andIterations• CreateWorkItems(Bug,Task,...)• CreateQueries• UseTFSinsideVisualStudio

Page 15: Team Foundation Server Overview

VSTS- GettingStarted

15

1. CreateanAccount2. CreateaNewTeamProject3. Youarereadytostart

1. ConnecttoVisualStudioTeamServicesfromVisualStudio(similarasconnectiontoaTeamFoundationServer)

2. OrusetheWeb-basedinterfaceprovided(exceptforSCC)4. AssignTeamMembers5. AddAreas,Iterations,etc.6. AddyourSourceCode7. Check-in/Check-out

Page 16: Team Foundation Server Overview

CreateNewTeamProject

16

SelectTFVC orGitRepository

Selectwhatkindofdevelopmentprocessyouwanttofollow(Agile,Scrum,...)

!!!

Page 17: Team Foundation Server Overview

TheProjectStartPage

17

Page 18: Team Foundation Server Overview

Exercise– VisualStudioTeamServices• SignupforVisualStudioTeamServiceswww.visualstudio.com

• YouneedaWindowsLiveID• CreateaproperURL• CreateaNewProject• AddTeamMembers• GiveAccess totheSupervisor

Page 19: Team Foundation Server Overview

TeamProjects• Differenttemplatesexists– Agile– Scrum– etc.

19

Page 20: Team Foundation Server Overview

SourceCodeControl• Selectbetween– TeamFoundationVersionControl(TFVC)– Git

• VisualStudio:TeamExplorer• FromTeamExplorer:SourceControlExplorer

20

Page 21: Team Foundation Server Overview

Createagoodstructure• OpentheSourceCodeExplorerinVisualStudio

• Defineproperfoldersinsideyourproject

21

Page 22: Team Foundation Server Overview

AreasThedifferentsoftwaremodulescouldbedividedintodifferentAreas

22

Page 23: Team Foundation Server Overview

IterationsCreateIterationsforthedifferentreleases,milestones(internalandexternal);e.g.,Alpha,Beta,RC,RTM

23

Page 24: Team Foundation Server Overview

Exercise– TFSCreatethefollowingforyourProject:• TeamProject• AssignTeamMembers• Areas• Iterations• CreateagoodfolderstructureforyourDocumentsandSourceCode

Page 25: Team Foundation Server Overview

WorkItemsInTFSyoucancreatedifferentWorkItems,suchas:• Task• Bug• Feature• Scenario• Issue• UserStory• TestCase• etc.TheseWorkItemswillbeusedatdifferentlevelinyourdevelopmentcycle.WhentheTestersreportsbugs,theywillusethe“Bug”WorkItem,etc.

25

Page 26: Team Foundation Server Overview

WorkItems– NewBug

26

Page 27: Team Foundation Server Overview

Queries• UsedtofindexistingWorkItems• YoumaycreatedifferentQueriestomakeiteasytofindtheWork

Itemsyouneed• Queriesmaybepersonalorvisibleforeverybodyintheproject

(TeamQueries)

27

Page 28: Team Foundation Server Overview

Exercise– TFSWorkItems

• CreatedifferentkindofWorkItemsforyourProject(Task,Bug,Feature)

• CreatedifferentQueries tomakeiteasytofindyourWorkItemsofinterestatanygiventime.

Page 29: Team Foundation Server Overview

TaskBoard

29

Page 30: Team Foundation Server Overview

BurndownChart

30

Page 31: Team Foundation Server Overview

TeamFoundationServer

Hans-PetterHalvorsen,M.Sc.

ClientTools

Page 32: Team Foundation Server Overview

TeamFoundationServer(TFS)

TFS

Visual Studio

LabVIEWServer Clients

FileExplorer

Repository

Services

TeamExplorer

MSSCCIProvider

PowerTools

MS Excel

MS Project

Others

Web Access

SQLServer(TFVC)

TeamFoundation Server(TFS)isanApplicationLifecycleManagement(ALM)system

Git

Eclipse

Page 33: Team Foundation Server Overview

TFSClientTools• TeamExplorer (integratedwithVisualStudio)• MSExcel Add-in(partofTeamExplorerinstallation)• MSProjectAdd-in(partofTeamExplorerinstallation)• WindowsExplorerIntegration(partofPowerTools)

VeryusefulwhenworkingwithTeamFoundationServeroutsideofVisualStudioorEclipse

• TFSMSSCCIProvider (makesitpossibletouseTFSwithintoolsthatdonotsupportTFS,suchase.g.,LabVIEW,SQLServer,etc.)

• TeamExplorerEverywhere• 3.partysoftwarethatintegrateswithTFS(usingavailablewebservices)

Page 34: Team Foundation Server Overview

TeamExplorer• ThemaintoolforcommunicationwithTFS• IntegratedwithVisualStudio• AddSourceCode• AddAreas andIterations• AddWorkItems(Bugs,Tasks,UserStories,etc)• Add,EditandUseQueries

34

Page 35: Team Foundation Server Overview

MSExcelAdd-in• ExportaworkItems(Tasks,Bugs,etc.)toExcel• PublishWorkItemsfromExceltoTFS

35

Page 36: Team Foundation Server Overview

MSProjectAdd-in• CombineGanttChartsandTFS• TheTasksintheGanttChartwillbecreated/updatedinTFSaswell

36

Page 37: Team Foundation Server Overview

WindowsExplorerIntegration• Partofthe“TFSPowerTools”package

• VeryusefulwhenworkingwithTeamFoundationServeroutsideofVisualStudioorEclipse(usingtoolswithnoTFSintegration)

37

Page 38: Team Foundation Server Overview

TFSMSSCCIProvider• UseTFSine.g.LabVIEW,SQLServer,etc.thatdonthavebuilt-insupportforTFS

38

Page 39: Team Foundation Server Overview

TFSinLabVIEW- Configuration

39

Page 40: Team Foundation Server Overview

TFSinLabVIEW– CheckIn/Out

40

YouneedtousetheProjectExplorer

Page 41: Team Foundation Server Overview

TeamFoundationServer

Hans-PetterHalvorsen,M.Sc.

VisualStudioHow-TouseTFS/VisualStudioOnlineFeaturesinsideVisualStudio

Page 42: Team Foundation Server Overview

UsingTFSwithVisualStudio• ConnecttoTFS• AddSourceCodetoTFS• CheckIn/CheckOut• TeamExplorer• SourceControlExplorer

42

Page 43: Team Foundation Server Overview

TFSinVisualStudio

43

Page 44: Team Foundation Server Overview

44

AddSourceCode

CheckIn

Page 45: Team Foundation Server Overview

Hans-PetterHalvorsen,M.Sc.

ScruminTFSProductBacklog,SprintBacklog,Task

board,BurndownChart

Page 46: Team Foundation Server Overview

UsingTFStocreatetheBacklog

46http://msdn.microsoft.com/en-us/library/ee518933.aspx

Page 47: Team Foundation Server Overview

SprintBackloginTFS

47

Page 48: Team Foundation Server Overview

BreakitemsdownintoTasks

48

Inthesprintbacklog,addatask:

Givethetaskaname,andestimatetheworkitwilltake:

Page 49: Team Foundation Server Overview

49

FinalResults:

Page 50: Team Foundation Server Overview

UsetheTaskbordtoupdateTasks

50

Thetaskboardisattheheartofdailystandups.Movetasksonthetaskboardtoreflecttheircurrentstate.

Page 51: Team Foundation Server Overview

UsetheTaskbordtoupdateTasks

51

Youcanassignatasktoaspecificperson:

Page 52: Team Foundation Server Overview

UsetheTaskbordtoupdateTasks

52

Updatetheremainingworkbyeitherusing thedrop-down listortypingaspecificvalue:

Page 53: Team Foundation Server Overview

BurndownChart

53

Reviewoverallprogressbyopeningtheburndownchartforthesprint:

Page 54: Team Foundation Server Overview

Summary• WehavelotsofdifferentSCC systems• WehavelotsofdifferentALM systems• IfyouareusingVisualStudio,TeamFoundationServerisagoodchoice

• TeamFoundationServeristightlyintegratedintoVisualStudio

• TFScanbeusedwithotherIDEsaswell,e.g.Eclipse(TeamExploreradd-in),LabVIEW(MSSCCIProvider),etc.

54SCC– SourceCodeControlALM– ApplicationLifecycleManagement

Page 55: Team Foundation Server Overview

References• E.Blankenship,M.Woodward,G.Holliday,andB.Keller,Professional

TeamFoundationServer2012:Wiley,2013.• M.Gousset,B.Keller,andM.Woodward,ProfessionalApplication

LifecycleManagementwithVisualStudio2012:Wiley,2013.• I.Sommerville,SoftwareEngineering:Pearson,2010.• S.Adams.Dilbert.Available:http://dilbert.com• O.Widder.(2013).geek&poke.Available:http://geek-and-poke.com• B.Lund.(2013).Lunch.Available:http://www.lunchstriper.no,

http://www.dagbladet.no/tegneserie/lunch/

55

Page 56: Team Foundation Server Overview

Hans-PetterHalvorsen,M.Sc.

UniversityCollegeofSoutheastNorwaywww.usn.no

E-mail:[email protected]:http://home.hit.no/~hansha/