• Tidak ada hasil yang ditemukan

Reflection

Dalam dokumen Guide to Teaching Computer Science (Halaman 101-106)

Reflective thinking refers to rethinking and analysis methods of previous mental processes  or actual behaviors. Reflection is an important tool in learning processes in general and in  high-order  cognitive  processes,  such  as  problem-solving  processes,  in  particular.  This  assertion is based on the recognition that reflection provides learners with an opportunity  to step back and think about their own thinking and by doing so to improve their problem- solving skills. Reflective thinking is a learned process that requires time and ongoing  practice. See also Chaps. 2 and 13.

During problem-solving processes, reflection can take place at different times:

Before  starting  solving  the  problem:  After  reading  the  problem,  while  planning  the  solving approach, it is worth reflecting on similar previously solved problems in order  to identify relevant algorithmic approaches, patterns, etc.

While solving the problem: During the solution development, reflection refers to inspec- tion, control, and supervision. For example, when a difficulty arises or when a mistake  is  identified,  it  is  worth  reflecting  on  their  sources.  Schön  (1983)  calls  this  process  reflection in-action.

After  solving  the  problem:  When  the  solution  is  completed,  reflection  assesses  and  examines the process performance. Such reflection enables to draw conclusions from  the problem-solving process, and to learn about the strategic decisions made during its  implementation. Schön (1983) calls this process reflection on-action.

In what follows we present a list of representative questions that can guide before-and- after reflective processes; some of them relate to cognitive aspects and other – to affective  aspects. Even though the questions are organized according to the types of reflection, most  of them can serve (with slight changes) in each of the three reflective stages.

Questions before starting the problem-solving process

How can I estimate the question difficulty? Is the question difficult/easy? Why do I 

think so?

Do I face any difficulty in understanding any part of the problem? What part is unclear?

Did  I  previously  solve  similar  problems?  What  are  these  problems?  What  are  the 

similarities?

Questions after completing the problem-solving process Is the solution complete?

Why did I choose this direction to solve the problem? Did I make reasonable decisions? 

What should I change in future similar situations?

Was solving this problem easy or difficult for me? Why?

Could I solve the problem differently? How?

75 5.6 Reflection

The integration of reflective processes in teaching processes is a creative task. Activity 37  illustrates how reflective activities can become a learning process both from the learners’ 

and the teachers’ perspective. Specifically, teachers can reflect on the teaching process of  critical concepts that were difficult for learners to grasp and on his or her usage of different  teaching  tools.  In  addition,  an  ongoing  reflection  may  increase  teachers’  awareness  to  pupils’ perspective.

Activity 37: Reflective Activity in Computer Science Education

The activity is based on the following case study that should be presented first to the  students.

After a computer science high school class had written a test on relatively advanced computer science topics (like linked lists or pushdown automaton), its teacher realized that the pupils’ achievements in the test were low and that their solutions did not indi- cate the expected understanding of these concepts.

The following four stages are based on this case study. It is recommended to summarize  each stage with a reflective discussion and to publish students’ products in the course Web site.

Stage A: Teacher’s reflection on test failure

The students are divided into small groups and are asked to

1.  Write down a list of reasons that can explain the pupils’ relatively low achievements.

2.  Classify the list of reasons into two groups: Teacher-oriented reasons and learner- oriented reasons. Reflect on the classification process. Was the classification pro- cess evident? In what cases did you hesitate? Why did you hesitate?

3.  Suggest at least five questions that can guide a teacher’s reflective process on his  or her class’ failure.

Stage B: Design of a reflective activity for a class after a test failure

The students are divided into small groups and are asked to suggest how they, as  computer science teachers, can use reflective processes to support their pupils’ learn- ing with respect to two aspects: (1) pupils’ learning processes and (2) pupils’ under- standing of the learned concepts.

Specifically, the students’ task is to design a reflective activity for a high school  class that aims at leading the pupils to reflect on their own strengthens and weak- nesses, while taking into the consideration the two above-mentioned aspects.

