Mọi thầy giáo đều biết rằng “dạy hiệu quả” dẫn tới “học hiệu quả” và học hiệu quả nghĩa là sinh viên sẽ có tri thức và kĩ năng để đạt tới mục đích giáo dục của họ. Trong nhiều năm, các trường thường đo “học hiệu quả” dựa trên hiệu năng của sinh viên qua các kì thi. Thi truyền thống phần lớn dựa trên khả năng nhớ sự kiện và dữ liệu nơi sinh viên ghi nhớ những nội dung nào đó. Vấn đề là kiểu học này chỉ tạo ra người tốt nghiệp có trí nhớ tốt và có thể nhắc lại các câu trong sách nhưng không thể áp dụng được tri thức để giải quyết vấn đề.

Ngày nay sinh viên tích cực, họ không ngồi im trong giờ lên lớp. Nếu bạn dạy bằng phương pháp đọc bài giảng, sau 10 tới 15 phút chú ý của sinh viên sẽ chuyển sang cái gì đó khác. Họ có thể ngồi yên nhưng tâm trí họ ở đâu đó khác và không học mấy. Nghiên cứu về lớp học thấy rằng sau bài giảng sinh viên có thể nhớ được 60% điều thầy giáo nói trong mười phút đầu nhưng chỉ nhớ 20% điều thầy nói sau đó. Nó kết luận rằng “Phương pháp đọc bài giảng không còn phù hợp với lớp học ngày nay.”

Có bẩy mức hiệu quả dạy mà thầy giáo có thể tuân theo để cải tiến tính hiệu quả dạy và làm tăng việc học của sinh viên, điều dẫn tới phát triển kĩ năng giải quyết vấn đề:

1) Mức tri thức: Sinh viên nên có khả năng nhắc lại điều họ học (kĩ thuật truyền thống hay phong cách ghi nhớ). Chẳng hạn: Mô tả năm pha của vòng đời phát triển phần mềm.

2) Mức hiểu thấu: Sinh viên phải có khả năng chứng tỏ hiểu biết của họ về các khái niệm bằng việc giải thích “theo lời riêng của họ” về khái niệm này. Chẳng hạn: Giải thích chi tiết năm pha của vòng đời phát triển phần mềm.

3) Mức áp dụng: Sinh viên phải có khả năng giải quyết các vấn đề để chứng tỏ rằng họ có thể áp dụng tốt khái niệm này. Chẳng hạn: Bạn sẽ làm gì nếu khách hàng đổi yêu cầu trong pha thiết kế? Điều gì xảy ra nếu họ thêm nhiều yêu cầu trong pha viết mã? Bạn có thể bỏ được một pha trong vòng đời không?

4) Mức phân tích: Sinh viên nên có khả năng chia sự việc thành các phần tử nhỏ hơn, hình thành nên cách giải thích lí thuyết cho tình huống nào đó. Chẳng hạn, với một đặc tả yêu cầu đã cho, sinh viên phải có khả năng chia chúng thành các phần tử nhỏ hơn bằng việc dùng kĩ thuật Cấu trúc phân việc Work Breakdown Structure (WBS) thành các nhiệm vụ nhỏ hơn rồi ước lượng thời gian và nỗ lực để hoàn thành chúng. Từ những ước lượng này, họ học cách xây dựng lịch biểu dự án và tài nguyên được cần cho dự án.

5) Mức tổng hợp: Sinh viên phải có khả năng tạo ra cái gì đó bằng việc tổ hợp nhiều phần tử theo cách logic: Chẳng hạn, dùng đặc tả yêu cầu và cấu trúc phân việc, sinh viên có thể thiết kế hệ thống phần mềm với các tính năng, chức năng và biểu đồ luồng dữ liệu trong các ràng buộc hệ thống;

6) Mức đánh giá: Sinh viên phải có khả năng chọn các phương án khác nhau để đi tới một giải pháp kết cấu tốt. Chẳng hạn, sinh viên phải có khả năng xác định trong nhiều tuỳ chọn thiết kế về hệ thống phần mềm và chọn thiết kế nào là tốt nhất và có khả năng giải thích lí do của họ.

7) Mức giải quyết vấn đề: Sinh viên phải có khả năng giải quyết các vấn đề phức tạp bằng cách chia nó ra thành chuỗi các bước, như phân đoạn phát biểu vấn đề, phác thảo sơ đồ hay lưu đồ, dự đoán giải pháp, viết ra những phương trình liên quan, giải chúng hay nêu đại cương thủ tục giải, và diễn giải giải pháp. Chẳng hạn với một yêu cầu phần mềm đã cho, sinh viên phải có khả năng phân tích chúng, chia chúng thành nhiều chức năng, từng chức năng có thể được chia ra thành nhiều nhiệm vụ, từng nhiệm vụ được kết nối với nhiệm vụ khác bằng biểu đồ luồng dữ liệu và tổ chức trong một biểu đồ hệ thống cố kết về cách toàn thể hệ thống sẽ làm việc.

