Επικοινωνήστε μαζί μας

Εξέλιξη Κομματιού

Θεμέλια της Ευέλικτης Σκέψης (Agile Thinking)

  • Το Μανιφέστο Agile και η σημασία του πέρα από τον κώδικα λογισμικού.
  • Σύγκριση του Agile με τις παραδοσιακές υδατορροές (waterfall) και τα μοντέλα βάσει σχεδιασμού.
  • Ρόλοι, εκδηλώσεις και αντικείμενα του Scrum, χαρτογραφημένα σε ακαδημαϊκούς κύκλους έργων.
  • Kanban και διαχείριση ροής εργασιών για ομάδες έρευνας και διδασκαλίας.
  • Επιλογή υβριδικών μεθόδων Agile κατάλληλων για περιβάλλοντα μηχανικής και σχεδιασμού.

Σχεδιασμός Agile και Συνεργασία

  • Σύνταξη χειριστηρίων χρήστη (user stories) και ορισμός κριτηρίων αποδοχής για μηχανικά προβλήματα.
  • Τεχνικές προτεραιοποίησης backlog: MoSCoW, αξία έναντι προσπάθειας, ordering βασισμένο στην κινδυνολογία.
  • Σχεδιασμός sprint και εκτιμήσεις με μη τεχνικές ομάδες λογισμικού.
  • Αποζημιώσεις (retrospectives) και συνεχής βελτίωση σε ακαδημαϊκό πλαίσιο.
  • Εργαλεία συνεργασίας και πίνακες για διαθεματικούς συμμετέχοντες.

Εισαγωγή στον Πολιτισμό DevOps

  • Ορισμός του DevOps: σπάσιμο των μονοπολίων μεταξύ ανάπτυξης και λειτουργιών.
  • Το μοντέλο CALMS: Πολιτισμός, Αυτοματοποίηση, Lean, Μέτρηση, Κοινωνικοποίηση (Sharing).
  • DevOps σε εργαστήρια έρευνας, ομάδες αστικής μηχανικής και αρχιτεκτονικά στούντιο.
  • Καλλιέργεια πολιτισμού χωρίς κατηγορίες (blameless culture) και βρόχων ανατροφοδότησης σε εκπαιδευτικά ιδρύματα.
  • Θέματα ηθικής, ασφαλείας και συμμόρφωσης στην υιοθέτηση DevOps στο ακαδημαϊκό περιβάλλον.

Έλεγχος Έκδοσης και Συνεργατική Διαχείριση Κώδικα

  • Βασικές αρχές του Git για αναπαραγώμενη μηχανική και σχεδιαστική εργασία.
  • Στρατηγικές branching: trunk-based, feature branches και απλοποιημένο GitFlow.
  • Pull requests, peer review και ιδιοκτησία κώδικα σε ομάδες διδασκαλίας.
  • Διαχείριση μη κώδικα περιεχομένου: αρχεία CAD, μοντέλα BIM, σύνολα δεδομένων προσομοίωσης.
  • Οργάνωση αποθετηρίων (repositories) για ακαδημαϊκό υλικό και έργα φοιτητών.

Συνεχής Ολοκλήρωση και Αυτοματοποίηση Κατασκευής

  • Έννοιες CI και η εφαρμογή τους σε μηχανικά εργαλεία που compile ή scripts.
  • Ρύθμιση αυτόματων build για λογισμικό, προσομοιώσεις και τεκμηρίωση.
  • Φάσεις pipeline: compile, package, lint και έλεγχοι pre-flight.
  • Επισκόπηση δημοφιλών πλατφορμών CI: GitHub Actions, GitLab CI, Jenkins.
  • Διαχείριση μεγάλων artifacts, caching εξαρτήσεων και παράλληλη εκτέλεση.

Ποιότητα Λογισμικού και Στατική Ανάλυση

  • Ορισμός ποιότητας λογισμικού: συντηρησιμότητα, αξιοπιστία, χρηστικότητα, απόδοση.
  • Μετρικές κώδικα: κυκλική πολυπλοκότητα, σύζευξη, συνοχή και διπλότυπη ύλη.
  • Εργαλεία στατικής ανάλυσης για Python, Java, C++ και κοινά scripts μηχανικής.
  • Η τεκμηρίωση ως ποιότητα: docstrings, πρότυπα README και ζωντανή τεκμηρίωση.
  • Ενσωμάτωση πύλων ποιότητας σε pipelines CI χωρίς να εμποδίζεται η πρόοδος των φοιτητών.

Στρατηγικές Δοκιμών και Σχεδιασμός Δοκιμών

  • Η πυραμίδα δοκιμών: unit, integration, system και acceptance testing.
  • Σύνταξη unit tests για μηχανικούς υπολογισμούς, προσομοιώσεις και utility.
  • Βασικές αρχές της Ανάπτυξης Βασισμένης σε Δοκιμές (TDD) και Ανάπτυξης Βασισμένης σε Συμπεριφορά (BDD).
  • Mocking εξωτερικών συστημάτων: αισθητήρες, APIs, λυτές πεπερασμένων στοιχείων.
  • Δομή συνόλων δοκιμών για έργα διαθεματικών ομάδων.

