• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      軟件工程思想在計算機專業(yè)畢業(yè)設(shè)計中的應(yīng)用

      2014-10-27 05:33:21冶紅蔣波
      計算機教育 2014年11期
      關(guān)鍵詞:軟件工程畢業(yè)設(shè)計教學質(zhì)量

      冶紅 蔣波

      摘要:針對當前計算機專業(yè)本科畢業(yè)設(shè)計中普遍存在的問題,提出用軟件工程思想指導畢業(yè)設(shè)計的方案。探討如何通過建立軟件生存周期和畢業(yè)設(shè)計各階段的映射關(guān)系,規(guī)范畢業(yè)設(shè)計過程,提高教學質(zhì)量,為社會培養(yǎng)合格軟件人才。

      關(guān)鍵詞:畢業(yè)設(shè)計;軟件工程;軟件生存周期;軟件過程;教學質(zhì)量

      1、軟件工程概念

      軟件工程是指導計算機軟件開發(fā)和維護的工程學科,它將工程學的概念、原理、技術(shù)和方法應(yīng)用于軟件的開發(fā)和維護,結(jié)合了軟件開發(fā)技術(shù)和工程管理的成功經(jīng)驗。

      軟件工程包括方法、工具和過程3個要素。軟件有一個從孕育、誕生、成長、成熟到衰亡的過程,即軟件的生存周期。通過生存周期模型直觀地表達軟件開發(fā)的全過程,明確要完成的主要活動、任務(wù)和開發(fā)策略,是軟件工程思想的具體化。根據(jù)這一思想,將軟件生存周期劃分為軟件定義、開發(fā)和運行維護3個階段,軟件定義階段包括問題定義、可行性研究和需求分析,軟件開發(fā)階段的任務(wù)包括總體設(shè)計、詳細設(shè)計、實現(xiàn)和測試。

      2、畢業(yè)設(shè)計制作

      畢業(yè)設(shè)計是以學生為主體,在專業(yè)教師或工程技術(shù)人員的指導下,圍繞特定的選題進行的有計劃、有步驟的學習和開發(fā)過程,是培養(yǎng)人才的重要途徑。

      2.1 畢業(yè)設(shè)計的目的

      畢業(yè)設(shè)計不同于一般的課程設(shè)計,系統(tǒng)性和綜合性較強,需要多方面的知識作支撐,注重實際操作。通過畢業(yè)設(shè)計,使學生在以下方面得以鍛煉和提高:①綜合運用所學知識,分析、解決實際問題的能力;②自主獲取新知識、獨立發(fā)現(xiàn)問題的能力;③計算機系統(tǒng)設(shè)計和開發(fā)的能力;④創(chuàng)新精神和團隊協(xié)作能力;⑤文獻檢索、資料查詢以及論文寫作能力。

      2.2 畢設(shè)現(xiàn)狀及存在問題

      近年來,計算機專業(yè)畢業(yè)設(shè)計質(zhì)量出現(xiàn)滑坡。一方面是由于學生對待畢業(yè)設(shè)計態(tài)度不夠認真,投入的精力有限;另一方面,也是更主要的原因,相當一部分學生沒有按照軟件工程思想進行相應(yīng)的軟件開發(fā),違反了軟件工程的基本原則,導致畢業(yè)設(shè)計質(zhì)量較低。

      目前,畢業(yè)設(shè)計中存在的問題主要表現(xiàn)在以下方面:

      1)選題不當,不重視可行性研究。

      選題脫離實際,不能與社會應(yīng)用接軌或缺乏創(chuàng)新。很多學生無法參與到實際科研項目中,只能選擇一些虛擬題目,為了作設(shè)計而設(shè)計,完成的系統(tǒng)業(yè)務(wù)邏輯簡單,其結(jié)果沒有實用價值。存在不同指導教師的學生做同一題目的現(xiàn)象,內(nèi)容雷同,很多是對現(xiàn)有的成果稍加修改和變換,缺乏創(chuàng)新。

      2)不重視軟件的需求分析。

      需求分析階段調(diào)研不充分,沒有全面、準確地獲取用戶的需求,忽視了軟件需求的不穩(wěn)定性,沒有做到需求跟蹤;或者只關(guān)注軟件的功能性需求,忽視了性能需求,導致最終軟件的可用性差;有一些學生直接略過需求分析而進入軟件設(shè)計階段。整個軟件過程處于“設(shè)計-分析-修改-設(shè)計”這樣一個混亂的狀態(tài)。

      3)不重視設(shè)計過程和軟件測試。

      沒有事先對軟件進行總體規(guī)劃,目標不明確,想起來哪部分就做哪部分,甚至有些部分做了一半就又開始另外一個階段的工作,忽視軟件設(shè)計的基本原則。整個設(shè)計過程呈無序狀態(tài),導致軟件結(jié)構(gòu)混亂、功能代碼重復(fù)、可集成性差,待到發(fā)現(xiàn)問題已為時過晚,稍作改動系統(tǒng)就會崩潰。忽視軟件測試的現(xiàn)象也非常普遍。有的只針對模塊做單元測試,認為模塊內(nèi)部的可靠性達到了一定程度,集成后也必然穩(wěn)定可靠。有的隨機地選取少數(shù)測試用例,發(fā)現(xiàn)程序運行結(jié)果與預(yù)期結(jié)果吻合后,便覺得大功告成了。

      4)不重視軟件文檔的編制和畢業(yè)論文的撰寫。

      很多開發(fā)人員認為編寫軟件文檔是在浪費時間,他們更愿意將精力花費在如何調(diào)通一個程序上。在畢業(yè)設(shè)計的特定環(huán)境下,一些虛擬性的項目無需進行后期維護,輕視文檔的現(xiàn)象尤為嚴重。畢業(yè)設(shè)計的同時還應(yīng)在導師的指導下撰寫畢業(yè)論文,可很多學生直至畢設(shè)最后階段才開始撰寫論文,投入的時間和精力不足,文章質(zhì)量低下且抄襲現(xiàn)象嚴重。

      3、用軟件工程思想指導計算機專業(yè)本科畢業(yè)設(shè)計

      為了提高畢業(yè)設(shè)計的質(zhì)量,培養(yǎng)出適應(yīng)社會需求的軟件人才,將軟件工程思想引入畢業(yè)設(shè)計,用軟件工程方法指導和規(guī)范畢業(yè)設(shè)計過程,是十分必要和迫切的[5]。

      將畢業(yè)設(shè)計視為一個大型項目,整個畢業(yè)設(shè)計過程就是一個完整的軟件生存周期。以軟件工程思想為線索驅(qū)動畢業(yè)設(shè)計進展,遵守軟件過程的基本原則,引導學生分階段地完成畢業(yè)設(shè)計任務(wù),并按要求提交可運行的軟件產(chǎn)品和完整規(guī)范的文檔。軟件生存周期和畢業(yè)設(shè)計各階段的對應(yīng)關(guān)系如圖1所示。

      3.1 以可行性研究為指導,嚴把選題關(guān)

      可行性研究不是解決問題,而是確定問題是否值得去解,是否有可行的解決辦法。畢業(yè)設(shè)計的選題應(yīng)有益于學生綜合運用多學科的知識與技能,有一定的理論和現(xiàn)實意義,難易適度,大小適中。

      為了更好地進行可行性分析,我們對選題方式進行了改革。選題時,指導教師不給出具體的題目,只給出研究方向和計劃指導的學生人數(shù),讓學生自行確定題目,給學生更多的自主權(quán),激發(fā)學生的創(chuàng)新思維。由指導教師引導學生從經(jīng)濟、技術(shù)、法律等方面對選題進行綜合評價,分析選題有無違反國家相關(guān)法律和社會道德規(guī)范,現(xiàn)有的技術(shù)手段和工具能否提供必要的支持,最終得到的收益是否大于投入的成本,能否帶來一定的經(jīng)濟效益。為了提高選題的可行性,題目的形式和內(nèi)容也要力爭創(chuàng)新。在校外作畢業(yè)設(shè)計的學生,建議選擇與實習內(nèi)容相關(guān)的課題,立足于工程實際。在校內(nèi)做畢業(yè)設(shè)計的學生,鼓勵其參加科研團隊、科技競賽和各類創(chuàng)新實驗項目等,開放校內(nèi)實驗室,為學生提供創(chuàng)新平臺。經(jīng)過可行性分析,明確選題的意義和范圍,以便更好地制定畢業(yè)設(shè)計階段的工作計劃。

      3.2 以需求分析為基礎(chǔ),明確系統(tǒng)目標和任務(wù)

      畢業(yè)設(shè)計選題完成以后,應(yīng)以需求分析的思想為指導,對選題需承擔的工作及實現(xiàn)目標進一步闡述和分析,收集和整理資料,明確用戶要求。確定待開發(fā)軟件的功能需求、性能需求和運行環(huán)境約束,運用科學的研究方法對軟件需求建模,在建模過程中了解系統(tǒng)。有時還要對復(fù)雜系統(tǒng)的接口、人機界面等進行模擬或構(gòu)造原型。目前在畢業(yè)設(shè)計中廣泛使用的有傳統(tǒng)方法學和面向?qū)ο蠓椒▽W,通過抽象和概括,導出用圖形方法表示的、經(jīng)用戶確認的目標系統(tǒng)邏輯模型,用這些模型來描述和設(shè)計系統(tǒng)。模型既是軟件設(shè)計的基礎(chǔ),也是編寫軟件規(guī)格說明的基礎(chǔ)。軟件需求規(guī)格說明是用戶與開發(fā)人員對軟件需求取得共同理解的基礎(chǔ)上達成的協(xié)議,是軟件項目成敗的關(guān)鍵。endprint

      3.3 以軟件設(shè)計為指導進行實踐,規(guī)范畢業(yè)設(shè)計過程

      軟件設(shè)計決定軟件系統(tǒng)“怎么做”,在軟件工程過程中處于技術(shù)核心地位,是后續(xù)開發(fā)和維護的基礎(chǔ)。軟件設(shè)計主要集中于軟件體系結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)、用戶界面和實現(xiàn)算法等方面,同樣需要文檔化,撰寫相應(yīng)的設(shè)計說明書并組織評審。傳統(tǒng)方法學把軟件設(shè)計劃分成總體設(shè)計和詳細設(shè)計2個階段??傮w設(shè)計概括提出解決問題的辦法,建立軟件系統(tǒng)的總體結(jié)構(gòu)和模塊間的關(guān)系,設(shè)計全局數(shù)據(jù)結(jié)構(gòu),規(guī)定設(shè)計約束,制定集成測試計劃。詳細設(shè)計階段將解法具體化,設(shè)計模塊內(nèi)部細節(jié),擬定單元測試計劃。類似地,面向?qū)ο蠓椒▽W將軟件設(shè)計分為系統(tǒng)設(shè)計和對象設(shè)計,系統(tǒng)設(shè)計確定實現(xiàn)策略和系統(tǒng)的高層結(jié)構(gòu),對象設(shè)計確定解空間中的類、關(guān)聯(lián)、接口形式和實現(xiàn)服務(wù)的算法。

      在畢業(yè)設(shè)計過程中,應(yīng)嚴格遵守軟件工程學原則,規(guī)范設(shè)計過程。對于大型軟件系統(tǒng),首先對軟件需求進行分解,將其劃分為若干個子系統(tǒng),為每個子系統(tǒng)定義功能模塊,給出各子系統(tǒng)接口的定義,再以增量方式集成到軟件系統(tǒng)中,增量開發(fā)法如圖2所示。軟件系統(tǒng)應(yīng)具有良好且穩(wěn)定的總體結(jié)構(gòu),模塊內(nèi)部保持高內(nèi)聚,模塊之間保持松散的耦合。模塊劃分時,一個模塊的直接下屬模塊不宜太多。設(shè)計當前模塊時,把該模塊的所有下層模塊看作“黑盒”,一個模塊的全部直接下屬模塊設(shè)計完成后,再轉(zhuǎn)向另一個模塊的下層模塊設(shè)計。

      3.4 重視測試,保證畢業(yè)設(shè)計質(zhì)量

      軟件測試的目的是以最少的時間和人力,系統(tǒng)地找出軟件中潛在的各種錯誤和缺陷。當把詳細設(shè)計結(jié)果翻譯為源代碼后,應(yīng)及早開始測試。建議先考慮靜態(tài)測試,采用人工檢測和計算機輔助靜態(tài)分析方法,仔細地審查軟件設(shè)計、體系結(jié)構(gòu)和源代碼,接下來再通過運行程序進行動態(tài)測試。

      從過程的觀點考慮,畢業(yè)設(shè)計期間一般經(jīng)過單元測試、集成測試和確認測試。單元測試發(fā)現(xiàn)模塊控制結(jié)構(gòu)、算法處理和編碼中的錯誤,以白盒測試為主。集成測試主要檢查與設(shè)計相關(guān)的軟件體系結(jié)構(gòu)的問題,以黑盒測試為主。確認測試主要檢查軟件是否滿足需求規(guī)格說明中確定的功能、性能等需求,使用黑盒測試技術(shù)。測試時,需要為被測程序精心設(shè)計測試用例,選取系統(tǒng)需求所需的測試數(shù)據(jù)、設(shè)計文檔所需的測試數(shù)據(jù)、程序代碼所需的測試數(shù)據(jù)、邊界數(shù)據(jù)和一些隨機數(shù)據(jù),同時考慮合理輸入和不合理輸入。測試時注意錯誤的群集現(xiàn)象,重點測試發(fā)現(xiàn)錯誤多的模塊,并盡可能使用一些自動測試的軟件工具。如果測試沒能發(fā)現(xiàn)錯誤,應(yīng)考慮重新制定測試方案并設(shè)計測試用例。測試后,分析比較實測結(jié)果和預(yù)期結(jié)果,出現(xiàn)的錯誤要調(diào)試,同時修改相應(yīng)的文檔。修改后的程序要再次測試,直至滿意為止。

      3.5 重視文檔寫作,提升畢業(yè)設(shè)計論文的質(zhì)量

      很多學生認為畢業(yè)設(shè)計就是編寫代碼,這種理解是錯誤的。軟件文檔是軟件開發(fā)規(guī)范的體現(xiàn)和指南,按要求生成一整套文檔的過程,就是按照開發(fā)規(guī)范完成軟件開發(fā)的過程。軟件文檔是軟件生存周期各階段的設(shè)計思想和研究成果的體現(xiàn),是軟件產(chǎn)品的一部分,是后續(xù)維護的基礎(chǔ)。畢業(yè)論文是畢業(yè)設(shè)計工作的總結(jié)和提高,讓讀者對課題的設(shè)計原理、解決方法及關(guān)鍵技術(shù)等有一個全面的了解。論文寫作首先是確定選題,查閱相關(guān)資料后撰寫開題報告,進行項目設(shè)計,完成論文初稿,最后修改定稿。在畢業(yè)設(shè)計過程中,指導學生分階段地撰寫規(guī)范的軟件文檔,一方面可以科學地計劃、組織軟件開發(fā)過程,另一方面可以從中提取精華部分放在畢業(yè)設(shè)計論文相關(guān)章節(jié)中。軟件文檔與畢業(yè)設(shè)計論文各章節(jié)的對應(yīng)關(guān)系如圖3所示。

      4、結(jié)語

      以軟件工程思想為指導規(guī)范學生進行軟件開發(fā)活動,在以往的畢業(yè)設(shè)計中取得了良好的效果,不僅保障了畢業(yè)設(shè)計的質(zhì)量,更提高了學生解決實際問題的能力、溝通協(xié)作能力,以及書寫和表達能力,積累了一定的項目開發(fā)經(jīng)驗。軟件工程教學與畢業(yè)設(shè)計實踐相互促進、相輔相成。一方面,以軟件工程推進畢業(yè)設(shè)計進程,加強畢業(yè)設(shè)計各環(huán)節(jié)的指導;另一方面,可以畢業(yè)設(shè)計為任務(wù)驅(qū)動軟件工程教學,‘將畢業(yè)設(shè)計作為項目引入到今后的軟件工程課堂教學中,讓學生盡早參與實際軟件項目中,培養(yǎng)實踐能力和創(chuàng)新精神。endprint

      猜你喜歡
      軟件工程畢業(yè)設(shè)計教學質(zhì)量
      努力改善辦學條件 不斷提高教學質(zhì)量
      高校畢業(yè)設(shè)計展吸引業(yè)內(nèi)眼球
      玩具世界(2021年6期)2021-04-19 12:15:18
      關(guān)注學習過程 提升教學質(zhì)量
      甘肅教育(2020年18期)2020-10-28 09:06:20
      提高教學質(zhì)量,重在科學管理
      華人時刊(2019年17期)2020-01-06 12:08:10
      畢業(yè)設(shè)計優(yōu)秀作品選登
      基于FPGA的畢業(yè)設(shè)計實踐平臺實現(xiàn)
      電子制作(2018年9期)2018-08-04 03:31:14
      依托工作室的軟件工程實踐教學研究
      基于工程教育認證的《軟件工程》課程教學質(zhì)量建設(shè)研究 
      軟件導刊(2016年9期)2016-11-07 22:31:23
      關(guān)于提高軟件工程實踐教學質(zhì)量的幾點思考
      關(guān)于如何創(chuàng)新和完善計算機軟件工程管理的探討
      秦皇岛市| 鄂托克前旗| 西畴县| 涿鹿县| 全州县| 治多县| 英吉沙县| 虹口区| 睢宁县| 孟津县| 名山县| 贡嘎县| 肃北| 秀山| 哈密市| 同德县| 游戏| 龙陵县| 阆中市| 株洲县| 寿光市| 内黄县| 温州市| 大城县| 明溪县| 黑河市| 房产| 桃江县| 南陵县| 滦南县| 余庆县| 安福县| 湘西| 肇庆市| 孝义市| 宜川县| 嘉定区| 绥棱县| 巧家县| 响水县| 隆安县|