前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的軟件工程主題范文,僅供參考,歡迎閱讀并收藏。
關(guān)鍵詞:軟件工程;課程群;課程設(shè)計(jì)
中圖分類號(hào):G642 文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1672-5913 (2007) 20-0005-03
軟件工程是計(jì)算機(jī)學(xué)科的重要學(xué)科分支,在本科計(jì)算機(jī)類各專業(yè)中都開設(shè)一些軟件工程的課程,在研究生教學(xué)中,無論是碩士還是博士,都設(shè)置軟件工程的研究方向,開設(shè)高一級(jí)的軟件工程課程。本文中,軟件工程課程群是指包括各層次的軟件工程類課程。另外,軟件工程又是一門發(fā)展非常迅速的學(xué)科,早年在研究生中講述的內(nèi)容現(xiàn)在放在本科中講。因此,這些課程存在定位不明確,課程間內(nèi)容交叉重復(fù)等問題。本文根據(jù)本科生和研究生兩個(gè)層次對(duì)軟件工程類課程的教學(xué)要求,闡述軟件工程課程群的定位、課程設(shè)置、主要課程的知識(shí)單元和知識(shí)點(diǎn)。
1定位
首先分析社會(huì)對(duì)各層次計(jì)算機(jī)專業(yè)學(xué)生在軟件工程方面的知識(shí)和能力要求。我們認(rèn)為計(jì)算機(jī)類本科學(xué)生畢業(yè)后,主要從事計(jì)算機(jī)軟件的開發(fā)工作,他們應(yīng)掌握軟件工程的基本概念、基本原理和基本方法,并能運(yùn)用這些概念、方法、原理,參與和/或從事軟件開發(fā)的某些活動(dòng)(如分析、設(shè)計(jì)、編碼、測(cè)試等)。軟件工程方向的研究生主要著重研究能力的培養(yǎng),畢業(yè)后主要承擔(dān)系統(tǒng)分析員和/或系統(tǒng)設(shè)計(jì)員角色,甚至承擔(dān)項(xiàng)目經(jīng)理的角色,他們應(yīng)掌握軟件工程的研究動(dòng)態(tài),了解軟件工程最新的研究成果,具備有關(guān)軟件的系統(tǒng)分析、構(gòu)架設(shè)計(jì)和軟件項(xiàng)目管理的知識(shí)和能力。
根據(jù)以上分析,我們認(rèn)為,本科生軟件工程課程群應(yīng)以軟件工程的基本概念、基本原理和基本方法為主線,使學(xué)生具備扎實(shí)的軟件工程基本理論知識(shí)、熟練的編程能力、較好的團(tuán)隊(duì)合作能力和實(shí)驗(yàn)?zāi)芰?,同時(shí)具備一定的分析與解決問題能力和創(chuàng)新能力。研究生軟件工程課程群應(yīng)以研究課題為主線,使學(xué)生掌握軟件工程最新的研究動(dòng)態(tài),對(duì)其中若干個(gè)研究方向有深入的了解,具備較強(qiáng)的分析與解決問題能力和創(chuàng)新能力,以及基本的軟件項(xiàng)目組
織和管理能力。
2課程設(shè)置
軟件工程課程群按學(xué)生的層次可分為本科生軟件工程課程群和研究生軟件工程課程群,按課程類別可分為必修課和選修課。
根據(jù)上述定位,本科生軟件工程課程群的必修課包括軟件工程和軟件實(shí)踐,有些學(xué)校在軟件工程課中包括足夠的實(shí)踐時(shí)間,可將它們合并成一門軟件工程課。選修課可根據(jù)各校的特點(diǎn)開設(shè)不同的課程,如面向?qū)ο蟮姆治雠c設(shè)計(jì)、軟件體系結(jié)構(gòu)、基于構(gòu)件的軟件開發(fā)、軟件測(cè)試等,也可將研究生的某些課程作為本科高年級(jí)學(xué)生的選修課。
研究生軟件工程課程群的必修課可包括高級(jí)軟件工程、軟件項(xiàng)目管理和專題討論,其中專題討論沒有固定的教材,它以若干專題(如軟件復(fù)用技術(shù)、模型驅(qū)動(dòng)體系結(jié)構(gòu)、軟件產(chǎn)品線等)的最新論文為主,以報(bào)告和討論的形式進(jìn)行。選修課可根據(jù)導(dǎo)師的研究方向選擇合適的課程,如需求工程、軟件過程、形式方法等。
3教學(xué)內(nèi)容
本節(jié)參照國外相關(guān)的資料,結(jié)合我們多年的教學(xué)實(shí)踐,給出軟件工程課程群中各必修課的知識(shí)單元。
3.1軟件工程(本科生)
本科軟件工程課程的內(nèi)容應(yīng)覆蓋教育部計(jì)算機(jī)科學(xué)與技術(shù)教學(xué)指導(dǎo)委員會(huì)制訂的計(jì)算機(jī)科學(xué)與技術(shù)本科專業(yè)規(guī)范(計(jì)算機(jī)科學(xué)方向)中有關(guān)軟件工程的主要知識(shí)單元,該課程以軟件工程的基本概念、基本原理和基本方法為主,著重國內(nèi)比較流行的結(jié)構(gòu)化分析與設(shè)計(jì)方法、面向?qū)ο蠓治雠c設(shè)計(jì)方法和常規(guī)的軟件測(cè)試方法。同時(shí)對(duì)一些較新的軟件開發(fā)模型、方法和技術(shù)(如基于構(gòu)件的軟件開發(fā)模型和方法、敏捷開發(fā)方法、CMM&CMMI、Web工程等)做簡單的介紹,以便學(xué)生今后自學(xué)。
3.2軟件實(shí)踐(本科生)
該課程是本科軟件工程課程的一門后繼實(shí)驗(yàn)課,以某種軟件開發(fā)方法(如面向?qū)ο蠓椒?和軟件過程(如統(tǒng)一軟件過程RUP)為基礎(chǔ),引導(dǎo)學(xué)生完成一個(gè)完整的軟件項(xiàng)目開發(fā)全過程,包括需求獲取、需求分析、系統(tǒng)設(shè)計(jì)、實(shí)現(xiàn)以及測(cè)試等基本步驟。該課程主要培養(yǎng)學(xué)生的分析與解決問題能力、團(tuán)隊(duì)合作能力、實(shí)驗(yàn)?zāi)芰蛣?chuàng)新能力
3.3高級(jí)軟件工程(研究生)
該課程選擇當(dāng)今軟件工程研究的熱點(diǎn)課題作為主要內(nèi)容,其知識(shí)單元可包括:基于構(gòu)件的軟件工程、軟件產(chǎn)品線、軟件體系結(jié)構(gòu)、模型驅(qū)動(dòng)體系結(jié)構(gòu)(MDA)、面向方面程序設(shè)計(jì)(AOP)、需求工程、面向?qū)ο鬁y(cè)試技術(shù)、逆向工程和再工程、Agent技術(shù)、形式方法、高可信軟件,開源軟件等。值得注意的是,在一門高級(jí)軟件工程課程中很難詳細(xì)介紹上述所有的內(nèi)容,各??筛鶕?jù)自己的特點(diǎn)和研究方向,選擇幾個(gè)(以3~5個(gè)為宜)知識(shí)單元作重點(diǎn)介紹,對(duì)其他知識(shí)單元可只做簡單的介紹。
下面給出幾個(gè)知識(shí)單元所包含的知識(shí)點(diǎn)。
基于構(gòu)件的軟件工程(CBSE)主要包括:CBSE基本概念,軟件構(gòu)件規(guī)格說明,構(gòu)件模型,基于構(gòu)件的開發(fā)過程,基于構(gòu)件開發(fā)的語義完整性,構(gòu)件組裝和集成,預(yù)測(cè)系統(tǒng)的可信度,軟件產(chǎn)品線體系結(jié)構(gòu)中的構(gòu)件,商用第三方構(gòu)件(COTS)及構(gòu)件獲取技術(shù),基于構(gòu)件的軟件體系結(jié)構(gòu),基于構(gòu)件軟件的測(cè)試與質(zhì)量保證,構(gòu)件的可變性機(jī)制,軟件構(gòu)件庫,構(gòu)件交易,構(gòu)件描述與檢索等。
軟件產(chǎn)品線(SPL)主要包括:軟件產(chǎn)品線的基本概念,軟件產(chǎn)品線的基本活動(dòng)(核心資產(chǎn)開發(fā),產(chǎn)品開發(fā),管理),領(lǐng)域工程與應(yīng)用系統(tǒng)工程,SPL經(jīng)濟(jì)學(xué),軟件產(chǎn)品線實(shí)踐域,軟件產(chǎn)品線實(shí)踐模式,產(chǎn)品線組裝,基于產(chǎn)品線的應(yīng)用系統(tǒng)開發(fā)技術(shù)等。
軟件體系結(jié)構(gòu)主要包括:軟件體系結(jié)構(gòu)的原則和實(shí)踐,體系結(jié)構(gòu)框架/方法,體系結(jié)構(gòu)模型與MDA,集成框架,軟件體系結(jié)構(gòu)設(shè)計(jì)與分析,體系結(jié)構(gòu)風(fēng)格,軟件體系結(jié)構(gòu)文檔,軟件體系結(jié)構(gòu)評(píng)估與確認(rèn),面向服務(wù)體系結(jié)構(gòu)(SOA),體系結(jié)構(gòu)模式,企業(yè)體系結(jié)構(gòu)等。
模型驅(qū)動(dòng)體系結(jié)構(gòu)(MDA)主要包括:MDA基本概念,MDA規(guī)格說明,MDA模型(CIM,PIM,PSM),模型轉(zhuǎn)換,模型語言(如可執(zhí)行的UML,對(duì)象約束語言O(shè)CL等),元建模,MDA過程,領(lǐng)域建模,系統(tǒng)模型,平臺(tái)無關(guān)建模,平臺(tái)特定的實(shí)現(xiàn)等。
3.4軟件項(xiàng)目管理(研究生)
該課程的知識(shí)單元包括:綜合管理,范圍管理,時(shí)間管理,成本管理,質(zhì)量管理,人力資源管理,溝通管理,風(fēng)險(xiǎn)管理,采購管理,敏捷項(xiàng)目管理,外包管理,軟技能等。下面給出其中若干個(gè)知識(shí)單元所包含的知識(shí)點(diǎn)。
綜合管理:項(xiàng)目,項(xiàng)目范圍陳述,項(xiàng)目管理計(jì)劃(編制過程,內(nèi)容),項(xiàng)目執(zhí)行的管理,項(xiàng)目評(píng)價(jià),項(xiàng)目的監(jiān)督和控制,集成的變更控制,實(shí)施報(bào)告,配置管理,關(guān)閉項(xiàng)目。
范圍管理:啟動(dòng)過程,項(xiàng)目選擇方法,項(xiàng)目合同,范圍管理計(jì)劃(編制過程,范圍陳述,范圍定義),創(chuàng)建WBS,范圍驗(yàn)證過程,范圍蔓延,范圍變更控制過程,目標(biāo)管理(MBO),影響曲線。
時(shí)間管理:活動(dòng)定義過程,活動(dòng)排序過程,圖示方法(優(yōu)先圖示方法(PDM),箭頭圖示方法(ADM),條件圖示方法,圖形評(píng)價(jià)和評(píng)審技術(shù)(GERT), 項(xiàng)目網(wǎng)絡(luò)圖,關(guān)鍵路徑方法(CPM),計(jì)劃評(píng)價(jià)和評(píng)審技術(shù)(PERT)等),PERT對(duì)CPM的估算,活動(dòng)資源估算,活動(dòng)持續(xù)時(shí)間估算,估算工具,進(jìn)度表開發(fā)過程,進(jìn)度控制過程,凈價(jià)值術(shù)語和公式。
成本管理:資源計(jì)劃編制過程,成本估算(術(shù)語,過程,COCOMO模型,工具),成本管理計(jì)劃,成本預(yù)算過程,成本基線,項(xiàng)目投資需求,成本控制過程,實(shí)施度量,預(yù)測(cè)完成,凈價(jià)值術(shù)語和公式。
質(zhì)量管理:質(zhì)量計(jì)劃編制過程,質(zhì)量保證計(jì)劃,過程改進(jìn)計(jì)劃,質(zhì)量保證過程,質(zhì)量控制過程,統(tǒng)計(jì)質(zhì)量控制(SQC),質(zhì)量改進(jìn)過程。
人力資源管理:人力資源計(jì)劃編制,組織計(jì)劃編制,項(xiàng)目管理中人的因素,責(zé)任委派矩陣,獲取項(xiàng)目組,員工獲取過程,項(xiàng)目管理者的角色和責(zé)任,項(xiàng)目組(建造過程),小組動(dòng)力,管理項(xiàng)目組,角色與責(zé)任,領(lǐng)導(dǎo)風(fēng)格,能力類型,沖突管理,6動(dòng)機(jī)理論,小組性能估算,管理知識(shí)員工。
溝通管理:溝通計(jì)劃編制,溝通管理計(jì)劃,信息分發(fā),溝通模型,溝通風(fēng)格,溝通方法,溝通鏈接規(guī)則,溝通障礙,溝通技巧,績效報(bào)告,管理涉眾,管理收尾。
風(fēng)險(xiǎn)管理:風(fēng)險(xiǎn)管理計(jì)劃編制,實(shí)用方法,風(fēng)險(xiǎn)標(biāo)識(shí),風(fēng)險(xiǎn)分析(定性分析,可能性與風(fēng)險(xiǎn)影響,定量分析,靈敏性分析,決策樹分析,預(yù)期貨幣價(jià)值,概率方法),風(fēng)險(xiǎn)響應(yīng)(計(jì)劃編制,工具與技術(shù)),可保險(xiǎn)風(fēng)險(xiǎn),風(fēng)險(xiǎn)監(jiān)督與控制過程,影響曲線。
采購管理:采購計(jì)劃編制,購買和獲取計(jì)劃,合同計(jì)劃,成本補(bǔ)償合同,固定價(jià)格合同,工作陳述,申請(qǐng)計(jì)劃編制過程,請(qǐng)求供方響應(yīng),申請(qǐng)過程,供方選擇,源選擇過程,談判,合同,合同管理,合同變更控制,合同收尾。
敏捷項(xiàng)目管理:Agile宣言和原則,迭代與演化開發(fā),產(chǎn)品業(yè)主,敏捷管理需求,敏捷估算與計(jì)劃編制,敏捷設(shè)計(jì),敏捷文檔,敏捷軟件構(gòu)造,敏捷編程,人員管理問題,敏捷質(zhì)量保證,敏捷項(xiàng)目管理,項(xiàng)目評(píng)審,敏捷度量。
外包管理:識(shí)別全球業(yè)務(wù)機(jī)遇,組織模型與商業(yè)策略,全球項(xiàng)目的特征和挑戰(zhàn),全球項(xiàng)目經(jīng)理的技能,國際及多種文化的交融,IP保護(hù)與其他法律方面,采購道德規(guī)范,道德規(guī)范法規(guī),試驗(yàn)計(jì)劃,風(fēng)險(xiǎn)管理,軟件過程與實(shí)踐的改進(jìn),建立團(tuán)隊(duì),需求管理及客戶/供應(yīng)商關(guān)系,開發(fā)方法學(xué),全球軟件開發(fā)(GSD)與全球軟件工程(GSE),溝通、協(xié)調(diào)和協(xié)作,離岸項(xiàng)目的管理,克服距離和時(shí)間,文化交叉的處理,全球項(xiàng)目的安全問題,全球項(xiàng)目收尾,從業(yè)人員教育培訓(xùn)及知識(shí)管理。
軟技能:領(lǐng)導(dǎo)能力,批判性思考,職業(yè)道德規(guī)范,自我激勵(lì),誠實(shí),小組工作,風(fēng)險(xiǎn)捕獲,適應(yīng)性,人際關(guān)系,工作壓力承受、壓力管理,創(chuàng)造性,影響力,研究能力,問題解決能力,組織能力,多文化處理能力,學(xué)習(xí)能力,時(shí)間管理,口頭溝通,文字溝通,細(xì)心周到。
4小結(jié)
本文介紹了軟件工程課程群的設(shè)計(jì),在具體實(shí)施時(shí),可根據(jù)各校的特點(diǎn),對(duì)上述課程設(shè)置、知識(shí)單元、知識(shí)點(diǎn)進(jìn)行裁剪。下一步將繼續(xù)完善各課程的知識(shí)單元和知識(shí)點(diǎn),為軟件工程課程群建設(shè)打好基礎(chǔ)。
參考文獻(xiàn)
[1] 教育部高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)教學(xué)指導(dǎo)委員會(huì). 計(jì)算機(jī)科學(xué)與技術(shù)本科專業(yè)規(guī)范[M]. 北京:高等教育出版社,2006 .
作者簡介
錢樂秋(1942-),男,復(fù)旦大學(xué)計(jì)算機(jī)科學(xué)與工程系教授,博士生導(dǎo)師,主要研究方向?yàn)檐浖こ獭?/p>
關(guān)鍵詞:軟件工程;綜合實(shí)踐;軟件過程;迭代開發(fā)
為了提高軟件工程人才培養(yǎng)的水平,增強(qiáng)學(xué)生的實(shí)踐能力,文獻(xiàn)[1]基于建構(gòu)主義認(rèn)知學(xué)說提出了一種創(chuàng)新的人才培養(yǎng)模式。該培養(yǎng)模式的特點(diǎn)是在第6―7學(xué)期引入長周期的綜合實(shí)訓(xùn)。為便于實(shí)施,該綜合實(shí)訓(xùn)可按學(xué)期分成兩段。其中第6學(xué)期的實(shí)訓(xùn)為期20周,如何開展全面的軟件工程過程實(shí)踐,是本文要探討的對(duì)象。此實(shí)訓(xùn)將部分原在課堂講授的理論課貫穿在實(shí)訓(xùn)中講解,并要求學(xué)生以小組為單位完成軟件開發(fā)項(xiàng)目,從而理解和掌握軟件開發(fā)過程與技術(shù)。為有效開展此實(shí)訓(xùn),本文依據(jù)現(xiàn)有軟件過程理論和經(jīng)驗(yàn),對(duì)實(shí)訓(xùn)中的軟件過程進(jìn)行探討。
1概念與研究的必要性
軟件開發(fā)過程是指在工業(yè)化環(huán)境(如軟件公司、大型軟件開發(fā)團(tuán)隊(duì))開發(fā)軟件的有先后順序的一系列活動(dòng)。它是將各種軟件技術(shù)組織在一起的粘合劑,是合理高效開發(fā)軟件產(chǎn)品的保證[2]。對(duì)軟件過程的描述,往往包括過程模型、活動(dòng)、角色、制品等方面。
軟件工程綜合實(shí)訓(xùn)課程的目的是為了讓學(xué)生熟悉軟件開發(fā)過程,掌握軟件開發(fā)技術(shù),增強(qiáng)實(shí)際動(dòng)手能力。它與實(shí)際軟件開發(fā)有以下幾點(diǎn)不同:
1) 目標(biāo)不同。前者以培養(yǎng)學(xué)生為目標(biāo),后者以生產(chǎn)軟件為目標(biāo)。
2) 實(shí)踐主體不同。前者為學(xué)生,后者為工作者。
3) 環(huán)境不同。前者在學(xué)校的模擬環(huán)境進(jìn)行,后者處于具體的軟件開發(fā)環(huán)境。
這意味著實(shí)訓(xùn)教學(xué)中應(yīng)該采用接近實(shí)際的軟件開發(fā)過程,但又不能完全照搬實(shí)際過程。這是我們必須探討綜合實(shí)訓(xùn)軟件開發(fā)過程的原因。以下從軟件開發(fā)過程模型、過程角色、主要活動(dòng)及對(duì)學(xué)生的考核等幾方面對(duì)軟件工程綜合實(shí)訓(xùn)的軟件開發(fā)過程進(jìn)行討論。
2綜合實(shí)訓(xùn)的軟件過程模型
歷史上,出現(xiàn)過多種軟件過程模型,但大致可分為線性模型和迭代模型兩類。線性模型也稱瀑布模型,已被實(shí)踐證實(shí)不能適應(yīng)需求變化的場景。迭代模型認(rèn)為軟件開發(fā)是一個(gè)反復(fù)的過程,比較符合軟件復(fù)雜、易變的本質(zhì),是當(dāng)今軟件開發(fā)的主流思想。
在考慮實(shí)訓(xùn)教學(xué)軟件過程模型的選取時(shí),應(yīng)以簡單易行、便于軟件技術(shù)學(xué)習(xí)、便于軟件過程理解為出發(fā)點(diǎn)。單從簡單易行的角度,采用瀑布模型比較有吸引力。瀑布模型的步驟和章法清晰,教學(xué)組織方便。但是,如果使用瀑布模型,對(duì)迭代過程的介紹只能停留在口頭上,學(xué)生無法從實(shí)踐中領(lǐng)會(huì)這一重要的過程思想。瀑布模型是一次性完成需求描述,然后做全面
設(shè)計(jì)。這不利于由淺入深、循序漸進(jìn)地掌握軟件架構(gòu)、設(shè)計(jì)和編碼方面的技術(shù)。如果采用迭代式模型,雖會(huì)令實(shí)訓(xùn)的組織和管理變得復(fù)雜,但既可以領(lǐng)會(huì)瀑布模型的章法,也可以克服瀑布模型的弊端。對(duì)于本文所針對(duì)的長達(dá)一個(gè)學(xué)期的綜合實(shí)訓(xùn),其教學(xué)目標(biāo)是多維和綜合的,既要在過程中傳授顯性知識(shí),也要通過過程組織和實(shí)踐指導(dǎo)傳遞隱性知識(shí)。如采用瀑布模型,會(huì)將開發(fā)過程理想化,而使很多隱性知識(shí)和實(shí)踐經(jīng)驗(yàn)難以傳播。因此長周期的綜合實(shí)訓(xùn)采用迭代式過程模型更合理。
按照有關(guān)迭代開發(fā)經(jīng)驗(yàn)[3],對(duì)于小型項(xiàng)目,以3周為一次迭代較合適。我們決定將20周的實(shí)訓(xùn)分為開始1周、結(jié)束1周、中間6次迭代18周。各次迭代的目標(biāo)如表1所示。
表中,迭代1的任務(wù)是發(fā)掘和初步表述系統(tǒng)的主要需求,并設(shè)計(jì)系統(tǒng)原型;迭代2要完成系統(tǒng)的主要功能,約占全部功能的30%~40%;迭代3完成系統(tǒng)的全部功能;迭代4對(duì)系統(tǒng)架構(gòu)進(jìn)行優(yōu)化,增加業(yè)務(wù)邏輯層;迭代5進(jìn)一步優(yōu)化系統(tǒng)架構(gòu),增加數(shù)據(jù)讀寫層;跌代6使用現(xiàn)有框架對(duì)系統(tǒng)進(jìn)行重構(gòu)。
在實(shí)際的軟件開發(fā)過程中,早期迭代要著重于影響架構(gòu)的功能和性能需求的實(shí)現(xiàn),從而一開始就為系統(tǒng)選擇合理的架構(gòu)。但在實(shí)訓(xùn)教學(xué)中,按由淺入深的教學(xué)規(guī)律,在學(xué)生具備一定的開發(fā)經(jīng)驗(yàn)后引入架構(gòu)設(shè)計(jì)知識(shí)。因此,前幾次迭代較少涉及架構(gòu)設(shè)計(jì)的細(xì)節(jié),所完成的軟件在架構(gòu)方面是不成熟的。在后幾次迭代中,通過對(duì)代碼的重構(gòu)逐漸完成軟件架構(gòu)的優(yōu)化,從而讓學(xué)生牢牢樹立架構(gòu)設(shè)計(jì)的理念。這是實(shí)訓(xùn)軟件過程與實(shí)際軟件過程的區(qū)別。
上述各次迭代的目標(biāo),也是系統(tǒng)開發(fā)的里程碑。教師檢查各次迭代提交制品的同時(shí),也考核了學(xué)生團(tuán)隊(duì)的成績。
3綜合實(shí)訓(xùn)過程中的角色
基于文獻(xiàn)[4]及文獻(xiàn)[5]的思想,軟件工程綜合實(shí)訓(xùn)學(xué)生團(tuán)隊(duì)?wèi)?yīng)設(shè)置對(duì)等角色。即每個(gè)小組成員擔(dān)任一種角色,負(fù)責(zé)一個(gè)方面的工作,同時(shí)又是其他成員所負(fù)責(zé)工作的參與者。這既是實(shí)際開發(fā)團(tuán)隊(duì)的做法,也最適合學(xué)生的學(xué)習(xí)。
考慮到項(xiàng)目規(guī)模較小,實(shí)訓(xùn)時(shí)間較長,一個(gè)小組人數(shù)不宜過多。以5人一組,分別扮演組長、開發(fā)經(jīng)理、計(jì)劃經(jīng)理、測(cè)試經(jīng)理、技術(shù)支持經(jīng)理等角色,各角色職責(zé)主要為[4]:
1) 組長:負(fù)責(zé)小組建設(shè),讓小組成員有共同的目標(biāo)和項(xiàng)目愿景,激勵(lì)士氣,維持紀(jì)律,安排任務(wù),主持每周小組例會(huì)、成員互評(píng)等。
2) 開發(fā)經(jīng)理:主持小組開發(fā)工作,包括需求、分析與設(shè)計(jì)、實(shí)現(xiàn)等過程。
3) 計(jì)劃經(jīng)理:負(fù)責(zé)帶領(lǐng)小組制訂項(xiàng)目計(jì)劃和迭代計(jì)劃,督促各成員按要求完成工作日志,制訂項(xiàng)目周計(jì)劃,整理項(xiàng)目周報(bào),對(duì)計(jì)劃進(jìn)行跟蹤,在例會(huì)或計(jì)劃會(huì)議上通報(bào)項(xiàng)目進(jìn)度。
4) 測(cè)試經(jīng)理:負(fù)責(zé)測(cè)試計(jì)劃的制訂,編寫測(cè)試用例,組織測(cè)試實(shí)施及管理,組織每日集成測(cè)試。
5) 技術(shù)支持經(jīng)理:組織執(zhí)行配置管理、變更控制、數(shù)據(jù)庫管理及風(fēng)險(xiǎn)管理,培訓(xùn)本組成員正確使用工具軟件,督促每日代碼簽入、簽出。
上述角色職責(zé)涉及的各種活動(dòng),詳見第4節(jié)說明。指導(dǎo)教師在實(shí)訓(xùn)中的角色是代表客戶方提出對(duì)系統(tǒng)的要求,同時(shí)也是學(xué)生開發(fā)活動(dòng)的指導(dǎo)者和監(jiān)督者。
在實(shí)際的軟件開發(fā)過程中,團(tuán)隊(duì)成員的角色在一個(gè)項(xiàng)目中是固定的。但在實(shí)訓(xùn)過程中,為了讓學(xué)生得到更全面的訓(xùn)練,可規(guī)定每兩次迭代交換角色一次。這樣在整個(gè)實(shí)訓(xùn)中,每人都可以擔(dān)任三種不同的角色。這是實(shí)訓(xùn)過程不同于實(shí)際過程的地方。
4綜合實(shí)訓(xùn)過程的主要活動(dòng)及制品
依據(jù)文獻(xiàn)[4]和文獻(xiàn)[6],將學(xué)生在綜合實(shí)訓(xùn)中的活動(dòng)領(lǐng)域分為兩大類,一類是核心開發(fā)域,包括業(yè)務(wù)分析、需求、分析與設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試、部署等;一類是核心支持域,包括團(tuán)隊(duì)管理、計(jì)劃管理、配置管理、環(huán)境支撐等。各活動(dòng)域的活動(dòng)種類、制品及負(fù)責(zé)角色如表2所示,共有約30種活動(dòng)。
上述活動(dòng)涉及很多學(xué)生尚不了解的知識(shí)。對(duì)于其中適合講授的顯性知識(shí),由專題主講老師在過程中集中講授;對(duì)于可以通過實(shí)踐過程習(xí)得的隱性知識(shí),通過實(shí)訓(xùn)指導(dǎo)書對(duì)有關(guān)活動(dòng)的規(guī)范和引導(dǎo),讓學(xué)生在活動(dòng)中領(lǐng)悟。需要集中講授的知識(shí)可以分成以下幾個(gè)模塊:
1) 項(xiàng)目輔導(dǎo)。介紹有關(guān)小組建設(shè)、小組溝通、工作理念、計(jì)劃管理等方面的知識(shí),對(duì)開發(fā)過程的紀(jì)
律、工作程序、會(huì)議等作具體的指導(dǎo)。
2) 軟件開發(fā)過程。主要介紹軟件開發(fā)統(tǒng)一過程(RUP),包括迭代開發(fā)方法,各種開發(fā)活動(dòng)、角色及制品的含義,配置管理及風(fēng)險(xiǎn)管理等。
3) 數(shù)據(jù)庫管理。結(jié)合項(xiàng)目和實(shí)訓(xùn)環(huán)境指導(dǎo)學(xué)生設(shè)計(jì)和管理大型關(guān)系型數(shù)據(jù)庫。
4) 軟件測(cè)試。結(jié)合項(xiàng)目介紹各種測(cè)試活動(dòng)的要求、內(nèi)容和組織實(shí)施辦法。
5) 系統(tǒng)分析與設(shè)計(jì)。介紹面向?qū)ο蟮目梢暬7椒?、軟件架?gòu)設(shè)計(jì)、模式應(yīng)用等方面的知識(shí)。
6) 程序設(shè)計(jì)技術(shù)。介紹完成項(xiàng)目所需要的程序設(shè)計(jì)技術(shù)。包括Web應(yīng)用開發(fā)、多層體系架構(gòu)的實(shí)現(xiàn)、測(cè)試驅(qū)動(dòng)的開發(fā)、應(yīng)用程序框架設(shè)計(jì)與應(yīng)用等內(nèi)容。
在開展項(xiàng)目過程中,講授也是重要的環(huán)節(jié),這也是本實(shí)訓(xùn)過程與實(shí)際過程的不同之處。
5考核方式
作為一項(xiàng)教學(xué)活動(dòng),必須對(duì)學(xué)生學(xué)習(xí)情況進(jìn)行考核并給出成績。由于該實(shí)訓(xùn)長達(dá)一學(xué)期,理論課學(xué)時(shí)較多,所對(duì)應(yīng)的學(xué)分也較多。如果采用一次性考核,顯然操作難度很大,也不利于在過程中發(fā)現(xiàn)問題,激勵(lì)學(xué)生。因此,本實(shí)訓(xùn)最適合分階段考核,即對(duì)每次迭代進(jìn)行考核,成績由三部分組成:一是本次迭代過程有關(guān)理論知識(shí)掌握,占40%,采用筆試方式考核;二是工作成果,占30%,以測(cè)試迭代產(chǎn)生的結(jié)果為依據(jù);三是工作表現(xiàn),占30%,通過統(tǒng)計(jì)考勤、學(xué)生互評(píng)及老師評(píng)價(jià)得到。每兩次迭代完成,學(xué)生交換角色前,要求每位學(xué)生提交所擔(dān)任角色工作的總結(jié)報(bào)告,作為單獨(dú)的角色考核。由于角色是任選的,此考核學(xué)分可作為選修學(xué)分記入成績表。
6結(jié)語
由于實(shí)訓(xùn)與實(shí)際軟件開發(fā)不同,實(shí)訓(xùn)軟件過程不能照搬實(shí)際開發(fā)過程。為了與當(dāng)代流行的軟件開發(fā)過程一致,也為了能循序漸進(jìn)地教學(xué),在實(shí)訓(xùn)中選擇迭代式開發(fā)模型。項(xiàng)目小組的成員依次承擔(dān)多種角色,并產(chǎn)生相應(yīng)的制品。實(shí)訓(xùn)的考核以迭代為單位進(jìn)行。按照這樣的過程開展本文所述約30項(xiàng)實(shí)訓(xùn)活動(dòng),必將提高學(xué)生對(duì)軟件工程知識(shí)的認(rèn)識(shí)和實(shí)際的動(dòng)手能力。
參考文獻(xiàn):
[1] 鄭大鵬,林國璋,張克軍. 一種創(chuàng)新的獨(dú)立學(xué)院軟件專業(yè)人才培養(yǎng)模式[J]. 計(jì)算機(jī)教育,2010(8):1-3.
[2] Roger S. Pressman. 軟件工程―實(shí)踐者的研究方法[M]. 4版. 北京:機(jī)械工業(yè)出版社,1999:22-49.
[3] Craig Larman. UML和模式應(yīng)用[M]. 3版. 北京:機(jī)械工業(yè)出版社,2008:13-20.
[4] Watts S. Humphrey. 小組軟件開發(fā)過程[M]. 北京:人民郵電出版社,2000:163-225.
[5] 微軟公司. MSF Team Model v.3.1[EB/OL]. [2010-11-06]. /msf:17-19.
[6] Ivar Jacobson,Grady Booch,James Rumbaugh. 統(tǒng)一軟件開發(fā)過程[M]. 北京:機(jī)械工業(yè)出版社,2002:3-11.
On Software Process of Software Engineering Comprehensive Training
ZHENG Dapeng, XIAO Youqing, ZHANG Xiaoyan, ZHANG Shenyong
(Zhuhai Campus, Beijing Institute of Technology, Zhuhai 519085, China)
軟件開發(fā)項(xiàng)目的順利實(shí)施需要規(guī)范的管理體系進(jìn)行必要的指導(dǎo)與約束,而就目前的軟件質(zhì)量管理管理與規(guī)范情況來看,缺乏經(jīng)驗(yàn)豐富的管理人員,缺乏合理到位的監(jiān)督與規(guī)范體系,對(duì)于軟件質(zhì)量上的審查不到位,此外管理模式上的漏洞也成為質(zhì)量監(jiān)管的限制因素。整個(gè)軟件質(zhì)量監(jiān)管不到位,軟件質(zhì)量得不到保證,直接影響到軟件工程的標(biāo)準(zhǔn)化。
2軟件工程標(biāo)準(zhǔn)化的可行性措施分析
2.1吸取國外先進(jìn)經(jīng)驗(yàn),實(shí)現(xiàn)與國家研發(fā)接軌針對(duì)我國軟件工程研制起步晚的現(xiàn)狀,我們有必要引進(jìn)先進(jìn)的國家設(shè)計(jì)標(biāo)準(zhǔn)。目前國際上關(guān)于軟件工程的標(biāo)準(zhǔn)性研究不斷深入,許多西方國家制定出比較成熟的軟件工程標(biāo)準(zhǔn),我國可以在借鑒國際先進(jìn)標(biāo)準(zhǔn)成果的基礎(chǔ)上,獲取突破口,加快標(biāo)準(zhǔn)的制定,實(shí)現(xiàn)與國家軟件工程設(shè)計(jì)有效接軌。
2.2加大宣傳,增強(qiáng)對(duì)軟件工程標(biāo)準(zhǔn)化的關(guān)注與理解我國軟件工程之所以很難形成有效的模式標(biāo)準(zhǔn),其中最關(guān)鍵的原因是先入為主的用戶使用習(xí)慣。在使用軟件的過程中,用戶更多地受先入為主思想的影響,根據(jù)自身對(duì)軟件的使用情況來選取對(duì)應(yīng)的使用標(biāo)準(zhǔn),從而忽視了各個(gè)標(biāo)準(zhǔn)軟件工程內(nèi)在的聯(lián)系性與互補(bǔ)性。針對(duì)該現(xiàn)狀首先應(yīng)該加大宣傳,幫助用戶充分理解軟件工程標(biāo)準(zhǔn)化的概念,深刻把握軟件工程之間的聯(lián)系與互補(bǔ)性,制定比較理想化的軟件工程標(biāo)準(zhǔn)。
2.3培養(yǎng)技術(shù)性人才,有效引薦國外先進(jìn)標(biāo)準(zhǔn)化技術(shù)我國軟件工程標(biāo)準(zhǔn)化研究人員與管理人員相對(duì)不足,在借鑒國外設(shè)計(jì)成果的同時(shí)更應(yīng)該注重國內(nèi)該方面研究人才的培育與發(fā)展,定期組織技術(shù)研討與交流會(huì),開展專題性的研究與探討,充分聽取眾家意見,注重本國特色與實(shí)際,開發(fā)出適合國內(nèi)軟件工程特色的具體軟件標(biāo)準(zhǔn),更好地促進(jìn)我國軟件工程的自主性創(chuàng)新發(fā)展。
2.4及時(shí)發(fā)現(xiàn)問題,及時(shí)修改,完善軟件工程標(biāo)準(zhǔn)化軟件工程的標(biāo)準(zhǔn)化并不是一成不變的,在時(shí)展背景下,在用戶多樣的使用需求下,軟件工程標(biāo)準(zhǔn)也是不斷更新與改進(jìn)的過程。我們對(duì)于軟件工程標(biāo)準(zhǔn)的實(shí)施效果進(jìn)行定期檢測(cè),當(dāng)發(fā)現(xiàn)其中的問題時(shí)第一時(shí)間分析與修改,對(duì)于其中存在的缺陷性問題進(jìn)行整合,針對(duì)存在的問題改進(jìn)標(biāo)準(zhǔn)化,以此類推,完善軟件工程的標(biāo)準(zhǔn)化。
3結(jié)束語
【關(guān)鍵詞】軟件工程;特點(diǎn)需求;開發(fā)維護(hù)
文章編號(hào):ISSN1006―656X(2015)01-0079-02
一、軟件工程概述
軟件軟件工程是應(yīng)用計(jì)算機(jī)科學(xué)、數(shù)學(xué)、邏輯學(xué)及管理科學(xué)等原理,開發(fā)軟件的工程,研究和應(yīng)用如何以系統(tǒng)性的、規(guī)范化的、可定量的過程化方法去開發(fā)和維護(hù)軟件,以及如何把經(jīng)過時(shí)間考驗(yàn)而證明正確的,管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來。軟件工程之所以被如此重視,主要是因?yàn)樗梃b可以傳統(tǒng)工程的方法,在此基礎(chǔ)上實(shí)現(xiàn)提高質(zhì)量、降低成本和改進(jìn)算法。計(jì)算機(jī)科學(xué)、數(shù)學(xué)用于構(gòu)建模型與算法;工程科學(xué)用于制定規(guī)范、設(shè)計(jì)范型、評(píng)估成本及確定權(quán)衡:管理科學(xué)用于計(jì)劃、資源、質(zhì)量、成本等管理。
計(jì)算機(jī)軟件工程是一門研究用工程化方法構(gòu)建和維護(hù)有效的,實(shí)用的和高質(zhì)量的軟件的學(xué)科。與軟件工程緊密相關(guān)的就是程序設(shè)計(jì)語言、數(shù)據(jù)庫、軟件開發(fā)工具、系統(tǒng)平臺(tái)、標(biāo)準(zhǔn)、設(shè)計(jì)模式等。軟件的應(yīng)用涉及到我們工作學(xué)習(xí)和生活的方方面面,比如我們?nèi)粘I钪薪?jīng)常使用的電子郵件、嵌入式系統(tǒng)、辦公軟件、各類操作系統(tǒng)、網(wǎng)絡(luò)游戲等,還有各個(gè)行業(yè)部門(工業(yè)、農(nóng)業(yè)、銀行、航空、政府部門等)都少不了計(jì)算機(jī)軟件的使用。帶有各種不同功能的軟件被大面積使用,改變了生活和辦公的方式和效率,并有效促進(jìn)了經(jīng)濟(jì)和社會(huì)的發(fā)展。
二、軟件工程的特性
目前,許多產(chǎn)品在設(shè)計(jì)之初把控制設(shè)計(jì)軟件和計(jì)算機(jī)及相關(guān)設(shè)備以某種方式結(jié)合起來,在設(shè)計(jì)過程中,軟件在整個(gè)系統(tǒng)成本中所占的比例越來越高,軟件的特性也影響著產(chǎn)品最終的特性。通常情況下,軟件待處理的問題都是極具復(fù)雜性的,如果沒有考慮到這一點(diǎn)而是把它當(dāng)作是單個(gè)的整體來分析的話就會(huì)加大處理的難度。人們比較習(xí)慣將問題分為不同的區(qū)塊,各區(qū)塊之間有著某種通信關(guān)系。這種模式顯然不能很好解決問題的復(fù)雜性,但可以將問題的復(fù)雜程度得到合理的控制。軟件的設(shè)計(jì)要以現(xiàn)實(shí)條件作為基礎(chǔ)和參考。
現(xiàn)實(shí)生活工作的環(huán)境和對(duì)象是發(fā)展變化的,因此軟件也要適應(yīng)現(xiàn)實(shí)世界的變化并做出相應(yīng)調(diào)整,這樣才能滿足日常需要。此外,軟件在開發(fā)時(shí)應(yīng)該對(duì)未來可能出現(xiàn)的變化做出預(yù)測(cè),同時(shí)在使用過程中還要對(duì)其進(jìn)行不斷更新和完善,這就是為什么幾乎所有的知名軟件都會(huì)定期或不定期的進(jìn)行版本升級(jí)的原因。
三、計(jì)算機(jī)軟件工程的需求分析需求,是一個(gè)常見的計(jì)算機(jī)相關(guān)學(xué)科和領(lǐng)域的專業(yè)訶匯,對(duì)于它的理解有不盡相同
在不同的領(lǐng)域或者不同的部門,需求可以被理解為對(duì)系統(tǒng)提供的服務(wù),或者對(duì)系統(tǒng)進(jìn)行約束的抽象描述;有時(shí),它也被認(rèn)為是對(duì)系統(tǒng)功能進(jìn)行較為詳盡的形式化的描述??傊还茉趺凑f,有一點(diǎn)是最為重要的,就是需求應(yīng)該能夠明顯地反映出客戶,對(duì)軟件系統(tǒng)幫助他們解決問題的需要。計(jì)算軟件需求分析是軟件生存周期中,重要的一步也是最關(guān)鍵的一步,只有通過軟件需求分析才能,把軟件性能和功能的總體概念描述為,具體的軟件需求規(guī)格說明進(jìn)而建立軟件開發(fā)的基礎(chǔ)。軟件需求分析也是一個(gè)不斷認(rèn)識(shí)和逐步的過程,在該過程中能將軟件計(jì)劃階段所確定的,軟件范圍逐步細(xì)化到可詳細(xì)定義的程度,并分析和提出各種不同的軟件元素然后,為這些元素找到可行的解決方法制定軟件的,需求規(guī)格說明不僅是軟件開發(fā)者的任務(wù),而且用戶也起著極其重要的作用。
以軟件工程需求分析管理方法為指導(dǎo),促進(jìn)教育軟件開發(fā)的實(shí)用性軟件工程學(xué)科中,為保證本開發(fā)出的軟件產(chǎn)品和軟件項(xiàng)目被市場接受,滿足客戶實(shí)用需求,在進(jìn)行軟件開發(fā)前,會(huì)通過一定的用戶需求分析管理方法來明確軟件應(yīng)達(dá)到的目標(biāo),對(duì)系統(tǒng)目標(biāo)做出完整、準(zhǔn)確、清晰、具體的要求,保證開發(fā)出的軟件在以需求分析活動(dòng)的受控狀態(tài)下進(jìn)行。同樣,在教育軟件開發(fā)的過程中,應(yīng)以軟件工程需求分析管理方法為指導(dǎo),促進(jìn)教育軟件開發(fā)的實(shí)用性。
1、軟件的使用對(duì)象分析軟件的使用對(duì)象分析,即在軟件在設(shè)計(jì)開發(fā)之前要明確使用軟件的對(duì)象,軟件實(shí)際應(yīng)用的具體環(huán)境。目前,許多學(xué)校普遍反映教育軟件不能滿足教學(xué)需求,局限性很大,比較混亂,在應(yīng)用上存在不少不足之處,教學(xué)也因此受到一定影響。 因此,教育軟件的開發(fā)要深入了解和考慮教材、教師、學(xué)生、環(huán)境等要素,保證教育軟件要適應(yīng)師生共同的需要
2、軟件的性能需求分析良好的軟件性能,是保證教學(xué)有效開展的關(guān)鍵。為了更有效地開發(fā)教育軟件,使其在質(zhì)量、效益、性能等方面有更強(qiáng)的保證,并充分軟件教學(xué)的優(yōu)勢(shì),避免教學(xué)資源的重復(fù)建設(shè)工作,保障教學(xué)功能能夠有計(jì)劃、有步驟地實(shí)施,在軟件開發(fā)前,應(yīng)組織教師、學(xué)生、軟件開發(fā)工程師共同探討,結(jié)合課程體系,教學(xué)目標(biāo)以及教學(xué)質(zhì)量要求,列出對(duì)軟件有各種性能要求的功能,在了解用戶對(duì)軟件的性能需求是什么之后,綜合考慮,從眾多的業(yè)務(wù)中提取出用戶核心的、主要的、急需的性能,進(jìn)一步縮小用戶對(duì)軟件項(xiàng)目或產(chǎn)品提出的需求目標(biāo)和范圍,然后展開具體開發(fā)工作,促進(jìn)開發(fā)的軟件滿足用戶的需求。
3、軟件的輔助教學(xué)目標(biāo)分析盡管教育軟件,在很大程度上能夠提高教學(xué)效果和教學(xué)質(zhì)量,但教育軟件總歸只是一種輔助教學(xué)的工具,并不能完全取代課堂教學(xué)。因此,在軟件開發(fā)之前,應(yīng)合理定位軟件在教學(xué)中,發(fā)揮的作用和所要實(shí)現(xiàn)的輔助教學(xué)目標(biāo),對(duì)所有輔助教學(xué)內(nèi)容重點(diǎn)進(jìn)行歸納概括,總結(jié)相關(guān)的知識(shí)點(diǎn),并實(shí)例的選材上、內(nèi)容的安排、深淺層次的把握上突出特色和重點(diǎn),從而實(shí)現(xiàn)軟件的針對(duì)性開發(fā)。
四、以軟件工程成本控制管理理念為指導(dǎo),促進(jìn)教育軟件開發(fā)的經(jīng)濟(jì)性,軟件工程中普遍溶有工程管理中的成本控制管理理念
教育軟件開發(fā)多數(shù)是非商業(yè)化的開發(fā)模式,部分學(xué)校在軟件建設(shè)資金上存在一定的不足現(xiàn)象,成本控制就顯得愈加重要。因此,在教育軟件開發(fā)中可充分應(yīng)用軟件工程中的成本管理理念,促進(jìn)教育軟件開發(fā)的經(jīng)濟(jì)性。
1、整理用戶需求,估算成本軟件開發(fā)成本估算主要指,軟件開發(fā)過程中所花費(fèi)的工作量及相應(yīng)的代價(jià)。用戶對(duì)軟件的需求與軟件的成本中原材料成本和能源消耗成本密切相關(guān)。因此,在軟件開發(fā)成本估算中,應(yīng)根據(jù)軟件甩戶的需求,確定教學(xué)內(nèi)容分布的層次、基本內(nèi)容框架、交互類型、交互方式,進(jìn)行軟件設(shè)計(jì)方案的技術(shù)評(píng)估,確定軟件開發(fā)所需的構(gòu)件,進(jìn)一步估算軟件成本和進(jìn)行成本效益分析。
2、融入軟件工程軟件復(fù)用管理理念,控制成本軟件復(fù)用(Softwa re Reuse)是將已有軟件的各種有關(guān)知識(shí)用于建立新的軟件,以縮減軟件開發(fā)和維護(hù)費(fèi)用的成本控制方法。在教育軟件開發(fā)的過程中,通過運(yùn)用軟件工程中的軟件復(fù)用管理理念,根據(jù)教育應(yīng)用領(lǐng)域的特征和相似性,對(duì)已有軟件成份的可復(fù)用性進(jìn)行預(yù)測(cè)。當(dāng)已有軟件成份的可復(fù)用價(jià)值得到確認(rèn)后,再開展軟件開發(fā)工作。這樣通過對(duì)已有軟件成份和待開發(fā)軟件成份的優(yōu)化重組,可在深入分析用戶需求基礎(chǔ)上建立可服用的軟件服用管理體系,可以在很大程度上提高軟件開發(fā)的成功率,降低學(xué)校信息化投資的成本,縮短建設(shè)周期。
五、以軟件工程應(yīng)用維護(hù)技術(shù)指導(dǎo),促進(jìn)教育軟件開發(fā)的效益
在軟件工程領(lǐng)域,開發(fā)出的軟件交付用戶使用后,都有一套完整的用戶手指導(dǎo)說明書,對(duì)軟件應(yīng)用過程中的操作方案進(jìn)行詳細(xì)說明,提供維護(hù)服務(wù)辦法和升級(jí)措施。同樣,在教育軟件開發(fā)過程中,也應(yīng)遵循軟件工程學(xué)的原理,保證軟件應(yīng)用階段產(chǎn)生的效益能夠滿足可維護(hù)性的要求。因此,教育軟件的開發(fā)應(yīng)以軟件工程應(yīng)用維護(hù)技術(shù)指導(dǎo),促進(jìn)教育軟件開發(fā)的效益性。
一是適應(yīng)性維護(hù)。適應(yīng)性維護(hù)是軟件在應(yīng)用過程中經(jīng)常會(huì)出現(xiàn)新的系統(tǒng),為促進(jìn)軟件產(chǎn)品在新的環(huán)境下仍能高效使用,應(yīng)常對(duì)軟件進(jìn)行系統(tǒng)改造和更新。
二是完善性維護(hù)。完善性維護(hù)是軟件系統(tǒng)在運(yùn)行中不可避免的會(huì)出現(xiàn)故障和錯(cuò)誤,維護(hù)人員應(yīng)對(duì)系統(tǒng)進(jìn)行必要的完善。對(duì)軟件系統(tǒng)在使用過程中出現(xiàn)的故障進(jìn)行維修,同時(shí),對(duì)軟件使用過程中用戶提出的新的功能及性能要求進(jìn)行擴(kuò)充,保證其應(yīng)用效益。
三是預(yù)防性維護(hù)。預(yù)防性維護(hù)是為避免軟件在使用過程中出現(xiàn)故障而產(chǎn)生維修費(fèi)用,延長軟件的使用壽命而采取的一系列計(jì)劃維護(hù)措施,實(shí)現(xiàn)對(duì)軟件的異狀進(jìn)行早期發(fā)現(xiàn)和早期維護(hù),保證其正常運(yùn)用。
參考文獻(xiàn):
[1]王麗娟:《軟件復(fù)用技術(shù)及其在軟件開發(fā)中的應(yīng)用》,《中山大學(xué)學(xué)報(bào)論壇》2004年第24卷第1期。
[2] 文俊浩,徐玲,楊丹.軟件工程人才培養(yǎng)的實(shí)踐探索[J].中國大學(xué)教育,2005.1:31~32
(一)面向?qū)ο蠓治龅膬?yōu)點(diǎn)
作為現(xiàn)代軟件生產(chǎn)開發(fā)的使用頻率較高的重要技術(shù)之一,面向?qū)ο蠓治霰厝粨碛衅洳豢商娲湍7碌膬?yōu)勢(shì)。以下便列舉幾項(xiàng):一、面向?qū)ο蠓治鲎⒅貙?duì)問題領(lǐng)域的理解和認(rèn)識(shí),有利于問題的解決;二、它靈活方便,能夠在當(dāng)前實(shí)際運(yùn)行分流和分析化的分流之間出現(xiàn)差異時(shí)進(jìn)行調(diào)整以適應(yīng)變化;三、它沒有分裂屬性與專用屬性的服務(wù),而將它們視為統(tǒng)一的整體,更為完整明了;四、它使用對(duì)象之間依賴性最小的自包含分塊進(jìn)行說明和分析,能夠使軟件更為具體深刻易懂,等等。
(二)面向?qū)ο蠓治龅木唧w操作過程
一、繪制生成使用用例圖。用例是能夠在系統(tǒng)會(huì)話中完成的與用戶使用系統(tǒng)行為相關(guān)的事物序列。用例之間存在三種關(guān)系:角色與用例之間的接、用例之間的使用和擴(kuò)展以及通過角色的執(zhí)行來識(shí)別不的用例;二、繪制構(gòu)建系統(tǒng)的靜態(tài)模型。包括類圖、對(duì)象圖等圖形的靜態(tài)模型反映了軟件系統(tǒng)中各種對(duì)象的類型以及彼此間的靜態(tài)關(guān)系,不言而喻,靜態(tài)模型也是以對(duì)象為中心構(gòu)建的,這也是類圖、對(duì)象圖等圖形之間最大的共同點(diǎn);三、繪制構(gòu)建系統(tǒng)的動(dòng)態(tài)模型。事物發(fā)展的過程中總是包含了動(dòng)態(tài)和靜態(tài)兩種過程,動(dòng)靜結(jié)合,二者相互聯(lián)系相輔相成、不可分割。同樣的,面向?qū)ο蠓治鲋杏徐o態(tài)模型,就有動(dòng)態(tài)模型,它保險(xiǎn)系統(tǒng)執(zhí)行時(shí)的各種序列狀態(tài)以及交互關(guān)系表現(xiàn)的系的行為。相對(duì)于靜態(tài)模型對(duì)各種對(duì)象的特點(diǎn)類型的描述,動(dòng)態(tài)模型是對(duì)系統(tǒng)活動(dòng)及動(dòng)態(tài)合作關(guān)系等的描述。
二面向?qū)ο笤O(shè)計(jì)
面向?qū)ο笤O(shè)計(jì)獨(dú)立于編程語言描述軟件設(shè)計(jì),同樣是靈活而又便利的。它建立在對(duì)“面向?qū)ο蟆钡纳钊肴胬斫夂驼J(rèn)識(shí)的基礎(chǔ)之上,解決類與互相通信的對(duì)象之間的組織關(guān)系,它與面向?qū)ο蠓治鲋g具有同樣的概念、原則和表示方法,二者相輔相成,不可分割和剝離。面向?qū)ο笤O(shè)計(jì)的具體過程如下:(1)對(duì)象行為和對(duì)象間交互作用的進(jìn)一步細(xì)化。(2)用例的設(shè)計(jì)和實(shí)現(xiàn)。在面向?qū)ο蠓治鲋猩墒褂糜美龍D的操作和步驟讓我們對(duì)用例有了一定的了解,然而那只是從系統(tǒng)的外部展現(xiàn)系統(tǒng)的功能,并不全面。作為一種完善和補(bǔ)充,面向?qū)ο笤O(shè)計(jì)中的用例設(shè)計(jì)實(shí)現(xiàn)了系統(tǒng)內(nèi)部的對(duì)象與外部功能相互作用和適應(yīng)配合。(3)細(xì)化分析階段的交互圖、狀態(tài)圖、活動(dòng)圖。(4)確定系統(tǒng)可重用的類或部件。(5)用構(gòu)件圖描述代碼部件的物理構(gòu)及相互之間的依賴關(guān)系。(6)用配置圖描述軟硬件的物理系結(jié)構(gòu)。面向?qū)ο蠓治鍪侵苯拥貙?duì)問題領(lǐng)域進(jìn)行觀察、分析,使系統(tǒng)能夠直接映射出問題領(lǐng)域,維持問題領(lǐng)域中對(duì)象的完整性與真實(shí)性,而面向?qū)ο笤O(shè)計(jì)則對(duì)面向?qū)ο笤O(shè)計(jì)所作出的對(duì)象模型進(jìn)行抽象化和歸納化,生成直觀的歸納性的圖形,使對(duì)象模型得以概括和升華。從這個(gè)角度來看,面向?qū)ο笤O(shè)計(jì)是數(shù)據(jù)的細(xì)化和抽象化過程,是面向?qū)ο筌浖こ谭椒ㄖ兄匾墓ぞ吆头椒ā?/p>
三總結(jié)
【關(guān)鍵詞】軟件;軟件開發(fā);工程;文檔;生存周期;維護(hù)
1.前言
1.1 軟件開發(fā)的規(guī)范化工程化
隨著計(jì)算機(jī)技術(shù)、信息技術(shù)、多媒體技術(shù)、網(wǎng)絡(luò)技術(shù)、通信技術(shù)等的發(fā)展,各行各業(yè)的眾多工作越來越依賴計(jì)算機(jī)的應(yīng)用,一方面使社會(huì)對(duì)軟件產(chǎn)品的需求量增大。另一方面計(jì)算機(jī)軟件產(chǎn)品在投入使用過程中,軟件程序在運(yùn)行時(shí)發(fā)現(xiàn)錯(cuò)誤要設(shè)法改正;用戶有了新的需求時(shí)要對(duì)程序做相應(yīng)的修改;硬件系統(tǒng)或系統(tǒng)軟件(主要是操作系統(tǒng))的更新修改程序發(fā)適應(yīng)新的工作環(huán)境。以上種種工作都對(duì)軟件開發(fā)和軟件維護(hù)提出要規(guī)范化工程化工作,
1.2 規(guī)范化工程化的目標(biāo)
特別是軟件生產(chǎn)及維護(hù)進(jìn)入規(guī)范化工程化的軟件工程時(shí)代,任何參加這些軟件工程的人員,要在工程項(xiàng)目的總體要求和技術(shù)規(guī)范的約束下開展工作。組織實(shí)施軟件工程項(xiàng)目,從技術(shù)各管理上采取了措施使在軟件開發(fā)達(dá)到以下主要的目標(biāo):生產(chǎn)成本較低、軟件功能達(dá)標(biāo)、軟件性能較好、軟件易于移植、維護(hù)費(fèi)用低、按時(shí)完成開發(fā)工作。為了達(dá)到這樣的目標(biāo),特別要重視文字資料工作即軟件文檔。
1.3 軟件文檔的概念
軟件文檔(document)也稱文件,通常指的是一些記錄的數(shù)據(jù)和數(shù)據(jù)媒體,它具有固定不變的形式,可被人和計(jì)算機(jī)閱讀。。軟件文檔是與軟件開發(fā)、維護(hù)和使用有關(guān)的文字材料,如技術(shù)文檔、設(shè)計(jì)文檔、版本說明文檔等,它和計(jì)算機(jī)程序共同構(gòu)成了能完成特定功能的計(jì)算機(jī)軟件。
2.軟件文檔的作用
2.1 提高軟件項(xiàng)目開發(fā)過程的透明度,為項(xiàng)目管理提供了依據(jù)
軟件是一種邏輯實(shí)體,而不是物理實(shí)體,軟件產(chǎn)品不像生產(chǎn)其它產(chǎn)品看得見,摸得著。故在軟件的開發(fā)生產(chǎn)過程中沒有明顯的制造過程。我們知道,硬件產(chǎn)品和產(chǎn)品資料在整個(gè)生產(chǎn)過程中都是有形可見的,軟件生產(chǎn)則有很大不同,文檔本身就是軟件產(chǎn)品。
軟件文檔詳細(xì)記錄了軟件項(xiàng)目開發(fā)過程中發(fā)生的事件,將通常“不可見的”軟件開發(fā)進(jìn)程轉(zhuǎn)換成“可見的”文字資料,使軟件項(xiàng)目開發(fā)過程的能見度、透明度提高了,是項(xiàng)目的管理的依據(jù)。軟件產(chǎn)品在軟件開發(fā)過程中管理者需要了解開發(fā)進(jìn)度、存在的問題和預(yù)期目標(biāo)。每一階段計(jì)劃安排的定期報(bào)告提供了項(xiàng)目的可見性。定期報(bào)告還提醒各級(jí)管理者注意該部門對(duì)項(xiàng)目承擔(dān)的責(zé)任以及該部門效率的重要性。開發(fā)文檔規(guī)定若干個(gè)檢查點(diǎn)和進(jìn)度表,使管理者可以評(píng)定項(xiàng)目的進(jìn)度,如果軟件文檔有遺漏,不完善,或內(nèi)容陳舊,則管理者將失去跟蹤和控制項(xiàng)目的重要依據(jù)。
2.2 跟蹤軟件項(xiàng)目開發(fā)過程,使項(xiàng)目質(zhì)量得到保證
軟件項(xiàng)目開發(fā)過程的每一個(gè)階段有必須完成的文檔。那些負(fù)責(zé)軟件質(zhì)量保證和評(píng)估系統(tǒng)性能的人員需要程序規(guī)格說明、測(cè)試和評(píng)估計(jì)劃、測(cè)試該系統(tǒng)用的各種質(zhì)量標(biāo)準(zhǔn)以及關(guān)于期望系統(tǒng)完成什么功能和系統(tǒng)怎樣實(shí)現(xiàn)這些功能的清晰說明;必須制訂測(cè)試計(jì)劃和測(cè)試規(guī)程,并報(bào)告測(cè)試結(jié)果;他們還必須說明和評(píng)估完全、控制、計(jì)算、檢驗(yàn)例行程序及其他控制技術(shù)。這樣完成對(duì)軟件項(xiàng)目的過程進(jìn)行跟蹤,滿足質(zhì)量保證人員和審查人員上述工作的需要。
每一個(gè)階段結(jié)束前都要對(duì)該階段據(jù)所完成的文檔或程序進(jìn)行評(píng)審或測(cè)試,以便發(fā)現(xiàn)問題,排除故障,及時(shí)改正錯(cuò)誤。有了軟件文檔的跟蹤,可及時(shí)審查軟件項(xiàng)目,保證軟件質(zhì)量。
2.3 便于各人員之間的交流與合作,是各任務(wù)之間聯(lián)系的憑證
軟件文檔在軟件開發(fā)人員、軟件管理人員、維護(hù)人員、用戶以及計(jì)算機(jī)之間的多種橋梁作用。使系統(tǒng)管理員、操作員、用戶、管理者和其他有關(guān)人員了解系統(tǒng)如何工作,以及為了達(dá)到他們的各自的目的,如何使用系統(tǒng)。
大多數(shù)軟件開發(fā)項(xiàng)目通常被劃分成若干個(gè)任務(wù),并由不同的小組(下轉(zhuǎn)第74頁)(上接第17頁)去完成。項(xiàng)目小組內(nèi)部、項(xiàng)目平行開發(fā)的各小組之間進(jìn)行交流與聯(lián)系是通過軟件文檔。大多數(shù)系統(tǒng)開發(fā)方法為任務(wù)的聯(lián)系規(guī)定了一些正式文檔學(xué)科方面的專家建立項(xiàng)目;分析員闡述系統(tǒng)需求,向設(shè)計(jì)員提供正式需求規(guī)格說明;設(shè)計(jì)員制定總體設(shè)計(jì),向程序員提供正式設(shè)計(jì)規(guī)格說明;程序員編制詳細(xì)的程序代碼;質(zhì)量保證專家和審查員評(píng)價(jià)整個(gè)系統(tǒng)性能和功能的完整性;負(fù)責(zé)維護(hù)的程序員改進(jìn)各種操作或增強(qiáng)某些功能。各種人員需要的互相聯(lián)系、互相交流、互相合作是通過文檔資料的復(fù)制、分發(fā)和引用而實(shí)現(xiàn)的。
2.4 支持軟件項(xiàng)目使用時(shí)的維護(hù),發(fā)揮軟件的最大效率
軟件文檔提供系統(tǒng)開發(fā)的全部必要技術(shù)資料??梢詭椭S護(hù)保熟悉系統(tǒng),順利完成軟件的安裝。在軟件運(yùn)行過程中出現(xiàn)的各種問題可及時(shí)排除,及時(shí)處理,幫助客戶使用軟件操作順利地利用軟件進(jìn)行工作。軟件運(yùn)行過程找出并修正錯(cuò)誤,改進(jìn)系統(tǒng)以適應(yīng)用戶需求的變化或適應(yīng)系統(tǒng)環(huán)境的變化,開展維護(hù)工作,延長軟件的生存周期,使軟件的效率發(fā)到最大化。
2.5 記錄軟件的歷史,為今后的軟件開發(fā)提供參考
軟件文檔作為“記錄軟件歷史的語言”,軟件文檔可用作以后項(xiàng)目的一種資源,軟件項(xiàng)目的一種借鑒。通常文檔記載系統(tǒng)的開發(fā)歷史,可使有關(guān)系統(tǒng)結(jié)構(gòu)的基本思想為以后的項(xiàng)目利用。系統(tǒng)開發(fā)人員通過審閱以前的系統(tǒng)以查明什么部分已試驗(yàn)過了,什么部分運(yùn)行得很好,什么部分因某種原因難以運(yùn)行而被排除。系統(tǒng)文檔有助于完成軟件的移植或?qū)④浖D(zhuǎn)移到各種新的系統(tǒng)環(huán)境中。
軟件文檔中還包含著“項(xiàng)目開發(fā)總結(jié)報(bào)告”自我總結(jié)的部分,有的項(xiàng)目負(fù)責(zé)人對(duì)這些文件往往不大在意,其實(shí)在這些文件中除了有關(guān)的軟件項(xiàng)目的數(shù)據(jù)外,對(duì)項(xiàng)目的過程的進(jìn)行了總結(jié),優(yōu)、缺點(diǎn)盡在其中,學(xué)習(xí)和借鑒這些文件對(duì)今后的工程管理將會(huì)有很大的促進(jìn)作用。
3.總結(jié)
在軟件工程時(shí)代,正確的使用軟件文檔對(duì)軟件產(chǎn)品按質(zhì)按量的交付使用,對(duì)于充分發(fā)揮軟件產(chǎn)品的效益有著重要意義,故在軟件開發(fā)中要重視軟件文檔的編寫。
參考文獻(xiàn)
[1]辛明海,潘孝銘等.軟件文檔編寫[M].北京:高等教育出版社,2009.
1.1軟件系統(tǒng)廣義分層根據(jù)光伏微電網(wǎng)軟件系統(tǒng)的關(guān)聯(lián)結(jié)構(gòu)及其運(yùn)行控制的功能需求,光伏微電網(wǎng)軟件系統(tǒng)廣義上可劃分為三層結(jié)構(gòu)形式,即物理層、數(shù)據(jù)層和應(yīng)用層(圖2)。(1)物理層。物理層主要面向環(huán)境底層設(shè)備(包括直接與被測(cè)量對(duì)象相連的各種數(shù)據(jù)采集設(shè)備),負(fù)責(zé)數(shù)據(jù)采集并傳輸給上層或接受上層指令,實(shí)現(xiàn)底層數(shù)字化和本地控制。例如,基于物理層的SCADA系統(tǒng)能實(shí)現(xiàn)對(duì)微電網(wǎng)現(xiàn)場數(shù)據(jù)的采集、逆變器的控制、設(shè)備的本地保護(hù)和控制、儲(chǔ)能系統(tǒng)的充放電控制、饋線故障保護(hù)及環(huán)境測(cè)量等功能[12]。(2)數(shù)據(jù)層。數(shù)據(jù)層主要負(fù)責(zé)網(wǎng)絡(luò)通信和數(shù)據(jù)交換,一方面支持各種軟件通信協(xié)議,如Modbus、TCP和IEC61850等;另一方面采用各種先進(jìn)算法對(duì)匯聚的數(shù)據(jù)做出系統(tǒng)決策,向下層發(fā)出指令[13]。光伏微電網(wǎng)存在并網(wǎng)模式和孤島模式,既需要實(shí)現(xiàn)在較高安全性要求前提下運(yùn)行模式的無縫切換,又需要具備負(fù)荷預(yù)測(cè)、發(fā)電預(yù)測(cè)、功率平衡控制和能量管理等大數(shù)據(jù)快速處理能力,以滿足功率平衡要求和經(jīng)濟(jì)指標(biāo)需求。(3)應(yīng)用層。應(yīng)用層主要是面向用戶側(cè)進(jìn)行優(yōu)化調(diào)度控制,負(fù)責(zé)數(shù)據(jù)匯總、按需分析、作出決策,實(shí)現(xiàn)人機(jī)交互,著力于實(shí)現(xiàn)多條件、多目標(biāo)的光伏微電網(wǎng)經(jīng)濟(jì)運(yùn)行。從用電經(jīng)濟(jì)性角度出發(fā),在用電低谷期從電網(wǎng)買電并在高峰期賣出,以緩解電網(wǎng)壓力;從發(fā)電經(jīng)濟(jì)性角度出發(fā),綜合考慮設(shè)備購買成本、運(yùn)行管理成本、與大電網(wǎng)的交互成本以及儲(chǔ)能系統(tǒng)充放電損耗和燃料等成本;在功率平衡等式約束條件以及DG(分布式發(fā)電)出力限值、與電網(wǎng)交互功率限值、發(fā)電機(jī)爬坡速率限值和儲(chǔ)能荷電狀態(tài)限值等不等式約束條件下,均衡各個(gè)DG的出力,實(shí)現(xiàn)經(jīng)濟(jì)效益最大化、技術(shù)最優(yōu)化及環(huán)境友好化。1.2面向用戶的光伏微電網(wǎng)軟件平臺(tái)隨著軟件管理模式的普及,用戶對(duì)軟件系統(tǒng)的穩(wěn)定性、安全性、實(shí)時(shí)性、兼容性、易維護(hù)性和可擴(kuò)展性等提出了更高的要求[14]。為實(shí)現(xiàn)人機(jī)交互的友好化,研發(fā)面向用戶的光伏微電網(wǎng)軟件平臺(tái),包括操作系統(tǒng)、支撐環(huán)境和應(yīng)用功能3個(gè)板塊(圖3)。操作系統(tǒng)既是計(jì)算機(jī)系統(tǒng)的關(guān)鍵組成部分,也是光伏微電網(wǎng)軟件平臺(tái)運(yùn)行的基礎(chǔ),常見的操作系統(tǒng)包括Unix、Linux和Windows。支撐環(huán)境板塊為實(shí)現(xiàn)各種上層的應(yīng)用功能提供通用的支撐服務(wù),如系統(tǒng)管理、權(quán)限管理、圖形界面、數(shù)據(jù)處理、數(shù)據(jù)報(bào)表、故障警告等。應(yīng)用功能板塊為光伏微電網(wǎng)的經(jīng)濟(jì)運(yùn)行提供按需定制的服務(wù),主要有數(shù)據(jù)采集、數(shù)據(jù)監(jiān)控、發(fā)電預(yù)測(cè)、負(fù)荷預(yù)測(cè)、能量管理和優(yōu)化調(diào)度等。用戶可以根據(jù)各自光伏微電網(wǎng)系統(tǒng)的需求,使用光伏微電網(wǎng)軟件平臺(tái)上的應(yīng)用功能,便捷地進(jìn)行系統(tǒng)數(shù)據(jù)的監(jiān)控、發(fā)電及負(fù)荷的預(yù)測(cè)和能源的管理調(diào)度。
2光伏微電網(wǎng)軟件工程化
光伏微電網(wǎng)軟件系統(tǒng)是微電網(wǎng)的監(jiān)測(cè)控制中心,其工程化過程必須以先進(jìn)的開發(fā)技術(shù)為支撐,選擇合適的軟件開發(fā)方法和軟件開發(fā)過程模型,實(shí)現(xiàn)高質(zhì)量、高效率、低成本的目標(biāo)。2.1軟件開發(fā)技術(shù)光伏微電網(wǎng)軟件采用模塊化和結(jié)構(gòu)化設(shè)計(jì),以增強(qiáng)可復(fù)用性和可擴(kuò)充性;采用標(biāo)準(zhǔn)化程序設(shè)計(jì)語言,以提高可讀性;創(chuàng)建結(jié)構(gòu)化文檔,以便于閱讀、理解、分析和維護(hù)。下面以軟件構(gòu)件復(fù)用技術(shù)和基于MVC的Web技術(shù)為例進(jìn)行說明。2.1.1軟件構(gòu)件復(fù)用技術(shù)隨著計(jì)算機(jī)技術(shù)的發(fā)展和微電網(wǎng)技術(shù)的廣泛應(yīng)用,對(duì)光伏微電網(wǎng)軟件的需求也在不斷激增,且軟件規(guī)模和復(fù)雜度也在不斷增加。傳統(tǒng)的開發(fā)方法會(huì)使大量資源浪費(fèi)在重復(fù)開發(fā)上,因此開發(fā)過程實(shí)現(xiàn)標(biāo)準(zhǔn)化和簡單化,能有效地降低軟件的開發(fā)和維護(hù)成本,提高軟件產(chǎn)品質(zhì)量和生產(chǎn)效率。軟件構(gòu)件復(fù)用技術(shù)[15]是實(shí)現(xiàn)面向?qū)ο箝_發(fā)方法和集成構(gòu)件模型的基礎(chǔ),也是軟件走向工程化和產(chǎn)品化的關(guān)鍵技術(shù)之一。它以軟件構(gòu)架為組裝藍(lán)圖,以可復(fù)用構(gòu)件為組裝預(yù)制塊,支持組裝式軟件復(fù)用,是解決軟件資源浪費(fèi)問題最可行、最現(xiàn)實(shí)的方法。2.1.2基于MVC的Web技術(shù)傳統(tǒng)的微電網(wǎng)軟件多是基于特定平臺(tái)下的應(yīng)用軟件,而Web技術(shù)[16]具有動(dòng)態(tài)性、分布式及與平臺(tái)無關(guān)等特點(diǎn),支持安全連接后臺(tái)系統(tǒng)、動(dòng)態(tài)用戶交互及實(shí)時(shí)信息,將其應(yīng)用于光伏微電網(wǎng),能有效地提高光伏微電網(wǎng)系統(tǒng)的信息化水平。Web技術(shù)發(fā)展較快,一般采用B/S模式,其中服務(wù)端技術(shù)包含JSP、CGI、ASP、ISAPI、PHP、Servlet等,客戶端技術(shù)包含JavaApplet、VBScript、JavaScript等。為了實(shí)現(xiàn)軟件系統(tǒng)的“低耦合、高內(nèi)聚”,以“分而治之”的思想、采用分層方式架構(gòu)系統(tǒng),把待解決問題劃分開來。用MVC模式將系統(tǒng)分層,層次清晰、解耦良好、便于維護(hù)及擴(kuò)展。對(duì)于中等規(guī)模以上的應(yīng)用程序,應(yīng)用MVC構(gòu)架得到的好處能大大抵消因其帶來的工作量和復(fù)雜度增加而造成的不利影響。因此在光伏微電網(wǎng)軟件工程中應(yīng)用基于MVC模型的Web技術(shù)是比較理想的。在Java技術(shù)中,Hibernate、Struts、Spring及Ibatis等框架技術(shù)能很好地實(shí)現(xiàn)MVC模式,為基于MVC的Web技術(shù)應(yīng)用于光伏微電網(wǎng)軟件提供強(qiáng)大的技術(shù)支撐。2.2軟件開發(fā)方法軟件開發(fā)方法在開發(fā)步驟、軟件文檔格式和開發(fā)方案評(píng)價(jià)標(biāo)準(zhǔn)3個(gè)方面提出了相應(yīng)的規(guī)范要求,使得光伏微電網(wǎng)軟件生產(chǎn)進(jìn)入有章可循、向規(guī)范化和標(biāo)準(zhǔn)化邁進(jìn)的“工程化”階段。軟件開發(fā)方法在不斷推陳出新,目前常見的開發(fā)方法有結(jié)構(gòu)化方法、面向?qū)ο蠓椒ê托问交椒ǎū?)。面向?qū)ο箝_發(fā)方法[17]以結(jié)構(gòu)化系統(tǒng)開發(fā)方法基本框架為基礎(chǔ),以封裝、繼承及多態(tài)為基本特征,將系統(tǒng)抽象變成一個(gè)由很多對(duì)象互相作用、互相聯(lián)系而形成的整體,包括分析方法、設(shè)計(jì)方法和程序設(shè)計(jì)(編程)方法,從而使軟件開發(fā)更具靈活性和可靠性。光伏微電網(wǎng)軟件系統(tǒng)不僅需要數(shù)據(jù)庫的支持以實(shí)時(shí)處理信息,同時(shí)還涉及大量的事務(wù)性操作請(qǐng)求,因此面向?qū)ο箝_發(fā)方法無疑是最佳選擇,而在局部處理上結(jié)合結(jié)構(gòu)化方法則更為有利,故而將面向?qū)ο蠓椒ㄅc結(jié)構(gòu)化方法有機(jī)地結(jié)合起來,以指導(dǎo)光伏微電網(wǎng)軟件的開發(fā)工作。2.3軟件開發(fā)過程模型軟件開發(fā)過程模型對(duì)提高軟件質(zhì)量、增強(qiáng)軟件開發(fā)團(tuán)隊(duì)的競爭力起著至關(guān)重要的作用[18]。典型的過程模型包括瀑布模型、快速原型模型、增量模型、螺旋模型、噴泉模型及集成構(gòu)件模型等。針對(duì)光伏微電網(wǎng)項(xiàng)目應(yīng)用性質(zhì)、采用方法、需要的控制方式以及所要交付產(chǎn)品的特點(diǎn),選擇合適的軟件過程模型,能對(duì)軟件開發(fā)提供有效的支持,確保工程進(jìn)展順利。光伏微電網(wǎng)軟件需求明確,是應(yīng)用于電力行業(yè)中的中等規(guī)模軟件。集成構(gòu)件模型能夠有效解決光伏微電網(wǎng)軟件工程問題,主要包括:(1)開發(fā)適用于面向?qū)ο蟮能浖?,提供有效?shí)現(xiàn)面向?qū)ο箝_發(fā)的方法;(2)融合螺旋模型的特征,支持軟件開發(fā)的迭代方法和軟件復(fù)用,提高開發(fā)效率(圖4)。
3光伏微電網(wǎng)軟件工程實(shí)例
中國南車光伏發(fā)電示范工程暨微電網(wǎng)綜合試驗(yàn)系統(tǒng),依托1MW光伏電站平臺(tái),包括2個(gè)100kW光伏發(fā)電單元、1個(gè)50kW光伏發(fā)電單元、100kW電動(dòng)模擬柴油發(fā)電機(jī)組、100kW×1h磷酸鐵鋰蓄電池儲(chǔ)能系統(tǒng)、100kW×3s超級(jí)電容儲(chǔ)能系統(tǒng)、100kW±100kvar智能負(fù)載以及200kVA模擬電網(wǎng)裝置。其光伏微電網(wǎng)能量管理系統(tǒng)基于改進(jìn)的B/S五層結(jié)構(gòu),支持具有MVC思想的成熟SSH2框架技術(shù),并且結(jié)合Ajax和SVG等先進(jìn)的Web技術(shù)(圖5)。系統(tǒng)具體分為表現(xiàn)層、控制層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層和數(shù)據(jù)持久層,每層任務(wù)明確且彼此獨(dú)立,滿足軟件構(gòu)件復(fù)用技術(shù)。系統(tǒng)軟件在SCADA系統(tǒng)的基礎(chǔ)上運(yùn)行,并融合了各種先進(jìn)的算法,例如,基于初始位置、配置參數(shù)、預(yù)測(cè)天氣等進(jìn)行光伏預(yù)測(cè),并用歷史數(shù)據(jù)進(jìn)行在線修正,有效地增加了光伏預(yù)測(cè)的準(zhǔn)確性。實(shí)用結(jié)果證明,該軟件不僅使用方便,操作友好,響應(yīng)速度快,滿足可用性、可靠性、可維護(hù)性和安全性的定性要求和定量要求,而且能滿足能量管理優(yōu)化的時(shí)間常數(shù)τ≤2min、預(yù)測(cè)1h內(nèi)各DG發(fā)電量及其精度大于80%、優(yōu)化調(diào)度時(shí)間常數(shù)Τ≤3s等要求。
4結(jié)語
軟件工程合同書
合同編號(hào):___________________
甲方:__________________________
乙方:__________________________
依據(jù)甲方的需求,并本著平等互利的原則,甲乙雙方經(jīng)友好協(xié)商,就甲方的醫(yī)院管理信息系統(tǒng)(以下簡稱_______系統(tǒng))的應(yīng)用軟件工程簽訂本合同。
第一條 適用法律
1.1本合同適用法律為:《中華人民共和國技術(shù)合同法》、《中華人民共和國著作權(quán)法》和《中華人民共和國計(jì)算機(jī)軟件保護(hù)條例》及《中華人民共和國經(jīng)濟(jì)合同法》等有關(guān)國家法律法規(guī)。
1.2上述文件時(shí)間有不一致時(shí),以日期在后的文件為準(zhǔn)。
第二條 合同范圍
2.1乙方負(fù)責(zé)完成甲方的_______軟件系統(tǒng)。涵蓋的范圍_______系統(tǒng)軟件安裝、調(diào)試和對(duì)整個(gè)_______系統(tǒng)的技術(shù)支持、服務(wù)與培訓(xùn)等工作。
2.2產(chǎn)品內(nèi)容(價(jià)格見附頁)
第三條 責(zé)任和義務(wù)
3.1雙方共同責(zé)任
嚴(yán)格根據(jù)本協(xié)議實(shí)施本項(xiàng)目的內(nèi)容,并協(xié)商解決合作中出現(xiàn)的有爭議的問題。
3.2甲方的責(zé)任和義務(wù)
3.2.1按本合同的付款條款支付所需款項(xiàng)。
3.2.2負(fù)責(zé)項(xiàng)目中的領(lǐng)導(dǎo)、組織和協(xié)調(diào)工作。
3.2.3提供場地、人員、相關(guān)設(shè)備、必要的文檔資料和數(shù)據(jù),協(xié)助乙方做好_______系統(tǒng)的實(shí)施工作,并且甲方運(yùn)行用友醫(yī)院管理信息系統(tǒng)的設(shè)備環(huán)境,應(yīng)滿足軟件對(duì)運(yùn)行環(huán)境的基本要求。
3.2.4試運(yùn)行結(jié)束后______天內(nèi),組織人員和乙方人員一起組成驗(yàn)收小組,并安排場地和設(shè)備,進(jìn)行_______軟件試運(yùn)行的驗(yàn)收工作。
3.2.5
a.甲方定期做好系統(tǒng)數(shù)據(jù)備份,并對(duì)備份數(shù)據(jù)進(jìn)行妥善保管。
b.甲方在應(yīng)用過程中發(fā)現(xiàn)軟件出現(xiàn)異常,應(yīng)及時(shí)與乙方取得聯(lián)系,并記錄當(dāng)前故障現(xiàn)象,便于乙方作出診斷。
c.甲方在乙方服務(wù)人員服務(wù)完成后,配合檢查軟件系統(tǒng)運(yùn)行是否正常,并在現(xiàn)場服務(wù)請(qǐng)求單上簽字確認(rèn)。
3.3乙方的責(zé)任和義務(wù)
3.3.1按照本合同所規(guī)定的時(shí)間完成甲方相關(guān)人員的培訓(xùn)和_______系統(tǒng)軟件安裝、調(diào)試及數(shù)據(jù)初始化,并與甲方一起組成驗(yàn)收小組進(jìn)行驗(yàn)收。
3 .3.2對(duì)甲方_______進(jìn)行一年內(nèi)免費(fèi)的軟件升級(jí)、服務(wù)、培訓(xùn)、技術(shù)支持。
3.3.3無償向甲方提供相應(yīng)的軟件使用文檔,包括《操作手冊(cè)》,并保證上述文檔的清晰、完整和正確。
3.3.4乙方對(duì)甲方在使用用友軟件過程中,因設(shè)備故障、操作失誤等造成的數(shù)據(jù)丟失、利潤或營業(yè)額損失或費(fèi)用增加,以及因不按正常操作規(guī)范使用軟件或軟件被盜、損失、損毀、誤用所造成的損失不負(fù)責(zé)任。
第四條 版權(quán)
4.1乙方擁有本_______系統(tǒng)軟件的版權(quán)(即著作權(quán))。
4.2甲方擁有本_______系統(tǒng)軟件在本醫(yī)院(______________醫(yī)院)內(nèi)部的使用權(quán)。
4.3甲方應(yīng)尊重從乙方購置的應(yīng)用軟件的注冊(cè)版權(quán),遵守國家《計(jì)算機(jī)軟件保護(hù)條例》有關(guān)規(guī)定,不得以任何形式再次轉(zhuǎn)讓、租賃該軟件,并不得以任何形式或手段解密該軟件。
第五條 技術(shù)指標(biāo)
5.1___________信息管理軟件______________。
5.2本系統(tǒng)基于___________結(jié)構(gòu)。
5.3乙方向甲方提交的文檔應(yīng)齊全、正確和可讀性強(qiáng)。
5.4應(yīng)用軟件的聯(lián)機(jī)幫助應(yīng)清晰可讀,系統(tǒng)錯(cuò)誤信息應(yīng)清晰明了,界面應(yīng)友好,并易于操作和維護(hù)。
5.5本系統(tǒng)應(yīng)充分考慮到今后的擴(kuò)充和升級(jí),應(yīng)具有良好的開放性和可擴(kuò)充性。
5.6本系統(tǒng)應(yīng)具有可靠的安全和保密機(jī)制,以確保數(shù)據(jù)完整、安全和不被非法用戶登錄。
第六條 交付計(jì)劃
6.1軟件培訓(xùn)___________天
6.2系統(tǒng)安裝____________天
6.3軟件調(diào)試_____________天
6.4系統(tǒng)初始化__________天
第七條 費(fèi)用及支付方式
7.1費(fèi)用
7.1.1本合同所述價(jià)格均為人民幣含稅價(jià)。
7.1.2本合同所述用友醫(yī)院信息管理系統(tǒng)(_______)金額總計(jì)為人民幣_(tái)________元。
7.1.3乙方免費(fèi)培訓(xùn)用戶方人員,培訓(xùn)地點(diǎn):甲方所在地。
7.1.4自應(yīng)用軟件通過驗(yàn)收之日起,一年內(nèi)乙方免費(fèi)負(fù)責(zé)應(yīng)用軟件的升級(jí)、系統(tǒng)維護(hù)和技術(shù)支持。
7.2支付方式
7.2.1甲方將以轉(zhuǎn)帳支票或信匯、電匯等銀行托收的方式向乙方支付。
7.2.2合同生效后,由乙方開始_______軟件的實(shí)施工作,當(dāng)乙方軟件安裝、調(diào)試完畢后,甲方于______年______月______日前一次性向乙方支付全部軟件款,(人民幣)______元。
第八條 服務(wù)與技術(shù)支持
8.1操作人員培訓(xùn)
8.1.1培訓(xùn)時(shí)間為______天。
8.1.2培訓(xùn)地點(diǎn):甲方所在地
8.1.3培訓(xùn)內(nèi)容:_______系統(tǒng)軟件的使用。
8.2系統(tǒng)實(shí)施
8.2.1_______系統(tǒng)軟件安裝:指_______系統(tǒng)軟件交付甲方后,軟件的安裝、調(diào)試及系統(tǒng)環(huán)境的設(shè)置等,包括:服務(wù)器操作系統(tǒng)設(shè)置、網(wǎng)絡(luò)環(huán)境設(shè)置、數(shù)據(jù)庫系統(tǒng)環(huán)境設(shè)置、客戶機(jī)操作系統(tǒng)設(shè)置、網(wǎng)絡(luò)協(xié)議設(shè)置、應(yīng)用程序的安裝、調(diào)試及參數(shù)設(shè)置。
8.2.2_______系統(tǒng)設(shè)置:包括應(yīng)用項(xiàng)目、基礎(chǔ)數(shù)據(jù)的設(shè)置(指導(dǎo))。
8.2.3初始數(shù)據(jù)錄入:協(xié)助并規(guī)范甲方人員進(jìn)行初始數(shù)據(jù)的錄入和轉(zhuǎn)入。
8.3系統(tǒng)維護(hù)
8.3.1乙方向甲方提供的為保證本系統(tǒng)正常運(yùn)行的現(xiàn)場系統(tǒng)維護(hù)項(xiàng)目包括:
--應(yīng)用軟件在運(yùn)行中的故障帶來的排錯(cuò)工作。
--應(yīng)用軟件與系統(tǒng)軟件及數(shù)據(jù)庫系統(tǒng)適配帶來的調(diào)整工作。
--甲方非正常操作帶來的系統(tǒng)及數(shù)據(jù)的修復(fù)工作。
8.4系統(tǒng)升級(jí)
8.4.1系統(tǒng)升級(jí)指由乙方開發(fā)技術(shù)更新、應(yīng)用系統(tǒng)升級(jí)或原有模塊新功能的增加、補(bǔ)充帶來的軟件版本升級(jí),由乙方免費(fèi)向甲方提供。
8.4.2系統(tǒng)如有重大變更由雙方具體協(xié)商后另行簽署協(xié)議。
8.5技術(shù)支持及服務(wù)
8.5.1一年免費(fèi)服務(wù)期滿后,乙方將向甲方收取服務(wù)費(fèi),收費(fèi)標(biāo)準(zhǔn)為每年收取軟件合同價(jià)的______%,或每次上門服務(wù)收取服務(wù)費(fèi)______元人民幣,又或甲方向乙方購買服務(wù)卡(金卡:______元/______次/______小時(shí)響應(yīng)、銀卡:______元/______次/______小時(shí)響應(yīng)、銅卡:______元/______次/______小時(shí)響應(yīng))。甲方可根據(jù)具體情況選擇適合的服務(wù)方式。
8.5.2乙方通過以下方式為甲方提供技術(shù)支持及服務(wù):
--熱線電話:______、 傳真:______
--乙方在internet站點(diǎn)的?www、mail、ftp等服 務(wù),提供軟件下載、熱線響應(yīng)等先進(jìn)的網(wǎng)絡(luò)支持。
8.5.3乙方的服務(wù)承諾:
a.乙方接到甲方通過電話、信函、傳真、電子郵件、網(wǎng)上提交等方式提出關(guān)于用友_______軟件的服務(wù)請(qǐng)求后,在24小時(shí)內(nèi)給予響應(yīng)并提供服務(wù)。
b.乙方提供給甲方的服務(wù),必須按照合同規(guī)定的服務(wù)內(nèi)容進(jìn)行。
8.5.4如因乙方原因,單方解除上述條款,使甲方用友_______系統(tǒng)不能正常運(yùn)行,應(yīng)賠償由此帶來的一切損失。
8.5.5系統(tǒng)升級(jí)及費(fèi)用:若醫(yī)院需要進(jìn)行不同版本的系統(tǒng)升級(jí),升級(jí)費(fèi)用按軟件合同價(jià)的20%收。?
第九條 保密原則
項(xiàng)目中所涉及的雙方的內(nèi)部資料、數(shù)據(jù)和其他商業(yè)信息,未經(jīng)有關(guān)方許可,任何一方不得以任何形式用于合同之外的目的,不得以任何形式向其他方泄露。任何一方泄密,另一方有權(quán)追究泄密方的經(jīng)濟(jì)和法律責(zé)任。
第十條 轉(zhuǎn)讓
乙方不得將合同轉(zhuǎn)讓。
第十一條 違約責(zé)任
1)甲乙雙方本著真誠合作、相互信賴的原則,根據(jù)國家相關(guān)的法律、法規(guī),協(xié)商解決在本合同執(zhí)行過程中可能出現(xiàn)的違約糾紛和違約責(zé)任。
2)甲方在規(guī)定時(shí)間內(nèi)不配合乙方進(jìn)行_______系統(tǒng)驗(yàn)收,視同驗(yàn)收通過。
3)以上應(yīng)付合同款逾期一個(gè)月未付,乙方有權(quán)將軟件收回。
4)違約處理:
甲方?jīng)]有按照合同要求履行甲方應(yīng)承擔(dān)的責(zé)任,甲方應(yīng)該承擔(dān)由此帶來的相關(guān)結(jié)果。
5)乙方免責(zé)條款:
1.乙方對(duì)甲方在使用用友軟件過程中,因設(shè)備故障、操作失誤等造成的數(shù)據(jù)丟失、利潤或營業(yè)額損失或費(fèi)用增加,以及因不按正常操作規(guī)范使用軟件或軟件被盜、損失、損毀、誤用所造成的損失不負(fù)責(zé)任。
2.乙方不承擔(dān)因甲方人員進(jìn)行非法操作、感染病毒、硬件出現(xiàn)故障導(dǎo)致的數(shù)據(jù)混亂、丟失責(zé)任。
3.乙方有權(quán)拒絕甲方提出的合同規(guī)定之外的服務(wù)請(qǐng)求。
第十二條 爭議與仲裁
甲乙雙方如對(duì)合同條款規(guī)定的理解有歧義,或者對(duì)與合同有關(guān)的事項(xiàng)發(fā)生爭議,雙方應(yīng)本著友好合作的精神進(jìn)行協(xié)商。協(xié)商不能解決時(shí),依照《中華人民共和國經(jīng)濟(jì)合同法》,可向國家規(guī)定的仲裁機(jī)構(gòu)申請(qǐng)調(diào)解或仲裁,任何一方可直接向人民法院起訴。
第十三條 不可抗力
13.1不可抗力的內(nèi)容按我國有關(guān)規(guī)定條款執(zhí)行
13.2不 可抗力對(duì)合同雙方均適用。在合同生效后,如果發(fā)生不可抗力而不能履行合同時(shí),則由事故發(fā)生一方,取得公證機(jī)關(guān)的不能履行或不能全部履行或延期履行本合同的證明,甲乙雙方可憑此證明解除全部或部分相關(guān)責(zé)任。
第十四條 合同變更、補(bǔ)充及終止
14.1本合同自雙方簽定之日起生效,如果雙方均未發(fā)出書面終止通知,則合同自動(dòng)延續(xù)。
14.2本合同為雙方的最終合同,未經(jīng)雙方書面同意,不得對(duì)此作任何修改。如有未盡事宜,經(jīng)雙方書面同意后,可簽訂書面補(bǔ)充協(xié)議。補(bǔ)充協(xié)議同本協(xié)議具有同等法律效力。
第十五條 合同效力
本合同一式叁份,甲方執(zhí)貳份,乙方執(zhí)壹份,每份具有同等法律效力。
第十六條 合同有效期和效用性
1.本合同須雙方簽字并加蓋公章或合同章生效;本合同一式兩份,雙方各執(zhí)壹份,具有同等法律效力。
2.本合同的有效性不因雙方代表的職務(wù)變換、工作變更、工作調(diào)動(dòng)等情況而受到任何影響;本合同的有效性不因雙方法人的變更而受到任何影響;本合同的有效性不因雙方單位名稱的改變而受任何影響。
甲方:_____________________
地址:_____________________
甲方負(fù)責(zé)人:_______________
甲方代辦人:_______________
甲方單位(蓋章)___________
開戶銀行:_________________
乙方:_____________________
地址:_____________________
乙方負(fù)責(zé)人:_______________
乙方代辦人:_______________
乙方單位(蓋章)___________
開戶銀行:_________________
帳號(hào):_____________________
軟件工程是一項(xiàng)專業(yè)性強(qiáng)、難度大的學(xué)科,目前軟件工程管理還處于發(fā)展期,但其放在何處都會(huì)成為一個(gè)性質(zhì)有效的管理。我國部分小型軟件企業(yè)要想在激烈的市場競爭中獲取成功就必須要進(jìn)行軟件工程管理。不過對(duì)軟件工程進(jìn)行管理并不是一件容易的事,在整個(gè)管理過程中需要面臨以下問題。缺乏系統(tǒng)的培訓(xùn)?,F(xiàn)在我國的一些軟件公司的實(shí)際情況都是任命專業(yè)能力過硬的人員為項(xiàng)目經(jīng)理,而這些專業(yè)知識(shí)過硬的技術(shù)人員通常沒有過硬的軟件工程管理功底,而企業(yè)沒有系統(tǒng)的培訓(xùn),導(dǎo)致了項(xiàng)目經(jīng)理在軟件開發(fā)過程中無法對(duì)整個(gè)過程中進(jìn)行系統(tǒng)的管理。缺乏計(jì)劃意識(shí)。項(xiàng)目經(jīng)理對(duì)軟件開發(fā)中計(jì)劃的作用沒有一個(gè)正確的認(rèn)識(shí),導(dǎo)致了開發(fā)項(xiàng)目沒有一個(gè)合理的可行性計(jì)劃,這樣在軟件開發(fā)過程中,因?yàn)槿藛T因素或外界因素經(jīng)常會(huì)導(dǎo)致計(jì)劃好的事情被拖延,從而造成進(jìn)度受到拖延[3]。缺乏管理意識(shí)。因?yàn)樵谲浖_發(fā)中,項(xiàng)目經(jīng)理經(jīng)常投入到技術(shù)工作之中,從而忽略了對(duì)軟件工程的整體管理。這樣經(jīng)常會(huì)造成項(xiàng)目開發(fā)過程中,每個(gè)工作人員的任務(wù)得不到適當(dāng)?shù)陌才?造成計(jì)劃不周,資源浪費(fèi)等。項(xiàng)目經(jīng)理沒有將任務(wù)合理地分配到工作人員手中,造成許多任務(wù)都需要自己埋頭苦干,沒有精力對(duì)整個(gè)項(xiàng)目進(jìn)行管理。風(fēng)險(xiǎn)管理中的問題。部分項(xiàng)目經(jīng)理在管理中缺乏風(fēng)險(xiǎn)意識(shí),很少對(duì)項(xiàng)目中存在的風(fēng)險(xiǎn)進(jìn)行合理分析,制定的風(fēng)險(xiǎn)管理也比較隨意,沒有真正起到風(fēng)險(xiǎn)防范的作用。軟件工程復(fù)雜化。近年來軟件項(xiàng)目規(guī)模不斷增大,參與同一軟件項(xiàng)目的人數(shù)也在急劇增加,同時(shí)軟件工程管理的困難也變得更大,在軟件工程管理中需要解決的問題也在增加,這些都增加了軟件工程管理的難度[4]。
2軟件工程的管理方法
2.1構(gòu)建軟件工程管理體系
構(gòu)建合理的軟件工程管理體系主要包括以下內(nèi)容:第一,構(gòu)建人才體系。在軟件工程管理中,人才對(duì)管理有著重要的作用,人才是做好軟件工程管理的前提。第二,為了提高工作人員工作中的積極性,確保項(xiàng)目中所有目標(biāo)能夠得到落實(shí),應(yīng)當(dāng)加強(qiáng)人力資源管理。第三,在人才的管理中切記要以平等的態(tài)度進(jìn)行管理,而不是控制[5]。
2.2加強(qiáng)風(fēng)險(xiǎn)管理和進(jìn)度管理
對(duì)于軟件項(xiàng)目管理中的風(fēng)險(xiǎn)管理和進(jìn)度管理,我們也應(yīng)當(dāng)分為兩個(gè)方面來進(jìn)行探討。第一,構(gòu)建風(fēng)險(xiǎn)管理體制,只有這樣才能及時(shí)發(fā)現(xiàn)軟件工程管理中存在的風(fēng)險(xiǎn),并對(duì)存在的風(fēng)險(xiǎn)進(jìn)行及時(shí)處理。第二,提高項(xiàng)目中風(fēng)險(xiǎn)管理人員的風(fēng)險(xiǎn)意識(shí),確保風(fēng)險(xiǎn)管理人員能夠?qū)︼L(fēng)險(xiǎn)有一清楚的認(rèn)識(shí),并且能夠?qū)︼L(fēng)險(xiǎn)進(jìn)行合理的分析,針對(duì)風(fēng)險(xiǎn)提出有效的風(fēng)險(xiǎn)防范制度。在風(fēng)險(xiǎn)管理中風(fēng)險(xiǎn)管理人員應(yīng)當(dāng)將風(fēng)險(xiǎn)報(bào)告提交給項(xiàng)目經(jīng)理,對(duì)項(xiàng)目中存在的風(fēng)險(xiǎn)進(jìn)行有效的防范,阻止風(fēng)險(xiǎn)出現(xiàn),確保企業(yè)的順利發(fā)展[6]。
2.3加強(qiáng)對(duì)項(xiàng)目團(tuán)隊(duì)的管理
首先,應(yīng)當(dāng)增加工作人員之間的聯(lián)系與溝通,使整個(gè)團(tuán)隊(duì)中的人員都具有溝通意識(shí)和團(tuán)隊(duì)合作精神。其次,對(duì)各個(gè)工作人員的工作內(nèi)容進(jìn)行明確分工,合理地將責(zé)任分配到每個(gè)工作人員,保證工作開展后一切都能順利地進(jìn)行。最后,調(diào)動(dòng)項(xiàng)目中工作人員的積極性和注重性,使團(tuán)隊(duì)中的工作人員都能夠完全投入到工作之中,提升團(tuán)隊(duì)工作能力,改善工作人員的工作態(tài)度,做好軟件工程管理工作。
2.4對(duì)軟件工程進(jìn)行監(jiān)督
軟件工程監(jiān)督是軟件工程管理中的重要方式,工程監(jiān)督指的是對(duì)項(xiàng)目所自制定的目標(biāo)進(jìn)行實(shí)時(shí)監(jiān)測(cè),軟件工程監(jiān)督要貫穿整個(gè)項(xiàng)目,其目的在于對(duì)軟件開發(fā)的流程進(jìn)行規(guī)范。軟件工程監(jiān)督,可以使開發(fā)過程中的成本、進(jìn)度、質(zhì)量實(shí)現(xiàn)透明化。在對(duì)軟件監(jiān)督過程中軟件需要完成以下任務(wù)。由項(xiàng)目負(fù)責(zé)人對(duì)項(xiàng)目進(jìn)行監(jiān)督,在監(jiān)督過程中,要對(duì)監(jiān)督數(shù)據(jù)進(jìn)行總結(jié),并對(duì)數(shù)據(jù)進(jìn)行合理分析,及時(shí)發(fā)現(xiàn)問題并解決問題。將CMM標(biāo)準(zhǔn)應(yīng)用于軟件工程管理之中,CMM標(biāo)準(zhǔn)的引用可以提升軟件開發(fā)效率,降低軟件開發(fā)中的成本以及風(fēng)險(xiǎn),縮短開發(fā)時(shí)間,提高軟件質(zhì)量,總之將CMM標(biāo)準(zhǔn)運(yùn)用到軟件工程管理之中,能夠確保用戶得到理想的軟件產(chǎn)品。
3結(jié)語