說起寫文件,是程式設計師最頭疼的一件事情,你讓我再編一倍的**都別讓我寫文件。
如果是按照乙個完整的文件需求,則必須從立項報告、需求分析、概要設計、詳細設計、測試用例、測試報告、
使用說明、操作手冊、甚至包括管理文件都必須要有。但是現在情況是別說開發文件,連個簡單的txt說明都沒有。需求管理、bug管理、功能管理完全一塌糊塗,甚至連個excel文件都沒有。
甲方提出乙個問題,現場直接反饋給程式設計師,程式設計師在做其它工作,先問這個問題緊不緊,緊就先做這個,
趕上驗收普天蓋地的問題來了,直接乙個郵件過來
「明天甲方要驗收,必須要做完!」
簡單的一句,則必須要做。不做能怎麼辦呢?
這些問題不應該在專案要驗收前的乙個禮拜或者更長時間前就該知道要做了嗎?
驗收前一天應該是開始部署環境,實際環境測試是否有問題的,而不是說驗收前一天說,有20個bug或功能需要修改。你開始改吧!就算改完了,熬個通宵,如何呢?這樣出去的東西,我的心裡是放不下的。
我認為文件有四個基本作用:
1、 文件作為設計、開發、測試和發布的依據基礎。
整個專案的程序中,什麼是正確的?什麼是錯誤的?時間點如何擷取?測試以何為正確?發布時間點定在何日?
這些拿什麼作為標桿,拿什麼作為開發進度的控制依據,拿什麼作為專案管理中的里程碑,開發過程中出現了意見分歧,出現臉紅脖子粗,拿什麼作為評理依據,
好的,咱們來看文件。
所有這些問題在開發之前都應該寫清楚,標明白。如果中間出現問題,應該附以變更原因和情況說明。及時調整進度並調整文件。
而不是說,軟體的設計開發全靠軟體開發人員的主觀想象來的,設計成什麼樣看程式設計師的審美觀;
開發進度看程式設計師的心情;
測試結果根據測試人員的自我判斷。
這樣的軟體最終是失敗的軟體。
就算測試通過、驗收通過,又能怎麼樣呢?只能做乙個專案,砸乙個客戶,永遠沒有能夠長期合作的客戶,不是你不願意合作,而是對方不敢和你合作了。
整個專案開發的過程和專案管理過程是失敗的,整個專案下來,人仰馬翻,客戶滿意度低,專案成員滿是疲勞和怨言,專案經理夾在中間左右為難,受盡夾板氣。
2、 文件是說明問題的最好利器。
其實文件並不是說像傳說中的那樣,給程式設計師增加工作量,浪費了工作時間的問題,恰恰相反,文件是向公司向甲方,員工向老闆,經理向專案人員證明問題的作的有力證據。
甲方把乙個問題,翻過來調過去的改,今天試試這個按鈕,明天試試那個顏色,幾天下來,反而說你乙個簡單的功能沒有改好。大哥,是我們沒有改好嗎?如何證明,咱們翻文件,你的需求修改文件拿出來,何年何月,
何人提出,修改情況,滿意程度,採用與否,備註說明,拿出來一條一條的對啊。你再說我們沒有改東西,工作量在這裡,你不該說什麼了吧。
其它都有相同的道理,好記性不如爛筆頭。老闆、經理都是忙的連軸轉的人,哪有那麼多精力來照顧到所有的細節和問題,所有,開發過程中一定要有文件記錄,不然你說我做的不對,設計的不合設計,好的,設計文件搬出來!
一項一項的查、一條一條的對,誰的問題誰負責!
維護過程中有問題,好的,發需求更新文件過來,這個需求更改是要經過你們的領導同意的,如果你今天看過了覺得該了好,過兩天你們領導一看,什麼玩意,再改回去,不能耍猴啊,程式設計師也是人啊。不過一般領導發話,不論從
專案還是從公司最後還是要改的,那好咱們計工作量啊。乙個乙個都列在這裡;有bug,好的,發bug管理文件或系統中體現出來。對每個bug都記錄相關資訊,提出時間,提出人員,提出原因,修改要求等等。開發人員甚至可以
在bug管理系統中備註修改內容。因為很多時候,我們改了,很長一段時間過後,卻不知道當初怎麼改了,為什麼改了,甚至不知道需求是誰提出的。文件則在這方面提供了乙個有利的工具。
文件對控制專案的開發更是功不可沒,軟體開發節點、軟體開發里程碑、需求和設計等等,乙個專案如果有這些文件在手,還怕與別人談起工作時無甚可談,成竹在胸。
3、文件是專案管理的重要工具
project 總是和 manager 在一起的,為什麼,專案必需管理,不需要管理的東西,那就不叫專案。
所以,不要猶豫的負擔起你的責任。但是如何管理是關鍵。
管理理念,管理方法的書一大堆,我也不夠那麼高深的知識來告訴你如何管理。不過我認為在軟體專案管理中,文件是必不可少的。
需求分析,設計說明、專案進度、bug跟蹤、甚至個人的工作安排的彙總,都能夠做為專案管理中的總結和經驗。
不能乙個專案做完,除了乙個安裝包,其它的什麼都沒有留下,甚至資料庫都只是安裝在伺服器上,如果伺服器掛了,這個資料庫就只能靠程式設計師讀**再還原了。
4、 文件是公司的重要財富
如何能夠總結、分析問題,如何能夠縱覽整個系統發展過程。乙個專案結束、留下來的除了專案**、行業經驗、應該還有相關文件。這些都是公司的財富。
控制需求、設計、進度、測試。這些都要從文件中來,沒有文件就沒有依據,有什麼問題,咱們拿來文件說事。
但是目前的**完全是個人在做,一點點開發文件都沒有,更別說其他的如設計文件,資料庫說明,開發文件,詳細設計類似的文件了。
資料庫在公司的伺服器上,如果伺服器掛了呢?如何建立乙個30張表的資料庫?公司還有誰記得資料結構?
乙個包含10多個模組的**在乙個人手裡握著,如果程式設計師應付其他專案出差了,或者跳槽了?
這個**誰來讀?找個新手來讀?找個老手來看?、
有些人覺得看**不如寫**,提出申請,重新寫一遍!該如何裁決?
恐怕在讀**上花費的時間和精力遠比當初寫下設計文件要花費的多得多。
老闆都知道,花費了時間就相當於花費了金錢。
文件在軟體開發和專案管理中是必須的。
文件並不是神馬浮雲!
沒有文件,你的專案和**才都是浮雲。
軟體開發之我劍! 軟體開發,生命的轉折點
軟體開始開發了,終於進入了大家期盼已久的階段了,程式設計師期盼著進入開發,通常會認為前面的工作並不能對程式設計師的工作顯示出他的作用,經理期盼著進入開發,這樣專案就會進入乙個新的階段,這樣任務轉移了一部分,自己也可以鬆口氣,老闆盼望著進入開發階段,因為看到了進入掙錢的曙光。所有的人都盼望著進入開發,...
軟體開發之我劍! 軟體開發,生命的轉折點
軟體開始開發了,終於進入了大家期盼已久的階段了,程式設計師期盼著進入開發,通常會認為前面的工作並不能對程式設計師的工作顯示出他的作用,經理期盼著進入開發,這樣專案就會進入乙個新的階段,這樣任務轉移了一部分,自己也可以鬆口氣,老闆盼望著進入開發階段,因為看到了進入掙錢的曙光。所有的人都盼望著進入開發,...
軟體開發之文件的重要性
大三下學期,一次偶然的機會讓我開發了乙個完整的小專案,也讓我第一次對軟體開發的整體流程有了乙個比較全面細緻的了解。比起那些還沒有參加工作的學生來說,能這麼早接觸到實際專案開發真的是很幸運,其實也非常感謝那位老師。話不多說,轉入正題。今天要總結的是 軟體開發中文件的重要性。首先說一說我對軟體開發流程乙...