Cloud continuous integration- A distributed approach using distinct services
Improving The Software Development Lifecycle With Visual Studio Team System
1.
2. About Avanade Avanade is the leading technology integrator specializing in the Microsoft enterprise platform. Our people help customers around the world maximise their IT investment and create comprehensive solutions that drive business results.
3.
4.
5.
6. Visual Studio Team System Visual Studio Team Suite MSF Process and Guidance Visual Studio Team Foundation Server Visual Studio Industry Partners Software Architects Software Developers Software Testers Database Professionals Visual Studio Team Explorer Application Modeling Infrastructure and Deployment Modeling Code Analysis Performance Tuning Security Analysis Database Deployment Database Change Mgmt. Database Testing Performance Testing Manual Testing Test Case Management Visual Studio Professional Edition Change Management Work Item Tracking Reporting Project Site Integration Services Project Management Load Test Agent Visio and UML Modeling Class Modeling Unit Testing Code Coverage
10. Blind Spots The X-axis identifies different components of your project; the bars show you the test pass rate for each component, while the points and line show the active bug count. Overlaying code coverage and code churn for the components provides a very different perspective on the data. So the Instore Pickup Kiosk code is in great shape right? There's a danger of relying on too few metrics!
21. Team Foundation Architecture Primary AT Server Database Clustering Team Foundation Data Tier Team Foundation App Tier Build Machines Version Control Proxy Report Client Team Foundation Client Tier App Tier Standby Server
22.
23.
24.
25.
26. VSTS – Project Server Integration Visual Studio 2005 Team System MS Project Server VSTS Project Server Connector Work Item Tracking System Reporting VSTS Data Warehouse VSTS Team project data Reporting Workplan Creation Project Server Data Warehouse Project Server Work Plan data Team Project Creation Work Plan Creation Synchronisation Work Items / Work Plan Project Server cubes VSTS cubes + Richer Reporting project actuals Import/Export Synchro Guidance MS Excel based Work Plans MS Project based Work Plans VSTS cubes
27.
28.
29.
30. Adding Continuous Integration to VSTS Team Foundation Build Check-in Notifications Team Foundation Version Control Team Foundation Version Control Developer Workstation B Developer Workstation A Source Code check-in Source Code check-in Continuous Integration Service Initiates Team Build Email Notification (Reports, Errors…)
31.
32. Custom Check-in Policy Design Policy Storage Server (Version Control) Policy definition client Plug in #1 Plug in #2 Team Explorer in VS.NET Policy evaluation client Plug in #1 Plug in #2 Source Control clients New/modified policy definitions Policy definitions appropriate for check-in Policy Definition Policy Evaluation
33. Traceability between code and work items Source files to check in … … with Work Items done… … and Check-in Notes and Policy Status
41. Example Roadmap Design Solution Proof of Concept Deploy Goal of Phase Confirm understanding of requirements Prove value of solution Ensure Success Deliverables Design solution Plan infrastructure Plan process improvements Infrastructure set up User training Create assets Build setup Proof of concept Implement process changes Infrastructure rollout User training Migrate assets Long term roadmap for improvements Exit Criteria Define success criteria Validate success criteria Process improvement
Real time reporting from data warehouse Gather descriptive metrics Find the bottlenecks Answer everyday questions e.g. Which customer requirements have been tested? What is the quality? Where Do We Need To Shift Resources? How Far Can We Get In The Available Time? How Effective Is Our Outsourced Team? Can We Demonstrate Our Practices For The Auditor? How did the team perform last time? Descriptive versus prescriptive metrics
Multi-dimensional view of project data Prescriptive versus descriptive metrics
Changesets group together sets of related files into logical units of work Enforce links between changesets and work items at the time of check-in
Team collaboration Visibility to all project stakeholders
Traceability ensures test coverage.
No more manually compiled release notes (or no release notes). Automated release notes tell us precisely what changes are in each build.
Project Managers and Resource Managers continue to work in the EPM environment while the development team works in the VSTS development environment, and data seamlessly flows between the two systems by virtue of the connector