999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于工程化的軟件工程教學案例研究

2019-10-08 09:01:51韓萬江姜立新張笑燕
軟件 2019年3期

韓萬江 姜立新 張笑燕

摘? 要: 針對目前軟件工程教育實踐性弱的問題,本文基于某軟件項目(簡稱SPM)案例的開發過程,介紹了軟件工程化的流程,說明了軟件生存期中各軟件過程的任務和交付成果. 闡述了需求分析、概要設計、詳細設計、編碼實施、集成與部署,系統測試、試運行,維護等軟件過程。整個案例將軟件工程的開發流程與建筑工程的實施流程進行了對比了,提出了實現軟件工程化的可行性,為軟件工程的案例化教學提供基礎。

關鍵詞: 軟件工程;工程化;項目案例;軟件開發流程

【Abstract】: Aiming at the problem of weak practice in software engineering education at present, this paper introduces the process of software engineering based on the development process of a software project (SPM) case, and explains the tasks and deliverables of each software process in the software lifetime. The software processes such as requirement analysis, outline design, detailed design, coding implementation, integration and deployment, system testing, trial operation and maintenance are described. The whole case compares the development process of software engineering with the implementation flow of construction engineering, and puts forward the feasibility of realizing software engineering, which provides the basis for the case teaching of software engineering.

【Key words】: Software engineering; Project case; Software development process

0? 引言

