LEGO® Education > Σχέδια Μαθήματος > ΣΧΕΔΙΟ ΕΝΟΤΗΤΑΣ:

Χορεύουμε στο ρυθμό;

Διερεύνηση στρατηγικών για την αποσφαλμάτωση προγραμμάτων

}

45 λεπτά

Τάξεις Ε’ Δημοτικού- Α’ Γυμνασίου

Αρχάριοι

Ερωτήσεις προς διερεύνηση

  • Πώς εντοπίζουν οι μηχανικοί λογισμικού τα προβλήματα μέσα σε ένα πρόγραμμα;

Προετοιμασία ( Prepare )

  • Βεβαιωθείτε ότι οι εγκέφαλοι SPIKE Prime είναι φορτισμένοι, ειδικά αν η σύνδεση γίνεται μέσω Bluetooth.
  • Βεβαιωθείτε ότι οι μαθητές έχουν κατασκευάσει το μοντέλο Break Dancer, το οποίο χρησιμοποιήθηκε στο μάθημα Break Dancer Break Down.

Συμμετοχή ( Engage )

      (Ομαδική συζήτηση, 5 λεπτά)

      Δημιουργήστε ένα σχέδιο για τη δοκιμή προγραμμάτων για τον εντοπισμό και τη διόρθωση σφαλμάτων.

      Προκαλέστε μια συζήτηση με τους μαθητές σχετικά με τον τρόπο διόρθωσης των προβλημάτων. Ζητήστε από τους μαθητές να σκεφτούν μια φορά που είχαν ένα ζήτημα ή πρόβλημα ή μια φορά που είχαν μια εμπειρία που δεν εξελίχθηκε όπως περίμεναν.

      Συζητήστε τι θα μπορούσε να βοηθήσει να αλλάξει η κατάσταση. Κάντε ερωτήσεις όπως:

      • Ποια μέτρα θα μπορούσατε να είχατε λάβει εκ των προτέρων για να έχετε ένα καλύτερο αποτέλεσμα;
      • Τι θα μπορούσατε να είχατε κάνει όταν συνειδητοποιήσατε ότι υπήρχε πρόβλημα για να βοηθήσετε να αλλάξει το αποτέλεσμα;

      Συζητήστε τις ιδέες των μαθητών για την αντιμετώπιση της εμπειρίας τους και απαριθμήστε ιδέες για τον τρόπο αντιμετώπισης των προβλημάτων. Μοιραστείτε τα βήματα για τον εντοπισμό σφαλμάτων ή αναρτήστε τα στην τάξη για να τα αναφέρουν όλοι οι μαθητές.

      Βήματα που βοηθούν στον εντοπισμό σφαλμάτων:

      • Σχεδιάστε το πρόγραμμα δημιουργώντας έναν ψευδοκώδικα ή ένα διάγραμμα ροής
      • Τεκμηριώστε το πρόγραμμα χρησιμοποιώντας το # για σχόλια κώδικα μέσα στο πρόγραμμα
      • Δοκιμάστε το πρόγραμμά σας με όλους τους τύπους δεδομένων που είναι σχετικά ή αναμένεται να χρησιμοποιηθούν
      • Δοκιμάστε το πρόγραμμά σας με τύπους δεδομένων που δεν αναμένεται να χρησιμοποιηθούν ή βρίσκονται εκτός του αναμενόμενου εύρους

      Ανακάλυψη ( Explore )

      (Μικρές ομάδες, 20 λεπτά)

      Οι μαθητές θα χρησιμοποιήσουν ένα μοντέλο χορευτή σπασίματος για να διερευνήσουν τον εντοπισμό σφαλμάτων και τη διόρθωσή τους.

      • Καθοδηγήστε τους μαθητές να ανοίξουν ένα νέο έργο στον καμβά προγραμματισμού python. Ζητήστε από τους μαθητές να διαγράψουν τυχόν κώδικα που βρίσκεται ήδη στον προγραμματιστικό χώρο. Αν οι μαθητές ολοκλήρωσαν το μάθημα Break Dancer Break Down, μπορούν να ξεκινήσουν με αυτό το πρόγραμμα και να το τροποποιήσουν. Οι μαθητές θα πρέπει να συνδέσουν τον κόμβο τους.

      Προσθήκη σε ένα πρόγραμμα που λειτουργεί

      Οι μαθητές θα προσδιορίσουν στρατηγικές για την εύρεση σφαλμάτων κατά την προσθήκη σε ένα πρόγραμμα.

      • Ζητήστε από τους μαθητές να εκτελέσουν το υπάρχον πρόγραμμά τους από το μάθημα Break Dancer Break Down ή δώστε στους μαθητές αυτό το πρόγραμμα. Η εκτέλεση του υπάρχοντος προγράμματος θα επιτρέψει στους μαθητές να επιβεβαιώσουν ότι δεν υπάρχουν τρέχοντα σφάλματα στο πρόγραμμα.
      • Ζητήστε από τους μαθητές να τροποποιήσουν το πρόγραμμά τους έτσι ώστε ο χορευτής να κινείται μόνο όταν ο αισθητήρας χρώματος ανιχνεύει ένα χρώμα σύμφωνα με την ακόλουθη εργασία. Μπορείτε να χρησιμοποιήσετε αυτό το διάγραμμα ή να συνεργαστείτε για να δημιουργήσετε το δικό σας.

      • Αφήστε χρόνο στους μαθητές να δημιουργήσουν το νέο τους πρόγραμμα. Οι μαθητές θα πρέπει να δοκιμάσουν το πρόγραμμά τους για να βεβαιωθούν ότι λειτουργεί. Υπενθυμίστε στους μαθητές να χρησιμοποιήσουν τη διαδικασία που συζητήθηκε στην ενότητα δέσμευση για να ελέγξουν το πρόγραμμα για σφάλματα.
      • Ζητήστε από τους μαθητές να καταγράψουν όλες τις δραστηριότητες εντοπισμού σφαλμάτων στο ημερολόγιό τους. Εάν λάβετε ένα μήνυμα σφάλματος στην κονσόλα, οι μαθητές μπορούν να το αντιγράψουν. Οι μαθητές θα πρέπει επίσης να αντιγράψουν στο ημερολόγιό τους τυχόν σφάλματα που ανακαλύπτουν κατά τη διάρκεια της δοκιμής.

      from spike import ColorSensor, Motor, PrimeHub

      from spike.control import wait_for_seconds

      hub = PrimeHub()

      leg_motor=Motor(‘F’)

      arm_motor=Motor(‘D’)

      color_sensor=ColorSensor(‘B’)

      count = 0

      # Ορισμός κίνησης με βάση το χρώμα που ανιχνεύεται, εάν ο αριθμός είναι μικρότερος από 10.

      while count <10:

      wait_for_seconds (2)

      color = color_sensor.wait_for_new_color()

      if color == ‘blue’:

          leg_motor.set_default_speed(-40)

          leg_motor.run_for_rotations(1)

      elif color == ‘green’:

      arm_motor.set_default_speed(-60)

      arm_motor.run_for_rotations(1)

      elif color == yellow:   

          leg_motor.set_default_speed(-20)

          leg_motor.run_for_rotations(2)

          arm_motor.set_default_speed(-20)

          arm_motor.run_for_rotations(2)

      elif color == ‘red’:

          leg_motor.set_default_speed(-80)

          leg_motor.run_for_rotations(2)

          arm_motor.set_default_speed(-80)

          arm_motor.run_for_rotations(2)

      else:

          (60, 0.5)

      count = count + 1

          Εξηγήστε το ( Explain )

          Ολόκληρη η ομάδα, 5 λεπτά)

          Συζητήστε με τους μαθητές για το πρόγραμμα και για το πού βρήκαν σφάλματα.

          Κάντε στους μαθητές ερωτήσεις όπως:

          • Ποια σφάλματα βρήκατε στο πρόγραμμά σας;
          • Λάβατε μηνύματα σφάλματος στην κονσόλα; Αν ναι, πώς ήταν το μήνυμα σφάλματος χρήσιμο για τον εντοπισμό και την αποσφαλμάτωση του προγράμματος;
          • Πώς ελέγξατε το πρόγραμμα για τις αναμενόμενες τιμές; Και τις απροσδόκητες;
          • Θα μπορούσε κάποιο από τα προβλήματα να οφείλεται στο μοντέλο; Γιατί ή γιατί όχι;

          Εξελίξτε το ( Elaborate )

          (Μικρές ομάδες, 10 λεπτά)

          • Προκαλέστε τους μαθητές να δημιουργήσουν ένα πρόγραμμα που θα βάζει τον χορευτή τους να κινείται σε ένα ρυθμό χρησιμοποιώντας τον αισθητήρα χρώματος για τον έλεγχο των κινήσεων.
          • Ζητήστε από τους μαθητές να χρησιμοποιήσουν το πρόγραμμά τους για να δημιουργήσουν έναν νέο χορό που έχει το μοντέλο του χορευτή τους να κινείται σε ρυθμό. Οι μαθητές μπορούν να παίξουν ένα τραγούδι ή απλώς να σιγοτραγουδήσουν έναν ρυθμό. Ο χορευτής θα πρέπει να κινείται γρήγορα και αργά στο ρυθμό, ο οποίος μπορεί να ελεγχθεί όταν οι μαθητές κρατούν κάθε χρωματικό τούβλο στον αισθητήρα χρώματος.
          • Αφήστε χρόνο στους μαθητές να διερευνήσουν το πρόγραμμα για να δουν αν χρειάζονται αλλαγές. Στη συνέχεια, οι μαθητές θα πρέπει να δημιουργήσουν τις κινήσεις τους για να ταιριάζουν με το ρυθμό.
          • Ζητήστε από τους μαθητές να μοιραστούν τις τελικές τους κινήσεις με την τάξη. Εξετάστε το ενδεχόμενο να διοργανώσετε ένα χορευτικό πάρτι για όλα τα μοντέλα ταυτόχρονα.

          Αξιολόγηση  ( Evaluate )

          (Ομαδική άσκηση, 5 λεπτά)

          Παρατήρηση του δασκάλου:

          Συζητήστε το πρόγραμμα με τους μαθητές.  Κάντε στους μαθητές ερωτήσεις όπως:  

          • Πώς ο έλεγχος βοηθά στον εντοπισμό σφαλμάτων στο πρόγραμμά σας;
          • Γιατί να ελέγχετε το πρόγραμμά σας για αναμενόμενες τιμές και για απροσδόκητες;
          • Ποιοι είναι οι τύποι σφαλμάτων που μπορείτε να λάβετε; Πώς μπορείτε να τα χρησιμοποιήσετε για να διορθώσετε το πρόγραμμά σας;

          Αυτοαξιολόγηση :

          Ζητήστε από τους μαθητές να απαντήσουν στα ακόλουθα στο ημερολόγιό τους: 

          • Τι μάθατε σήμερα για τον εντοπισμό και τη διόρθωση σφαλμάτων;
          • Ποια χαρακτηριστικά ενός καλού συμπαίκτη επέδειξα σήμερα; 
          • Ζητήστε από τους μαθητές να βαθμολογήσουν τον εαυτό τους σε μια κλίμακα 1-3, σχετικά με τη διαχείριση του χρόνου τους σήμερα. 
          • Ζητήστε από τους μαθητές να βαθμολογήσουν τον εαυτό τους σε κλίμακα 1-3, σχετικά με τη διαχείριση των υλικών (εξαρτημάτων) που έκαναν σήμερα.
          Υποστήριξη εκπαιδευτικών

          Οι μαθητές θα:

          • Εντοπίσουν ένα πρόβλημα και θα αποσφαλματώσουν το πρόγραμμα.
          Πράγματα που θα χρειαστείτε
          • Σετ SPIKE Prime έτοιμα για χρήση από τους μαθητές
          • Συσκευές με εγκατεστημένη την εφαρμογή SPIKE
          • Ημερολόγια μαθητών
          Εκπαιδευτικά πρότυπα

          CSTA

          2-AP-10 Χρήση διαγραμμάτων ροής ή/και ψευδοκώδικα για την αντιμετώπιση σύνθετων προβλημάτων ως αλγορίθμων.

          2-AP-13 Να αναλύουν τα προβλήματα και τα υποπροβλήματα σε μέρη για να διευκολύνουν το σχεδιασμό, την υλοποίηση και την αναθεώρηση προγραμμάτων.

          2-AP-17 Συστηματική δοκιμή και βελτίωση των προγραμμάτων με τη χρήση μιας σειράς περιπτώσεων δοκιμής.

          2-AP-19 Τεκμηρίωση προγραμμάτων ώστε να διευκολύνεται η παρακολούθηση, ο έλεγχος και η αποσφαλμάτωση.