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