SlideShare ist ein Scribd-Unternehmen logo
1 von 65
• Introduction
• Managing your project
• Working with code
• Tracking your progress
• Continuous
• Lunch break
• Getting your hands dirty
Modern app
development
Continuous value
delivery and rapid
response to change
Industry trends
DevOps: the three stage conversation
3 Products2 Process1 People
Visual Studio
Update 1
Visual Studio
Update 2
Visual Studio
Update N
Visual Studio Online
Visual Studio continuous value delivery
Plan, build, deploy and manage
applications using a comprehensive
suite of services that is accessible to the
entire team
ALM your way
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
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: 15K 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
 Unlimited projects/repositories
 Agile planning
 Work item tracking
 Code discussions
 Work item chart viewing
= Basic capabilities +
 Agile Portfolio Management
 Team Rooms
 Work item chart authoring
 Request & manage feedback
= Advanced capabilities +
 Web test case management
Benefits of an Agile
Team
Visibility
Time
Value
Time
Value
Adaptability
Time
Value
Business Value
Time
Risk
Agile Development Traditional Development
Value
scope
design
plan
stage
deploy
testmonitor
triage
plan
deploy
testlog defect
build
automated
testcheck
in
run
code
unit
test
run
Business
Hypothesis
Validated
Learnings
Modern App Teams
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
Sprint 2 – Mobile Workforce
Kanban cards
Kanban (かんばん(看
板)?) (literally
signboard or
billboard) is a
scheduling system
for lean and just-in-
time (JIT) production
Modern Version
Control
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
Source History
Source History
History History
Team Foundation Server / VS Online
Project 2Project 1
3rd Party3rd Party
Local
Repo
Other
Remote Git
Repo
Git fully integrated
into TFS
 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");
}
 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.
Controller
Business
challenges
Customers desire frequent
updates
Comprehensive manual
testing can impede delivery
speed
Long cycle times result in
increased defects and
decreased quality
Solutions
Reduce scope of feature set
Integrate new features
frequently
Use gated check-in to ensure
unit tests are run
Automate build processes
Minimize code churn after
breakage
Business value
Shorter cycle times lead to
quicker delivery of value
Enforced unit testing
increases quality threshold
Release of quality code
ensures continual value
delivery
Continuous integration
automatically creates a
build after check-in
Create multiple build definitions
to support various build scenarios
Configure the gated check-in
build to fail if a test fails, ensuring
the code won’t be checked in
Identify specific test to be run
during the gated check-in build
Continuous
Deployment
Modern Release
Management
Deploying early and often delivers business value fast, generates early
customer feedback and ensures ‘Go Live’ day ends with Champagne
and not a sleepless night
origin
master VisualStudio.com
http://northwind-test.com
Azure Websites
Continuous Deploy
Push Pull
master Local Workstation
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
Monitoring
Applications
Movement to the cloud exacerbates the problem – IT is out of the picture, and the picture is a black
box.
User experience is what
ultimately matters
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
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
platform
infrastructure
app
1
3
4
5
Outside-in monitoring
Developer-emitted traces and events
Observed application behavior
Infrastructure performance
URL pings and web tests from global points
of presence
Whatever the developer would like to send
to Application Insights
No coding required – service dependencies,
queries, response time, exceptions, logs, etc.
System performance counters
2 Observed user behavior
How is the application being used?
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
Code in the Cloud - December 8th 2014

Weitere ähnliche Inhalte

Was ist angesagt?

Info Card - Techical Debt Management
Info Card  - Techical Debt ManagementInfo Card  - Techical Debt Management
Info Card - Techical Debt ManagementFabricio Epaminondas
 
ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)Terry Cho
 
5 incredibly useful next gen test automation tool features
5 incredibly useful next gen test automation tool features5 incredibly useful next gen test automation tool features
5 incredibly useful next gen test automation tool featuresNeha Mutalik
 
Performance Testing in Agile Process
Performance Testing in Agile ProcessPerformance Testing in Agile Process
Performance Testing in Agile ProcessIdexcel Technologies
 
qawithmicrosofttestmanagerandlabmanagement
qawithmicrosofttestmanagerandlabmanagementqawithmicrosofttestmanagerandlabmanagement
qawithmicrosofttestmanagerandlabmanagementsunil singh
 
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENTROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENTIndium Software
 
Agile testing - Principles and best practices
Agile testing  - Principles and best practicesAgile testing  - Principles and best practices
Agile testing - Principles and best practicesDr Ganesh Iyer
 
