<div id="post_detail">
軟體工程各階段的開發文檔
轉載請注明原文位址:http://www.cnblogs.com/ygj0930/p/6616494.html
在我們自己開發項目時,定好目标、想好大緻架構就可以着手開發了,不是那麼嚴格。但是,如果是開發一個商業項目,就不能那麼随意了。
我們知道,軟體工程是一個指導開發者管理項目、開發項目的學科,有很多業内行之有效的開發模型,如:快速原型法、螺旋模型、靈活開發等等。軟體工程把開發一個項目劃分成了不同階段,使得項目開發有迹可循,有條不紊。但是,無論采用什麼模型,都離不開一樣東西,就是——開發文檔。
在實際開發中,開發者如何與不通技術的客戶去展示所設想的産品呢?文檔(含圖檔)是最好的選擇。而随着項目進展的不同,每個階段的文檔也會随之演變,變得越來越詳細。下面我們來大概介紹一套比較簡單的開發文檔演變流程。
一:開發文檔1.0(需求分析階段)
所需材料:與客戶面對面交流,通過一些針對性的引導問題讓客戶描述目标産品的要求。比如:您遇到了什麼樣的業務需求?您想做出一個怎樣的東西去解決這個問題?
在這個系統中,會有哪些人(使用者角色)?您的業務流程是怎樣的?每一種角色,分别用這個系統做什麼?
生成文檔:從采集到的需求資料中得出《開發文檔1.0》,主要有三部分内容:
一:系統概述:系統設計初衷(遇到的問題、想系統怎麼解決這個問題)
二:使用者角色:有什麼角色會使用這個系統
三:概要需求:系統的功能、每個角色會怎麼使用這個系統
二:開發文檔2.0+項目計劃書(概要設計階段)
所需材料:把《開發文檔1.0》交予客戶稽核确認修改。然後同時再次溝通,擷取整個系統的使用流程、各個角色的使用流程、整個系統的具體功能清單。
生成文檔:《開發文檔2.0》:在《開發文檔1.0》基礎上,補全、新增:
三:概要需求:補全系統使用流程圖、各個角色的使用流程圖
四:功能清單:得出系統功能清單、每個角色子產品的功能清單
五:系統架構:采用什麼架構來開發這個系統
《項目計劃書》:根據《開發文檔2.0》大概估計項目的開發成本(時間、資源),然後針對各個項目子產品的功能作出相應報價
一:開發成本彙報:所需時間、人力物力
二:項目子產品報價:各個功能子產品的功能清單以及實作這個子產品的報價
三:整體項目報價
三:開發文檔3.0(詳細設計階段)
所需材料:《開發文檔2.0》與《項目計劃書》傳遞客戶稽核、确認、溝通修改,擷取客戶進一步的要求。
生成文檔:《開發文檔3.0》:在《開發文檔2.0》的基礎上新增:
六:功能詳細設計:對每個角色的的每個功能進行詳細設計,主要包括:
1:功能描述
2:功能流程
3:界面Demo
4:資料規約
5:資料實體
四:開發文檔4.0(詳細設計階段)
所需材料:《開發文檔3.0》交予客戶稽核确認,特别是對詳細設計部分的功能描述、界面Demo等作出确認。
生成文檔:《開發文檔4.0》:在《開發文檔3.0》基礎上新增:
七:子產品劃分:對角色各個功能進行劃分,成為系統的子產品。
八:資料庫設計:由詳細設計部分涉及到的資料實體與資料規約,以及對角色功能劃分後得到的系統子產品,進行資料庫設計(建立什麼表?表中屬性有哪些?)
五:開發文檔5.0(詳細設計階段)
所需材料:《開發文檔4.0》
生成材料:根據《開發文檔4.0》中的資料庫設計,對 第六點:功能詳細設計 做出補充完善:
6:設計資料庫中的表
7:功能實作的架構(把功能流程用架構表示,如:互動的操作在 XX.jsp,請求傳給 xxservlet、資料操作 xx資料表)
六:根據《開發文檔5.0》進行編碼開發工作,生成《注釋文檔》
七:單元測試、內建測試、系統測試,生成《測試日志》
八:編寫《使用者使用手冊》,傳遞并指導客戶使用
分類: M1 軟體工程 好文要頂 關注我 收藏該文
.長卿
關注 - 0
粉絲 - 305 +加關注 1 0 « 上一篇: 二叉樹應用進階之折紙(二叉樹的右根左周遊)
» 下一篇: 軟體工程各階段的UML圖
</div>
<div class="postDesc">posted @ <span id="post-date">2017-03-25 11:07</span> <a href="https://www.cnblogs.com/ygj0930/" target="_blank" rel="external nofollow" >.長卿</a> 閱讀(<span id="post_view_count">7377</span>) 評論(<span id="post_comment_count">0</span>) <a href="https://i.cnblogs.com/EditPosts.aspx?postid=6616494" target="_blank" rel="external nofollow" rel="nofollow">編輯</a> <a href="#" target="_blank" rel="external nofollow" onclick="AddToWz(6616494);return false;">收藏</a></div>
</div>
<script type="text/javascript">var allowComments=true,cb_blogId=302747,cb_entryId=6616494,cb_blogApp=currentBlogApp,cb_blogUserGuid='485879be-596f-e611-9fc1-ac853d9f53cc',cb_entryCreatedDate='2017/3/25 11:07:00';loadViewCount(cb_entryId);var cb_postType=1;var isMarkdown=false;</script>
</div><!--end: forFlow -->
</div>