Tim Ferro@FEDSPUG April 3rd, 2014
Visual Studio 2013for ALM and SharePoint
Senior SharePoint Developer / SharePoint Architect Senior Software Engineer at RDA CorporationAuthor / Speaker / Blogger / Tweeter7 Years Architecting and Developing SharePoint [email protected]@timferro
My Background
PublicationsBook Technical Editor: You Don’t Know JS: Scope and Closures
White Paper Author: Utilizing and Visualizing Geolocation Data for Powerful Analysis
AgendaVisual Studio 2013.NET 4.5.1Application Lifecycle ManagementMSDNSharePoint Solutions
Visual Studio 2013
Visual Studio 2012/2013 Wave
Visual Studio 2012 Launch
Visual Studio Online
Visual Studio 2012 Update 1
3-week service delivery sprints
Frequent updates for on-premises/boxed products
DevOps capabilities withSystem Center
2012 SP1
September 2012
October 2012
November 2012 January 2013
Visual Studio 2012 Update 2
March 2013
Visual Studio 2012 Update 3
June 2013
Visual Studio 2013
November 2013
Visual Studio 2012 Update 4
Visual Studio 2013Update 1
March 2014
IDE Enhancements
The Connected IDE
The connected IDESign into the IDE with your Microsoft AccountMove seamlessly between your machinesSynchronize settings across your devicesGet up and running faster
Notification CenterKeep Visual Studio up-to-dateEasily determine what’s importantAddress laterOne common location
Themes & visual design
Choice
Choice
Blue
Light
Dark
IDE performance
IDE performance improvementsSolution loadIDE startupResponsivenessImprovements are driven by data from Customer Experience Improvement program
Performance tools & debugging
Performance and Diagnostics hubOne launch point for all profiling tools
Performance and Diagnostics hub
Performance and Diagnostics hub
Editor Productivity
Editor productivityAuto brace completionMove lines up and downEnhanced scrollbarNew Navigate To experiencePeekCodeLens
Code Map enhancementsFind Dialog integrated into editorSolution Explorer enhancementsNew project templatesAnd so much more…
Enhanced Scrollbar
Go To Definition
Peek Definition
Browser Link
Code Clone
CodeLens
CodeLens
References
Code History
ALM
Unit Tests
One ASP.NET
ASP.NET
Web Forms
Websites
Web-pagesSingle-Page
AppsMVC Web API SignalR
Services
One ASP.NET
No “upfront decision” on any ASP.NET technologyUnified dialog
One Project: Web Forms, MVC, Web API
Add any framework to any project
Scaffolding works across all frameworks
Configurable authentication
Bootstrap used for layout and stylingTemplates based on Bootstrap.js
Popular CSS layout framework
Many themes available
Completely new scaffolding system for One ASP.NETWeb application code generation based on your data model
Targets data-driven and CRUD boilerplate code
One ASP.NET
What’s new in .NET 4.5.1
First, a look at .NET 4.5
Client & Device
•Async – for UI responsiveness•Windows Store apps -- WinRT•Windows Phone apps•.NET CF 3.9
Web & Cloud
•Async – for server scaling•ASP.NET MVC4•ASP.NET Web API•ASP.NET Web Pages•Entity Framework Code-First•WebSockets•SignalR•Windows Azure Cloud Services 4.5 Support•Windows Azure Web Sites
Fundamentals
•.NET Async (async + await)•Many new async APIs•WinRT interop•Multi-core JIT•MPGO – NGEN hot/cold splitting•Performance improvements•Reboot and reliability improvements to setup•Support Windows RT
GC•Background GC•LOH heap balancing•LOH fragmentation reduction•GC low latency mode•GC awareness of NUMA and >64 processors•>2GB arrays (or objects)
Libraries•Portable libraries update•.NET Core Profile (Windows 8)•Extension methods for WinRT streams and async•NuGet•Immutable collections•Async for .NET 4•HttpClient for Portable
.NET 4.5.1 in A Nutshell
Developer Productivity
Application Performance
Continuous Innovation
Developer Productivity
Number 9 all time requested feature on UserVoice!Works exactly the same as for 32-bit applicationsClient (WPF, WinForms, etc.), Store and ASP.NET WAP projects are supportedFor WAP projects, need to enable Edit & Continue in Project Properties
64-bit Edit and Continue is finally here!
Managed memory leak analysis
Now available for .NET!Access via Autos window or in the Immediate window ($ReturnValue)Can expand return value in the debugger
Method return value inspection
Common question: How did I get here?Supported for Store Apps, Web apps, Desktop apps in W8.1Enhancements to the Call Stack and Tasks window
Async debugging improvements
Visual Studio 2012 Visual Studio 2013
Visual Studio 2013
EF/ADO.NET Connection ResiliencyProvide reliable connection to Azure SQL DBAutomatically retry/reconnect broken connectionProvides great experience for connected devicesIt Just Works! No code or configuration changes other than installing .NET 4.5.1
ApplicationPerformance
ASP.NET App SuspensionEnables low latency, high density web sites foron-prem/private cloudShipping as part of IIS 8.5 in Windows Server 2012 R2 PreviewProvisioned through the Idle Worker Process Page-out capability in IIS
Early Results from our Performance Lab
ASP.NET App Suspension
In IIS Settings, set Idle Time-out Action to Suspended
Multi-Core JIT Improvements
Performance data from our test labs
Minimize application startup time on multi-core CPUs
Now supported for ASP.NET web sites
Enabled automatically for ASP.NET apps
15% improvement for cold startup
ContinuousInnovation
NuGet ReleasesDuring .NET 4.5 we released two components via NuGet:MEF (Microsoft.Composition) for web and Windows Store appsTPL Dataflow (Microsoft.Tpl.Dataflow)These (and new packages) are treated as any other .NET 4.5 component, i.e. are fully supported
.NET (“in box”)
SystemCompositio
n
TPL Dataflo
w
Http Client
Async
Immutable
Collections
.NET Framework NuGet FeedOne-stop shopping for all of your .NET Framework NuGet packages released by MicrosoftIn Visual Studio 20[10,12,13]On the Web
Application Lifecycle Management
Cloud Services
Business AgilityContinuous
Quality
Multi Platform Multi Device
Continuous Feedback
Heterogeneousdevelopment
teams
Continuous Delivery
SocialUser-Centric
Application Lifecycle Trends
A Development Platform for the Modern Enterprise
SERVICES
HTML5
Modern AppsCompanion
MobileDirect-to-Customer
MODERN WEB
DESKTOP / APP STORE STYLE APPS
SERVICES CREATION AND AGGREGATION
DATAAPPLICATION SERVICES COLLABORATION APPS
LIGHTWEIGHT SERVICES
LOB AppsSystems of RecordHeavy-DutyData Entry
Leverage the same skills for LOB apps & Modern Apps!
Microsoft’s Visual Studio Vision
ALM Your Way
ALM Agile Portfolio Management OverviewKeep focus on what the customer needs• Don’t just build features, but align work to actual customer requests• Easy navigation and visualization of complex hierarchy of feature scenarios
Provide accurate and on-time project status to Project Stakeholders• Actions from each team member are tracked and audited so status reports are always up-to-
date• Remove the guess work on the quality and timeframe of projects
Organize teams to deliver software faster Organize teams on specific features Manage several teams on related projects within the organization Gain understanding of overall project completion across multiple teams
Team Foundation Server 2013
Project management dashboardProject
summary ‘at a
glance’
Key project planning & manageme
ntfunctions
Customize with
favorite metrics
Agile Portfolio Management
Plan what value to deliver Agile for large workloads Create & Manage Features, Items and
Task Support several teams in an
organization Get insight from Features and track
progress down to Stories and/or Tasks
Planning what can be done next
Each Backlog Item is
estimated in ‘points’
History of work done is Team’s ‘Velocity’
Velocity determines what can be done
next
Balancing work with team capacity
Tasks identified
and assigned
Capacity set for
team members
Capacity bars indicate
over / under commitment
Burndown chart – will the work get done?
Burndown charts
progress and remaining
work
Used for adaptive and
frequent re-planning
Task board – a status update on all work
The state of all Tasks
By Backlog Item
or Team
Member
Convenient drag ‘n’ drop
for daily update
Using the Kanban Board to optimize work flow
Visualize state
of all work
Optimize workflow
across functions
Set work in
progresslimits
Customize Columns
Team Rooms
Changesets
Git Integration
Mobile
Mobile
Xamarin/ITR MobilityCloud Mobile Testing
Release Management
Release management needs & challengesMore frequent releasesHow do we elegantly shift from long release cycles to monthly, or even daily?
Customer responsivenessHow can we help set customer expectations about when bug fixes and feature requests go live?
Stakeholder transparencyHow can we make sure everyone understands the release pipeline so they can do their jobs?
Compliance & regulationHow can we feel confident we’re properly tracking, managing, and approving our releases?
Plan Develop Operate
BUILD | MEASURE | LEARN
BUILD | MEASURE | LEARN
Release
Business agility through modern lifecycle
Business agility through modern lifecycle
BUILD | MEASURE | LEARN
BUILD | MEASURE | LEARN
Plan
Develop
ReleaseWorking software to production
Idea to working software
IdeationREQUIREMENTS
BACKLOG
RELEASE
OperateConstruct
WORKING SOFTWARE
OperateRunning software in production
Build | Measure | Learn
Plan REQUIREMENTS
BACKLOG
RELEASE
OperateConstruct
WORKING SOFTWARE
Develop
OperateAgile portfolio management
Team RoomGitCodeLens
.NET memory dump analyzer
Visual Studio and System Center integration
Build | Measure | Learn
Integrated release management
Collaborate
Kanban customizationWork item tagging
Release
Performance events
Continuous value
Load testing as a service
Configuration-based deployments
Work item charting
Automated Tests
Stagestack
InstallApplication
ProvisionEnvironment
Create Test Data
ConfigureEnvironment
ConfigureApplication
Manual Tests
Notify Approvers
Approve Stage
Appro
val
Test
sA
pp
Infr
a
Microsoft Test Manager
Lab Manager
MS Tools
PowerShell
Custom Tools
Release Management for Team Foundation
Server 2013
Unit testing, Coded UI testing…
InReleaseA continuous deployment solution for .NET teamsAutomates the deployment processSimplifies managing multiple environmentsImproves collaboration throughout the processProvides release analytics and reporting
HistoryOriginally launched in 2009 by InCycle SoftwareInRelease 2.0 launched in 2010, 3.0 in 2013Acquired by Microsoft in 2013
InRelease as a part of MicrosoftRelease Management Client for Visual Studio 2013 is available with:Visual Studio Test ProfessionalVisual Studio PremiumVisual Studio Ultimate
Release Management Server for Team Foundation Server 2013Microsoft Deployment Agent 2013Required per deployment nodeLicensed separately
Automates deployments
Automating the release cycle
DEV QAINT PRODTFS
Deploys the same way to all stages
Automating the release cycle
DEV QAINT PRODTFS
Automates workflow
Automating the release cycle
DEV QAINT PRODTFS
DEV QAINT PRODTFS
Full traceability
Automating the release cycle
TFS Drop Location
RM ClientRM Web
QA
DEV
RM Server
How it works
Release Approval
Team Foundation Server integration
Analytics & reporting
Error reporting
MSDN
MSDN Platforms Overview MSDN is a great way to license the team involved in
software development, but always included Visual Studio.
A new MSDN subscription for IT Pro’s and non-MS developers who do not require Visual Studio
Provides cost effective licensing and peace of mind on software compliance for the whole team
Optimized ROI
Efficient Development
Peace of Mind
Com
par
e M
SD
N S
ubsc
ription
Le
vels
Software and services for production use
Primary Development/Testing ToolVisual Studio Professional
Visual Studio Test Professional
Visual Studio Premium
Visual Studio Ultimate
Visual Studio Team Foundation Server 2012 and one CAL ● ● ● ● ●
Team Foundation Service ● ● ● ●
Microsoft Office Professional Plus 2013 ● ●
Software and services for development and testing
Windows, Windows Server ● ● ● ● ●
Windows Azure $100/month $50/month $100/month $150/month
Microsoft SQL Server ● ● ● ● ●
Microsoft Office ● ●
Microsoft Dynamics ● ● ●
All other servers (such as SharePoint and Exchange) ● ● ●
Windows Embedded ● ● ● ●
Additional benefits
Technical support incidents 2 2 2 4 4
Priority support in MSDN Forums ● ● ● ● ●
Priority support in TechNet Forums ●
Windows Store and Windows Phone developer accounts1 ● ● ● ●
Office 365 Developer Subscription1 ● ●
Microsoft E-Learning course collections (typically 20 hours each; per calendar year)
2 1 1 2 2
MSDN Magazine ● ● ● ● ●
MSDN Flash newsletter ● ● ● ● ●
MSDN Online Concierge ● ● ● ● ●
Special offers from Microsoft and partners ● ● ● ● ●
1 One-time 12 month benefit
MSDN Platforms compared to TechNetMSDN Platforms TechNet Professional
Target Audience IT Pros setting up dev/test environments
IT Pros evaluating software
Licensing • Design, develop, test, demonstrate or evaluate
• Cloud use rights
• Evaluation only
Purchase channel VL only Retail (primary channel) and VL
Benefit differences • Azure monthly credits• Team Foundation Server &
Service• No Office • MSDN and TechNet forums
priority support
• No Azure monthly credits• No Team Foundation Server &
Service• Office for Evaluation only
Why use cloud for Dev/Test EnvironmentsBottlenecks and higher costs with on-prem provisioning• IT is focused on production environments so dev/test has lower priority• Cost are high and data center space is tight
Move dev/test workloads to Azure• Cost & speed benefits from cloud efficiencies • Friction free with support to run same vm’s on-prem or in Azure• Azure templates make building vm’s fast and easy
New Cloud offers speed up and automate routine tasks Build Service Load Test Service More coming soon!
Azure Dev/Test with New MSDN benefitsImproved
Benefit Credits for MSDN
subscribers
Reduced Friction for Dev/Test Usage
No Credit Card Required for
Dev/Test Azure Plans
$50 for MSDN subscribers Visual Studio
Professional
Visual Studio
Cloud Use Rights for
MSDN Software
Per Minute Billing for VM Usage
No Longer Charging for Stopped VMs
Microsoft Confidential
Better Visibility of Used Credits in Azure Billing
$100 for MSDN subscribers Visual Studio Premium
$150 for MSDN subscribers Visual Studio
Ultimate
Lower Azure Rates for Dev/Test Usage
SharePoint SQL Server BizTalk Server
Windows Server
SQL Standard
BizTalk Standard
SQL Enterprise
BizTalk Enterprise
STANDARD: MSDN PRICE: SAVINGS:
MSDN Dev/Test Rates
.09/hr
.64/hr
.75/hr
2.19/hr
2.11/hr
.06/hr
.06/hr
.06/hr
.06/hr
.06/hr
33%
90%
92%
97%+
97%+
3 VMs for 16 hours a day
premium
$100
PER MONTH
MSDN Credits
ultimate
$150PER MONTH
professional
$50PER MONTH
premium
$100
PER MONTH
premium
$100
PER MONTH
80 VMs for 20 hour load test
MSDN Credits
ultimate
$150PER MONTH
professional
$50PER MONTH
premium
$100
PER MONTH
premium
$100
PER MONTH
50 HDInsight nodes for 10 hrs
MSDN Credits
ultimate
$150PER MONTH
professional
$50PER MONTH
premium
$100
PER MONTH
premium
$100
PER MONTH
Up to 100 web sites + DB
MSDN Credits
ultimate
$150PER MONTH
professional
$50PER MONTH
premium
$100
PER MONTH
Move Dev/Test to Azure Today!
Enable innovation with test and devlabs in the cloud
Cost effective
Improved developer agility
Ship tested in realistic scale
Use existing development tools & languages
Access on-premise resources if necessary On-
premisesWindows
Azure
Lab Sandbox
Developer
Virtual Machines
Virtual Machines
Virtual Machines
SQL ServerWindows Server
VHD
Visual Studio
> PowerShell
• Available in Preview for Team Foundation Service
• Enables customers to scale load tests with no infrastructure investments!
• Requires Visual Studio 2013 Ultimate
Load Testing using Team Foundation Service
• Developer desktop:• Azure provides
test/development use rights of Visual Studio in the cloud
• Benefits:• Greater agility—does not impact
corporate desktop mandates• Get started earlier on development
of Windows 8 apps• MSDN can cover up to 100% of cost
Another way to use Azure benefits…
Learn more about using Azure for test/dev at http://channel9.msdn.com/Blogs/cdndevs/CloudForDevTest
SharePoint Development
Flexible lifecycleNew apps
Familiar toolsetsEmbracing web standards to provide developers with choice and flexibility.
Deploy and maintain your apps publicly or internally with flexibility and control.
A new class of apps enabling new scenarios and user experiences.
A New App Model
App
App manifestWeb page<XML>HTML/CSS/JS
App Anatomy
Apps for Office and SharePoint
Apps for SharePoint
CharacteristicsOnline web application
App’s server-side hosted by autonomous Web Server or Windows Azure
Integrated and supported by SharePoint
Supported by any browser (potentially)
Document management integration
SharePoint resources integration
News in VS 2013MVC5 support for apps
Improvements when publishing apps to Windows Azure Websites
Remote Debugging of Workflows against an Office 365 developer site
Full pageImplement complete app experiences to satisfy business scenarios
App partsCreate app parts that can interact with the SharePoint experience
UI command extensionsAdd new commands to the ribbon and item menus
Apps for SharePoint Form Factors
Get remote events from SharePoint.Use CSOM/REST + OAuth
Provider-hosted app
Bring your own server hosting infrastructure
Auto-hosted appWindows Azure + SQL Azure provisioned automatically as
apps are installed
SharePoint
web
Your hosted site
SharePoint
webAzure
SharePoint-hosted app
Reuse web elements (lists, out-of-box web parts). Client-side technologies
and declarative workflows
Hostweb
App web(from WSP)
Cloud-hosted apps
SharePoint App Hosting
Office Developer ToolsIncluded in Visual Studio 2013!
Supports cloud app model
Develop against Office 365 or on-premises
Rich tooling support for app artifacts
Visual Studio 2013 Tools and Templates
Build apps using your favorite frameworks and tools
New project and item templates for fields, lists, content types
Debugging Profiling
First-class development environment
Access all target features, e.g., workflow, remote event receivers, BCS
Creating a Cloud-Hosted AppNew project wizardAuto-hosted and Provider-hosted both include a web project
Add event to SharePoint-hosted appApp events and remote event receivers add a web project
Convert a web project to appChoose “Add App for SharePoint” from Project menu of any web project
ALM and SharePoint 2010/2013 Solutions
Coded UI support for SharePoint
Emulators and Fakes framework support
Continuous integration
Profiler support
Load and web performance testing
IntelliTrace® support for SharePoint
Q&A
Additional resourcesWhat’s new in VS 2013:msdn.microsoft.com/en-us/library/vstudio/bb386063(v=vs.120).aspx
Visual Studio blog:blogs.msdn.com/b/visualstudio/
Visual Studio Toolbox on Channel 9:channel9.msdn.com/Shows/Visual-Studio-ToolboxMSDN ALM:msdn.microsoft.com/en-us/library/vstudio/fda2bad5(v=vs.120).aspxhttp://channel9.msdn.com/Blogs/Breakpoint/ep1
Get further information on .NET
http://www.microsoft.com/NET
http://msdn.microsoft.com/en-us/dn338450
http://msdn.microsoft.com/en-US/vstudio/aa496123
http://www.microsoft.com/visualstudio/ http://channel9.msdn.com/Shows/Visual-Studio-Toolbox/Visual-Studio-2013-Preview
© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Top Related