標籤:style blog http color strong 資料
第3部分 軟體研發工作總結
研發流程初探
(本文是我到公司一個月後對於工作的一些感想,歡迎閱讀。)
到公司實習已經有一個多月了,最近我完成了第一個正式任務。回想起來,那個過程充滿挫折,也充滿了驚喜。雖然不像一般電影那樣一波三折,但也是有讓人很難忘記的地方。在這篇文章中,我對整個過程進行一個簡單的描述,同時偶爾也發表一下個人的一點感慨。
整個過程包括1所示的6個步驟。
圖1 軟體開發流程
(1) 接受需求
一般說來,對於剛入職不久的員工,項目組不會布置太複雜的任務,因為在不是很熟悉的情況下,我們是很容易犯錯誤的,畢竟技術也需要積累的。
我這次做的東西就是在原代碼的基礎上增加幾個簡單的新需求。要做的第一件事就是接受專案經理發來的新需求文檔。這個新需求一般是從客戶那裡得來的,然後再轉交給開發人員做。
對於需求文檔,我認為一定要把問題描述清楚,否則我們就很難下手。即使做出來,也有可能會不滿足需求。在有新需求的時候,專案經理也會帶著相關開發人員去評需求,意思是看這個需求能不能夠做得出來,不要等我們花了很大力氣後才發現做不出來。
所謂的“客戶至上”,也就是說客戶有了需求,我們要儘力去開發產品出來滿足他們的需求。
(2) 閱讀需求文檔、詳設文檔和原始碼
在得到了需求文檔之後,我們下一步要做的就是仔細閱讀這個文檔,把問題的來龍去脈搞清楚。
有些需求描述得很複雜(相當的抽象),我們光看它的描述是不行的。這時,我們就要對著詳細設計(簡稱“詳設”)文檔和原始碼看。詳細設計文檔是最初的開發人員寫的,通過這個文檔,我們能夠搞清楚程式的大概流程,同時能夠找到為了滿足需求,設計了哪些資料結構和函數。當然,原始碼就是需求的具體實現,每個需求都會有對應的代碼。只要我們耐心閱讀這些程式,就會發現它們與文檔的對應關係。
這一步對於理解需求和程式都是很重要的,我們一定要仔細閱讀,不可草草了事。根據我個人的經驗,如果沒有很好理解需求就動手編程,那麼出錯的機率就會非常大。
(3) 對相應代碼進行修改或添加
在理解了新需求和搞懂了代碼之後,我們就要開始動手編程了。
編程之前,我們要首先找到要在哪些地方修改代碼或者添加代碼。在編程的過程中,我們要全神貫注,一定要多檢查幾次,以防寫錯。這裡的錯誤不僅包括程式的語法錯誤,也包括邏輯錯誤什麼的。
一般的工程中,代碼都非常的多,在幾千行以上。要找到修改的地方還是要花一番工夫的,這需要人能夠靜得下心來,浮躁肯定是不行的。
另外,很多新需求都和之前的某些需求類似,我們不需要從頭開始設計資料結構和函數,只需要在以前的程式塊裡面改一些參數即可。這也為我們省下了時間,同時為以後的排錯提供了參考。
編碼階段是需求的具體實現,可以說是整個工作中最重要的環節,我們一定要打起精神,千萬不可掉以輕心。
(4) 測試程式
在之前,我一直以為開發工程師只要把程式寫好就行了,用不著測試。但專案經理提醒我,這個想法是錯誤的,只要程式有修改,我們就一定要測試一下。要保證我們交出去的代碼是完全正確的,沒有bug。
在用軟體測試代碼之前,我們一定要用自己的眼睛多看幾遍程式,發現一些顯而易見的錯誤。這既是工作的態度,也是一種錯誤修正的好方法。
根據項目的不同,測試程式的工具也會有所區別。有的時候,我們要和其它模組互動,因此需要其它開發人員配合我們測試。
在測試之前,我們至少要在頭腦中設計好測試的用例,能夠估計到一些期望的輸出值。此外,我們要對邊界值進行專門的、重點的測試,我想這也是測試的技巧所在吧。
(5) 寫測試文檔、升級文檔等
在測試搞定之後,我們不要馬上就提交代碼了,還要記住寫測試文檔和升級文檔等。
自己怎樣對程式進行測試,那麼測試文檔就要展現這個過程。我們可以簡單地描述一下自己的測試步驟與測試結果,以證明自己本著負責任的態度對自己的代碼進行了測試。
因為有新需求了,那就意味著相關的產品升級了,這時就要寫升級文檔。在這個文檔中,我們要著重寫升級的部分,也就是哪些是新的需求。
只要我們認真地完成了編碼的工作,並且很好地理解了程式,寫出這些文檔是很快的。
(6) 提交代碼和相關文檔
在確保自己的程式正確無誤之後,最後的一個步驟就是提交修改過的代碼和相關文檔了。
一般說來,每個項目組都會有專門的地方來存放這些東西,我們只要按照說明將自己的成果提交上去就行了。下面就等著構建新的版本和專門的測試人員來測試了。
提醒一下,在完成任務之後,我們不光是要提交代碼,還有很多其它的東西,這要按照項目的要求來做,不要忘記提交一些東西。為確保萬無一失,在提交成功之後,可以再對著要求檢查一遍。
以上便是我此次工作的整個步驟,我想大部分的開發工作也都是這樣的,最多是大同小異。在完成任務的過程中,我有這幾點感受:
1) 要靜心、有耐心,要認真地閱讀文檔和程式,等理解透徹了再開始編程,不要一上來就去修改程式。
2) 要嚴格按照編程規範來辦事,這樣方便程式的閱讀和修改,不要定義一些很奇怪的變數,要讓人一看到變數後就能夠知道它的大概意思。
3) 凡事不可太過於自信,做完後再回過頭來看一下,看有哪些地方是被自己遺忘了的、哪些地方是自己理解錯誤了的。
作為一個開發人員,我們一定要養成良好的習慣,要有好的態度,那麼再難的問題都是可以解決的。
(本人微博:http://weibo.com/zhouzxi?topnav=1&wvr=5,號:245924426,歡迎關注!)