Αυτοματοποίηση Δοκιμών και Συνεχής Δοκιμασία

  • Αυτοματοποίηση της εκτέλεσης δοκιμών μέσα σε pipelines CI/CD.
  • Αναφορές δοκιμών, κατώφλια επικάλυψης και διαχείριση ασταθών δοκιμών (flaky tests).
  • Δοκιμές βασισμένες σε ιδιότητες (property-based testing) και fuzzing για μηχανικούς αλγορίθμους.
  • Στρατηγικές regression testing για εξελισσόμενες ακαδημαϊκές ασκήσεις.
  • Δοκιμές απόδοσης και φόρτου για φορτία προσομοίωσης και rendering.

Έννοιες Συνεχούς Παράδοσης και Υποβολής (Deployment)

  • Θεμέλια CD: παράδοση έναντι υποβολής, περιβάλλοντα και προαγωγή (promotion).
  • Μοτίβα υποβολής: blue-green, canary και feature toggles.
  • Εφαρμογή αρχών CD για τη δημοσίευση ακαδημαϊκών artifacts, ιστοσελίδων μαθημάτων και εφαρμογών.
  • Βασικές αρχές των container με Docker για αναπαραγώμενα περιβάλλοντα μηχανικής.
  • Εισαγωγή στο Infrastructure as Code: δηλωτική διαχείριση εργαστηριακών και cloud ρυθμίσεων.

Παρατηρησιμότητα, Παρακολούθηση και Ανατροφοδότηση

  • Logging, μετρικές και tracing για ακαδημαϊκό λογισμικό και προσομοιώσεις.
  • Ρύθμιση ελαφριών συστημάτων παρακολούθησης για έργα φοιτητών και εργαλεία έρευνας.
  • Χρήση δεδομένων ανατροφοδότησης για επανάληψη στο ακαδημαϊκό υλικό και εργαστηριακές ασκήσεις.
  • Dashboards και ειδοποιήσεις κατάλληλες για εκπαιδευτικά πλαίσια.
  • Επαλήθευση μετά την υποβολή και διαδικασίες rollback.

Βέλτιστες Πρακτικές Ασφάλειας και Ποιότητας

  • Θεμέλια secure coding: επικύρωση εισόδου, πιστοποίηση και διαχείριση κωδικών πρόσβασης.
  • Σάρωση εξαρτήσεων και διαχείριση ευπαθειών σε stacks ανοιχτού κώδικα.
  • Συμμόρφωση αδειών για λογισμικό που χρησιμοποιείται στη διδασκαλία και τη δημοσίευση.
  • Θέματα προστασίας δεδομένων κατά τη διαχείριση δεδομένων φοιτητών και έρευνας.
  • Καλλιέργεια πολιτισμού ευαισθησίας στην ασφάλεια σε προγράμματα μηχανικής και σχεδιασμού.

Μεταφορά Πρακτικών σε Διδακτικά Μαθήματα

  • Σχεδιασμός ακαδημαϊκών αναθέσεων έργων για φοιτητές Συστημικής, Αστικής Μηχανικής, Σχεδιασμού και Αρχιτεκτονικής.
  • Δημιουργία κριτηρίων αξιολόγησης που αξιολογούν την ποιότητα της διαδικασίας παράλληλα με την ποιότητα του προϊόντος.
  • Ρύθμιση προτύπων αποθετηρίων με προκαθορισμένο CI για χρήση από τους φοιτητές.
  • Δομημένη εισαγωγή των εννοιών DevOps σε όλη τη διάρκεια του εξαμήνου.
  • Αξιολόγηση των ομάδων των φοιτητών χρησιμοποιώντας μετρικές ποιότητας και αυτοματοποίησης πραγματικού κόσμου.

Επιλογή Toolchain και Ακαδημαϊκοί Περιορισμοί

  • Αξιολόγηση δωρεάν και ανοιχτού κώδικα εργαλείων για τμήματα με περιορισμένο προϋπολογισμό.
  • Ενσωμάτωση με υπάρχον LMS, αποθήκευση αρχείων και υποδομή εργαστηρίου.
  • Διαχείριση τεχνικού χρέους σε long-running bases κώδικα έρευνας.
  • Onboarding φοιτητών και διδακτικού προσωπικού με διαφορετικό τεχνικό υπόβαθρο.
  • Διατήρηση της βιωσιμότητας όταν οι βασικοί συντελεστές αποφοιτούν ή περιστρέφονται (rotate).

Απαιτήσεις

  • Βασική κατανόηση των εννοιών ανάπτυξης λογισμικού.
  • Γνωριμία με τις γενικές ροές εργασίας μηχανικής ή σχεδιασμού.
  • Εμπειρία χρήσης υπολογιστών για ακαδημαϊκή ή έργου-βασισμένη εργασία.

Κοινό Στόχος

  • Καθηγητές και διδάσκοντες από προγράμματα Συστημικής Μηχανικής, Αστικής Μηχανικής, Σχεδιασμού και Αρχιτεκτονικής.
  • Ακαδημαϊκό προσωπικό που επιδιώκει να εκσυγχρονίσει τη διδασκαλία του με πρακτικές σχετικές με τη βιομηχανία.
  • Οδηγοί έρευνας και συντονιστές εργαστηρίων που ενσωματώνουν τεχνολογία στο πρόγραμμα σπουδών.
 42 Ώρες

Αριθμός συμμετέχοντων


Τιμή ανά συμμετέχοντα

Σχόλια (2)

Εφεξής Μαθήματα

Σχετικές Κατηγορίες