Áp dụng quan niệm hiệu quả này vào việc đảm bảo sinh viên sẽ học, tôi thường cho họ cái gì đó để làm như thảo luận trên lớp, bài tập trên lớp và làm việc tổ.

Để bắt đầu ở mức tri thức, tôi thường dành quãng 10 tới 15 phút giảng giải, nhấn mạnh vào khái niệm then chốt rồi yêu cầu sinh viên nhớ lại tài liệu bài giảng để xem liệu họ có học được cái gì không. Bằng việc cho từng sinh viên một hay hai phút liệt kê và nhiều điểm then chốt mà họ có thể nhớ về bài giảng, tôi có thể đánh giá cách sinh viên đang chú ý tới bài giảng. Thỉnh thoảng sinh viên có thể không sẵn lòng cho câu trả lời, cho dù họ biết câu trả lời nhưng khi câu hỏi được hướng tới một tổ trong môi trường cạnh tranh (tức là Tổ A là giỏi hơn Tổ B vì họ có nhiều thành viên hơn đưa ra câu trả lời) phần lớn sinh viên sẽ cố đưa ra câu trả lời và tôi có được nhiều đáp ứng.

Để đạt tới mức hiểu thấu, sau bài giảng ngắn, tôi yêu cầu sinh viên hình thành các nhóm từ hai tới ba người và bắt đầu thảo luận về tài liệu. Sau 1 tới 2 phút, tôi đặt ra câu hỏi và yêu cầu từng tổ trả lời theo lời riêng của họ để chắc rằng họ hiểu khái niệm mà tôi dạy. Chẳng hạn: Các hoạt động trong pha yêu cầu là gì? Em có thể mô tả được pha thiết kế không? Em có thể soạn thảo ra pha kiểm thử không?

Để đạt tới mức ứng dụng, tôi nêu ra vấn đề cho tổ để đi tới giải pháp. Sau vài phút (2 tới 5 phút), tôi chọn ngẫu nhiên một hay nhiều tổ để trình bày giải pháp của họ. ựa chọn tổ ngẫu nhiên thay vì yêu cầu người tình nguyện là quan trọng. Nếu sinh viên biết rằng tổ khác sẽ cho câu trả lời, nhiều người thậm chí sẽ không bận tâm nghĩ về câu hỏi. Chẳng hạn: Em nghĩ chúng ta có thể bỏ qua pha thiết kế và đi vào pha viết mã được không? Tại sao được và tại sao không? Điều gì xảy ra khi yêu cầu thay đổi trong pha viết mã? Em có thể làm được gì?

Để đạt tới mức phân tích, tôi sẽ cho một thành viên của tổ một vấn đề. Thành viên tổ đó phải có khả năng giải thích vấn đề một cách chi tiết cho tổ khi các thành viên khác có thể hỏi để làm sáng tỏ nếu có cái gì không rõ ràng. Sau năm phút, tôi sẽ yêu cầu tổ tóm tắt lại hiểu biết của họ về vấn đề và họ có khả năng phân tích nó về chi tiết tốt tới mức nào.

Để đạt tới mức tổng hợp, tôi cho lớp một trường hợp hay tình huống để phân tích. Từng tổ sẽ được yêu cầu liệt kê ra các giả định của họ, các vấn đề, sai lỗi, hay lưỡng nan kĩ thuật trong trường hợp đó rồi giải thích nó cho lớp. Lớp sẽ thảo luận để tìm ra lỗi logic trong luận cứ và đi tới một kết luận cho tình huống trường hợp đó. Thỉnh thoảng tôi có thể làm việc qua một tình huống trong lớp, làm đủ một số bước rồi yêu cầu một sinh viên hay một tổ tiếp tục công việc của tôi.

Để đạt tới mức đánh giá, tôi sẽ cho lớp một trường hợp nghiên cứu, hay một vấn đề mà đã được giải quyết và yêu cầu lớp kiểm điểm và bình luận về giải pháp hay tìm ra giải pháp thay thế.

Để đạt tới mức giải quyết vấn đề, tôi sẽ cho lớp một vấn đề phức tạp để giải quyết. Vì phải mất thời gian để giải quyết vấn đề này, tôi thường cho nó như bài tập về nhà nơi tổ có vài ngày để giải quyết vấn đề và tới lớp để trình bày giải pháp.

Sinh viên càng có nhiều thực hành và phản hồi trong các kiểu học tích cực, họ càng học tốt hơn và càng có khả năng họ thu nhận được tri thức và phát triển được kĩ năng cần thiết. Bằng việc đi theo các nguyên lí học hiệu quả này, tôi có thể chuẩn bị tốt hơn các tài liệu giảng, các phân công nhiệm vụ tốt hơn và tạo điều kiện cho các hoạt động trong lớp, phân công bài tập về nhà, và kiểm tra.

—English version—

Effective teaching and effective learning