Stage C: Reflection on the reflective activity designed by a teacher after the test failure The continuation of the case study is presented to the students:

The teacher of the said class decided to use a reflective process to scaffold pupils’ learning processes, to improve their understanding of the said computer

(continued)

5

Activity 37 (continued)

science concepts, and to improve the test achievements. For this purpose, the teacher asked the pupils to answer the following questions: What problems did you solve while learning towards the test? How did you solve them? What were your difficulties while writing the test? Did you face these difficulties only dur- ing the test or did you face them also while learning toward the test? If you faced these difficulties while learning toward the test, what did prevent you to deepen your understanding? If you faced the difficulties only during the test, try to speculate why you did not face them before.

The students are asked to work in small groups and to

1.  Classify the reflective questions into two groups: questions that relate to pupils’ 

learning processes and questions that relate to pupils’ understanding of the learned  concepts.

2.  Design  at  least  two  additional  reflective  questions  for  each  class  of  reflective  questions.

3.  In your opinion, how can such reflective questions contribute to learners’ future  learning processes in general and problem-solving processes in particular?

Stage D: Analysis of the entire reflective activity designed by the teacher after the  test failure

This stage is based on the analysis of the next episode of the case study.

After the pupils had written their own reflection based on the previous reflective ques- tions (see Stage C), they were asked to further accomplish the next two phases:

1.  To design by themselves a test on the same contents of the test they took with  the same structure. The teacher rationale for this task was that the development  of meaningful questions requires deep understanding of the subject matter. To  accomplish  this  task,  the  pupils  were  asked  also  to  solve  the  questions  they  composed.

2.  To reflect on their current knowledge by considering the following leading ques- tions provided by the teacher: Did you overcome your previous difficulties? How  did you overcome these difficulties? Do you feel ready to take a repeated test? 

With respect to what concepts you still feel unconfident? What do you think about  the computer science concepts you learned – interest vs. boring; important vs. 

unnecessary; difficult vs. simple?

The students’ task is to analyze advantages and disadvantages of this kind of teach- ing–learning process.

For example, we mention the following advantages: pupils are active, take respon- sibility  on  their  learning  processes  and  understanding,  think  and  focus  on  what (continued)

77 References

References

Astrachan O, Berry G, Cox L, Mitchener G (1998) Design patterns: An essential component of   CS curricula. Proc. SIGCSE: 153–160

Batory  D,  Sarvela  J  N,  Rauschmayer  A  (2004)  Scaling  stepwise  refinement.  IEEE  Trans.  

Softw. Eng. 30(6): 355–371

Ben-Ari  M,  Sajaniemi  J  (2003)  Roles  of  variables  from  the  perspective  of  computer  science   educators. Univ. Joensuu, Depart. Comput. Sci., Technic. Report, Series A-2003–6

Clancy M J, Linn M C (1999) Patterns and pedagogy. Proc. of SIGCSE’99: 37–42 Dijkstra E W (1976) A discipline of programming. Prentice-Hall

East J P, Thomas S R, Wallingford E, Beck W, Drake J (1996) Pattern-based programming instruc- tion. Proc. ASEE Ann. Conf. and Exposition, Washington DC

Ginat D (2004) Algorithmic patterns and the case of the sliding delta. SIGCSE Bull. 36(2):29–33 Ginat D (2009) Interleaved pattern composition and scaffolded learning. Proc. 14th Ann. ACM 

SIGCSE Conf. on Innov. and Technolog. in Comput. Sci. Edu. - ITiCSE ‘09, Paris, France: 

109–113

Laakso M J, Malmi L, Korhonen A, Rajala T, Kaila E, Salakoski T (2008) Using roles of variables  to enhance novice’s debugging work. Iss. in Informing Sci. and Inf. Technol. 5: 281–295 Muller  O  (2005)  Pattern  oriented  instruction  and  the  enhancement  of  analogical  reasoning.  