Implementing DevOps at Scale Using Dynamic Environments
Implementing DevOps at Scale Using Dynamic EnvironmentsImplementing DevOps at Scale Using Dynamic Environments
Implementing DevOps at Scale Using Dynamic EnvironmentsSauce Labs
 
Zephyr 2.6: Comprehensive Test Management
Zephyr 2.6: Comprehensive Test ManagementZephyr 2.6: Comprehensive Test Management
Zephyr 2.6: Comprehensive Test ManagementZephyr
 
Load and Performance tests in agile scrum framework SGI 2013
Load and Performance tests in agile scrum framework SGI 2013Load and Performance tests in agile scrum framework SGI 2013
Load and Performance tests in agile scrum framework SGI 2013Subrahmaniam S.R.V
 
Application Lifecycle Management with TFS
Application Lifecycle Management with TFSApplication Lifecycle Management with TFS
Application Lifecycle Management with TFSMehdi Khalili
 
Addressing Performance Testing Challenges in Agile- Impetus Webinar
Addressing Performance Testing Challenges in Agile- Impetus WebinarAddressing Performance Testing Challenges in Agile- Impetus Webinar
Addressing Performance Testing Challenges in Agile- Impetus WebinarImpetus Technologies
 
Incorporating Performance Testing in Agile Development Process
Incorporating Performance Testing in Agile Development ProcessIncorporating Performance Testing in Agile Development Process
Incorporating Performance Testing in Agile Development ProcessMichael Vax
 
Scrum Portugal Meeting 1 Lisbon - ALM
Scrum Portugal Meeting 1 Lisbon - ALMScrum Portugal Meeting 1 Lisbon - ALM
Scrum Portugal Meeting 1 Lisbon - ALMMarco Silva
 
DevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesDevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesIBM UrbanCode Products
 
Selenium RC, Selenium WebDriver and HP LoadRunner
Selenium RC, Selenium WebDriver and HP LoadRunnerSelenium RC, Selenium WebDriver and HP LoadRunner
Selenium RC, Selenium WebDriver and HP LoadRunnerMurageppa-QA
 
How to integrate JIRA with test processes? Overview architecture
How to integrate JIRA with test processes? Overview architectureHow to integrate JIRA with test processes? Overview architecture
How to integrate JIRA with test processes? Overview architectureMarcel Diepenbroek
 

Was ist angesagt? (20)

Info Card - Techical Debt Management
Info Card  - Techical Debt ManagementInfo Card  - Techical Debt Management
Info Card - Techical Debt Management
 
Jira
JiraJira
Jira
 
ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)
 
5 incredibly useful next gen test automation tool features
5 incredibly useful next gen test automation tool features5 incredibly useful next gen test automation tool features
5 incredibly useful next gen test automation tool features
 
Devops
DevopsDevops
Devops
 
Performance Testing in Agile Process
Performance Testing in Agile ProcessPerformance Testing in Agile Process
Performance Testing in Agile Process
 
qawithmicrosofttestmanagerandlabmanagement
qawithmicrosofttestmanagerandlabmanagementqawithmicrosofttestmanagerandlabmanagement
qawithmicrosofttestmanagerandlabmanagement
 
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENTROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
 
Agile testing - Principles and best practices
Agile testing  - Principles and best practicesAgile testing  - Principles and best practices
Agile testing - Principles and best practices
 
Implementing DevOps at Scale Using Dynamic Environments
Implementing DevOps at Scale Using Dynamic EnvironmentsImplementing DevOps at Scale Using Dynamic Environments
Implementing DevOps at Scale Using Dynamic Environments
 
Zephyr 2.6: Comprehensive Test Management
Zephyr 2.6: Comprehensive Test ManagementZephyr 2.6: Comprehensive Test Management
Zephyr 2.6: Comprehensive Test Management
 
Load and Performance tests in agile scrum framework SGI 2013
Load and Performance tests in agile scrum framework SGI 2013Load and Performance tests in agile scrum framework SGI 2013
Load and Performance tests in agile scrum framework SGI 2013
 
Application Lifecycle Management with TFS
Application Lifecycle Management with TFSApplication Lifecycle Management with TFS
Application Lifecycle Management with TFS
 
Agile process
Agile processAgile process
Agile process
 
Addressing Performance Testing Challenges in Agile- Impetus Webinar
Addressing Performance Testing Challenges in Agile- Impetus WebinarAddressing Performance Testing Challenges in Agile- Impetus Webinar
Addressing Performance Testing Challenges in Agile- Impetus Webinar
 
