Tải bản đầy đủ (.pdf) (12 trang)

DSpace at VNU: Xây dựng phần mềm hỗ trợ dạy và học ngôn ngữ lập trình Pascal cho học sinh Trung học phổ thông

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.56 MB, 12 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

TRẦN MINH HIỀN

XÂY DỰNG PHẦN MỀM HỖ TRỢ DẠY
VÀ HỌC NGÔN NGỮ LẬP TRÌNH PASCAL
CHO HỌC SINH TRUNG HỌC PHỔ THƠNG

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

HÀ NỘI - 2015


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

TRẦN MINH HIỀN

XÂY DỰNG PHẦN MỀM HỖ TRỢ DẠY
VÀ HỌC NGÔN NGỮ LẬP TRÌNH PASCAL
CHO HỌC SINH TRUNG HỌC PHỔ THƠNG
Ngành
Chun ngành
Mã số

: Công nghệ thông tin
: Kỹ thuật phần mềm
: 60.48.01.03

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN



Cán bộ hƣớng dẫn khoa học: PGS.TS. Trƣơng Anh Hoàng

HÀ NỘI – 2015


LỜI CẢM ƠN

Trước tiên, em xin gửi lời cảm ơn chân thành và lòng biết ơn sâu sắc đến thầy
giáo hướng dẫn - PGS.TS Trương Anh Hồng đã tận tình hướng dẫn em trong suốt
q trình thực hiện khóa luận tốt nghiệp.
Em cũng xin bày tỏ lời cảm ơn sâu sắc tới các thầy giáo, cô giáo trường Đại học
Công nghệ, những người thầy, người cơ đã tận tình giảng dạy và truyền đạt cho em
những kiến thức, những kinh nghiệm quý báu trong suốt quá trình học tập ở trường.
Tiếp đến, em xin chân thành cảm ơn các anh chị, thầy cô đồng nghiệp trường
THPT Cầu Giấy – Hà Nội đã luôn động viên, giúp đỡ, tạo điều kiện cho em hồn
thành khóa luận tốt nghiệp.
Sau cùng, con xin bày tỏ lòng biết ơn tới cha mẹ, anh chị, những người thân
trong gia đình và bạn bè đã ln ở bên cạnh con, giúp con vượt qua khó khăn trong
học tập cũng như trong cuộc sống để đi đến cái đích ngày hơm nay.
Về luận văn, do thời gian và điều kiện có hạn nên luận văn khơng tránh khỏi
những thiếu sót. Tơi rất mong nhận được sự góp ý của bạn bè, thầy cô và những người
quan tâm đến đề tài này.
Hà nội, ngày 20 tháng 11 năm 2015
Học viên

Trần Minh Hiền


LỜI CAM ĐOAN


Tôi xin cam đoan luận văn tốt nghiệp “Xây dựng phần mềm hỗ trợ dạy và học
ngôn ngữ lập trình Pascal cho học sinh Trung học phổ thơng” là cơng trình nghiên cứu
của tơi dưới sự hướng dẫn và định hướng của PGS.TS. Trương Anh Hoàng. Các số
liệu, nội dung tham khảo được trích dẫn có nguồn gốc rõ ràng, tuân thủ tôn trọng
quyền tác giả, không vi phạm luật sở hữu trí tuệ và pháp luật Việt Nam. Nếu sai, tơi
xin chịu hồn tồn trách nhiệm trước pháp luật.

TÁC GIẢ LUẬN VĂN

Trần Minh Hiền


MỤC LỤC
LỜI CẢM ƠN1

LỜI CAM ĐOAN4
MỤC LỤC5
DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT7
DANH MỤC HÌNH ẢNH, ĐỒ THỊ8
DANH MỤC BẢNG BIỂU9
PHẦN MỞ ĐẦU ............................................................................................................ 1
Chƣơng 1. TỔNG QUAN VỀ VẤN ĐỀ NGHIÊN CỨU .......................................... 3
1.1. Vấn đề dạy và học ngơn ngữ lập trình Pascal trong trường THPT.................... 3
1.2. Phát biểu bài tốn ................................................................................................ 5
1.2.1. Quy trình xử lý .............................................................................................. 5
1.2.2. Những khó khăn thách thức .......................................................................... 5
1.3. Hướng tiếp cận .................................................................................................... 6
1.4. Kết luận chương .................................................................................................. 6
Chƣơng 2. TỔNG QUAN VỀ CODE HUNT VÀ ỨNG DỤNG TRONG DẠY

