軟件工程綜合實習家庭理財管理系統(tǒng)_第1頁
軟件工程綜合實習家庭理財管理系統(tǒng)_第2頁
軟件工程綜合實習家庭理財管理系統(tǒng)_第3頁
軟件工程綜合實習家庭理財管理系統(tǒng)_第4頁
軟件工程綜合實習家庭理財管理系統(tǒng)_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、軟件工程綜合實習任務(wù)書 系 專業(yè) 班級課程設(shè)計名稱: 設(shè)計題目: 家庭理財管理系統(tǒng) 完成期限:自 年 月 日至 年 月 日共 周設(shè)計依據(jù)、要求及主要內(nèi)容(可另加附頁):一、設(shè)計依據(jù)1軟件工程綜合實習任務(wù)書2軟件工程綜合實習大綱二、設(shè)計要求程序設(shè)計綜合實習內(nèi)容主要運用面向?qū)ο蟪绦蛟O(shè)計和數(shù)據(jù)庫技術(shù)等,完成一個實踐性較強、綜合性的程序設(shè)計課題。1、 根據(jù)題目要求,劃分不同的模塊來完成相應(yīng)的功能。2、 用戶界面要友好。3、 功能模塊的設(shè)計要合理。4、 程序測試要求使用:全部合法數(shù)據(jù);整體非法數(shù)據(jù);局部非法數(shù)據(jù)。進行程序測試,以保證程序的穩(wěn)定。5、 綜合實習結(jié)束交程序設(shè)計綜合實習報告。三、主要內(nèi)容 (替

2、換此段內(nèi)容:用一段話,寫出你要完成的系統(tǒng)名稱、主要功能等)四、參考資料1database system concepts(fourth edition) abraham silberschatz henry f.korth s.sudarshan higher education press2王珊.數(shù)據(jù)庫系統(tǒng)概論(第四版). 高等教育出版社,2007.3羅運模.完全掌握sql server 2000.人民郵電出版社,2001.4白尚旺等.powerdesigner軟件工程技術(shù).電子工業(yè)出版社,2004.5張海藩.軟件工程概論(第五版).清華大學出版社,2007. 指導(dǎo)教師(簽字):_ 教研室主

3、任(簽字):_ 批準日期: 2011年 12月 19 日目 錄一、需求分析1.1項目背景隨著社會主義的不斷發(fā)展與進步,人們的生活部斷完善,家庭的收入也越來越多,人們的收入再不是用來解決生計問題了,當今社會是一個講求效率的社會,時間就是金錢。開發(fā)簡單,易于操作的,管理軟件不僅可以節(jié)省時間,還可以避免浪費人力,物力,提高效率。待開發(fā)系統(tǒng)是一個對家庭理財管理系統(tǒng),簡單,易學,將成為家庭理財?shù)牡暮脦褪?。本系統(tǒng)為家庭理財管理系統(tǒng),通過建立家庭理財系統(tǒng),使家庭財產(chǎn)管理工作規(guī)范化、制度化和程序化,減少此方面的不必要的浪費的時間與精力,避免管理的隨意性,提高財產(chǎn)信息處理的速度和準確性,提高決策的水平。將常規(guī)的

4、工作交由計算機完成,提高管理家庭財產(chǎn)管理的效率。1.2功能本系統(tǒng)家庭成員共同使用,故在本系統(tǒng)中將設(shè)定兩種用戶身份,并對本系統(tǒng)提出以下需家庭成員功能:a. 基本信息設(shè)置² 銀行信息瀏覽。² 銀行信息錄入² 家庭成員錄入。² 家庭成員瀏覽。² 收支分類信息管理。系統(tǒng)管理員功能:a.日常收支管理² 添加日常收支信息,包括日期、收支分類、名稱、收支金額等信息。² 修改日常收支信息。² 刪除日常收支信息。² 查看日常收支信息。b.資產(chǎn)賬戶信息管理² 添加資產(chǎn)賬戶信息,包括資金類型、銀行名稱、存款類型、銀行