Every teacher knows that an “effective teaching” leads to “effective learning” and an effective learning means students will have the knowledge and the skills to achieve their education goals. For many years, schools often measured “effective learning” based on students’ performance on exams. The traditional exam is mostly based on the ability to recall facts and data where students memorize certain contents. The problem is this type of learning only produces graduates who have good memory and can repeat phrases in books may not be able to apply the knowledge to solve problems.

Today students are active, they do not stay quiet throughout the class time. If you teach by the lecturing method, after about 10 to 15 minutes many students’ attention will switch to something else. They may sit quiet but their minds are somewhere else and do not learn much. Classroom research found that after a lecture most students can recall 60% of what teacher said in the first ten minutes but only 20% of what teacher said after that. It concluded that “Lecturing method is no longer suitable for classroom today.”

There are seven teaching effectiveness levels that teachers could follow to improve their teaching effectiveness and increase students learning that leads to the development of problem solving skills:

1) Knowledge level: Students should be able to repeating what they learn (The traditional technique or memorization style) For example: Describe the five phases of the software development life cycle.

2) Comprehension level: Students should be able to demonstrating their understanding of concepts by explaining “in their own words” of the concept. For example: Explain in detail the five phases of the software development lifecycle.

3) Application level: Students should be able to solve problems to demonstrate that they can apply the concept well. For example: What would you do if customers are changing requirements during the design phase? What if they add more requirements during the coding phase? Can you skip a phase in the lifecycle?

4) Analysis level: Students should be able to break things down into smaller elements, formulating theoretical explanations for certain situation. For example, given a requirements specification, students should be able to break them down into smaller elements using Work Breakdown Structure (WBS) technique to smaller tasks then estimate the time and efforts to complete them. From these estimates, they learn how to construct a project schedule and resource needed for the project.

5) Synthesis level: Students should be able to creating something by combining many elements in a logical ways: For example, using the requirements specification and the Work Breakdown Structure, students can design a software system with features, functions and dataflow diagram within system constraints;

6) Evaluation level: Students should be able to choose among alternatives to come up with a well construct solution. For example, Students should be able to determine among several design options of the software system and select which design is the best and be able to explain their reasoning.

7) Problem solving level: Student should be able to solve complex problem by broken down it into a series of steps, such as paraphrasing the problem statement, sketching a schematic or flow chart, predicting a solution, writing the relevant equations, solving them or outlining a solution procedure, and interpreting the solution. For example give a software requirements, students should be able to analyze them, breakdown into several functionalities, each function may be broken down into several tasks, each task is connected to others by a dataflow diagram and organize into a cohesive system diagram on how the entire system will work.

To apply this effectiveness concept to ensure students will learn, I often give them something to do such as class discussion, class exercise and teamwork.

To start at the knowledge level, I often spend about 10 to 15 minutes giving lectures, emphasize the key concept then ask students to recall the lecture material to see if they are learning anything. By given each student one or two minute to list as many key points as they can recall about the lecture, I can evaluate how much students are paying attention to the lecture. Sometime students may not be willing to give answers, even they know the answers but when the questions are directed to a team in a competitive environment, (i.e., Team A is better than Team B as they have more members to give answer) most students will try to come up with answers and I get many responses.

To achieve the comprehension level, after the short lectures, I ask students to form into groups of two or three and begin a discussion about the materials. After 1 to 2 minutes, I then poses questions and require each team to answer in their own word to make sure that they understand the concept that I taught. For example: What are the activities in requirements phase? Can you describe the design phase? Can you elaborate on the testing phase?

To achieve the application level, I raise a problem for teams to come up with a solution. After few minutes (2 to 5 minutes), I randomly select one or more team to present their solutions. Selecting teams randomly instead of asking for volunteers is important. If the students know that other team will give the answer, many will not even bother to think about the question. For example: Do you think we can skip the design phase and go to coding phase? Why and why not? What happen when requirements are changing in coding phase? What can you do?

To achieve the analysis level, I will give one member of the team a problem. That team member must be able to explain the problem in more details to the team when other members could ask for clarification if anything is unclear. After about five minutes, I will ask the team to summarize their understanding of the problem and how well they have been able to analyze it in detail.

To achieve the synthesis level, I give the class a case or situation to analyze. Each team will be asked to list their assumptions, problems, errors, or technical dilemmas in the case then explain it to the class. The class will discuss to find the logical flaw in the argument and come up with a conclusion to that case situation. Sometime I may work through a situation in class, complete some steps then ask a student or a team to continue my work.

To achieve the evaluation level, I would give the class a case study, or a problem that have been solved and ask the class to review and comment on the solution or find other alternative solutions.

To achieve the problem solving, I would give the class a complex problem to solve. Since it takes time to solve the problem, I often give it as homework where the team has few days to solve the problem and come to class to present the solution.

The more practice and feedback the students get in the types of active learning, the better they learn and the more likely they are to acquire the knowledge and develop the needed skills. By following these effective teaching principles, I can prepare better lecturing materials, better assignment and facilitate in-class activities, homework assignments, and tests.