name: prashanth govindaiah/ ravi joshi company: infosys...
TRANSCRIPT
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
Custom Rules
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
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.