想做好定制軟件開發工作,必須對定制軟件開發流程管理必須做科學,每一步定位清晰,目標明確,下面對定制軟件開發工作流進行拆解分析:
需求分析
資深軟件系統分析師對企業所面臨的管理問題進行分析
需求初步確認
軟件系統分析師初步確認企業需求,作為合同確認的依據
系統調研
軟件系統分析師對企業的初步需求進行詳細調研,確定系統界面的設計和運行的流程
需求說明書
將軟件系統分析師對企業詳細調研文稿化,經雙方討論確認后,開始系統界面設計
界面設計
專業軟件開發工程師及美工設計師完成系統界面設計,經用戶確認,開始軟件開發
開發及測試
專業軟件開發工程師和測試工程師完成系統軟件開發和測試,強大測試力量和一對一軟件測試體系,確保系統軟件質量
使用培訓
專業培訓講師對企業進行軟件基礎知識和系統軟件運作流程全面培訓
初始化試運行
專業軟件工程師輔導用戶使用系統,協助用戶進行初始化工作;系統初始化完畢,進行試運行階段,測試系統功能的完善性和全面性
正式切換 雙方共同測評系統,確保系統能全面符合用戶需求說明書定義的所有功能,正式切換系統
從項目推動過程來講,可以分為:
1、 項目啟動階段
這一階段主要是為實施做好準備,由項目指導委員會召開項目動員大會,確定項目組成員,確定項目的計劃和目標,建立實施所必須的系統環境。
2、調研分析階段
項目實施小組在開始系統實施前,先對公司現有的應用系統進行詳細調研和分析,根據企業的具體情況和信息化管理的特點確定目標業務流程。對各級用戶進行需求調研。最終以雙方確認的目標作為下一步具體實施的業務藍圖,并結合軟件產品和技術開發實際情況,規劃設計詳細的解決方案,并進行確認,作為設計開發的基礎。
3、 系統開發階段
根據調研分析的結果,進行系統設計、編碼、測試,完成軟件的開發。
4、 項目實施階段
在系統開發完成之后,軟件實施進入實質性階段。項目實施小組要在項目指導委員會的全力支持和相關部門、人員的協作配合下完成大量的具體工作,比如數據分析與導入、系統設置、人員培訓、規章制度建立、實施文件歸檔、客戶化修改等。軟件的使用者尤其是關鍵用戶必須在這段時間內掌握相關功能模塊的操作和應用,以便在系統正式運行后能夠獨立地使用軟件。
5、 試運行階段
在經過項目實施階段后,各個模塊及整個系統需要試運行一段時間,以確信軟件能夠在企業中運行良好,并達到預期效果。同時,根據試運行階段中發現的問題進行系統調整。
6、 系統切換/正式運行
在試運行階段后,確信軟件可以正式開始運行后,需要進行系統切換,企業正式切換到新的業務流程,并在軟件上進行企業日常業務處理。至此,軟件的實施已經全部完成,進入后期維護階段。
架構設計
設計的中心思想
1、 以業務邏輯建模,而不是以數據庫為中心建立系統模型
對信息系統的設計,應緊緊專注于將企業生產的系統抽象轉化為信息系統的模型,能夠準確、完整、清晰地了解業務邏輯和業務流程,并且對業務的變化作預先考慮,是項目成功的關鍵。開發人員容易出現的問題是以關系數據庫設計或數據控件的設計代替系統建模,造成的問題是以數據為中心,其結果是系統與數據緊密耦合,難以實現業務邏輯的變化和擴展。
2、 定制軟件開發是否滿足了用戶的期望
為了實現這個目標,完善準確的需求收集和需求分析,是項目成功設計的前提。否則無論這個軟件再先進,從用戶角度看,也是失敗的軟件。因此,在設計前期,對需求分析所必須的資源和時間投入,必須有足夠的重視和充分的計劃。
3、 必須要考慮非軟件的因素
任何一個項目都是為了用戶實現其業務目的,軟件工程也不例外。同時,企業用戶作為一個實體,其決策收到其行業特點、用戶、市場、上級主管部門、決策人員的個性、企業的定位、企業的現狀、長遠發展規劃、歷史因素等綜合情況的影響,因此,在架構設計上,應綜合考慮這些因素。
設計原則
4、 在可能的情況下,按照“統一規劃、統一架構、統一標準”的原則。
5、 以良好的設計模式來保證系統的先進性、合理性和應用擴展性。
6、 系統的模塊之間應用和交互,盡可能采用松耦合,以實現系統的靈活性和實用性,延長系統的生命周期,保護用戶的投資。
7、 采用以SOA作為體系架構的核心,以保證系統級別和部件級別重復使用和業務重組,便于用戶長遠的。
8、 系統的開放性要求能軟件實現三個無關性:通訊組件的網絡及協議無關性,數據來源無關性和用戶對流程無關性。
9、 采用有效的需求分析手段,力圖實現準確到位的需求分析,
為良好的人機界面設計提供堅實的基礎。高度重視用戶界面的設計,作到符合不同用戶的實際經驗和使用習慣,減少對信息系統的畏懼感,提高用戶使用信息系統的信心,真正使系統成為提高生產管理效率的有效工具。
10、盡可能采用經過實際運行檢驗的成熟模塊,
從而節省開發資源和縮短開發周期,確保項目按時交付使用。