Incorporating Performance Testing in Agile Development Process
Incorporating Performance Testing in Agile Development ProcessIncorporating Performance Testing in Agile Development Process
Incorporating Performance Testing in Agile Development Process
 
Scrum Portugal Meeting 1 Lisbon - ALM
Scrum Portugal Meeting 1 Lisbon - ALMScrum Portugal Meeting 1 Lisbon - ALM
Scrum Portugal Meeting 1 Lisbon - ALM
 
DevOps and the Case for ROI to Executives
DevOps and the Case for ROI to ExecutivesDevOps and the Case for ROI to Executives
DevOps and the Case for ROI to Executives
 
Selenium RC, Selenium WebDriver and HP LoadRunner
Selenium RC, Selenium WebDriver and HP LoadRunnerSelenium RC, Selenium WebDriver and HP LoadRunner
Selenium RC, Selenium WebDriver and HP LoadRunner
 
How to integrate JIRA with test processes? Overview architecture
How to integrate JIRA with test processes? Overview architectureHow to integrate JIRA with test processes? Overview architecture
How to integrate JIRA with test processes? Overview architecture
 

Ähnlich wie Code in the Cloud - December 8th 2014

Session on evaluation of DevSecOps
Session on evaluation of DevSecOpsSession on evaluation of DevSecOps
Session on evaluation of DevSecOpsAbdullah al Mamun
 
Application Lifecycle Management with Visual Studio 2013
Application Lifecycle Management  with Visual Studio 2013Application Lifecycle Management  with Visual Studio 2013
Application Lifecycle Management with Visual Studio 2013Mahmoud Samara
 
Testing with Microsoft Technologies - Kick Off Session
Testing with Microsoft Technologies - Kick Off SessionTesting with Microsoft Technologies - Kick Off Session
Testing with Microsoft Technologies - Kick Off SessionMoataz Nabil
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSibel Kuzgun AKIN
 
Dev ops developer (session 3)
Dev ops developer (session 3)Dev ops developer (session 3)
Dev ops developer (session 3)MSDEVMTL
 
Dev ops culture and practices
Dev ops culture  and  practicesDev ops culture  and  practices
Dev ops culture and practicesAnkaraCloud
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own wordsSUBHENDU KARMAKAR
 
QUALITY ASSURANCE and VALIDATION ENGINEER
QUALITY ASSURANCE and VALIDATION ENGINEER QUALITY ASSURANCE and VALIDATION ENGINEER
QUALITY ASSURANCE and VALIDATION ENGINEER Piyush Prakash
 
Top 5 automation testing tools to gear up website development
Top 5 automation testing tools to gear up website developmentTop 5 automation testing tools to gear up website development
Top 5 automation testing tools to gear up website developmentBJIT Ltd
 
Chandan_3.7 Years of Experience_Oracle
Chandan_3.7 Years of Experience_OracleChandan_3.7 Years of Experience_Oracle
Chandan_3.7 Years of Experience_OracleChandan Jai
 
Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402Rosalind Radcliffe
 
Microsoft DevOps Solution - DevOps
Microsoft DevOps Solution - DevOps  Microsoft DevOps Solution - DevOps
Microsoft DevOps Solution - DevOps Chetan Gordhan
 
Software Testing - Online Guide
Software Testing - Online GuideSoftware Testing - Online Guide
Software Testing - Online Guidebigspire
 
Visual Studio ALM and DevOps Tools Walkthrough
Visual Studio ALM and DevOps Tools WalkthroughVisual Studio ALM and DevOps Tools Walkthrough
Visual Studio ALM and DevOps Tools WalkthroughAngela Dugan
 

Ähnlich wie Code in the Cloud - December 8th 2014 (20)

Code in the Cloud - Ghent - 20 February 2015
Code in the Cloud - Ghent - 20 February 2015Code in the Cloud - Ghent - 20 February 2015
Code in the Cloud - Ghent - 20 February 2015
 
Session on evaluation of DevSecOps
Session on evaluation of DevSecOpsSession on evaluation of DevSecOps
Session on evaluation of DevSecOps
 
Ashish Baraiya
Ashish BaraiyaAshish Baraiya
Ashish Baraiya
 
DevOps Presentation.pptx
DevOps Presentation.pptxDevOps Presentation.pptx
DevOps Presentation.pptx
 
