软件开发之文档的重要性
??????? 大三下學期,一次偶然的機會讓我開發了一個完整的小項目,也讓我第一次對軟件開發的整體流程有了一個比較全面細致的了解。比起那些還沒有參加工作的學生來說,能這么早接觸到實際項目開發真的是很幸運,其實也非常感謝那位老師。話不多說,轉入正題。今天要總結的是:軟件開發中文檔的重要性。
??????? 首先說一說我對軟件開發流程一個基本了解。總體上來說,軟件開發有以下幾個主要的階段(當然我這些肯定不是最全面的)。需求獲取階段——文檔設計階段——代碼實現階段——測試階段——維護階段,而且他們的先后順序是不能顛倒的。
??????? 大三開發那個項目是老師幫我確定了軟件的整體架構,后面的文檔編寫,代碼實現,測試維護工作都由我來做,當然整個過程是伴隨著老師的指導進行的。那個時候,老師經常和我說的兩句話讓我記憶非常深刻。第一,要想保證一個軟件成功開發,必學先寫文檔(確定需求,確定架構,然后撰寫需求分析,概要設計,詳細設計)。用戶的需求如果確定的明明白白,那么這個軟件就已經成功一半了。這點是我到了公司參加工作以后才明白的,因為需求搞不明白的話,后面的所有工作都是很難展開的。對于很多初學者來說可能不喜歡寫文檔,我就是是其中的一位。那個項目老師讓我寫了一個多月的文檔,讓我在文檔層面把所有的業務邏輯弄明白。第二,工作做得越細越好(就是把每一個細小的功能模塊的詳細實現都要寫明白,所有的類圖,流程圖等等都要寫明白,后來慢慢的才知道,工作做的越細,你對業務邏輯的把控力就越強,對業務的理解就會越透徹,實現起來就會更簡單。如果工作做的不細,對于沒有經驗的人來說,從宏觀上去把控業務會有些力不從心)。沒寫文檔前,我以為代碼的實現大概在20-30天左右,這是保守的時間估算。但后來的結果非常出乎我的意料,寫完所有的代碼用了不到十天的時間。這是我第一次意識到文檔對后期代碼實現的指導作用。??????????
??????? 所以說,文檔一定要先于代碼,不能顛倒。2015年11月份,我在公司接觸到了另外一個項目。公司給我的文檔不僅少(只有大概的功能概述,有些是還是手寫的),而且書寫極不規范,這使我短時間內根本不無法把控用戶需求,連用戶想要做什么都搞不明白。數據庫的表就給了一個簡單的Excel表格,對表字段的說明也就4-8個字左右。很多字段我完全搞不明白是干什么的。這讓我更感覺到文檔在軟件開發的重要性絕對是五星的。沒有詳細的文檔,后來的開發人員很難迅速上手,弄懂需求。
??????? 還有一點,文檔如果足夠詳細和明白,就不用太擔心項目換人。因為即使還了別人開發,他們也可以通過文檔從整體上理解整個項目。
??????? 文檔先于代碼,這點是正確的,但這并不是說,在代碼實現之前所有的文檔都要寫的清清楚楚。因為用戶的需求永遠都在變,或許用戶連自己想要做什么都說不明白,更別說我們這些需求人員和開發人員了。所以有時候,軟件的開發是一邊寫文檔一邊寫代碼的,在這種情況下,一定要注意一點:防止軟件架構變動。不能讓變化的用戶需求改變了我們的架構,那樣的話,就太浪費時間和精力了。至于怎么保證架構不變?這就要看你的需求人員怎么獲取需求了,怎么挖掘用戶的潛在需求了,看你的架構師怎么確定架構了等等。所以說,軟件開發進入代碼期之前的工作含金量是很高的!而且這些工作決一定要重視,因為這些工作可以決定軟件的成功于失敗。
? 薩爾菲wsda。碩大的D薩達第三SADSA要想
總結
以上是生活随笔為你收集整理的软件开发之文档的重要性的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 机器学习 —— 概率图模型(Homewo
- 下一篇: getDate()返回日期不一致问题引发