HỌC PASCAL ............................................................................................................... 7
2.1. Tổng quan về Code Hunt .................................................................................... 7
2.1.1. Giới thiệu về Code Hunt ............................................................................... 7
2.1.2. Chức năng của Code Hunt ............................................................................ 7
2.1.3. Kiến trúc của Code Hunt ............................................................................... 9
2.2. Ứng dụng mơ hình Code Hunt trong dạy học Pascal ....................................... 10
2.2.1. Chiến thuật trị chơi hóa (Gamification) ..................................................... 10
2.2.2. Thiết kế động viên người học ..................................................................... 12
2.2.3. Thiết kế học tập trải nghiệm....................................................................... 15
2.2.4. Đánh giá người học theo thang phân loại Bloom và Drefus ....................... 18
2.3. Kết luận chương 2 ............................................................................................. 22
Chƣơng 3. XÂY DỰNG HỆ THỐNG GIẢI QUYẾT BÀI TỐN.......................... 23
3.1. Mơ tả và xây dựng bài tốn ............................................................................... 23
3.1.1. Mơ tả bài tốn .............................................................................................. 23
3.1.2. Sơ đồ chức năng của hệ thống .................................................................... 23
3.1.3. Thiết kế Cơ sở dữ liệu ................................................................................. 25


3.1.4. Thiết kế Kiểm thử mã Pascal ...................................................................... 26
3.2. Xây dựng phần mềm ......................................................................................... 30
3.2.1. Xây dựng chức năng trình soạn thảo mã Pascal ......................................... 31
3.2.2. Xây dựng chức năng lưu và đọc mã Pascal ................................................ 31
3.2.3. Xây dựng chức năng biên dịch mã Pascal .................................................. 32
3.2.4. Xây dựng chức năng xem kết quả chạy chương trình ................................ 32
3.2.5. Xây dựng chức năng tính điểm và mức kỹ năng......................................... 32
3.3. Một số chức năng chính của phần mềm............................................................ 41
3.3.1. Chức năng trang chủ ................................................................................... 41
3.3.2. Chức năng quản lý học liệu ......................................................................... 41
3.3.3. Chức năng bảng xếp hạng ........................................................................... 43
3.3.4. Chức năng đăng ký ...................................................................................... 43

3.3.5. Chức năng đăng nhập .................................................................................. 43
3.3.6. Chức năng thực hành................................................................................... 44
3.4. Kết luận chương 3 ............................................................................................. 45
Chƣơng 4. CÀI ĐẶT THỬ NGHIỆM VÀ KẾT QUẢ ĐẠT ĐƢỢC ...................... 46
4.1. Hướng dẫn cài đặt phần mềm ........................................................................... 46
4.1.1. Yêu cầu hạ tầng ........................................................................................... 46
4.1.2. Cài đặt trình biên dịch trực tuyến ................................................................ 46
4.2. Kết quả thực nghiệm ......................................................................................... 48
4.2.1. Cơ sở dữ liệu của phần mềm ....................................................................... 48
4.2.2. Quản lý học liệu .......................................................................................... 48
4.2.3. Bài tập thực nghiệm .................................................................................... 49
4.3. Thực nghiệm sư phạm và đánh giá kết quả ...................................................... 55
4.3.1. Thực nghiệm sư phạm ................................................................................. 55
4.3.2. Đánh giá kết quả thực nghiệm sư phạm ..................................................... 56
4.4. Kết luận chương 4 ............................................................................................. 58
KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN ................................................................. 59
PHỤ LỤC ..................................................................................................................... 63


DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT

STT

Ký hiệu/
Chữ viết tắt

Viết đầy đủ

1


CSDL

Cơ sở dữ liệu

2

CNTT

Công nghệ thông tin

3

LTTC

Lý thuyết trị chơi

4

KH&CN

Khoa học và Cơng nghệ

5

THPT

Trung học Phổ thơng

6


OER

Open educational resources

Kho tài nguyên giáo dục mở

7

OECD

Organization for Economic
Cooperation and Development

Tổ chức Hợp tác và Phát triển
Kinh tế

8

WEF

The World Economic Forum

Diễn đàn kinh tế thế giới

9

SGK

Sách giáo khoa


Ý nghĩa


DANH MỤC HÌNH ẢNH, ĐỒ THỊ

