90749 - DIDATTICA DELL'INFORMATICA

Academic Year 2019/2020

  • Docente: Renzo Davoli
  • Credits: 6
  • SSD: INF/01
  • Language: Italian
  • Moduli: Renzo Davoli (Modulo 1) Michael Lodi (Modulo 2)
  • Teaching Mode: Traditional lectures (Modulo 1) Traditional lectures (Modulo 2)
  • Campus: Bologna
  • Corso: Second cycle degree programme (LM) in Computer Science (cod. 8028)

Learning outcomes

The aim of the course is to provide the student with the knowledge of techniques and tools supporting the didactics of Computer Science.In particular, at the end of the course, the student will know how to organize and realize Computer Science courses, as well as the methodologies for generating didactic materials and for the verification of student learning.

Course contents

Learning objectives of this course include:

* knowledge of some historical, epistemological and ethical aspects of Computer Science as a scientific discipline and of the motivations underlying the necessity of its teaching;

* understanding of pedagogical aspects and learning theories in the context of computer science teaching;

* knowledge of multiple CS-specific teaching approaches;

* knowledge of the main cognitive difficulties in learning CS (with particular focus on programming), and knowledge of possible strategies to adopt to overcome them;

* ability to formulate and manage learning paths consistent with national standards and curricula related to Computer Science in schools of all levels;

* planning ability to organize laboratories, classroom equipment; ability to integrate students' devices as useful tools for learning.


Topics covered in the course include:

The scientific vision of Computer Science.

Computational Thinking.


Constructivism and constructionism applied to CS teaching.

Top-down and bottom-up approaches in CS teaching.


Teaching of Programming, Algorithms and Data Structures.

Pedagogical implications in the choice of programming languages.

Teaching of technological aspects: computer architecture, operating systems, networks.

CS teaching methods:

* unplugged

* dramatization/visualization

* code reading exercises

* debugging of others's code

* program execution visualization

* making/tinkering

* repositories as software museums


Difficulties and misconceptions in learning to program.


Creation of learning paths

* in primary schools

* in lower secondary schools

* in scientific lyceums - applied sciences

* in specific courses of technical institutes

* in other upper secondary schools

Assessment methodologies of computer programs.


Importance, planning, and management of computer laboratories.

* Use of BYOD in lessons.

Software licenses: libre (free and open source) software and proprietary software.

* Implications in teaching.


Readings/Bibliography

Articles and documents will be provided during the course in electronic form


Books for possible in-depth studies:

O. Hazzan, T. Lapidot, N. Ragonis. Guide to teaching computer science: An activity-based approach. Second Edition. Springer, 2015.

S. Fincher, A. Robins. The Cambridge Handbook of Computing Education Research (Cambridge Handbooks in Psychology). Cambridge: Cambridge University Press, 2019.

Teaching methods

Lectures, classroom and laboratory activities, individual or group projects, flipped classroom.

Assessment methods

The final exam consists of the development and presentation of a CS teaching unit.

In-progress questionnaires and homework assignments may be used to facilitate the progressive consolidation of knowledge.

Teaching tools

Physical and logical devices, even unconventional, useful for CS teaching and learning.

Office hours

See the website of Renzo Davoli

See the website of Michael Lodi

SDGs

Quality education Gender equality Decent work and economic growth Industry, innovation and infrastructure

This teaching activity contributes to the achievement of the Sustainable Development Goals of the UN 2030 Agenda.