SlideShare a Scribd company logo
1 of 14
Agile and Azure
Emergent Code, BDD , TDD , Team City , Cerebrata
CmdLets
Presented by
Blushpackages : John Mitchell , Becca Martin
We started with a single test
Practise and Architectural Aims
 To use Emergent Architecture and coding practises
 To follow a Test Driven approach
 To extend our test foot print to Azure
 To put quality first
 To be responsive to requirement change
 To be continually releasable
Demonstration Introduction
 What will we demonstrate?
 Creation of a simple “Hello world” Azure MVC application
 Run this application under the Azure emulator to see it working
 Create a StoryQ integration test.
 Add the Azure support to the acceptance test
 Push that down into a base class for reuse.
 Run the acceptance test.
 Talk about how this would then fit with Team City or another CI
engine
Lets cut to some code
Azure Project Configuration
Architecture Diagram
CI Process – In Detail
Components For CI publish on
Azure
 JetBrains TeamCity
 Cerebrata Cmdlets
 Microsoft Azure Account
 Oracle VirtualBox Local VM Container
 Powershell
 Msbuild
CI Process
 Build (Locally)
 Run Unit Tests (Locally)
 Commit
 Run Unit Tests on commit build (CI)
 Publish to staging (Azure)
 Run Watin tests (Azure)
 If all green, VIP swop staging to production for BA (Azure)
 Send notification email with link to published test output
including rich StoryQ output tagged with story numbers
Build Output
Final Thoughts
 Azure can be integrated into a true Agile Process
 We can evolve our architecture to target Azure with out initial
commitment
 We can use TDD and BDD with Azure
 We can successfully automate deployment with tools like
Teamcity and Cerebrata CmdLets
 We will be publishing the technical details on the blush
packages blog http://blushpackages.com/blog
Links and Resources
 Watin : http://watin.org/
 Team City : http://www.jetbrains.com/teamcity/
 CommandLets : http://www.cerebrata.com/
 StoryQ : http://storyq.codeplex.com/
 Azure : https://www.windowsazure.com
 Nunit : http://www.nunit.org/
 NSubstitute : http://nsubstitute.github.com/
 Agile : http://www.blushpackages.com/Blog/post/WAgile-or-Agile-.aspx
 Emergent Architecture :
http://www.blushpackages.com/Blog/post/emergent-design-
overview.aspx
 BDD : http://www.blushpackages.com/Blog/post/bdd-overview.aspx
That’s All Folks
 John Mitchell - Freelance Developer / Architect
Johnm@blushpackages.com
Twitter @jemmitch1
 Becca Martin - Developer /Architect, Agile Coach, Azure
Evangelist
beccam@blushpackages.com
Twitter @martindotnet
Blush Packages Blog : http://blushpackages.com/blog
Slides : http://blushpackages.com/presentations

More Related Content

What's hot

Serverless Computing with Azure
Serverless Computing with AzureServerless Computing with Azure
Serverless Computing with AzureAnalben Mehta
 
CI CD with Docker and Kubernetes
CI CD with Docker and Kubernetes CI CD with Docker and Kubernetes
CI CD with Docker and Kubernetes Nilesh Gule
 
Cloud Native Islamabad - Getting Closer to Continuous Delivery with Knative
Cloud Native Islamabad - Getting Closer to Continuous Delivery with KnativeCloud Native Islamabad - Getting Closer to Continuous Delivery with Knative
Cloud Native Islamabad - Getting Closer to Continuous Delivery with KnativeMauricio (Salaboy) Salatino
 
SPRING BOOT DANS UN CONTAINER OUTILS ET PRATIQUES
 SPRING BOOT DANS UN CONTAINER OUTILS ET PRATIQUES SPRING BOOT DANS UN CONTAINER OUTILS ET PRATIQUES
SPRING BOOT DANS UN CONTAINER OUTILS ET PRATIQUESVMware Tanzu
 
Build Proactive bot using Microsoft Bot Framework
Build Proactive bot using Microsoft Bot FrameworkBuild Proactive bot using Microsoft Bot Framework
Build Proactive bot using Microsoft Bot FrameworkSri Kanth
 
DevOps Turkey Test Automation with Docker and Seleniumhub
DevOps Turkey Test Automation with Docker and SeleniumhubDevOps Turkey Test Automation with Docker and Seleniumhub
DevOps Turkey Test Automation with Docker and Seleniumhubkloia
 
