Εξέλιξη Κομματιού
QA/CI
- Τι είναι το QA;
- Τι είναι το CI;
- Οι δαπάνες για την ανάπτυξη λογισμικού, μεταπρόσωπη και συνταγματικές επιδιορθώσεις
- Αναγνώριση και κατανόηση του έργου
- Οφέλη για την οργάνωση
DDD
- Ανάπτυξη λογισμικού με βάση τους διαχειριστικούς κανόνες, υποθέσεις DDD
- Προβλήματα στην επικοινωνία IT-Επιχείρηση
- Το Δυναμικό Μοντέλο (Domain Model)
Best Practices
- Ο κανόνας KISS και DRY
- Συμβάσεις προγραμματισμού
- Δημιουργία ανακύκλωσης κώδικα μέσω της OOP και σχεδιασμός παραδειγμάτων
- Αναγνώριση και μείωση της κυκλομονοτονίας (cyclomatic complexity)
Μετρήσεις Λογισμικού
- Βάρος Μέθοδου ανά Τάξη (Weight Method per Class)
- Απάντηση σε Τάξη (Response For a Class)
- Βάθος Δέντρου Κληρονομικότητας (Depth of Inheritance Tree)
- Συσχετισμός Αντικειμένων (Coupling Between Objects)
- Ελλείψη Συνοχής Μεθόδων (Lack of Cohesion of Methods)
- Αριθμός Γιορτών (Number of Children)
- Κυκλομονοτονία (Cyclomatic complexity)
- Κλάση Μετρήσεων (Metrics class)
- Μετρήσεις Μοντέλου (Model Metrics)
- Μετρήσεις για χρήση (Metrics for use)
Τεστ από λογισμικό
- Τι, πότε και πώς να τεστάρουμε;
- Η μέθοδος "λευκή σκatση" και "μαύρη σκάτση"
- Ο ρόλος των τεστ στις αγίλες μεθόδους
- TDD μόνο ένα δυνητικό αύξημα στην κόστος του έργου
- Τεστ ανάπτυξης (Unit testing) με JUnit (Java), PHPUnit (PHP)
- Συμπεριφορικές δοκιμές με JBehave (Java), Behat και Mink (PHP)
- Λειτουργικά τεστ
Μεταπρόσωπη
- Τι είναι η μεταπρόσωπη;
- Χρέος τεχνολογίας (Debt technology)
- Ρυθμίσεις κώδικα (Code smell)
- Μοτίβα μεταπρόσωπης
Έγγραφα
- Ο ρόλος των έγγραφων στις αγίλες μεθόδους
- Τι να εγγράφουμε;
- Τύποι έγγραφων
- Έγγραφα και αγίλες μεθόδους, ή θα μπορούσατε να πείτε (Λειτουργικό λογισμικό επάνω σε αυτοεξηγητικά έγγραφα);
- Τύπος XMI
- Αυτόματη παραγωγή έγγραφων από το Javadoc (Java), ApiGen (PHP)
Εργαλεία και Περιβάλλον CI
- Εργαλεία και περιβάλλον CI
- PMD (Java), phpmd (PHP)
- CPD (Java), phpcpd (PHP)
- Μετρητής Γραμμών Κώδικα (Lines Of Code Counter) (Java), phploc (PHP)
- UCDetector (Java), phpdcd (PHP)
- Jdepend (Java), phpdepend (PHP)
- Jenkins Continuous Integration Server
Αγίλες και CI/QA
- Σχεδιασμός και αυξημένη ανάπτυξη (incremental development)
- Προσαρμογή στην άλλαγη
- Σύντομες φάσεις
- Αναπληρωματικός ομάδας (Interdisciplinary team)
- Εξέχουσα Προγραμματισμό, Code Review
- Ιδιώτες και αλληλεπίδραση πάνω σε διαδικασίες και εργαλεία
Συμπέρασμα
- Συζήτηση
- Ερωτήσεις
- Πώς ξεκινάτε τη διαδικασία υλοποίησης;
Απαιτήσεις
Γνώση διαδικασιών ανάπτυξης λογισμικού
Σχόλια (5)
Εμπνευσματική και χειρονομητική πрактиκή.
Balavignesh Elumalai - Scottish Power
Κομμάτι - SonarQube for DevOps
Μηχανική Μετάφραση
Ο καθηγητής έχει βαθιά γνώση και είναι πολύ αποδεκτός στην πρακτική. Η βάθεια γνώση του και η πάθησή του για τη διδασκαλία εκτιμούνται υπερβολικά.
Anup Kumar - SMR Automotive Mirrors Stuttgart
Κομμάτι - Jenkins 2: Building CI/CD Pipelines
Μηχανική Μετάφραση
Ο καθηγητής ήταν πολύ καλά οργανωμένος. Εξηγήθηκε για όλα τα εργαλεία που απαιτούνται για την εκπαίδευση στην αρχή. Ο καθηγητής με χαρά διευκρίνισε όλες τις αμφιβολίες και συζητήθηκαν πρακτικές εφαρμογές.
Vivek Verma - Global Knowledge Network Training Ltd
Κομμάτι - DevOps Practical Implementation and Tools
Μηχανική Μετάφραση
Πολύ λεπτομερής, ο εκπαιδευτής γνωρίζει το θέμα πολύ καλά και έχει κάλυψει πολλά θέματα
Gabriel Kelly Navarro - Opswerks
Κομμάτι - Advanced Spinnaker
Μηχανική Μετάφραση
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
Κομμάτι - Jenkins: Continuous integration for Agile development
Μηχανική Μετάφραση