4. Applications are the lifeblood of nearly every organization – they attract and engage customers, drive
revenue, differentiate products and services, and automate critical business processes.
The agile transformation and the movement to the cloud create new and exacerbate existing
impediments.
5.
6.
7. BACKLOG
REQUIREMENTS
Quickly detect and
resolve application
issues.
Prioritize and validate
investments based on
qualitative and quantitative
data.
Diagnostics for
production is an
afterthought
10. • Get 360 degree view to
application’s health with
relevant metrics to help
you detect issues in
production.
Set up a view of
your application
health with
metrics that you
care
Identify issues
and patterns with
your application
in production
Check the pulse
of your
application
11. • Get 360 degree view to
application’s health with
relevant metrics to help
you spot issues in
production.
• Get alerted automatically
whenever your application
is not responding properly
according to your
threshold before your
customer notice it.
Automatic alerts
with relevant
Contextual
information
13. • Detect if the problem is your
code or your dependencies
Understand what
failed and why by
drilling down into
failed tests
14. • Detect if the problem is your
code or your dependencies
• Detect when and which release
impacted your application.
Get the necessary
information for your
development team
to review the exact
code deployed
15. • Detect if the problem is your
code or your dependencies
• Detect when and which release
impacted your application.
• Get advanced diagnostics
directly in your Visual Studio to
speed up resolution and
increase efficiency between
Developers and Operations.
Get the code/memory
dump you need directly
in your Dev Environment
17. • Identify systemic issues and
trends affecting application and
infrastructure health
• Prioritize new features, bug
fixes and strategic direction
based on qualitative and
quantitative data
Valuable data at your
finger tips
Validate your investments
18. The solution – Application Insights
Available
Is my application available and
performing for users?
One Dashboard
ImprovingPerforming
What’s wrong?
Show me suspicious code and test cases
Where do we invest next?
Show me top features and customer
Usage patterns
Health Dashboards Notifications & Deep Insights Usage Dashboards
21. Tuesday (today) 4:30-5:30
The session will include:
• Practical guidance on application analytics implementations
• Demonstrations of another application analytics option
• Functionality already included with Visual Studio 2012 and 2013
• On-premises solution (analytics storage and Team Foundation Server integration)
• Support for non-MSFT runtimes
Application Analytics: What every application
stakeholder should know
Today, every company is a software company, “whether you know it or not, you are almost certainly in the software business.” Software runs the critical infrastructure of nearly every modern business, and for the best companies, it provides a key competitive differentiator.
As companies start embracing agility and taking advantage of the elasticity and economics of consuming cloud services the complexity increases, creating more points of failures and making more complicated to ensure those applications that run critical parts of your company and engage with your customer are optimally working and when they don’t you can restore a good state as soon as possible.
So how do you increase responsiveness without creating unnecessary risk? How can you stay flexible and still keep a strategy and goals in view? How do you juggle agility with all of the other new demands on the success of your business? And ensure you continue investing in solutions that will give you a differentiator advantage?
Time: 1 minute
Flow:
Modern ALM and the evolving industry, particularly around the areas of diverse, distributed, and self organizing teams have driven the need for agility not just in the way we develop software, but in the way we deliver software.
More and more teams are moving towards autonomy where they are truly cross-functional and own their entire lifecycle. Whether this is motivated out of a desire for greater agility or simply stems from the size of the organization, the benefits are clear: shorter cycle times and increased customer collaboration.
Whether you’re a small team that doesn’t have an Operations department, or a large organization looking to ensure that operations can keep up with the increased pace of your agile teams you need a solution that fosters agility throughout the entire application lifecycle.
Quotes to look for:
“…you need a solution that fosters agility throughout the entire application lifecycle”
Narrative guidance:
Modern ALM and the evolving industry, particularly around the areas of diverse, distributed, and self organizing teams have driven the need for agility not just in the way we develop software, but in the way we deliver software. Whether you’re a small team that doesn’t have an Operations department, or a large organization looking to ensure that operations can keep up with the increased pace of your agile teams you need a solution that fosters agility throughout the entire application lifecycle.
Transition to next slide:
When Visual Studio 2012 was launched, the team at Microsoft committed to transforming the solutions we provide and the way we work ourselves.
The cloud and geographic customer distribution take the problems of monitoring your applications to a whole new level.
[Click1] You need to be able to detect when your application is not available, or not performing to your specification or to the expectations of your customer. Yon need to be able to diagnose and solve application issues as quickly as possible, with details that help your developers diagnose complex scenarios
[Click2] You need to determine your next set of investments, and prioritize any technical debt or quality improvement efforts. You need access to data that can help you make informed decisions.
{Click3] We believe analytics should be integrated and accessible throughout development cycle, enabling development teams to monitor applications with minimal effort and to learn from the information collected.
Customers can start getting insights into their applications at their own pace…
Level 1 – Basic Availability – Non-invasive, no need to re-deploy or code changes.
Start getting outside-in monitoring with ping test/synthetic transactions, by configuring URL, ping or deploy existing web tests and get 16 global points of presence.
Level 2 – Basic Performance: No code changes required. Install agent (Microsoft Monitoring agent) on platform
Level 3 – Application usage: Inject agent into application - little or no developer effort
Level 4 – Customer telemetry – Using SDK, developer emits custom event to the service
So let’s take each one of these impediments.
First you want to minimize the time that it takes to detect any abnormalities or issues with your application, and have visibility to your application’s health.
Having a 360 degree view to your application’s availability and performance, allows you to detect issues and events that could affect your application. And when issues occur, be automatically alerted and have relevant metric that allow you to resolve them
Reduce the Mean Time To Detect the issue, and minimize outage time and impact to customers
Application Insights provides out of box dashboards that help you detect issues in production before your customer experiences them. You can set up a custom view of your application’s health with metrics that are important for you and your business.
You can get alerted automatically whenever your application is not responding to your specifications, enabling you to pro-actively resolve any issues and preventing customer impact.
Problem - You try to ensure your application is constructed with high quality. But there are unforeseen conditions or usage patterns that can happen in production to impact your application’s availability. When this happens you need to be able to restore your application to a good state as soon as possible. You need to reduce the mean time to repair (MTTR).
Solution - To detect the root cause of issues quickly, you need access production data as it was when the incident occurred. You need the ability to pull the exact code that was deployed and executing, and go to the suspicious line of code. Memory problems, while their occurrence is less common, are very difficult to diagnose - to the extent that having tools to view the full memory stack is a critical need in solving these problems as soon as possible,
Value - Reducing MTTR, reduces customer impact and increasing team efficiency
By reusing your test scripts, you can detect if the problem is your code or your dependencies.
You can see what changes were introduced that could impact your application’s availability
You can get advance diagnostics directly in your visual studio, to speed up issue resolution and increase efficiency between Dev and Ops.
Too often, determining the next set of investments is difficult. Without insights into what customers are REALLY doing and experiencing, planning becomes mostly a guessing game, increasing the probability of making poor decisions.
By having visibility to usage data, companies can prioritize and validate their investment decisions, allowing them to continuous learn and deliver more value
By having access to data from different data points in one dashboard, development teams can identify systemic issues and trends affecting applications and overall infrastructure health
They can learn from usage data to make informed decisions based on qualitative and quantitative data
Visual Studio Online Application Insights provides a 360 degree view of your applications, collecting rich operational, performance, and customer usage information from your applications, whether they run on-premises, in Azure, third-party cloud providers, or a mixture of all three.
This empowers you to:
Pro-actively monitor that your applications are available and
Performing as expected, and when they aren’t, to provide information that helps you to resolve them promptly.
Use information to continuously improve your applications and prioritize future investments.
Time: 2 minutes
Flow:
We have had an end to end ALM solution for many years with Team Foundation Server on-premises which is built on a core set of capabilities to help development teams:
Source control
Agile planning tools
Team rooms
Test case management
Feedback management and
Automated builds
Layered on top of that core ALM functionality, Team Foundation Server has the ability to
Manage, deploy to, and test on environments with Lab Management
Configure and manage releases with Release Manager
Perform on premises load testing
Integrate completely with SharePoint and customized SharePoint sites
Integrate seamlessly with Project Server and System Center
We are now introducing Visual Studio Online which builds on top of that core ALM functionality as well and provides additional capabilities and unique services like:
Cloud Build Service
Cloud Load Testing Service
Application Insights
Continuous deployment to Microsoft Azure
Lightweight Code Editing Experience
Microsoft’s ALM toolset is flexible and allows you to adopt a mixture of on-premises or cloud-based services. You can even use TFS on-premises and use services on Visual Studio Online that make sense to your team like the Load Testing Service and Application Insights.
Transition to next slide:
We’ll explore these services and more in depth throughout the rest of this presentation.
Who here is NOT a developer?
Welcome! Application analytics most definitely relevant to every application stakeholder – not just the technicians who build and operate them.
Time: 3 minutes
Flow:
Application Insights for Visual Studio Online provides a 360 degree view of your applications, empowering you to:
Pro-actively monitor your applications and ensure they are available and performing as expected, and when they aren’t give you information that helps you to resolve them promptly.
Give you information to continuously improve your applications and prioritize future investments.
By collecting rich operational, performance, and customer usage information from your applications whether they run on-premises, in Azure, third-party cloud providers, or a mixture of all three.
It begins by collecting telemetry data at the point of usage, everything from performance data to customizable event logs.
The data is processed by our Application Insights service
The processed data is presented through the Visual Studio Online web portal; giving you a up to the minute 360 degree view of the health of your application
The same agents that collect data for Application Insights can even report information to System Center
Most importantly, Application Insights drives telemetry data collection into your lifecycle management solution.
Transition to next slide:
So you’re interested. Here’s how you get it