目前軟件工程教育存在理論與實踐脫節的現象,急需在軟件工程教學過程中加強實踐教學的可操作性,建立可行的案例庫,而基于案例驅動的教學模式可以有效提高學生的實際分析問題能力和動手能力,被更多人推崇和認可。本文介紹了我們開發的一個基于工程化的軟件項目案例,以此為典范, 可以推進以案例庫為導向的現代軟件工程案例庫教學模式.本案例是針對某軟件項目(暫稱為SPM項目:https://pan.baidu.com/s/10aOJobW4N149zSiqjy9kOQ)的工程化的軟件開發過程,展示了各個階段的任務和交付結果,本案例被評為了全國軟件工程優秀

案例。本案例主要包括項目需求的提出、任務分配、需求分析、概要設計、任務細分、詳細設計、開發實施、集成測試、試運行等環節,如圖1所示,整個案例將軟件工程的開發流程與建筑工程的實施流程進行了對比了,直觀易懂,以此體現了軟件工程化的理念。

1? 需求分析過程

項目需求是軟件開發的基礎,項目第一步是用戶需求提出,類比房屋工程項目:例如某學校希望建設一個教學樓,校方就需要提出建設教學樓的要求。SPM項目用戶提出的需求是建設一個課程網站,這個階段,用戶和開發方對需求進行一定的交流。為了更好與用戶溝通需求,并進行需求分析,可以建立需求原型,案例中展示了采用Axure RP工具進行原型開發過程,如圖2所示,可以類比建筑工程項目的沙盤模型。

通過原型方法與用戶確定了需求,進行需求分析,編寫基于UML的需求規格,完成了第一個過程的交付成果:SPM項目的需求規格,案例中介紹和展示了SPM項目的需求規格,如圖3所示。

2? 概要設計過程

需求規格完成之后,進行概要設計,概要設計主要包括架構設計、模塊設計、接口設計、數據結構設計、界面設計等等。類比教學樓工程項目:概要設計相當于教學樓的主體設計。

本項目的系統架構采用的是多層的SSH架構,類比教學樓工程項目:架構設計相當于教學樓的架

構設計,如圖4所示。一個房屋架構有很多,例如木結構、磚混結構、鋼筋混凝土、鋼結構,結構不同,施工環節不同。軟件系統也有很多架構,軟件架構設計決定了后續開發的邏輯思路。

本項目的模塊設計,采用自上而下的設計方法,通過E-R設計進行數據庫設計,也有界面流設計,如圖5所示。

由此,完成第二軟件過程的交付成果:基于多層架構的SPM項目概要設計文檔,案例中有對概要設計文檔的介紹和展示,如圖6所示。

3? 詳細設計過程

如果概要設計不夠詳細,還可以進行詳細設計,類比教學樓工程項目:這個詳細設計相當于教學樓的各個單元房間的設計。詳細設計的主要任務是設計每個模塊的實現算法、所需的局部數據結構。如圖7所示。

SPM項目的詳細設計描述了概要設計中模塊在界面層、控制層、業務邏輯層、數據持久層等的實現邏輯,如圖8所示。詳細設計描述可以采用流程圖或者偽代碼等形式。

最后完成本過程的交付成果:詳細設計文檔,如圖9所示。案例中有對詳細設計文檔的介紹和展示。

4? 編碼實施過程

類比教學樓工程項目按照圖紙施工, 軟件項目的編碼實施的圖紙就是概要設計和詳細設計,如圖

10所示。施工有施工規范,編碼有編碼規范,例如地面、墻面、管道等等需要遵守統一的規范,軟件編碼過程也一樣,大家必須遵守統一的規范。圖11是案例項目的編碼規范。

開發過程需要安裝配置開發環境, 案例中有學生操作和講述開發環境的安裝和配置過程。編碼實施過程中版本管理過程是非常重要的要素,案例中也說明了SPM項目的編碼過程:開發環境安裝好之后,進入開發過程,所有開發人員從SVN服務器上下載系統代碼及其代碼環境,每個模塊完成之后,通過配置文件可以將模塊插入系統中,實現了靈活開發模式。模塊開發完成之后,將代碼提交到SVN服務器,集成運行。如圖12所示,案例中展示了幾個模塊的編碼實施操作,如圖13(a)所示,同時也強調代碼檢查環節,如圖13(b)所示。案例中展示了本過程的交付成果:工程文件代碼,如圖14所示。

5? 安裝與部署過程

模塊全部開發完成之后,在SVN服務器上集成,形成項目最后的JAR包,然后將這個JAR包安裝部署到Web服務上,系統就可以運行了,項目案例中有學生的操作講述過程。如圖15所示。

6? 軟件測試過程

類比教學樓工程項目:測試過程相當于對教學樓的質量驗收過程。軟件測試是根據軟件開發各個階段的規格說明和程序的內部結構而精心設計的一批測試用例,并利用這些測試用例運行程序以及發現錯誤的過程。項目案例也給出項目的測試基本流程,如圖16所示。

其中:

測試需求—明確測試內容(功能、性能),

測試設計—根據需求規格,設計測試用例

測試實施—展示功能、性能測試

測試結果—提交測試結果(Bug、執行記錄)

測試報告—根據測試過程,統計測試結果,給出測試結論

項目案例中也展示了針對SPM項目的測試步驟和交付成果,如圖17-19所示。

7? 軟件試運行過程

案例中類比教學樓工程項目:上線試運行相當于教學樓全部完工,達到使用的條件。一般項目有試運行階段,試運行的目的是全面驗證和確認系統是否能使用,根據需要可以增加上線測試,上線測試是在試運行階段對系統的測試過程,是系統正式運行前的最后測試,以保證測試系統將來可以正確運行,為突出重點,上線測試重點可以放在測試系統的性能上,當然也有功能方面的測試。

8? 軟件維護過程

類比教學樓工程項目,在使用過程中,可能需要維護,軟件也一樣,軟件維護的工作從軟件產品的試運行就開始了,所謂維護是為了保證軟件系統在一個相當長的時間內正常運行而做的工作。由于本系統的設計考慮了可維護性,所以,對于系統的某些維護是很方便的。

9? 結論

總之,本文對基于工程化項目案例的實施過程進行了描述,說明了軟件項目的整個工程化流程,以及相應的交付成果,總結案例項目(SPM)交付成果如下:

(1)需求規格: BUPTSSE-SPM-SRS

(2)概要設計:BUPTSSE-SPM-HLD

(3)詳細設計:BUPTSSE-SPM-LLD

(4)代碼規范:BUPTSSE-SPM-CodeStd

(5)項目工程代碼:BUPTSSE-SPM_Project.rar

(6)測試文檔

a)測試用例:BUPTSSE-SPM-TestCase

b)Bug文件:BUPTSSE-SPM-Bug

c)測試用例執行文件:BUPTSSE-SPM-Test CaseResult

d)測試報告:BUPTSSE-SPM-TestReport

