SlideShare ist ein Scribd-Unternehmen logo
1 von 102
© Zühlke 2013
Professionelle Desktop- und App-
Entwicklung

12.04.2013
Meister werden – Training Stufe 1
Schlieren
                                    © Zühlke 2013
Agenda
 Intro           13:30 – 13:35    5’
 Einführung      13:35 – 13:45   10’
 Teil 1          13:45 – 14:30   45’
 Pause           14:30 – 14:45   15’
                                       Agenda
 Teil 2          14:45 – 15:45   60’
 Pause           15:45 – 16:00   15’
 Teil 3          16:00 – 16:45   45’
 Meister-Tools   16:45 – 16:55   10’
 Outro & Apéro   16:55 – 18:00   65’

                                                © Zühlke 2013
Sensei

          Nur wer fragt wird
         Meister seines Fachs!




                                 © Zühlke 2013
© Zühlke 2013
Facts & Figures
Mehr als 8'000 Projekte realisiert
99 Mio. CHF Umsatz (2012)
550 Mitarbeiterinnen & Mitarbeiter
(Ende 2012)
In Deutschland, Großbritannien, Österreich
und in der Schweiz
Gegründet 1968,
im Besitz von Partnern
ISO 9001 und 13485
zertifiziert



                                             © Zühlke 2013
Über uns



Romano Roth                         Stefan Züger
Lead Software Architect             Software Engineer
Zühlke seit 2002                    Zühlke seit 2010
Client-Architekturen                Client-Entwicklung
Product Owner (PO) im Rollenspiel   Entwickler (Dev) im Rollenspiel
romano.roth (at) zuehlke.com        stefan.zueger (at) zuehlke.com
                                                              © Zühlke 2013
Einführung

             © Zühlke 2013
Übersicht Trainings




Stufe 1                              Stufe 2                             Stufe 3
Professionelle Desktop- und          Agile Entwicklung und               Professionelle Integration von
App-Entwicklung                      Qualitätssteigerung                 Entwicklung und Betrieb und
  Application Lifecycle Management     Statische Codeanalyse             Architekturanalyse
  Automatische Unittests               Testfunktionen mit Codecoverage     Intellitrace
  Team Foundation Server               Aufbau von Virtuellen               Web- und Performancetesting
                                       Testumgebungen                      Automatisches Deployment


                                                                                                         © Zühlke 2013
Typische Herausforderungen

Challenge 1




Challenge 2




Challenge 3




                             © Zühlke 2013
Konkrete Lösungen
                                    REQUIREMENTS

  2                                                                     1
Integration Unit-Testing                                              Visual Studio als einheitliches
Frameworks in Visual Studio                                           Tool für alle Plattformen



                                                                        1
  2                                                                   Integration von Technologien
                                Implement                             mit Team Explorer Everywhere
Schnelles Ausführen und                                    Monitor    und “git tf”
Verwalten aller Unittest im
Test Explorer



                                                                        3
  2                                                                   Zentrale Source Code
                                                                      Verwaltung und transpartent
Statische Code Analyse erhöht                                         Projektverwaltung
die Qualität                                                          (Arbeitspakete)
                                                   WORKING SOFTWARE

                                                                                                   © Zühlke 2013
1. Akt
Eine App muss her!




                     © Zühlke 2013
Kein Erfolg ohne Mobilität!
                              1600
                              1400
 Millionen verkaufte Geräte




                              1200
                              1000
                               800
                               600
                               400
                               200
                                 0
                                 2010   2011   2012    2013      2014       2015   2016

                                                 PCs          Mobilgeräte
Quelle: IDC/Nielsen 2012                                                                  © Zühlke 2013
Vier Fragen eines Sensei
Kosten senken
Time to Market
Risikominimierung
Verteilte Teams




                           © Zühlke 2013
Kürzlich nach den
CRM.DAYS:
«Eine mobile App für
Windows Phone muss her!»
                           © Zühlke 2013
Ausgangslage
                                           MEGA
Firma MEGA CRM
Entwicklungsabteilung Zürich Schweiz       CRM
Kundenverwaltung (Desktop Anwendung)
                      Kundenverwaltung



                        Business Layer
                            (.NET)

                                         Kundendaten

                                                       © Zühlke 2013
User Interface Mockup




                        © Zühlke 2013
Wie kriegen wir das hin?


                           © Zühlke 2013
WP8 Mega CRM: The Big Picture




                      Azure Cloud
                     REST Service
       MEGA
       CRM
                                    © Zühlke 2013
Was brauchen wir?
 Entwicklungsumgebung
 Application Lifecycle Management
 Hosting




                                    © Zühlke 2013
Probleme
Beschaffung neuer Server problematisch



                                 Die Lizenzen machen
                                 nur einen kleinen Teil
Time to market                      der Kosten von
                                     Software aus
Kosten
Verteiltes Team


                                                          © Zühlke 2013
Lösung
Entwicklungsumgebung               Visual Studio 2012
Application Lifecycle Management   Team Foundation Service
Hosting                            Windows Azure




                                                             © Zühlke 2013
Visual Studio 2012
IDE (Integrated Development Environment) von Microsoft
Entwicklung von




9 Versionen seit 1995


                                                         © Zühlke 2013
Visual Studio 2012
Code Editor
IntelliSence
Refactoring
Debugger
Designer (GUI, Web, Database, …)
Source Control Plugin
Programmiersprachen
(C, C++, VB.NET, C#, F#, M, Phyton, Ruby, XML, XSLT, HTML, Java
Script, CSS, …)
Emulatoren (Windows 8, Windows Phone 8)
Erweiterbar…
                                                              © Zühlke 2013
Verschiedene Versionen




                         © Zühlke 2013
Demo: MegaCRM in Visual Studio
2012


                             © Zühlke 2013
Mega CRM Lösung


Entwicklungsumgebung
Application Lifecycle Management
                                   Visual Studio 2012
                                   Team Foundation Service
Hosting                            Windows Azure




                                                             © Zühlke 2013
Team Foundation Service




                          © Zühlke 2013
Übersicht
                        REQUIREMENTS
   Product Owner                                            Operation
   Definieren
   Priorisieren


   Developer
                                                          Defekte erfassen
   Testen           Implement                  Monitor    Überwachen
   Implementieren                                         CR erfassen
                                                          Deployen




                                       WORKING SOFTWARE

                                                                             © Zühlke 2013
Vorteile Team Foundation Service
Gratis für bis zu 5 Entwickler
Zero maintenance costs
Automatische Upgrades
Von überall zugreifbar
Hohe Verfügbarkeit
Automatisches Backup
Schnelles Aufsetzen



                                   © Zühlke 2013
Nachteile Team Foundation Service
Keine Prozess Template Anpassung
Limitiertes Reporting
Von Microsoft ausserhalb der Schweiz gehosted
Noch nicht gleicher Funktionsumfang wie Team Foundation
Server




                                                          © Zühlke 2013
Demo: Erstellen des Projekts
im TFS


                               © Zühlke 2013
Demo: Source Code in den
TFS

                           © Zühlke 2013
Mega CRM Lösung



Entwicklungsumgebung
Application Lifecycle Management
                                   Visual Studio 2012
                                   Team Foundation Service
Hosting                            Windows Azure




                                                             © Zühlke 2013
Windows Azure
Windows Azure (kurz Azure) ist die Microsofts Cloud
Features
  Websites

 Virtual Maschines

 Cloud Services

 Data Management

 Media Services

                                                      © Zühlke 2013
Demo: Erstellen des Services auf
Azure


                                   © Zühlke 2013
Scrum Board updaten




                      © Zühlke 2013
WP8 Mega CRM: The Big Picture




       MEGA
       CRM
                           
                      Azure Cloud
                     REST Service




                                    © Zühlke 2013
Mega CRM Lösung



Entwicklungsumgebung               Visual Studio 2012



Application Lifecycle Management
Hosting
                                   Team Foundation Service
                                   Windows Azure




                                                             © Zühlke 2013
2. Akt
Das Windows Phone 8




                      © Zühlke 2013
Windows Phone 8




Source
                  © Zühlke 2013
Shared Windows Core
 WP 7.x    WP 8                    Windows 8




             OS                       OS
           Shared         Shared
 WinCE      Core           Core




          Gleicher NT Kernel, Netzerk, Grafik, Filesystem, Security, ...
          Gleiches Driver Model für Hardwareentwickler
          Achtung: Nicht exakt gleiches API für App-Entwickler!
                                                                       © Zühlke 2013
