- 相關推薦
軟件工程中計算思維研究
在新的技術革命的推動下,產業升級、科技創新、市場優化的周期越來越短,我們的社會達到了前所未有的智能化、信息化的水平。下面是小編搜集整理的相關內容的論文,歡迎大家閱讀參考。
摘要:計算思維能力的培養需要選擇適當的課程知識作為載體,并在教與學的過程中有意識、有計劃地展開。文章通過分析軟件工程課程的基本知識點與計算思維能力點之間的關系,探討了《軟件工程》教學過程中計算思維能力培養的策略和方法。
關鍵詞:軟件工程;計算思維;能力培養
一、引言
2010年,教育部高等學校計算機科學與技術教學指導委員會編制的《高等學校計算機科學與技術專業人才專業能力構成與培養》中指出,計算機專業人才的專業基本能力主要包括計算思維能力、算法設計與分析能力、程序設計與實現能力、系統能力[1]。在教學過程中,如何培養學生的專業基本能力需要我們進行深入的探討和研究。軟件工程是計算機科學與技術、網絡工程等專業的專業必修課,具有綜合性、實踐性和工程性特點,它涉及軟件技術、方法和管理等各個方面。軟件工程課程的教學目標,是使學生理解和掌握軟件工程的基本思想、方法和技術,能夠對實際問題進行需求分析、系統設計和編碼測試,學會軟件開發的方法和過程;能夠綜合應用前修課程知識,并將所學知識融會貫通,應用到實際問題的開發過程中。這一教學目標與計算機專業能力的培養目標是一致的,因此,軟件工程的教學對培養學生的專業基本能力起著非常重要的作用。文章重點探討計算思維能力的培養問題。首先概述計算思維和計算思維能力的內涵,然后分析軟件工程課程知識點與計算思維能力點之間的對應關系,最后探討如何在軟件工程課程的教學過程中滲透計算思維方法,通過理論教學和實踐教學培養學生的計算思維能力,進而提高學生的工程素質。
二、計算思維
計算思維是運用計算機科學的基礎概念去求解問題、設計系統和理解人類的行為,它包括了涵蓋計算機科學之廣度的一系列思維活動[2]。計算思維是利用計算機解決實際問題的思維方法,它的本質是抽象(Abstract)和自動化(Automation)。典型的計算思維包括一系列廣泛的計算機科學的思維方法:遞歸、抽象、分解、關注點分離、約簡、迭代、預置和緩存、保護、冗余、容錯、回溯、糾錯和恢復等等。計算思維能力是指人們運用計算思維方法思考的能力。對于計算機專業人才的培養,計算思維能力主要包括問題及問題求解過程的符號表示、邏輯思維與抽象思維、形式化證明、建立模型、實現類計算和模型計算、利用計算機技術等[1]。這些能力的培養需要以課程知識為載體,在教師有意識、有計劃的引導下,在不斷的實踐過程中進行實施。
三、軟件工程課程知識點分析
軟件工程是研究軟件開發和軟件管理的一門工程學科,它主要包括技術和管理兩方面的內容。在新建本科院校的計算機類專業,軟件工程課程重點講授軟件技術方面的知識,包括軟件工程基本概念、基本原理和基本方法,強調應用計算機技術解決實際問題的方法和步驟,使學生掌握軟件開發各個階段規范的方法、工具和過程。軟件工程知識體系主要有結構化方法和面向對象方法兩大部分,下面重點分析兩種軟件開發方法涉及的知識點與計算思維能力點的關聯。
3.1面向過程方法知識點分析
結構化軟件開發方法的主要過程是:需求分析、系統設計、編碼測試、運行維護,每個階段都要遵循規范的方法和步驟,通過嚴格的評審后才能開始下個階段的工作。各個階段的主要知識點為:①需求分析:主要包括數據分析、功能分析和狀態轉換分析。數據分析是對軟件要處理的數據進行分析,確定數據實體及其屬性,并分析實體之間的關系,建立數據模型;功能分析是按數據流的處理過程對軟件的功能進行分析,建立功能模型;狀態轉換分析是對系統狀態進行分析,確定引發系統狀態轉換的事件及分析狀態轉換的過程,建立行為模型。②系統設計:主要包括概要設計和詳細設計。概要設計完成體系結構設計、數據設計和接口設計,按功能分析的結果將一個復雜系統分解為若干個簡單模塊,并確定各個模塊之間的接口形式;詳細設計完成各個模塊的算法設計,通常用流程圖或盒圖表示。③編碼測試:主要包括編碼規范和測試技術。編碼規范主要是程序設計風格和編寫程序代碼的規范,編寫規范的程序代碼實現系統的各項功能;測試技術主要包括白盒測試技術和黑盒測試技術,設計合理的測試用例對軟件進行模塊測試、組裝測試、確認測試和系統測試,保證軟件的質量。④運行維護:主要包括運行程序和軟件維護活動。在用戶的實際環境中運行程序,發現錯誤后調試程序,改正軟件錯誤,完善系統的各項功能,滿足用戶的需求。在基于結構化方法開發軟件過程中,涉及到大量的計算思維方法:在需求分析階段,對實際問題進行簡化、抽取問題的本質,應用了約簡、抽象方法;在概要設計階段,將復雜問題分解為若干個簡單問題,用到關注點分離方法;數據庫設計用到抽象和分解的方法;在調試程序的過程中,從發現錯誤的地方開始,沿程序的控制流往回追蹤分析程序代碼,直到找到錯誤,體現了回溯方法的應用。應用計算思維方法開發軟件,能夠訓練學生的計算思維能力。例如:需求分析階段的數據流圖、實體關系圖、狀態轉換圖,設計階段的層次結構圖、算法流程圖,編碼階段的程序代碼都是分析問題和求解問題的符號表示,分析和設計的過程就是邏輯思維與抽象思維的過程,需求分析過程就是建立模型的過程,由此可見,軟件工程的知識點與計算思維的能力點是相互關聯的。
3.2面向對象知識點分析
面向對象軟件開發方法的主要過程是:需求分析、系統設計、編碼測試、運行維護。但與結構化方法相比,面向對象方法的特點是按對象分解系統,更符合人類認識問題和解決問題的一般方法和過程。主要知識點為:①面向對象分析:主要包括對象分析、功能分析和狀態轉換分析。對要處理的對象、類及接口進行分析建立對象模型,用類圖描述;從用戶的角度分析系統的功能,建立用例模型,用用例圖描述;分析系統的交互作用及狀態轉換,建立動態模型,用狀態圖、順序圖描述。②面向對象設計:主要包括體系結構設計、各個子系統設計及類設計。體系結構設計要根據用戶的需求選擇體系結構風格,設計系統的框架;對各個子系統的設計主要有問題域子系統、人機交互子系統、任務管理子系統和數據管理子系統;類設計以問題領域的對象設計為核心,設計出詳細的對象模型。③面向對象實現:主要包括編寫程序代碼和軟件測試。編寫類、接口、包都要遵循規范的命名規則和編程風格,做到源程序文檔化和數據說明標準化。軟件測試主要是類測試和系統測試。④面向對象維護:與結構化方法類似,面向對象維護也是對軟件在投入運行之后出現各種錯誤進行調試和糾錯,完善軟件的功能,滿足用戶的需求。面向對象的需求分析過程是建立對象模型、用例模型和動態模型的過程,對象分析過程是一個典型的抽象過程;功能分析將系統抽象和分解為若干個用例,是抽象和分解、關注點分離方法的典型應用;面向對象的設計和實現是在需求分析的基礎上多次反復迭代的演化過程,對各個子系統的設計也用到抽象和分解、關注點分離方法。這些計算思維方法的應用對應著問題求解過程的符號表示、邏輯思維與抽象思維、建立模型、實現類計算和模型計算、利用計算機技術等計算思維能力點,通過面向對象方法開發軟件,達到訓練學生計算思維能力的目的。
四、培養學生思維能力探究
以課程知識為載體,重點從意識、理解、實踐三個層次入手,循序漸進的提高學生應用計算思維方法解決實際問題的能力。
4.1強調思維能力的重要性
從筆者有關計算思維調研結果來看,大部分學生不了解計算思維的概念,在分析問題和解決實際問題的過程中,不會應用計算思維方法,即使用到一些計算思維方法也是無意識的。因此,在課堂教學和實踐教學過程中,要充分發揮教師的主導作用,教師要將課程知識與實際問題緊密結合,激發學生學習興趣,有意識地、系統地講解計算思維的方法,讓學生認識到計算思維方法在求解實際問題中的重要地位。
4.2采用案例教學
在教學過程中,選擇一個學生比較熟悉的應用系統,如學生成績管理系統、圖書管理系統等,以這個系統的開發過程貫穿教學始終,有計劃、有意識地講解計算思維方法在系統開發各個階段的應用,讓學生領悟計算思維方法,理解計算思維方法在實際問題中的應用。通過需求分析訓練學生的抽象思維和建立模型能力。通過系統設計、算法設計訓練學生的邏輯思維能力。通過編寫程序訓練學生用符號表示問題及問題求解過程的能力。通過對實際項目的分析,讓學生理解利用計算機求解問題的典型方法和過程。
4.3重視實踐教學
軟件工程課程是一門實踐性很強的課程,課程實踐環節可分為課程實驗和課程設計兩部分。課堂上的案例教學有助于學生形成計算思維的意識,理解計算思維在實際問題中的應用。課程實驗中讓學生以小組的形式模擬案例開發一個簡單的系統,小組成員分工合作,應用計算思維方法完成需求分析、系統設計、編碼測試過程,實現系統的主要功能。課程設計是在課程結束后進行的綜合性的實踐環節,訓練學生綜合應用知識的能力、應用計算思維解決實際問題的能力和團隊合作能力等。此外,通過實習實訓、畢業設計等綜合性的實踐環節,以及大學生創新創業項目、程序設計大賽等活動,進一步強化、提升學生的計算思維能力。
五、結語
計算思維能力的培養不可能通過一門課程完成,需要通過系列課程有意識、有計劃、持續地訓練。文章對如何在軟件工程的教學過程中滲透計算思維方法,培養學生計算思維能力做了一些初步的探討,實踐表明,將計算思維方法融入課程的教學過程中,提高了學生解決實際問題的能力和計算思維能力,對應用型人才的培養大有裨益。
參考文獻:
[1]教育部高等學校計算機科學與技術教學指導委員會.高等學校計算機科學與技術專業人才專業能力構成與培養[M].北京:機械工業出版社,2010.
[2]周以真.計算思維[J].中國計算機學會通訊,2007,(11):77-79.
[3]蔣宗禮.計算思維之我見[J].中國大學教學,2013,(09):5-10.
[4]劉強等.“軟件工程”課程教學實施方案[J].中國大學教學,2011,(02):41-44.
[5]鄭人杰等.軟件工程概論[M].機械工業出版社,2011.
【軟件工程中計算思維研究】相關文章:
淺談數學思維中的創造性思維03-26
化學教學中的思維訓練11-23
計算機技術在GHH風機中的研究與應用03-19
計算機軟件在項目工程中的應用研究11-22
反思美學中的實體論思維03-19
地理教學中思維品質的培養03-20
市場營銷中的逆向思維03-22
英漢存在句與思維習慣研究03-01
計算電磁方法研究脈沖在光纖中的非線性傳播03-07