4. Desktop apps
Windows Store apps
Browser-based applications
Project Astoria
Project InslandWood
Hybrid Apps
Apache Cordova
Project “Westminster”
5.
6. MICROSOFT CONFIDENTIAL
Easy for users to get
& stay current
Unified core
and app platform
Our Windows convergence is “almost” complete
Windows 10
Converged
OS kernel
Converged
app model
29/07
Lançamento
15. O ciclo DevOps
2) Versionamento
1. Desenvolvedores
3) Build 4) Teste 5. Deploy
Monitoramento e
melhorias
Contoso app
Azure
16. Plan
1 Monitor + Learn
ReleaseDevelop + Test
2
Development Production
4
3
17. Plan
1 Monitor + Learn
ReleaseDevelop + Test
2
Development Production
4
3
18. It starts with an idea – and a plan
how to turn this idea into reality …
Manage work
Develop + Test 1
Plan
Project starts
PlanTrack progress
19. •Add fields to cards, board filtering
•Card configuration options
•@CurrentIteration, Kanban reordering
and DoD and bugs on the task board
•Kanban split columns, inline adding and
editing
•VS Online Basic license expanded
20. • Porfolio backlog levels: Customize o
nível de abstração e escala de seus
projetos, agora oferecendo também a
possibilidade de ter o nível Epic na
visão de portfolio.
21. Write Code
Unit Testing
2
Build
Version Control
Build Verification
Release
Once the iteration starts, developers
turn great ideas into features …
Develop + Test
23. • Diagnostic Tools +
Intellitrace: Depuração
avançada de código e análise
de performance da aplicação
24. • Intellitest: Crie testes unitários
automaticamente e estresse
todas as possibilidades
25. • Gated Checkin: Dispare novos
builds através de políticas de
validação de Pull Requests, não
permitindo que seja
promovido o Pull Request no
caso de falha do Build
26. • Aprovação Obrigatória:
Solicite membros do time a
aprovarem o Pull Request e
garanta a obrigatoriedade de
sua aprovação para
continuação do processo
27. • Build direto de uma URL
GITHUB: Build projetos diretos
de URLs GIT HUB
28. • Auto updating build agents – There’s no need to run
around and update all your build agents any more. The
server/service will automatically distribute agent
updates. This won’t change any of the tools (compilers,
etc) just the build automation agent.
• Seamless integration with XAML builds – Build.vnext
definitions and the earlier XAML build definitions now
share the same Build tab and can coexist happily.
• Build Java projects – Ant, Maven, Gradle.
• Run unit tests and publish results – We now have a task
to run unit tests using just about any framework you like
– NUnit, MSTest, JUnit, etc. and publish the test results
back to VSO/TFS and include them in the build report.
• Support for Xamarin – We’ve added support for
building Xamarin apps for both iOS and Android. And
we’ve added support for running tests on Xamarin’s Test
Cloud as part of the build. Shortly, we will also enable
publishing the Test Cloud test results back to VSO/TFS.
31. Cloud
Load Testing
Integration testing
environment
Automated functional
testing environment
3
Pre-production
environment
Staging
environmen
t
Monitor + Learn
When all tests pass, the build is deployed to testing
environments for each stage in the release process
Release
32. • Browser based release management
experience – We’re introducing a “Release”
hub in our web experience that allows you to
manage releases from anywhere without any
client software installed.
• Orchestrate across multiple environments –
A release definition can describe a set of
environments, a deployment sequence and a
set of validations (like automated tests) and
approvals that are executed at each
stage. This allows you to manage the flow of
updates from check in through to production
deployment in a controlled fashion.
• Simple and easy to compose automation
pipeline – As I mentioned above, release
management uses the same simple, extensible
pipeline and task mechanism that Build.vnext
does but wraps it in an experience for release
pipelines.
33. • Auditing/Traceability – All release and
deployment operations are traced and
audited – providing a clear picture of what
succeeded and failed, who approved
deployments and who made changes to
the release definition and what changes
were made. We also provide and easy way
to see the state of each environment and
what software is deployed on it.
• Open architecture – Our release
management features don’t rely on you
using all the rest of VSO/TFS. You can use
just release management even if you are
using SVN, Jenkins, etc.
34. • Functional testing service – We have a new service that works in concert with release management to
automatically deploy test agents and tests. It will then execute those tests, possibly in parallel and report
the results back to TFS/VSO. These functional tests can be VS Coded UI tests, Selenium tests, Appium tests
and more… The results of these tests can be used in the release pipeline to automatically validate
deployments.
• Load tests – load tests as part of the
release management pipeline so that you
can validate performance, scale and
reliability as part of your automated release
sign-off process. VSO cloud load test
service to support runs of up to 200 cores,
enabling very large scale load tests.
• Test analysis – new test analysis experience
in the test hub that allows you to
review/investigate test results, file bugs,
etc. This is linked directly from the test
results you find in both the build and
release reports
36. CI / Github, VSO, etc.
2) Code Repository
1) Developers
4) Deploy to slot 5) Test or A/B Test
7) Deploy to Cloud6) Monitor and Improve
Azure
3) Build
Contoso App
6) Swap
49. Learn and understand how users use your app, how it reacts
and quickly fix issues and bugs
Monitor + Learn
4
Monitor
Feedback
Plan the next iteration
50. Am I meeting my service KPIs?
What is the root cause?
Is my application loading fast enough?
Is my application UP or DOWN?
How many people are impacted?
Is my application crashing?
What features are my customers using?
How responsive are my dependency calls?
How good is the end user experience?
Faced these questions?
53. Key features
Get a 360° view of
your application that
includes availability and
performance as well as
user behavior
Explore and analyze
across dimensions so
you can make informed
decisions about your
product’s future
Use a powerful, easy-
to-use experience to
track and improve the
availability, performance,
and success of your app
54. Out of the box experience
• Provides a summary of the application’s health - availability, performance and
usage
• Paired timeline allows users to quickly correlate metrics and identify trends
55. Detailed insights with the click of a
button
• Correlate performance and usage in a single view
• Pinpoint problems and investigate
questions like “Do I have network
performance issues that hurt user
adoption?”
• Click on specific metric and drill into
detailed information and answer
questions such as “what request is
failing the most?”
56. Powerful insights with Metrics Explorer and Diagnostic Search
• Metrics Explorer provides a flexible multi-dimensional UI over custom and
out-of-the-box telemetry collected
• Diagnostic Search enables
efficient search over large
sets of data using the
query experience
57. Any app support
• Easily add analytics across multiple platforms
including: ASP.NET, Java/J2EE, iOS, Android,
Windows, as well as OSS technologies such
as Node.JS, PHP, Ruby, Python, etc.
58. • Fácil acesso as informações do Team
Foundation Server
• Crie suas Queries sem linhas de
programação
• Recursos ricos de reporting e análise
59.
60.
61. Introdução ao Visual Studio Enterprise
Visual Studio Enterprise
O Visual Studio Enterprise 2015 com
MSDN é uma solução abrangente
para a criação, modernização e
operação de aplicativos de negócios
em equipes que utilizam toda a
plataforma corporativa da Microsoft
para garantir escala corporativa,
gerenciar a complexidade e simplificar
a integração entre as equipes de
desenvolvimento e de operações.
62.
63.
64.
65.
66.
67. Permita um ciclo de vida moderno de aplicativos: você constrói, você testa, você executa
Acesso a praticamente todos os produtos da Microsoft para todos os desenvolvedores
Acesso a um maior controle de qualidade, análises e de desempenho durante todo o processo
Recursos avançados para todos os desenvolvedores
68.
69.
70. O Visual Studio e a Microsoft podem ajudar...
Plataforma pronta para a empresa
que integra experiências modernas
de aplicativos com os ativos de
negócios existentes.
Visual Studio Microsoft Azure
Developers using the native platform technologies: Developers in this group create native applications for each device, by using the native tools provided by every vendor (xCode in iOS, Android Developer Tools in Android, Visual Studio / .NET in Windows, etc.). These developers struggle with the ability to reuse code and skills between devices or target new devices with their existing skills on a specific technology (e.g. .NET developers). Therefore they are looking for Cross-Platform Mobile Native apps solutions.
Developers using web technologies: Developers in this category use web technologies such as HTML5 and JavaScript to create browser-based applications that target mobile devices. The browser is constrained developers struggle with the ability to create applications that can leverage the full capabilities of the devices they target and therefore are looking for Multi-device Hybrid solutions.
Desktop reassurance
WPF core investments
Access to modern features
Common distribution
Easier transition to Store apps
Optimize for devices
Universal apps and native compilation
Cross-device Windows, iOS, Android native apps (thru Xamarin)
Modern web
Productive HTML5 development
Highly interactive web with JavaScript and TypeScript
Ready for Enterprise LOB apps and cloud modernization
Embrace hybrid apps
Cordova tooling support built on existing Modern Web support in
Visual Studio and TypeScript.
Android, iOS support including the entire developer flow.
Fully native apps written in C#
Share on average 75% source code across platforms
Even higher with xamarin.forms
C# + .NET Runtime
Native UI
Native Performance
[2min]
This preview adds new project templates and tools for you to target the Apache Cordova project within Visual Studio. It is built on top the existing great HTML, CSS and JavaScript tooling in Visual Studio, but it integrates it with Apache Cordova, so you have things like intellisense support for the Cordova API, build for any targeted platform such as Android and directly from Visual Studio, run and debug the app on a device emulator or a remote device.
The cool thing about these tools is that you will naturally know how to use it if you are familiar with web development. It supports TypeScript, which is very handy for these applications that can get very complex. It also supports the most popular JavaScript frameworks that you are probably using already for your mobile web applications such as Angular, JQuery Mobile or Backbone.
Now you have the option to choose the multi-device strategy that is better for you:
Native development with .NET
Hybrid development with HTML and CSS
[Slide goal]
Introduce and define DevOps
[Talk track]
DevOps is about improving how software is built, delivered, and operated – by enabling IT department to reduce cycle times, optimize the use of IT resources, and improve quality and availability.
DevOps is a relatively new term; people refer to individual capabilities to automate the delivery pipeline as DevOps. However, DevOps is more than that. It is about increasing the scope of agility and it should be viewed as a team undertaking. It requires teams to look at their full lifecycle investments.
At its core DevOps enables better software development and accelerating the last mile of delivery by focusing on:
Shortening of cycle times
DevOps practices enable organizations to shorten cycle times and increase the traceability and auditability of each release by increasing transparency and collaboration between development and operations teams, and by eliminating waste in current manual processes through automation.
Optimization of resources
DevOps practices enable organizations to efficiently manage environments in a way that supports self-service of environment provisioning/de-provisioning, controls costs, and uses the provisioned resources effectively, while minimizing security risks.
Improving quality and availability
DevOps practices help to identify defects early in the development cycle, identify the root cause of issues, and quickly test and deploy fixes. DevOps practices also help organizations capture rich telemetry on app performance and usage so teams can learn from the behavior of users to drive future priorities and investments.
What we want to show (similar to this slide):
Keep steps 1,2
Replace 3 with Deploy to staging slot (appropriate icon)
Put build after the deploy to slot
Keep test
Add new step for “swap”
Keep the monitor and improve
What we want to show:
Developer pushes a new version of the code to a test slot
20% of traffic goes to that slot
Things are green so the % keeps going up
Something breaks, % goes back to 100 on the old version
For the success of features we’re investing in a “Build, Measure, Learn” culture.
<talk about BML>
Let me give you a recent example…