產(chǎn)品體驗中心 下載與支持 產(chǎn)品社區(qū) 澤眾云   合作代理 |  咨詢電話:400-035-7887/021-6072 5088
當(dāng)前位置:澤眾軟件測試網(wǎng)- 技術(shù)文章 -正文

帶您了解軟件項目開發(fā)的各個階段及注意事項

發(fā)布時間:2020-07-08

開發(fā)一套適合某些行業(yè)的軟件系統(tǒng)從來不是一件容易的事情,動手開發(fā)之前首先要確定項目規(guī)模,項目周期,項目預(yù)算,項目人員等等。

不打算從項目管理的角度來看,只從開發(fā)的角度來看待其中的一些問題。也許可以劃分成下面幾個部分:

升軟件開發(fā)項目管理

確定需求

軟件項目需求是用來解決做什么的問題,這些需求來自用戶,用戶指的是使用軟件的人,需求整理從粗到細(xì),做好需求文檔,需求分析,圖文并茂,需求整理抓住幾個要點(diǎn):需求提出人是誰,要實(shí)現(xiàn)什么功能,需要達(dá)到的目的,做需求不是僅僅記錄用戶說的每一句話,而是通過與用戶的溝通來理解用戶真實(shí)的想法,可能用戶并不是那么專業(yè),用詞也許不一定準(zhǔn)確,需求分析的目的就是為了捕捉用戶的真實(shí)思想而做的工作,可以通過原型圖與用戶進(jìn)行逐步的深入溝通來保證需求的正確性。

梳理業(yè)務(wù)流程

有了需求之后,接下來就是歸納整理了,從需求中分析出業(yè)務(wù)模型,整理出業(yè)務(wù)流程,業(yè)務(wù)字典,明晰業(yè)務(wù)邏輯,業(yè)務(wù)分析不涉及技術(shù)問題,只需要描述出一個文檔,可以讓市場人員或開發(fā)人員能夠根據(jù)文檔描述來了解用戶的業(yè)務(wù)是如何運(yùn)作的,可以通過建模工具畫出業(yè)務(wù)框架圖或業(yè)務(wù)流程圖,甚至是原型圖。

規(guī)劃系統(tǒng)模塊

開發(fā)人員熟悉了用戶的業(yè)務(wù)需求后就可以考慮如何進(jìn)行系統(tǒng)開發(fā)了,要考慮的問題包括系統(tǒng)架構(gòu)設(shè)計,開發(fā)語言選擇,數(shù)據(jù)庫表設(shè)計,通訊模式通訊協(xié)議。如何進(jìn)行系統(tǒng)規(guī)劃呢?這很重要,好的架構(gòu)可以事半功倍,要考慮好系統(tǒng)的健壯性,易擴(kuò)展性。系統(tǒng)規(guī)劃包括技術(shù)層面和業(yè)務(wù)層面的規(guī)劃,首先根據(jù)系統(tǒng)的業(yè)務(wù)需求,確定需要的技術(shù)架構(gòu)是B/S,C/S架構(gòu)或者是混合架構(gòu),架構(gòu)設(shè)計包括網(wǎng)絡(luò)層,業(yè)務(wù)邏輯層,接口層設(shè)計等。

網(wǎng)絡(luò)層要完成的內(nèi)容是客戶端連接的管理,并發(fā)連接處理,網(wǎng)絡(luò)容錯處理等等一切與業(yè)務(wù)無關(guān)的技術(shù)問題。網(wǎng)絡(luò)層,業(yè)務(wù)層,接口層各個分層要具有獨(dú)立性,而不是揉雜在一起,這樣可以達(dá)到技術(shù)上的重用,以后可以把各個分層架構(gòu)重用到不同的項目中去,要做好這種隔離設(shè)計可能需要用到一些設(shè)計模式來規(guī)劃好各個層間的接口了。

業(yè)務(wù)邏輯層設(shè)計,首先確定有多少業(yè)務(wù)對象,所謂對象就是業(yè)務(wù)中涉及到的人和物還有可能是一個系統(tǒng)。其次是規(guī)劃對象接口,業(yè)務(wù)對象之間的聯(lián)系和通訊就是是通過接口調(diào)用進(jìn)行的,每個對象實(shí)現(xiàn)各自的業(yè)務(wù)邏輯。每個業(yè)務(wù)對象都是獨(dú)立的個體,一個對象只處理自身的業(yè)務(wù)邏輯和數(shù)據(jù),通過接口通訊來影響其他對象的狀態(tài)。業(yè)務(wù)對象有大到小細(xì)致劃分,對象之間要做到低耦合,高內(nèi)聚,換句話說是對象間的依賴關(guān)系盡可能低,各個模塊盡可能獨(dú)立,接口調(diào)用簡單,大家各掃門前雪,各干各的活,完成后需要把結(jié)果告訴別人時才去打擾別人。

