北京軟件開(kāi)發(fā)公司如何發(fā)好一個(gè)軟件系統(tǒng)
北京軟件開(kāi)發(fā)公司如何發(fā)好一個(gè)軟件系統(tǒng),關(guān)鍵是開(kāi)發(fā)前期所做的工作,重點(diǎn)是這個(gè)軟件有沒(méi)有一個(gè)好的軟件開(kāi)發(fā)流程:
需求分析——設(shè)計(jì)用戶視圖,數(shù)據(jù)詞典和用戶操作手冊(cè)。
用戶視圖是該軟件用戶(包括終端用戶和管理用戶)所能看到的頁(yè)面樣式,這里面包含了很多操作方面的流程和條件。
數(shù)據(jù)詞典是指明數(shù)據(jù)邏輯關(guān)系并加以整理,完成了數(shù)據(jù)詞典,數(shù)據(jù)庫(kù)的設(shè)計(jì)就完成了一半多。
用戶操作手冊(cè)是指明了操作流程的說(shuō)明書(shū)。用戶操作流程和用戶視圖是由需求決定的,因此應(yīng)該在軟件設(shè)計(jì)之前完成,完成這些,就為程序研發(fā)提供了約束和準(zhǔn)繩。需求分析,除了以上工作,筆者以為作為項(xiàng)目設(shè)計(jì)者應(yīng)當(dāng)完整的做出項(xiàng)目的性能需求說(shuō)明書(shū),因?yàn)橥阅苄枨笾挥卸夹g(shù)的人才可能理解,這就需要技術(shù)專(zhuān)家和需求方(客戶或公司市場(chǎng)部門(mén))能夠有真正的溝通和了解。
概要設(shè)計(jì)——將系統(tǒng)功能模塊初步劃分,并給出合理的研發(fā)流程和資源要求。作為快速原型設(shè)計(jì)方法,完成概要設(shè)計(jì)就可以進(jìn)入編碼階段了,通常采用這種方法是因?yàn)樯婕暗难邪l(fā)任務(wù)屬于新領(lǐng)域,技術(shù)主管人員一上來(lái)無(wú)法給出明確的詳細(xì)設(shè)計(jì)說(shuō)明書(shū),但是并不是說(shuō)詳細(xì)設(shè)計(jì)說(shuō)明書(shū)不重要,事實(shí)上快速原型法在完成原型代碼后,根據(jù)評(píng)測(cè)結(jié)果和經(jīng)驗(yàn)教訓(xùn)的總結(jié),還要重新進(jìn)行詳細(xì)設(shè)計(jì)的步驟。
詳細(xì)設(shè)計(jì)——這是考驗(yàn)技術(shù)專(zhuān)家設(shè)計(jì)思維的重要關(guān)卡,詳細(xì)設(shè)計(jì)說(shuō)明書(shū)應(yīng)當(dāng)把具體的模塊以較‘干凈’的方式(黑箱結(jié)構(gòu))提供給編碼者,使得系統(tǒng)整體模塊化達(dá)到較大;一份好的詳細(xì)設(shè)計(jì)說(shuō)明書(shū),可以使編碼的復(fù)雜性減低到較低,實(shí)際上,嚴(yán)格的講詳細(xì)設(shè)計(jì)說(shuō)明書(shū)應(yīng)當(dāng)把每個(gè)函數(shù)的每個(gè)參數(shù)的定義都精精細(xì)細(xì)的提供出來(lái),從需求分析到概要設(shè)計(jì)到完成詳細(xì)設(shè)計(jì)說(shuō)明書(shū),一個(gè)軟件項(xiàng)目就應(yīng)當(dāng)說(shuō)完成了一半了。換言之,一個(gè)大型軟件系統(tǒng)在完成了一半的時(shí)候,其實(shí)還沒(méi)有開(kāi)始一行代碼工作。
編碼——在規(guī)范化的研發(fā)流程中,編碼工作在整個(gè)項(xiàng)目流程里較多不會(huì)超過(guò)1/2,通常在1/3的時(shí)間,所謂磨刀不誤砍柴功,設(shè)計(jì)過(guò)程完成的好,編碼效率就會(huì)極大提高,編碼時(shí)不同模塊之間的進(jìn)度協(xié)調(diào)和協(xié)作是較需要小心的,也許一個(gè)小模塊的問(wèn)題就可能影響了整體進(jìn)度,讓很多程序員因此被迫停下工作等待,這種問(wèn)題在很多研發(fā)過(guò)程中都出現(xiàn)過(guò)。編碼時(shí)的相互溝通和應(yīng)急的解決手段都是相當(dāng)重要的!
測(cè)試——按照測(cè)試執(zhí)行方,可以分為內(nèi)部測(cè)試和外部測(cè)試;按照測(cè)試范圍,可以分為模塊測(cè)試和整體聯(lián)調(diào);按照測(cè)試條件,可以分為正常操作情況測(cè)試和異常情況測(cè)試;按照測(cè)試的輸入范圍,可以分為全覆蓋測(cè)試和抽樣測(cè)試。以上都很好理解,不再解釋??傊?,測(cè)試同樣是項(xiàng)目研發(fā)中一個(gè)相當(dāng)重要的步驟,對(duì)于一個(gè)大型軟件,3個(gè)月到1年的外部測(cè)試都是正常的,因?yàn)橛肋h(yuǎn)都會(huì)又不可預(yù)料的問(wèn)題存在。完成測(cè)試后,完成驗(yàn)收并完成較后的一些幫助文檔,整體項(xiàng)目才算告一段落,當(dāng)然日后少不了升級(jí),修補(bǔ)等等工作,只要不是想通過(guò)一錘子買(mǎi)賣(mài)騙錢(qián),就要不停的跟蹤軟件的運(yùn)營(yíng)狀況并持續(xù)修補(bǔ)升級(jí),直到這個(gè)軟件被徹底淘汰為止。
以上幾個(gè)階段在軟件開(kāi)發(fā)過(guò)程中占的比重比較大,真正編碼的時(shí)間是非常短的,只有市場(chǎng)調(diào)研做好,能有一個(gè)明確的方案,設(shè)計(jì)出詳細(xì)合理的開(kāi)發(fā)步驟;我們?cè)谶M(jìn)行編碼的時(shí)候才能很順利,開(kāi)發(fā)出來(lái)的軟件才有價(jià)值。有的軟件在沒(méi)有開(kāi)發(fā)出來(lái),還沒(méi)有上線就注定不行了,所以說(shuō)軟件開(kāi)發(fā)流程對(duì)于能否開(kāi)發(fā)出一個(gè)好的軟件是非常重要。