Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys...

28

Transcript of Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys...

Page 1: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.
Page 2: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Name: Prashanth Govindaiah/ Ravi JoshiCompany: Infosys Technologies Limited

Page 3: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Integration of Engineering and the Project Management Process• Process Integration•Process customization

Enhancing Productivity•Out of the box tools•Team Build

Ensuring Quality of the Software•FxCop•Custom Policy

Distributed Development•TFS Proxy•Branching and Merging

Session Agenda

Page 4: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Different roles in a project (A quick recap)

Project Manager

Developers

Sponsor/Mgmt

Tester

UserExperience

Architect

Page 5: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Users IT PM Architect Dev Tester Mgmt

Users √√

IT√

PM√ √ √ √ √ √

Architect√ √ √

Dev√ √ √

Tester√ √ √

Mgmt√

Interaction b/n roles (artifacts)

Page 6: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Process Integration pre VSTSProcess

Integration

Page 7: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Process Integration with VSTS Process

Integration

Page 8: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

MSF Agile

MSF CMMI

Customizing Process TemplatesInfosys opted for this approach

Automated the WI Type generation

Choosing templates

HighValue

Process Integration

Page 9: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

VSTS IDE for defect addition: details tab

Traceability, attachments and

other tabs retained as in IPM

Defect details same as in IPM

Process Integration

Page 10: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Integration for scheduled tasks

Task details same as in IPM

Process Integration

Page 11: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Static Code Analyzer CustomizationFeatures

A set of rules and guidelines on Design, Performance, Usage aspects of an application

40 New rules on Infosys Coding standards and guidelines added

Team Foundation Server implementation and customization of source control check-in policies

BenefitsDevelopers checks in code which is complaint with standards

Helps in automating code review process

Brought substantial reduction in standards related defects (73% improvement)

Static Code Analyzer

Code Check - in

Infosys Rules violations

Quality

Page 13: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Code ProfilingDetermine performance bottlenecks

and memory usage

Quality

Page 14: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

XML Documentation

Page 15: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Distributed Development

AutomatedBuild

Build Server

Bengaluru

Staging Production

Test Results

Testing Environment

Functional andLoad Testing

Test Results

Bugs

Distributed Development

Chennai

Source Code

TFS Proxy

Mysooru

Source Code

TFS Proxy

TFS Server

Build DropBuild Breaks

Page 16: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

• Good for small teams

• No isolation

No Branching

• Develop in a release

• Merge back to Main when released

Branch for Release

• Branch when doing maintenance

Branch for Maintenance

• Merge each feature into Main

Branch for Features

• Branch for each sub-team

Branch for Team

Branching and Merging: StrategyDistributed

Development

Page 17: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Branching for Releases

Page 18: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Branching for Features

Page 19: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Anti PatternsBranch Mania: Do not branch too deeply

Merge Mania: Spend lot of time in merging

Cascading branches: Keeping creating branches without merging

Temporary Branches which become permanent

… lots more

Branch at a high level to include config and source

Use Label where possible

Is Merging fun?

Branching and Merging: TipsDistributed

Development

Page 20: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Source Control ManagementBranching and Merging

Page 21: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Team Collaboration Chaos

E-mail

Meetings

IM

Status Reports

PhoneCalls

Text Messaging

TrackingSystem

Productivity

Page 22: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Flavors of VSTS

Architects: Application /System Designer, Data Center, Deployment and Class Designer

Developers: Code Analyzer, Profiler, Coverage, DB professionals, Code Generator (GAT & Extensions)

Testing: Unit Test, Web Test, Load Test

Server side Tools

Build Automation

Team Plain (Team Foundation server Web Access)

Driving Team Efficiency and ProductivityProductivity

Page 23: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Extending support for 100+ .NET 1.1 applications using MSCCI Provider for VS2003

Extending Team Build (ideally)Upgrade projects and solutions to 2005 and then use MSBee (MSBuild Toolkit Extras for .NET 1.1)

TFS and Team Build Adoption Productivity

Page 24: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Custom Solutions using TFS APIInfosys’s Impact Analysis Tool catering to the need to maintenance projects. Helps in performing Impact analysis across projects and DB objects

Pre-TFS Era: Depended on Release Systems and File StoresInvolved Manual checks and corrections

Metadata extraction was not possible

Files were at times duplicated

TFS as Source file provider: Extracted ProgrammaticallyCentralized source

Completely automated

Duplications eliminated

Access to different versions were possible

Productivity

Page 25: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Summary

Page 27: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

Track Resourceshttp://msdn.microsoft.com/en-us/library/ms391945(VS.80).aspx

http://msdn.microsoft.com/en-us/library/ms364093(VS.80).aspx

http://msdn.microsoft.com/en-us/library/aa730884(VS.80).aspx

http://msdn.microsoft.com/en-us/library/bb187355(VS.80).aspx

http://msdn.microsoft.com/en-us/magazine/cc163320.aspx

http://blogs.vertigosoftware.com/teamsystem/archive/2006/07/03/Subscribing_to_Team_Foundation_Server_Events.aspx

http://download.microsoft.com/download/f/f/4/ff42638f-4067-45b6-9cc3-dee2a67da740/Infosys%20VSTS%20Integration%20Case%20Study_Final.doc

http://www.infosys.com/microsoft/resource-center/evaluating-microsoft-visual-studio-team-system.pdf

Page 28: Name: Prashanth Govindaiah/ Ravi Joshi Company: Infosys ...€¦ · TFS adoption at Infosys Migration of 150+ projects from VSS to TFS using VSSConverter tools provided by Microsoft.

© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS,

IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.