Top Banner
54

DevOps on Microsoft Platform

Jan 22, 2018

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: DevOps on Microsoft Platform
Page 2: DevOps on Microsoft Platform

Agenda

Page 3: DevOps on Microsoft Platform

Visual Studio Team Services

Visual Studio

.NET

Page 4: DevOps on Microsoft Platform

iOSWindows AndroidLinux

.NET C# C++ JavaScript PHP

Python Node.js R

PowerShell

Unity

Java Perl Xamarin

Cordova

Page 5: DevOps on Microsoft Platform
Page 6: DevOps on Microsoft Platform

“It’s Development and

Operations collaboration”

“It’s a job title”

“It means faster and

smaller releases”

“It’s automation”

Page 7: DevOps on Microsoft Platform

“The union of people, process, and

products to enable continuous delivery

of value to our end users.”

Donovan Brown, MSFT Sr PM

What is DevOps?

Page 8: DevOps on Microsoft Platform

The converged DevOps lifecycle

Develop + Test

Plan + Track

Monitor + Learn

Release

Development Production

Page 9: DevOps on Microsoft Platform

DevOps

Project Lead

Quality Analyst

Business Analyst

Project Manager

Developer

The Enterprise Collaboration Solution

Page 10: DevOps on Microsoft Platform
Page 11: DevOps on Microsoft Platform

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

Page 12: DevOps on Microsoft Platform
Page 13: DevOps on Microsoft Platform
Page 14: DevOps on Microsoft Platform
Page 15: DevOps on Microsoft Platform
Page 16: DevOps on Microsoft Platform
Page 17: DevOps on Microsoft Platform
Page 18: DevOps on Microsoft Platform
Page 19: DevOps on Microsoft Platform
Page 20: DevOps on Microsoft Platform

Agile Portfolio Management

Agile for large workloads Manage several teams in an

organization

Get insight from Features and track progress down to Stories and/or Tasks

Consolidate portfolio Easy navigation and visualization

of complex hierarchy of scenarios

Gain understanding of overall project completion across multiple teams

Works across Team Projects*

Page 21: DevOps on Microsoft Platform
Page 22: DevOps on Microsoft Platform
Page 23: DevOps on Microsoft Platform
Page 24: DevOps on Microsoft Platform
Page 25: DevOps on Microsoft Platform

Write Code

Unit Testing

2

Build

Version Control

Build Verification

Release

Once the iteration starts, developers

turn great ideas into features …

Develop, Build, Test

Page 26: DevOps on Microsoft Platform
Page 27: DevOps on Microsoft Platform

Continuous Integration

Value

Measure

cspkg

Page 28: DevOps on Microsoft Platform

Continuous Delivery

Value

Measure

cspkgcspkg

Page 29: DevOps on Microsoft Platform
Page 30: DevOps on Microsoft Platform
Page 31: DevOps on Microsoft Platform

Cloud

Load Testing

Automated

functional testing

environment

Integration testing

environment

3

Pre-production

environment

Staging

environment

Monitor + Learn

When unit tests pass, the build is deployed and tested for each

stage in the release process

Release

Page 32: DevOps on Microsoft Platform
Page 33: DevOps on Microsoft Platform

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

Page 34: DevOps on Microsoft Platform
Page 35: DevOps on Microsoft Platform
Page 36: DevOps on Microsoft Platform

Xamarin

Create native apps with beautiful UX and native

performance for Windows, iOS and Android

Create native apps for Windows, iOS and

Android devices using .NET and Visual Studio

Use C# with 100% of platform APIs exposed

The most productive and powerful platform

for creating native cross-platform applications

Maximize code reuse with Universal Projects

and Portable Class Libraries

Create shared UI with Xamarin.Forms

C# + XIB C# + AXML C# + XAML

Native UI Native UI Native UI

Page 37: DevOps on Microsoft Platform

Mobile Lifecycle Solution

BUILD INTEGRATE TEST ITERATE ACCELERATE

for

Page 38: DevOps on Microsoft Platform

Mobile app lifecycle with Microsoft

Backlog

Monitor and improve

Users and customers

install and use app

Telemetry Collection

App Testing Beta TestingCode Repository | Build + Deploy

