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)
Engagierend und praktisches Training.
Balavignesh Elumalai - Scottish Power
Kurs - SonarQube for DevOps
Maschinelle Übersetzung
Der Ausbilder verfügt über umfassende Erfahrung und ist in der Praxis gut bewandert. Die Tiefe des Wissens und die Leidenschaft für den Unterricht ist 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 über alle notwendigen Werkzeuge für die Ausbildung. Der Trainer klärte gerne alle Zweifel auf und praktische Anwendungsfälle wurden diskutiert.
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
Luke was very knowledgeable, patient, and very open to satisfy my curiosity, for example I asked him to generate errors to see how system will response, etc. He would go above and beyond to answer questions or demonstrate the functionalities, even some of my questions were out of the class scope. He gave me a real experience with the system. I definitely will take another class with him and recommend him as a teacher for others. Thank you Luke!.
Tina Henderson
Kurs - Test Automation with Selenium and Jenkins
Maschinelle Übersetzung