7200bf5a 1bf1-4bb3-8430-904161845cce.presentation20934 ut209343d-modelingprac...
7200bf5a 1bf1-4bb3-8430-904161845cce.presentation20934 ut209343d-modelingprac...7200bf5a 1bf1-4bb3-8430-904161845cce.presentation20934 ut209343d-modelingprac...
7200bf5a 1bf1-4bb3-8430-904161845cce.presentation20934 ut209343d-modelingprac...ngoctang
 
Large Scale Cloud Infrastructure Using Shared Components
Large Scale Cloud Infrastructure Using Shared ComponentsLarge Scale Cloud Infrastructure Using Shared Components
Large Scale Cloud Infrastructure Using Shared ComponentsEficode
 
Test Automation Workshop with BDD Approach
Test Automation Workshop with BDD ApproachTest Automation Workshop with BDD Approach
Test Automation Workshop with BDD Approachkloia
 
SFDC Seamless Deployment Techniques
SFDC Seamless Deployment TechniquesSFDC Seamless Deployment Techniques
SFDC Seamless Deployment TechniquesPawan Tyagi (2x)
 
Serverless Orchestration with Azure Durable Functions
Serverless Orchestration with Azure Durable FunctionsServerless Orchestration with Azure Durable Functions
Serverless Orchestration with Azure Durable FunctionsCallon Campbell
 
JavaLand - Micrometer and SpringBoot
JavaLand - Micrometer and SpringBootJavaLand - Micrometer and SpringBoot
JavaLand - Micrometer and SpringBootKo Turk
 
PowerShell Scripting and AI-infused Automation
PowerShell Scripting and AI-infused AutomationPowerShell Scripting and AI-infused Automation
PowerShell Scripting and AI-infused AutomationMitul Rana
 
Google Cloud Build - Sfeir Lunch Janvier 2019
Google Cloud Build - Sfeir Lunch Janvier 2019Google Cloud Build - Sfeir Lunch Janvier 2019
Google Cloud Build - Sfeir Lunch Janvier 2019Gaëlle Acas
 
Facilitez votre transition DevOps grâce à l'automatisation de votre infras...
 Facilitez votre transition DevOps grâce à l'automatisation de votre infras... Facilitez votre transition DevOps grâce à l'automatisation de votre infras...
Facilitez votre transition DevOps grâce à l'automatisation de votre infras...VMware Tanzu
 
Continuous Delivery in the Cloud with Bitbucket Pipelines
Continuous Delivery in the Cloud with Bitbucket PipelinesContinuous Delivery in the Cloud with Bitbucket Pipelines
Continuous Delivery in the Cloud with Bitbucket PipelinesAtlassian
 

What's hot (20)

Serverless Computing with Azure
Serverless Computing with AzureServerless Computing with Azure
Serverless Computing with Azure
 
CI CD with Docker and Kubernetes
CI CD with Docker and Kubernetes CI CD with Docker and Kubernetes
CI CD with Docker and Kubernetes
 
Cloud Native Islamabad - Getting Closer to Continuous Delivery with Knative
Cloud Native Islamabad - Getting Closer to Continuous Delivery with KnativeCloud Native Islamabad - Getting Closer to Continuous Delivery with Knative
Cloud Native Islamabad - Getting Closer to Continuous Delivery with Knative
 
SPRING BOOT DANS UN CONTAINER OUTILS ET PRATIQUES
 SPRING BOOT DANS UN CONTAINER OUTILS ET PRATIQUES SPRING BOOT DANS UN CONTAINER OUTILS ET PRATIQUES
SPRING BOOT DANS UN CONTAINER OUTILS ET PRATIQUES
 
Build Proactive bot using Microsoft Bot Framework
Build Proactive bot using Microsoft Bot FrameworkBuild Proactive bot using Microsoft Bot Framework
Build Proactive bot using Microsoft Bot Framework
 
Tce automation-d4
Tce automation-d4Tce automation-d4
Tce automation-d4
 
.NET Overview & Roadmap
.NET Overview & Roadmap.NET Overview & Roadmap
.NET Overview & Roadmap
 
DevOps Turkey Test Automation with Docker and Seleniumhub
DevOps Turkey Test Automation with Docker and SeleniumhubDevOps Turkey Test Automation with Docker and Seleniumhub
DevOps Turkey Test Automation with Docker and Seleniumhub
 
