軟件開發(fā)過程問題分析(軟件開發(fā)過程問題分析論文)
本篇文章給大家談?wù)勡浖_發(fā)過程問題分析,以及軟件開發(fā)過程問題分析論文對應(yīng)的知識點(diǎn),希望對各位有所幫助,不要忘了收藏本站喔。
軟件項(xiàng)目設(shè)計(jì)與開發(fā)過程管理分析
軟件項(xiàng)目設(shè)計(jì)與開發(fā)過程管理分析
軟件項(xiàng)目的規(guī)劃,是軟件設(shè)計(jì)與開發(fā)過程中比較復(fù)雜的階段,也是決定軟件開發(fā)質(zhì)量和開發(fā)水平的關(guān)鍵,做好軟件項(xiàng)目的整體規(guī)劃將會為整個軟件項(xiàng)目的運(yùn)行奠定良好的基礎(chǔ)。以下是我為您收集整理的軟件項(xiàng)目設(shè)計(jì)與開發(fā)過程管理分析論文,以供參考,歡迎借鑒閱讀。
摘要: 軟件項(xiàng)目設(shè)計(jì)與開發(fā)的管理,其目的就是要從管理的角度,對軟件項(xiàng)目在設(shè)計(jì)開發(fā)中的各個環(huán)節(jié)進(jìn)行規(guī)范和監(jiān)督,通過多種形式的有效管理措施,確保軟件項(xiàng)目開發(fā)過程的高質(zhì)量和低成本。對此,本文在分析軟件項(xiàng)目設(shè)計(jì)與開發(fā)原則的基礎(chǔ)上,結(jié)合軟件項(xiàng)目設(shè)計(jì)與開發(fā)的全過程,就軟件項(xiàng)目設(shè)計(jì)與開發(fā)的有效管理問題進(jìn)行重點(diǎn)探討。
關(guān)鍵詞: 軟件項(xiàng)目;設(shè)計(jì)與開發(fā);過程管理;有效性
對軟件項(xiàng)目設(shè)計(jì)與開發(fā)的全過程進(jìn)行有效的管理,不僅是要為了順利實(shí)現(xiàn)軟件的特定功能與性能,還要確保能夠保質(zhì)、保量、低成本的完成軟件開發(fā)的任務(wù),使軟件在投入使用后也能夠保持穩(wěn)定性、可靠性、實(shí)用性和經(jīng)濟(jì)性。簡單的說,軟件設(shè)計(jì)與開發(fā)的過程就是要將需求轉(zhuǎn)變?yōu)檐浖磉_(dá)的過程,要想切實(shí)提高軟件項(xiàng)目設(shè)計(jì)與開發(fā)過程管理的有效性,不僅要堅(jiān)持正確的軟件項(xiàng)目設(shè)計(jì)原則,還要明確軟件的設(shè)計(jì)流程,在設(shè)計(jì)與開發(fā)的各個過程都采取行之有效的管理對策。
一、軟件項(xiàng)目設(shè)計(jì)與開發(fā)的基本原則
(一)實(shí)用性
實(shí)用性指的是軟件項(xiàng)目的設(shè)計(jì)與開發(fā)一定要能夠滿足現(xiàn)代企業(yè)經(jīng)營管理的需求,能夠促進(jìn)企業(yè)的不斷發(fā)展,要避免“形式主義”、“中看不中用”等問題,否則有可能導(dǎo)致企業(yè)軟件開發(fā)資金的浪費(fèi),難以取得良好的投資回報(bào)效果。因此,在選擇軟件設(shè)計(jì)與開發(fā)技術(shù)時,不能過度追求先進(jìn)性和高投入,而是應(yīng)當(dāng)在充分了解企業(yè)實(shí)際需求的基礎(chǔ)上,結(jié)合企業(yè)的發(fā)展方向,充分滿足企業(yè)在不同層次和環(huán)節(jié)上的管理需求,這也是決定軟件開發(fā)項(xiàng)目成敗的關(guān)鍵因素。
(二)先進(jìn)性
毋庸置疑,在信息技術(shù)不斷變化發(fā)展的時代背景下,先進(jìn)性是軟件項(xiàng)目設(shè)計(jì)開發(fā)過程中必須充分考慮的問題,這可以有效降低企業(yè)在未來的投入,避免未來在軟件項(xiàng)目開發(fā)中的重復(fù)建設(shè)和系統(tǒng)升級等問題。因此,企業(yè)在進(jìn)行軟件項(xiàng)目的開發(fā)設(shè)計(jì)時,一定要面向社會經(jīng)濟(jì)的未來發(fā)展方向和人民生活需求的變化趨勢,緊跟社會步發(fā)展的步伐,與信息技術(shù)、計(jì)算機(jī)技術(shù)、通信技術(shù)以及相關(guān)學(xué)科的發(fā)展方向保持一致,這樣才能不斷推動社會的進(jìn)步。
(三)經(jīng)濟(jì)性
任何一個軟件項(xiàng)目的設(shè)計(jì)與開發(fā),都必須充分考慮到投入產(chǎn)出比的問題,力爭用最小的經(jīng)濟(jì)投入獲取最大的投資回報(bào),實(shí)現(xiàn)最好的軟件開發(fā)設(shè)計(jì)效果和更高的經(jīng)濟(jì)效益,這也是軟件開發(fā)企業(yè)的主要目標(biāo)。因此,在保證軟件開發(fā)質(zhì)量的前提下,軟件的開發(fā)費(fèi)用需要控制在合理的預(yù)算范圍之一,并盡量壓縮,在設(shè)計(jì)開發(fā)過程中必須要考慮到軟件在后期運(yùn)行維護(hù)過程中的費(fèi)用投入,實(shí)現(xiàn)軟件項(xiàng)目設(shè)計(jì)與開發(fā)全過程費(fèi)用的節(jié)約。
(四)系統(tǒng)性
在軟件項(xiàng)目的開發(fā)設(shè)計(jì)中,一定保證其整體功能的完整性,既能滿足企業(yè)在整體上的管理需要,設(shè)計(jì)與開發(fā)的系統(tǒng)必須能夠全面、完整覆蓋企業(yè)管理的軟件信息系統(tǒng),又要能夠滿足采購、生產(chǎn)、銷售等個別部門的`管理需求,便于各個部門之間信息數(shù)據(jù)的傳遞和銜接。此外,還應(yīng)當(dāng)制定系統(tǒng)的軟件項(xiàng)目設(shè)計(jì)與開發(fā)的管理規(guī)范,如開發(fā)文檔的管理規(guī)范、報(bào)表文件規(guī)范、數(shù)據(jù)格式規(guī)范等,這是確保軟件系統(tǒng)開發(fā)和操作水平的重要條件。
(五)可靠性
為了充分保證軟件項(xiàng)目系統(tǒng)運(yùn)行的高效、平穩(wěn)和準(zhǔn)確,不僅要保證軟件系統(tǒng)在正常運(yùn)行狀況下數(shù)據(jù)傳遞的準(zhǔn)確性和系統(tǒng)運(yùn)行的可靠性,還需要確保軟件系統(tǒng)項(xiàng)目在非正常狀態(tài)下的可靠運(yùn)行,因此在軟件項(xiàng)目的開發(fā)設(shè)計(jì)過程中要提前針對一些緊急情況制定相應(yīng)的應(yīng)對策略。一個優(yōu)秀、可靠的軟件系統(tǒng),必然是一個靈活的系統(tǒng),即使在軟、硬件環(huán)境發(fā)生故障時,仍舊能夠保持部分使用或正常運(yùn)行。
二、軟件項(xiàng)目設(shè)計(jì)與開發(fā)的全過程管理
(一)軟件項(xiàng)目設(shè)計(jì)與開發(fā)的啟動
在軟件項(xiàng)目的設(shè)計(jì)與開發(fā)過程中,實(shí)施全過程管理的第一個階段就是項(xiàng)目的啟動。在軟件項(xiàng)目的啟動階段,首先,要明確軟件項(xiàng)目設(shè)計(jì)與開發(fā)的目的,并在軟件開發(fā)與軟件使用的雙方協(xié)議或者合同中進(jìn)行約束,并對軟件設(shè)計(jì)的主題、工程量進(jìn)行量化,合理確定軟件項(xiàng)目開發(fā)和設(shè)計(jì)的階段目標(biāo)和周期。其次,要加強(qiáng)同軟件用戶的充分溝通,了解用戶的軟件使用需求,理清軟件記錄的關(guān)鍵點(diǎn),制定出完整的軟件設(shè)計(jì)與開發(fā)流程;再次,對于在調(diào)研過程中所獲取的原始資料,一定要進(jìn)行加工處理,理清相關(guān)的約束條件和非功能性的客戶需求,確保軟件開發(fā)與建設(shè)項(xiàng)目具有很強(qiáng)的可實(shí)現(xiàn)性。
(二)軟件項(xiàng)目設(shè)計(jì)與開發(fā)的規(guī)劃
軟件項(xiàng)目的規(guī)劃,是軟件設(shè)計(jì)與開發(fā)過程中比較復(fù)雜的階段,也是決定軟件開發(fā)質(zhì)量和開發(fā)水平的關(guān)鍵,做好軟件項(xiàng)目的整體規(guī)劃將會為整個軟件項(xiàng)目的運(yùn)行奠定良好的基礎(chǔ)。具體說來,軟件項(xiàng)目規(guī)劃主要包括項(xiàng)目預(yù)算、風(fēng)險(xiǎn)分析與預(yù)測、進(jìn)度管理、質(zhì)量控制等內(nèi)容,在編制軟件項(xiàng)目的開發(fā)計(jì)劃時,一定要理清各個開發(fā)環(huán)節(jié)之間的關(guān)系,并制定出完整、科學(xué)的項(xiàng)目計(jì)劃書,以期為軟件項(xiàng)目設(shè)計(jì)與開發(fā)的全過程管理提供相應(yīng)的參考依據(jù)。
(三)軟件項(xiàng)目設(shè)計(jì)與開發(fā)的實(shí)施
軟件項(xiàng)目實(shí)施階段的有效管理,其目的就是要保證軟件項(xiàng)目安裝在預(yù)先設(shè)置的計(jì)劃上正常運(yùn)行,確保項(xiàng)目不要偏離預(yù)定的開發(fā)進(jìn)程和設(shè)計(jì)目標(biāo)。在軟件項(xiàng)目的實(shí)施階段,一定要按照軟件項(xiàng)目的初步規(guī)劃進(jìn)行,并在實(shí)施過程中,增強(qiáng)對軟件項(xiàng)目開發(fā)的有效控制,確保成本支出控制在相應(yīng)的預(yù)算定額之內(nèi)。同時,要對軟件項(xiàng)目開發(fā)的成果進(jìn)行動態(tài)的監(jiān)控,隨時與原先的計(jì)劃過程進(jìn)行比較,對于出現(xiàn)的偏差或缺陷要及時進(jìn)行調(diào)整,確保各項(xiàng)軟件開發(fā)指標(biāo)和系統(tǒng)功能的順利實(shí)現(xiàn)。
(四)軟件項(xiàng)目設(shè)計(jì)與開發(fā)的結(jié)束
一個完善的軟件項(xiàng)目管理過程,必然離不開軟件項(xiàng)目的結(jié)束,這時相關(guān)人員要進(jìn)一步確認(rèn)軟件項(xiàng)目在設(shè)計(jì)與開發(fā)過程中取得的成就,做好軟件項(xiàng)目的交接、評審等工作。
三、結(jié)語
總之,為了提高軟件項(xiàng)目設(shè)計(jì)與開發(fā)的質(zhì)量和水平,軟件設(shè)計(jì)人員需要首先認(rèn)識到軟件質(zhì)量的重要性,樹立應(yīng)有的軟件項(xiàng)目質(zhì)量管理意識,要堅(jiān)持正確的軟件設(shè)計(jì)與開發(fā)原則,懂得加強(qiáng)過程管理與控制,同時還要對風(fēng)險(xiǎn)控制、配置管理等環(huán)節(jié)給予足夠的重視,采用科學(xué)的技術(shù)方法和先進(jìn)的管理技術(shù)來提高軟件項(xiàng)目質(zhì)量管理的有效性。
參考文獻(xiàn):
[1]李勇華,駱啟武,付春燕.基于問題管理提升軟件項(xiàng)目過程質(zhì)量的實(shí)踐[J].計(jì)算機(jī)與現(xiàn)代化,2007,4.
[2]商惠華.基于過程改進(jìn)的軟件質(zhì)量管理模型[J].計(jì)算機(jī)工程與設(shè)計(jì),2011,5.
[3]雷堅(jiān).項(xiàng)目管理在軟件開發(fā)中的應(yīng)用探究[J].軟件導(dǎo)刊,2011,7.
;
(轉(zhuǎn))軟件開發(fā)需求分析五個常見錯誤及應(yīng)對措施
在軟件開發(fā)的傳統(tǒng)瀑布模型中,需求分析的第一個階段也是最重要的階段。這個階段包括以最清楚的形式搜集與客戶要求和定義有關(guān)的信息以及希望產(chǎn)品解決的問題。
這種分析包括了解客戶的商業(yè)背景和限制、產(chǎn)品必須執(zhí)行的功能、它必須實(shí)現(xiàn)的性能水平、以及它必須兼容的外部系統(tǒng)。用來了解這些問題的技巧包括客戶面談、使用情況和軟件特性“購物清單”。分析結(jié)果一般以正式需求規(guī)范的形式呈現(xiàn),并作為下一個步驟的輸入。
至少,這是它理論上的應(yīng)用情況。實(shí)際上,這個理論模型存在著許多問題,這些問題可能給分析過程的其它步驟造成延遲或連鎖性錯誤。本文討論項(xiàng)目經(jīng)理在這個階段中遇到的一些常見問題,并提出可能的解決方案。
在需求分析階段,可能最常見的問題就是客戶對于他們的需要僅有一個模糊的概念,而要由你提出合適的問題、進(jìn)行必要的分析,把這個不確定的概念轉(zhuǎn)化成一個正式文本化的軟件需求規(guī)范;這個規(guī)范反過來又可用作一個項(xiàng)目計(jì)劃和工程結(jié)構(gòu)的基礎(chǔ)。
要解決這個問題,你應(yīng)當(dāng):
軟件開發(fā)項(xiàng)目中遇到的第二個問題是,隨著項(xiàng)目的發(fā)展,在第一階段定義的需求發(fā)生了變化。隨著開發(fā)不斷取得進(jìn)展,軟件原型得以確定,這時客戶能夠更加清楚的發(fā)現(xiàn)原始計(jì)劃中存在的問題并做出必要的糾正,于是需求也因而改變。需求發(fā)生改變還可能是因?yàn)橥獠凯h(huán)境的變化要求改造原始的商業(yè)問題,并因此有必要開發(fā)一個與最初建議的解決方案全然不同的解決方案。優(yōu)秀的項(xiàng)目經(jīng)理意識到這些可能性,并往往制定了后備計(jì)劃來應(yīng)對這些變化。
要解決這個問題,你應(yīng)當(dāng):
我們常常聽到客戶這樣說:“這是一個非常緊迫的任務(wù),我們需要項(xiàng)目在X周內(nèi)完成。”常見的錯誤就是,沒有進(jìn)行詳細(xì)分析,并了解項(xiàng)目的范圍以及完成項(xiàng)目所必需的資源,就同意客戶的要求。未經(jīng)討論就同意不合理的時間表,你實(shí)際上在給客戶造成傷害:項(xiàng)目很有可能被延期(因?yàn)椴豢赡馨磿r完成),或存在質(zhì)量問題(因?yàn)槟阍谮s工,沒有進(jìn)行適當(dāng)?shù)臋z驗(yàn))。
要解決這個問題,你應(yīng)當(dāng):
通常,客戶和工程師之間由于背景差異以及理解技術(shù)條款的不同方式,他們無法進(jìn)行有效地溝通。這可能導(dǎo)致混亂和嚴(yán)重的溝通問題;因此,項(xiàng)目經(jīng)理的一項(xiàng)重要任務(wù)——特別是在需求分析階段——就是保證雙方能夠準(zhǔn)確了解交付成果以及必須完成的任務(wù)。
要解決這個問題,你應(yīng)當(dāng):
Bolman和Deal這兩位學(xué)者認(rèn)為一位高效的項(xiàng)目經(jīng)理是一個把組織看作一個“競爭舞臺”的人,它理解權(quán)力、沖突、談判和聯(lián)盟的重要性。這樣的經(jīng)理不僅熟悉運(yùn)作和職能任務(wù),他或她還認(rèn)識到為通用目標(biāo)制定議程、建立觀點(diǎn)一致的聯(lián)盟以及向抗拒性的經(jīng)理說明一個特定職位合法性的重要性。
在給大型組織執(zhí)行大型項(xiàng)目時,這些技巧尤其重要,因?yàn)樾畔⒊37稚⒃诟魈帲虼诵枨蠓治鐾鶗艿叫湃螁栴}、內(nèi)部利益沖突和信息低效這些因素的阻礙。
要解決這個問題,你應(yīng)當(dāng):
軟件開發(fā)過程中的常見問題有哪些?
1.前言應(yīng)用軟件系統(tǒng)是事件驅(qū)動的軟件系統(tǒng),系統(tǒng)通過接口接受事件后,交由系統(tǒng)業(yè)務(wù)層處理,業(yè)務(wù)層處理完事件后將需要的信息存入數(shù)據(jù)庫,整個應(yīng)用軟件系統(tǒng)分為三個子系統(tǒng):接口子系統(tǒng),業(yè)務(wù)子系統(tǒng),數(shù)據(jù)庫子系統(tǒng),業(yè)務(wù)子系統(tǒng)進(jìn)一步分為三個子系統(tǒng):表示層,業(yè)務(wù)層,數(shù)據(jù)接入層。其中業(yè)務(wù)層是整個系統(tǒng)的核心,表示層負(fù)責(zé)通過接口子系統(tǒng)接收系統(tǒng)事件交給業(yè)務(wù)層處理,數(shù)據(jù)接入層供業(yè)務(wù)層使用完成數(shù)據(jù)的持久化。每個層對編程人員的技術(shù)要求是不同的,表示層需要了解的技術(shù)根據(jù)接口子系統(tǒng)選擇的不同而不同:如windows界面,需要對MFC有比較深入的了解,web界面則要求對asp,asp.net,或jsp有比較深入的了解。數(shù)據(jù)訪問層需要的技術(shù)則由數(shù)據(jù)庫子系統(tǒng)的選擇決定,另外還需要了解:ODBC,JDBC等。接口子系統(tǒng)的選擇:windows界面,java界面,web界面,命令行接口,CTI, API等 數(shù)據(jù)庫子系統(tǒng)的選擇:關(guān)系數(shù)據(jù)庫,普通文件等基于以上對應(yīng)用軟件系統(tǒng)的理解,軟件開發(fā)流程的輸入是用戶的業(yè)務(wù)需求,輸出就是系統(tǒng)的業(yè)務(wù)層、表示層、數(shù)據(jù)接入層的代碼,以及接口和數(shù)據(jù)庫,以及各種文檔。因此得到比較理想化的軟件開發(fā)流程圖,該圖使用uml中的活動圖描述。2.需求分析階段需求分析階段的常見問題是:需求分析不夠深入,對問題域沒有仔細(xì)研究,急于進(jìn)入設(shè)計(jì)階段。造成這種問題一方面是因?yàn)轫?xiàng)目管目趕進(jìn)度以及存在于管理人員頭腦中的根深蒂固的想法:任何時候不能讓任何人員閑著,另外很大的原因是很多人不知道如何進(jìn)一步深入研究問題域。需求分析階段不僅要列出系統(tǒng)的use case,更重要的是要列出use case的輸入輸出和例外情況等,以及問題域中的對象之間的靜態(tài)關(guān)系和動態(tài)關(guān)系,如對象間的包含關(guān)系,繼承關(guān)系,調(diào)用關(guān)系等。需求分析階段另外一個常見的問題是常常將需求分析等同于數(shù)據(jù)庫設(shè)計(jì),需求分析階段定義的是系統(tǒng)作什么,而不是怎么做,需求分析的結(jié)果應(yīng)該與具體的技術(shù)實(shí)現(xiàn)無關(guān)。數(shù)據(jù)庫設(shè)計(jì)是技術(shù)實(shí)現(xiàn)的細(xì)節(jié),應(yīng)該盡可能的推遲技術(shù)細(xì)節(jié)的決策,不應(yīng)該使技術(shù)細(xì)節(jié)束縛了我們對系統(tǒng)需求的理解。需求分析階段應(yīng)該從用戶的角度對系統(tǒng)建模,不應(yīng)將大量的技術(shù)細(xì)節(jié)暴露給用戶,導(dǎo)致系統(tǒng)易用性差。需求分析階段可以進(jìn)一步細(xì)分為業(yè)務(wù)需求分析階段和系統(tǒng)功能需求分析階段。在很多研發(fā)性質(zhì)的系統(tǒng)中,不注重業(yè)務(wù)需求分析,只有系統(tǒng)功能需求分析,導(dǎo)致開發(fā)人員知其然不知其所以然。系統(tǒng)功能規(guī)范文檔與業(yè)務(wù)需求文檔的重要區(qū)別有以下幾點(diǎn):內(nèi)容不同:系統(tǒng)需求分為功能需求和非功能需求,功能需求進(jìn)一步分為業(yè)務(wù)功能需求和非業(yè)務(wù)功能需求。系統(tǒng)需求規(guī)范文檔除了包括業(yè)務(wù)需求文檔中的業(yè)務(wù)功能需求,功能規(guī)范文檔需要增加以下內(nèi)容:系統(tǒng)的非業(yè)務(wù)功能需求,由于業(yè)務(wù)需求由計(jì)算機(jī)系統(tǒng)實(shí)現(xiàn)而產(chǎn)生的功能需求,如系統(tǒng)需要系統(tǒng)管理員管理,系統(tǒng)管理員的角度產(chǎn)生一些非業(yè)務(wù)功能需求,另外需要描述系統(tǒng)非功能需求:數(shù)據(jù)量,性能要求,響應(yīng)速度,可用性要求,可靠性要求,界面語言要求等等。 閱讀的對象不同:業(yè)務(wù)需求文檔是用來與業(yè)務(wù)人員交流,功能規(guī)范文檔是開發(fā)人員開發(fā)的依據(jù) 使用的語言不同:業(yè)務(wù)需求文檔使用自然語言書寫,而功能規(guī)范文檔使用比較嚴(yán)謹(jǐn)?shù)恼Z言,如:uml書寫 對編寫人的要求不一樣:業(yè)務(wù)需求編寫人員只需要對業(yè)務(wù)系統(tǒng)熟悉,系統(tǒng)規(guī)范由系統(tǒng)架構(gòu)師完成 體現(xiàn)系統(tǒng)架構(gòu)師價(jià)值的地方是編寫系統(tǒng)規(guī)范文檔和業(yè)務(wù)層設(shè)計(jì), 系統(tǒng)規(guī)范文檔是下一步界面設(shè)計(jì),業(yè)務(wù)層設(shè)計(jì)和數(shù)據(jù)庫設(shè)計(jì)的依據(jù),表示層,業(yè)務(wù)層,數(shù)據(jù)訪問層之間是相互聯(lián)系的,它們之間的關(guān)系應(yīng)該在系統(tǒng)規(guī)范文檔中找到。3.架構(gòu)設(shè)計(jì)階段架構(gòu)設(shè)計(jì)階段的常見問題是將架構(gòu)設(shè)計(jì)理解為技術(shù)架構(gòu)設(shè)計(jì),實(shí)際上架構(gòu)設(shè)計(jì)分為技術(shù)架構(gòu)設(shè)計(jì)和業(yè)務(wù)架構(gòu)設(shè)計(jì)。技術(shù)架構(gòu)一般由系統(tǒng)軟件商提供,可以在不同的應(yīng)用軟件系統(tǒng)中使用,例如:微軟的MFC, SUN的J2EE等。對于一個應(yīng)用軟件系統(tǒng),更重要的是業(yè)務(wù)架構(gòu)的設(shè)計(jì),也就是將需求分析階段中得到的各種關(guān)系,根據(jù)系統(tǒng)的非功能需求將需求分析轉(zhuǎn)變?yōu)榇a。其實(shí)沒有業(yè)務(wù)架構(gòu)的設(shè)計(jì)也是可以的,很多項(xiàng)目中直接將對象之間的各種關(guān)系以數(shù)據(jù)庫的方式實(shí)現(xiàn),這樣的系統(tǒng)不是面向?qū)ο蟮?,因此面向?qū)ο笤O(shè)計(jì)的很多好處不能體現(xiàn)。由于在架構(gòu)設(shè)計(jì)階段中沒有進(jìn)一步細(xì)分,通常會導(dǎo)致不能準(zhǔn)確估計(jì)任務(wù)量,造成項(xiàng)目計(jì)劃變成擺設(shè)。4.詳細(xì)設(shè)計(jì)階段詳細(xì)設(shè)計(jì)階段一個重要的任務(wù)是系統(tǒng)持久化設(shè)計(jì)。對應(yīng)用系統(tǒng)而言,持久化設(shè)計(jì)只是管理存儲的機(jī)制,有多種技術(shù)手段可以選擇:可以是面向?qū)ο髷?shù)據(jù)庫管理系統(tǒng),簡單的文件,或者是關(guān)系數(shù)據(jù)庫,也可以是使用ORM工具等。總之應(yīng)該把它留到最后作為細(xì)節(jié)處理。我們不應(yīng)該將我們的系統(tǒng)和任何特定的技術(shù)綁定在一起。我們可以根據(jù)需求自由選擇需要的持久化技術(shù),并且保留在將來需要時更改持久化技術(shù)的自由。5.編碼階段編碼階段還處于小農(nóng)經(jīng)濟(jì),自給自足,沒有分工合作。編碼階段以use case為粒度安排工作,這樣的安排方式要求每一個開發(fā)人員必須對表示層,業(yè)務(wù)層,數(shù)據(jù)接入層的所有技術(shù)都要有比較深入的了解,由于每個開發(fā)人員各自只對自己的use case負(fù)責(zé),對別人的use case不了解,但是每一個use case會有功能重復(fù)的地方,導(dǎo)致大量的重復(fù)工作。編碼階段工作安排的粒度應(yīng)該是類,編碼階段工作的安排原則是先分層,再分割,按照表示層,業(yè)務(wù)層,數(shù)據(jù)訪問層分開后,每一層內(nèi)可以進(jìn)一步分為不同類,使用測試驅(qū)動的編程方法,每個編程人員單獨(dú)編寫代碼,并進(jìn)行單元測試。每個層次的編程人員只需要對某一種技術(shù)有比較深入的了解。6.測試階段很多人分不清什么是單元測試,什么是集成測試,什么是系統(tǒng)測試?測試的順序是先單元測試,然后是集成測試,最后是系統(tǒng)測試。單元測試是源代碼級的測試,一般由編程人員自己使用各種unit工具測試,是白盒測試。集成測試是在單元測試結(jié)束后,將一個或若干個單元作為一個子系統(tǒng)的黑盒測試,測試子系統(tǒng)內(nèi)的所有組件可以正確的交互,集成測試通過對子系統(tǒng)不斷增加新的單元最后完成整個系統(tǒng)的測試,集成測試不應(yīng)由開發(fā)人員完成。7.結(jié)束軟件開發(fā)過程中,各種輔助工具以及process很重要,但是使用工具和process的最終目的是為了更高效的在開發(fā)人員之間溝通交流,記錄存在開發(fā)人員腦子里的想法,不要為了process而process。不能以為會使用MS word,就認(rèn)為可以成為作家。最后引用Robert Martin的《敏捷軟件開發(fā):原則、模式與實(shí)踐》中的一句話作為本文的結(jié)束:過渡信賴工具和過程以及低估智力和經(jīng)驗(yàn)都是軟件開發(fā)災(zāi)難的源泉。 注: 本文摘自網(wǎng)絡(luò) 臺州極速網(wǎng)絡(luò)有限公司愿以雄厚的技術(shù)實(shí)力基礎(chǔ)
關(guān)于軟件開發(fā)會遇到什么問題及對策
軟件開發(fā)的過程中遇到的問題有很多,主要的會有以下問題:
1、調(diào)研的時候分析不到位帶來的問題
在軟件開發(fā)過程中,你需要做的很基礎(chǔ)的就是調(diào)研工作,在這個時候你得跟客戶進(jìn)行直接的交流,掌握其需求并且針對性的分析,以確??蛻羲磉_(dá)的需求能夠充分的實(shí)現(xiàn)。但事實(shí)上,在于客戶的交流中,可能會因?yàn)閷π枨蟊磉_(dá)不夠明確,以及不斷的更換需求,還有就是分析人員自身在理解上有所偏差,這就會造成軟件開發(fā)進(jìn)展變得比較有難度。
2、前期對功能的梳理不可能一蹴而就
在具體到軟件開發(fā)過程的時候,工程師都會簡單的梳理下可能需要達(dá)到的功能,但是并不能做到完美的梳理工作。而真的在執(zhí)行的時候,可能經(jīng)常會出現(xiàn)一些細(xì)微的變動,但是這些變動你又不得不重視,有可能根本就沒辦法控制。只要你的軟件沒有真正的開發(fā)出來,中途可能面臨的各種更改就會是持續(xù)不斷的。
3、測試階段不是工作完成而是繼續(xù)改進(jìn)
可能在進(jìn)入到測試階段的時候,你會以為軟件開發(fā)過程走到了終點(diǎn),但其實(shí)這個時候的測試只是為了要找出更多的錯誤,而不是說你的程序就已經(jīng)是完美的了。通常這個測試都是在公司內(nèi)部來進(jìn)行的,再把各種調(diào)試工作和模塊接口處理等工作做完之后,還要等待客戶的試用,知道真的萬無一失才可以提交報(bào)告。
以上就是對于軟件開發(fā)過程中可能會遇到哪些問題的簡單介紹,我們啟云時代就是做軟件開發(fā)定制的,多年來積累下的經(jīng)驗(yàn)都分享啦希望能都幫助你。
關(guān)于軟件開發(fā)過程問題分析和軟件開發(fā)過程問題分析論文的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。