pedagogical architectures to support the process of teaching and learning of computer programming

Upload: credine-menezes

Post on 14-Apr-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    1/14

    Pedagogical architectures to supportthe process of teaching and learning

    of computer programming

    Orivaldo de Lira Tavares, UFES, Brasil

    Credin Silva de Menezes, UFRGS, Brasil

    Rosane Aragn, UFRGS, Brasil

    Presented by Thais H. Castro, UFAM, Brasil

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    2/14

    The problem

    Before the entry at university the students has a level of

    knowledge deficit:

    Resoluo sistemtica de problemas de construo

    de artefatos que satisfaam uma lista de requisitos;

    Avaliao da qualidade de produtos digitais;

    Resoluo cooperativa de problemas;

    Elementos de linguagens de programao;

    Ambientes computacionais para o desenvolvimento e

    avaliao de programas.

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    3/14

    Current Practices in Introductory

    Computer Programming Disciplines

    The teacher presents the methods and

    elements of the programming language and

    model programs fully ready;

    Submit lists of exercises to be solvedindividually or in groups;

    The lists are corrected only with respect to

    the operation of the program code produced.

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    4/14

    Weaknesses

    This approach fail to consider the development of the followingaspects:

    1.domain of a method for solving problems especially directed tothe construction of artifacts satisfying a set of requirements;

    2.domain of a methodology for assessing the quality of programs

    produced;3.easy to solve problems cooperatively;

    4.use of syntax, semantics and pragmatics of a programminglanguage;

    5.domain of different computing resources to support the

    development and evaluation of programs.

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    5/14

    Theoretical Support

    In order to construct knowledge, an error corrected is more important than asuccess, since it requires the intervention of self-regulatory mechanisms that areresponsible for reconstructions. These self-regulations allow individuals toachieve the ability to solve problems in a formal level [2];

    The system of cooperative work (in teams) contributes to the development of theformalism since it encourages awareness of the student's own thinking, so hecan get arguments to express it and defend it, as well as enhances learning by

    allowing exchanges of views on the object of learning [6]; More recent research [7] [4] have sought to emphasize the importance of the

    pedagogical approach when using digital resources to support learning throughthe application of the concept of architecture pedagogical. Thus, the use of anydigital resource needs to be backed by an appropriate pedagogical approach,

    architecture pedagogical

    =

    pedagogical approach + Computacional resources.

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    6/14

    Working Proposal :Principles

    The pedagogical approach adopted in this initial class schedulewas based on the following principles:

    1.Authoring of solution: encourage students to develop solutions,reflect on the results and on the process of development of thesolutions and create a custom method of building the programs;

    2.Cooperation: cooperating with classmates to enhance learningand motivate students to participate more actively in the learningprocess;

    3.Critical thinking: build many possible solutions for each proposedproblem and compare them with each other and with the solutions

    built by other students.

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    7/14

    Working Proposal :

    Pedagogical Approach

    Each group chose a problem to which the

    project should develop a program that solves the

    problem;

    Each group created a web space, shared it with

    the classroom, which included the description of

    the problem and reports on the solutions

    produced, according to the following model:

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    8/14

    Working Proposal :

    The report model

    1. Problem description (the context of the problem and a precise identificationof the passage chosen to be tackle the project);

    2. Proposed solution (including data organization, the main algorithms usedand how is the interaction between user and program);

    3. Evidence of correction:

    1. a) explanation of the conviction that the critical parts of the2. program works;

    3. b) planning and carrying out the tests (with which data the program hasbeen tested? what was expected, was it obtained?)

    4. Program performance (brief consideration of the memory consumption andcomputational effort);

    5. Evaluation of the project by the group (managed to achieve the desiredgoals with the solution: What are the main difficulties? What were unable tobe achieved and what were the reasons?)

    6. Source code (with comments).

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    9/14

    The proposal in action

    The pedagogical architecture was used in a class of programming, onthe semester 2011/2, consisting of 16 students beginning courses inComputer Science or Computer Engineering at Federal University ofEsprito Santo Brasil;

    The students was organized in groups of two or three members.

    The web spaces of each group were visited by classmates and

    received comments; Each group prepared a presentation of the results achieved, published

    it in the web, and presented it to the other groups and teacher;

    The comments posted on the classroom web space and those receivedduring the presentation were used to produce new versions of thesolution constructed by the group.

    Doubts could be raised in the classroom or shared with peers and

    teachers via digital resources.

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    10/14

    The proposal in action : the site of

    each group

    Pgina inicialdo wikidadisciplina

    4. Desafios de

    programao

    (desafio1,2,3)

    5. Lista de estudantes(Estudante 1 ...

    Estudante n)

    1.

    Apresentao

    (instituio,

    disciplina,prof

    essores,monitores,

    calendrio de

    aulas)

    2. Aulas

    (notas das aulas)3. Listas de

    problemas (lista 1

    ... lista n)

    6.1Wikis dos

    projetos dos

    grupos(um por grupo)

    5.1 Wikis

    individuais decada estudante

    6. Grupos de

    projeto

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    11/14

    Results

    To raise the students' opinions about thepedagogical architecture adopted, at the endof the semester (2011/2), to each student,was asked a report covering topics related to:

    individual work,

    group work,

    the use of technology, the

    learning acquired versus his expectations. we present in next slide a analyse of the

    questions.

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    12/14

    Analysis of the questions

    Construction of autonomy: the challenges

    faced in searching for a solution to the problems

    were effective;

    The Grasp of Consciousness: the need toexplain the solution to colleagues helped them

    understand more deeply their conceptions;

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    13/14

    Analysis of the questions

    Competency in problem solving: the need to consider

    different solutions to problems increases students'

    confidence about their skills;

    The cooperative work facilitate the learning:

    Students affirm that teamwork development contributed

    the construction of more refined knowledge;

    Adequacy of technological support: the students

    considered appropriate and sufficient the digital

    resources and the pedagogical architectures adopted inthe discipline.

  • 7/29/2019 Pedagogical architectures to support the process of teaching and learning of computer programming

    14/14

    Final Considerations

    This article presented the results of research on pedagogicalarchitectures to support the teaching-learning process in initialprogramming disciplines.

    The pedagogical architecture studied shows a constructivistpedagogical approach, emphasizing the learning to learn, theautonomy of students, the student as the author of the programs

    (solutions to problems), the doing as the predecessor ofunderstanding, cooperative work, socialization of the results(programs), the search for generating several possible solutions,all of this, seeking greater awareness of problems and theirsolutions.

    The digital resources of the pedagogical architecture allowed

    the proper implementation of the pedagogical approach andwere well accepted by students.