7200bf5a 1bf1-4bb3-8430-904161845cce.presentation20934 ut209343d-modelingprac...
7200bf5a 1bf1-4bb3-8430-904161845cce.presentation20934 ut209343d-modelingprac...7200bf5a 1bf1-4bb3-8430-904161845cce.presentation20934 ut209343d-modelingprac...
7200bf5a 1bf1-4bb3-8430-904161845cce.presentation20934 ut209343d-modelingprac...
 
Large Scale Cloud Infrastructure Using Shared Components
Large Scale Cloud Infrastructure Using Shared ComponentsLarge Scale Cloud Infrastructure Using Shared Components
Large Scale Cloud Infrastructure Using Shared Components
 
Durable Azure Functions
Durable Azure FunctionsDurable Azure Functions
Durable Azure Functions
 
TCE Automation
TCE AutomationTCE Automation
TCE Automation
 
Test Automation Workshop with BDD Approach
Test Automation Workshop with BDD ApproachTest Automation Workshop with BDD Approach
Test Automation Workshop with BDD Approach
 
SFDC Seamless Deployment Techniques
SFDC Seamless Deployment TechniquesSFDC Seamless Deployment Techniques
SFDC Seamless Deployment Techniques
 
Serverless Orchestration with Azure Durable Functions
Serverless Orchestration with Azure Durable FunctionsServerless Orchestration with Azure Durable Functions
Serverless Orchestration with Azure Durable Functions
 
JavaLand - Micrometer and SpringBoot
JavaLand - Micrometer and SpringBootJavaLand - Micrometer and SpringBoot
JavaLand - Micrometer and SpringBoot
 
PowerShell Scripting and AI-infused Automation
PowerShell Scripting and AI-infused AutomationPowerShell Scripting and AI-infused Automation
PowerShell Scripting and AI-infused Automation
 
Google Cloud Build - Sfeir Lunch Janvier 2019
Google Cloud Build - Sfeir Lunch Janvier 2019Google Cloud Build - Sfeir Lunch Janvier 2019
Google Cloud Build - Sfeir Lunch Janvier 2019
 
Facilitez votre transition DevOps grâce à l'automatisation de votre infras...
 Facilitez votre transition DevOps grâce à l'automatisation de votre infras... Facilitez votre transition DevOps grâce à l'automatisation de votre infras...
Facilitez votre transition DevOps grâce à l'automatisation de votre infras...
 
Continuous Delivery in the Cloud with Bitbucket Pipelines
Continuous Delivery in the Cloud with Bitbucket PipelinesContinuous Delivery in the Cloud with Bitbucket Pipelines
Continuous Delivery in the Cloud with Bitbucket Pipelines
 

Viewers also liked

Viewers also liked (18)

1st response Final ppj (hqp)
1st response Final ppj (hqp)1st response Final ppj (hqp)
1st response Final ppj (hqp)
 
March 7
March 7March 7
March 7
 
Herramientas tecnológicas(2)
Herramientas tecnológicas(2)Herramientas tecnológicas(2)
Herramientas tecnológicas(2)
 
Naturaleza
NaturalezaNaturaleza
Naturaleza
 
Articulo comse dia tabaco
Articulo comse dia tabacoArticulo comse dia tabaco
Articulo comse dia tabaco
 
Tabla evaluación de recursos web
Tabla evaluación de recursos webTabla evaluación de recursos web
Tabla evaluación de recursos web
 
Tâches cartographiques
Tâches cartographiquesTâches cartographiques
Tâches cartographiques
 
Architecture and technology overview
Architecture and technology overview Architecture and technology overview
Architecture and technology overview
 
Presentación1
Presentación1Presentación1
Presentación1
 
Michele Oka Doner Donfreeman2010
Michele Oka Doner Donfreeman2010Michele Oka Doner Donfreeman2010
Michele Oka Doner Donfreeman2010
 
Presentación1
Presentación1Presentación1
Presentación1
 
Brochure biology
Brochure biologyBrochure biology
Brochure biology
 
LinkedIn for business
LinkedIn for businessLinkedIn for business
LinkedIn for business
 
"Dato e información" (conceptos)
"Dato e información" (conceptos)"Dato e información" (conceptos)
"Dato e información" (conceptos)
 
Presentación Homotecia
Presentación HomoteciaPresentación Homotecia
Presentación Homotecia
 
Erroma
ErromaErroma
Erroma
 
Teorema de Tales
Teorema de TalesTeorema de Tales
Teorema de Tales
 
