Code Quality in Practice

Ähnliche Dokumente
Code Quality in Practice

Effektiver Einsatz von Code-Reviews

Effektiver Einsatz von Code-Reviews

Effektiver Einsatz von Code-Reviews

Agile Architektur. Version: 1.1. Orientation in Objects GmbH. Weinheimer Str Mannheim.

Agile Architektur. Abstract. Version: 1.0. Orientation in Objects GmbH. Weinheimer Str Mannheim.

Agile Architektur. Abstract. Version: 1.1. Orientation in Objects GmbH. Weinheimer Str Mannheim.

Continuous Database Design

It's time to rethink Datenbank-Design in der schönen neuen Welt

Pre-tested commit 2.0 mit Gerrit und Jenkins

Datenbanken in der schönen neuen Welt

Brauche ich ein DVCS?

Ant + Ivy Building with dependencies

Continuous Database Design

Gerrit und Jenkins ein Traumpaar für Pre-Tested Commit

It's time to rethink Datenbank-Design in der schönen neuen Welt

Atlassian Git Essentials Nahtlose Entwicklungsworkflows aus einer Hand

Microservices. - Integration der Benutzeroberfläche - Version: Orientation in Objects GmbH. Weinheimer Str.

Last- und Stresstest mit the Grinder 3

Gerrit und Jenkins ein Traumpaar für Pre-Tested Commit

Kontinuierliche Architekturdokumentation im agilen Umfeld

IntelliJ IDEA. Gliederung. Was ist IntelliJ IDEA? Lizenzmodell Warum IntelliJ einsetzen? IntelliJ und Eclipse Demo. Blick über den Eclipse-Tellerrand

Resilient Software Design Patterns

Lebendige Architektur- Dokumentation - kontinuierlich und effizient

ResilientSoftware Design Patterns

Issue Tracker & Wiki

Agiles Anforderungsmanagement mit Atlassian Tools

Einleitung und Motivation Code Review-Arten Tools Live Demo Best Practices Zusammenfassung. Code Review. Seminar Effiziente Programmierung

Angriff auf den Platzhirsch

TDLCR Test Driven Legacy Code Refactoring

Google Collections. Gliederung. Los geht s... Praktische Helferlein Collections Wie geht s weiter? Version: 1.0. Orientation in Objects GmbH

Legacy Code meistern in x einfachen Schritten

Inhaltsverzeichnis. 1 Einführung Warum dieses Buch? Struktur und Aufbau Dankeschön Feedback 5

Legacy Code meistern in x einfachen Schritten

Iterativ. Inkrementell

Value Delivery and Customer Feedback

Schnittstellenarchitektur in Zeiten sich wandelnder Frontend-Technologien

Legacy Code meistern in x einfachen Schritten

Legacy Code meistern in x einfachen Schritten


Auswahl eines Continuous Integrationsservers

Struts 2 Das Imperium schlägt zurück?

Agile Entwicklung für ios und Android

NoSQL Datenbanken am Beispiel von CouchDB

Client/Server Applikation mit Android BDA Abschlusspräsentation. Agenda. Projektübersicht. Projektübersicht. Projektergebnis. Live Demonstration

Axis2, CXF und JAX-WS RI im Vergleich

TDD. mit JUnit & Mockito. Tobias Trelle, codecentric

Einführung in das Scrum Framework & welche 10 Praktiken helfen, Scrum wirklich gut zu machen

JOHANNES SEITZ Continuous Integration Extreme!


Kontinuierliche Architekturdokumentation im agilen Umfeld

Q-Event «Spice up your Test!»

TFS Customzing. in der Praxis. Thomas Gugler. seit 2005 bei ANECON. .NET seit 2002 (happy bday!) Schwerpunkte: MCPD.Net 4.0, MCTS TFS, Scrum Master,

Kollaborative Anforderungsanalyse im verteilten Softwareentwicklungsprozess

PWA: Portable Webanwendungen statt nativer Apps

CODE REVIEWS DONE RIGHT. Heiko Gramlich

Der Editor Vim/gVim als Perl-IDE

CD in the box. Jan Rümenapf Matthias Zieger

The Atlassian Team Playbook - Anleitung zur Teamselbsthilfe

Oracle JDeveloper 10 g

Wer bin ich. > Senior Consultant, Architekt und Trainer (MATHEMA Software GmbH) > 25+ Jahre Software > 12+ Jahre Java Enterprise > 7+ Jahre.

Bekannte Tools in einem agilen Ansatz. Frank Schwichtenberg SourceTalkTage 2013 Göttingen,

Software-Entwicklung in der Praxis Gastvortrag Vorlesung P2, Universität Bern Stefan Reichhart -

Agile Ressourcenplanung

Testen von sicherheitskritischer Embedded Software mit frei verfügbaren Tools. - ein Erfahrungsbericht

CONTINUOUS DELIVERY. Entmystifiziert. codecentric AG

Platform as a Service (PaaS) & Containerization

Softwareentwicklung bei eevolution

Agile Ressourcenplanung

Entwicklung von effizienten UI-basierten Akzeptanztests für Webanwendungen

Hibernate Search. Unterstützung laufender Java Projekte. Perfect Match Rent-a-team Coaching on the project Inhouse Outsourcing

Einführung agiler Verfahren Ein Erfahrungsbericht aus zehn Jahren Praxis

NEUES AUS DER ENTWICKLUNG. April 2015

CI was tut sich mit Jenkins in Sachen Test?

APPS für ios 10. professionell entwickeln. Apple Watch

Usability Testing. User Centered Design mit Winzigbudgets Namics Fachtagung. Dr. Dorian Selz, CEO & Mitgründer. memonic

