方式確定一套可性的方案。
本次產(chǎn)品版本改造我們非常重視設(shè)計,包括架構(gòu)設(shè)計和UI設(shè)計兩方面。系統(tǒng)技術(shù)選型為ASP.NET后臺 + Silverlight前臺,這對于系統(tǒng)前臺只需要后臺能夠提供穩(wěn)定的通信接口就行,對于系統(tǒng)后臺的整體架構(gòu)可以不關(guān)系其如何實現(xiàn)。鑒于多年來這套產(chǎn)品的實施情況來看,不同的客戶需求不一致,以及部署麻煩等諸多問題。老系統(tǒng)中采用了插件式架構(gòu)的方式將不同的功能模塊進(jìn)行系統(tǒng)功能組件化,以便能夠通過靈活的配置實現(xiàn)系統(tǒng)功能點的動態(tài)組裝,并采用了智能客戶端實現(xiàn)系統(tǒng)部署和更新。
新版本的產(chǎn)品也同樣采用了插件式的架構(gòu)設(shè)計,包括系統(tǒng)后臺業(yè)務(wù)組件的插件化,系統(tǒng)前端插件化功能模塊組合。研發(fā)了一套基于MEF框架的Silverlight插件式架構(gòu)框架,可以靈活的更具系統(tǒng)配置組合系統(tǒng)功能模塊,動態(tài)裝載模塊程序包并托管運行等。
對于設(shè)計管理工作主要涉及到架構(gòu)設(shè)計管理、功能模塊詳細(xì)設(shè)計管理和系統(tǒng)UI設(shè)計管理三方面。
1)、架構(gòu)設(shè)計管理
架構(gòu)設(shè)計以安全、穩(wěn)定、高效、 易維護(hù)、擴展等為導(dǎo)向,基于微軟MEF設(shè)計的插件式開發(fā)框架。通過不斷的優(yōu)化更新,最后確定下最終的框架設(shè)計方案,輸出架構(gòu)設(shè)計文檔并提交到配置管理,然后啟動框架的開發(fā),測試。在具體的研發(fā)過程中出現(xiàn)了相關(guān)的變更通過會議評審確定變更后的解決方案,然后更新架構(gòu)設(shè)計文檔并修改框架實現(xiàn)完善框架功能,整個過程中都有指派專人負(fù)責(zé)。
2)、功能模塊詳細(xì)設(shè)計管理
需求明確的前提下開展功能模塊的詳細(xì)設(shè)計是非常順利的,基本上和架構(gòu)設(shè)計的管理差不多,首先確定下模塊的實現(xiàn)方案,然后編寫詳細(xì)設(shè)計文檔,文檔通過審核后提交到配置管理,然后啟動模塊開發(fā)。如有變更需要從走評審,重復(fù)前面的步驟,每個功能模塊都有指定直接負(fù)責(zé)人。
3)、UI設(shè)計管理
UI設(shè)計管理這塊的工作相對比較簡單點,基本流程也相差不大,首先確定下設(shè)計方案,然后再開展設(shè)計工作,如果設(shè)計出的UI效果圖沒有達(dá)到預(yù)期的效果或者對于前端開發(fā)人員來說比較難以實現(xiàn),就將需求提交給美工進(jìn)行修改。在設(shè)計過程中的步驟大致如下:
A:設(shè)計出主體界面框架效果圖,確定后由研發(fā)人員實現(xiàn)系統(tǒng)主體框架界面。
B:設(shè)計出通用的界面元素,確定后由研發(fā)人員將通用界面元素統(tǒng)一開發(fā)為通用用戶控件或者定義為系統(tǒng)樣式資源。
C:細(xì)化到功能模塊的局部,根據(jù)不同的模塊功能實現(xiàn)設(shè)計出大方、直觀、簡潔的界面,確定后由研發(fā)人員實現(xiàn)界面效果。
研發(fā)管理主要是在研發(fā)進(jìn)度、風(fēng)險、成本、質(zhì)量、溝通以及團隊管理方面。首先根據(jù)系統(tǒng)功能清單劃分出WBS工作分解結(jié)構(gòu),隨后制定了研發(fā)計劃,在研發(fā)計劃執(zhí)行過程中根據(jù)實際進(jìn)度情況不斷細(xì)化WBS工作分解以及更新研發(fā)計劃。使用了微軟TFS做項目配置管理,并基于TFS展開項目管理工作,包括進(jìn)度計劃,進(jìn)度跟蹤,任務(wù)分配等,并讓團隊成員通過配置管理直接將分配給自己的任務(wù)同步到本地Project項目計劃文件中,一旦項目計劃發(fā)生變動便立即通知團隊成員更新項目計劃表。盯緊項目計劃,按照計劃有效的執(zhí)行,從而在項目風(fēng)險和成本上可以得到一定的控制。
由于團隊成員對于Silverlight技術(shù)的掌握程度不夠深入,同樣也存在著很大的風(fēng)險和成本投入,技術(shù)層面上我采用的是培訓(xùn)的方式來提高團隊成員的技術(shù)水平,集中培訓(xùn)技術(shù)大體范圍,私下根據(jù)其負(fù)責(zé)的功能模塊對技術(shù)的需求情況單獨指導(dǎo),以此來保證不同的人重點學(xué)習(xí)自己負(fù)責(zé)的功能模塊需要的技術(shù)點及某一方面的技術(shù),不用團隊成員都將所有的技術(shù)點都學(xué)習(xí)一遍,從而縮短了學(xué)習(xí)時間,為整個產(chǎn)品研發(fā)直接降低了成本的投入。
對于研發(fā)過程中的產(chǎn)品質(zhì)量管理也是非常重要的,項目啟動后我們項目