SEMEJANZA. TEOREMA DE TALES.
SEMEJANZA. TEOREMA DE TALES.SEMEJANZA. TEOREMA DE TALES.
SEMEJANZA. TEOREMA DE TALES.
 

Similar to Agile azure manchester azure user group v3

JSS build and deployment
JSS build and deploymentJSS build and deployment
JSS build and deploymentDavid Szöke
 
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...Janusz Nowak
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...tdc-globalcode
 
Using Azure DevOps to continuously build, test, and deploy containerized appl...
Using Azure DevOps to continuously build, test, and deploy containerized appl...Using Azure DevOps to continuously build, test, and deploy containerized appl...
Using Azure DevOps to continuously build, test, and deploy containerized appl...Adrian Todorov
 
Leveraging Microsoft Azure for Next Gen App Development
Leveraging Microsoft Azure for Next Gen App DevelopmentLeveraging Microsoft Azure for Next Gen App Development
Leveraging Microsoft Azure for Next Gen App DevelopmentWinWire Technologies Inc
 
Kubernetes for .NET Developers
Kubernetes for .NET DevelopersKubernetes for .NET Developers
Kubernetes for .NET DevelopersLorenzo Barbieri
 
Bringing Serverless into the Enterprise (Global Azure Virtual 2020)
Bringing Serverless into the Enterprise (Global Azure Virtual 2020)Bringing Serverless into the Enterprise (Global Azure Virtual 2020)
Bringing Serverless into the Enterprise (Global Azure Virtual 2020)Callon Campbell
 
Put Your Existing Application On Windows Azure
Put Your Existing Application On Windows AzurePut Your Existing Application On Windows Azure
Put Your Existing Application On Windows AzureMaarten Balliauw
 
[20200720]cloud native develoment - Nelson Lin
[20200720]cloud native develoment - Nelson Lin[20200720]cloud native develoment - Nelson Lin
[20200720]cloud native develoment - Nelson LinHanLing Shen
 
Back from Microsoft //Build 2018
Back from Microsoft //Build 2018Back from Microsoft //Build 2018
Back from Microsoft //Build 2018SOAT
 
Azure presentation nnug dec 2010
Azure presentation nnug  dec 2010Azure presentation nnug  dec 2010
Azure presentation nnug dec 2010Ethos Technologies
 
[AI] ML Operationalization with Microsoft Azure
[AI] ML Operationalization with Microsoft Azure[AI] ML Operationalization with Microsoft Azure
[AI] ML Operationalization with Microsoft AzureKorkrid Akepanidtaworn
 
How (and why) to roll your own Docker SaaS
How (and why) to roll your own Docker SaaSHow (and why) to roll your own Docker SaaS
How (and why) to roll your own Docker SaaSRyan Crawford
 
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App JourneyGlobal Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App JourneyCallon Campbell
 
Dockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud ServicesDockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud ServicesPatrick Chanezon
 

Similar to Agile azure manchester azure user group v3 (20)

JSS build and deployment
JSS build and deploymentJSS build and deployment
JSS build and deployment
 
Windows azure overview for SharePoint Pros
Windows azure overview for SharePoint Pros Windows azure overview for SharePoint Pros
Windows azure overview for SharePoint Pros
 
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
Kubernetes vs App Service
Kubernetes vs App ServiceKubernetes vs App Service
Kubernetes vs App Service
 
Azure DevOps in Action
Azure DevOps in ActionAzure DevOps in Action
Azure DevOps in Action
 
Azure from scratch part 4
Azure from scratch part 4Azure from scratch part 4
Azure from scratch part 4
 
Using Azure DevOps to continuously build, test, and deploy containerized appl...
Using Azure DevOps to continuously build, test, and deploy containerized appl...Using Azure DevOps to continuously build, test, and deploy containerized appl...
Using Azure DevOps to continuously build, test, and deploy containerized appl...
 
Tour of Azure DevOps
Tour of Azure DevOpsTour of Azure DevOps
Tour of Azure DevOps
 
Leveraging Microsoft Azure for Next Gen App Development
Leveraging Microsoft Azure for Next Gen App DevelopmentLeveraging Microsoft Azure for Next Gen App Development
Leveraging Microsoft Azure for Next Gen App Development
 
Kubernetes for .NET Developers
Kubernetes for .NET DevelopersKubernetes for .NET Developers
Kubernetes for .NET Developers
 
