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