開發一個項目,簡單的說經過調研、開發、測試、維(wei)護(hu)四(si)個(ge)大(da)體(ti)的(de)階(jie)段(duan)。每(mei)個(ge)階(jie)段(duan)的(de)開(kai)發(fa)時(shi)間(jian)不(bu)一(yi)。筆(bi)者(zhe)主(zhu)要(yao)從(cong)事(shi)紫(zi)金(jin)橋(qiao)組(zu)態(tai)軟(ruan)件(jian)的(de)項(xiang)目(mu)應(ying)用(yong)開(kai)發(fa)工(gong)作(zuo),對(dui)組(zu)態(tai)軟(ruan)件(jian)項(xiang)目(mu)開(kai)發(fa)各(ge)階(jie)段(duan)的(de)時(shi)間(jian)安(an)排(pai)小(xiao)談(tan)下(xia)自(zi)己(ji)的(de)看(kan)法(fa)。這(zhe)裏(li)筆(bi)者(zhe)提(ti)出(chu)“4321”的說法,也就是說40% 的時間調研 ,30% 的時間開發 ,20% 的時間測試 ,10% 的時間維護 ,這裏所說的“時間”也可以理解為工作量。之所以這麼安排時間,原因如下所述。
一。40% 調研
從某種意義上說,組態軟件是個半成品,需要用戶在這個基礎之上進行二次開發。組態軟件已經提供了諸如報表、曲線、曆史保存、donghualianjiedengchangyongdegongnengmokuai,yonghukeyibianjiedezaizhegejichuzhishangkaifachuzijisuoxuyaodejiankongxitong。zutairuanjianmokuaishidekaifahuanjingsuiranjidadifangbianleyonghudexuqiu,lingyifangmian,zutairuanjiandegongnengyeshixiangduigudingde,nanyizhijiemanzuyonghudeyixieteshudexuqiu
此外,從整個監控係統而言,組態軟件處於上位機的位置,需要PLC、模塊、板卡、儀表等硬件設備才能搭建一個完整的係統。對於一個係統,初期往往有多種通信搭配方案,串口級聯、以太網、GPRS、數傳電台、無(wu)線(xian)射(she)頻(pin)等(deng)等(deng)。而(er)且(qie)很(hen)多(duo)時(shi)候(hou),在(zai)使(shi)用(yong)組(zu)態(tai)軟(ruan)件(jian)開(kai)發(fa)的(de)人(ren)員(yuan),不(bu)一(yi)定(ding)是(shi)最(zui)終(zhong)用(yong)戶(hu),而(er)是(shi)係(xi)統(tong)集(ji)成(cheng)商(shang)等(deng),這(zhe)裏(li)就(jiu)麵(mian)臨(lin)一(yi)個(ge)雙(shuang)方(fang)溝(gou)通(tong)的(de)問(wen)題(ti)。隻(zhi)有(you)充(chong)分(fen)溝(gou)通(tong)了(le),才(cai)能(neng)確(que)定(ding)用(yong)戶(hu)的(de)需(xu)求(qiu)組(zu)態(tai)軟(ruan)件(jian)能(neng)否(fou)實(shi)現(xian),選(xuan)擇(ze)哪(na)些(xie)下(xia)位(wei)的(de)硬(ying)件(jian),確(que)定(ding)具(ju)體(ti)的(de)通(tong)信(xin)方(fang)式(shi)等(deng)。如(ru)果(guo)開(kai)始(shi)調(tiao)研(yan)不(bu)夠(gou)認(ren)真(zhen)、mingxi,houqidekaifacongkaishijiukenengchuxianlepiancha,huozhexiangmukuaijieshulecaifaxianyouzhongdayinhuan。birubizhezengjiechudeyigexiangmu,zhegexiangmushijiankongshengchanxiandeshebei,shejizhexiangtongguozutairuanjianjiankongshengchanxianshangde5個PLC,通信距離大概一百多米。初步決定采用1個485串口級聯的方式通信,而且已經完成了布線的工作,485串口在一兩百米內級聯5個plc,技術上沒有什麼問題。可是筆者和該項目的最終用戶進一步溝通後,發現用戶對現場監控的響應時間要求不低,在1秒以內。顯然,通過1個485串口通信級聯5個plc是shi實shi現xian不bu了le這zhe個ge要yao求qiu的de。或huo采cai用yong多duo個ge串chuan口kou,少shao級ji聯lian設she備bei,或huo更geng換huan通tong信xin模mo塊kuai,采cai用yong以yi太tai網wang通tong信xin等deng方fang式shi都dou可ke以yi提ti高gao通tong信xin速su度du,達da到dao用yong戶hu的de要yao求qiu。很hen多duo時shi候hou最zui終zhong用yong戶hu不bu一yi定ding了le解jie組zu態tai軟ruan件jian的de各ge方fang麵mian特te性xing,甚shen至zhi不bu一yi定ding了le解jie他ta們men自zi己ji的de具ju體ti要yao求qiu,邊bian做zuo邊bian改gai邊bian提ti要yao求qiu的de情qing況kuang很hen常chang見jian。隻zhi有you在zai前qian期qi的de調tiao研yan清qing晰xi了le,才cai可ke以yi最zui大da可ke能neng的de避bi免mian項xiang目mu後hou期qi的de重zhong大da修xiu改gai。
二。30% 開發
由you於yu組zu態tai軟ruan件jian本ben身shen模mo塊kuai化hua的de開kai發fa方fang式shi,一yi般ban而er言yan,一yi個ge普pu通tong的de項xiang目mu開kai發fa時shi間jian不bu會hui太tai長chang,工gong作zuo量liang相xiang對dui不bu算suan太tai多duo。當dang然ran,很hen多duo時shi候hou,項xiang目mu的de開kai發fa進jin度du還hai受shou到dao下xia麵mian硬ying件jian設she備bei進jin展zhan等deng多duo種zhong情qing況kuang的de影ying響xiang,並bing不bu單dan獨du取qu決jue於yu軟ruan件jian本ben身shen。這zhe裏li主zhu要yao是shi指zhi具ju體ti開kai發fa的de有you效xiao時shi間jian。有you人ren可ke能neng會hui奇qi怪guai為wei何he開kai發fa的de時shi間jian要yao少shao於yu調tiao研yan的de時shi間jian,這zhe裏li要yao說shuo明ming的de是shi,充chong分fen的de調tiao研yan可ke以yi在zai開kai發fa之zhi前qian就jiu形xing成cheng了le一yi個ge明ming晰xi的de開kai發fa思si路lu,對dui加jia快kuai項xiang目mu的de開kai發fa時shi間jian大da有you幫bang助zhu。如ru果guo前qian期qi調tiao研yan不bu充chong分fen,邊bian開kai發fa邊bian調tiao研yan,那na麼me開kai發fa的de周zhou期qi會hui拖tuo很hen長chang的de。
三。20% 測試
這zhe裏li筆bi者zhe把ba測ce試shi單dan獨du提ti出chu來lai,而er且qie給gei了le比bi較jiao多duo的de時shi間jian。是shi因yin為wei筆bi者zhe所suo接jie觸chu的de不bu少shao最zui終zhong比bi較jiao失shi敗bai的de項xiang目mu,不bu是shi調tiao研yan不bu充chong分fen,也ye並bing不bu是shi開kai發fa的de不bu好hao,而er是shi細xi節jie總zong不bu到dao位wei,總zong是shi有you些xie地di方fang不bu穩wen定ding,有you些xie地di方fang不bu可ke靠kao,反fan複fu修xiu改gai,修xiu改gai好hao了le這zhe裏li,其qi他ta地di方fang又you壞huai了le。用yong戶hu不bu滿man意yi,不bu願yuan意yi付fu款kuan,開kai發fa者zhe覺jiao得de很hen辛xin苦ku,覺jiao得de用yong戶hu挑tiao剔ti,維wei護hu的de工gong作zuo量liang太tai大da,雙shuang方fang陷xian入ru到dao扯che皮pi的de境jing地di,項xiang目mu也ye就jiu相xiang對dui比bi較jiao失shi敗bai了le。之zhi所suo以yi出chu現xian這zhe個ge情qing況kuang,主zhu要yao原yuan因yin是shi項xiang目mu開kai發fa完wan後hou,急ji於yu驗yan收shou,認ren為wei驗yan收shou完wan了le也ye就jiuOK了le,項xiang目mu沒mei有you經jing過guo嚴yan格ge的de測ce試shi。開kai發fa一yi個ge項xiang目mu不bu難nan,但dan是shi開kai發fa一yi個ge比bi較jiao穩wen定ding可ke靠kao,健jian壯zhuang性xing強qiang的de項xiang目mu是shi不bu容rong易yi的de。嚴yan格ge的de測ce試shi是shi保bao證zheng一yi個ge項xiang目mu少shao出chu問wen題ti的de關guan鍵jian環huan節jie之zhi一yi。很hen多duo時shi候hou,開kai發fa者zhe都dou隻zhi是shi考kao慮lv到dao了le項xiang目mu正zheng常chang時shi的de情qing況kuang,對dui於yu用yong戶hu一yi些xie非fei常chang規gui操cao作zuo或huo現xian場chang的de一yi些xie特te殊shu情qing況kuang的de處chu理li沒mei有you考kao慮lv周zhou全quan,導dao致zhi項xiang目mu看kan起qi來lai很hen好hao,實shi際ji運yun行xing之zhi後hou漏lou洞dong百bai出chu,維wei護hu起qi來lai痛tong苦ku不bu堪kan。項xiang目mu開kai發fa的de時shi侯hou一yi般ban都dou會hui邊bian做zuo邊bian測ce試shi的de,這zhe裏li所suo說shuo的de測ce試shi更geng多duo是shi指zhi項xiang目mu初chu步bu完wan成cheng後hou的de係xi統tong測ce試shi。關guan於yu測ce試shi方fang法fa,很hen多duo文wen章zhang都dou有you說shuo明ming,什shen麼me單dan元yuan測ce試shi、集成測試、白盒測試、黑盒測試等等,不足而一,這裏不再贅述。沒有經過嚴格測試的項目,往往都存在著或大或小的漏洞。
四。10% 維護
可能很多朋友早就想說了,“10%的時間維護,太少了,項目有太多的時間用於維護了!”。的de確que,很hen多duo項xiang目mu的de確que大da量liang的de工gong作zuo用yong在zai了le後hou期qi的de維wei護hu,這zhe裏li筆bi者zhe認ren為wei,如ru何he真zhen的de用yong了le大da量liang的de時shi間jian認ren真zhen調tiao研yan,項xiang目mu開kai發fa後hou認ren真zhen測ce試shi了le,當dang項xiang目mu真zhen正zheng維wei護hu起qi來lai的de時shi候hou,一yi般ban工gong作zuo量liang不bu會hui太tai大da的de。之zhi所suo以yi後hou期qi維wei護hu比bi較jiao難nan做zuo,很hen多duo問wen題ti出chu在zai之zhi前qian的de調tiao研yan和he測ce試shi中zhong,導dao致zhi了le維wei護hu工gong作zuo量liang的de增zeng大da。當dang然ran,這zhe裏li的de“維護”,並不包含軟件的後期升級服務等,另一方麵用戶自身的技術支持力量也影響著維護的工作量。
總之,這裏所說的“4321”時間安排也是個大概,並不是每個項目都要按照這個時間安排做,比如開發者對流程很熟悉可能前期的調研時間就少些。這裏提到“4321”是為了強調一定要重視調研 和測試 ,真正的開發工作占整個項目的工作量中並不算太多的。很多項目的開發實際走的是“1315”,也(ye)就(jiu)是(shi)簡(jian)單(dan)的(de)調(tiao)研(yan),著(zhe)急(ji)的(de)開(kai)發(fa),開(kai)發(fa)完(wan)了(le)也(ye)沒(mei)有(you)進(jin)行(xing)嚴(yan)格(ge)測(ce)試(shi),匆(cong)匆(cong)驗(yan)收(shou),最(zui)終(zhong)把(ba)大(da)量(liang)的(de)時(shi)間(jian)用(yong)在(zai)了(le)後(hou)期(qi)維(wei)護(hu)上(shang)。用(yong)戶(hu)不(bu)滿(man)意(yi),也(ye)難(nan)以(yi)再(zai)繼(ji)續(xu)合(he)作(zuo)。根(gen)據(ju)實(shi)際(ji)情(qing)況(kuang)合(he)理(li)的(de)安(an)排(pai)項(xiang)目(mu)各(ge)步(bu)驟(zhou)地(di)時(shi)間(jian),不(bu)僅(jin)可(ke)以(yi)減(jian)少(shao)項(xiang)目(mu)的(de)總(zong)體(ti)開(kai)發(fa)時(shi)間(jian),更(geng)重(zhong)要(yao)的(de)是(shi)可(ke)以(yi)滿(man)足(zu)用(yong)戶(hu)的(de)真(zhen)正(zheng)要(yao)求(qiu),實(shi)現(xian)合(he)作(zuo)共(gong)贏(ying)。成(cheng)功(gong)的(de)項(xiang)目(mu),不(bu)僅(jin)可(ke)以(yi)實(shi)現(xian)客(ke)戶(hu)的(de)需(xu)求(qiu),更(geng)重(zhong)要(yao)在(zai)於(yu)帶(dai)來(lai)了(le)持(chi)續(xu)的(de)合(he)作(zuo)。