5、賬號開戶人、賬戶金額等信息。² 修改資產(chǎn)賬戶信息。² 查看資產(chǎn)賬戶信息。c.銀行往來管理² 添加銀行往來信息,包括銀行名稱、交易日期、交易類型、銀行賬號、賬戶金額、儲蓄類型等信息。² 修改銀行往來信息。² 查看銀行往來信息。d. 數(shù)據(jù)統(tǒng)計管理² 日常收支統(tǒng)計,按月份查詢?nèi)粘J罩У牧魉畮ぁ?#178; 銀行交易統(tǒng)計,按月份查詢銀行交易信息。² 家庭資產(chǎn)統(tǒng)計,統(tǒng)計家庭的存款總數(shù)、現(xiàn)金總數(shù)、總收入和總支出數(shù)據(jù)。b.日常收支管理1.3用例模型系統(tǒng)管理員用例圖家庭成員用例圖 1.4 數(shù)據(jù)流圖1.4.1 頂層數(shù)據(jù)流圖d1 財產(chǎn)信息d2

6、財產(chǎn)去向信息家庭賬務(wù)管理員家庭各個成員 1財產(chǎn)信息事務(wù)處理事務(wù) 2信息存入系統(tǒng)以前財產(chǎn)信息財產(chǎn)信息新財產(chǎn)信息財產(chǎn)信息1.4.2家庭理財系統(tǒng)功能及數(shù)據(jù)流圖d1 存儲財產(chǎn)信息家庭賬務(wù)管理員 1.1接受新財產(chǎn)信息新財產(chǎn)信息事務(wù) 1.2更新財產(chǎn)信 息財產(chǎn)信息 1.3信息存入系統(tǒng)財產(chǎn)信息 2新信息存入系統(tǒng)d2 財產(chǎn)去向信息新財產(chǎn)信息財產(chǎn)信息家庭各個成員財產(chǎn)信息1.4.3詳細數(shù)據(jù)流圖二、總體設(shè)計2.1 模塊劃分家庭理財管理系統(tǒng) 2.1家庭成員管理模塊 2.1.1. 系統(tǒng)管理員登錄 2.1.2. 家庭成員信息查詢 2.2日常收支信息管理模塊 2.2.1. 日常收支信息添加 2.2.2. 日常收支信息刪除 2

7、.2.3. 日常收支信息修改 2.2.4. 日常收支信息瀏覽 2.3資產(chǎn)賬戶信息管理模塊 2.3.1. 賬戶信息添加 2.3.2賬戶信息修改 2.3.3. 賬戶信息查詢 2.3.4. 賬戶信息刪除2.2 系統(tǒng)結(jié)構(gòu)圖三、數(shù)據(jù)庫設(shè)計3.1 實體關(guān)系圖手機家庭賬務(wù)管理員admin管理、查看家庭各成員賬務(wù)信息登陸姓名收支存取時間金額使用者1n1nn性別出生日期工作單位3.2 數(shù)據(jù)表結(jié)構(gòu)accountinfo(收支表)字段名稱數(shù)據(jù)類型字段含義默認值是否外鍵account_idint財務(wù)收支表主鍵自增否account_datedatetime(8)日期null否account_typevarchar(20

8、)收支類型null否account_namevarchar(50)收支名稱null否account_numberint金額null否finainfo(資產(chǎn)信息表)字段名稱數(shù)據(jù)類型字段含義默認值是否外鍵idint資產(chǎn)信息表主鍵自增否finatypevarchar(80)資金類型null否bankenamevarchar(80)銀行名稱null否finauservarchar(20)銀行開戶人null否finanumberint金額null否user(用戶信息表)字段名稱數(shù)據(jù)類型字段含義默認值是否外鍵idint用戶信息表主鍵自增否usernamevarchar(80)用戶名稱null否passwo

