李秀美
本節課是教科版新教材必修二《信息系統與社會》第3單元“信息系統的設計與開發”第3.4節《信息系統的數據處理》第一課時。本項目主要包含“用戶登錄功能設計”和“自動查詢借閱記錄功能設計”兩個活動任務。
針對給定的任務進行需求分析,明確需要解決的關鍵問題,運用算法解決問題;能夠描述信息系統中的數據處理流程;理解信息系統通過程序實施自動化數據處理的方式。
掌握使用條件查詢語句設計查詢功能的方法。
通過對用戶登錄的驗證使學生形成數據安全防護意識。
重點:體驗通過Python編程實現信息系統中數據處理的整個流程。
難點:用算法描述問題,用編程語言實現信息管理系統。
1.創設情境,激趣導入
師:信息系統為了信息安全往往需要進行用戶登錄,請結合自己的經驗進行登錄過程的交流。
(1)針對QQ登錄過程,寫出你的操作步驟及系統提示:
①輸入錯誤的用戶名:
②輸入錯誤的密碼:
③輸入正確的用戶名和密碼:
教師提出問題:系統的錯誤提示在人性化方面有什么缺陷嗎?請思考如何改進使系統具有更智能的提示功能?
(2)學生進行交流,準備代表發言進行闡述。
設計意圖:選取QQ這款經典社交軟件,創設貼近學生生活的環境,寓教于樂,引起共鳴,激發學生學習興趣。
2.啟發思考,分析問題
(1)師生共同分析問題。
師:實現信息系統更人性化的提示功能:登錄信息系統時,要做到針對用戶輸入的用戶名和密碼給出相應的錯誤提示。具體分析如下:如果輸入的用戶名和密碼合法,則成功登錄系統;如果輸入的用戶名正確而密碼錯誤,則提示密碼錯誤;如果輸入的用戶名不正確,則提示用戶名不存在。
教師提問:以上分析中判斷用戶名和密碼是否正確的依據是什么?
(2)教師引導學生回答。

師:用戶登錄信息系統時,輸入的用戶名和密碼是否與數據庫中已經存在的用戶信息相匹配。
設計意圖:通過QQ登錄提示這一現實問題,引導學生學會分析問題,從自然語言描述的現實問題中抽取出計算機能夠解決的問題。
3.設計算法,思維訓練
任務1:設計用戶登錄流程。
(1)自主學習,完成圖書管理信息系統的用戶登錄流程圖,如右圖所示。
(2)教師分析流程圖,分析基本的算法思想,引導學生用偽代碼來表達算法。
設計意圖:對于高中生來說,對本項目程序的理解有一定的難度。針對教學中的這個難點問題,教師引導學生用更接近自然語言的偽代碼來分析問題解決的過程,訓練學生的思維,為下一步理解程序、編寫程序做好準備。
4.實戰演練,編程實現
任務2:編寫用戶登錄判斷程序。
(1)教師演示程序運行效果,與前面分析的算法流程建立聯系。
(2)將程序實現過程分成四個部分:獲取用戶輸入信息、從數據庫中取數據、判斷用戶并輸出提示,釋放服務器資源。
教師帶領學生逐句分析程序代碼,幫助學生理解程序代碼的含義,說明查詢命令Select的Where條件以及位于django.shortcuts模塊中名為render_to_response()函數的功能及用法。
(3)學生打開教學資源中的“views.py”文件,調試運行程序,觀察運行結果。
嘗試修改程序實現用戶成功登錄系統后跳轉到show.html頁面,并給出成功登錄提示(如:歡迎用戶名登錄圖書管理系統?。。?/p>
設計意圖:在理解算法的基礎上,如何讓計算機來完成任務,需要用程序設計語言來實現。此處只給學生提供了實現用戶登錄驗證功能的代碼,其中,重點是讓學生理解實現用戶登錄驗證功能的核心代碼,培養學生使用用戶權限保護數據的安全意識。登錄成功后實現頁面跳轉建立信息系統之間的聯系,起到承上啟下的作用。
5.學以致用,自我提升
任務3:根據用戶登錄信息自動查詢借閱信息。
(1)教師提出問題:信息系統除了驗證登錄用戶的合法性,更重要的是為用戶提供個性化服務。應用程序是如何接收用戶信息的?如何利用這些關鍵信息實現系統自動查詢該用戶的圖書借閱記錄呢?
(2)教師講授Session會話的功能和用法、Django的模板代碼標簽。
(3)小組合作探究:嘗試設計算法流程、補充程序代碼,調試運行。
(4)用戶登錄驗證成功后,教師引導學生從數據庫中查詢該用戶的借閱記錄并直接在show.html頁面顯示。在大部分學生能夠理解這種最簡單的實現方法后,教師再引導學生編寫自定義函數完成頁面之間的數據傳遞。
教師通過巡視,指導學生仔細觀察程序調試過程中的錯誤,找出解決問題的辦法。
設計意圖:此環節是一個螺旋上升的過程,需要學生反復練習。在小組合作設計算法、編寫代碼、調試運行的過程中,學生可以領會到計算機是如何按照程序一步一步解決問題的,體驗指揮計算機工作的成就感。該環節的任務由簡入繁,層層遞進,這個過程能夠訓練學生的計算思維能力。
6.成果展示,總結交流
小組展示程序運行結果,感受數據處理的過程,總結交流用程序解決問題的收獲。
信息技術課程既重信息公民的信息素養,又重科技人才的技能發展,這是技術教育的永恒主題。具有時代性和前瞻性,是技術課程最重要的特征之一,本期解碼所給出的案例是從傳統的信息倫理向信息社會建設發展教學,也是從經典的數據庫中的數據處理向信息系統的網絡數據處理發展課程,給我們一線教學一種新的啟迪。
第一篇文章,著眼于建設信息社會的良好文明生態,保護個人隱私、促進信息公開、加強保護知識產權等一系列探究,無不結合實際,無不針對活動,對信息公民素養的培養極具時代性。尤其是在互聯網時代,隨意踐踏隱私權、動輒發起群體網絡暴力、輕易盜取別人成果、侵犯別人版權等現象時有發生,這些都不利于創新發展。通過本節課的學習,讓學生做合格的信息公民,并且主動參與良好的信息社會建設,這種教育意義深遠。
第二篇文章,以項目學習為策略,教學過程中通過項目活動,讓學生能夠聽懂信息系統中數據處理的過程,正確理解數據處理的原理和思路,經歷分析問題、設計算法、編程實現、運行調試等過程,感受指揮計算機解決問題的魅力??紤]到學生面對大量代碼時可能會產生畏難情緒,在教學設計中盡可能減少代碼的量,降低代碼的復雜程度,讓學生更易于理解數據處理流程。另外,建議在此基礎上,鼓勵學有余力的學生發揮創造力,自主編寫程序實現更多功能,學生在編寫程序時可能會出現書寫錯誤和語法錯誤,這就需要進一步強化規范編程意識,深度促進計算思維的培育。