軟體工程不是想象中那麼簡單

2021-05-05 09:35:08 字數 997 閱讀 3789

我曾在濟南一家軟體公司開發管理軟體,那時剛剛完成北大青鳥的培訓,所找的第一家軟體公司,這家軟體公司幾十個人的規模。用jsp開發。剛進入公司就分配到乙個專案組,該專案已做到一半了,該專案搞jsp就三個人,其中乙個是我的頭,乙個搞資料庫管理,乙個搞jsp開發。在參與專案的過程中也產生了困惑。可惜當時沒有機會也沒有高人指導解決此困惑。後來隨的工作經驗的豐富以及跟各位朋友的交流,逐漸明白了困惑所在。特寫下此文,希望能幫助還有此困惑的朋友。

當時參與的專案還算是表面上正軌的專案流程,採用的算是瀑布模型。該專案問題也是很多的(真不知道是那個專案經理是不是偷懶,世界上那麼多知名的軟體工程產品如rup就沒去仔細學學)。

我第一次的困惑就是專案需求文件跟做到一半的軟體無法聯絡起來,為什麼呢,當時沒想明白,我的頭也只是一味的說要多主動去做,多主動去理解,還說你必須比客戶更了解業務,文件不可能那麼詳細。到了最後專案依然沒有改變大改的命運,不過還得佩服那個專案經理,在理論上偷懶,實踐上還是可圈可點的,說服了大家接受這個大改。根本的原因是需求文件跟軟體設計之間少做了乙個非常重要的工作,就是需求分析,當我拿到這些文件時就不可避免的要自己做軟體分析,要命的是開發jsp的同事她也要做這個分析,這個工作都是不自主進行的,這個困惑就產生了,我分析的結果自然和她分析的結果不一樣,工作自然就無法繼續下去了,2個人的分析不一致是無法配合的。我的頭理念也是十分錯誤的,你如果自以為比客戶還了解業務,就會陷入到乙個實際上是猜客戶業務的過程,不會去虛心把客戶當老師,需求自然就把握不准,專案大改自然就避免不了了。

第二次困惑就測試,測試不是誰都適合幹的,開發人員是堅決不能從事黑盒測試的,這個是鐵律,可公司卻不講究這個,我當時也很困惑,為啥跟我學的不一樣,無論什麼測試都是開發人員做,但專案經理也有想解決的問題,怎麼能測試出深層的業務bug。這個照那時的專案過程是永遠也做不到的。問題的所在就是沒有相關的測試文件,測試文件也得有個輸入吧,這個輸入文件裡最重要的還是需求分析。沒有需求分析的後果就是無論誰去測試,其測試標準是不統一的,乙個人認為是bug,另外乙個人認為不是,這測試沒法進行了。

至於怎麼進行需求分析,可以多去看看rup的資料。

show 封裝沒有想象中那麼簡單

以往寫顯示隱藏效果時,一般都習慣將display值設為none和block,隱藏是對的,就是display none 但顯示時我們一昧的display block 會將行內元素變成塊級元素,或許你不太在意,但這始終是不對的。那麼該怎麼來判斷在元素顯示時給它的display值設為block還是inli...

async await 真不是你想象中那麼簡單

先上 function getdata data,time time let results let starttime new date laucher async function laucher 在 毫秒放入 let datab await getdata b 3000 results.pus...

勒索軟體沒有你想象中的那麼掙錢

近日flashpoint對當前的惡意勒索活動作出了乙份報告,並在報告中對惡意勒索活動作出了獨到的見解。惡意勒索真的那麼賺錢?前一段時間有報道稱,惡意勒索軟體nuclear ek的作者每月收入高達10萬美元,對此可以看出惡意軟體勒索已經演變成一種生意行為了。從報告中的得到的資訊,甚至還可以分析到,乙個...