9、rdvarchar(80)用戶密碼null否useridvarchar(20)用戶idnull否四、詳細設(shè)計4.1 模塊設(shè)計說明4.1.1 家庭成員管理模塊模塊名稱功能編號功能名稱描述家庭成員管理模塊(m01)m011家庭成員注冊新加入家庭成員注冊m012家庭成員刪除刪除不合法用戶m013系統(tǒng)管理員登錄登錄系統(tǒng)m014家庭成員信息查詢查詢家庭成員信息4.1.2 日常收支信息管理模塊模塊名稱功能編號功能名稱描述日常收支信息管理模塊(m02)m021日常收支信息增加日常收支信息增加m022日常收支信息查詢查詢?nèi)粘J罩畔023日常收支信息修改日常收支信息信息修改m024日常收支信息刪除刪除日常收

10、支信息4.1.3 資產(chǎn)賬戶信息管理模塊模塊名稱功能編號功能名稱描述資產(chǎn)信息管理模塊(m03)m031資產(chǎn)賬戶信息增加資產(chǎn)賬戶信息增加m032資產(chǎn)賬戶信息查詢查詢資產(chǎn)賬戶信息m033資產(chǎn)賬戶信息修改資產(chǎn)賬戶信息修改m034資產(chǎn)賬戶信息刪除刪除資產(chǎn)賬戶信息五、系統(tǒng)實現(xiàn) 5.1 運行環(huán)境硬件環(huán)境:處理器:intel peteum 4 core 1.86ghz內(nèi)存:2g操作系統(tǒng):windows7 ultimate運行環(huán)境:數(shù)據(jù)庫:mysql、jdk版本:1.6、服務(wù)器:tomcat6.0瀏覽器要求:ie6.0以上或其他非ie內(nèi)核瀏覽器5.2 部分代碼代碼功能實現(xiàn)對數(shù)據(jù)庫中增刪改查的操作代碼編號p1m0

11、f0r00001 程序源碼package com.bank.dao.impl;import java.io.serializable;import java.lang.reflect.parameterizedtype;import java.sql.sqlexception;import java.util.list;import org.hibernate.hibernateexception;import org.hibernate.query;import org.hibernate.session;import org.springframework.orm.hibernate3.h

12、ibernatecallback;import org.springframework.orm.hibernate3.support.hibernatedaosupport;import com.bank.dao.igenericdao;import com.bank.vo.pagebean;public abstract class agenerichibernatedao<t extends serializable,id extends serializable> extends hibernatedaosupport implements igenericdao<t,

13、 id> class<t> persistentclass;public class<t> getpersistentclass() return persistentclass;public void setpersistentclass(class<t> persistentclass) this.persistentclass = persistentclass;suppresswarnings("unchecked")public agenerichibernatedao()/動態(tài)代理獲得相應(yīng)的實體對象 this.persi

