目錄前端
1.業務需求....................................................................................................................... 2算法
1.2 業務機遇............................................................................................................. 2數據庫
2系統整體分析與設計...................................................................................................... 3windows
2.1系統體系結構....................................................................................................... 3瀏覽器
2.2硬件環境.............................................................................................................. 4安全
2.3軟件環境.............................................................................................................. 5服務器
2.4 系統功能結構...................................................................................................... 5oracle
3關鍵算法設計................................................................................................................ 6jsp
3.1主要用戶.............................................................................................................. 6
3.2 全部用例............................................................................................................. 6
4系統功能詳細設計與實現............................................................................................... 7
4.1 主要模型............................................................................................................. 8
4.2數據庫的概念結構模型設計................................................................................ 14
4.3數據庫的邏輯結構模型設計................................................................................ 14
4.4數據庫管理物理結構模型設計............................................................................ 16
5結束語......................................................................................................................... 16
6參考文獻..................................................................................................................... 16
1.業務需求
1.1 背景
在目前的軟件項目開發過程當中,進度計劃老是很是不許確,常常出現延期,並且 大多數都沒法給出一個相對比較準確的延遲時間。即便使用用例包、用例的方式組織需求,或者是使用自底向上的估計方法,分配給開發人員的任務仍是沒法定期完 成,並且仍是沒法給出準確的延遲時間。而且,就目前的軟件需求這門課程的發展來講,尚未發明出一個完美的、萬能的、準確的估算公式,這讓研發經理和管理層很難合適的分配開發任務。彙總起來,整個項目的完成時間就要拖延,對整個軟件公司帶來很大的損失,同時也讓客戶對軟件失去了信心。
1.2 業務機遇
軟件開發公司的各部門使用這個軟件,能夠方便直接的查詢當前項目的開發進度狀況;能夠根據之前開發的相關軟件的進度狀況,預測當前將要開發軟件的進度和合適的開發團隊,從而將任務具體詳細的分配到每一個開發人員,並且能夠很大概率的保證開發人員的準時完工,從而保證整個項目準時完工。
1.3業務目標
BO-1:在初版應用以後的第一個項目內,軟件公司開發的開發效率提升20%。
BO-2:在初版應用以後的幾個開發項目內,開發人員估算本身產能的準確率提升50%。
SC-1:在初版應用以後的12個月內,軟件公司全體使用此軟件的員工的好評達到90%。
SC-2:在初版應用以後的12個月內,軟件公司的客戶量增長20%。
本系統採用瀏覽器/服務器(Browse/Server)模式。簡述B/S結構特色。
圖1 系統體系結構圖
B/S結構,即Browser/Server(瀏覽器/服務器)結構,是隨着Internet技術的興起,對C/S結構的一種變化或者改進的結構。在這種結構下,用戶界面徹底經過WWW瀏覽器實現,一部分事務邏輯在前端實現,可是主要事務邏輯在服務器端實現,造成所謂3-tier結構。B/S結構,主要是利用了不斷成熟的WWW瀏覽器技術,結合瀏覽器的多種Script語言(VBScript、JavaScript…)和ActiveX技術,用通用瀏覽器就實現了原來須要複雜專用軟件才能實現的強大功能,並節約了開發成本,是一種全新的軟件系統構造技術。隨着Windows 98/Windows 2000將瀏覽器技術植入操做系統內部,這種結構更成爲當今應用軟件的首選體系結構。
本系統的硬件環境以下:
l 客戶機:普通PC
n CPU:P4 1.8GHz以上
n 內存:256MB以上
n 可以運行IE5.0以上或者Netscape4.0以上版本的機器
n 分辨率:推薦使用1024*768像素
l WEB服務器
n CPU:P4 2.0GHz
n 內存:1G以上
n 硬盤:80G以上
n 網卡:千兆
l 數據庫服務器
n CPU:P4 2.0GHz
n 內存:1G以上
n 硬盤:80G以上
本系統的的軟件環境以下:
l 操做系統:Unix/Linux/windows2000或以上版本
l 數據庫:Oracle 10g
l 開發工具包:JDK 1.6.0
l 開發環境:DreamWeaver CS5
l Web服務器:Tomcat
l 瀏覽器:IE6.0以上
(1)數據庫及操做系統:
對於核心數據庫來講,選擇一個合適的數據庫系統對咱們的系統運行是很重要的,選擇數據庫的關鍵因素是要考慮預計會有多少人同時訪問數據庫;正常工做時間的級別;用來訪問數據庫的應用程序的類型;運行數據庫的服務器的硬件和操做系統類型;以及管理人員的專業技術水平。目前市場上適用於中小型企業的數據庫產品有IBM DB2 、Microsoft SQL Server系列、 Oracle系列。全部這些產品都基於SQL語言。同時,它們還擁有精密複雜的安全控制以適應不一樣的商業須要。服務器操做系統使用Windows 2000 Server系統。
考慮到價格因素、易用性,咱們使用SQL SERVER 2000做爲系統後臺數據庫系統,服務器操做系統採用Windows 2000 Server。
(2)WEB服務軟件:
目前的WEB服務器軟件有不少種,成熟並且穩定有Apache、Tomcat和Microsoft的IIS ,它們也是佔據着Web服務器市場最大的份額。Tomcat是Sun和Apache合做作出來的JSPServer,支持Servlet2.2及JSP1.1等版本。並且Tomcat將來將會取代Jserv,成爲Apache主要的Servlet&JSPEngine。Tomcat在設計上是以獨立的Server執行,而不像Jserv是附在Apache中,這樣就更能夠發揮在servlet中,非HttpServlet的能力。Tomcat是Java程序,因此只要有JDK就可使用,不須要考慮操做系統平臺。所以選擇Tomcat做爲WEB服務器。
闡述系統功能及實現目標,功能模塊圖以下:
圖2系統功能模塊圖
(1)、管理層
(2)、研發經理
(3)、項目經理
(4)、開發人員
編號 |
特性 |
FEAT01 |
研發經理可以建立項目、指定或修改項目經理、刪除還沒有分配工做任務的項目 |
FEAT02 |
項目經理能夠對項目設置工做包,工做包容許多級嵌套,它只用來組織工做任務 |
FEAT03 |
項目經理能夠爲開發人員指派工做任務,工做任務屬於特定的工做包 |
FEAT04 |
項目經理在分配工做任務時,可以查閱開發人員的日程安排表,能夠按開發人員查詢、也可按日程查詢 |
FEAT05 |
開發人員接到任務時,經過系統填寫計劃時間(計劃開始時間和計劃結束時間),項目經理確認後,更新日程安排表 |
FEAT06 |
開發人員能夠查詢相近工做任務的歷史數據(估算數據、實際數據) |
FEAT07 |
開發人員任務執行將超計劃時,應報告項目經理,項目經理經過系統更新其日程表 |
FEAT08 |
當任務完成以後,項目經理負責Close任務,並填入實際的完成狀況(KLOC、實際結束時間) |
FEAT09 |
開發人員能夠隨時記錄本身的時間,提供「開始計時」、「暫停計時」、「中止計時」,在中止時,填入任務編號(在線則選擇)、工做關鍵字(以逗號分隔的多個),自動生成開始時間、暫停時間、中止時間、總時長、有效時長(總時長-中斷時長) |
FEAT10 |
開發人員能夠根據任務編號、關鍵字、起止時間進行分類組合查詢與統計 |
FEAT11 |
時間記錄程序會自動鏈接服務器,完成時間日誌上傳的工做,未能鏈接服務器,則在本機暫存時間日誌 |
FEAT12 |
項目經理能夠按項目、任務、關鍵字統計實際工做時長、產能 |
FEAT13 |
研發經理及管理層能夠按我的、任務、項目、關鍵字查看工做時長、統計產能 |
3.主要實體(類圖)
具體協做圖
5. 用戶登陸的具體流程
數據庫概念模型採用實體-聯繫方法系統涉及的實體有以下:
用戶 屬性:用戶名、密碼、權限、任務狀態
項目 屬性:項目編號、項目名稱、項目經理、開始時間、結束時間、進行狀態
工做包 屬性:工做包編號、所屬項目編號、工做包名、負責人員
進程記錄 屬性:進程編號、工做包編號、工做淨時間、代碼行數、備註
(注:有下劃線加粗的文字表明主鍵)
圖書管理系統概念模型E-R
信息存儲結構的設計在系統的設計中相當重要,要考慮到數據冗餘、系統執行效率、信息控制以及維護等方面的要求。信息的管理離不開數據庫的支持,咱們採用Oracle 10g數據庫管理系統。
數據庫的物理設計主要是對數據在內存中的安排,包括對索引區、緩衝區的設計;對使用的外存設備及外存空間的組織,包括索引區、數據塊的組織與劃分;設置訪問數據的方式方法。需在非系統卷(操做系統所在卷之外的其餘卷)上安裝Oracle 10g 程序及數據庫文件。內存是影響Oracle 10g系統性能的一個重要因素,應在Microsoft SQL Server數據庫安裝後進行內存選項(Memory)設置,最大配置值爲2GB。
爲了肯定Oracle 10g系統最適宜的內存需求,能夠從總的物理內存中減去Oracle 10g須要的內存(120M)以及其它一些內存需求後綜合肯定,理想的狀況是給Oracle 10g分配儘量多的內存,而不產生頁面調度。設置服務器的虛擬內存爲1G。
此次主要是經過jsp+servlet依靠鏈接oracle數據庫從而實現的,軟件自己設計上沒有大的問題,可是有些具體功能的處理方面上仍是不夠好,界面仍是須要增強,某些功能沒有具體的實現,主要是對於這個軟件沒有一個具體概念,同時對於某些具體功能上太過於執着了,致使整個系統的開發效率不高,所以形成本次的開發不是很盡如人意。
之後的開發中應該以主要功能爲主,先實現主要功能,而後再作美化。