Schulungsübersicht
QA/CI
- Was ist QA?
- Was ist CI?
- Kosten der Softwareentwicklung, Refactoring und Fehlerbehebung
- Projekt identifizieren und verstehen
- Vorteile für die Organisation
DDD
- Softwareentwicklung basierend auf Geschäftsanforderungen, Annahmen DDD
- Kommunikationsprobleme IT-Geschäft
- Domain Model
Best Practices
- KISS-Prinzip und DRY
- Codierungsstandards
- Erstellung von wiederverwendbarem Code durch OOP und Design Patterns
- Identifizierung und Reduzierung der zyklomatischen Komplexität
Softwaremetriken
- Gewichtete Methoden pro Klasse
- Antwort für eine Klasse
- Tiefe des Vererbungsbaums
- Coupling Between Objects (Zusammenhang zwischen Objekten)
- Mangel an Kohärenz der Methoden
- Anzahl der Kinder
- Zyklomatische Komplexität
- Metriken-Klasse
- Modellmetriken
- Metriken für die Verwendung
Software-Test
- Was, wann und wie zu testen?
- Methode "White-Box" und "Black Box"
- Die Rolle des Testens in agilen Methodologien
- TDD als potenzielle Kostensteigerung für das Projekt
- Unit Testing mit JUnit (Java), PHPUnit (PHP)
- Verhaltensbasierte Tests mit JBehave (Java), Behat und Mink (PHP)
- Funktionaltests
Refactoring
- Was ist Refactoring?
- Schuldentechologie
- Code Smell
- Refactoring-Muster
Dokumentation
- Die Rolle der Dokumentation in agilen Methodologien
- Was soll dokumentiert werden?
- Arten von Dokumentationen
- Dokumentation und agile Methodologien, oder (Funktionierende Software anstelle umfangreicher Dokumentation)?
- Standard XMI
- Automatische Generierung von Dokumentation aus Javadoc (Java), ApiGen (PHP)
Tools und Umgebung CI
- Tools und Umgebung CI
- PMD (Java), phpmd (PHP)
- CPD (Java), phpcpd (PHP)
- Anzahl der Codezeilen (Java), phploc (PHP)
- UCDetector (Java), phpdcd (PHP)
- Jdepend (Java), phpdepend (PHP)
- Jenkins Continuous Integration Server
Agile und CI/QA
- Planung und inkrementelle Entwicklung
- Aufnahme von Veränderungen
- Kurze Phasen
- Mehrdisziplinäre Teams
- Extreme Programming, Code Review
- Individuen und Interaktionen vor Prozessen und Tools
Zusammenfassung
- Diskussion
- Fragen
- Wie beginnen Sie den Implementierungsprozess?
Voraussetzungen
Kenntnisse der Softwareentwicklungsprozesse
Erfahrungsberichte (5)
Spannend und praktische Übungen.
Balavignesh Elumalai - Scottish Power
Kurs - SonarQube for DevOps
Maschinelle Übersetzung
Der Trainer hat umfassende Erfahrung und präsentiert diese sehr überzeugend. Tiefe Kenntnisse und Begeisterung für das Lehren werden sehr geschätzt.
Anup Kumar - SMR Automotive Mirrors Stuttgart
Kurs - Jenkins 2: Building CI/CD Pipelines
Maschinelle Übersetzung
Der Trainer war sehr gut organisiert. Er erklärte am Anfang alle für die Schulung benötigten Tools. Der Trainer klärte gerne alle Fragen und praktische Anwendungsfälle wurden besprochen.
Vivek Verma - Global Knowledge Network Training Ltd
Kurs - DevOps Practical Implementation and Tools
Maschinelle Übersetzung
Sehr detailliert, der Trainer kennt das Thema sehr gut und hat viele Themen abgedeckt
Gabriel Kelly Navarro - Opswerks
Kurs - Advanced Spinnaker
Maschinelle Übersetzung
All of it. Having had no previous exposure to Jenkins, I was a little concerned about my ability to keep up. IPad provided appropriate coaching/support, when I asked for help, so that I was able to follow the presentation at a level I was happy with.
Graham Congdon
Kurs - Jenkins: Continuous integration for Agile development
Maschinelle Übersetzung