O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Code in the Cloud - Ghent - 20 February 2015

1.061 visualizações

Publicada em

Visual Studio Online is the online home for your development projects. Visual Studio Online connects to Visual Studio, Eclipse, Xcode, and other Git clients to support development for a variety of platforms and languages.

Find out more about how you can use the power of Visual Studio Online to drive your development projects.

Publicada em: Tecnologia
  • Login to see the comments

Code in the Cloud - Ghent - 20 February 2015

  1. 1. Nick Trogh @nicktrog Jan Tielens @jantielens Code in the Cloud Microsoft Developer Camps
  2. 2. Jan Tielens Technical Evangelist, Windows @jantielens Nick Trogh Technical Evangelist, Azure @nicktrog
  3. 3. Introduction Managing your project Working with code Hands-on lab Lunch break Tracking your progress Continuous deployment & monitoring Hands-on lab Closing 9:00 12:00 16:00
  4. 4. Modern app development Continuous value delivery and rapid response to change
  5. 5. Plan, build, deploy and manage applications using a comprehensive suite of services that is accessible to the entire team
  6. 6. BACKLOG REQUIREMENTS No infrastructure overhead | Pay as you use services | Available anywhere | Connected IDE Agile Portfolio Management Kanban customization Work item tagging Work item charts Team Rooms Code discussions Flexible version control Cloud load testing Web-based test management Continuous Deployment Automated builds and CI Application Insights Stakeholder feedback requests Browser-based lightweight IDE
  7. 7. Java in Hosted Builds European Datacenter Azure Active Directory REST APIs Service Hooks
  8. 8. Set up a Visual Studio Online Account and create a team project quickly
  9. 9. Use a customizable backlog and work in sprints to achieve consistent cadences
  10. 10. Connect to projects in Visual Studio Online quickly from Team Explorer
  11. 11. Communicate with team members through Team Rooms, regardless of time zone
  12. 12. Demo
  13. 13. 3) New cloud-only monthly user plans 2) Included for MSDN subscribers Increased value to existing and new MSDN subscribers User plans purchased via Microsoft Azure. 1) Completely free for small teams FREE: 5 users FREE: 60 minutes Cloud Build per month FREE: 20K virtual user mins per month FREE: 5 users Additional users $20/month All users $45/month Max 10 per account with this plan Includes use of the VS Pro IDE All users $60/month
  14. 14.  Unlimited projects/repositories  Agile planning  Work item tracking  Code discussions = Basic capabilities +  Request & manage feedback  Web test case management  View dashboards  Create and edit work items  Task and Kanban boards (read-only)  Work item chart viewing  Team Rooms  Agile Portfolio Management  Web test execution  Build automation
  15. 15. Benefits of an Agile Team
  16. 16. Visibility Time Value Time Value Adaptability Time Value Business Value Time Risk Agile Development Traditional Development Value
  17. 17. scope design plan stage deploy testmonitor triage plan deploy testlog defect build automated testcheck in run code unit test run Business Hypothesis Validated Learnings
  18. 18. Modern App Teams
  19. 19. Product Backlog Customer prioritized customer features Time-boxed Test/Develop Working code Ready for deployment Time-boxed iteration cycles (i.e. 2 weeks) Product Backlog Back log tasks Sprint Backlog Feature assigned to sprint Sprint planning meeting • Review Product Backlog • Estimate Sprint Backlog • Commit Daily Standups • Done since last standup • Plan for today • Any impediments Sprint Review Meeting • Demo features to stakeholders • Retrospective Elaborated and Estimated by team Team Commitment
  20. 20. Sprint 2 – Mobile Workforce
  21. 21. Kanban cards Kanban (かんばん(看 板)?) (literally signboard or billboard) is a scheduling system for lean and just-in- time (JIT) production
  22. 22. Nick Trogh @nicktrog Working with code Code in the Cloud
  23. 23. Source History
  24. 24. Source History History History
  25. 25. Strengths Best for Check-in Check-out • Fine level permission control • Allows usage monitoring • Large integrated codebases • Control and auditability over source code down to the file level • Offline editing support • Easy to edit files outside Visual Studio or Eclipse • Medium-sized integrated codebases • A balance of fine-grained control with reduced friction • Fast offline experience • Complete repository with portable history • Flexible advanced branching model • Modular codebases • Integrating with open source • Highly distributed teams
  26. 26. Team Foundation Server / VS Online Project 2Project 1 3rd Party3rd Party Local Repo Other Remote Git Repo
  27. 27. Demo Using Git
  28. 28. Eclipse IDE Team Explorer Dockable Views Work Items Java Builds
  29. 29. Integrated Code Review Request Review Accept Review Collaborate Associate w/ Changeset
  30. 30. Suspend & Resume Suspend Work Switch Context Multiple Sets Resume Everything
  31. 31.  TDD is a robust way of designing software components (“units”) interactively so that their behavior is specified through unit tests.  Whenever you are tempted to type something into a print statement or a debugger expression, write it as a test instead.  Manual or automated testing is much better for finding bugs.  Automated integration tests are much better for detecting regression (things that used to work but have unexpectedly stopped working). [TestMethod] public void Debit_WithValidAmount_UpdatesBalance() { // arrange double beginningBalance = 11.99; double debitAmount = 4.55; double expected = 7.44; BankAccount account = new BankAccount("Mr. X", beginningBalance); // act account.Debit(debitAmount); // assert double actual = account.Balance; Assert.AreEqual(expected, actual, 0.001, "Account not debited correctly"); }
  32. 32.  Visual Studio Test Explorer is designed to support developers and teams who incorporate unit testing in their software development practices.  Unit testing helps you ensure the correctness of your program by verifying that the application code does what you expect it to do.  In unit testing, you analyze the functionality of your program to discover discrete testable behaviors that you can test as individual units.  You use a unit testing framework to create tests of those behaviors and to report the results of those tests.
  33. 33. Controller
  34. 34. Nick Trogh @nicktrog Continuous Improvement Code in the Cloud
  35. 35. origin master VisualStudio.com http://northwind-test.com Azure Websites Continuous Deploy Push Pull master Local Workstation
  36. 36. origin master VisualStudio.com http://northwind-test.com Azure Websites Continuous Deploy Push Pull master Local Workstation release Merge origin release Push Pull http://northwind- staging.com Continuous Deploy http://northwind.com Deploy
  37. 37. DEV QAINT PROD
  38. 38. DEV QAINT PROD
  39. 39. Release Management Automation Approval Workflow TFS Integration Environments Analytics & Reporting
  40. 40. Monitor and Learn
  41. 41. Movement to the cloud exacerbates the problem – IT is out of the picture, and the picture is a black box.
  42. 42. User experience is what ultimately matters
  43. 43. Plenty of opportunities for things to go wrong Mobile app crashed Server request too slow Database overloaded Downstream service down Feature too hard to use
  44. 44. Performing What’s wrong? Show me performance problems, memory usage, and exceptions The solution – Application Insights Available Is my application available and performing for users? One Dashboard Succeeding Where do we invest next? Show me top features and customer Usage patterns Health Dashboards Notifications & Deep Insights Usage Dashboards
  45. 45. 1. Telemetry is collected at each tier: Mobile applications, server applications and browser 2. Telemetry arrives to Application Insights service where it is processed & stored 3. Get 360° view of the application covering availability, performance & usage Application Insights
  46. 46. • http://aka.ms/devbesmart • Visual Studio Community Edition • Azure Free Trial • MVA Courses: Fundamentals of Visual Studio Online Using Git with Visual Studio 2013 • Follow us

×