Test Your XAML-based Windows Store Apps with Visual Studio 2013 Benjamin Day

Size: px
Start display at page:

Download "Test Your XAML-based Windows Store Apps with Visual Studio 2013 Benjamin Day"

Transcription

1 Test Your XAML-based Windows Store Apps with Visual Studio 2013 Benjamin Day Level: Intermediate

2 Benjamin Day Brookline, MA Consultant, Coach, & Trainer Microsoft MVP for Visual Studio ALM Team Foundation Server, Software Testing, Scrum, Software Architecture Scrum.org Classes Professional Scrum Developer (PSD) Professional Scrum Foundations (PSF)

3 Online courses at Pluralsight.com

4 Agenda Unit Testing for Windows Store Apps Design for Testability in Model-View-ViewModel Coded UI Testing for Windows Store Apps

5 Testing and software architecture are closely related.

6 If you don t think of how you ll test your app before you build it

7 life will be difficult.

8 Your app. Let s say you have a Windows Store App Calls back to some service endpoints The services write data in to a database You re probably writing all this at the same time Feels like you re writing one application.

9 Client-side & Server-side: They re 2 applications Service Service-Oriented Application (SOA) Uses a database for it s persistence Domain Model implementation User interface is a collection of endpoints (REST, WebAPI) Client Runs on a desktop machine Windows Store Has it s own object model Uses services for persistence

10 Why do I think this? When data is returned via service, you re leaving the AppDomain Objects on the server are converted to XML XML is hierarchical When you re writing service-oriented applications, it s a mistake to think that you re returning objects. Your application is actually message-oriented

11 Why do I think this? Difficult to share code on both sides of the wire You re writing both apps at the same time but the server-side code doesn t need the client code. The client definitely needs the service code.

12 Benefits of thinking about 2 apps It s like building a tunnel under a mountain. Meet in the middle Design the endpoints Server team works on server code Client team works on client code Find problems faster Iterate with your customer faster

13 Benefits of thinking about 2 apps Code to abstractions Fewer dependencies Loosely coupled Easier to test

14 Unit Testing

15 Disclaimer: I m obsessed with unit testing.

16 What s a unit test? Little chunks of code that exercise other chunks of code and verify the results. Unit Test Project(s) System Under Test (Domain Models, Presentation, Data Access, Services, etc.)

17 Why unit test? What s done stays done. You find problems early. Bugs stay dead. Refactoring is painless. If your application is large, it s tough to know when you ve broken something obscure. Unit tests tell you when you ve broken your app.

18 Unit Tests vs. Integration Tests Unit Tests Tests small units of functionality in isolation Dependencies are typically not tested Integration Tests Tests larger pieces of functionality Might test the whole application Usually requires deployment

19 What do I test? Windows Store ViewModels Operations Commands INotifyPropertyChanged Progress Bars Show/Hide Logic Login/Logout Domain Models Domain Model Services Service logic I don t test making service calls from the app to the services Utility methods Server-side Data access code aka. Repositories Domain Model Domain Model Services Services Direct calls to the controllers (Rarely) Calls via HTTP

20 Benefits of 2 applications + unit testing Thinking of 2 apps helps isolate problems Are the service unit tests passing? Are the WinStore App unit tests passing? WinStore App Tests Passing? Services Passing? Conclusion Yes No Service problem No Yes WinStore App problem Yes Yes New problem No No Whew! $%^& is broken.

21 Tip: Don t write new code if the tests are broken. Always code on top of a known good state If you make changes and the tests stop passing, it s your fault. Do your team a favor. Please, don t check in.

22 The layers in an app. User Interface (Windows Store) Coded UI tests Presentation (Model-View-ViewModel) Domain Model / Service Layer Repository / Data Access Unit tests The Service (REST, WebAPI, etc.)

23 Layers help you with Separation of Concerns

24 It can be challenging to separate the UI from the code behind the UI.

25 Model-View-ViewModel helps you keep the UI separated from the code that drives the UI.

26 Model-View-ViewModel = MVVM

27 MVVM is an abstraction of what the UI is thinking and doing.

28 How does MVVM help you design for testability?

29 User Interfaces are hard to test.

30 MVVM lets you test the UI without the actual UI.

31 All that stuff that you d put in the code behind goes in the ViewModel.

32 Demo: Tasks, Async, Await, & Unit Tests

33 Things that help. Modeling selections SingleSelectListViewModel MultiSelectListViewModel Wrapping fields ViewModelField<T> Testers for Progress Bar logic Testers for INotifyPropertyChanged

34 Coded UI Tests

35 What is a Coded UI Test?

36 How is a Coded UI Test different from a Unit Test?

37 Demo: Testing Logic.

38 Demo: Testing gestures.

39 Any last questions?

40 Thanks.

Top 7 Lessons From My First Big Silverlight Project

Top 7 Lessons From My First Big Silverlight Project Top 7 Lessons From My First Big Silverlight Project Benjamin Day Benjamin Day Consulting, Inc. Level: Intermediate/Advanced Benjamin Day Consultant, Coach, Trainer Professional Scrum Development Trainer

More information

Get Good at DevOps: Feature Flag Deployments with ASP.NET, WebAPI, & JavaScript