Hình 1.1. Biểu đồ xếp hạng độ phổ biến các ngơn ngữ lập trình tháng 11/2015. ........... 4
Hình 2.1. Màn hình chính của Code Hunt. ...................................................................... 8
Hình 2.2 Các lĩnh vực của Code Hunt ............................................................................ 8
Hình 2.3 Kiến trúc của Code Hunt. ................................................................................. 9
Hình 2.4. Yếu tố tác động đến động lực học tập. .......................................................... 13
Hình 2.5. Hệ thống giảng dạy vịng trịn khép kín. ....................................................... 15
Hình 2.6. Ứng dụng hệ thống giảng dạy khép kín vào nội dung dạy và học Pascal ..... 16
Hình 2.7. Nội dung học tập được theo từng giai đoạn ................................................. 17
Hình 2.8. Nội dung bài tâp thực nghiệm theo từng giai đoạn. ...................................... 18
Hình 2.9. Thang phân loại các mức trí năng của Bloom. .............................................. 18
Hình 2.10. Thang phân loại tri thức của Bloom và phong cách học tập. ...................... 21
Hình 2.11 Thang phân loại năng lực của Dreyfus. ........................................................ 21
Hình 3.1. Sơ đồ chức năng của hệ thống. ...................................................................... 23
Hình 3.2 CSDL lưu thơng tin người học. ...................................................................... 25
Hình 3.3 Cơ sở dữ liệu lưu bài tập của phần mềm. ....................................................... 25
Hình 3.4. Cơ sở dữ liệu lưu cấp độ kỹ năng của người học .......................................... 25
Hình 3.5. Cơ sở dữ liệu lưu tài liệu học Pascal ............................................................. 26
Hình 3.6. Cơ sở dữ liệu lưu bài giảng về Pascal. .......................................................... 26
Hình 3.7. Một hộp đen kỹ thuật ..................................................................................... 27
Hình 3.8. Mã nguồn của người học. .............................................................................. 28
Hình 3.9. So sánh đầu ra mã pascal người học viết với kỳ vọng của chương trình. ..... 28
Hình 3.11. Hệ thống đánh giá chương trình của người học .......................................... 33
Hình 3.12. Thư mục lưu bài tập của học viên. .............................................................. 37
Hình 3.13. Chức năng Trang chủ của phần mềm. ......................................................... 41
Hình 3.14. Chức năng quản lý tài liệu ........................................................................... 42

Hình 3.15 Chức năng quản lý bài giảng dạng phim ...................................................... 42
Hình 3.16. Chức năng bảng xếp hạng. .......................................................................... 43
Hình 3.17. Chức năng đăng ký tài khoản mới ............................................................... 43
Hình 3.18. Chức năng đăng nhập .................................................................................. 44


Hình 3.19. Cơ sở dữ liệu lưu bài tập thử nghiệm .......................................................... 44
Hình 3.20. Chức năng soạn thảo mã Pascal .................................................................. 44
Hình 3.21. Kết quả biên dịch. ........................................................................................ 45
Hình 3.22. Kiểm thử so khớp đầu ra thực tế và kỳ vọng............................................... 45
Hình 4.1. Một trình biên dịch ........................................................................................ 46
Hình 4.2. Cơng việc của một trình biên dịch ................................................................. 46
Hình 4.3 Cơ sở dữ liệu bài tập ....................................................................................... 48
Hình 4.4. Chức năng thêm tài liệu. ................................................................................ 48
Hình 4. 5. Thực hành chương trình tự do ...................................................................... 49
Hình 4.6. Người học hồn thành đúng yêu cầu bài tập thử nghiệm số 1. ..................... 49
Hình 4.7. Bài thử nghiệm số 2 đúng cú pháp nhưng sai với kỳ vọng ........................... 50
Hình 4.8. Người học hoàn thành đúng yêu cầu bài tập thử nghiệm số 2 ...................... 51
Hình 4.9. Gợi ý của bài tập thử nghiệm 3 ..................................................................... 52
Hình 4.10. Bài thử nghiệm tốn tử số học có đầu ra đúng với kỳ vọng. ....................... 52
Hình 4.11. Người học hồn thành bài thử nghiệm số 4................................................ 53
Hình 4.12. Bài thử nghiệm số 5 đầu ra thực tế chưa khớp với kỳ vọng. ....................... 53
Hình 4.13. Bài thử nghiệm cầu điều kiện có đầu ra thực tế khớp với kỳ vọng. ............ 54
Hình 4.14. Bài thử nghiệm về vịng lặp có đầu ra chưa khớp với kỳ vọng. .................. 54
Hình 4.15. Bài thử nghiệm về vịng lặp có đầu ra khớp với kỳ vọng. .......................... 55
Hình 4.16. Kết quả khảo sát về mức độ hài lịng của học sinh. .................................... 57
Hình 4.17. Kết quả khảo sát về nội dung kiến thức phần mềm cung cấp ..................... 57
Hình 4.18. Khảo sát về khả năng tư duy lập trình ......................................................... 57
Hình 4.19. Kết quả khảo sát kỹ năng phần mềm cung cấp. .......................................... 58
Hình 4.20. Kết quả khảo sát về dự định học lập trình của học sinh. ............................. 58


