1.背景,業務機會和客戶需求前端
背景:在目前的軟件項目開發過程當中,進度計劃老是很是不許確,常常出現延期,並且大多數都沒法給出一個相對比較準確的延遲時間.而PSP主要涉及軟件項目規劃和軟件產品質量問題。具體包括規模測量、規模估計、如何基於歷史數據來估計規模和資源以及如何進行過程測量問題,還包括缺陷管理、設計過程、設計驗證,所以各個公司及各個軟件開發人員都須要這樣一個軟件來估測本身的工做效率。web
業務機會:各個公司經過一軟件能夠方便直接的查詢當前項目的開發進度狀況來估計我的工做效率來更好的分配團體和安排工做任務。數據庫
客戶需求:可以較準確的估測每一個人的工做效率,能夠分配任務,操做簡便。 編程
2.綜合描述瀏覽器
本軟件應用於軟件開發的過程當中,是基於B/S和Java EE體系結構和編程的方法的軟件。安全
2.1 產品的情況服務器
軟件開發涉及多個環節,並且分析過程比較複雜,開發前須要對歷史數據進行分析以便提升對當前開發軟件估算的準確度,同時在軟件開發過程當中須要對開發過程進行管理,用來對軟件開發的開發進度進行分析,更好的掌握軟件開發的進度和結束時間。網絡
2.2 產品的功能數據結構
基本的功能:用戶管理,日程安排表管理,開發人員日誌的管理,軟件的維護架構
體系架構方面主要採用B/S結構,即瀏覽器服務器結構。在B/S結構下,用戶工做界面是經過WWW瀏覽器來實現,極少部分事務邏輯在前端(Browser)實現,可是主要事務邏輯在服務器端(Server)實現,造成所謂三層3-tier結構。
2.3 產品的情況
描述了在軟件產品需求分析報告中所定義的軟件產品的背景和起源。說明了該軟件產品是否屬於下列狀況: 是不是產品系列中的下一成員; 是不是成熟產品所改進的下一代產品;
是不是現有應用軟件的替代品(升級產品);
是不是一個新型的、自主型的產品。 若是該軟件產品需求分析報告定義的軟件系統是: 大系統的一個組成部分; 與其它系統和其它機構之間存在基本的相互關係。 那麼必須說明軟件產品需求分析報告定義的這部分軟件是怎樣與整個大系統相關聯的,或者(同時)說明相互關係的存在形式,而且要定義出二者之間的所有接口。
2.4 運行環境
開發環境:Eclipse3.7+JDK1.6
應用服務器:TOMCAT7.0.37
數據庫軟件:MySql數據庫
運行平臺:Windows 7 ,Android 2.2+
開發工具:JDK、Eclipse3.7
數據庫:MySql
規模:小
3軟件需求
本軟件主要分爲三個模塊:用戶管理,日程安排表管理,開發人員日誌的管理,軟件的維護。
3.1軟件重要的E-R圖
3.2 軟件重要的數據流圖
4.其餘非功能需求
非功能需求主要包括可靠性、安全性、可維護性、可擴展性、可測試性等。
4.1 性能需求
網絡環境下的多用戶系統 數據的完整性,數據完成的時間性, 數據安全性 ,對開發人員產生的日誌自動統計分析及數據的自動處理
4.2 安全措施需求
本軟件在使用過程當中有可能發生賬號信息外泄,請按期及時修改密碼。
4.3 安全性需求
爲達到系統安全性,完整性相關問題的需求或者與我的隱私問題相關的需求,須要對軟件用戶的信息進行安全認證。
4.4 軟件質量屬性
詳盡陳述對客戶和開發人員相當重要的在軟件產品其餘方面表現出來的質量功能。這些功能必須是肯定的、定量的、在須要時是能夠驗證的。至少也應該指明不一樣屬性的相對側重點。
4.5 業務規則
列舉出有關軟件產品的全部操做規則,例如:那些人在特定環境下能夠進行何種操做。這些自己不是功能需求,可是他們能夠暗示某些功能需求執行這些規則。列舉業務規則時,能夠根據規則的數量,選取合適的編目方式。
4.6 用戶文檔
列舉出將與軟件產品一同交付的用戶文檔,而且明確全部己知用戶文檔的交付格式或標準,例如: 安裝指南 紙質文檔,16開本; 用戶手冊 紙質文檔,16開本; 在線幫助 電子文檔,與軟件產品一同分發、配置; 使用教程電子文檔,與軟件產品一同分發、配置。
5.數據表
列出本文件中用到的專業術語的定義,以及有關縮寫的定義(若有可能,列出相關的外文原詞)。爲了便於非軟件專業或者非計算機專業人士閱讀軟件產品需求分析報告,要求使用非軟件專業或者非計算機專業的術語描述軟件需求。因此這裏所指的專業術語,是指業務層面上的專業術語,而不是軟件專業或者計算機專業的術語。可是,對於沒法迴避的軟件專業或者計算機專業術語,也應該列入詞彙表而且加以準肯定義。
6數據建設
數據定義是一個定義了應用程序中使用的全部數據元素和結構的共享文檔,其中對每一個數據元素和結構都準確描述:含義、類型、數據大小、格式、計量單位、精度以及取值範圍。數據定義的維護獨立於軟件需求規格說明,而且在軟件產品開發和維護的任何階段,均向風險承擔者開放。
若是爲軟件開發項目建立一個獨立的數據定義,而不是爲每一項特性描述有關的數據項,有利於避免冗餘和不一致性。可是卻不利於多人協同編寫需求分析報告,容易遺漏數據,也不方便閱讀。所以仍是建議爲每一個特性描述有關的數據項,彙總數據項建立數據定義,再根據數據定義複覈所有數據,使得它們的名稱和含義徹底一致。必須注意的是,爲了不二義性,在彙總數據項時應該根據數據項所表明的實際意義彙總,而不是根據數據項的名稱彙總。
在數據定義中,每一個數據項除了有一箇中文名稱外,還應該爲它取一個簡短的英文名稱,該英文名稱應該符合命名規範,由於在軟件開發時將沿用該英文名稱。可使用等號表示數據項,名稱寫在左邊,定義寫在右邊。常見數據項的描述方式以下:
原數據元素
一個原數據元素是不可分解的,能夠將一個數量值賦給它。定義原數據元素必須肯定其 含義、類型、數據大小、格式、計量單位、精度以及取值範圍。採用以星號爲界的一行 註釋文本,描述原數據元素的定義。
選擇項
選擇項是一種只能夠取有限離散值的特殊原數據元素,描述時一一枚舉這些值,並用方括號括起來寫在原數據元素的定義前。在兩項離散值之間,使用管道符分隔。
組合項
組合項是一個數據結構或者記錄,其中包含了多個數據項。這些數據項能夠是原數據元 素,也能夠是組合數據項,各數據項之間用加號鏈接。其中每一個數據項都必須是數據定 義中定義過的,結構中也能夠包括其它結構,可是絕對不容許遞歸。若是數 據結構中有 可選項,使用圓括號把該項括起來。
重複項
重複項是組合項的一種特例,其中有一項將有多個實例出如今數據結構中,使用花括號 把該項括起來。若是知道該項可能容許的範圍,就按「最小值:最大值」的形式寫在花 括號前。