Get Good at DevOps: Feature Flag Deployments with ASP.NET, WebAPI, & JavaScript Visual Studio Live! Redmond 2016 Get Good at DevOps: Feature Flag Deployments with ASP.NET, WebAPI, & JavaScript Benjamin Day www.benday.com Benjamin Day Brookline, MA Consultant, Coach, & Trainer Microsoft

More information

How to be a C# ninja in 10 easy steps. Benjamin Day

How to be a C# ninja in 10 easy steps. Benjamin Day How to be a C# ninja in 10 easy steps Benjamin Day Benjamin Day Consultant, Coach, Trainer Scrum.org Classes Professional Scrum Developer (PSD) Professional Scrum Foundations (PSF) TechEd, VSLive, DevTeach,

More information

17 Roberts St #2 Brookline, MA

17 Roberts St #2 Brookline, MA Benjamin Day www.benday.com blog.benday.com 17 Roberts St #2 Brookline, MA 02445 benday@benday.com 617-645-0188 Last Updated August 7, 2009 Overview 12 years of software architecture, development, and

More information

Which one? It all comes down to complexity. Scrum - Kanban Cage Match. Kanban. Scrum Ben Day. The Tale of the Tape. Scrum and Kanban Cage Match

Which one? It all comes down to complexity. Scrum - Kanban Cage Match. Kanban. Scrum Ben Day. The Tale of the Tape. Scrum and Kanban Cage Match - Kanban Cage Match The Tale of the Tape and Kanban Cage Match Ben Day Benjamin Day Consulting, Inc. David Starr Pluralsight Ben Day benday@benday.com @benday Blog: blog.benday.com 175 lbs. 5 8 Kanban

More information

Build Testable Client and Service Applications

Build Testable Client and Service Applications Build Testable Client and Service Applications Brian Noyes IDesign Inc (www.idesign.net) brian.noyes@idesign.net About Brian Chief Architect IDesign Inc. (www.idesign.net) Microsoft Regional Director MVP

More information

Practical WPF. Learn by Working Professionals

Practical WPF. Learn by Working Professionals Practical WPF Learn by Working Professionals WPF Course Division Day 1 WPF prerequisite What is WPF WPF XAML System WPF trees WPF Properties Day 2 Common WPF Controls WPF Command System WPF Event System

More information

04 Sharing Code Between Windows 8 and Windows Phone 8 in Visual Studio. Ben Riga

04 Sharing Code Between Windows 8 and Windows Phone 8 in Visual Studio. Ben Riga 04 Sharing Code Between Windows 8 and Windows Phone 8 in Visual Studio Ben Riga http://about.me/ben.riga Course Topics Building Apps for Both Windows 8 and Windows Phone 8 Jump Start 01 Comparing Windows

More information

Blissful Separation of Concerns with Model-View-ViewModel (MVVM)

Blissful Separation of Concerns with Model-View-ViewModel (MVVM) Blissful Separation of Concerns with Model-View-ViewModel (MVVM) Brian Noyes Chief Architect, IDesign(www.idesign.net) brian.noyes@idesign.net, @briannoyes Level: Intermediate About Brian Chief Architect

More information

Building a mobile enterprise application with Xamarin.Forms, Docker, MVVM and.net Core. Gill

Building a mobile enterprise application with Xamarin.Forms, Docker, MVVM and.net Core. Gill Building a mobile enterprise application with Xamarin.Forms, Docker, MVVM and.net Core Gill Cleeren @gillcleeren www.snowball.be Agenda Overall application structure The Xamarin application architecture

More information

WPF and MVVM Study Guides

WPF and MVVM Study Guides 1. Introduction to WPF WPF and MVVM Study Guides https://msdn.microsoft.com/en-us/library/mt149842.aspx 2. Walkthrough: My First WPF Desktop Application https://msdn.microsoft.com/en-us/library/ms752299(v=vs.110).aspx

More information

Building Extensible XAML Client Apps

Building Extensible XAML Client Apps Building Extensible XAML Client Apps Brian Noyes Chief Architect, IDesign Inc www.idesign.net brian.noyes@idesign.net, @briannoyes Level: Intermediate About Brian Chief Architect IDesign Inc. (www.idesign.net)

More information

1. I NEED TO HAVE MULTIPLE VERSIONS OF VISUAL STUDIO INSTALLED IF I M MAINTAINING APPLICATIONS THAT RUN ON MORE THAN ONE VERSION OF THE.

1. I NEED TO HAVE MULTIPLE VERSIONS OF VISUAL STUDIO INSTALLED IF I M MAINTAINING APPLICATIONS THAT RUN ON MORE THAN ONE VERSION OF THE. CUSTOMER PAIN POINTS 1. I NEED TO HAVE MULTIPLE VERSIONS OF VISUAL STUDIO INSTALLED IF I M MAINTAINING APPLICATIONS THAT RUN ON MORE THAN ONE VERSION OF THE.NET FRAMEORK. THAT S TAKING UP SPACE ON MY HARDDRIVE

More information

03 Model-View-ViewModel. Ben Riga

03 Model-View-ViewModel. Ben Riga 03 Model-View-ViewModel Ben Riga http://about.me/ben.riga Course Topics Building Apps for Both Windows 8 and Windows Phone 8 Jump Start 01 Comparing Windows 8 and Windows Phone 8 02 Basics of View Models