DANH MỤC BẢNG BIỂU

Bảng 2.1. Chuyển đổi từ phương pháp học truyền thống sang Gamification............16


1

PHẦN MỞ ĐẦU

Bối cảnh của vấn đề nghiên cứu:
Ngày nay, những thành tựu của Công nghệ thông tin đang được áp dụng trong
hầu hết lĩnh vực hoạt động của con người mang lại nhiều hiệu quả to lớn. Các kiến
thức về lập trình, về cách thức tạo ra các chương trình kỹ thuật số đang dần trở thành
một kỹ năng cơ bản cần được trang bị đối với tất cả mọi người. Nhiều quốc gia trên
thế giới đã đưa lập trình vào chương trình giảng dạy cấp tiểu học và trung học.
Trên thế giới, Anh quốc là quốc gia đầu tiên đã đưa việc học lập trình thành mơn
học bắt buộc trong các trường tiểu học và trung học. Bắt đầu từ năm 2014 trẻ em sẽ
học lập trình ở độ tuổi 5 đến 16. Ở giai đoạn 1, học sinh học viết chương trình nhỏ, các
khía cạnh đơn giản của thuật toán, cài đặt và thực thi trên thiết bị điện tử. Trong giai
đoạn 2, học sinh được học cách thiết kế và viết các chương trình phức tạp hơn, tương
tác với môi trường xung quanh. Ở giai đoạn 3 (cấp trung học phổ thông), học sinh học
về đại số Boolean, tư duy thuật toán. Giai đoạn 4 tập trung vào sáng tạo và định hướng
nghề nghiệp.
Việc dạy tin học và lập trình sớm như vậy khơng chỉ có ích cho tồn bộ học sinh,
mà cịn trợ giúp rất lớn cho ngành CNTT và q trình hiện đại hóa đất nước. Hiểu
được vai trò của việc dạy tin học và nắm bắt được xu hướng này trên thế giới, Bộ
GD&ĐT Việt Nam đã đưa việc học lập trình Pascal vào chương trình và coi đó là khởi
đầu cho việc tiếp cận ngơn ngữ lập trình bậc cao. Ở cấp THPT, đây cũng là môn học
bắt buộc đối với học sinh khối 11.

Nói một cách khái quát, Pascal là một trong những ngơn ngữ lập trình có cú pháp
khoa học và gần gũi với ngôn ngữ của con người. Pascal có ưu điểm trong việc ứng
dụng để giải quyết các bài tốn trên máy tính, qua đó giúp các em hình dung được sự
ra đời, cấu tạo, hoạt động cũng như ích lợi của các chương trình hoạt động trong máy
tính, các máy tự động…
Tính cấp thiết của đề tài
Ngơn ngữ lập trình Pascal có vai trị quan trọng như vậy, nhưng thực tế việc học
Pascal ở trường THPT đang diễn ra theo hình thức thầy giảng giải thật kĩ, học trị cố
nhớ thật nhiều hay thầy trình chiếu - trò xem. Về cơ bản, đây là một phương pháp dạy
học lạc hậu, ngay cả khi nó được hỗ trợ bởi các thiết bị công nghệ của thế kỉ 21. Bên
cạnh đó, do nhiều yếu tố như năng lực, trình độ của học sinh, quan niệm của người dạy
mà nội dung bài học chỉ dừng lại ở mức độ giới thiệu câu lệnh và những thuật toán lâu
đời. Các tiết học về lập trình Pascal chưa đi vào ứng dụng thực tiễn khiến học sinh


61