通過這個案例的實施流程可以加深對軟件工程化的理解,為真正實現工程化軟件項目提供基礎。后續還會在案例的各個階段的實施過程以及相應的,設計和開發更加獨立化的,標準化處理模塊,為將來建立軟件統一模型提供實踐基礎。

參考文獻

韓萬江, 姜立新. 軟件工程案例教程[M]. 北京: 機械工業出版社, 2017年6月.

趙輝, 李萬龍, 鄭山紅. 項目導向案例驅動”的軟件工程教學模式[J]. 計算機教育2012年10期.

王辰尹, 衣楊. 面向應用型IT人才培養的軟件工程教改關鍵問題研究[J]. 計算機教育2014年08期.

王靜, 以案例庫為導向的“現代軟件工程”教學模式探索[J]. 教育教學論壇, 2018年16期.

鄭麗萍, 王社偉, 趙玉娟. 面向軟件工程專業的Java課程群教學規劃研究[J]. 軟件導刊, 2015年12期.

韓萬江. 系統化的軟件工程教學模式[J]. 南京大學學報,第45卷, 2009年10月.

韓萬江, 張笑燕. 基于SPOC的混合式教學模式課程建設初探[J]. 工業和信息化教育, 2015. 11.

韓萬江. 軟件工程專業認證的新思路研究[J]. 軟件, 第36卷第3期, 2015年3月.

韓萬江. 《軟件項目管理》課程中理論與實踐的交融關系[J]. 軟件, 第35卷第2期, 2014年2月.

馮杰, 屈志毅, 李志輝. 基于分類稀疏表示的人臉表情識別[J]. 軟件, 2013, 34(11): 59-61.

主站蜘蛛池模板: 91啪在线| 波多野吉衣一区二区三区av| 男女精品视频| 99热国产这里只有精品无卡顿"| 午夜福利在线观看成人| 亚洲综合极品香蕉久久网| 四虎影视库国产精品一区| 国产美女在线免费观看| 国产在线麻豆波多野结衣| 日韩av手机在线| 亚洲水蜜桃久久综合网站| 国产自无码视频在线观看| 在线欧美一区| 成人午夜视频网站| 久久精品一品道久久精品| 无码内射中文字幕岛国片| 国产一级无码不卡视频| 久久国产亚洲偷自| 亚洲中文字幕国产av| 中文字幕66页| 无码专区第一页| 国产欧美视频在线| 亚洲精品福利网站| 精品第一国产综合精品Aⅴ| 日韩免费成人| 久久免费精品琪琪| 亚洲欧洲日韩综合色天使| 久久综合国产乱子免费| 国产乱人伦AV在线A| 国产成人精品2021欧美日韩| 亚洲免费播放| 91福利国产成人精品导航| 99精品影院| 成人福利在线观看| 欧美日韩福利| 丝袜高跟美脚国产1区| 精品国产自| 91热爆在线| 欧美色丁香| 亚洲精品自产拍在线观看APP| 一级毛片在线播放| 51国产偷自视频区视频手机观看| 国产欧美在线观看视频| 午夜视频日本| 国产亚洲精品97在线观看| a级毛片免费在线观看| www.亚洲国产| 国产精品久久久久久搜索| 亚洲国产精品不卡在线| 国产精品入口麻豆| 不卡无码网| 一级全黄毛片| 精品欧美一区二区三区在线| 91国语视频| 免费毛片全部不收费的| 在线日韩一区二区| 久久亚洲黄色视频| 亚洲男人天堂2018| 国产福利小视频在线播放观看| 一本大道视频精品人妻 | 片在线无码观看| 日韩精品中文字幕一区三区| 免费激情网站| 中文字幕亚洲乱码熟女1区2区| 国产精品久久久免费视频| 亚洲成在人线av品善网好看| 国产麻豆永久视频| 国产精品开放后亚洲| 啊嗯不日本网站| 国产福利拍拍拍| 99在线视频免费| 亚洲欧美天堂网| 国产亚洲视频免费播放| 国产在线无码av完整版在线观看| 国产日本一区二区三区| 亚洲天堂网视频| 日韩久草视频| 国产精品大白天新婚身材| 亚洲国产理论片在线播放| 亚洲网综合| 色综合天天操| 国产精品大尺度尺度视频|