Windows Phone 8 Architecture
                                             Application models
                        XAML Apps                                            Direct3D Apps

                                               Frameworks
              .NET API for WP                 WP Runtime API                       Win32 & COM
Windows                                     System applications
Phone 8
System                                             WP Shell
                                           Platform services
          Packagemanager        Executionmanager      Navigationmanager              Resource manager

                                         Connection management…
                                                   Others…

                                                  Mobile Core
             Core CLR                IE Trident                 Multimedia                   DirectX
Shared
 core                                     Windows Core System
              NTFS                  Networking             Security                      NT Kernel
                                                                                                       © Zühlke 2013
Windows Phone 8 API
             XAML Apps                                       Direct 3D Apps

       C# / VB                         C# / VB / C++                          C++



 .NET API for Windows
                                 Windows Phone Runtime                Win32 & COM
        Phone



                        File system, Networking, Graphics, Media
                                Core Operating System

                                                                                    © Zühlke 2013
.NET API für Windows Phone
            XAML         Maps         HTML        XML

.NET API
for         Phone
                         Push        Calender     Wallet
Windows    Features

Phone
                      Multitasking   Live Tiles




Seit Windows Phone 7
Enthält alle Typen und APIs von Windows Phone 7.1
Alle neuen Typen für Windows Phone 8
Managed Code (C#, VB)


                                                           © Zühlke 2013
Windows Phone Runtime API
                                     In-App
           Geolocation    Sensors                Threading     Touch       Speech
                                    Purchase

Windows
Phone        Camera        Video    Proximity    Contracts   Core Types     VoIP
Runtime
                                                 Core App    File System
            Memory         Async    Enterprise                             Store
                                                  Model         Access


Ist ein subset der WinRT für Windows 8 + WP8 Zusätze
Zugriff: Managed (C#, VB) und Native (C++)
Implementiert in C++  Language Projection für C#, VB.NET, C++
       WinRT
 (11’000 members)



                    +
          Windows                    Sprache Erkennung
           WP8           New WP
          Phone
           subset        Runtime     Windows.Phone.PersonalInformation
          Runtime
           (2’800)       (600)       LockScreen & LockScreenmanager
                                     …
                                                                                    © Zühlke 2013
.NET API for Windows Phone oder
Windows Phone Runtime?
 .NET API
                         Windows
    for        und        Phone
 Windows       oder      Runtime
  Phone
                ?
Die beiden APIs haben überschneidende Funktionalitäten

 .NET API                          Windows Phone Runtime API

 System.IO.IsolatedStorage         Windows.Storage
 System.NET.Sockets                Windows.Networking.Sockets
 Microsoft.Devices.Sensors         Windows.Devices.Sensor
 …                                 …


Managed Code Entwickler können auswählen:
  Windows Phone 7/8: .NET API
  Windows Phone 8 und Windows 8: Windows Phone Runtime
                                                                © Zühlke 2013
Win32 und COM API
          Direct3D         XAudio2


Win32      Media
                             STL
COM      Foundation


                     CRT


Native (C++)
API


High Performance
Hauptsächlich für native Entwickler
                                      © Zühlke 2013
In diesem Workshop:
XAML UI mit C#

                XAML                     UI mit XAML
                    C#                   Logik mit C#



     .NET API for        Windows Phone
    Windows Phone           Runtime




                                                        © Zühlke 2013
Demo: Windows Phone 8 Hallo
Welt



                              © Zühlke 2013
Was bietet Windows Phone 8?
Tiles
  Drei Tile templates



  3 Grössen
  Update




                              © Zühlke 2013
Was bietet Windows Phone 8?
Lock Screen
                  App kann als Lock Screen
                  Provider registriert werden.
                  Quick Status
                  Background Image Provider




                                             © Zühlke 2013
Was bietet Windows Phone 8?
Launchers
Mittels Launchers können wir allgemeine Aufgaben ausführen.
 Photo machen
 Kontakt hinzufügen
 Email versenden
 Route berechnen
 SMS versenden
 Kalender
 Download
 ShareMedia (Sozialnetwork)
 …
                                                              © Zühlke 2013
Was bietet Windows Phone 8?
Maps und Location Tracking
Map Control mit Nokia Maps
 Vektor basiert
 Vier Kartentypen




API für Location Tracking
(auch im Background)
                              © Zühlke 2013
Was bietet Windows Phone 8?
Sprache
 Sprache Kommandos
 Sprache Erkennung
 Text-To-Speech API (Vorlesen)




                                 © Zühlke 2013
Was bietet Windows Phone 8?
3 Auflösungen




                              © Zühlke 2013
Was bietet Windows Phone 8?
…
 API für VoIP und Video Chat
 Bluetooth und NFC
 Wallet (Kredit-, Member-, Eintritts-Karten)
 Kamera
 Picture
 Music
 SD Card (read)
 File und Protocol Assoziationen
 In-App Verkauf
 Lokalisation und Globalization (50 Sprachen)
                                                © Zühlke 2013
Windows Phone Emulator
Der Emulator läuft als Hyper-V- Virtual Machine auf dem PC
Enthält die gleiche Software wie das echte WP8
Features




Achtung: Nur für funktional Testing verwenden

                                                             © Zühlke 2013
Demo: Windows Phone
Emulator


                      © Zühlke 2013
WP8 Mega CRM: The Big Picture




       MEGA
       CRM
                           
                      Azure Cloud
                     REST Service




                                    © Zühlke 2013
MegaCRM: Kundenliste
darstellen


                       © Zühlke 2013
WP8 Mega CRM: The Big Picture




         
       MEGA
       CRM
                           
                      Azure Cloud
                     REST Service




                                    © Zühlke 2013
Navigation
 Page basierte Navigation




private void HyperlinkButtonClicked(object sender, RoutedEventArgs e)
{
    NavigationService.Navigate(new Uri("/DetailPage.xaml", UriKind.Relative));
}




                                                                                 © Zühlke 2013
Navigation – Seite zurück
 Applikation kann Controls zum Zurücknavigieren bereitstellen
 private void BackButtonClicked(object sender, RoutedEventArgs e)
 {
     NavigationService.GoBack();
 }



 Jedes Phone hat einen Hardware Back Button




                                                                    © Zühlke 2013
Navigation – Daten übergeben
 Daten können als Query String Parameter übergeben werden
 private void _customerList_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
 {
     var customerViewModel = customerList.SelectedItem as CustomerViewModel;
     NavigationService.Navigate(new Uri("/CustomerDetailPage.xaml?ID="
                                    + customerViewModel.Id, UriKind.Relative));
 }


 Auf der Zielseite
 protected override void OnNavigatedTo(NavigationEventArgs e)
 {
     base.OnNavigatedTo(e);
     var customerId = string.Empty;
     if (NavigationContext.QueryString.TryGetValue("ID", out customerId))
        ...
 }
                                                                                             © Zühlke 2013
MegaCRM: Navigation auf
Detailseite



                          © Zühlke 2013
Application Bar
                    System Tray


 System Tray




 Application Bar




                   Application Bar


                                     © Zühlke 2013
Sensei-Tipp – Application Bar

                     Weisse App Bar Icons mit
                    transparentem Hintergrund
                        werden vom System
                   automatisch richtig eingefärbt.




                                                     © Zühlke 2013
MegaCRM: Application
Bar

                       © Zühlke 2013
Deployment to Phone
 Sie müssen ein registrierter Entwickler sein ($99.- pro Jahr)

 Das Windows Phone muss registriert sein.

 Deploy to Phone




                                                                 © Zühlke 2013
Deployment for Enterprises




Company Hub als Enterprise Store

                                   © Zühlke 2013
WP8 Mega CRM: The Big Picture

      
       
       MEGA
       CRM
                           
                      Azure Cloud
                     REST Service




                                    © Zühlke 2013
3. Akt
Die Qualität muss verbessert werden!




                                       © Zühlke 2013
Der Qualitäsbeauftragte
«Die Qualität muss
verbessert werden!»

                          © Zühlke 2013
Unit Testing in VS 2012




                          © Zühlke 2013
Unit Testing - Architecture




                              © Zühlke 2013
MegaCRM: Unit Tests


                      © Zühlke 2013
Automatisierte Builds mit TFS
Build in the cloud
 Continuous Integration Builds
 Automatisches Ausführen von Tests

 Automatisches Deployment auf Azure




                                      © Zühlke 2013
MegaCRM: CI Build in the
Cloud


                           © Zühlke 2013
Code Analyse
VS Code Analysis              StyleCop
Auch FxCop genannt             Nicht in Visual Studio integriert
In Visual Studio integriert    Analysiert C# Source Code
Statische Code Analyse         Überprüft Code Formatierung
Analysiert Assemblies




                                                           © Zühlke 2013
MegaCRM: Code
Analyse

                © Zühlke 2013
WP8 Mega CRM: The Big Picture


       
        MEGA
         CRM             
                    Azure Cloud
                   REST Service




                                  © Zühlke 2013
Zusammenfassung

                  © Zühlke 2013
Zusammenfassung




  Source   Build   Plan   Test   Collaborate   Service


       Team Foundation Service                 Azure
                                                         © Zühlke 2013
Vier Fragen eines Sensei
Kosten senken
Time to Market
Risikominimierung
Verteilte Teams




                           © Zühlke 2013
Kosten senken
Visual Studio 2012

Team Foundation Service




Azure



                          © Zühlke 2013
Time To Market
Visual Studio 2012

Team Foundation Service


Azure




                          © Zühlke 2013
Risikominimierung
Visual Studio



Team Foundation Service


Azure



                          © Zühlke 2013
Verteilte Teams
Visual Studio 2012

Team Foundation Service

Azure




                          © Zühlke 2013
Sensei
         Mit Visual Studio 2012
              hat man eine
         Allzweckwaffe, welche
         einem in jedem Kampf
               unterstützt.




                                  © Zühlke 2013
Meister-Tools


                © Zühlke 2013
Ultimate                               Premium                     Test Professional                      Professional

Mission-critical                          Quality                    Continuous quality
                                                                     enablement
                                                                                                              Development productivity
                                                                                                              everywhere
scale and                                 enabled team
complexity                                development                   Test Case Management                    Windows Desktop and Phone Apps
                                                                         Manual Testing                           Windows 8 Metro Style Apps
   IntelliTrace Anywhere                    Code Metrics           

                                                                         and Fast-Forward
                                                                                                              

                                                                                                                 Web and Cloud Websites and
   Web Performance Testing                  Code Coverage             Exploratory Testing                      Services
                                                                         Lab Management                           Office and SharePoint Development
                                              Coded UI Testing
                                                                                                             
   Load Testing                          
                                                                        PowerPoint Storyboarding                Blend for Visual Studio
   Architecture Explorer, Progressive       Code Clone                Backlog Management                      LightSwitch
    Reveal, and Standard Graphs              Code Review
                                                                        Sprint Planning                         Extensible Testing Framework
                                                                         Feedback Manager                         Static Code Analysis
    UML 2.0 Compliant Diagrams
                                                                                                             

                                              Task Suspend/Resume                                                 Advanced Profiling
    (Activity, Use
                                                                                                             

                                                                                                                  Refactoring
    Case, Sequence, Class, Component)
                                                                                                              

                                                                                                                 Graphics Debugging
   Layer Diagram and                                                                                            Third-Party Extensibility
    Dependency Validation                                                                                        Read-Only Diagrams
                                                                                                                 Team Explorer
Microsoft                                  Microsoft
Expression Studio 4                        Expression Studio 4
Ultimate                                   Web Professional



                                                                              Project Management        Reporting                     Agile Task Boards
                                         Integrated teams
                                                                                                                                

                                                                             Work Item Tracking       Build Services               System Center
         Team Foundation Server          continuous value delivery           SCM                      PreEmptive Analytics          Integration



                                                                                                                                                      © Zühlke 2013
Was braucht’s für Stufe 1?


                                                                               $$
Stufe 1                              Devtools                              Investitionen
Professionelle Desktop- und          Die gezeigten Beispiele setzen        Für den aufgezeigten
App-Entwicklung                      folgende Lizenzen voraus              Produktivitätsgewinn braucht’s:
  Application Lifecycle Management     Visual Studio Professional w/MSDN     Bsp.: 4 Developer, 1 Projektleiter
  Automatische Unittests               Team Foundation Server CAL            ca. 70 CHF pro Dev/Monat*
  Team Foundation Server                                                     ca. 36 CHF pro PL/Monat*

                                                                                           * unverbindliches Preisbeispiel



                                                                                                                      © Zühlke 2013
Softwarebeschaffung/-Compliance
Softwarebeschaffung
 Zahlreiche Lizenzprogramme und
 Lizenzierungsformen
 Je nach Anforderungen und
 Rahmenbedingungen des Unternehmens

Lizenzberatung
 Lassen Sie sich durch den Fachhändler beraten!
 Beste Lösung für Sie für den günstigsten Preis…
 … und Sicherstellung der korrekten Lizenzierung

http://www.microsoft.com/de-ch/visualstudio/buy



                                                   © Zühlke 2013
Ihre MSDN Vorteile
Software Assurance für Visual Studio
  Immer die neuesten Werkzeuge und Technologien verwenden können
  Immer korrekt, legal und günstig lizenziert bleiben
Fast alle Microsoft Produkte für Test- und Entwicklungszwecke
  Team Foundation Server 2012
                                                                          msdn
  Alle gängigen Windows-Betriebssysteme, z.B. Windows 8, Windows Server
  2012
  SQL Server (und alle weiteren Server ab Premium)
  Office, Visio und Project (ab Premium)
  Expression Studio (ab Premium)
  Azure-Serverzeit für Cloud Computing
Downgrade-Rechte für ältere Versionen von Visual Studio
Profi-Support & Trainingsinhalte



                                                                                 © Zühlke 2013
Sensei-Tipp

              MSDN: Schon ab einer
              Lizenz mehr Leistung
                für weniger Geld!




                                     © Zühlke 2013
Sparen Sie bis zu 30%!
Premium Upgrade
 Gültig für Kunden von Visual Studio Professional mit
 MSDN-Abonnement
 Bis zu 30 % sparen beim Upgrade auf Visual Studio      Professional
 Premium
 Weltweit gültig bis zum 30. Juni 2013
 Über verschiedene Volumenlizenzprogramme
 erhältlich:
 Enterprise Agreement, EAP, Select Plus, Open Value
 und Open Value Subscription
 Kontaktieren Sie Ihren Software-/Handelspartner für
 Ihr individuelles Angebot (Stichwort: „SA Step Up“)
                                                         Premium




                                                                       © Zühlke 2013
Ihre Kontakte

Für weitere Fragen stehen wir Ihnen jederzeit
gerne zur Verfügung.
 Hansjörg Scherer                                  Corinna Sameli
 Technical Solution Professional Developer Tools   Solution Sales Specialist Developer Tools

 hansjoerg.scherer@microsoft.com                   corinna.sameli@microsoft.com
 Mobile: +41 (0)78 844 64 30                       Mobile: +41 (0)78 844 60 24




 Microsoft Schweiz                                 Microsoft Schweiz
 Richtistrasse 3                                   Richtistrasse 3
 CH-8304 Wallisellen                               CH-8304 Wallisellen




                                                                                               © Zühlke 2013
Outro

        © Zühlke 2013
© Zühlke 2013
Über uns



Romano Roth                    Stefan Züger
Lead Software Architect        Software Engineer
Zühlke seit 2002               Zühlke seit 2010
Client-Architekturen           Client-Entwicklung
romano.roth (at) zuehlke.com   stefan.zueger (at) zuehlke.com

                                                         © Zühlke 2013
Was können wir für Sie
tun?
 @romanoroth     Oder
 @stefanzueger
                        © Zühlke 2013

Weitere ähnliche Inhalte

Was ist angesagt?

AndroMDA - Einführung in eine Open Source Model Driven Architecture Lösung
AndroMDA - Einführung in eine Open Source Model Driven Architecture LösungAndroMDA - Einführung in eine Open Source Model Driven Architecture Lösung
AndroMDA - Einführung in eine Open Source Model Driven Architecture LösungEduard Hildebrandt
 
Performance Day 2012 Performance on the Run
Performance Day 2012 Performance on the RunPerformance Day 2012 Performance on the Run
Performance Day 2012 Performance on the RunMarc Rieger
 
Client Technologien - Ein Überblick für Usability Professionals
Client Technologien - Ein Überblick für Usability ProfessionalsClient Technologien - Ein Überblick für Usability Professionals
Client Technologien - Ein Überblick für Usability ProfessionalsThomas Memmel
 
Hiroaki Katanopres REConf2012 Visure Solutions
Hiroaki Katanopres REConf2012   Visure SolutionsHiroaki Katanopres REConf2012   Visure Solutions
Hiroaki Katanopres REConf2012 Visure SolutionsVisure Solutions
 
WPF UI Development Unchained
WPF UI Development UnchainedWPF UI Development Unchained
WPF UI Development UnchainedErgosign GmbH
 
WPF UI-Development Best Practices
WPF UI-Development Best PracticesWPF UI-Development Best Practices
WPF UI-Development Best PracticesErgosign GmbH
 
ESE Conference: iOS, Android, WP7... Alle nativ auf einen Streich! streich
ESE Conference: iOS, Android, WP7...Alle nativ auf einen Streich! streichESE Conference: iOS, Android, WP7...Alle nativ auf einen Streich! streich
ESE Conference: iOS, Android, WP7... Alle nativ auf einen Streich! streichRomano Roth
 
Ergosign-wpf-ui-development-best-practices-dotnet
Ergosign-wpf-ui-development-best-practices-dotnetErgosign-wpf-ui-development-best-practices-dotnet
Ergosign-wpf-ui-development-best-practices-dotnetErgosign GmbH
 

Was ist angesagt? (10)

AndroMDA - Einführung in eine Open Source Model Driven Architecture Lösung
AndroMDA - Einführung in eine Open Source Model Driven Architecture LösungAndroMDA - Einführung in eine Open Source Model Driven Architecture Lösung
AndroMDA - Einführung in eine Open Source Model Driven Architecture Lösung
 
Performance Day 2012 Performance on the Run
Performance Day 2012 Performance on the RunPerformance Day 2012 Performance on the Run
Performance Day 2012 Performance on the Run
 
20110321 activiti märz
20110321 activiti märz20110321 activiti märz
20110321 activiti märz
 
Client Technologien - Ein Überblick für Usability Professionals
Client Technologien - Ein Überblick für Usability ProfessionalsClient Technologien - Ein Überblick für Usability Professionals
Client Technologien - Ein Überblick für Usability Professionals
 
Hiroaki Katanopres REConf2012 Visure Solutions
Hiroaki Katanopres REConf2012   Visure SolutionsHiroaki Katanopres REConf2012   Visure Solutions
Hiroaki Katanopres REConf2012 Visure Solutions
 
WPF UI Development Unchained
WPF UI Development UnchainedWPF UI Development Unchained
WPF UI Development Unchained
 
WPF UI-Development Best Practices
WPF UI-Development Best PracticesWPF UI-Development Best Practices
WPF UI-Development Best Practices
 
20110406 activiti april
20110406 activiti april20110406 activiti april
20110406 activiti april
 
ESE Conference: iOS, Android, WP7... Alle nativ auf einen Streich! streich
ESE Conference: iOS, Android, WP7...Alle nativ auf einen Streich! streichESE Conference: iOS, Android, WP7...Alle nativ auf einen Streich! streich
ESE Conference: iOS, Android, WP7... Alle nativ auf einen Streich! streich
 
Ergosign-wpf-ui-development-best-practices-dotnet
Ergosign-wpf-ui-development-best-practices-dotnetErgosign-wpf-ui-development-best-practices-dotnet
Ergosign-wpf-ui-development-best-practices-dotnet
 

Ähnlich wie Meister Training Professionelle Entwicklung: Alles rund um (mobile) App Entwicklung

Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...Nico Orschel
 
Was ist neu in Office 365
Was ist neu in Office 365   Was ist neu in Office 365
Was ist neu in Office 365 IOZ AG
 
Microsoft Azure in der Unternehmenspraxis
Microsoft Azure in der UnternehmenspraxisMicrosoft Azure in der Unternehmenspraxis
Microsoft Azure in der UnternehmenspraxisPOINT. Consulting GmbH
 
Infrastruktur agil bauen - der DBA im SAFe-Umfeld
Infrastruktur agil bauen - der DBA im SAFe-UmfeldInfrastruktur agil bauen - der DBA im SAFe-Umfeld
Infrastruktur agil bauen - der DBA im SAFe-UmfeldDaniel Steiger
 
DWX 2014 - Coded UI in der Praxis: Von Lokalisierung bis Nachhaltigkeit
DWX 2014 -  Coded UI in der Praxis: Von Lokalisierung bis NachhaltigkeitDWX 2014 -  Coded UI in der Praxis: Von Lokalisierung bis Nachhaltigkeit
DWX 2014 - Coded UI in der Praxis: Von Lokalisierung bis NachhaltigkeitNico Orschel
 
IT Transformation mit EMC
IT Transformation mit EMCIT Transformation mit EMC
IT Transformation mit EMCConnected-Blog
 
DWX 2017 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch m...
DWX 2017 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch m...DWX 2017 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch m...
DWX 2017 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch m...Marc Müller
 
Parkraumbewirtschaftung mit Oracle ADF Mobile?
Parkraumbewirtschaftung mit Oracle ADF Mobile?Parkraumbewirtschaftung mit Oracle ADF Mobile?
Parkraumbewirtschaftung mit Oracle ADF Mobile?enpit GmbH & Co. KG
 
DWX 2014 - Testmanagement mit Visual Studio 2013
DWX 2014 - Testmanagement mit Visual Studio 2013DWX 2014 - Testmanagement mit Visual Studio 2013
DWX 2014 - Testmanagement mit Visual Studio 2013Nico Orschel
 
Erp in der zukunft: über die funktionen hinaus
Erp in der zukunft: über die funktionen hinausErp in der zukunft: über die funktionen hinaus
Erp in der zukunft: über die funktionen hinausDedagroup
 
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...Oliver Busse
 
Schulung power designer
Schulung power designerSchulung power designer
Schulung power designerAlicengiz78
 
CLOUDSERVICES FÜR ISVs
CLOUDSERVICES FÜR ISVsCLOUDSERVICES FÜR ISVs
CLOUDSERVICES FÜR ISVsacentrix GmbH
 
120715 agile requirements_handout
120715 agile requirements_handout120715 agile requirements_handout
120715 agile requirements_handoutAndreas Birk
 
Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis
Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis
Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis Intland Software GmbH
 
Test Management mit Visual Studio 2012 (Developer Week 2013)
Test Management mit Visual Studio 2012 (Developer Week 2013)Test Management mit Visual Studio 2012 (Developer Week 2013)
Test Management mit Visual Studio 2012 (Developer Week 2013)Nico Orschel
 
12. TANNER-Hochschulwettbewerb | Beitrag Team Schildberg (Karlsruher Institut...
12. TANNER-Hochschulwettbewerb | Beitrag Team Schildberg (Karlsruher Institut...12. TANNER-Hochschulwettbewerb | Beitrag Team Schildberg (Karlsruher Institut...
12. TANNER-Hochschulwettbewerb | Beitrag Team Schildberg (Karlsruher Institut...TANNER AG
 
Slides zum Impulsreferat: HCL UDP - DNUG Stammtisch Salzburg
Slides zum Impulsreferat: HCL UDP - DNUG Stammtisch SalzburgSlides zum Impulsreferat: HCL UDP - DNUG Stammtisch Salzburg
Slides zum Impulsreferat: HCL UDP - DNUG Stammtisch SalzburgDNUG e.V.
 

Ähnlich wie Meister Training Professionelle Entwicklung: Alles rund um (mobile) App Entwicklung (20)

Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
 
Was ist neu in Office 365
Was ist neu in Office 365   Was ist neu in Office 365
Was ist neu in Office 365
 
Microsoft Azure in der Unternehmenspraxis
Microsoft Azure in der UnternehmenspraxisMicrosoft Azure in der Unternehmenspraxis
Microsoft Azure in der Unternehmenspraxis
 
Infrastruktur agil bauen - der DBA im SAFe-Umfeld
Infrastruktur agil bauen - der DBA im SAFe-UmfeldInfrastruktur agil bauen - der DBA im SAFe-Umfeld
Infrastruktur agil bauen - der DBA im SAFe-Umfeld
 
DWX 2014 - Coded UI in der Praxis: Von Lokalisierung bis Nachhaltigkeit
DWX 2014 -  Coded UI in der Praxis: Von Lokalisierung bis NachhaltigkeitDWX 2014 -  Coded UI in der Praxis: Von Lokalisierung bis Nachhaltigkeit
DWX 2014 - Coded UI in der Praxis: Von Lokalisierung bis Nachhaltigkeit
 
Nefos: Nefos Mobile iPad App
Nefos: Nefos Mobile iPad AppNefos: Nefos Mobile iPad App
Nefos: Nefos Mobile iPad App
 
IT Transformation mit EMC
IT Transformation mit EMCIT Transformation mit EMC
IT Transformation mit EMC
 
DWX 2017 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch m...
DWX 2017 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch m...DWX 2017 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch m...
DWX 2017 - Alternativen zu Visual-Studio-Testtools: Wann lohnt es sich auch m...
 
Parkraumbewirtschaftung mit Oracle ADF Mobile?
Parkraumbewirtschaftung mit Oracle ADF Mobile?Parkraumbewirtschaftung mit Oracle ADF Mobile?
Parkraumbewirtschaftung mit Oracle ADF Mobile?
 
DWX 2014 - Testmanagement mit Visual Studio 2013
DWX 2014 - Testmanagement mit Visual Studio 2013DWX 2014 - Testmanagement mit Visual Studio 2013
DWX 2014 - Testmanagement mit Visual Studio 2013
 
Erp in der zukunft: über die funktionen hinaus
Erp in der zukunft: über die funktionen hinausErp in der zukunft: über die funktionen hinaus
Erp in der zukunft: über die funktionen hinaus
 
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
 
DOAG 2010: ADF Faces RC Best Practice
DOAG 2010: ADF Faces RC Best PracticeDOAG 2010: ADF Faces RC Best Practice
DOAG 2010: ADF Faces RC Best Practice
 
Schulung power designer
Schulung power designerSchulung power designer
Schulung power designer
 
CLOUDSERVICES FÜR ISVs
CLOUDSERVICES FÜR ISVsCLOUDSERVICES FÜR ISVs
CLOUDSERVICES FÜR ISVs
 
120715 agile requirements_handout
120715 agile requirements_handout120715 agile requirements_handout
120715 agile requirements_handout
 
Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis
Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis
Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis
 
Test Management mit Visual Studio 2012 (Developer Week 2013)
Test Management mit Visual Studio 2012 (Developer Week 2013)Test Management mit Visual Studio 2012 (Developer Week 2013)
Test Management mit Visual Studio 2012 (Developer Week 2013)
 
12. TANNER-Hochschulwettbewerb | Beitrag Team Schildberg (Karlsruher Institut...
12. TANNER-Hochschulwettbewerb | Beitrag Team Schildberg (Karlsruher Institut...12. TANNER-Hochschulwettbewerb | Beitrag Team Schildberg (Karlsruher Institut...
12. TANNER-Hochschulwettbewerb | Beitrag Team Schildberg (Karlsruher Institut...
 
Slides zum Impulsreferat: HCL UDP - DNUG Stammtisch Salzburg
Slides zum Impulsreferat: HCL UDP - DNUG Stammtisch SalzburgSlides zum Impulsreferat: HCL UDP - DNUG Stammtisch Salzburg
Slides zum Impulsreferat: HCL UDP - DNUG Stammtisch Salzburg
 

Meister Training Professionelle Entwicklung: Alles rund um (mobile) App Entwicklung

  • 2. Professionelle Desktop- und App- Entwicklung 12.04.2013 Meister werden – Training Stufe 1 Schlieren © Zühlke 2013
  • 3. Agenda Intro 13:30 – 13:35 5’ Einführung 13:35 – 13:45 10’ Teil 1 13:45 – 14:30 45’ Pause 14:30 – 14:45 15’ Agenda Teil 2 14:45 – 15:45 60’ Pause 15:45 – 16:00 15’ Teil 3 16:00 – 16:45 45’ Meister-Tools 16:45 – 16:55 10’ Outro & Apéro 16:55 – 18:00 65’ © Zühlke 2013
  • 4. Sensei Nur wer fragt wird Meister seines Fachs! © Zühlke 2013
  • 6. Facts & Figures Mehr als 8'000 Projekte realisiert 99 Mio. CHF Umsatz (2012) 550 Mitarbeiterinnen & Mitarbeiter (Ende 2012) In Deutschland, Großbritannien, Österreich und in der Schweiz Gegründet 1968, im Besitz von Partnern ISO 9001 und 13485 zertifiziert © Zühlke 2013
  • 7. Über uns Romano Roth Stefan Züger Lead Software Architect Software Engineer Zühlke seit 2002 Zühlke seit 2010 Client-Architekturen Client-Entwicklung Product Owner (PO) im Rollenspiel Entwickler (Dev) im Rollenspiel romano.roth (at) zuehlke.com stefan.zueger (at) zuehlke.com © Zühlke 2013
  • 8. Einführung © Zühlke 2013
  • 9. Übersicht Trainings Stufe 1 Stufe 2 Stufe 3 Professionelle Desktop- und Agile Entwicklung und Professionelle Integration von App-Entwicklung Qualitätssteigerung Entwicklung und Betrieb und Application Lifecycle Management Statische Codeanalyse Architekturanalyse Automatische Unittests Testfunktionen mit Codecoverage Intellitrace Team Foundation Server Aufbau von Virtuellen Web- und Performancetesting Testumgebungen Automatisches Deployment © Zühlke 2013
  • 10. Typische Herausforderungen Challenge 1 Challenge 2 Challenge 3 © Zühlke 2013
  • 11. Konkrete Lösungen REQUIREMENTS 2 1 Integration Unit-Testing Visual Studio als einheitliches Frameworks in Visual Studio Tool für alle Plattformen 1 2 Integration von Technologien Implement mit Team Explorer Everywhere Schnelles Ausführen und Monitor und “git tf” Verwalten aller Unittest im Test Explorer 3 2 Zentrale Source Code Verwaltung und transpartent Statische Code Analyse erhöht Projektverwaltung die Qualität (Arbeitspakete) WORKING SOFTWARE © Zühlke 2013
  • 12. 1. Akt Eine App muss her! © Zühlke 2013
  • 13. Kein Erfolg ohne Mobilität! 1600 1400 Millionen verkaufte Geräte 1200 1000 800 600 400 200 0 2010 2011 2012 2013 2014 2015 2016 PCs Mobilgeräte Quelle: IDC/Nielsen 2012 © Zühlke 2013
  • 14. Vier Fragen eines Sensei Kosten senken Time to Market Risikominimierung Verteilte Teams © Zühlke 2013
  • 15. Kürzlich nach den CRM.DAYS: «Eine mobile App für Windows Phone muss her!» © Zühlke 2013
  • 16. Ausgangslage MEGA Firma MEGA CRM Entwicklungsabteilung Zürich Schweiz CRM Kundenverwaltung (Desktop Anwendung) Kundenverwaltung Business Layer (.NET) Kundendaten © Zühlke 2013
  • 17. User Interface Mockup © Zühlke 2013
  • 18. Wie kriegen wir das hin? © Zühlke 2013
  • 19. WP8 Mega CRM: The Big Picture Azure Cloud REST Service MEGA CRM © Zühlke 2013
  • 20. Was brauchen wir? Entwicklungsumgebung Application Lifecycle Management Hosting © Zühlke 2013
  • 21. Probleme Beschaffung neuer Server problematisch Die Lizenzen machen nur einen kleinen Teil Time to market der Kosten von Software aus Kosten Verteiltes Team © Zühlke 2013
  • 22. Lösung Entwicklungsumgebung Visual Studio 2012 Application Lifecycle Management Team Foundation Service Hosting Windows Azure © Zühlke 2013
  • 23. Visual Studio 2012 IDE (Integrated Development Environment) von Microsoft Entwicklung von 9 Versionen seit 1995 © Zühlke 2013
  • 24. Visual Studio 2012 Code Editor IntelliSence Refactoring Debugger Designer (GUI, Web, Database, …) Source Control Plugin Programmiersprachen (C, C++, VB.NET, C#, F#, M, Phyton, Ruby, XML, XSLT, HTML, Java Script, CSS, …) Emulatoren (Windows 8, Windows Phone 8) Erweiterbar… © Zühlke 2013
  • 25. Verschiedene Versionen © Zühlke 2013
  • 26. Demo: MegaCRM in Visual Studio 2012 © Zühlke 2013
  • 27. Mega CRM Lösung  Entwicklungsumgebung Application Lifecycle Management Visual Studio 2012 Team Foundation Service Hosting Windows Azure © Zühlke 2013
  • 28. Team Foundation Service © Zühlke 2013
  • 29. Übersicht REQUIREMENTS Product Owner Operation Definieren Priorisieren Developer Defekte erfassen Testen Implement Monitor Überwachen Implementieren CR erfassen Deployen WORKING SOFTWARE © Zühlke 2013
  • 30. Vorteile Team Foundation Service Gratis für bis zu 5 Entwickler Zero maintenance costs Automatische Upgrades Von überall zugreifbar Hohe Verfügbarkeit Automatisches Backup Schnelles Aufsetzen © Zühlke 2013
  • 31. Nachteile Team Foundation Service Keine Prozess Template Anpassung Limitiertes Reporting Von Microsoft ausserhalb der Schweiz gehosted Noch nicht gleicher Funktionsumfang wie Team Foundation Server © Zühlke 2013
  • 32. Demo: Erstellen des Projekts im TFS © Zühlke 2013
  • 33. Demo: Source Code in den TFS © Zühlke 2013
  • 34. Mega CRM Lösung   Entwicklungsumgebung Application Lifecycle Management Visual Studio 2012 Team Foundation Service Hosting Windows Azure © Zühlke 2013
  • 35. Windows Azure Windows Azure (kurz Azure) ist die Microsofts Cloud Features Websites Virtual Maschines Cloud Services Data Management Media Services © Zühlke 2013
  • 36. Demo: Erstellen des Services auf Azure © Zühlke 2013
  • 37. Scrum Board updaten © Zühlke 2013
  • 38. WP8 Mega CRM: The Big Picture MEGA CRM  Azure Cloud REST Service © Zühlke 2013
  • 39. Mega CRM Lösung   Entwicklungsumgebung Visual Studio 2012  Application Lifecycle Management Hosting Team Foundation Service Windows Azure © Zühlke 2013
  • 40. 2. Akt Das Windows Phone 8 © Zühlke 2013
  • 41. Windows Phone 8 Source © Zühlke 2013
  • 42. Shared Windows Core WP 7.x WP 8 Windows 8 OS OS Shared Shared WinCE Core Core Gleicher NT Kernel, Netzerk, Grafik, Filesystem, Security, ... Gleiches Driver Model für Hardwareentwickler Achtung: Nicht exakt gleiches API für App-Entwickler! © Zühlke 2013
  • 43. Windows Phone 8 Architecture Application models XAML Apps Direct3D Apps Frameworks .NET API for WP WP Runtime API Win32 & COM Windows System applications Phone 8 System WP Shell Platform services Packagemanager Executionmanager Navigationmanager Resource manager Connection management… Others… Mobile Core Core CLR IE Trident Multimedia DirectX Shared core Windows Core System NTFS Networking Security NT Kernel © Zühlke 2013
  • 44. Windows Phone 8 API XAML Apps Direct 3D Apps C# / VB C# / VB / C++ C++ .NET API for Windows Windows Phone Runtime Win32 & COM Phone File system, Networking, Graphics, Media Core Operating System © Zühlke 2013
  • 45. .NET API für Windows Phone XAML Maps HTML XML .NET API for Phone Push Calender Wallet Windows Features Phone Multitasking Live Tiles Seit Windows Phone 7 Enthält alle Typen und APIs von Windows Phone 7.1 Alle neuen Typen für Windows Phone 8 Managed Code (C#, VB) © Zühlke 2013
  • 46. Windows Phone Runtime API In-App Geolocation Sensors Threading Touch Speech Purchase Windows Phone Camera Video Proximity Contracts Core Types VoIP Runtime Core App File System Memory Async Enterprise Store Model Access Ist ein subset der WinRT für Windows 8 + WP8 Zusätze Zugriff: Managed (C#, VB) und Native (C++) Implementiert in C++  Language Projection für C#, VB.NET, C++ WinRT (11’000 members) + Windows Sprache Erkennung WP8 New WP Phone subset Runtime Windows.Phone.PersonalInformation Runtime (2’800) (600) LockScreen & LockScreenmanager … © Zühlke 2013
  • 47. .NET API for Windows Phone oder Windows Phone Runtime? .NET API Windows for und Phone Windows oder Runtime Phone ? Die beiden APIs haben überschneidende Funktionalitäten .NET API Windows Phone Runtime API System.IO.IsolatedStorage Windows.Storage System.NET.Sockets Windows.Networking.Sockets Microsoft.Devices.Sensors Windows.Devices.Sensor … … Managed Code Entwickler können auswählen: Windows Phone 7/8: .NET API Windows Phone 8 und Windows 8: Windows Phone Runtime © Zühlke 2013
  • 48. Win32 und COM API Direct3D XAudio2 Win32 Media STL COM Foundation CRT Native (C++) API High Performance Hauptsächlich für native Entwickler © Zühlke 2013
  • 49. In diesem Workshop: XAML UI mit C# XAML UI mit XAML C# Logik mit C# .NET API for Windows Phone Windows Phone Runtime © Zühlke 2013
  • 50. Demo: Windows Phone 8 Hallo Welt © Zühlke 2013
  • 51. Was bietet Windows Phone 8? Tiles Drei Tile templates 3 Grössen Update © Zühlke 2013
  • 52. Was bietet Windows Phone 8? Lock Screen App kann als Lock Screen Provider registriert werden. Quick Status Background Image Provider © Zühlke 2013
  • 53. Was bietet Windows Phone 8? Launchers Mittels Launchers können wir allgemeine Aufgaben ausführen. Photo machen Kontakt hinzufügen Email versenden Route berechnen SMS versenden Kalender Download ShareMedia (Sozialnetwork) … © Zühlke 2013
  • 54. Was bietet Windows Phone 8? Maps und Location Tracking Map Control mit Nokia Maps Vektor basiert Vier Kartentypen API für Location Tracking (auch im Background) © Zühlke 2013
  • 55. Was bietet Windows Phone 8? Sprache Sprache Kommandos Sprache Erkennung Text-To-Speech API (Vorlesen) © Zühlke 2013
  • 56. Was bietet Windows Phone 8? 3 Auflösungen © Zühlke 2013
  • 57. Was bietet Windows Phone 8? … API für VoIP und Video Chat Bluetooth und NFC Wallet (Kredit-, Member-, Eintritts-Karten) Kamera Picture Music SD Card (read) File und Protocol Assoziationen In-App Verkauf Lokalisation und Globalization (50 Sprachen) © Zühlke 2013
  • 58. Windows Phone Emulator Der Emulator läuft als Hyper-V- Virtual Machine auf dem PC Enthält die gleiche Software wie das echte WP8 Features Achtung: Nur für funktional Testing verwenden © Zühlke 2013
  • 59. Demo: Windows Phone Emulator © Zühlke 2013
  • 60. WP8 Mega CRM: The Big Picture MEGA CRM  Azure Cloud REST Service © Zühlke 2013
  • 62. WP8 Mega CRM: The Big Picture  MEGA CRM  Azure Cloud REST Service © Zühlke 2013
  • 63. Navigation Page basierte Navigation private void HyperlinkButtonClicked(object sender, RoutedEventArgs e) { NavigationService.Navigate(new Uri("/DetailPage.xaml", UriKind.Relative)); } © Zühlke 2013
  • 64. Navigation – Seite zurück Applikation kann Controls zum Zurücknavigieren bereitstellen private void BackButtonClicked(object sender, RoutedEventArgs e) { NavigationService.GoBack(); } Jedes Phone hat einen Hardware Back Button © Zühlke 2013
  • 65. Navigation – Daten übergeben Daten können als Query String Parameter übergeben werden private void _customerList_OnSelectionChanged(object sender, SelectionChangedEventArgs e) { var customerViewModel = customerList.SelectedItem as CustomerViewModel; NavigationService.Navigate(new Uri("/CustomerDetailPage.xaml?ID=" + customerViewModel.Id, UriKind.Relative)); } Auf der Zielseite protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); var customerId = string.Empty; if (NavigationContext.QueryString.TryGetValue("ID", out customerId)) ... } © Zühlke 2013
  • 67. Application Bar System Tray System Tray Application Bar Application Bar © Zühlke 2013
  • 68. Sensei-Tipp – Application Bar Weisse App Bar Icons mit transparentem Hintergrund werden vom System automatisch richtig eingefärbt. © Zühlke 2013
  • 69. MegaCRM: Application Bar © Zühlke 2013
  • 70. Deployment to Phone Sie müssen ein registrierter Entwickler sein ($99.- pro Jahr) Das Windows Phone muss registriert sein. Deploy to Phone © Zühlke 2013
  • 71. Deployment for Enterprises Company Hub als Enterprise Store © Zühlke 2013
  • 72. WP8 Mega CRM: The Big Picture   MEGA CRM  Azure Cloud REST Service © Zühlke 2013
  • 73. 3. Akt Die Qualität muss verbessert werden! © Zühlke 2013
  • 74. Der Qualitäsbeauftragte «Die Qualität muss verbessert werden!» © Zühlke 2013
  • 75. Unit Testing in VS 2012 © Zühlke 2013
  • 76. Unit Testing - Architecture © Zühlke 2013
  • 77. MegaCRM: Unit Tests © Zühlke 2013
  • 78. Automatisierte Builds mit TFS Build in the cloud Continuous Integration Builds Automatisches Ausführen von Tests Automatisches Deployment auf Azure © Zühlke 2013
  • 79. MegaCRM: CI Build in the Cloud © Zühlke 2013
  • 80. Code Analyse VS Code Analysis StyleCop Auch FxCop genannt Nicht in Visual Studio integriert In Visual Studio integriert Analysiert C# Source Code Statische Code Analyse Überprüft Code Formatierung Analysiert Assemblies © Zühlke 2013
  • 81. MegaCRM: Code Analyse © Zühlke 2013
  • 82. WP8 Mega CRM: The Big Picture   MEGA CRM  Azure Cloud REST Service © Zühlke 2013
  • 83. Zusammenfassung © Zühlke 2013
  • 84. Zusammenfassung Source Build Plan Test Collaborate Service Team Foundation Service Azure © Zühlke 2013
  • 85. Vier Fragen eines Sensei Kosten senken Time to Market Risikominimierung Verteilte Teams © Zühlke 2013
  • 86. Kosten senken Visual Studio 2012 Team Foundation Service Azure © Zühlke 2013
  • 87. Time To Market Visual Studio 2012 Team Foundation Service Azure © Zühlke 2013
  • 88. Risikominimierung Visual Studio Team Foundation Service Azure © Zühlke 2013
  • 89. Verteilte Teams Visual Studio 2012 Team Foundation Service Azure © Zühlke 2013
  • 90. Sensei Mit Visual Studio 2012 hat man eine Allzweckwaffe, welche einem in jedem Kampf unterstützt. © Zühlke 2013
  • 91. Meister-Tools © Zühlke 2013
  • 92. Ultimate Premium Test Professional Professional Mission-critical Quality Continuous quality enablement Development productivity everywhere scale and enabled team complexity development  Test Case Management  Windows Desktop and Phone Apps Manual Testing Windows 8 Metro Style Apps  IntelliTrace Anywhere  Code Metrics  and Fast-Forward   Web and Cloud Websites and  Web Performance Testing  Code Coverage  Exploratory Testing Services Lab Management Office and SharePoint Development Coded UI Testing    Load Testing   PowerPoint Storyboarding  Blend for Visual Studio  Architecture Explorer, Progressive  Code Clone  Backlog Management  LightSwitch Reveal, and Standard Graphs  Code Review  Sprint Planning  Extensible Testing Framework Feedback Manager Static Code Analysis UML 2.0 Compliant Diagrams    Task Suspend/Resume Advanced Profiling (Activity, Use   Refactoring Case, Sequence, Class, Component)   Graphics Debugging  Layer Diagram and  Third-Party Extensibility Dependency Validation  Read-Only Diagrams  Team Explorer Microsoft Microsoft Expression Studio 4 Expression Studio 4 Ultimate Web Professional Project Management Reporting Agile Task Boards Integrated teams     Work Item Tracking  Build Services  System Center Team Foundation Server continuous value delivery  SCM  PreEmptive Analytics Integration © Zühlke 2013
  • 93. Was braucht’s für Stufe 1? $$ Stufe 1 Devtools Investitionen Professionelle Desktop- und Die gezeigten Beispiele setzen Für den aufgezeigten App-Entwicklung folgende Lizenzen voraus Produktivitätsgewinn braucht’s: Application Lifecycle Management Visual Studio Professional w/MSDN Bsp.: 4 Developer, 1 Projektleiter Automatische Unittests Team Foundation Server CAL ca. 70 CHF pro Dev/Monat* Team Foundation Server ca. 36 CHF pro PL/Monat* * unverbindliches Preisbeispiel © Zühlke 2013
  • 94. Softwarebeschaffung/-Compliance Softwarebeschaffung Zahlreiche Lizenzprogramme und Lizenzierungsformen Je nach Anforderungen und Rahmenbedingungen des Unternehmens Lizenzberatung Lassen Sie sich durch den Fachhändler beraten! Beste Lösung für Sie für den günstigsten Preis… … und Sicherstellung der korrekten Lizenzierung http://www.microsoft.com/de-ch/visualstudio/buy © Zühlke 2013
  • 95. Ihre MSDN Vorteile Software Assurance für Visual Studio Immer die neuesten Werkzeuge und Technologien verwenden können Immer korrekt, legal und günstig lizenziert bleiben Fast alle Microsoft Produkte für Test- und Entwicklungszwecke Team Foundation Server 2012 msdn Alle gängigen Windows-Betriebssysteme, z.B. Windows 8, Windows Server 2012 SQL Server (und alle weiteren Server ab Premium) Office, Visio und Project (ab Premium) Expression Studio (ab Premium) Azure-Serverzeit für Cloud Computing Downgrade-Rechte für ältere Versionen von Visual Studio Profi-Support & Trainingsinhalte © Zühlke 2013
  • 96. Sensei-Tipp MSDN: Schon ab einer Lizenz mehr Leistung für weniger Geld! © Zühlke 2013
  • 97. Sparen Sie bis zu 30%! Premium Upgrade Gültig für Kunden von Visual Studio Professional mit MSDN-Abonnement Bis zu 30 % sparen beim Upgrade auf Visual Studio Professional Premium Weltweit gültig bis zum 30. Juni 2013 Über verschiedene Volumenlizenzprogramme erhältlich: Enterprise Agreement, EAP, Select Plus, Open Value und Open Value Subscription Kontaktieren Sie Ihren Software-/Handelspartner für Ihr individuelles Angebot (Stichwort: „SA Step Up“) Premium © Zühlke 2013
  • 98. Ihre Kontakte Für weitere Fragen stehen wir Ihnen jederzeit gerne zur Verfügung. Hansjörg Scherer Corinna Sameli Technical Solution Professional Developer Tools Solution Sales Specialist Developer Tools hansjoerg.scherer@microsoft.com corinna.sameli@microsoft.com Mobile: +41 (0)78 844 64 30 Mobile: +41 (0)78 844 60 24 Microsoft Schweiz Microsoft Schweiz Richtistrasse 3 Richtistrasse 3 CH-8304 Wallisellen CH-8304 Wallisellen © Zühlke 2013
  • 99. Outro © Zühlke 2013
  • 101. Über uns Romano Roth Stefan Züger Lead Software Architect Software Engineer Zühlke seit 2002 Zühlke seit 2010 Client-Architekturen Client-Entwicklung romano.roth (at) zuehlke.com stefan.zueger (at) zuehlke.com © Zühlke 2013
  • 102. Was können wir für Sie tun? @romanoroth Oder @stefanzueger © Zühlke 2013

Hinweis der Redaktion

  1. Rolf Höpli
  2. Rolf Höpli
  3. Rolf Höpli
  4. Romano Roth
  5. Rolf Höpli
  6. Rolf Höpli
  7. Rolf Höpli
  8. Hansjoerg Scherer
  9. Hansjoerg Scherer
  10. Hansjoerg Scherer
  11. Hansjoerg Scherer
  12. Romano RothKurz Rollenspiel und Rollen erklären
  13. Romano RothKein Erfolg ohne Mobilität!Ich als PO der MEGA CRM Desktop Anwendung mit Anfragen überhäuft, wann denn endlich eine Mobile Lösung für unser CRM auf den Markt kommt.
  14. Romano RothAuf der anderen Seite stellen sich mir bei so einem Unterfangen natürlich auch Herausforderungen…Kosten senken- Entwicklungskosten- Betriebskosten (Server)- LizenzenTime to Market- Schnell auf Veränderungen reagieren- Produkteinführungszeit verkürzenRisikominimierung- Das Risiko das Falsche zu Entwickeln minimieren- Software auf Halde entwickelnVerteilte Teams- Wie gehe ich mit verteilten Teams um was für Investitionen benötige ich dafür?
  15. Romano Roth & StefanZüger
  16. StefanZügerDemo WPF ClientStefanWas stelltsich PO vor?
  17. Romano Roth- 2 WochenZeit- Abteilung USA istFeuer und Flamme und will auchmitmachen….  Mehr Budget  Verteiltes Team
  18. StefanZüger
  19. StefanZüger
  20. StefanZüger- Source Controlin der Firma problematisch, Performance, Zeit, Kosten, …- Hosting in der Firma problematisch
  21. StefanZügerDurch das schnelle Wachstum unserer Firma ist die interne IT überlastet und kommt nicht mehr nach.
  22. StefanZüger- Romano ->findest du das eineguteIdee?
  23. Romano Roth
  24. Romano Roth
  25. Romano RothSieheWebSeite für mehr Details
  26. StefanZüger
  27. Romano Roth
  28. Romano RothTeam Foundation Service in der CloudIst ein Sourceverwaltung in der CloudBuild ServerTestAgiles PlanungstoolScrum oder kanban BoardWork Item TrackingUser StoriesTestBugsIssuesCollaborationPO, Team, Manager  Visualisierung des Fortschritts  Transparenz
  29. Romano Roth
  30. Romano Roth
  31. Romano Roth- Keine windows store apps und portable class libraries builden
  32. Romano RothNeues Team Projekt -> Mega CRM ohne GITUsers hinzufügenUser Stories -> Tasks erfassenProjektaufsetzenSource Code eincheckenService in Cloud deployenKundendaten in ListedarstellenDetails zumKundendarstellenBoardanzeigenTask auf Done setzen
  33. Stefan ZügerSource Code in den TFS einchecken
  34. Romano Roth
  35. Romano RothEine Cloud verwendet man um Rechenkapazität, Datenspeicher, Netzwerkkapazitäten und Software dynamisch über das Netz zur Verfügung zu stellen.IaaS – Infrastructure as a Service – Cloud bietet virtualisierte Computerhardware (Rechenzenter).PaaS – Platformas a Service – Cloud bieten Laufzeitumgebungen (Service Provider) SaaS – Software as a Service –Anwendungsprogrammen in der Cloud. (Software bei Bedarf)
  36. StefanZügerManage.windowsazure.comNeuesWebseitenProjektDeployment ProfilherunterladenDeployment Profil in VS importierenDeployenDemo Service
  37. Stefan Züger
  38. StefanZüger
  39. Stefan Züger
  40. Romano Roth
  41. Romano RothModerne Smartphone PlatformMulticore  2 Cores  Support für 4 – 8 CoresNeuer Graphic ProzessorMehr RAM: 1GB oder 512MBNeue Screen ResolutionMicroSD Cards, encryptablestorageNFCShared Windows CoreRückwärskompatibilität zu WP 7.xDeviceHerstellerNokiaSamsungHTCHuawei
  42. Romano Roth
  43. Romano RothShared CoreWindows Core System  OS übergreiffende Funktionalität File systemMobile Core  Windows 8 hat noch mehr im Mobile CoreCore CLR -> Core Libs, GarbageCollectorTrident  Rendering Engine für IEWP Shell  App Hub, System AppsPlatform ServicesPackagemanager  Deployment, Lizenzen, Installation, DeinstallationExecutionmanager  Lifecicle der App, BackgroundprozesseNavigationmanager  Übergang vom Startmenu zu einer App oder von App zu AppResourcemanager  Überwachung der Systemresourcen
  44. Romano Roth3 APIsUntenShared Core.NET API seit WP7Mixed Apps Direct3D + XAML
  45. Romano Roth
  46. Romano Roth
  47. Romano Roth
  48. Romano RothHigh Performance Audio und Video APIs
  49. Romano Roth
  50. Romano Roth- New WP8MegaCRM project XAML erklärenF5
  51. Romano Roth
  52. Romano Roth
  53. Romano Roth
  54. Romano Roth
  55. Romano Roth
  56. Romano RothWeil XAML -> VektorbasiertAlsEntwickler Design füreineAuflösung
  57. Romano Roth
  58. Romano RothAchtung: Nur für funktional Testing verwendenDer Prozessor in Eurem PC ist viel schneller als der auf dem Phone
  59. Romano RothAlle Features4 VerschiedeneEmulatorenPortrait ModeLocation SimulationNetworkKameraScreenshots
  60. Romano RothPride in craftsmanshipEine gute User Experience entsteht nur durch ein sauberes Handwerk in allen DisziplinenBe fast and fluid Apps sollen responsive, intuitiv, touch-optimiert und smooth sein.Authentically Digital Verbunden, dynamisch, lebendig, starke Farben, bewegt. Don’ttrytobeWhatIt’s NOT.Do morewithlessInhalte statt Chrom, gut in etwas seinWinasoneSynergien nutzen, Integriert und Vernetzt Redundanz vermeiden, Standarts einhalten
  61. Romano Roth
  62. Romano Roth
  63. Stefan Züger
  64. Stefan Züger
  65. Stefan Züger
  66. Stefan Züger
  67. Stefan Züger
  68. Stefan Züger
  69. Stefan Züger
  70. Stefan Züger
  71. Stefan Züger
  72. Stefan Züger
  73. Stefan Züger
  74. Stefan Zügerhttp://www.windowsphone.com/en-US/business/for-businesshttp://msdn.microsoft.com/en-us/library/windowsphone/develop/jj206943(v=vs.105).aspx
  75. Stefan Züger
  76. Romano Roth
  77. Romano Roth & StefanZüger
  78. Stefan ZügerIn VS2010 war MS-Test eherlangsam -> blockiertEntwicklungC/C++ Support war schlechtKeineguteLösung um Tests zugruppierenNeuer Test Explorer in VS2012
  79. Stefan Züger
  80. Stefan Züger
  81. FXCopprüftWartbarkeit -> Komplexität der Methoden, Class CouplingPerformance -> ungebrauchteVariablen und Methoden, Unnötige CastsKorrektes Disposing von DisposablesStyleCopprüftFormatierung des Source CodesGross-Klein-Schreibung von Klassen, Methoden, VariablenKlammern auf neuerZeileEineZeileAbstandzwischenMethoden
  82. Stefan Züger
  83. Stefan ZügerQualitäterhöhtdurch:Unit TestsCI BuildStatische Code Analyse
  84. Romano Roth
  85. Das Visual Studio integriert alles.
  86. Romano RothKosten senken- Entwicklungskosten- Betriebskosten (Server)- LizenzenTime to Market- Schnell auf Veränderungen reagieren- Produkteinführungszeit verkürzenRisikominimierung- Das Risiko das Falsche zu Entwickeln minimieren- Software auf Halde entwickelnVerteilte Teams- Wie gehe ich mit verteilten Teams um was für Investitionen benötige ich dafür?
  87. Romano RothUnit Tests:Einfach! Keine Evaluation von Frameworks + Integrations aufwand
  88. Romano RothMit VS kann ichWeb SitesWeb ServiceWindows Desktop ApplikationenWindows Phone ApplikationenWindows Store ApplikationenSharepointOffice…
  89. Romano Roth
  90. Romano Roth
  91. Romano RothMit Visual Studio 2012 hat man eine Allzweckwaffe, welche einem in jedem Kampf unterstütz.Visual Studio 2012 ist die Speerspitze die alles Integriert und uns bei allen Herausforderungen unterstützt. Sei es beim - Coden oder beim- Debuggen oder beim - Testschrieben oder beim- Mocken oder beim- Refactoren oder beim- Deployment nach Azure oder bei- Source Controlintegration oder beim - der Colaboration mit anderen Team MembernVisual Studio 2012 unterstützt und bei all diesen Herausforderungen darum ist Visual Studio 2012 als Meister Tool die richtige Wahl!
  92. Hansjoerg Scherer
  93. Hansjoerg Scherer
  94. Hansjoerg Scherer
  95. Hansjoerg Scherer
  96. Hansjoerg Scherer
  97. Hansjoerg Scherer
  98. Hansjoerg Scherer
  99. Hansjoerg Scherer
  100. Marco Balzarini
  101. Marco Balzarini
  102. Rolf Höpli
  103. Marco Balzarini