Bringing Serverless into the Enterprise (Global Azure Virtual 2020)
Bringing Serverless into the Enterprise (Global Azure Virtual 2020)Bringing Serverless into the Enterprise (Global Azure Virtual 2020)
Bringing Serverless into the Enterprise (Global Azure Virtual 2020)
 
Put Your Existing Application On Windows Azure
Put Your Existing Application On Windows AzurePut Your Existing Application On Windows Azure
Put Your Existing Application On Windows Azure
 
[20200720]cloud native develoment - Nelson Lin
[20200720]cloud native develoment - Nelson Lin[20200720]cloud native develoment - Nelson Lin
[20200720]cloud native develoment - Nelson Lin
 
Back from Microsoft //Build 2018
Back from Microsoft //Build 2018Back from Microsoft //Build 2018
Back from Microsoft //Build 2018
 
Azure presentation nnug dec 2010
Azure presentation nnug  dec 2010Azure presentation nnug  dec 2010
Azure presentation nnug dec 2010
 
[AI] ML Operationalization with Microsoft Azure
[AI] ML Operationalization with Microsoft Azure[AI] ML Operationalization with Microsoft Azure
[AI] ML Operationalization with Microsoft Azure
 
How (and why) to roll your own Docker SaaS
How (and why) to roll your own Docker SaaSHow (and why) to roll your own Docker SaaS
How (and why) to roll your own Docker SaaS
 
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App JourneyGlobal Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
Global Azure 2024 - On-Premises to Azure Cloud: .NET Web App Journey
 
Dockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud ServicesDockercon 2019 Developing Apps with Containers, Functions and Cloud Services
Dockercon 2019 Developing Apps with Containers, Functions and Cloud Services
 

Recently uploaded

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 

Recently uploaded (20)

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 

Agile azure manchester azure user group v3

  • 1. Agile and Azure Emergent Code, BDD , TDD , Team City , Cerebrata CmdLets Presented by Blushpackages : John Mitchell , Becca Martin
  • 2. We started with a single test
  • 3. Practise and Architectural Aims  To use Emergent Architecture and coding practises  To follow a Test Driven approach  To extend our test foot print to Azure  To put quality first  To be responsive to requirement change  To be continually releasable
  • 4. Demonstration Introduction  What will we demonstrate?  Creation of a simple “Hello world” Azure MVC application  Run this application under the Azure emulator to see it working  Create a StoryQ integration test.  Add the Azure support to the acceptance test  Push that down into a base class for reuse.  Run the acceptance test.  Talk about how this would then fit with Team City or another CI engine
  • 5. Lets cut to some code
  • 8. CI Process – In Detail
  • 9. Components For CI publish on Azure  JetBrains TeamCity  Cerebrata Cmdlets  Microsoft Azure Account  Oracle VirtualBox Local VM Container  Powershell  Msbuild
  • 10. CI Process  Build (Locally)  Run Unit Tests (Locally)  Commit  Run Unit Tests on commit build (CI)  Publish to staging (Azure)  Run Watin tests (Azure)  If all green, VIP swop staging to production for BA (Azure)  Send notification email with link to published test output including rich StoryQ output tagged with story numbers
  • 12. Final Thoughts  Azure can be integrated into a true Agile Process  We can evolve our architecture to target Azure with out initial commitment  We can use TDD and BDD with Azure  We can successfully automate deployment with tools like Teamcity and Cerebrata CmdLets  We will be publishing the technical details on the blush packages blog http://blushpackages.com/blog
  • 13. Links and Resources  Watin : http://watin.org/  Team City : http://www.jetbrains.com/teamcity/  CommandLets : http://www.cerebrata.com/  StoryQ : http://storyq.codeplex.com/  Azure : https://www.windowsazure.com  Nunit : http://www.nunit.org/  NSubstitute : http://nsubstitute.github.com/  Agile : http://www.blushpackages.com/Blog/post/WAgile-or-Agile-.aspx  Emergent Architecture : http://www.blushpackages.com/Blog/post/emergent-design- overview.aspx  BDD : http://www.blushpackages.com/Blog/post/bdd-overview.aspx
  • 14. That’s All Folks  John Mitchell - Freelance Developer / Architect Johnm@blushpackages.com Twitter @jemmitch1  Becca Martin - Developer /Architect, Agile Coach, Azure Evangelist beccam@blushpackages.com Twitter @martindotnet Blush Packages Blog : http://blushpackages.com/blog Slides : http://blushpackages.com/presentations