Page 39: DevOps on Microsoft Platform

for

Bringing DevOps to mobile appsDistribute your app

Collect crash reports

Gather user feedback

Understand app adoption

Track app usage

Page 40: DevOps on Microsoft Platform

trade-offnoun

noun: tradeoff

A balance achieved between two desirable but

incompatible features; a compromise.

"a trade-off between objectivity and relevance"

The mobile app dilemma

Page 41: DevOps on Microsoft Platform

Platform silos

Better TCO, productivity and development experience

End

use

r exp

erience

Developer

Only services (server-side) can be re-used

Dev experience is different for each platform and

device type

Higher TCO due to multiple code bases and

requirements for developer skills

End User

Platform-native UX

Full performance

Native service integration

Objective-C + Xcode

Java + Eclipse

.NET + Visual Studio

Page 42: DevOps on Microsoft Platform

Hybrid & Web

Better TCO, productivity and development experience

End

use

r exp

erience

Developer

Great for teams with HTML/JavaScript skills

Scaling to enterprise complexity challenging

End User

Non-native UX

Performance tradeoff

Works across devices

Page 43: DevOps on Microsoft Platform

Cross-platform native with Xamarin

Developer

100% C# with 100% of platform APIs exposed

More productivity and faster development

Avg 20-40% code reuse across platforms

One code base & IDE for client and backend

End User

Platform-native UX

Full performance

Native platform service integration

Better TCO, productivity and development experience

End

use

r exp

erience

“The best of both worlds”

Hybrid

Platform silos Cross-platform native

Page 44: DevOps on Microsoft Platform

Cross-platform native

Anything you can do inObjective-C, Swift or Java,you can do with Xamarin• Native user interface

• Native performance

• High-fidelity API access

C# + XIB C# + AXML C# + XAML

Native UI Native UI Native UI

Page 45: DevOps on Microsoft Platform

iOS C# UI Windows C# UIAndroid C# UI

Shared C# logic

Xamarin’s unique approach

Shared C# codebase • 100% native API access • High performance

Page 46: DevOps on Microsoft Platform

Native performance

Xamarin.iOS Xamarin.Android

ARM

BINARY

Runs natively

.APPAO

T

.NE

TC

#Bindings

.APKCompil

e and

Link

.NE

TC

#Bindings

IL

+

JIT

Runs natively

Page 47: DevOps on Microsoft Platform

Xamarin Development Approaches

iOS C# UI Windows C# UIAndroid C# UI

Shared C# Logic Shared C# Logic

Xamarin.Forms

Page 48: DevOps on Microsoft Platform

Build native UIs for iOS, Android, and Windows

from a single, shared C# codebase.

Meet Xamarin.Forms

Page 49: DevOps on Microsoft Platform

What’s included

✓ 40+ Pages, layouts, and controls

(Build from code behind or XAML)

✓ Two-way data binding

✓ Navigation

✓ Animation API

✓ Dependency Service

✓ Messaging Center

Shared C# Logic

Shared UI Code

Page 50: DevOps on Microsoft Platform

Native UI from shared code

• <?xml version="1.0" encoding="UTF-8"?>

• <TabbedPagexmlns="http://xamarin.com/schemas/2014/forms"

xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"

• x:Class="MyApp.MainPage">

• <TabbedPage.Children>

• <ContentPage Title="Profile" Icon="Profile.png">

• <StackLayout Spacing="20" Padding="20"

• VerticalOptions="Center">

• <Entry Placeholder="Username"

• Text="{Binding Username}"/>

• <Entry Placeholder="Password"

• Text="{Binding Password}"

• IsPassword="true"/>

• <Button Text="Login" TextColor="White"

• BackgroundColor="#77D065"

• Command="{Binding LoginCommand}"/>

• </StackLayout>

• </ContentPage>

• <ContentPage Title="Settings" Icon="Settings.png">

• <!-- Settings -->

• </ContentPage>

• </TabbedPage.Children>

• </TabbedPage>

Page 51: DevOps on Microsoft Platform

Build

Page 52: DevOps on Microsoft Platform

Test

Page 53: DevOps on Microsoft Platform

Distribute & Monitor