Proc. First Int. Workshop on Comput. Educ. Res. ICER ‘05, Seattle, WA, USA: 57–67 Muller O, Ginat D, Haberman B (2007) Pattern-oriented instruction and its influence on problem 

decomposition and solution construction. ACM SIGCSE Bull. 39(3): 151–155

Muller O, Haberman B, Averbuch H (2004) (An almost) pedagogical pattern for pattern-based  problem  solving  instruction.  Proc.  9th  Ann.  SIGCSE  Conf.  on  Inn.  Technolog.  in  Comput.  

Sci. Edu.: 102–106

Polya G (1957) How to solve it. Garden City, NY: Doubleday and Co., Inc

Proulx V K (2000) Programming patterns and design patterns in the introductory computer science  course. Proc. SIGCSE: 80–84

Reed D (1999) Incorporating problem-solving patterns in CS1. J. Comput. Sci. Edu.13(1): 6–13 Reynolds R G, Maletic J I, Porvin S E (1992) Stepwise refinement and problem solving. IEEE 

Softw. 9(5): 79–88

Robins A, Rountree J, Rountree N (2003) Learning and teaching programming: Areview and dis- cussion. Comput. Sci. Edu. 13(2):137–172

Activity 37 (continued)

concepts they did not understand, take the teacher’s perspective, and reflect on dif- ferent affective issues, such as their interests, priorities, concerns, and confidence.  

Nevertheless, it should be remembered that such an activity sets several pedagogical  challenges, such as it demands pupils’ cooperation, requires time resources, and it  requires creativity which may difficult for some learners.

Beyond the examination of this activity from the pupils’ perspective, it is impor- tant  to  discuss  this  activity  also  from  the  teacher’s  perspective.  In  addition,  it  is  important to highlight the fact that this kind of activity promotes nontraditional inter- actions between the teacher and the pupils and has the potential to promote the class- learning climate and future teaching–learning processes.

5

Sajaniemi  J  (2005)  Roles  of  variables  and  learning  to  program.  Proc.  3  rd  Panhellenic  Conf. 

Didactics of Informatics, Jimoyiannis A (ed) University of Peloponnese, Korinthos, Greece  http://cs.joensuu.fi/~saja/var_roles/abstracts/didinf05.pdf Accessed 3 July 2010

Schön D A (1983) The reflective practitioner. BasicBooks

Schoenfeld A H (1983) Episodes and executive decisions in mathematical problem-solving. In  Lesh  and  Landaue  (eds)  Acquisition  of  mathematics  conceptsand  processes.  Academic  Press Inc.

Soloway  E  (1986)  Learning  to  program = learning  to  construct  mechanisms  and  explanations. 

CACM 29(1): 850–858

Vasconcelos  J  (2007)  Basic  strategy  for  algorithmic  problem  solving.  http://www.cs.jhu.

edu/~jorgev/cs106/ProblemSolving.html Accessed: 2 June 2010

Wallingford  E  (1996)  Toward  a  first  course  based  on  object-oriented  patterns.  Proc.  SIGCSE: 

27–31

Wirth N (1971) Program development by stepwise refinement. CACM 14(4): 221–227 http://sunnyd  ay.mit.edu/16.355/wirth-refinement.html Accessed 13 November 2010

79 O.Hazzanetal.,Guide to Teaching Computer Science: An Activity-Based Approach,

DOI10.1007/978-0-85729-443-2_6,©Springer-VerlagLondonLimited2011

Abstract Thischapterfocusesonlearners’alternativeconceptions.Sinceprospective teachersingeneral,andprospectivecomputerscienceteachersinparticular,facediffi- cultiesingainingthenotionofalternativeconceptions,itisimportanttoaddressthisissue intheMTCScourseandtodeliverthemessagethatalearningopportunityexistsineach pupils’mistake(ormisunderstanding).Severalpedagogicaltoolsforexposinglearners’

alternativeconceptionsarepresentedaswellasthreeactivitiestobefacilitatedinthe MTCScourse.

6.1

Dalam dokumen Guide to Teaching Computer Science (Halaman 101-106)