More information

3 Continuous Integration 3. Automated system finding bugs is better than people

3 Continuous Integration 3. Automated system finding bugs is better than people This presentation is based upon a 3 day course I took from Jared Richardson. The examples and most of the tools presented are Java-centric, but there are equivalent tools for other languages or you can

More information

CS 160: Evaluation. Professor John Canny Spring /15/2006 1

CS 160: Evaluation. Professor John Canny Spring /15/2006 1 CS 160: Evaluation Professor John Canny Spring 2006 2/15/2006 1 Outline User testing process Severity and Cost ratings Discount usability methods Heuristic evaluation HE vs. user testing 2/15/2006 2 Outline

More information

Chapter01.fm Page 1 Monday, August 23, :52 PM. Part I of Change. The Mechanics. of Change

Chapter01.fm Page 1 Monday, August 23, :52 PM. Part I of Change. The Mechanics. of Change Chapter01.fm Page 1 Monday, August 23, 2004 1:52 PM Part I The Mechanics of Change The Mechanics of Change Chapter01.fm Page 2 Monday, August 23, 2004 1:52 PM Chapter01.fm Page 3 Monday, August 23, 2004

More information

CS 160: Evaluation. Outline. Outline. Iterative Design. Preparing for a User Test. User Test

CS 160: Evaluation. Outline. Outline. Iterative Design. Preparing for a User Test. User Test CS 160: Evaluation Professor John Canny Spring 2006 2/15/2006 1 2/15/2006 2 Iterative Design Prototype low-fi paper, DENIM Design task analysis contextual inquiry scenarios sketching 2/15/2006 3 Evaluate

More information

Cross-Platform Mobile Platforms and Xamarin. Presented by Mir Majeed

Cross-Platform Mobile Platforms and Xamarin. Presented by Mir Majeed Cross-Platform Mobile Platforms and Xamarin Presented by Mir Majeed Agenda 1. Sharing Code Among Different Platforms File-Linking into each App Project Portable Class Libraries 2. Solution Population Strategies

More information

Windows Presentation Foundation (WPF)

Windows Presentation Foundation (WPF) 50151 - Version: 4 21 January 2018 Windows Presentation Foundation (WPF) Windows Presentation Foundation (WPF) 50151 - Version: 4 5 days Course Description: This five-day instructor-led course provides

More information

Implementing MVVM in Real World ArcGIS Server Silverlight Applications. Brandon Copeland LJA Engineering, Inc.

Implementing MVVM in Real World ArcGIS Server Silverlight Applications. Brandon Copeland LJA Engineering, Inc. Implementing MVVM in Real World ArcGIS Server Silverlight Applications Brandon Copeland LJA Engineering, Inc. 1 Agenda / Focused Topics Application Demo Model-View-ViewModel (MVVM) What is MVVM? Why is

More information

Advance Windows Phone Development. Akber Alwani Window Phone 7 Development EP.NET Professionals User Group

Advance Windows Phone Development. Akber Alwani Window Phone 7 Development EP.NET Professionals User Group Advance Windows Phone Development Akber Alwani Window Phone 7 Development EP.NET Professionals User Group http://www.epdotnet.com 7 Agenda Page Navigation Application Bar and System tray Orientation-Aware

More information

COMP390 (Design &) Implementation

COMP390 (Design &) Implementation COMP390 (Design &) Implementation A rough guide Consisting of some ideas to assist the development of large and small projects in Computer Science (With thanks to Dave Shield) Design & Implementation What

More information

TestComplete 3.0 Overview for Non-developers

TestComplete 3.0 Overview for Non-developers TestComplete 3.0 Overview for Non-developers Copyright 2003 by Robert K. Leahey and AutomatedQA, Corp. All rights reserved. Part : Table of Contents Introduction 1 About TestComplete 1 Basics 2 Types of

More information

Configuring and Customizing the ArcGIS Viewer for Silverlight. Katy Dalton

Configuring and Customizing the ArcGIS Viewer for Silverlight. Katy Dalton Configuring and Customizing the ArcGIS Viewer for Silverlight Katy Dalton kdalton@esri.com Agenda Overview of the ArcGIS Viewer for Silverlight Extensibility endpoints - Tools, Behaviors, Layouts, Controls

More information

Think like an Elm developer

Think like an Elm developer Think like an Elm developer Piper Niehaus Denver, CO, USA Backpacker / skier Nonprofit board chair Software Engineer at Pivotal Pivotal Tracker team Elm in Production since 2016 Internal Products and Services

More information

COMP390 (Design &) Implementation