14、stentclass=(class<t>)(parameterizedtype) getclass().getgenericsuperclass().getactualtypearguments()0; system.out.println("ageneric:"+this.getpersistentclass(); /* * 保存對象到數(shù)據(jù)庫 */public void create(t entity) / todo auto-generated method stubthis.gethibernatetemplate().save(entity);/* *

15、通過id查詢 */ public t findbyid(id id) / todo auto-generated method stubreturn this.gethibernatetemplate().get(persistentclass, id); /* * 通過id刪除對象 */public void delete(t entity) / todo auto-generated method stubthis.gethibernatetemplate().delete(entity); /* * 更新操作 */public void update(t entity) / todo a

16、uto-generated method stubthis.gethibernatetemplate().update(entity); /* * return list * 獲得全部數(shù)據(jù),并存到list中 */public list<t> findall() / todo auto-generated method stubreturn this.gethibernatetemplate().loadall(persistentclass); /* * return list * 按條件查詢,并存到list中 */suppresswarnings("unchecked&

17、quot;)public list<t> findbyobject(string hql, object params) / todo auto-generated method stubreturn this.gethibernatetemplate().find(hql, params); /* * return pagebean * 按條件查詢帶分頁信息的數(shù)據(jù) */public pagebean findbypagebean(final string hql, final object params,final int currentpage, final int pages

18、ize) / todo auto-generated method stubreturn this.gethibernatetemplate().execute(new hibernatecallback<pagebean>() public pagebean doinhibernate(session arg0)throws hibernateexception, sqlexception / todo auto-generated method stubpagebean bean=new pagebean();query qu=arg0.createquery(hql);for

19、(int i=0;i<params.length;i+)qu.setparameter(i, paramsi);qu.setfirstresult(currentpage-1)*pagesize);qu.setmaxresults(pagesize);bean.setdata(qu.list();qu=arg0.createquery("select count(*) "+hql.substring(hql.tolowercase().indexof("from");for(int j=0;j<params.length;j+)qu.setp

20、arameter(j, paramsj);bean.settotalrows(integer.parseint(qu.uniqueresult().tostring();bean.setcurrentpage(currentpage);bean.setpagesize(pagesize);return bean;);/* * return pagebean * 查詢?nèi)啃畔?,帶分頁信?*/public pagebean findbypagebean(final string hql, final int currentpage, final int pagesize) / todo auto

21、-generated method stubreturn this.gethibernatetemplate().execute(new hibernatecallback<pagebean>() public pagebean doinhibernate(session arg0)throws hibernateexception, sqlexception / todo auto-generated method stubpagebean bean=new pagebean();query qu=arg0.createquery(hql);qu.setfirstresult(c

22、urrentpage-1)*pagesize);qu.setmaxresults(pagesize);bean.setdata(qu.list();qu=arg0.createquery("select count(*) "+hql.substring(hql.tolowercase().indexof("from");bean.settotalrows(integer.parseint(qu.uniqueresult().tostring();bean.setcurrentpage(currentpage);bean.setpagesize(pages

23、ize);return bean;);public void bulkupdate(string bulk, object params) / todo auto-generated method stubpublic integer countbyobject(string hql, object param) / todo auto-generated method stubreturn null;suppresswarnings("unchecked")public list<t> find(string hql) / todo auto-generate

24、d method stubreturn this.gethibernatetemplate().find(hql);return true;return false;代碼功能對常用的方法進行抽取封裝代碼編號p1m0f0r00002 程序源碼package com.bank.dao;import java.io.serializable;import java.util.list;import com.bank.vo.pagebean;public interface igenericdao <t extends serializable,id extends serializable&g

25、t; public void create(t entity);/實體存入數(shù)據(jù)庫 public t findbyid(id id);/通過id查找 public void delete(final t entity); public void update(t entity); public list<t> findall(); public list<t> findbyobject(string hql,object params); public pagebean findbypagebean(final string hql,final object params

26、,final int currentpage,final int pagesize); public pagebean findbypagebean(final string hql, final int currentpage, final int pagesize); public void bulkupdate(final string bulk, object params); public integer countbyobject(final string hql,final object param); public list<t> find(string hql);5.3系統(tǒng)截圖5.3.1用戶登錄界面5.3.2日常收支管理模塊5.3.3資產(chǎn)賬戶信息管理模塊六、系統(tǒng)測試6.1 測試方法本相同采用手動測試方法,主要目的為驗證系統(tǒng)中的權(quán)限控制、程序的容錯性及對非法數(shù)據(jù)的檢驗?zāi)芰Α?.2 測試環(huán)境硬件環(huán)境:處理器:intel peteum 4 core 1.86ghz內(nèi)存:2g操作系統(tǒng):windows7 ultimate運行環(huán)境:數(shù)據(jù)庫:mysql、jdk版本:1.6、服務(wù)器:tomcat6.0瀏覽器要求:ie8 谷歌瀏覽器6.3 測試用例測試功能用戶登錄測試編號m01t001 用例設(shè)計用例編號預(yù)期輸入預(yù)期輸出實際輸出case_0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論