Agilität selbst erfahren. Agile Softwareentwicklung in der Praxis: Jetzt bewerben für das erste Agile Code Camp 2013!

Universität Bielefeld. Softwarepraktikum. Gernot A. Fink SS Rückblick extreme Programming (XP)

TDLCR Test Driven Legacy Code Refactoring

Agile Ressourcenplanung

Don't look back in anger

Profil von Michael Wettach

Continuous Code Review

Ein- und Ansichten DOAG Regionaltreffen Bremen Oktober 2010

Struts oder JavaServer Faces WA4

Software Entwicklungs Praktikum (SWEP) Einführung und Organisatorisches

Test Driven Development

Projektmanagement und Softwareentwicklung. Nina Stodolka, WS2017/2018

Agiles Testen. Gedankensammlung. 17. November Patrick Koglin

E-Business. Fr. Hauser, WS 2018/

Von der Gegenwart mit Vollgas in die agile Zukunft!

Welche Testautomatisierungen sind möglich und sinnvoll?

Cross-Platform Mobile Development mit Xamarin Mark

SEA. Modellgetriebene Softwareentwicklung in der BA

Am Beispiel des Bibliographischen Institut GmbH

Ruby on Rails. Thomas Baustert Ralf Wirdemann Alternative zur Web-Entwicklung mit Java?

Softwaretest in Praxis und Forschung Eine Auswahl von Ergebnissen Andreas Spillner, Karin Vosseberg, Mario Winter

Transkript:

Code Quality in Practice Version: 1.0 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater, Entwickler Feedback @ThorstenMaier Code Quality in Practice 2 1

Code Quality 3 TEAM 4 2

http://www.spiegel.de/karriere/games/jobtitel-generator-neue-berufsbezeichungen-fuer-angeber-und-aufschneider-a-771682.html 5 Ein gut funktionierendes Team aus adäquaten Mitarbeitern wird ein Projekt beinahe unabhängig vom Verfahren und der Technologie [ ] fertig stellen. Alistair Cockburn Feedback @ThorstenMaier Code Quality in Practice 6 3

Der Gute-Laune- Macher Der Kommunikator Der Schaffer Das Organisationstalent und Realist Der Technikfreak und Visionär 7 ARCHITEKTUR 8 4

9 10 5

Feedback @ThorstenMaier Code Quality in Practice 11 Feedback @ThorstenMaier Code Quality in Practice 12 6

13 Speziallogik Rechtekonzept Architektur ~10 Seiten Betrieb Starten Stoppen ~5 Seiten Endbenutzer ~50 Seiten DevOp DevOp Endbenutzer Feedback @ThorstenMaier Code Quality in Practice 14 7

Markdown yuml.me Graphviz Umlet 15 Markdown Überschrift 1 ============= Dies ist ein Text. Es folgt eine Aufzählung: - Punkt 1 - *Kursiver* Punkt 2 - **Fetter** Punkt 3 Überschrift 1.1 --------------- Spalte 1 Spalte 2 -------- -------- Zeile 1... Zeile 2......... Feedback @ThorstenMaier Code Quality in Practice 16 8

yuml.me [Company]<>-1>[Location] [Location]+->[Point] Feedback @ThorstenMaier Code Quality in Practice 17 CODE 18 9

19 20 10

21 22 11

23 Testarten Unit Test Integration Test UI Test 24 12

Testarten Unit Test Integration Test UI Test 30s+ Funktioniert mein Mock? 25 Testarten Unit Test Integration Test UI Test 30s+ Funktioniert mein Mock? 30s+ Das sieht der User 26 13

Testarten Unit Test Integration Test UI Test 1s Aussage über Codequalität! 30s+ Funktioniert mein Mock? 30s+ Das sieht der User 27 REVIEWS 28 14

Kennen Sie das? Das ist historisch gewachsen. 29 noch ein Klassiker Thomas ist leider gerade im Urlaub 30 15

Es bleibt niezeit für das große Refactoring Code-Reviews als kontinuierliche Lösung 31 Bugs finden 32 16

Wissen 33 120 15 100 Entwicklungskosten in % 80 60 40 100 105 Code-Review Entwicklung 20 0 ohne Code-Review mit Code-Review 34 17

Wissen Bugfixing Code-Review Entwicklung ohne Code-Review mit Code-Review 35 Jedermit jedem! 36 18

200 400 Zeilen Gefundene Fehler 1 2 Stunden Dauer des Reviews http://support.smartbear.com/resources/cc/book/code-review-cisco-case-study.pdf 37 38 19

ANALYSE 39 40 20

41 42 21

Controller ServiceImpl 43 Controller ServiceImpl DaoImpl https://github.com/thorstenmaier/architecture-layer-check/ 44 22

45 (Service) - [DEPENDS_ON] -> (Controller) 46 23

MATCH (s:service)-[:depends_on]->(c:controller) return s,c 47 48 24

17 Findings 49 git ratchet check https://github.com/iangrunert/git-ratchet 50 25

Mehr von OIO zum Thema Schulung: Refactoring Workshop http://www.oio.de/seminar/methodik-prozess-management-softskills/training-java-kurs-refactoring-schulung.htm?vf15 Schulung: Testen von Java Programmen http://www.oio.de/java-testen-schulung.htm?vf15 Schulung: Effective Java http://www.oio.de/seminar/java/effective-java-schulung.htm?vf15 Gutachten: Java Code Review http://www.oio.de/competence-center/gutachten/codereview/index.htm?vf15 Feedback @ThorstenMaier Code Quality in Practice 51?? Fragen??? Orientation Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de?? 52 26

Vielen Dank für Ihre Aufmerksamkeit! Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de 27