COMP390 (Design &) Implementation COMP390 (Design &) Implementation Phil (& Dave s) rough guide Consisting of some ideas to assist the development of large and small projects in Computer Science (and a chance for me to try out some features

More information

Build/Test Windows 8 Apps with Team Foundation Service. Kevin DeRudder - Pieter Gheysens. April 12, 2013 Belgium (TBD)

Build/Test Windows 8 Apps with Team Foundation Service. Kevin DeRudder - Pieter Gheysens. April 12, 2013 Belgium (TBD) Build/Test Windows 8 Apps with Team Foundation Service Kevin DeRudder - Pieter Gheysens April 12, 2013 Belgium (TBD) Overview With Team Foundation Service (aka Team Foundation Server in the cloud), your

More information

INTRODUCING THE OFFICE 365 DEV PNP PARTNER PACK

INTRODUCING THE OFFICE 365 DEV PNP PARTNER PACK INTRODUCING THE OFFICE 365 DEV PNP PARTNER PACK PAOLO PIALORSI SENIOR CONSULTANT, PIASYS.COM, ITALY About me Project Manager, Consultant, Trainer About 50 Microsoft certification exams passed MCSM Charter

More information

Test Driven Development (TDD)

Test Driven Development (TDD) Test Driven Development (TDD) Test Driven Development Introduction Good programmers write code, great programmers write tests Never, in the field of programming, have so many owed so much to so few - Martin

More information

7 Tips for Raising The Quality Bar With Visual Studio 2012

7 Tips for Raising The Quality Bar With Visual Studio 2012 Visit: www.intertech.com/blog 7 Tips for Raising The Quality Bar With Visual Studio 2012 Tip 1: Exploratory Testing I have to admit that when I first found out that enhanced exploratory testing was the

More information

Android PC Splash Brothers Design Specifications

Android PC Splash Brothers Design Specifications Android PC Splash Brothers Design Specifications Contributors: Zach Bair Taronish Daruwalla Joshua Duong Anthony Nguyen 1. Technology background The Android x86 project has been in existence since 2011.

More information

Developing Add-Ins for ArcGIS Pro (.NET) Toronto Esri Canada UC Presented by: Gandhar Wazalwar & Kern Ranjitsingh October 11, 2018

Developing Add-Ins for ArcGIS Pro (.NET) Toronto Esri Canada UC Presented by: Gandhar Wazalwar & Kern Ranjitsingh October 11, 2018 Developing Add-Ins for ArcGIS Pro (.NET) Toronto Esri Canada UC Presented by: Gandhar Wazalwar & Kern Ranjitsingh October 11, 2018 Esri Canada Professional Services Project services Implementation services

More information

UI Software Organization

UI Software Organization UI Software Organization The user interface From previous class: Generally want to think of the UI as only one component of the system Deals with the user Separate from the functional core (AKA, the app

More information

Build Loosely Coupled Silverlight Business Applications

Build Loosely Coupled Silverlight Business Applications Build Loosely Coupled Silverlight Business Applications Brian Noyes www.idesign.net About Brian Chief Architect IDesign Inc. (www.idesign.net) Microsoft Regional Director (www.theregion.com) Microsoft

More information

MVC / MVP Mei Nagappan

MVC / MVP Mei Nagappan Material and some slide content from: - Krzysztof Czarnecki - Ian Sommerville - Reid Holmes - Head First Design Patterns MVC / MVP Mei Nagappan [Image from: http://merroun.wordpress.com/2012/03/28/mvvm-mvp-and-mvc-software-patterns-againts-3-layered-architecture/

More information

Prism Composite Application Guidance

Prism Composite Application Guidance Prism Composite Application Guidance Brian Noyes www.idesign.net About Brian Chief Architect IDesign Inc. (www.idesign.net) Microsoft Regional Director (www.theregion.com) Microsoft MVP Silverlight Publishing

More information

LA CISD Tech Day Presented by: Microsoft. Piyush Saggi Developer Solutions Specialist

LA CISD Tech Day Presented by: Microsoft. Piyush Saggi Developer Solutions Specialist LA CISD Tech Day Presented by: Microsoft Piyush Saggi Developer Solutions Specialist psaggi@microsoft.com Agenda Introduction Some Q & A What roles do you represent? Areas of expertise.net? How many are

More information

TEST STUDIO FEATURES FOR SUCCESSFUL TEST AUTOMATION

TEST STUDIO FEATURES FOR SUCCESSFUL TEST AUTOMATION TEST STUDIO FEATURES FOR SUCCESSFUL TEST AUTOMATION CROSS-BROWSER TEST RECORD AND PLAYBACK: BETTER, QUICKER AND MORE ACCURATE 1 Unlike most test automation solutions out there, Test Studio lets testers

More information

Azure Developer Immersion Getting Started

Azure Developer Immersion Getting Started Azure Developer Immersion Getting Started In this walkthrough, you will get connected to Microsoft Azure and Visual Studio Team Services. You will also get the code and supporting files you need onto your

More information

Steps for project success. git status. Milestones. Deliverables. Homework 1 submitted Homework 2 will be posted October 26.

Steps for project success. git status. Milestones. Deliverables. Homework 1 submitted Homework 2 will be posted October 26. git status Steps for project success Homework 1 submitted Homework 2 will be posted October 26 due November 16, 9AM Projects underway project status check-in meetings November 9 System-building project

More information

brief contents PART 1 INTRODUCING WINDOWS PHONE... 1 PART 2 CORE WINDOWS PHONE... 57

brief contents PART 1 INTRODUCING WINDOWS PHONE... 1 PART 2 CORE WINDOWS PHONE... 57 brief contents PART 1 INTRODUCING WINDOWS PHONE... 1 1 A new phone, a new operating system 3 2 Creating your first Windows Phone application 30 PART 2 CORE WINDOWS PHONE... 57 3 Fast application switching

More information

Going SOA with CA Plex and Websydian

Going SOA with CA Plex and Websydian Going SOA with CA Plex and Websydian TransacXML Speakers e Søren Madsen Chief Consultant, Soft Design A/S Anne-Marie Arnvig Communications Manager, Websydian A/S Agenda SOA vs. Web Services What is a service?

More information

Azure Developer Immersions API Management

Azure Developer Immersions API Management Azure Developer Immersions API Management Azure provides two sets of services for Web APIs: API Apps and API Management. You re already using the first of these. Although you created a Web App and not

More information

CATCH ERRORS BEFORE THEY HAPPEN. Lessons for a mature data governance practice

CATCH ERRORS BEFORE THEY HAPPEN. Lessons for a mature data governance practice CATCH ERRORS BEFORE THEY HAPPEN Lessons for a mature data governance practice A guide to working with cross-departmental teams to establish proactive data governance for your website or mobile app. 2 Robust

More information

Creating an Intranet using Lotus Web Content Management. Part 2 Project Planning

Creating an Intranet using Lotus Web Content Management. Part 2 Project Planning Creating an Intranet using Lotus Web Content Management Introduction Part 2 Project Planning Many projects have failed due to poor project planning. The following article gives an overview of the typical

More information

Data integration made easy with Talend Open Studio for Data Integration. Dimitar Zahariev BI / DI Consultant

Data integration made easy with Talend Open Studio for Data Integration. Dimitar Zahariev BI / DI Consultant Data integration made easy with Talend Open Studio for Data Integration Dimitar Zahariev BI / DI Consultant dimitar@zahariev.pro @shekeriev Disclaimer Please keep in mind that: 2 I m not related in any

More information

AGILE DATABASE TECHNIQUES USING VISUAL STUDIO TEAM SYSTEM 2008 Course ADT08: Three days; Instructor-Led Course Syllabus INTRODUCTION AUDIENCE

AGILE DATABASE TECHNIQUES USING VISUAL STUDIO TEAM SYSTEM 2008 Course ADT08: Three days; Instructor-Led Course Syllabus INTRODUCTION AUDIENCE AGILE DATABASE TECHNIQUES USING VISUAL STUDIO TEAM SYSTEM 2008 Course ADT08: Three days; Instructor-Led Course Syllabus INTRODUCTION This three-day, instructor-led course provides students with the knowledge

More information

Pro XAML with C# From Design to Deployment on WPF, Windows Store, and Windows Phone. Buddy James. Lori Lalonde

Pro XAML with C# From Design to Deployment on WPF, Windows Store, and Windows Phone. Buddy James. Lori Lalonde Pro XAML with C# From Design to Deployment on WPF, Windows Store, and Windows Phone Buddy James Lori Lalonde Contents J About the Authors About the Technical Reviewer Acknowledgments Introduction xiii

More information

Test Automation: Agile Enablement for Business Intelligence Teams

Test Automation: Agile Enablement for Business Intelligence Teams Test Automation: Agile Enablement for Business Intelligence Teams Lynn Winterboer Agile Analytics Educator & Coach @AgileLynn www.winterboeragileanalytics.com Lynn Winterboer Colorado Native Guest Ranch

More information

Copyright Biz4Solutions Pvt. Ltd. All Rights Reserved.. Biz4solutions Logo and designs are trademarks of Biz4Solutions Pvt. Ltd. All trademarks and

Copyright Biz4Solutions Pvt. Ltd. All Rights Reserved.. Biz4solutions Logo and designs are trademarks of Biz4Solutions Pvt. Ltd. All trademarks and Mobile Development Practices Focus on Quick Feedback Shops building great mobile apps simplify their development processes to minimize the time it takes to get actionable customer feedback. This means

More information

Mobile Test Automation is not Rocket Science! Baris

Mobile Test Automation is not Rocket Science! Baris Mobile Test Automation is not Rocket Science! Baris Baris Sarialioglu... Managing Partner, Consultant, Trainer ex-sw Developer, ex-cmmi Consultant, ex-employee, Infineon, Boeing, Siemens, Huawei, UniCredit

More information

SOA Distilled. Udi Dahan The Software Simplist..NET Development Expert & SOA Specialist Microsoft Solutions Architect MVP

SOA Distilled. Udi Dahan The Software Simplist..NET Development Expert & SOA Specialist Microsoft Solutions Architect MVP SOA Distilled Udi Dahan The Software Simplist.NET Development Expert & SOA Specialist Microsoft Solutions Architect MVP Udi Dahan - The Software Simplist Consulting, Mentoring & Training Helping you Keep

More information

Test Driven Development TDD

Test Driven Development TDD Test Driven Development TDD Testing Testing can never demonstrate the absence of errors in software, only their presence Edsger W. Dijkstra (but it is very good at the latter). Testing If it's worth building,

More information

This walkthrough assumes you have completed the Getting Started walkthrough and the first lift and shift walkthrough.

This walkthrough assumes you have completed the Getting Started walkthrough and the first lift and shift walkthrough. Azure Developer Immersion In this walkthrough, you are going to put the web API presented by the rgroup app into an Azure API App. Doing this will enable the use of an authentication model which can support

More information

Portable Class Libraries ---

Portable Class Libraries --- Portable Class Libraries --- Overview In this lab, you ll learn about Portable Class Libraries (PCLs). PCLs enable you to create managed assemblies that work on more than one.net Framework platform. Within

More information

[Compatibility Mode] Confusion in Office 2007

[Compatibility Mode] Confusion in Office 2007 [Compatibility Mode] Confusion in Office 2007 Confused by [Compatibility Mode] in Office 2007? You re Not Alone, and Here s Why Funnybroad@gmail.com 8/30/2007 This paper demonstrates how [Compatibility

More information

Developing Rich Internet Applications Using Microsoft Silverlight 4

Developing Rich Internet Applications Using Microsoft Silverlight 4 Developing Rich Internet Applications Using Microsoft Silverlight 4 Course No. 10554 5 Days Instructor-led, Hands-on Introduction This course covers intermediate and advanced topics required to develop

More information

User-Centered Development

User-Centered Development Software Lifecycle CS470 User-Centered Development User-centered development refers to a design process for creating a system that meets the needs of the user Users should be included in the design process

More information

ArcGIS Pro SDK for.net Intro and Pro Add-in Programming Patterns. Wolfgang Kaiser

ArcGIS Pro SDK for.net Intro and Pro Add-in Programming Patterns. Wolfgang Kaiser ArcGIS Pro SDK for.net Intro and Pro Add-in Programming Patterns Wolfgang Kaiser Session Overview Introduction to Pro Add-ins and the Module Introduction to Pro Configurations Asynchronous Programming:

More information

A DEVELOPER S GUIDE TO XP EOL

A DEVELOPER S GUIDE TO XP EOL A DEVELOPER S GUIDE TO XP EOL Everything you need to know. Windows XP is out of support April 9, 2014. Last day of support is April 8, 2014 There are 189 days from Oct. 1, 2013 to Apr. 8, 2014 Including

More information

This tutorial is designed for software developers who want to learn how to develop quality applications with clean structure of code.

This tutorial is designed for software developers who want to learn how to develop quality applications with clean structure of code. About the Tutorial Every good developer wants and tries to create the most sophisticated applications to delight their users. Most of the times, developers achieve this on the first release of the application.

More information

AND BlackBerry JUL13 ISBN

AND BlackBerry JUL13 ISBN AND BlackBerry 806-29JUL13 ISBN 978-0-9819900-1-9 Contents 1 2 3 The Essentials of GTD and BlackBerry What is GTD?... 1 Which tools are best for GTD?... 1 If GTD is not about any particular tool, why a

More information

Module Title : 20484C:Essentials of Developing Windows Store Apps Using C#

Module Title : 20484C:Essentials of Developing Windows Store Apps Using C# Module Title : 20484C:Essentials of Developing Windows Store Apps Using C# Duration : 5 days Overview About this course In this course students will learn essential programming skills and techniques that

More information

Simple AngularJS thanks to Best Practices

Simple AngularJS thanks to Best Practices Simple AngularJS thanks to Best Practices Learn AngularJS the easy way Level 100-300 What s this session about? 1. AngularJS can be easy when you understand basic concepts and best practices 2. But it

More information

DOC - MS VISUAL STUDIO EXPRESS 2012 USER GUIDE

DOC - MS VISUAL STUDIO EXPRESS 2012 USER GUIDE 08 November, 2017 DOC - MS VISUAL STUDIO EXPRESS 2012 USER GUIDE Document Filetype: PDF 454.51 KB 0 DOC - MS VISUAL STUDIO EXPRESS 2012 USER GUIDE NET API in Visual Studio 2008 Express. How do I install

More information

Validating customer demand

Validating customer demand Validating customer demand Why and how to test product and feature concepts without writing a single line of code Steven Cohn Founder & CEO Validately Anuraag Verma VP of Business Development Alpha UX

More information

MV* Design Patterns. Alexander Nelson August 25, University of Arkansas - Department of Computer Science and Computer Engineering

MV* Design Patterns. Alexander Nelson August 25, University of Arkansas - Department of Computer Science and Computer Engineering MV* Design Patterns Alexander Nelson August 25, 2017 University of Arkansas - Department of Computer Science and Computer Engineering Reminders Course Mechanics Course Webpage: you.uark.edu/ahnelson/cmpe-4623-mobile-programming/

More information

Building Loosely Coupled XAML Client Apps with Prism

Building Loosely Coupled XAML Client Apps with Prism Building Loosely Coupled XAML Client Apps with Prism Brian Noyes IDesign Inc. (www.idesign.net) brian.noyes@idesign.net, @briannoyes About Brian Chief Architect IDesign Inc. (www.idesign.net) Microsoft

More information

Setting Up Your ios Development Environment. For Mac OS X (Mountain Lion) v1.0. By GoNorthWest. 5 February 2013

Setting Up Your ios Development Environment. For Mac OS X (Mountain Lion) v1.0. By GoNorthWest. 5 February 2013 Setting Up Your ios Development Environment For Mac OS X (Mountain Lion) v1.0 By GoNorthWest 5 February 2013 Setting up the Apple ios development environment, which consists of Xcode and the ios SDK (Software

More information

CERTIFIED KANBAN FOUNDATION. Certification-led

CERTIFIED KANBAN FOUNDATION. Certification-led CERTIFIED KANBAN FOUNDATION Vertical Type Sub-Category Technology Certification-led Kanban Welcome Note Hello there You've considered embarking on an exciting journey to strengthen your professional status

More information

1.5 Edge Component The problem. Practical SOA Arnon Rotem-Gal-Oz 1

1.5 Edge Component The problem. Practical SOA Arnon Rotem-Gal-Oz 1 1 1.5 Edge Component The last pattern of the basic patterns is the Edge Component pattern. Unlike the other pattern which are basic just because they are very common, the Edge component is also basic because

More information

Azure Developer Immersions Application Insights

Azure Developer Immersions Application Insights Azure Developer Immersions Application Insights Application Insights provides live monitoring of your applications. You can detect and diagnose faults and performance issues, as well as discover how users

More information

AR.04 Composite Application Guidance for WPF (aka Prism ) Brian Noyes IDesign Inc (www.idesign.net)

AR.04 Composite Application Guidance for WPF (aka Prism ) Brian Noyes IDesign Inc (www.idesign.net) AR.04 Composite Application Guidance for WPF (aka Prism ) Brian Noyes IDesign Inc (www.idesign.net) brian.noyes@idesign.net About Brian Chief Architect, IDesign Inc. (www.idesign.net) Microsoft Regional

More information

Visual Studio 2015: Windows Presentation Foundation (using VB.NET Language) Training Course Outline

Visual Studio 2015: Windows Presentation Foundation (using VB.NET Language) Training Course Outline Visual Studio 2015: Windows Presentation Foundation (using VB.NET Language) Training Course Outline 1 Visual Studio 2015: Windows Presentation Foundation Program Overview This Four-day instructor-led course

More information

Foundational Design Patterns for Moving Beyond One Loop

Foundational Design Patterns for Moving Beyond One Loop Foundational Design Patterns for Moving Beyond One Loop Raja Pillai Technical Consultant Agenda Why move beyond one loop? What is a design pattern? Why learn communication mechanisms? Functional global

More information

9 th CA 2E/CA Plex Worldwide Developer Conference 1

9 th CA 2E/CA Plex Worldwide Developer Conference 1 1 Introduction/Welcome Message Organizations that are making major changes to or replatforming an application need to dedicate considerable resources ot the QA effort. In this session we will show best

More information

Science-as-a-Service

Science-as-a-Service Science-as-a-Service The iplant Foundation Rion Dooley Edwin Skidmore Dan Stanzione Steve Terry Matthew Vaughn Outline Why, why, why! When duct tape isn t enough Building an API for the web Core services

More information

Introduction to User Stories. CSCI 5828: Foundations of Software Engineering Lecture 05 09/09/2014

Introduction to User Stories. CSCI 5828: Foundations of Software Engineering Lecture 05 09/09/2014 Introduction to User Stories CSCI 5828: Foundations of Software Engineering Lecture 05 09/09/2014 1 Goals Present an introduction to the topic of user stories concepts and terminology benefits and limitations

More information

XAMARIN Application Development - Workshop

XAMARIN Application Development - Workshop XAMARIN Application Development - Workshop Program 1: August 6 to 10 2017 Program 2: November 5 to 9 2017 Duration:(5days) 9 am to 4 pm Hotel Majestic- Dubai ISIDUS TECH TEAM FZE PO Box 9798 Dubai UAE,

More information

1. The Normal Distribution, continued

1. The Normal Distribution, continued Math 1125-Introductory Statistics Lecture 16 10/9/06 1. The Normal Distribution, continued Recall that the standard normal distribution is symmetric about z = 0, so the area to the right of zero is 0.5000.

More information

1 Software Architecture

1 Software Architecture Some buzzwords and acronyms for today Software architecture Design pattern Separation of concerns Single responsibility principle Keep it simple, stupid (KISS) Don t repeat yourself (DRY) Don t talk to

More information

Composite Application Guidance for WPF and Silverlight (AKA Prism 2 )

Composite Application Guidance for WPF and Silverlight (AKA Prism 2 ) Composite Application Guidance for WPF and Silverlight (AKA Prism 2 ) Brian Noyes www.idesign.net About Brian Chief Architect, IDesign Inc. (www.idesign.net) Microsoft Regional Director / MVP Publishing

More information

How to Collect and Manage Requirements for Successful GIS Projects. Matt Harman Craig Venker

How to Collect and Manage Requirements for Successful GIS Projects. Matt Harman Craig Venker How to Collect and Manage Requirements for Successful GIS Projects Matt Harman Craig Venker Requirements Provide direction for program success Why Requirements are Important? Top Ten factors found in Failed

More information

STARCOUNTER. Technical Overview

STARCOUNTER. Technical Overview STARCOUNTER Technical Overview Summary 3 Introduction 4 Scope 5 Audience 5 Prerequisite Knowledge 5 Virtual Machine Database Management System 6 Weaver 7 Shared Memory 8 Atomicity 8 Consistency 9 Isolation

More information

CRMUG MS CRM Solution Packager Københavns Kommune

CRMUG MS CRM Solution Packager Københavns Kommune CRMUG MS CRM Solution Packager 2016-02-08 @ Københavns Kommune Agenda Matching of expectations Short introduction: Speaker and Delegate A/S (CRM) MS CRM Solution Packager What is it, why use it and mostly

More information

Git. all meaningful operations can be expressed in terms of the rebase command. -Linus Torvalds, 2015

Git. all meaningful operations can be expressed in terms of the rebase command. -Linus Torvalds, 2015 Git all meaningful operations can be expressed in terms of the rebase command -Linus Torvalds, 2015 a talk by alum Ross Schlaikjer for the GNU/Linux Users Group Sound familiar? add commit diff init clone

More information

Bootcamp Curriculum. Mobile Application Development - 7 Weeks. Training Curriculum. Mobile Application Development Curriculum 1. Cross Platform Design

Bootcamp Curriculum. Mobile Application Development - 7 Weeks. Training Curriculum. Mobile Application Development Curriculum 1. Cross Platform Design Bootcamp Curriculum Mobile Application Development - 7 Weeks Training Curriculum Orientation (1 day) UI & UX Fundamentals Learning C# for Mobile Development (7 days) Building Cross Platform Applications

More information

Designing largescale applications. in Python. EuroPython 2013 Florence, Italy. Marc-André Lemburg

Designing largescale applications. in Python. EuroPython 2013 Florence, Italy. Marc-André Lemburg Designing largescale applications in Python Florence, Italy Marc-André Lemburg (c) 2013 egenix.com com Software GmbH, info@egenix.com 2 Agenda 1. Introduction 2. Application Design 3. Before you start...

More information

Tools to Develop New Linux Applications

Tools to Develop New Linux Applications Tools to Develop New Linux Applications IBM Software Development Platform Tools for every member of the Development Team Supports best practices in Software Development Analyst Architect Developer Tester

More information

12/7/09. How is a programming language processed? Picasso Design. Collaborating with Subversion Discussion of Preparation Analyses.

12/7/09. How is a programming language processed? Picasso Design. Collaborating with Subversion Discussion of Preparation Analyses. Picasso Design Finish parsing commands Collaborating with Subversion Discussion of Preparation Analyses How is a programming language processed? What are the different phases? Start up Eclipse User s Input

More information

Test Driven Development (TDD), and Working with Legacy Code Using C# Workshop ( 4 days)

Test Driven Development (TDD), and Working with Legacy Code Using C# Workshop ( 4 days) Test Driven Development (TDD), and Working with Legacy Code Using C# Workshop ( 4 days) HOTEL DUBAI GRAND April 16 to 19-2018 Monday to Thursday ) (4 days) 9 am to 4 pm ISIDUS TECH TEAM FZE PO Box 9798

More information

Build Better WPF & Silverlight applications using Prism v2

Build Better WPF & Silverlight applications using Prism v2 Build Better WPF & Silverlight applications using Prism v2 Client Application Challenges The Problem: Client Applications can be Difficult! How Do You Make The Application Dynamic, Customizable, Extensible,

More information

Agile Tester Foundation E-learning Course Outline

Agile Tester Foundation E-learning Course Outline Foundation E-learning Course Outline General Description This course provides testers and test managers with an understanding of the fundamentals of testing on agile projects. Attendees will learn how

More information

Missing link in the automated development process DevOps Integrating TFS and SCOM. Ognjen Bajic, MVP for VS ALM, PMP, MCSD, MCTS:TFS Ekobit

Missing link in the automated development process DevOps Integrating TFS and SCOM. Ognjen Bajic, MVP for VS ALM, PMP, MCSD, MCTS:TFS Ekobit Missing link in the automated development process DevOps Integrating TFS and SCOM Ognjen Bajic, MVP for VS ALM, PMP, MCSD, MCTS:TFS Ekobit Agenda DevOps DevOps impediments SCOM TFS- SCOM integration Intellitrace

More information

Why test automation projects are failing? Igor Khrol

Why test automation projects are failing? Igor Khrol Why test automation projects are failing? Igor Khrol http://www.khroliz.com About myself Igor Khrol More than 7 years in automated testing Consultant, trainer, manager, engineer, architect Selenium, HP

More information

The Challenges for Software Developers with Modern App Delivery

The Challenges for Software Developers with Modern App Delivery The Challenges for Software Developers with Modern App Delivery This blog post is by Tim Mangan, owner of TMurgent Technologies, LLP. Awarded a Microsoft MVP for Application Virtualization, and CTP by

More information

Introduction. A Brief Description of Our Journey

Introduction. A Brief Description of Our Journey Introduction If you still write RPG code as you did 20 years ago, or if you have ILE RPG on your resume but don t actually use or understand it, this book is for you. It will help you transition from the

More information

Newmont 3. Patrick Barringer Tomas Morris Emil Marinov

Newmont 3. Patrick Barringer Tomas Morris Emil Marinov Newmont 3 Patrick Barringer Tomas Morris Emil Marinov June 18, 2013 Contents I Introduction 2 1 Client 3 2 Product vision 3 II Requirements 3 3 Overview 3 4 The Model 3 5 SharePoint 3 6 Data Collection

More information

Software Development and Usability Testing

Software Development and Usability Testing Software Development and Usability Testing Shneiderman, Chapter 4 Preece et al, Ch 9, 11-15 Krug, Rocket Surgery Made Easy Rubin, Handbook of Usability Testing Norman Neilsen Group www HCI in Software

More information