"Effektive Code Reviews" - Abendvortrag bei oose.deFrank Sons
Abendvortrag bei oose.de am 24.03.2016
Code Reviews sind heute in vielen Teams Standard. Sei es als allgemeine Vier-Augen-Regel, bei pull requests oder tatsächlich durch Teammeetings. All diese Methoden haben Vor- und Nachteile, und nur in den seltensten Fällen kann man damit tatsächlich effektiv Bugs finden. Aber meist werden Code Reviews genau mit diesem Ziel eingeführt: Fehler vermeiden! Der Vortrag zeigt verschiedene Methoden für effektive Code Reviews auf und erklärt, warum toolbasierte Code Reviews eigentlich erst ein zweiter Schritt sein sollten und stattdessen das mindset der Entwickler im Vordergrund stehen sollte. Praktische Tipps um die eigenen Code Reviews zu verbessern runden den Vortrag ab.
"Effektive Code Reviews" - Abendvortrag bei oose.deFrank Sons
Abendvortrag bei oose.de am 24.03.2016
Code Reviews sind heute in vielen Teams Standard. Sei es als allgemeine Vier-Augen-Regel, bei pull requests oder tatsächlich durch Teammeetings. All diese Methoden haben Vor- und Nachteile, und nur in den seltensten Fällen kann man damit tatsächlich effektiv Bugs finden. Aber meist werden Code Reviews genau mit diesem Ziel eingeführt: Fehler vermeiden! Der Vortrag zeigt verschiedene Methoden für effektive Code Reviews auf und erklärt, warum toolbasierte Code Reviews eigentlich erst ein zweiter Schritt sein sollten und stattdessen das mindset der Entwickler im Vordergrund stehen sollte. Praktische Tipps um die eigenen Code Reviews zu verbessern runden den Vortrag ab.
Lernen Sie Teststrategien für Angular- (und generell Web-) Applikationen mit einem Mix aus Theorie und Demos kennen: Von Unit Test über Integration Test mit Jest bis End-to-end Tests mit Selenium.
Demos: https://github.com/florianbader/openspaceplanner
Diese ecspand Lösung erweitert Ihren SharePoint um ein voll funktionsfähiges Vertragsmanagement. Wissen Sie eigentlich, wie viele Verträge Sie haben? Und was Sie das alles kostet? Verschaffen Sie sich Übersicht! Die browserbasierte Lösung ermöglicht die Erfassung, Recherche und Verwaltung beliebiger Vertragsformen. Erstellen Sie, dank der einheitlichen und vollständigen Abbildung aller Verträge, eine umfassende Sicht auf den Wert Ihres Unternehmens, Ihrer Geschäftsbeziehungenund über zeitliche und finanzielle Auswirkungen.
Session im Rahmen der ecspand partnerworld 2013. Eine Aufzeichnung der Session finden Sie unter http://youtu.be/7z5x1RlpUCc
Was steckt hinter den Hype "Clean Code"? Die meisten denken in erster Linie an Quellcode, jedoch ist es nur ein Teil des Ganzen. Regeln, Konzepte und Richtlinien gehören mit dazu und entscheiden, ob stabile und wartbare Programme entstehen, die zum Unternehmenserfolg oder auch -ruin beitragen.
Zu dem Thema "Clean Code" haben wir am 12.8.2016 ein Webinar abgehalten und das sind die dazugehörigen Folien.
Diese ecspand Lösung erweitert Ihren SharePoint um ein voll funktionsfähiges Vertragsmanagement. Wissen Sie eigentlich, wie viele Verträge Sie haben? Und was Sie das alles kostet? Verschaffen Sie sich Übersicht! Die browserbasierte Lösung ermöglicht die Erfassung, Recherche und Verwaltung beliebiger Vertragsformen. Erstellen Sie, dank der einheitlichen und vollständigen Abbildung aller Verträge, eine umfassende Sicht auf den Wert Ihres Unternehmens, Ihrer Geschäftsbeziehungenund über zeitliche und finanzielle Auswirkungen.
Session im Rahmen der ecspand partnerworld 2013.
contract management,d.velop,ecm,ecspand,ecspw2013,enterprise content management,microsoft sharepoint,sharepoint,vertragsmanagement
Kontinuierliche Überprüfung der Code-Qualität mit ScrutinizerFATCHIP GmbH
- Herausforderungen beim Code-Qualitätsmanagement
- Was ist Scrutinizer?
- Warum Scrutinizer nutzen?
- Entwicklungsprozess mit Scrutinizer
- Beispiel: FatFramework
DAM-Auswahl: So finden Sie das richtige Digital Asset Management SystemAndreas Pörtner
Mit unserem DAM-Leitfaden finden Sie das richtige DAM-System. Die Experten von https://www.poertner-consulting.de beschreiben in diesem Dokument Schritt-für-Schritt wie Sie für Ihre DAM-Auswahl am besten vorgehen.
Weitere Informationen zum Thema DAM-Systemauswahl finden Sie auch unter https://www.poertner-consulting.de/dam-softwareauswahl/
CRM-Auswahl: So finden Sie die richtige CRM-SoftwareAndreas Pörtner
Mit unserem CRM-Leitfaden finden Sie das richtige CMS. Die Experten von https://www.poertner-consulting.de beschreiben in diesem Dokument Schritt-für-Schritt wie Sie für Ihre CRM-Auswahl am besten vorgehen.
Weitere Informationen zum Thema CRM-Auswahl finden Sie auch unter https://www.poertner-consulting.de/crm-softwareauswahl/.
How to speed up Spring Integration TestsQAware GmbH
betterCode(Spring), Juni 2023, Dirk Kröhan (Software Architect bei QAware)
Integrationstests sind ein wesentlicher Bestandteil des Softwareentwicklungsprozesses, da sie sicherstellen, dass alle Teile einer Anwendung sauber zusammenarbeiten. Mit zunehmender Größe und Komplexität einer Anwendung steigt auch üblicherweise die Anzahl der Integrationstest.
Damit die Ausführungszeit der Integrationstests nicht zum Bottleneck in unserer CI/CD-Pipeline wird, geht es in diesem Talk um Techniken zur Beschleunigung von Integrationstests in einer Spring-Boot-Anwendung.
Der Großteil der Ausführungszeit geht fast immer für die Erstellung des sogenannten "Spring Context" drauf. Damit nicht für jeden Integrationstest ein komplett neuer Spring Context erstellt werden muss, bringt Spring Boot bereits von Haus aus ein Konzept mit. Doch wenn man nicht aufpasst, wird dieses Konzept schnell ausgehebelt und man profitiert eben nicht von schnell laufenden Integrationstests.
Worauf man bei der Erstellung von Spring-Boot-Integrationstests unbedingt achten sollte, was es mit "Spring Boot Test Slices" auf sich hat und welche Möglichkeiten es sonst noch gibt, um schnellere Integrationstests zu bekommen, erfahrt ihr in diesem Talk.
Erschließen Sie neue Geschäftschancen durch optimierte, automatisierte und ...Wolfgang Schmidt
Als Spezialist für digitalisierte Prozesse und Entscheidungsunterstützung auf Basis etablierter Methodik, offener Standards und IBM Middleware lösen wir Ihre Schnittstellenprobleme, schaffen flexible, optimierte und automatisierte Prozessanwendungen und verbessern mittels mathematischer und kognitiver Verfahren Ihre Entscheidungsprozesse – On-Premises, in der Cloud oder in hybriden Szenarien.
Unsere Expertise in Digitalisierung und Entscheidungsunterstützung
Prozessintegrationen
-flexibel digitalisiert entlang Ihrer Wertschöpfungskette
-Zeitersparnis durch effizientes Ressourcenmanagement
Entscheidungsprozesse
-automatisiert, Datenanalyse – gestützt und mathematisch optimiert
-mit dem passenden Verfahren, ob cognitive, predictive oder prescriprive
Fachanwendungen
-flexible, optimierte und automatisierte Prozessanwendungen
-mehr Transparenz, mehr Kontrolle und geringere Kosten
Daten- und Anwendungsschnittstellen
-automatisiert, zuverlässig und stabil im Betrieb
-für B2B, M2M oder Industrie 4.0
Middleware-Platformen
-maximal verfügbar, flexibel und skalierbar
-ob Standardapplikation oder IoT, ob Microservices oder SOA
Lösungsarchitektur
-die optimale Lösung mittels Kombination passgenauer Komponenten und Methoden
-Die Mischung macht’s: Ob Open Source, Herstellersoftware oder Cloud-Services
Wie geht man ein Software-Projekt erfolgreich an? Welche Stolpersteine können dabei auftreten? In dieser Session werden an Hand von Praxis-Beispielen und Erfahrungen verschiedene Herangehensweisen an FileMaker Software-Projekte besprochen. Wie man ein Projekt möglichst für den Kunden und sich selbst zufriedenstellend und in einer überschaubaren Zeit abwickelt, welche Unwägbarkeiten dabei auf einen Lauern, wo man sich als Entwickler verlaufen kann und wo der Kunde, all das ist Thema dieser Session. Dabei steht die Arbeit mit und an FileMaker immer zentral im Blickwinkel.
Developer Week 2019: Identity & Access Management in der RealitaetRobin Sedlaczek
My slide about identity and access management (IAM) in complex and distributed software applications/solutions. The goal was to share real world experiences made when evolving multiple connected software applications on different technical stacks to use/support modern security approaches and standards (specifically oAuth2 and Open ID Connect) while solving several issues with multi-tenancy, multiple distributed (production) server, organizational challenges and integration problems internal as well as with external 3rd party applications.
Lernen Sie Teststrategien für Angular- (und generell Web-) Applikationen mit einem Mix aus Theorie und Demos kennen: Von Unit Test über Integration Test mit Jest bis End-to-end Tests mit Selenium.
Demos: https://github.com/florianbader/openspaceplanner
Diese ecspand Lösung erweitert Ihren SharePoint um ein voll funktionsfähiges Vertragsmanagement. Wissen Sie eigentlich, wie viele Verträge Sie haben? Und was Sie das alles kostet? Verschaffen Sie sich Übersicht! Die browserbasierte Lösung ermöglicht die Erfassung, Recherche und Verwaltung beliebiger Vertragsformen. Erstellen Sie, dank der einheitlichen und vollständigen Abbildung aller Verträge, eine umfassende Sicht auf den Wert Ihres Unternehmens, Ihrer Geschäftsbeziehungenund über zeitliche und finanzielle Auswirkungen.
Session im Rahmen der ecspand partnerworld 2013. Eine Aufzeichnung der Session finden Sie unter http://youtu.be/7z5x1RlpUCc
Was steckt hinter den Hype "Clean Code"? Die meisten denken in erster Linie an Quellcode, jedoch ist es nur ein Teil des Ganzen. Regeln, Konzepte und Richtlinien gehören mit dazu und entscheiden, ob stabile und wartbare Programme entstehen, die zum Unternehmenserfolg oder auch -ruin beitragen.
Zu dem Thema "Clean Code" haben wir am 12.8.2016 ein Webinar abgehalten und das sind die dazugehörigen Folien.
Diese ecspand Lösung erweitert Ihren SharePoint um ein voll funktionsfähiges Vertragsmanagement. Wissen Sie eigentlich, wie viele Verträge Sie haben? Und was Sie das alles kostet? Verschaffen Sie sich Übersicht! Die browserbasierte Lösung ermöglicht die Erfassung, Recherche und Verwaltung beliebiger Vertragsformen. Erstellen Sie, dank der einheitlichen und vollständigen Abbildung aller Verträge, eine umfassende Sicht auf den Wert Ihres Unternehmens, Ihrer Geschäftsbeziehungenund über zeitliche und finanzielle Auswirkungen.
Session im Rahmen der ecspand partnerworld 2013.
contract management,d.velop,ecm,ecspand,ecspw2013,enterprise content management,microsoft sharepoint,sharepoint,vertragsmanagement
Kontinuierliche Überprüfung der Code-Qualität mit ScrutinizerFATCHIP GmbH
- Herausforderungen beim Code-Qualitätsmanagement
- Was ist Scrutinizer?
- Warum Scrutinizer nutzen?
- Entwicklungsprozess mit Scrutinizer
- Beispiel: FatFramework
DAM-Auswahl: So finden Sie das richtige Digital Asset Management SystemAndreas Pörtner
Mit unserem DAM-Leitfaden finden Sie das richtige DAM-System. Die Experten von https://www.poertner-consulting.de beschreiben in diesem Dokument Schritt-für-Schritt wie Sie für Ihre DAM-Auswahl am besten vorgehen.
Weitere Informationen zum Thema DAM-Systemauswahl finden Sie auch unter https://www.poertner-consulting.de/dam-softwareauswahl/
CRM-Auswahl: So finden Sie die richtige CRM-SoftwareAndreas Pörtner
Mit unserem CRM-Leitfaden finden Sie das richtige CMS. Die Experten von https://www.poertner-consulting.de beschreiben in diesem Dokument Schritt-für-Schritt wie Sie für Ihre CRM-Auswahl am besten vorgehen.
Weitere Informationen zum Thema CRM-Auswahl finden Sie auch unter https://www.poertner-consulting.de/crm-softwareauswahl/.
How to speed up Spring Integration TestsQAware GmbH
betterCode(Spring), Juni 2023, Dirk Kröhan (Software Architect bei QAware)
Integrationstests sind ein wesentlicher Bestandteil des Softwareentwicklungsprozesses, da sie sicherstellen, dass alle Teile einer Anwendung sauber zusammenarbeiten. Mit zunehmender Größe und Komplexität einer Anwendung steigt auch üblicherweise die Anzahl der Integrationstest.
Damit die Ausführungszeit der Integrationstests nicht zum Bottleneck in unserer CI/CD-Pipeline wird, geht es in diesem Talk um Techniken zur Beschleunigung von Integrationstests in einer Spring-Boot-Anwendung.
Der Großteil der Ausführungszeit geht fast immer für die Erstellung des sogenannten "Spring Context" drauf. Damit nicht für jeden Integrationstest ein komplett neuer Spring Context erstellt werden muss, bringt Spring Boot bereits von Haus aus ein Konzept mit. Doch wenn man nicht aufpasst, wird dieses Konzept schnell ausgehebelt und man profitiert eben nicht von schnell laufenden Integrationstests.
Worauf man bei der Erstellung von Spring-Boot-Integrationstests unbedingt achten sollte, was es mit "Spring Boot Test Slices" auf sich hat und welche Möglichkeiten es sonst noch gibt, um schnellere Integrationstests zu bekommen, erfahrt ihr in diesem Talk.
Erschließen Sie neue Geschäftschancen durch optimierte, automatisierte und ...Wolfgang Schmidt
Als Spezialist für digitalisierte Prozesse und Entscheidungsunterstützung auf Basis etablierter Methodik, offener Standards und IBM Middleware lösen wir Ihre Schnittstellenprobleme, schaffen flexible, optimierte und automatisierte Prozessanwendungen und verbessern mittels mathematischer und kognitiver Verfahren Ihre Entscheidungsprozesse – On-Premises, in der Cloud oder in hybriden Szenarien.
Unsere Expertise in Digitalisierung und Entscheidungsunterstützung
Prozessintegrationen
-flexibel digitalisiert entlang Ihrer Wertschöpfungskette
-Zeitersparnis durch effizientes Ressourcenmanagement
Entscheidungsprozesse
-automatisiert, Datenanalyse – gestützt und mathematisch optimiert
-mit dem passenden Verfahren, ob cognitive, predictive oder prescriprive
Fachanwendungen
-flexible, optimierte und automatisierte Prozessanwendungen
-mehr Transparenz, mehr Kontrolle und geringere Kosten
Daten- und Anwendungsschnittstellen
-automatisiert, zuverlässig und stabil im Betrieb
-für B2B, M2M oder Industrie 4.0
Middleware-Platformen
-maximal verfügbar, flexibel und skalierbar
-ob Standardapplikation oder IoT, ob Microservices oder SOA
Lösungsarchitektur
-die optimale Lösung mittels Kombination passgenauer Komponenten und Methoden
-Die Mischung macht’s: Ob Open Source, Herstellersoftware oder Cloud-Services
Wie geht man ein Software-Projekt erfolgreich an? Welche Stolpersteine können dabei auftreten? In dieser Session werden an Hand von Praxis-Beispielen und Erfahrungen verschiedene Herangehensweisen an FileMaker Software-Projekte besprochen. Wie man ein Projekt möglichst für den Kunden und sich selbst zufriedenstellend und in einer überschaubaren Zeit abwickelt, welche Unwägbarkeiten dabei auf einen Lauern, wo man sich als Entwickler verlaufen kann und wo der Kunde, all das ist Thema dieser Session. Dabei steht die Arbeit mit und an FileMaker immer zentral im Blickwinkel.
Developer Week 2019: Identity & Access Management in der RealitaetRobin Sedlaczek
My slide about identity and access management (IAM) in complex and distributed software applications/solutions. The goal was to share real world experiences made when evolving multiple connected software applications on different technical stacks to use/support modern security approaches and standards (specifically oAuth2 and Open ID Connect) while solving several issues with multi-tenancy, multiple distributed (production) server, organizational challenges and integration problems internal as well as with external 3rd party applications.
Slides from my talk at BASTA! Spring 2019 about soft migration into the (Azure) cloud - step-by-step, service-by-service - With Azure Hybrid Connections. Let your cloud-services access your protected (on-prem) resources in just a few steps.
Slides from my presentation about application architectures for .NET Core applications. It covers desktop application, web applications, mobile applications as well as container-based applications. It's a roundup of the Microsoft Architecture Guides.
Magdeburger Developer Days 2018 - Das perfekte AnwendungsmodellRobin Sedlaczek
Slides from my talk about the perfect app model: bots at the Magdeburger Developer Days 2018. All about bots on different channels and as skills for voice assistants. Introduction.
Alleskönner: Azure Cosmos DB - Was kann der neue Datenbank-Service von Micros...Robin Sedlaczek
Slides from my session about Azure Cosmos DB at the BASTA! Spring 2018 conference in Frankfurt. It gives a brief introduction into Cosmos DB. In the live demo, I showed Azure Cosmos DB in action.
BASTA! Spring 2018 - Architekturen für .NET Core-AnwendungenRobin Sedlaczek
Slides from my workshop about software architectures for .NET Core applications at BASTA! Spring 2018 conference. We talk about architectures for enterprise mobile apps with Xamarin.Forms and ASP.NET Web Apps. Then we went hands-on and developed a CRM system called BASTAdynamics. :) One #microservice per desk, #containerized with #Docker, published to #Azure registry, deployed as Azure web apps. We have #aspnet #angular, #razor, #UWP & #Xamarin.Forms clients. #IdentityServer & @AzureCosmosDB in the backend. AND: We had a lot of fun! :)
GUI & DESIGN 2017 - Das perfekte Anwendungsmodell. UIs für jedes Device!Robin Sedlaczek
Slides from my talk about the perfect app model at the GUI & DESIGN 2017 conference. It's about multi-modal conversational user interfaces (CUI) to build UIs for every device with ease and one code base! Never exclude any user groups again. Using the Microsoft Bot Framework, Cognitive Services and AdaptiveCards. But we talk about Google Go and Alexa app models as well.
BASTA! 2017 Jubiläumskonferenz - CUIs & The Microsoft Bot FrameworkRobin Sedlaczek
Slides from my talk at the BASTA! 2017 Jubiläumskonferenz about the evolution of the user interface and the next step we have to go. It's all about Conversational User Interfaces (CUI), what they are and how they work compared to the graphical user interface (GUI).The practical part demos how chat bot can be used to implement such CUIs. In particular, the Microsoft Bot Framework is discussed.
BASTA! 2017 Jubiläumskonferenz - Warum warten auf die IDE!?Robin Sedlaczek
Slides from my talk about early feedback during development time, flexibility for customers and security as a Must-have. It's nothing about management - it's all about C# Script and practical use.
My slides from the Advanced Developers Conference 2017 (ADC Core) in Cologne! It's about C# scripting and how you can use it in your application. Benefits for developers and customers.
Slides from my workshop about Microsoft .NET, .NET Core and .NET Standard. In this workshop, I gave an overview of these several topics to show the direction of Microsoft's development platform to the audience.
BASTA! Spring 2017 - Warum warten auf die IDE? Direct Coding in der eigenen A...Robin Sedlaczek
Slides from my talk about direct coding in the own application using C# Scripting. Try and us your applications domain models and services in C# Scripts to empower development within an application. Or give your users the possibility to automate and extend your application with scripting.
2. Fairmas GmbH, Berlin 2013 2
Code Review Best Practices
Sensibilisierung
Maßnahmen/Vorgehen
Ziele
3. Fairmas GmbH, Berlin 2013 3
Code Review Best Practices
Review-Technik
Was ist ein Code Review?
Analytische Qualitätssicherungsmaßnahme
Methode agiler Prozesse
Forschungsgegenstand
4. Fairmas GmbH, Berlin 2013 4
Code Review Best Practices
Finden von Bugs
Warum Code Reviews?
Verbesserung der Code Qualität
Reduktion von Kosten
Lerneffekt + Teambildung
5. Fairmas GmbH, Berlin 2013 5
Code Review Best Practices
Inspektionsrate
Wie schnell können wir Code reviewen (kLOC/h)?
Begriffe
Defektrate
Wie schnell können wir Fehler/Bugs finden (Anzahl/h)?
Defektdichte
Wie viele Fehler finden wir in einer bestimmten Menge Code (Anzahl/kLOC)?
6. Fairmas GmbH, Berlin 2013 6
Code Review Best Practices
Nicht mehr als 200-400 LOC
Nicht länger als 60-90 Minuten
Best Practice #1
Quelle: http://smartbear.com/SmartBear/media/pdfs/WP-
CC-11-Best-Practices-of-Peer-Code-Review.pdf
7. Fairmas GmbH, Berlin 2013 7
Code Review Best Practices
Geht langsam vor!
Qualität vor Quantität.
Best Practice #2
8. Fairmas GmbH, Berlin 2013 8
Code Review Best Practices
Bereitet Euch vor!
Wählt vor dem Review Code aus, über den
Ihr reden möchtet und schaut Euch diesen
im Vorfeld an!
Best Practice #3
9. Fairmas GmbH, Berlin 2013 9
Code Review Best Practices
Best Practice #4
Autorenvorbereitung!
Autor macht Notizen zum
ausgewählten Code.
Quelle: http://smartbear.com/SmartBear/media/pdfs/WP-
CC-11-Best-Practices-of-Peer-Code-Review.pdf
10. Fairmas GmbH, Berlin 2013 10
Code Review Best Practices
Protokolliert Ergebnisse!
Notiert die gefundenen Probleme, um
daraus Aufgaben/Tickets abzuleiten.
Best Practice #5
11. Fairmas GmbH, Berlin 2013 11
Code Review Best Practices
Macht Ergebnisse Messbar!
Z.B. Defektdichte. Protokolliert am Ende des
Reviews, wie viele Probleme Ihr gefunden
habt. Setzt Ziele für das nächste Meeting.
Best Practice #6
12. Fairmas GmbH, Berlin 2013 12
Code Review Best Practices
Review des Reviews!
Prüft und notiert, wie viele Probleme aus
dem letzten Code Review beseitigt wurden.
Best Practice #7
13. Fairmas GmbH, Berlin 2013 13
Code Review Best Practices
Erstellt eine Checkliste!
An Hand einer Checkliste können Themenbereiche
strukturiert abgearbeitet werden. Nutzt die
Checkliste als Protokoll (siehe #5).
Best Practice #8
14. Fairmas GmbH, Berlin 2013 14
Code Review Best Practices
Defekte sind cool!
Gebt Euch gegenseitig das Gefühl, dass niemand
angegriffen wird! Im Gegenteil: gefundene Probleme
bedeuten, dass Ihr als Team großartig
zusammenarbeitet.
Best Practice #9
Hinweis der Redaktion
Statische Analysemethode
Schreibtischtest
Architektur-Review
Inspektion
Walkthrough
XP + Pair Programming
Sehr viele Studien (Cisco – 2000 Reviews mit 50 Entwickler)
Reduktion der zu erwartenden Fehler um 20% bis 50%
Architektur/Design Reviews zwischen 30% und 60%
Erhöhung der Wartbarkeit
Reduktion der zu erwartenden Fehler um 20% bis 50%
Architektur/Design Reviews zwischen 30% und 60%
Erhöhung der Wartbarkeit
7 von 10 Fehlern können gefunden werden
Während des Reviews nicht erst Code lesen
separates Dokument
Kommentare leiten durch Code und Review
Gründe und Methoden hinter dem Code
Anderer Effekt: weniger Bugs im Vorfeld
Code Conventions/Guidelines?
Code Documentation?
Invalide Werte für Parameter?
Unit Tests?
Dann kann gemessen werden, ob die Reviews etwas bewirken.