接口層設(shè)計,這部分也是比較關(guān)鍵的,每個對象之間需要接口設(shè)計,每個層之間通訊也需要接口設(shè)計,所謂接口可以是函數(shù),對象方法也可以是調(diào)用的web的URL。對象或者各個層間通過接口調(diào)用進(jìn)行信息交換,接口設(shè)計的原則是:意思明確,這個接口是用來做什么的定義清楚;業(yè)務(wù)邏輯單一,一個接口只處理同一個業(yè)務(wù)相關(guān)的事情;可擴(kuò)展,接口的參數(shù)處理要兼顧可變性,隨著業(yè)務(wù)改變可能會增加或減少參數(shù),但已經(jīng)確定下來的參數(shù)意義不能改變。

各個模塊具體怎么來定義接口,按什么樣的方式設(shè)計才能做到松耦合,高內(nèi)聚呢?可以參考一下設(shè)計模式相關(guān)內(nèi)容,選擇一些合適的模式,包括觀察者模式、工廠模式、命令模式等等。

無論什么時候都要將模塊化思維貫徹到底,將模塊化思維固化在腦子里形成思考習(xí)慣是非常有益的。在合作的一些項目中,有些項目代碼簡直目不忍睹,令人窒息,代碼邏輯一團(tuán)糟,不懂設(shè)計,寫出的代碼就是簡單語句的流水式展示,甚至使用了超多的if和else判斷語句來走完一個復(fù)雜的業(yè)務(wù)流程,一個函數(shù)成百上千行代碼,搞的編譯器都在抱怨分支太多產(chǎn)生了編譯錯誤,這樣的程序結(jié)構(gòu)還是一位項目頭頭搞的,批評別人的時候,自己還沾沾自喜的問別人,看看我寫的代碼是不是邏輯清楚,是不是很簡單,真是奇葩。隨著業(yè)務(wù)流程的增加這種流水式的編程以后將會成為項目組所有人的噩夢。

設(shè)計的模塊具體要怎么呈現(xiàn)呢?答案是使用UML建模工具來畫各種模型圖,類圖,序列圖,流程圖等等,對復(fù)雜的項目UML建模工具是必須的。

代碼編寫

梳理清楚業(yè)務(wù)流程,設(shè)計好系統(tǒng)模塊之后的事情就是編碼了,把軟件看成是一棟樓的話,系統(tǒng)模塊設(shè)計完成了整棟樓的圖紙設(shè)計,編碼就是要用材料把圖紙內(nèi)容變成現(xiàn)實(shí)。

代碼怎么寫,從哪里下手?首先要遵循之前的模塊設(shè)計的邏輯,可以先定義模塊類及其接口函數(shù),然后是整個模塊的業(yè)務(wù)邏輯實(shí)現(xiàn)的代碼,這個就要非常細(xì)致了,要根據(jù)流程圖來合理定義內(nèi)部函數(shù),從主流程到分支逐級展開,函數(shù)名要言簡意賅,意義明確,最好達(dá)到望文生義的效果。

每個模塊對象都實(shí)現(xiàn)之后,接下來是把全部的模塊整合起來,這時可以定義一個系統(tǒng)控制模塊,這個模塊負(fù)責(zé)配置各個子模塊間的接口調(diào)用,進(jìn)行信息傳遞。

軟件開發(fā)項目管理工具ProjectCenter提供面向工程項目和研發(fā)項目的項目管理,支持固定工期作業(yè)和非固定工期作業(yè);支持多種資源管理:人工、非人工、材料;支持多價格和多日歷管理;支持多部門、多層次的項目組織結(jié)構(gòu)和項目組合管理;提供面向部門的成本管理、部門資源管理、權(quán)限管理、日歷管理;支持精細(xì)的報工管理、支持任務(wù)成果管理、項目范圍管理、交付物管理。

推薦閱讀:

項目進(jìn)度管理需要注意幾個關(guān)鍵點(diǎn)

軟件項目管理系統(tǒng)都包括哪些主要功能?IT公司用什么項目管理軟件比較好?

如何做好軟件研發(fā)項目管理?實(shí)施研發(fā)項目管理4大要點(diǎn)

軟件開發(fā)項目管理方法:軟件質(zhì)量控制及人員組織管理

怎么進(jìn)行軟件項目的進(jìn)度管理?如何通過甘特圖控制項目進(jìn)度?

如何做好軟件項目管理:詳解軟件項目管理的具體流程

怎么提升軟件開發(fā)項目管理?軟件開發(fā)項目的管理策略與注意要點(diǎn)

本文內(nèi)容不用于商業(yè)目的,如涉及知識產(chǎn)權(quán)問題,請權(quán)利人聯(lián)系SPASVO小編(021-60725088-8054),我們將立即處理,馬上刪除。
滬ICP備07036474號 2003-2024 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd.
微信
咨詢

添加客服微信 歡迎咨詢測試工具和測試服務(wù)

微信客服
問題
反饋
產(chǎn)品
畫冊

掃描二維碼下載澤眾軟件企業(yè)宣傳冊

產(chǎn)品畫冊
返回
頂部

方案咨詢

×
提交信息

電話咨詢,400-035-7887,安排專業(yè)技術(shù)售前給您解答(產(chǎn)品試用、技術(shù)交流、服務(wù)咨詢和商務(wù)報價)。

您的信息已成功提交!

我們的客服人員稍后會與您聯(lián)系