公司產品開發中遇到的一些問題?

2022-02-24 06:36:27 字數 2033 閱讀 9885

1.為了趕進度,無法拒絕客戶提出的需求,需求修改後沒有嚴格的測試,程式又不穩定,客戶又照樣拿程式做藉口,這就像乙個死迴圈。

2.改程式不怕,怕的就是不穩定。

一家醫院已經上完線,程式也基本穩定,但在使用的過程中又提出了一些個性的需求,而程式設計師正在修改另一家準備要上線的醫院的需求,而兩家醫院的需求不能統一,為了解決目前的困難就只能加引數控制,改完後,因為上線的醫院很急,再加上也沒有正式的測試人員,所以馬上發給準備上線醫院使用,公升級後卻發現以前很多沒問題的功能現在反而不能使用了,又只能把問題提交回去給程式設計師,程式設計師收到這些以前沒有的問題的問題,除錯發現根本就是實施人員有個指令碼沒有公升級或某個引數沒有設定正確,很惱火,由於實施人員回答說問題都已經解決,客戶以使用發現又有這麼多問題,雖然新的問題已經解決,但老的問題又出現了,客戶就拿這個程式不穩定來推脫上線!已上線的醫院照樣公升級後發現n多問題,非常惱火的提交上去,程式設計師剛收到問題,現在又來問題,更是惱火,而火焰並沒有就此熄滅,而是即將發展為繚然大火。

出現這種情況根本問題,第一,需求做得不到位,為什麼兩家的需求這麼不同,而且為了上線而迎合客戶什麼問題都改,一改,乙個穩定的版本一下變得遙遙欲墜,這是開始,如果能從開始上抑制,那後面的問題也就不存在了。第二,經過第一關,有些需求確實擋不了,那就只能改咯,問題是改完以後一定要經過嚴格測試,缺少測試那就只能讓客戶幫你測試咯,客戶測試出問題那就引發的不是簡單程式上的事了,所以有測試人員封住了第二關的話,後面的問題也就不會發生了。第三,測試人員通過測試沒有問題就直接發給客戶還不行,因為很多問題的產生並不是程式本身的原因,而是一些配置的正確等,所以必須有人為配置程式,發布版本把關,這樣到實施人員手裡,到客戶手裡基本就問題不大了。

總結起來三點:

1.需求控制

2.加強測試

3.完善配置

上面提到了增加引數來解決不同醫院不同需求的問題而版本統一的問題,覺得單純增加引數來控制只會使本來複雜的系統變得更複雜,無法控制,專案做得越多,當然程式的修改、測試和配置起來就越來越困難,人員的工作量就只會越來越多,擴充套件到一定程度肯定會出現一些疏忽,而疏忽的必然導致客戶的不滿,所以我們必須解決引數與版本控制這個根本問題!要解決這個問題,第一,可以減少引數的個數,沒有引數當然就沒有問題了,而引數的**就是不同客戶的需求,如果我們能和這些客戶一起討論約定好一些需求的分支,基本上我們程式就可以不必加引數可以直接寫入**,所以這就是最近的乙個理念「約定勝於配置」,這也是程式設計師積累出來的經驗,配置雖然靈活,但靈活過度就回演變為災難,那為什麼不事先把那些可能無法用到的配置給約定寫死起來。第二,雖然「約定勝於配置」解決了引數災難問題,但還是存在引數,版本問題還是存在,當同時在一套**上修改兩個客戶不同需求的難度肯定大於兩套**每套修改乙個客戶**的難度。因為我們要時刻擔心著會不會影響不需要這個功能的客戶,對測試配置等後面的人員也都加重了工作量。用引數來控制也有其他的好處,編寫功能可以不用重新編寫,如果以後客戶需要這個功能我們只要開啟這個引數就行了,而不需要重新開發一遍。就是多套**的話,相同功能可以要改多次!但一套**的話,版本控制就會變得非常死,同乙個模組,可能兩個人都要修改,那肯定就要排隊,如果更多的人一起修改的話,這個排隊就會更長,排隊就會浪費時間不夠靈活。但多套**的話,整合**就變得艱難,如果公司需要乙個最新的版本出去打單,肯定就需要功能足夠強,而很多功能都是分散在不同的**裡面,就需要發時間一套套分析,最後好不容易整合了,但其穩定性又是問題,又需要發時間測試,所以多套**也是不好。總之一句話,靈活不簡單,簡單不靈活。

怎麼才能做到現場開發的時候很靈活,而整合版本的時候又簡單了?我是找不出有什麼完美的方案,所以我只能夠找乙個折中的辦法,就是增加一點點靈活,減少一點點簡單!上面的靈活與簡單都是乙個長期的問題,我想花一定的時間把程式分成兩部分,一套核心**與多套外圍**。現場修改的一般都是外圍**,這樣就加大了開發的靈活性,整合版本的時候因為核心**只有一套,就只要整合外圍**了,降低了風險。外圍**的功能最好能統一管理起來,這樣在修改某問題時可以先查詢一下以前有沒有解決過這個歷史問題!

核心**的整合並不是很容易,首先是邊界的確定?這必定需要乙個有經驗的業務高手來協助區分。再就是介面的制定,外圍**以何種形式接入到核心**?資料庫表結構與實體的合理設計,新增乙個字段減少依賴?

總結一下關於引數和版本控制的兩點:

1.「約定勝於配置」

2.提取核心**

開發遇到的一些問題

持續更新 1.禁止以複製 貼上以及剪下的方式操作密碼框中的內容 password bind copy cut paste function 2.當頁面取值為乙個字段,但是欄位中有很多資料,用,分割,展示的時候要換行,如何處理?半形的不斷行的空白格 推薦使用 半形的空格 全形的空格 3.比較值時,需要...

AE開發中遇到的一些問題!

1.scenecontrol開發,如何儲存sxd文件,或者如何儲存場景資訊?2.在scenecontrol中繪製點 線要素是否必須加裝sxd文件?是否因為scenecontrol中的某些參量必須通重載入sxd文件來初始化。3.scenecontrol自定義圖層技術,在axmapcontrol中載入自...

驅動開發遇到的一些問題

1 安裝 wdk dsfksvcs.sys 損壞。問題彙總 安裝wdk時要小心,千萬不可安裝那個device simulation framework 又稱dsf,當你選上它時,安裝過程中系統會提示是否要確認安裝 dsf,並給出ms不建議安裝它,若你繼續安裝,安裝結束後重啟系統,將會出現下面錯誤 下...