Application Lifecycle Management with Visual Studio 2013
Application Lifecycle Management  with Visual Studio 2013Application Lifecycle Management  with Visual Studio 2013
Application Lifecycle Management with Visual Studio 2013
 
Testing with Microsoft Technologies - Kick Off Session
Testing with Microsoft Technologies - Kick Off SessionTesting with Microsoft Technologies - Kick Off Session
Testing with Microsoft Technologies - Kick Off Session
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
kishore
kishorekishore
kishore
 
Dev ops developer (session 3)
Dev ops developer (session 3)Dev ops developer (session 3)
Dev ops developer (session 3)
 
Continuous integration with Jenkins
Continuous integration with JenkinsContinuous integration with Jenkins
Continuous integration with Jenkins
 
Dev ops culture and practices
Dev ops culture  and  practicesDev ops culture  and  practices
Dev ops culture and practices
 
Neev QA Offering
Neev QA OfferingNeev QA Offering
Neev QA Offering
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own words
 
QUALITY ASSURANCE and VALIDATION ENGINEER
QUALITY ASSURANCE and VALIDATION ENGINEER QUALITY ASSURANCE and VALIDATION ENGINEER
QUALITY ASSURANCE and VALIDATION ENGINEER
 
Top 5 automation testing tools to gear up website development
Top 5 automation testing tools to gear up website developmentTop 5 automation testing tools to gear up website development
Top 5 automation testing tools to gear up website development
 
Chandan_3.7 Years of Experience_Oracle
Chandan_3.7 Years of Experience_OracleChandan_3.7 Years of Experience_Oracle
Chandan_3.7 Years of Experience_Oracle
 
Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402
 
Microsoft DevOps Solution - DevOps
Microsoft DevOps Solution - DevOps  Microsoft DevOps Solution - DevOps
Microsoft DevOps Solution - DevOps
 
Software Testing - Online Guide
Software Testing - Online GuideSoftware Testing - Online Guide
Software Testing - Online Guide
 
Visual Studio ALM and DevOps Tools Walkthrough
Visual Studio ALM and DevOps Tools WalkthroughVisual Studio ALM and DevOps Tools Walkthrough
Visual Studio ALM and DevOps Tools Walkthrough
 

Mehr von Microsoft Developer Network (MSDN) - Belgium and Luxembourg

Mehr von Microsoft Developer Network (MSDN) - Belgium and Luxembourg (20)

Executive Summit for ISV & Application builders - January 2015
Executive Summit for ISV & Application builders - January 2015Executive Summit for ISV & Application builders - January 2015
Executive Summit for ISV & Application builders - January 2015
 
Executive Summit for ISV & Application builders - Internet of Things
Executive Summit for ISV & Application builders - Internet of ThingsExecutive Summit for ISV & Application builders - Internet of Things
Executive Summit for ISV & Application builders - Internet of Things
 
Executive Summit for ISV & Application builders - January 2015
Executive Summit for ISV & Application builders - January 2015Executive Summit for ISV & Application builders - January 2015
Executive Summit for ISV & Application builders - January 2015
 
Adam azure presentation
Adam   azure presentationAdam   azure presentation
Adam azure presentation
 
release management
release managementrelease management
release management
 
cloud value for application development
cloud value for application developmentcloud value for application development
cloud value for application development
 
Modern lifecycle management practices
Modern lifecycle management practicesModern lifecycle management practices
Modern lifecycle management practices
 
Belgian visual studio launch 2013
Belgian visual studio launch 2013Belgian visual studio launch 2013
Belgian visual studio launch 2013
 
Windows Azure Virtually Speaking
Windows Azure Virtually SpeakingWindows Azure Virtually Speaking
Windows Azure Virtually Speaking
 
Inside the Microsoft TechDays Belgium Apps
Inside the Microsoft TechDays Belgium AppsInside the Microsoft TechDays Belgium Apps
Inside the Microsoft TechDays Belgium Apps
 
TechDays 2013 Developer Keynote
TechDays 2013 Developer KeynoteTechDays 2013 Developer Keynote
TechDays 2013 Developer Keynote
 
Windows Phone 8 Security Deep Dive
Windows Phone 8 Security Deep DiveWindows Phone 8 Security Deep Dive
Windows Phone 8 Security Deep Dive
 
Deep Dive into Entity Framework 6.0
Deep Dive into Entity Framework 6.0Deep Dive into Entity Framework 6.0
Deep Dive into Entity Framework 6.0
 
