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

Post on 12-Jun-2020

1 views 0 download

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

Name: Prashanth Govindaiah/ Ravi JoshiCompany: Infosys Technologies Limited

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

Different roles in a project (A quick recap)

Project Manager

Developers

Sponsor/Mgmt

Tester

UserExperience

Architect

Users IT PM Architect Dev Tester Mgmt

Users √√

IT√

PM√ √ √ √ √ √

Architect√ √ √

Dev√ √ √

Tester√ √ √

Mgmt√

Interaction b/n roles (artifacts)

Process Integration pre VSTSProcess

Integration

Process Integration with VSTS Process

Integration

MSF Agile

MSF CMMI

Customizing Process TemplatesInfosys opted for this approach

Automated the WI Type generation

Choosing templates

HighValue

Process Integration

VSTS IDE for defect addition: details tab

Traceability, attachments and

other tabs retained as in IPM

Defect details same as in IPM

Process Integration

Integration for scheduled tasks

Task details same as in IPM

Process Integration

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

Code ProfilingDetermine performance bottlenecks

and memory usage

Quality

XML Documentation

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

• 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

Branching for Releases

Branching for Features

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

Source Control ManagementBranching and Merging

Team Collaboration Chaos

E-mail

Meetings

IM

Status Reports

PhoneCalls

Text Messaging

TrackingSystem

Productivity

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

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

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

Summary

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

© 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.