論軟件開(kāi)發(fā)模式的選擇與應(yīng)用_第1頁(yè)
論軟件開(kāi)發(fā)模式的選擇與應(yīng)用_第2頁(yè)
論軟件開(kāi)發(fā)模式的選擇與應(yīng)用_第3頁(yè)
論軟件開(kāi)發(fā)模式的選擇與應(yīng)用_第4頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

付費(fèi)下載

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

論軟件開(kāi)發(fā)模式的選擇與應(yīng)用論軟件開(kāi)發(fā)模式的選擇與應(yīng)用論軟件開(kāi)發(fā)模式的選擇與應(yīng)用xxx公司論軟件開(kāi)發(fā)模式的選擇與應(yīng)用文件編號(hào):文件日期:修訂次數(shù):第1.0次更改批準(zhǔn)審核制定方案設(shè)計(jì),管理制度《論項(xiàng)目開(kāi)發(fā)模式的選擇與應(yīng)用》摘要:2005年7月,我作為項(xiàng)目負(fù)責(zé)人參與了《流媒體內(nèi)容服務(wù)平臺(tái)》項(xiàng)目開(kāi)發(fā);該項(xiàng)目是某省電信部門委托我公司開(kāi)發(fā)的為全省14個(gè)地市30萬(wàn)寬帶用戶提供一個(gè)高質(zhì)量的基于流媒體的視頻點(diǎn)播、網(wǎng)絡(luò)電視臺(tái)、遠(yuǎn)程教育等業(yè)務(wù),讓各地寬帶用戶就近訪問(wèn)流媒體邊緣緩存服務(wù)器,并分別為網(wǎng)絡(luò)運(yùn)營(yíng)商和內(nèi)容提供商(CP)、服務(wù)提供商(SP)提供完善的商業(yè)運(yùn)營(yíng)管理功能。整個(gè)系統(tǒng)采用B/S和C/S混合架構(gòu),用戶界面的開(kāi)發(fā)采用了原型模式,系統(tǒng)內(nèi)部很多業(yè)務(wù)模塊是基于我公司長(zhǎng)期積累的構(gòu)件而開(kāi)發(fā)的,這兩種開(kāi)發(fā)模式的綜合應(yīng)用簡(jiǎn)化了的開(kāi)發(fā)工作,也縮短了開(kāi)發(fā)周期,同時(shí)軟件質(zhì)量也得到了保證。項(xiàng)目組的齊心協(xié)力歷時(shí)8個(gè)月完成了該項(xiàng)目并獲得評(píng)審會(huì)的驗(yàn)收。本系統(tǒng)投入商業(yè)運(yùn)營(yíng)半年來(lái),狀況良好,受到委托方和運(yùn)營(yíng)商的一致好評(píng)。在文章的最后,也提出了一些項(xiàng)目中可以做得更好的地方,例如如何更加人性化的去管理開(kāi)發(fā)團(tuán)隊(duì)。 作為項(xiàng)目主要負(fù)責(zé)人,我參與了整個(gè)系統(tǒng)的技術(shù)選型、方案設(shè)計(jì)、需求分析和系統(tǒng)設(shè)計(jì)等工作。正文:一、項(xiàng)目概述我所在公司是一家專注于寬帶視頻應(yīng)用開(kāi)發(fā)的企業(yè),產(chǎn)品主要應(yīng)用于電信和廣電等領(lǐng)域。2005年7月,受某省電信部分(甲方)委托我公司(乙方)對(duì)我公司04年開(kāi)發(fā)《VOD寬帶影院》進(jìn)行全面改造,開(kāi)發(fā)一套《流媒體內(nèi)容服務(wù)平臺(tái)》,在全省14個(gè)地市建立內(nèi)容分發(fā)節(jié)點(diǎn),為14個(gè)地市30萬(wàn)寬帶用戶提供高質(zhì)量的11000并發(fā)點(diǎn)數(shù)的視頻點(diǎn)播、網(wǎng)絡(luò)電視臺(tái)、遠(yuǎn)程教育等業(yè)務(wù),為內(nèi)容提供商(ICP)提供接入管理和自助客戶服務(wù),并為運(yùn)營(yíng)商(委托方)提供完善的商業(yè)運(yùn)營(yíng)后臺(tái)管理功能。在整個(gè)項(xiàng)目開(kāi)發(fā)中,我作為項(xiàng)目負(fù)責(zé)人,參與了整個(gè)系統(tǒng)的技術(shù)選型、方案設(shè)計(jì)和項(xiàng)目管理工作。原系統(tǒng)在省會(huì)電信設(shè)置一個(gè)VOD中心節(jié)點(diǎn),提供3000個(gè)500Kbps的節(jié)目流并發(fā)播出,然而隨著寬帶用戶的增多,原來(lái)系統(tǒng)在功能上和性能上暴露出越來(lái)越多的問(wèn)題,主要有:原系統(tǒng)在各地市沒(méi)有設(shè)置分發(fā)節(jié)點(diǎn),隨著寬帶用戶增多,3000個(gè)并發(fā)點(diǎn)數(shù)很難滿足用戶需求,而且各地市用戶直接訪問(wèn)中心節(jié)點(diǎn)浪費(fèi)了大量的骨干網(wǎng)帶寬。媒體內(nèi)容主要由一家VOD內(nèi)容提供商提供,其他的內(nèi)容提供商不能快速接入,導(dǎo)致了系統(tǒng)的內(nèi)容服務(wù)比較單一。原系統(tǒng)在文檔方面保存不完整,且版本控制面做不太規(guī)范,給我們的改造工作帶來(lái)了一定的麻煩。二、項(xiàng)目開(kāi)發(fā)策略以及開(kāi)發(fā)模式的選擇針對(duì)委托方提出的初步的需求,我們利用原型技術(shù)與客戶進(jìn)行多次溝通后,確定了系統(tǒng)的功能模型,并將整個(gè)新的系統(tǒng)劃分為3層次:內(nèi)容服務(wù)集成層、媒體內(nèi)容頻道層、寬帶用戶層。各層的具體功能如下:內(nèi)容服務(wù)集成層主要是為內(nèi)容提供商(CP)和服務(wù)提供商(SP)提供自助管理服務(wù);包括流媒體手動(dòng)/自動(dòng)方式入庫(kù)管理模塊;內(nèi)容審核模塊;統(tǒng)計(jì)分析模塊;新的服務(wù)商接入模塊。媒體內(nèi)容頻道層的使用者主要是運(yùn)營(yíng)商的管理人員。主要包括用戶(寬帶用戶、SP、CP)分級(jí)授權(quán)管理;內(nèi)容對(duì)等分發(fā)(在全省各地市之間相互分發(fā)內(nèi)容);廣告管理;綜合計(jì)費(fèi)管理;節(jié)目數(shù)字版權(quán)保護(hù)等功能。寬帶用戶層主要面向?qū)拵в脩簦挥脩艨梢酝ㄟ^(guò)Web方式訪問(wèn)寬帶應(yīng)用門戶網(wǎng)站,享受媒體點(diǎn)播、網(wǎng)絡(luò)電視臺(tái)、遠(yuǎn)程教育等服務(wù);會(huì)員訪問(wèn)日志查詢;費(fèi)用清單查詢。 由于委托方在用戶界面方面沒(méi)有很明確的需求,用戶修改的可能性非常大,故選用了原型模式讓用戶確認(rèn)需求,此外我公司長(zhǎng)期從事流媒體領(lǐng)域的開(kāi)發(fā),積累了大量的業(yè)務(wù)組件,采用基于構(gòu)件的開(kāi)發(fā)可以大量簡(jiǎn)化開(kāi)發(fā)工作。為了按期提供高質(zhì)量的軟件產(chǎn)品,我們采用一系列的方法策略開(kāi)發(fā)本項(xiàng)目。用原型模式明確并細(xì)化客戶需求為了更好的理解用戶需要,我們制作原型用戶界面讓用戶確認(rèn)需求。媒體內(nèi)容頻道層和寬帶用戶層上安排美工設(shè)計(jì)師制作HTML界面,讓需求分析人員與用戶代表面談確認(rèn)需求,與用戶溝通后,在對(duì)界面進(jìn)行逐層細(xì)化,這部分技術(shù)難度不是很大,關(guān)鍵再用和用戶的溝通,理解用戶需求。而對(duì)于內(nèi)容服務(wù)集成層由于有關(guān)鍵技術(shù)問(wèn)題以前都沒(méi)有碰到過(guò),例如文件自動(dòng)入庫(kù)的時(shí)候需要按照網(wǎng)絡(luò)流量來(lái)控制傳輸速度,大文件傳遞中斷后斷點(diǎn)續(xù)傳等問(wèn)題以前開(kāi)發(fā)中沒(méi)有遇到過(guò),我們一方面美工人員采用水平原型法來(lái)和用戶確認(rèn)需求,另外一方面設(shè)計(jì)人員和開(kāi)發(fā)人員采用垂直原型對(duì)這些難點(diǎn)技術(shù)做測(cè)試,用試驗(yàn)的方法論證各種技術(shù)方案的可行性。提出項(xiàng)目軟、硬件解決方案在軟件架構(gòu)方面,原來(lái)系統(tǒng)采用JSP+JavaBean很難滿足多用戶并發(fā)訪問(wèn)的需求。故新項(xiàng)目架設(shè)在J2EE框架基礎(chǔ)上,采用B/S+C/S的混合結(jié)構(gòu);寬帶應(yīng)用門戶網(wǎng)站(媒體點(diǎn)播、網(wǎng)絡(luò)電視臺(tái)、遠(yuǎn)程教育等)用戶并發(fā)訪問(wèn)量大,如果選用C/S的客戶端安裝與升級(jí)都不太方便故選用B/S模式,在架構(gòu)上選用了當(dāng)時(shí)主流的Struts+Spring+Hibernate架構(gòu);Struts用于給寬帶用戶和運(yùn)營(yíng)商提高的前臺(tái)訪問(wèn)接口;Spring來(lái)封裝負(fù)載的業(yè)務(wù)邏輯,Hibernate來(lái)數(shù)據(jù)庫(kù)層的訪問(wèn)操作進(jìn)行封裝;對(duì)于內(nèi)容入庫(kù)審核模塊,由于委托方提出規(guī)定要手動(dòng)/自動(dòng)進(jìn)行大批量文件傳送、斷點(diǎn)續(xù)傳功能,根據(jù)網(wǎng)絡(luò)流量控制傳輸速度,如網(wǎng)絡(luò)訪問(wèn)量大的時(shí)候降低傳輸速率,網(wǎng)絡(luò)流量小的時(shí)候增多傳輸速率,故我們選擇了自己用Swing技術(shù)編寫(xiě)客戶界面并采用公司以前購(gòu)買的一個(gè)商用文件傳送組件實(shí)現(xiàn)內(nèi)容注入,采用C/S架構(gòu)。在硬件服務(wù)器配置方面,原系統(tǒng)采用在中心管理節(jié)點(diǎn)配置Web服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器和流媒體服務(wù)器??紤]到需要為各地市用戶提供高質(zhì)量的流媒體服務(wù),且不影響影響電信骨干網(wǎng)的帶寬資源,故新的方案采用在省會(huì)城市設(shè)置中心管理節(jié)點(diǎn),全省14個(gè)地市作為內(nèi)容發(fā)布點(diǎn),共采用了23臺(tái)視頻服務(wù)器,每臺(tái)流媒體服務(wù)器上配置4G內(nèi)存的、5*萬(wàn)轉(zhuǎn)硬盤(RAID5)節(jié)目存儲(chǔ)空間NAS,同時(shí)在省中心節(jié)點(diǎn)還配置了2TB的NAS為后備存儲(chǔ)空間。為提供較好的服務(wù)質(zhì)量流媒體服務(wù)器選用千兆網(wǎng)卡,地市宇的骨干網(wǎng)之間保證2G帶寬。為保障系統(tǒng)穩(wěn)定性,在該省中心管理節(jié)點(diǎn)采用Linux操作系統(tǒng)選用Linux,Web服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器方面綜合考慮到成本和并發(fā)點(diǎn)數(shù),分別選用,Oracle9i數(shù)據(jù)庫(kù),流媒體服務(wù)器采用(WMS9和Helix?;跇?gòu)建的模式簡(jiǎn)化開(kāi)發(fā)由于項(xiàng)目工期短、業(yè)務(wù)邏輯很復(fù)雜,對(duì)每一個(gè)子模塊都從底層的第一行代碼開(kāi)始寫(xiě)起的話,開(kāi)發(fā)和測(cè)試的工作量都太大,所以在實(shí)際開(kāi)發(fā)中,我們很多底層模塊都是在以往開(kāi)發(fā)的基礎(chǔ)上進(jìn)行的。例如,媒體內(nèi)容頻道層的性能查看模塊,需求對(duì)各發(fā)布節(jié)點(diǎn)的性能進(jìn)行查看,這些CPU、內(nèi)存、硬盤等性能數(shù)據(jù)按照年、月、日目錄的方式存在中心管理節(jié)點(diǎn)磁盤上,需要對(duì)這些信息進(jìn)行二維圖形顯示。這個(gè)模塊計(jì)劃開(kāi)發(fā)進(jìn)度4個(gè)工作日,如果從零開(kāi)始的話,開(kāi)發(fā)進(jìn)度很難保障,我們采用公司以往的性能數(shù)據(jù)的定義格式和文件存取接口就很容易到性能數(shù)據(jù),再采用開(kāi)源的JFreeChart控件就很容易的實(shí)現(xiàn)了性能查看,而且這些開(kāi)源控件已經(jīng)多次使用過(guò),減輕了軟件維護(hù)工作量。此外項(xiàng)目中的數(shù)字版權(quán)保護(hù)模塊、多用戶分級(jí)授權(quán)管理、內(nèi)容對(duì)等分發(fā)等模塊公司都有相關(guān)的開(kāi)發(fā)經(jīng)歷,制作成了Java組件包,開(kāi)發(fā)人員通過(guò)查看文檔就很容易使用這些現(xiàn)有的模塊。采用這樣基于構(gòu)建的開(kāi)發(fā)模式,很大程度上降低了開(kāi)發(fā)難度,縮短了開(kāi)發(fā)時(shí)間,提高了軟件質(zhì)量,讓我們可以忽略很多底層的細(xì)節(jié),并把主要精力都集中在了項(xiàng)目的業(yè)務(wù)邏輯上??茖W(xué)規(guī)范化文檔管理,加強(qiáng)版本控制、建立完善的配置管理庫(kù)以往的項(xiàng)目由于文檔的缺失不完整,導(dǎo)致后期的維護(hù)和二次開(kāi)發(fā)相當(dāng)困難,針對(duì)文檔在項(xiàng)目開(kāi)發(fā)中的作用越來(lái)越重要,在《流媒體服務(wù)平臺(tái)》項(xiàng)目一開(kāi)始啟動(dòng),我就把規(guī)范化的文檔化管理納入了項(xiàng)目管理工作中,對(duì)于每個(gè)階段都明確了需要輸出的文檔,對(duì)于經(jīng)多方認(rèn)可的文檔直接納入配置管理庫(kù)進(jìn)行管理。我采用了配置管理工具(visual

SourceSafe)進(jìn)行配置管理,并專門納入一名配置管理人員進(jìn)行管理。通過(guò)這樣的舉措,讓項(xiàng)目組成員知道了文檔的重要性,使大家把文檔工作納入自己的日常工作中,形成良好的建立文檔的習(xí)慣。在每個(gè)階段結(jié)束后,我就會(huì)對(duì)輸出的文檔進(jìn)行討論和評(píng)估,并納入基線庫(kù)進(jìn)行管理,這樣文檔始終是最新的,完整的和具有版本的。5、強(qiáng)調(diào)技術(shù)審計(jì)和軟件測(cè)試,保障項(xiàng)目開(kāi)發(fā)質(zhì)量我們將項(xiàng)目組分為設(shè)計(jì)、開(kāi)發(fā)、測(cè)試三個(gè)組,設(shè)計(jì)和開(kāi)發(fā)組由系統(tǒng)總設(shè)計(jì)師負(fù)責(zé),測(cè)試組有一個(gè)專門的組長(zhǎng)。設(shè)計(jì)組負(fù)責(zé)軟件的分析和設(shè)計(jì),形成設(shè)計(jì)文檔,設(shè)計(jì)文檔首先要做同行評(píng)審,評(píng)審內(nèi)容一般是文檔的規(guī)范性以及是否符合需求分析的要求,同行評(píng)審后由系統(tǒng)總設(shè)計(jì)師來(lái)做專家評(píng)審,評(píng)審的內(nèi)容是設(shè)計(jì)是否符合業(yè)務(wù)需求。開(kāi)發(fā)組負(fù)責(zé)根據(jù)設(shè)計(jì)人員的設(shè)計(jì)文檔編寫(xiě)出代碼,代碼編寫(xiě)出來(lái)后要通過(guò)同行評(píng)審,評(píng)審內(nèi)容是代碼的編寫(xiě)是否符合編碼規(guī)范、是否具有可讀性和可維護(hù)性,檢查代碼是否正確完成設(shè)計(jì)要點(diǎn)、有沒(méi)有理解錯(cuò)誤。測(cè)試組負(fù)責(zé)根據(jù)需求和設(shè)計(jì)文檔編寫(xiě)測(cè)試用例,理解相對(duì)應(yīng)的業(yè)務(wù)流程,準(zhǔn)備典型的測(cè)試數(shù)據(jù),并對(duì)開(kāi)發(fā)出來(lái)的代碼進(jìn)行測(cè)試,出現(xiàn)Bug時(shí)產(chǎn)生記錄文檔,并與開(kāi)發(fā)人員溝通。通過(guò)這樣的改進(jìn),我們充分調(diào)動(dòng)了各員工的積極性,也明確了各自的責(zé)任,使得整個(gè)過(guò)程處于受控狀態(tài)。三、未來(lái)還可以做的更好的地方經(jīng)過(guò)項(xiàng)目組精誠(chéng)團(tuán)結(jié)的8個(gè)月的奮戰(zhàn),目前,該項(xiàng)目已經(jīng)在工期順利完成。投入商業(yè)運(yùn)營(yíng)這半年月來(lái),用戶點(diǎn)擊日志達(dá)到1300萬(wàn)條,運(yùn)行情況良好,系統(tǒng)的安全性和并發(fā)性均達(dá)到了預(yù)期目標(biāo),整個(gè)項(xiàng)目小組受到本公司領(lǐng)導(dǎo)和甲方的一致好評(píng)。但我個(gè)人認(rèn)為作為一名優(yōu)秀系統(tǒng)分析員應(yīng)該不斷的去追求完美,去做到精益求精:1、盡管制定了很多質(zhì)量管理的準(zhǔn)則,然而在項(xiàng)目的實(shí)際執(zhí)行過(guò)程中總存在著一

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論