Applied MVVM in Windows 8 apps: not your typical MVVM session!
Applied MVVM in Windows 8 apps: not your typical MVVM session!Applied MVVM in Windows 8 apps: not your typical MVVM session!
Applied MVVM in Windows 8 apps: not your typical MVVM session!
 
Building SPA’s (Single Page App) with Backbone.js
Building SPA’s (Single Page App) with Backbone.jsBuilding SPA’s (Single Page App) with Backbone.js
Building SPA’s (Single Page App) with Backbone.js
 
Deep Dive and Best Practices for Windows Azure Storage Services
Deep Dive and Best Practices for Windows Azure Storage ServicesDeep Dive and Best Practices for Windows Azure Storage Services
Deep Dive and Best Practices for Windows Azure Storage Services
 
Building data centric applications for web, desktop and mobile with Entity Fr...
Building data centric applications for web, desktop and mobile with Entity Fr...Building data centric applications for web, desktop and mobile with Entity Fr...
Building data centric applications for web, desktop and mobile with Entity Fr...
 
Bart De Smet Unplugged
Bart De Smet UnpluggedBart De Smet Unplugged
Bart De Smet Unplugged
 
Putting the Microsoft Design Language to work
Putting the Microsoft Design Language to workPutting the Microsoft Design Language to work
Putting the Microsoft Design Language to work
 
Cloud enable your Windows Store Apps with Mobile Services
Cloud enable your Windows Store Apps with Mobile ServicesCloud enable your Windows Store Apps with Mobile Services
Cloud enable your Windows Store Apps with Mobile Services
 

Kürzlich hochgeladen

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 

Kürzlich hochgeladen (20)

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 

Code in the Cloud - December 8th 2014

  • 1.
  • 2. • Introduction • Managing your project • Working with code • Tracking your progress • Continuous • Lunch break • Getting your hands dirty
  • 5.
  • 6. DevOps: the three stage conversation 3 Products2 Process1 People
  • 7. Visual Studio Update 1 Visual Studio Update 2 Visual Studio Update N Visual Studio Online Visual Studio continuous value delivery
  • 8.
  • 9. Plan, build, deploy and manage applications using a comprehensive suite of services that is accessible to the entire team
  • 11. 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
  • 12. 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: 15K 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
  • 13.  Unlimited projects/repositories  Agile planning  Work item tracking  Code discussions  Work item chart viewing = Basic capabilities +  Agile Portfolio Management  Team Rooms  Work item chart authoring  Request & manage feedback = Advanced capabilities +  Web test case management
  • 14.
  • 15.
  • 16.
  • 17. Benefits of an Agile Team
  • 18.
  • 19.
  • 23. 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
  • 24. Sprint 2 – Mobile Workforce
  • 25. Kanban cards Kanban (かんばん(看 板)?) (literally signboard or billboard) is a scheduling system for lean and just-in- time (JIT) production
  • 26.
  • 27.
  • 29. 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
  • 30.
  • 33. Team Foundation Server / VS Online Project 2Project 1 3rd Party3rd Party Local Repo Other Remote Git Repo
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.  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"); }
  • 40.  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.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46. Business challenges Customers desire frequent updates Comprehensive manual testing can impede delivery speed Long cycle times result in increased defects and decreased quality Solutions Reduce scope of feature set Integrate new features frequently Use gated check-in to ensure unit tests are run Automate build processes Minimize code churn after breakage Business value Shorter cycle times lead to quicker delivery of value Enforced unit testing increases quality threshold Release of quality code ensures continual value delivery
  • 47. Continuous integration automatically creates a build after check-in Create multiple build definitions to support various build scenarios
  • 48. Configure the gated check-in build to fail if a test fails, ensuring the code won’t be checked in Identify specific test to be run during the gated check-in build
  • 49.
  • 51. Deploying early and often delivers business value fast, generates early customer feedback and ensures ‘Go Live’ day ends with Champagne and not a sleepless night
  • 53.
  • 54. 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
  • 55.
  • 57.
  • 58. Movement to the cloud exacerbates the problem – IT is out of the picture, and the picture is a black box.
  • 59.
  • 60. User experience is what ultimately matters
  • 61. 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
  • 62. 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
  • 63. platform infrastructure app 1 3 4 5 Outside-in monitoring Developer-emitted traces and events Observed application behavior Infrastructure performance URL pings and web tests from global points of presence Whatever the developer would like to send to Application Insights No coding required – service dependencies, queries, response time, exceptions, logs, etc. System performance counters 2 Observed user behavior How is the application being used?
  • 64. 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