TÀI LIỆU THAM KHẢO
Tiếng Việt
[1]. Quách Tuấn Ngọc, 2001. Ngôn ngữ lập trình Pascal, Nhà xuất bản Thống kê, Hà
Nội.
[2]. Nguyễn Trọng Nghĩa, Báo cáo tham luận: Tạo sự yêu thích và kỹ năng lập trình
cho học sinh, THPT chun Thái Nguyên.
[3]. Phạm Ngọc Hùng, Trương Anh Hoàng, Đặng Văn Hưng (2014), ―Giáo trình kiểm
thử phần mềm‖. Khoa CNTT- Đại học Cơng nghệ, ĐHQG Hà Nội.
[4]. Tạp chí cơng nghệ giáo dục (1-4), ĐH FPT, Hà Nội.
[5]. Nguyễn Tiến Dũng, Lê Ngọc Liên (dịch) ―Lý thuyết trò chơi trong kinh doanh‖.
[6]. Bùi Thế Tâm (2004), Giáo trình Turbo PASCAL 7.0, Nhà xuất bản Giao thông vận
tải, Hà Nội.
[7]. Đỗ Xuân Lôi (2006), Cấu trúc dữ liệu, Nhà xuất bản Đại học Quốc gia Hà Nội

[8]. Nguyễn Xuân My, Hồ Sĩ Đàm, Trần Đỗ Hùng, Lê Sỹ Quang (2002), Các vấn đề
chọn lọc trong Tin học tập (1,2), Nhà xuất bản Giáo dục, Hà Nội.
[9]. Hồ Sĩ Đàm, Hồ Cẩm Hà, Trần Đỗ Hùng, Nguyễn Đức Nghĩa, Nguyễn Thanh
Tùng, Ngô Ánh Tuyết (2013), Tin học 11 (dùng cho học sinh), Nhà xuất bản Giáo dục,
Hà Nội.
[10]. Hồ Sĩ Đàm, Hồ Cẩm Hà, Trần Đỗ Hùng, Nguyễn Đức Nghĩa, Nguyễn Thanh
Tùng, Ngô Ánh Tuyết (2013), Tin học 11 (dùng cho giáo viên). Nhà xuất bản Giáo
dục, Hà Nội,
[11]. Đào Minh Hồng, Lê Hồng Hiệp (2013), ―Sổ tay Thuật ngữ Quan hệ Quốc tế.
Khoa QHQT‖ – Đại học KHXH&NV TPHCM. />Tiếng Anh
[12]. Nikolai Tillmann, R. Nigel Horspool , Daniel Perelman, Tao Xie (2014), Code
Hunt: Searching for Secret Code for Fun, Microsoft Research,
/>[13]. Lee, J. J. & Hammer, J. (2011). Gamification in Education: What, How, Why
Bother? Academic Exchange Quarterly, 15(2).
[14]. Jensen, E. (1998). Teaching with the brain in mind. Alexandria, Va: Association
for Supervision and Curriculum Development.


62

[15]. Balraj Kumar, ParulKhurana (2012), Gamification in education – learn
computer programming with fun, Department of Computer, Lovely Professional
University, Punjab.
[16]. WEF(2015), New Vision for Education – Unlocking the potential of technology
[17]. Bloom B. S., Englehart M. D., Furst E. J., Hill W. H., and Krathwohl D. R.
(1956), Taxonomy of Educational Objectives: Handbook I—Cognitive Domain,
McKay, New York.
[18]. Stuart E Dreyfus, Hubert L Dreyfus (1980), A five-stage model of the mental
activities involved in directed skill acquisition, California Univ Berkeley Operations
Research Center

[19]. Maria Meyerson (2012), Applications of game theory in education, Sierra
Nevada College
/>[20]. Gee, J. P. (2008). Learning and games. Cambridge, MA: MIT Press.
[21]. Kolb D. A. (1981), Learning styles and disciplinary differences. In: A.
Chickering (Ed.), The Modern American College. San Francisco: Jossey-Bass.
[22]. Kolb, D. A(1984), Experiential Learning, London: Prentice Hall.
[23]. Knowles (1990) The Adult Learner: a Neglected Species (4th ed.), Houston: Gulf
Publishing.
[24]. Knowles, (1975), Self-Directed Learning: a Guide for Learners and Teachers.
Follet, Chicago.
[25]. Pohl, M. (2000). Learning to Think, Thinking to Learn: Models and Strategies to
Develop a Classroom Culture of Thinking.Cheltenham, Vic.: Hawker Brownlow



×