Hơn nữa, nội dung học phần này có nhiều bài toán đặt ra có thể khai thác được để kích thích tư duy cho SV. Quá trình thao tác theo thuật toán và đánh giá thuật toán, vận dụng thuật toán và giải quyết vấn đề trong thực tiễn sẽ góp phần bồi dưỡng năng lực và hình thành, phát triển TDĐT cho SV [39].
Vai trò của thuật toán là vô cùng quan trọng đối với việc giải bài toán bằng máy tính điện tử. Không có thuật toán thì không có chương trình. Chương trình chỉ là sản phẩm của việc mã hóa thuật toán theo một ngôn ngữ lập trình nào đó mà máy tính có thể hiểu được. Máy tính cùng với ngôn ngữ lập trình chỉ là phương tiện để thực hiện thuật toán.
TƯ DUY ĐIỆN TOÁN
LẬP TRÌNH
KTĐT - VT
Hình 1.5. Biểu diễn mối quan hệ giữa TDĐT với ngành KTĐT - VT
Với tư duy điện toán, sinh viên được học các kỹ năng cũng như học cách có thể áp dụng vào các lĩnh vực liên quan đến kĩ thuật hoặc không liên quan đến kĩ thuật. Chẳng hạn như: có thể áp dụng các chiến lược thiết kế thuật toán như chia để trị để giải quyết vấn đề; có thể đồng bộ giữa các công cụ tính toán và các kĩ thuật khi giải quyết vấn đề; có thể sử dụng và thích ứng các công cụ tính toán hoặc kĩ thuật khi mới sử dụng; có thể nhận thấy được cơ hội sử dụng cách tính toán theo một cách thức mới; có thể hiểu được khả năng cũng như những hạn chế của các công cụ tính toán cũng như kĩ thuật tính toán.
Có thể bạn quan tâm!
- Các Giai Đoạn Của Một Hành Động Tư Duy
- Phát Triển Tư Duy Điện Toán Cho Sinh Viên Trong Dạy Học
- Bản Chất Dạy Học Phát Triển Tư Duy Điện Toán Trong Dạy Học Lập Trình Cho Sinh Viên
- Thang Đo Solo Về Mức Độ Hiểu Biết Của Sv Học Lập Trình
- Mức Độ Gv Sử Dụng Biện Pháp Kích Thích Tư Duy Trong Quá Trình Dạy Học
- Đặc Điểm Nội Dung Môn Học Kĩ Thuật Lập Trình
Xem toàn bộ 235 trang tài liệu này.
Tư duy điện toán được hiểu một cách rộng rãi, được sử dụng trong việc phân tích và thiết kế các vấn đề và giải pháp của chúng. Tư duy điện toán đại diện cho một quá trình nhận thức thu hút sự đồng thuận của nhiều tác giả về sự kết hợp một số loại tư duy khác như tư duy thuật toán, tư duy logic, tư duy heuristic (tìm kiếm dựa trên kinh nghiệm), tư duy kĩ thuật và tư duy toán học. Vậy khả năng tồn tại của việc kết hợp các loại tư duy đó vào định nghĩa tư duy điện toán sẽ như thế nào?
Thật vậy, trong bài báo đầu tiên của tác giả Wing (2006) [83] chỉ ra rằng tư duy điện toán kết hợp tư duy heuristic thinking để đưa ra giải pháp. Ngoài thao tác tóm tắt và phân tích, Guzdial (2012) [71] cũng bao gồm tư duy (heuristic thinking) như một công cụ thích hợp sử dụng khi thực hiện tư duy điện toán. Tư duy điện toán tương đương với tư duy logic (Henderson, Cortina, và Wing 2007) [54]. Tư duy logic được Iyer et al. (2010) [65] đưa vào trong chương trình giảng dạy khoa học máy tính theo mô hình của họ nhằm thúc đẩy các kỹ năng tư duy cấp cao mà không nhất thiết phải là môn học cụ thể. Khi trình bày chi tiết khía cạnh của cách tiếp cận công nghệ thông tin của họ đối với tư duy điện toán, L’Heureux và cộng sự (2012) [68] xác định tư duy logic như là khả năng phát triển và kiểm tra các giả thuyết.
Tư duy điện toán cũng giao thoa với tư duy kĩ thuật vì hệ thống máy tính tương tác với thế giới thực. Tuy nhiên, các nhà tư duy điện toán có thể thiết kế và tạo ra thế giới ảo, không bị giới hạn bởi thực thể (Wing, 2007) [84]. Mặc dù Wing (2007) tuyên bố rằng khoa học máy tính dựa trên nền tảng toán học, Gerald Sussman (Hội đồng Nghiên cứu Quốc gia 2010) khẳng định rằng tư duy toán học xoay quanh các cấu trúc trừu tượng trong khi tư duy điện toán xoay quanh phương pháp luận trừu tượng. Theo hệ thang đo kiến thức và môn học của Becher và Trowler (2001) [80], dựa trên nội dung chủ đề môn
học, khoa học máy tính sẽ được xếp vào lĩnh vực “áp dụng khó”, cùng với kĩ thuật. Khoa học máy tính và tư duy điện toán có thể được xem là kết nối khoa học và kĩ thuật lại với nhau. Nó có thể được xem như một siêu khoa học liên quan đến việc nghiên cứu các phương pháp tư duy áp dụng cho nhiều ngành khác nhau (Hội đồng Nghiên cứu Quốc gia 2010).
Mặc dù thuật ngữ tư duy logic có thể không phù hợp để đưa vào định nghĩa về tư duy điện toán, nhưng thuật ngữ tư duy thuật toán lại nhận được nhiều sự đồng tình của nhiều nhà nghiên cứu khi kết hợp các khía cạnh của tư duy thuật toán với tư duy điện toán. Trong bài báo gốc của tác giả Wing (2006) không sử dụng thuật ngữ tư duy thuật toán, thay vào đó là từ “heuristic” (tức là tìm kiếm dựa trên trải nghiệm). Tuy nhiên, đến năm 2011, tác giả mở rộng định nghĩa của chính mình về tư duy điện toán để bao gồm cả tư duy thuật toán và tư duy song song (Wing 2010) [86]. David Moursund (Hội đồng Nghiên cứu Quốc gia 2010) cho rằng tư duy điện toán có liên quan đến ý tưởng về tư duy quy trình (procedural thinking), như đề xuất của Seymour Papert trong Mindstorms. Tác giả định nghĩa quy trình là một tập hướng dẫn từng bước có thể được thực hiện bởi một thiết bị. Chủ đề tương tự được Gerald Sussman (Hội đồng Nghiên cứu Quốc gia 2010) đưa ra, tư duy điện toán là cách đưa ra các hướng dẫn rõ ràng để hoàn thành nhiệm vụ. Việc đưa tư duy thuật toán vào chương trình giảng dạy cho các trường trung học xuất hiện trước bài báo của Wing. Trong chương trình khoa học máy tính của Israel, Gal-Ezer et al. (1995) [67] nhấn mạnh vào việc đưa vào nghiên cứu các quy trình thuật toán.
Không phải tất cả các kiểu tư duy được đề xuất trên đưa vào định nghĩa của tư duy điện toán đều mang lại sự hoàn thiện hơn cho thuật ngữ này. Việc kết nối định nghĩa của tư duy điện toán với các thuật ngữ khác như “logic”,
“heuristic”,… có thể làm loãng định nghĩa về tư duy điện toán. Mặt khác, tư duy thuật toán được thể hiện nhất quán trong tài liệu và cách giải thích của nó không thay đổi. Trong tất cả các thuật ngữ tiềm năng liên quan đến tư duy, tư duy thuật toán là ứng cử viên duy nhất có thể phù hợp để đưa vào định nghĩa cho tư duy điện toán.
Quá trình tư duy quan trọng nhất và ở cấp cao nhất trong tư duy điện toán là quá trình trừu tượng hóa. Quá trình trừu tượng hóa được dùng để xác định các mẫu, khái quát hóa các trường hợp và tham số hóa. Nó được sử dụng một đối tượng thay cho nhiều đối tượng. Nó nắm bắt các đặc tính quan trọng nhất chung cho một tập hợp các đối tượng và che giấu các điểm khác biệt không liên quan giữa chúng. Ví dụ, một thuật toán là việc tóm tắt một quá trình có đầu vào, thực hiện một chuỗi các bước, và cho ra được các kết quả đầu ra nhằm thỏa mãn mục tiêu mong muốn đạt được [86].
Hơn nữa, qua định nghĩa trên thấy rõ rằng một trong những giai đoạn của quá trình tư duy điện toán để giải quyết vấn đề (bài toán) là thiết kế thuật toán. Đây cũng là thành phần quan trọng trong cấu trúc của tư duy điện toán. Việc thực hiện thiết kế thuật toán của một bài toán bất kỳ sẽ sử dụng các yếu tố cũng như quy trình tư duy thuật toán để đưa ra một kết quả đầu ra như mong muốn. Qua đó, có thể thấy được sự gắn kết chặt chẽ của tư duy điện toán và tư duy thuật toán.
1.3.4 Đánh giá mức độ phát triển tư duy điện toán của sinh viên
1.3.4.1 Nguyên tắc cơ bản khi đánh giá mức độ phát triển tư duy điện toán
Việc đo và đánh giá mức độ phát triển tư duy của người học nên được thực hiện bằng phép đo gián tiếp, kết hợp hai phương tiện đánh giá: kết quả và quá trình học tập của người học. Theo tác giả Nguyễn Trọng Khanh cho rằng cần có sự kết hợp như vậy vì “Tri thức và tư duy gắn bó với nhau như sản phẩm đi đôi với quá trình” và “Tri thức trong khi là kết quả của tư duy lại đồng thời là một trong những điều kiện của tư duy” [20]. Cũng theo
nghiên cứu này, tác giả cho rằng việc “sử dụng những bài thi đa dạng nhất và tìm cách xác định tần số của những thành công” của Binet và Aimon làm căn cứ cho một số nhà nghiên cứu về sự đo phẩm chất trí tuệ khác cũng thống nhất rằng nên “xây dựng những bài test về lập luận, về thấu hiểu, về các tri thức,…” [20].
Theo một chuyên gia trong lĩnh vực Tâm lý học về tư duy M.N.Sacdacop [37] thì một trong những mặt thể hiện sự phát triển tư duy của người học là: “sự lĩnh hội ngày càng phong phú, sâu sắc và thành thạo các tri thức” và “sự hoàn thiện các hình thức tư duy: phân tích, tổng hợp, quy nạp, và diễn dịch, khái niệm, phân loại, hệ thống hóa và các hình thức khác nhau”.
Khi nghiên cứu về mối quan hệ giữa tri thức và tư duy, M. Crugliac
[28] cũng cho rằng:“Tri thức và tư duy gắn bó với nhau như sản phẩm đi đôi với quá trình” và “Sự phát triển tư duy của học sinh diễn ra trong quá trình tiếp thu tri thức và vận dụng tri thức”.
1.3.4.2 Một số cách thức đánh giá mức độ phát triển tư duy điện toán
Dựa trên một số cơ sở khoa học trên cũng như tìm hiểu lý luận về công tác kiểm tra đánh giá trong giáo dục, xây dựng các bài toán về lập luận, kĩ thuật biến đổi, phân tích, đánh giá, phân loại,... cho thấy có thể đo và đánh giá mức độ phát triển năng lực tư duy điện toán của người học thông qua đổi mới nội dung kiểm tra và phương pháp đánh giá. Nội dung kiểm tra phải có nhiều bài toán ở các mức yêu cầu khác nhau. Phương pháp đánh giá phải bao gồm cả đánh giá định tính và định lượng,... Từ đó, tác giả có thể sử dụng một số cách thức đánh giá mức độ phát triển năng lực tư duy điện toán [39] như sau:
+ Nội dung đề kiểm tra: Đề kiểm tra phải có nội dung phong phú, đa dạng, có những bài tập đòi hỏi người học phải giải theo trình tự đúng quy trình mới cho ra kết quả, có những bài tập đòi hỏi người học phải dùng các kĩ thuật biến đổi, phân tích, nhận dạng, tổng hợp, so sánh, lập luận,... để lý giải các vấn đề.
+ Bài tập kiểm tra trình độ vận dụng kiến thức: Đặc điểm của bài tập này đòi hỏi khả năng vận dụng kiến thức một cách linh hoạt, có tính sáng tạo. Để giải quyết được bài tập này người học không chỉ nắm vững kiến thức đã được học mà còn phải sử dụng khá thành thạo các thao tác và hình thức tư duy, nắm được quy trình giải một số dạng bài tập,... Ngoài ra, người học còn phải thể hiện khả năng diễn đạt vấn đề, khả năng lập luận logic, vận dụng kiến thức đã có để chuyển vấn đề phức tạp thành vấn đề đơn giản hơn.
+ Bài tập kiểm tra giải quyết vấn đề nhanh: Đặc điểm của bài tập loại này là không quá khó, không phức tạp, chỉ đòi hỏi SV có trình độ tư duy ở mức độ nhất định đều có khả năng giải quyết.
+ Đề kiểm tra tổng hợp: Đề kiểm tra tổng hợp bao gồm có ba phần: một phần kiểm tra sự nắm vững kiến thức, một phần kiểm tra cách giải quyết vấn đề nhanh và một phần kiểm tra trình độ vấn dụng kiến thức của người học giải quyết một số vấn đề trong thực tiễn. Nội dung của bài tập kiểm tra tổng hợp có thể thực hiện nhiều cách khác nhau như: vận dụng kiến thức để áp dụng vào tính toán những thông số cụ thể, vận dụng lý thuyết để giải các bài toán trong thực tế liên quan đến chuyên môn được đào tào,... Như vậy, yêu cầu của loại đề kiểm tra này khá đa dạng: nắm vững kiến thức, khả năng diễn đạt, lập luận, đặc biệt là trình độ tư duy phải đạt tới một mức độ nhất định. Do đó, ưu điểm của đề kiểm tra tổng hợp là có thể sử dụng rộng rãi cho mọi đối tượng người học và mọi hình thức thi - kiểm tra. Tùy thuộc vào nội dung cụ thể và phân bố thang điểm, đề kiểm tra cho phép đo và đánh giá được mức độ tư duy người học.
+ Đánh giá theo nghiên cứu trường hợp (case study): Có thể lựa chọn ngẫu nhiên 3 đến 5 trường hợp dùng để theo dõi bồi dưỡng trong quá trình dạy học, tùy thuộc vào từng nội dung bài học để tác động đến một số thành phần của tư duy điện toán cho những SV này. Từ đó, xem thái độ học tập,
kích thích được sự hứng thú trong học tập hay không, để ý trong thời gian làm đề kiểm tra: đánh giá thái độ làm bài thi, thời gian làm bài nhanh, biết đưa ra cách giải tối ưu,... và dùng kết quả bài thi này để so sánh lời giải với các SV khác,... Đây là cơ sở để so sánh với SV khác xem ý thức và mức độ giải quyết vấn đề tốt hơn hay không.
Để đánh giá kết quả học tập, mức độ nắm vững kiến thức, trình độ tư duy của người học, trên cơ sở đánh giá truyền thống, có thể kết hợp các biện pháp sau:
+ Kết quả đánh giá định tính với định lượng: Đánh giá định tính bao gồm: tinh thần, thái độ làm bài thi, khối lượng nội dung hoàn thành, những lời giải hay, độc đáo, đặc biệt đánh giá cao đối với những lời giải được lập luận logic, diễn đạt rõ ràng, ý tưởng sáng tạo, tiết kiệm được tài nguyên của máy tính,... Trong đánh giá định lượng, nên xây dựng thang điểm chi tiết.
+ Trong quá trình dạy học thực nghiệm nên sử dụng nhiều loại bài toán kiểm tra gắn với ngành nghề được đào tạo, điều này không chỉ giúp cho việc đánh giá trình độ trí tuệ mà còn giúp cho việc đánh giá và phân loại năng lực người học tốt hơn, kích thích được hứng thú và động cơ học tập tốt hơn.
Bên cạnh đó, trong lĩnh vực Khoa học máy tính hay lĩnh vực Khoa học kĩ thuật đã có một số các nghiên cứu cụ thể về việc áp dụng thang đo SOLO nhằm đánh giá mức độ hiểu biết của SV khi giải quyết các vấn đề lập trình. Lister và cộng sự (2006) lần đầu tiên đề xuất việc sử dụng thang đo SOLO để phân loại các câu trả lời của SV đối với các vấn đề lập trình máy tính. Ngoài việc đánh giá chính xác một câu trả lời, còn là minh chứng SV đã hiểu được mối liên hệ của các mã lập trình như thế nào.
Trong luận án tác giả sử dụng thang đo SOLO nhằm mô tả 5 mức độ hiểu biết của SV khi giải quyết các vấn đề lập trình và trình bày cách giải
thích tương tự về sử dụng thang đo SOLO áp dụng khi người học làm các bài tập viết mã lập trình đơn giản:
- Mức 1: Đây là mức đơn giản nhất mà SV có thể đưa ra cho một nhiệm vụ lập trình, biểu hiện không chỉ là sự nhầm lẫn đáng kể về lập trình mà còn có thể là những suy nghĩ không liên quan đến lập trình. SV bắt đầu tiếp cận kiến thức về các cấu trúc lập trình và kỹ năng lập trình.
- Mức 2: Đây là mức mà SV biểu diễn chính xác một số vấn đề của lập trình nhưng không phải tất cả các khía cạnh của vấn đề lập trình. SV có thể hiểu biết một phần và một hoặc vài khía cạnh được chọn và sử dụng có hiệu quả.
- Mức 3: SV tập trung vào một số khía cạnh liên quan đến những vấn đề lập trình cần giải quyết nhưng không nhận thức về mối quan hệ giữa chúng với nhau. SV có thể biểu diễn mô tả dòng mã lập trình hoặc thực thi mã lập trình bằng tay cho một trường hợp cụ thể.
- Mức 4: SV hiểu ý nghĩa về các khía cạnh khác nhau của vấn đề, tích hợp các phần của vấn đề vào một cấu trúc mã lập trình chặt chẽ, sử dụng cấu trúc này để giải quyết vấn đề, tức là SV có thể viết được một chương trình (bằng ngôn ngữ lập trình) trên máy tính để giải quyết vấn đề cụ thể. SV có thể mô tả các chức năng được thực hiện bởi một đoạn mã lập trình cụ thể mà không cần chạy từng bước bằng tay.
- Mức 5: Trong mức thang đo cao nhất này, ngoài việc SV đã viết được một chương trình mà còn có thể liên kết các kĩ thuật trong lập trình và ứng dụng linh hoạt vào giải quyết vấn đề và còn có thể mở rộng vấn đề trong các lĩnh vực ứng dụng rộng hơn.