




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、畢業(yè)設計(論文)論文題目:家庭財務管理系統(tǒng)所 在 系 電信系 姓 名 羅時聰 專 業(yè) 軟件技術 班 級 10軟件 指導老師 王敏 2013年 4 月 20 日目 錄第1章 緒論11.1 課題背景及選題意義11.2 課題簡介11.3 系統(tǒng)的開發(fā)目的和意義21.4 系統(tǒng)開發(fā)工具與數據庫介紹21.4.1 b/s模式介紹21.4.2 javabean介紹31.4.3 jsp技術介紹31.4.4 hibernate技術介紹41.4.5 “容器”tomcat應用服務器介紹41.4.6 oracle數據庫介紹51.4.7 開發(fā)框架技術mvc61.5 系統(tǒng)開發(fā)理論介紹61.5.1 系統(tǒng)規(guī)劃階段71.5.2 系
2、統(tǒng)分析階段71.5.3 系統(tǒng)設計階段71.5.4 系統(tǒng)實施階段71.6 運行環(huán)境8第2章 系統(tǒng)需求分析92.1系統(tǒng)目標92.2 系統(tǒng)可行性分析92.2.1 技術可行性92.2.2 經濟可行性92.3系統(tǒng)需求分析方法102.3.1系統(tǒng)需求分析概述102.3.2系統(tǒng)需求分析方法112.4系統(tǒng)功能需求分析11第3章 系統(tǒng)總體設計133.1 系統(tǒng)設計方法133.2 系統(tǒng)架構133.3 系統(tǒng)功能模塊細分153.4 系統(tǒng)數據庫的設計163.4.1 數據庫分析163.4.2 數據庫概念結構設計163.4.3 數據庫邏輯結構設計18第4章 系統(tǒng)特性194.1 框架文件配置194.2 系統(tǒng)主界面214.3家庭成
3、員管理收支項目234.3.1 查看收支項目234.3.2編輯收支項目234.3.3 刪除收支項目234.3.4 技術23第五章 結 論27第1章 緒論1.1 課題背景及選題意義近幾年來,隨著我國城鄉(xiāng)居民收入的增加和生活水平的提高,家庭理財已成為人們居家過日子的重要內容。社會學家細心的觀察到,時下家庭的財務管理比之計劃經濟年代,開始發(fā)生微妙的變化?,F(xiàn)在的城鄉(xiāng)家庭生活發(fā)生了明顯的變化,人們的收入逐漸拉開檔次,消費水平也高了。大多數家庭關注的是提高生活質量,一方面精打細算,量入為出,把錢用在刀刃上;另一方面保證適當的娛樂活動、社會交際、智力開發(fā)等方面的開支。為此,不少家庭就有中長期財務預算,有基本建
4、設規(guī)劃??偟恼f來,家庭財務必須以量入為出為原則,以財產保值增值為目標,處理好積累和消費的關系。因此,開發(fā)一個家庭財務管理系統(tǒng)具有很強的實用性,能夠達到對家庭財務合理有效的管理。1.2 課題簡介家庭財務管理系統(tǒng)是每一個家庭管理家庭財務收入和支出的不可缺少的一個管理信息系統(tǒng),它的內容對于家庭的管理者來說是至關重要的,所以家庭財務管理系統(tǒng)應該能夠為每一個家庭的管理者提供充足的信息和快捷的查詢手段,大大的方便家庭的管理者的合理理財。隨著科學技術的不斷提高,計算機科學日漸成熟,其強大的功能已被人們深刻認識,它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用。作為計算機應用的一部分,使用計算機對家庭財務進
5、行管理,具有手工管理所無法比擬的優(yōu)點,如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高家庭財務管理的效率,也是家庭理財的科學化、正規(guī)化管理,與先進科學技術接軌的重要條件。1.3 系統(tǒng)的開發(fā)目的和意義家庭理財管理系統(tǒng)是為滿足當代家庭理財管理的需要而設計開發(fā)的一個財務管理系統(tǒng)。它針對家庭理財的需要,開發(fā)出一個能實現(xiàn)管理家庭財務收支以及統(tǒng)計分析等功能的實用型軟件,能夠為每一個家庭的管理者提供充足的信息和快捷的查詢手段,大大方便家庭管理者合理科學有效的理財。伴隨著信息時代的到來,信息的種類、數量越來越多,容量也越來越大,在競爭越來越激烈的今天,隨著科學技術
6、的不斷提高,計算機科學日漸成熟,其強大的功能已為人們深刻認識,它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用。而使用計算機對家庭財務進行管理,已經成為一種趨勢,與傳統(tǒng)的手工式家庭財務管理相比,利用計算機軟件對家庭財務實行管理具有檢索迅速、查找方便、可行性高、存儲量大、保密性好、壽命長、成本低等優(yōu)點。家庭理財管理系統(tǒng)正是在這種環(huán)境下應運而生,其開發(fā)的整體任務是實現(xiàn)家庭財務管理的系統(tǒng)化、規(guī)范化、科學化,從而達到有效管理家庭財務的目的。因此,開發(fā)這樣一個系統(tǒng)在當今社會中是很有必要的。1.4 系統(tǒng)開發(fā)工具與數據庫介紹1.4.1 b/s模式介紹伴隨著internet的迅速發(fā)展,計算機技術正在由基于c
7、/s(client/ server)模式的應用系統(tǒng)轉變?yōu)榛赽/s模式的應用系統(tǒng)。過去,網絡軟件的開發(fā)都采用c/s(client)模式,在這種模式下,主要的業(yè)務邏輯都集中于客戶端程序,因此,必然導致以下問題:(1) 系統(tǒng)安裝、調試、維護和升級困難。由于客戶端的硬件配置可能存在差異,軟件環(huán)能各不相同,因此,在安裝時,必須對每一個客戶端分別進行配置,同樣,在軟件升級時也要對客戶端分別處理。(2) 在整個系統(tǒng)中,業(yè)務邏輯和用戶界面都集中到了客戶端,必然會增加安全隱患。(3) b/s模式帶來了巨大的好處:開發(fā)成本及維護成本降低。由于b/s架構管理軟件只安裝在服務器端(server)上,即應用程序在部署
8、、升級、維護時,只需要在服務器端進行配置就可以了,網絡管理人員只需要管理服務器就行了,用戶界面主要事務邏輯在服務器(server)端完全通過www瀏覽器實現(xiàn),極少部分事務邏輯在前端(browser)實現(xiàn),所有的客戶端只有瀏覽器,網絡管理人員只需要做硬件維護。(4) 良好的安全性能,防火墻技術可以保證后臺數據庫的安全性。所有的配置工作都集中在服務器端且所有客戶端請求都是通過dbms來訪問數據庫,從而大大減少了數據直接暴露的風險。1.4.2 javabean介紹用戶可以使用javabean將功能、處理、值、數據庫訪問和其他任何可以用java代碼創(chuàng)造的對象進行打包,并且其他的開發(fā)者可以通過內部的js
9、p頁面、servlet、其他javabean、applet程序或者應用來使用這些對象。用戶可以認為javabean提供了一種隨時隨地的復制和粘貼的功能,而不用關心任何改變。最初,javabean的目的是為了將可以重復使用的軟件代碼打包標準。特別是用與幫助廠家開發(fā)在綜合開發(fā)環(huán)境(ide)下使用的java軟件部件。這些包括如grid控件,用戶可以將該部件拖放到開發(fā)環(huán)境中。從此,javabean就可以擴展為一個java web 應用的標準部件,并且javabean部件框架已經擴展為企業(yè)版的 bean(ejb)。1.4.3 jsp技術介紹jsp的全稱是java server pages,它是sun推出
10、的一種動態(tài)網頁技術標準。它在傳統(tǒng)的靜態(tài)頁面文件(*.html,*.htm)中加入java程序片段和jsp標記,就構成了jsp頁面。jsp具有以下的優(yōu)點:(1) 將業(yè)務層與表示層分離:使用jsp技術,網絡開發(fā)人員可充分使用html來設計頁面顯示部分(如字體顏色等),并使用jsp指令或者java程序片段來生成網頁上的動態(tài)內容;(2) 能夠跨平臺:jsp支持絕大部分平臺,包括現(xiàn)在非常流行的linux系統(tǒng),應用非常廣泛的apache服務器也提供了支持jsp的服務;(3) 組件的開發(fā)和使用很方便:如asp的組件是由c+,vb等語言開發(fā)的,并需要注冊才能使用;而jsp的組件是用java開發(fā)的,可以直接使用
11、;(4)一次編寫,處處運行:作為java開發(fā)平臺的一部分,jsp具有java所有優(yōu)點,包括write once , run everywhere.1.4.4 hibernate技術介紹hibernate是一個免費的開源java包,它使得與關系數據庫打交道變得十分輕松,就像您的數據庫中包含每天使用的普通java對象一樣,同時不必考慮如何把它們從神秘的數據庫表中取出(或放回到數據庫表中)。它解放了您,使您可以專注于應用程序的對象和功能,而不必擔心如何保存它們或稍后如何找到它們。 hibernate不會對您造成妨礙,也不會強迫您修改對象的行為方式。它們不需要實現(xiàn)任何不可思議的接口以便能夠持續(xù)存在。惟
12、一需要做的就是創(chuàng)建一份 xml“映射文檔”,告訴hibernate您希望能夠保存在數據庫中的類,以及它們如何關聯(lián)到該數據庫中的表和列,然后就可以要求它以對象的形式獲取數據,或者把對象保存為數據。與其他解決方案相比,它幾乎已經很完美了。運行時,hibernate讀取映射文檔,然后動態(tài)構建java類,以便管理數據庫與java之間的轉換。在hibernate中有一個簡單而直觀的api,用于對數據庫所表示的對象執(zhí)行查詢。要修改這些對象,(一般情況下)只需在程序中與它們進行交互,然后告訴hibernate保存修改即可。類似地,創(chuàng)建新對象也很簡單;只需以常規(guī)方式創(chuàng)建它們,然后告訴hibernate有關它們
13、的信息,這樣就能在數據庫中保存它們。hibernate api學習起來很簡單,而且它與程序流的交互相當自然。在適當的位置調用它,就可以達成目的。它帶來了很多自動化和代碼節(jié)省方面的好處,所以花一點時間學習它是值得的。而且還可以獲得另一個好處,即代碼不用關心要使用的數據庫種類(否則的話甚至必須知道)。我所在的公司就曾有過在開發(fā)過程后期被迫更換數據庫廠商的經歷。這會造成巨大的災難,但是借助于hibernate,只需要簡單地修改hibernate配置文件即可。1.4.5 “容器”tomcat應用服務器介紹目前支持jsp的應用服務器是較多的,tomcat是其中較為流行的一個web服務器,被javawor
14、ld雜志的編輯選為2001年度最具創(chuàng)新的java產品,可見其在業(yè)界的地位。 tomcat是一個免費的開源的serlvet容器,在tomcat中,應用程序的部署很簡單,你只需將你的war放到tomcat的webapp目錄下,tomcat會自動檢測到這個文件,并將其解壓。你在瀏覽器中訪問這個應用的jsp時,通常第一次會很慢,因為tomcat要將jsp轉化為servlet文件,然后編譯。編譯以后,訪問將會很快。tomcat也具有傳統(tǒng)的web服務器的功能:處理html頁面。但是與apache相比,它的處理靜態(tài)html的能力就不如apache。我們可以將tomcat和apache集成到一塊,讓apach
15、e處理靜態(tài)html,而tomcat處理jsp和servlet。tomcat是一個很好的工具,不僅僅因為其免費,功能強大,更因為其開放性,越來越受到人們的重視。1.4.6 oracle數據庫介紹oracle 是以高級結構化查詢語言(sql)為基礎的大型關系數據庫,通俗地講它是用方便邏輯管理的語言操縱大量有規(guī)律數據的集合。是目前最流行的b/s體系結構的數據庫之一。oracle7.x以來引入了共享sql和多線索服務器體系結構。這減少了oracle的資源占用,并增強了oracle的能力,使之在低檔軟硬件平臺上用較少的資源就可以支持更多的用戶,而在高檔平臺上可以支持成百上千個用戶。提供了基于角色(rol
16、e)分工的安全保密管理。在數據庫管理功能、完整性檢查、安全性、一致性方面都有良好的表現(xiàn)。提供了與第三代高級語言的接口軟件pro*系列,能在c,c+等主語言中嵌入sql語句及過程化(pl/sql)語句,對數據庫中的數據進行操縱。加上它有許多優(yōu)秀的前臺開發(fā)工具如 power build、sql*forms、visia basic 等,可以快速開發(fā)生成基于客戶端pc 平臺的應用程序,并具有良好的移植性。提供了新的分布式數據庫能力??赏ㄟ^網絡較方便地讀寫遠端數據庫里的數據,并有對稱復制的技術。oracle數據庫在物理上是存儲于硬盤的各種文件。它是活動的,可擴充的,隨著數據的添加和應用程序的增大而變化。
17、oracle數據庫在邏輯上是由許多表空間構成。主要分為系統(tǒng)表空間和非系統(tǒng)表空間。非系統(tǒng)表空間內存儲著各項應用的數據、索引、程序等相關信息。我們準備上馬一個較大的oracle應用系統(tǒng)時,應該創(chuàng)建它所獨占的表空間,同時定義物理文件的存放路徑和所占硬盤的大小。物理上存放于網絡的多個oracle數據庫,邏輯上可以看成一個單個的大數據庫。用戶可以通過網絡對異地數據庫中的數據同時進行存取,而服務器之間的協(xié)同處理對于工作站用戶及應用程序而言是完全透明的:開發(fā)人員無需關心網絡的連接細節(jié)、無需關心數據在網絡接點中的具體分布情況、也無需關心服務器之間的協(xié)調工作過程。由網絡相連的兩個oracle數據庫之間通過數據庫
18、鏈接(db-links)建立訪問機制,相當于一方以另一方的某用戶遠程登錄所做的操作。但oracle采用的一些高級管理方法,如同義詞(synonme)等使我們覺察不到這個過程,似乎遠端的數據就在本地。數據庫復制技術包括:實時復制、定時復制、儲存轉發(fā)復制。對復制的力度而言,有整個數據庫表的復制,表中部分行的復制。在復制的過程中,有自動沖突檢測和解決的手段。1.4.7 開發(fā)框架技術mvc對于框架技術,我們采用struts+ struts+hibernate的整合,其實任何一種框架都可以完成我們的項目,但我們選擇三種框架的組合是因為三種框架各有好處,我們利用它們的優(yōu)點,來避免它們的缺點,充分利用jav
19、a技術在web的應用。struts是應用比較廣泛的一種表現(xiàn)層框架struts是一個為開發(fā)基于模型(model)視圖(view)控制器(controller)(mvc)模式的應用架構的開源框架,是利用servlet,jsp和custom tag library構建web應用的一項非常有用的技術。由于struts能充分滿足應用開發(fā)的需求,簡單易用,敏捷迅速。它使用服務層框架可以將javabeans從jsp/servlet中分離出來,而使用表現(xiàn)層框架則可以將jsp中剩余的javabeans完全分離,這部分javabeans主要負責顯示相關信息,一般是通過標簽庫(taglib)實現(xiàn),不同框架有不同自己
20、的標簽庫,struts是應用比較廣泛的一種表現(xiàn)層框架。1.5 系統(tǒng)開發(fā)理論介紹軟件的生命周期指從提出軟件產品開始,直到該軟件產品被淘汰的全過程。信息系統(tǒng)在使用過程中隨著其生存環(huán)境的變化,要不斷維護、修改,當它不再適應的時候就要被淘汰,就要有新系統(tǒng)代替老系統(tǒng),這種周期循環(huán)稱為信息系統(tǒng)的生命周期。信息系統(tǒng)的生命周期可以分為系統(tǒng)規(guī)劃、系統(tǒng)分析、系統(tǒng)設計、系統(tǒng)實施、系統(tǒng)運行和維護等五個階段。1.5.1 系統(tǒng)規(guī)劃階段系統(tǒng)規(guī)劃階段的任務是對各家庭理財的環(huán)境、目標及現(xiàn)行系統(tǒng)的狀況進行初步調查,根據家庭理財目標和發(fā)展戰(zhàn)略,確定信息系統(tǒng)的發(fā)展戰(zhàn)略,對建設新系統(tǒng)的需求做出分析和預測,同時考慮建設新系統(tǒng)所受的各種約
21、束,研究建設新系統(tǒng)的必要性和可能性。根據需要與可能,給出擬建系統(tǒng)的備選方案。對這些方案進行可行性分析,寫出可行性分析報告。可行性分析報告審議通過后,將新系統(tǒng)建設方案及實施計劃編寫成系統(tǒng)設計任務書。1.5.2 系統(tǒng)分析階段系統(tǒng)分析階段的任務是根據系統(tǒng)設計任務書所確定的范圍,對現(xiàn)行系統(tǒng)進行詳細調查,描述現(xiàn)行系統(tǒng)的業(yè)務流程,指出現(xiàn)行系統(tǒng)的局限性和不足之處,確定新系統(tǒng)的基本目標和邏輯功能要求,即提出新系統(tǒng)的邏輯模型。這個階段又稱為邏輯設計階段,他是整個系統(tǒng)建設的關鍵階段,也是信息系統(tǒng)建設與一般工程項目的重要區(qū)別所在。該階段的工作成果體現(xiàn)在系統(tǒng)說明書中,這是系統(tǒng)建設的必備文件。它既是給用戶看的,也是下一
22、階段的工作依據。因此,系統(tǒng)說明書既要通俗,又要準確。用戶通過說明書可以了解未來系統(tǒng)的功能,判斷是不是其所要求的系統(tǒng)。系統(tǒng)說明書一旦討論通過,就是系統(tǒng)設計的依據,也是將來驗收系統(tǒng)的依據。1.5.3 系統(tǒng)設計階段簡單地講,系統(tǒng)分析階段的任務是回答系統(tǒng)“做什么”的問題,而系統(tǒng)設計階段要回答的問題是“怎么做”。該階段的任務是根據系統(tǒng)說明書中規(guī)定的功能要求,考慮實際條件,具體設計實現(xiàn)邏輯模型的技術方案,也即設計新系統(tǒng)的物理模型。這個階段又稱為物理設計階段,可分為總體設計和詳細設計兩個階段。這個階段的技術文檔是“系統(tǒng)設計說明書”。1.5.4 系統(tǒng)實施階段系統(tǒng)實施階段是將設計的系統(tǒng)付諸實施的階段。這一階段的
23、任務包括計算機等設備的購置、安裝和調試,程序的編寫和調試,人員培訓,數據文件轉換,系統(tǒng)調試與轉換等。這個階段的特點是幾個互相聯(lián)系、互相制約的任務同時展開,必須精心安排、合理組織。系統(tǒng)實施是按實施計劃分階段完成的,每個階段應寫出實施進度報告。系統(tǒng)測試之后寫出系統(tǒng)測試分析報告。1.6 運行環(huán)境操作系統(tǒng)windows xp 軟件環(huán)境數據庫:oracle10g開發(fā)工具:myeclipse8.5第 7 頁第2章 系統(tǒng)需求分析2.1系統(tǒng)目標本系統(tǒng)要達到的目標有以下幾點: 驗證用戶和密碼的正確性再登入,以及修改密碼和退出系統(tǒng); 保存每次輸入的收支記錄,并提供兩種查詢方式:種類法和編號法; 整個收支記錄庫可以
24、導出為文本文件,以便做其它工作; 能夠提供一定的安全機制,提供數據信息授權訪問,防止隨意刪改,同時提供信息備份的服務。2.2 系統(tǒng)可行性分析可行性研究的目的是用最小的代價在盡可能短的時間內確定問題是否能夠解決。從現(xiàn)在應用的技術方面、管理者和用戶的操作方式方面研究智能家庭理財系統(tǒng)的可行性和必要性。智能家庭理財系統(tǒng)的實施,將很大程度上提高現(xiàn)代家庭的理財效率,使得現(xiàn)代家庭能夠更加方便的對自己的財務進行個性化的管理。2.2.1 技術可行性技術可行性研究的任務,是從總體上鑒別和選擇技術系統(tǒng),是研究現(xiàn)有的技術條件能否順利完成開發(fā)工作,硬、軟件配置能否滿足開發(fā)的需求等等。本系統(tǒng)的開發(fā)使用myeclipse
25、作為系統(tǒng)開發(fā)的開發(fā)環(huán)境,它作為一種現(xiàn)代化的編程語言,提供完善的指令控制語句、類與對象的支持及豐富的數據類型,給開發(fā)高性能系統(tǒng)提供了保障,為開發(fā)滿足客戶要求的系統(tǒng)保證了代碼的模塊化要求,而代碼模塊化的提高,非常有利于以后對新系統(tǒng)的擴展與修改。綜上所述,本系統(tǒng)為一個小型的家庭理財系統(tǒng),所耗費的資源非常的小,現(xiàn)行的電腦無論是硬件還是軟件都能夠滿足條件,因此,本系統(tǒng)在技術上是可行的。2.2.2 經濟可行性 進行軟件開發(fā)項目成本的估算以及了解取得效益的評估,確定要開發(fā)的項目是否值得投資開發(fā),這些即為經濟可行性。如今,隨著計算機的大量普及,各種軟件的開發(fā)成本越來越低,價格也越來越底。本系統(tǒng)也是這樣,開發(fā)成
26、本較低,只是需要一臺配置一般的計算機,該系統(tǒng)運行時占計算機的資源也不多,但并不會因為開發(fā)成本低而造成系統(tǒng)功能性能的下降。相反,隨著計算機技術的發(fā)展,各種實用軟件的性能日漸提高。家庭理財管理系統(tǒng)廉價的開發(fā)成本,卻能夠為居民帶來相當大的實惠和方便。主要表現(xiàn)在:(1)本系統(tǒng)是一個擁有多種實用功能的家庭理財管理信息系統(tǒng),它集成了家庭成員管理、收入管理、支出管理、密碼管理等多種功能,具有較強的實用性和方便性。(2)本系統(tǒng)的運行可以大大提高居民管理財務的效率,減少不必要的人力和物力。(3)本系統(tǒng)還具有查詢和統(tǒng)計功能,能夠查詢到用戶在一段特定時間內收入和支出的情況,特別是支出情況,有時往往會讓用戶在月底嚇一
27、跳,大大超出預算,還弄不清錢都花到哪里了。有了家庭理財系統(tǒng),不僅使用戶對口袋里錢的去向一目了然,而且可以幫助用戶漸漸感悟到一些心得,摸清哪些花費是必要的,哪些“意外開支”是可以避免的,哪筆開支是可繼續(xù)評估其必要性的。(4)本系統(tǒng)的運行可以大大的提高家庭的工作效率,并可以使敏感文檔更加安全。由此可以得出,本系統(tǒng)在經濟上是具有可行性的。2.3系統(tǒng)需求分析方法2.3.1系統(tǒng)需求分析概述在軟件工程中,需求分析指的是在建立一個新的或改變一個現(xiàn)存的電腦系統(tǒng)時,為描寫新系統(tǒng)的目的、范圍和定義所要做的所有的工作。需求分析的任務是通過詳細調查現(xiàn)實世界要處理的對象,充分了解原系統(tǒng)的工作概況,明確用戶的各種需求,然
28、后在此基礎上確定新系統(tǒng)的功能。它是軟件工程中的一個關鍵過程。在這個過程中,系統(tǒng)分析員和軟件工程師必須確定顧客的需要。只有在確定了這些需要后,他們才能夠分析和尋求新系統(tǒng)的解決方法。如果在需求分析時分析者們未能正確地認識到顧客的需要的話,那么最后的軟件實際上不可能達到顧客的需要,或者軟件無法在規(guī)定的時間里完工。2.3.2系統(tǒng)需求分析方法在管理信息系統(tǒng)開發(fā)實踐中,系統(tǒng)分析人員使用了多種系統(tǒng)分析方法,主要有結構化分析方法(structured analysis簡稱sa)、面向數據結構的分析方法以及面向對象的分析方法等。其中,結構化分析方法自從20世紀70年代末提出以后,由于其簡單、清晰、易于學習、掌握
29、和使用的特點,成為長期以來被廣泛使用的分析方法。結構化系統(tǒng)分析是指用一組標準的準則和工具從事分析工作,即有組織、有計劃、有規(guī)律地進行分析。它是一種利用系統(tǒng)工程的思想和有關結構的概念、自頂向下劃分模塊、逐步求精的分析方法。該方法把研究對象看成一個系統(tǒng),用分解和抽象這兩個基本策略來控制系統(tǒng)的復雜性。它有三個要點:(1)分解和抽象;(2)圖表描述;(3)模型轉換。結構化系統(tǒng)分析常用的工具有:數據流程圖(dfd)、數據字典(dd)、數據庫存儲結構規(guī)范化法;數據立即存取圖;處理邏輯的表達方法(決策樹、判定表、結構式語言)2.4系統(tǒng)功能需求分析家庭理財管理系統(tǒng)是典型的信息管理系統(tǒng),其開發(fā)功能主要包括:通過
30、計算機管理個人財務,實現(xiàn)無紙化理財;通過查詢分析,統(tǒng)計出各項數據,分析出生活中的浪費和節(jié)約的地方,通過強大的查詢和索檢高效的索檢出數據,提高辦事效率。本系統(tǒng)主要有以下功能: 對家庭成員資料的管理及對使用權限的管理。相關信息存在“家庭成員信息表”中,普通用戶可以對自己的密碼進行修改,系統(tǒng)管理員在密碼修改功能上的基礎上可以添加或刪除成員; 對理財項目可以進行編輯。理財項目包括日常收入來源和支出類型,相關信息存在“收入來源表”、“支出類型表”、“活期賬戶信息表”均可以實現(xiàn)添加、刪除、修改功能; 日常財務管理,包括日常收入和日常支出,即記下日常的收入和日常的支出。相關信息存入“收入信息表”和“支出信息
31、表”中,均可以實現(xiàn)添加、刪除、修改功能。 理財分析,實現(xiàn)分類查詢,即按類別查詢收支明細,而且可以看到收支的財務分析報告,并可打??; 數據維護:包括數據庫的備份、數據庫的導入/出,方便用戶保存和早期查詢;第 27 頁第3章 系統(tǒng)總體設計3.1 系統(tǒng)設計方法系統(tǒng)設計是對整個管理系統(tǒng)功能進行分析,并劃分和構建系統(tǒng)功能模塊。模塊化程序設計就是把一個大程序按一個人能理解的規(guī)模進行分解的一種方法。模塊化指的是把一個程序按功能分解成若干彼此具有一定獨立性同時也具有一定聯(lián)系的組成部分,這些組成部分稱為模塊。系統(tǒng)設計是本系統(tǒng)開發(fā)的重要階段,它直接影響到目標系統(tǒng)的質量,是整個開發(fā)工作的核心。系統(tǒng)設計階段的主要任務
32、是:在系統(tǒng)分析提出的邏輯模型的基礎上,科學合理地進行物理模型設計。本系統(tǒng)在設計過程中,充分考慮了系統(tǒng)的穩(wěn)健性、適應性和效率性,符合系統(tǒng)設計的原則。3.2 系統(tǒng)架構通過對家庭理財功能的分析,本系統(tǒng)分為系統(tǒng)登錄界面、系統(tǒng)主程序界面、導出數據庫界面、導入數據庫界面、收支項目管理界面、家庭成員管理界面、日常收入管理界面、日常支出管理界面、查詢明細界面。系統(tǒng)結構設計圖如下:圖3.1 系統(tǒng)結構圖數據庫家庭理財管理系統(tǒng)登錄系統(tǒng)主界面家庭成員管理界面收支項目管理界面日常收支管理界面查詢明細界面3.3 系統(tǒng)功能模塊細分根據上述系統(tǒng)總體架構思想的分析,可將系統(tǒng)分為以下六大部分: 登錄管理模塊用戶登錄管理 賬簿管理
33、模塊可以新增、修改、刪除記賬 家庭成員管理可以設置家庭成員、修改、刪除 收支項目管理可以設置收入和支出 報表管理 退出管理最后得到如圖示系統(tǒng)功能模塊圖:家庭理財管理系統(tǒng)賬簿管理查找賬簿信息修改賬簿信息目刪除賬簿信息家庭成員管理收支項目管理增加家庭成員修改成員信息日常收入日常支出添加、刪除、修改日常收入添加、刪除、修改日常支出刪除成員信息退出管理登錄管理圖3.2 系統(tǒng)功能模塊圖3.4 系統(tǒng)數據庫的設計3.4.1 數據庫分析l 成員信息:編號,稱呼,姓名,密碼,權限;l 收入項目信息:編號,收入來源;l 支出項目信息:編號,支出類型;l 日常收入信息:編號,日期,方式,金額,項目,來源,人員,備注
34、;l 日常支出信息:編號,日期,方式,金額,項目,去向,人員,備注;3.4.2 數據庫概念結構設計得到上面的數據項和數據結構后,即可設計滿足用戶需求的各種實體,以及它們之間的關系。根據上述設計規(guī)劃出以下各個實體及其e-r圖:成員信息編號權限姓名密碼稱呼圖3.3 成員信息圖收入項目收入來源編號支出項目支出類型編號圖3.4收入支出項目圖日常收入信息項目備注人員來源編號日期方式金額圖3.5 日常收入信息圖綜合以上e-r模型,得到整個系統(tǒng)的e-r關系圖,如下示:支出類型收入項目查詢查詢日常支出日常收入管理管理用戶圖3.6 e-r關系圖3.4.3 數據庫邏輯結構設計系統(tǒng)模型的邏輯結構設計的任務是把概念結
35、構設計好的基本的e-r圖轉換為支持關系模型的dbms相符合的邏輯結構。家庭理財管理系統(tǒng)數據庫各表具體定義如下:表3.1 家庭成員信息表序號列名類型備注1idnumber(7)主鍵,自增長2namevarchar2(50)真實姓名3loginnamevarchar2(50)登錄名4passwordvarchar2(50)口令表3.2 收入項目信息表序號列名類型備注序號1idnumber(7)主鍵,自增長12namevarchar2(50)項目名稱2表3.3收入信息表序號列名類型備注序號1idnumber(7)主鍵,自增長12useridnumber(7)家庭成員id23itemidnumber(
36、7)項目id34amountnumber(10,2)收支金額45accountdatedate收支日期,缺省值當前系統(tǒng)日期56remarksvarchar2(256)說明,可以空6第4章 系統(tǒng)特性4.1 框架文件配置spring+hibernate的配置 comambowffmsentityentity.hbm.xml org.hibernate.dialect.oracledialect false true sprint+struts的配置(在web.xml中添加如下配置) contextconfiglocation/web-inf/applicationcontext*.xml,clas
37、spath*:applicationcontext*.xml org.springframework.web.context.contextloaderlistener struts2 org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter struts2 /* 4.2 系統(tǒng)主界面用戶進入系統(tǒng)時要輸入正確的用戶名和密碼,系統(tǒng)從數據庫用戶表中檢索是否有相對應的數據信息,若輸入正確則進入主界面,否則提示錯誤,需重新輸入。選擇取消退出登陸系統(tǒng)。若連續(xù)三次輸入的用戶名和密碼都無法與數據庫中的數據匹配,則強制推出系統(tǒng)。模
38、塊流程圖如圖4.1所示:退出失敗3次進入系統(tǒng)用戶登錄開始圖4.1 登錄模塊流程圖登陸窗體如圖4.2所示:圖4.2 登錄窗體輸入正確的用戶名和密碼登錄,進入系統(tǒng)主界面,如下圖示:圖4.3 系統(tǒng)主界面4.3家庭成員管理收支項目4.3.1 查看收支項目使用者:用戶目的:查看收支具體信息基本事件流:1、進入收支項目管理界面,點擊查看,本用例開始。2、查看具體項目收支情況。3、點擊確定,用例結束。4.3.2編輯收支項目使用者:用戶目的:編輯收支條目基本事件流:1、進入收支項目管理界面,點擊編輯,用例開始。2、對當前選中的收支條目進行修改編輯。3、編輯完后點確定,用例結束。4.3.3 刪除收支項目使用者:
39、用戶目的:刪除條目基本事件流:1、進入收支項目管理界面,點擊刪除,本用例開始。2、對當前選中的收支條目進行刪除操作。3、點擊確定刪除,用例結束。4.3.4 技術package com.ambow.ffms.service;import java.util.arraylist;import java.util.collections;import java.util.list;import java.util.set;import org.springframework.context.applicationcontext;import org.springframework.context.s
40、upport.classpathxmlapplicationcontext;import com.ambow.ffms.dao.itemdao;import com.ambow.ffms.entity.account;import com.ambow.ffms.entity.item;public class itemservice / 約定類型父id為0private final static long type_pid = 0;/ 收入類型,項目id,即收入項目的父idprivate final static long income_id = 1;/ 支出類型,項目id,即支出項目的父id
41、private final static long payment_id = 2; private itemdao itemdao;public itemservice() public itemdao getitemdao() return itemdao;public void setitemdao(itemdao itemdao) this.itemdao = itemdao;public item getitembypk(long id)return itemdao.getitembypk(id);/ 保存item對象public void save(item item) itemda
42、o.save(item);/ 修改item對象public void update(item item) itemdao.update(item);/ 刪除一個項目public void delete(long id) itemdao.delete(id);/ 批量刪除public void delete(string ids) itemdao.delete(ids);/ 首先判斷這些項目中是否有子項目,或是否已有帳目,如有則不可以刪除public boolean candelete(string ids) for(string s : ids)/long id = new long(s);l
43、ong id = long.parselong(s);list sitems = itemdao.getsubitems(id);set accounts = itemdao.getitembypk(id).getaccounts();if(sitems.size()!=0|accounts.size()!=0)return false;return true;/ 根據父項目id獲得其子項目集合public list getallitems() return itemdao.getallitems();/ 根據父項目id獲得其子項目集合public list getsubitems(long pid) return itemdao.getsubitems(pid);/通過 id 得到所有的pidpublic item getpitem(long id) return itemdao.getitembypk(itemdao.getitembypk(id).getpitem().getid();/*判斷id是否是pid的后代,一個簡單的遞歸public boolean isdescendant(long pid,long id)return item
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《單簧管波爾卡》探究
- 餐廳店長培訓課程
- CFA金融分析師模擬試題及答案
- 預防接種守護生命
- 高校師生假期培訓
- 八年級上冊《積的乘方》課件與練習
- 預防留置尿管感染
- 云南省昭通一中教研聯(lián)盟2024-2025學年高一上學期期中質量檢測地理 (B卷)試題
- 靜脈輸液治療標準
- 卷3-2025年中考地理高頻考題(廣東專用)(解析版)
- 《人工智能技術基礎》課件 第9章 生成式人工智能模型
- 2024年認證行業(yè)法律法規(guī)及認證基礎知識
- 保險經紀人考試題庫含答案
- 第10講平面直角坐標系中圖形面積的求解思路(原卷版+解析)-2021-2022學年七年級數學下冊??键c(數學思想+解題技巧+專項突破+精準提升)
- 《烴的衍生物》復習課件
- 2024小學語文教學及說課課件:六年級上冊語文《丁香結》
- 2024至2030年中國礦產勘探行業(yè)深度調查及投融資戰(zhàn)略研究報告
- 醫(yī)院培訓課件:《輸血相關法規(guī)及輸血知識培訓》
- 中國普通食物營養(yǎng)成分表(修正版)
- (新版)高級考評員職業(yè)技能鑒定考試題庫(含答案)
- 《交流與傳承-東西文化碰撞中的藝術嬗變》參考課件4
評論
0/150
提交評論