家庭理财系统的设计与实现毕业论文.docx
《家庭理财系统的设计与实现毕业论文.docx》由会员分享,可在线阅读,更多相关《家庭理财系统的设计与实现毕业论文.docx(18页珍藏版)》请在冰豆网上搜索。
家庭理财系统的设计与实现毕业论文
忻州师学院
计算机系本科毕业(设计)论文
课题名称
家庭理财系统的设计与实现
专业
计算机科学与技术
姓名
学号
指导教师
二零一零年六月
家庭理财系统的设计与实现
摘要:
家庭理财系统是根据对居民收支情况的调查,通过对居民家庭理财方式的分析,利用现代软件工程的思想和方法以与数据库技术开发的一款针对于普通家庭用户的软件。
可以帮助用户快速有效的查看和管理收支类目,为用户提供合理的投资建议,最终能使用户从中获取有益信息并做出正确的理财方案。
该系统是以Delphi7.0为前台开发环境,以SQLServer2000作为后台数据库,结合Windows平台建立起来的数据库管理系统,满足了家庭用户对理财的需求。
关键词:
家庭理财Delphi7.0SQLServer2000
Abstract:
Thefamilyfinancingsystemisanormalfamilysoftwaredevelopedbythesurveyofresidentspaymentscase,theanalysisoffamilyfinancingway,usingtheideaofmodernsoftwareengineeringanddatabasetechnology.Itcanhelpuserscheckandmanagepaymentsquicklyandeffectly,makereasonableinvestmentadviceforusers,makeusersgetusefulinformationandcorrectproject.ThedatabasemanagementsystemisbasedonDelphi7.0developmentenvironmentforthefuture,makingSQLServer2000forbackstagedatabase,andusingWindowsforitsplatform,satisfythefamilymembersneedofthefinancing.
Keywords:
FamilyFinancingDelphi7.0SQLServer2000
1引言
1.1开发背景与研究意义
近年来,人民生活水平不断提高,家庭收入不断增加,收入增加的同时,投资也相应的增加,如果细分如今的收入和支出种类,可谓五花八门,数不胜数,在这种情况下,家庭对于财物的管理,就出现了许许多多的问题,有的家庭仍采用传统的手记方式记账,对于今天的多样的财物流动来说,这样显得既累又繁琐,而有的家庭根本没有去在理财上下功夫,这样不免造成财物的浪费[1]。
所以,一款合适的家庭理财软件的诞生迫在眉睫。
本文介绍的家庭理财系统,就是针对上述的种种问题而开发的软件,它可以很好的对家庭的收入和支出项目进行记录,查询和分析,提供快捷简便的方式给用户的投资做出判断,而且,众多实用的功能可以给用户提供贴心的服务。
1.2本人主要工作
学习Delphi7.0和SQLServer2000软件的应用,为系统的开发打好基础。
通过对任务书的分析,以与实际考察,对系统进行进一步的需求分析,设计系统的主要功能,分为四大模块:
资产明细模块、支出管理模块、财政统计模块、收支预算模块。
资产明细模块包括对资产数据的录入、查看以与删除;支出管理模块完成对支出项目的录入、查看和删除;财政统计模块包括三种查询收支类目的方法;收支预算可以对未来的收入和开销进行统计并计算。
在以上工作基础上,对系统进行详细设计并完成系统所有的功能,最后进入论文的撰写阶段,完成设计的全部任务。
1.3论文组织结构
论文的结构如下:
第一章:
引言。
介绍系统的开发背景与研究意义,以与本人主要工作。
第二章:
需求分析。
对需求和可行性进行了分析。
第三章:
系统设计。
从模块设计和数据库设计两方面来设计系统。
第四章:
系统实现。
介绍系统所使用的界面与代码。
第五章:
系统测试和优化。
进行系统的测试和优化。
第六章:
总结语。
对论文进行总结。
2需求分析
开发系统首先要进行需求分析。
需求分析是介于系统分析和设计阶段的桥梁。
需求分析的好坏直接决定着系统能否满足工作的需要,指导系统的进一步开发。
2.1用户需求描述
根据很多家庭用户的反映,如今的收入和消费渠道越来越多,如果要进行统计的话,将会是一项复杂繁琐的工作,容易出错,而且每天的花费各式各样,到底该如何做出正确的消费,如何才能给自己免去不必要的花销,如何才能做出正确的决定,已经是很多家庭面对的共同难题[2]。
因此本系统的制作,就要使家庭用户能够快捷,简便的记录自己的日常收支,能提供给用户判断自己消费行为的方法,而且在界面制作上追求美观大方,给用户舒适的感觉。
2.2经济可行性
计算机的价格已经十分低廉,性能却有了长足的进步。
而本系统的开发,为家庭的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面:
第一,本系统的运行可以代替人工进行许多繁杂的劳动;
第二,本系统的运行可以节省许多资源;
第三,本系统的运行可以大大的提高家庭的工作效率;
所以,本系统在经济上是可行的。
2.3技术可行性
本系统运行在WindowsXP操作系统上,该操作系统在我国已十分普与,在稳定性,安全性,实用性等方面都可以满足用户需求。
系统使用Delphi7.0为系统开发工具,使用该软件开发的系统,从各方面来说都比较成熟稳定。
2.4系统功能分析
系统功能分析是在系统开发总体任务的基础上完成的,通过需求分析阶段对家庭用户的需求情况做出的调查以与各方面的数据,确定了本系统的设计和实现的目的,明确设计此系统的目标。
系统要完成的功能如下:
1、资产明细:
分类记录家庭的所有资产情况;
2、支出管理:
分类记录家庭的所有支出情况;
3、财政统计:
按不同的要求检索并查看你需要的收支类目;
4、收支预算:
可以完成收入与支出的预算,提前观察,并做出决定。
除上述功能外,还应添加一些辅助型的功能,如:
支出规划、储蓄计算、理财助手等。
它们可以方便的使用户判断自己的储蓄手段和消费途径,还可以给用户一个理财方式的参照,让用户取长补短。
2.5数据流图
数据流图显示了系统开始的构想,提供了最初的系统数据流示意图。
本系统的顶级DFD如图2.1所示,一级DFD如图2.2所示:
图2.2系统一级数据流图
3概要设计
3.1系统功能设计
根据用户的需求,结合家庭的实际情况,经过模块分析,本系统应具有如下功能模块:
1、资产明细:
此模块列出了用户所拥有的所有资产数据,可以达到录入,删除,查看的功能,通过此模块,可以细致地将每日的详细资产获得情况记录进系统。
2、支出管理:
此模块列出了用户所拥有的所有支出项目,可以实现录入,查看,删除等功能,用户可以分类别将自己的日常开销录入到系统中,直观简便。
3、财政统计:
此模块分为收入统计和支出统计,可以按照自己喜欢的方式查询自己的收入或支出项目,一目了然,快捷方便。
4、收支预算:
分为收入预算和支出预算,可以预先算出用户的收入和开销的费用,提前决定以后的理财打算。
5、储蓄计算:
可以根据不同的银行不同的储蓄方式,计算出规定时间的本息,让用户面对不同的储蓄,做出正确的判断。
6、支出规划:
多样化的选择方式,判定出用户的支出,再根据用户的投入,判断支出是否符合现状,是否超标,以便用户选取投资方式。
图3.1系统功能模块图
3.2系统工作流程图
主界面
图3.2系统工作流程图
3.3数据库设计
在系统设计过程中,数据库设计是尤为重要的一环。
当用户完成对收支的录入与管理时,无时不刻存在着对表的使用,因此,表的设计可以对系统的稳定运行起到有效的帮助。
表1资产明细表
字段名
数据类型
大小
是否为空
默认值
编号
char
10
是
no
日期
datetime
8
是
no
来源
char
10
是
no
金额
money
8
是
no
表2支出管理表
字段名
数据类型
大小
是否为空
默认值
编号
char
10
是
no
日期
datetime
8
是
no
阶段
char
10
是
no
分类
char
10
是
no
金额
money
8
是
no
表3收入预算表
字段名
数据类型
大小
是否为空
默认值
编号
char
10
是
no
日期
datetime
8
是
no
种类
char
10
是
no
金额
money
8
是
no
表4支出预算表
字段名
数据类型
大小
是否为空
默认值
编号
char
10
是
no
日期
datetime
8
是
no
种类
char
10
是
no
金额
money
8
是
no
表5银行表
字段名
数据类型
大小
是否为空
默认值
方式
char
10
是
no
时间
char
10
是
no
利率
char
10
是
no
3.4系统开发环境
硬件环境:
处理器IntelCoreDuoT5800,主频2.0G;存1G;显存64M;硬盘160G;网卡10M/100M自适应以太网卡。
软件环境:
WindowsXP操作系统;SQLServer2000数据库软件;Delphi7.0应用软件。
4详细设计
4.1财政统计模块设计
由图4.1可以看出,本模块主要完成对收支的查询。
1、计算总收支:
可以对收支金额进行统计。
2、时间检索:
可以查看固定时间围的收支情况。
3、来源检索:
用于查看具体来源下的收支情况。
图4.1财政统计模块图
4.2储蓄计算模块设计
本模块实现对储蓄方式的选择和计算,令用户自行判断自己的储蓄手段,选择具体的银行,储蓄方式和时间,可以知道相应的利率,输入存款金额后,可以计算出最后的本息。
图4.2储蓄计算模块图
4.3支出规划模块的实现
支出规划模块供用户选择具体的支出项目,然后给出提醒,使用户判断出自己的规划是否合适。
4.4收支预算模块的实现
收支预算模块分为收入预算模块和支出预算模块,可以对预算收支进行记录,删除,统计等功能。
图4.4收支预算模块图
5系统实现
5.1资产明细模块的实现
此模块要实现添加记录,删除记录的功能,编号,日期,来源,金额由用户自己输入或选择,窗口如图5.1所示:
图5.1资产明细模块
在编号、来源、日期、金额四个框中填入实际的值后,单击“保存”按钮,便可将信息保存,保存的代码如下:
Try
withADOQuery2do
begin
Close;
SQL.Clear;
SQL.Add('insert资产明细表values(:
a,:
b,:
c,:
d)');
Parameters.ParamByName('a').Value:
=Trim(Edit1.Text);
Parameters.ParamByName('b').Value:
=datetimepicker1.date;
Parameters.ParamByName('c').Value:
=Trim(ComboBox1.Text);
Parameters.ParamByName('d').Value:
=Trim(edit2.Text);
ExecSQL;
end;
Application.MessageBox('添加成功。
','提示',64);
5.2收入统计模块的实现
有三项可以选择,选择某一项后,输入或选择相应的数据,单击按钮即可查询,窗口如图5.2所示:
其主要实现代码如下:
ifradiobutton1.Checked=truethen
begin
adoquery3.close;
adoquery3.sql.clear;
adoquery3.SQL.Add('selectSum(金额)金额和from资产明细表');
adoquery3.Open;
edit1.text:
=adoquery3.fieldbyname('金额和').asstring;
end;
ifradiobutton2.Checked=truethen
begin
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('select*from资产明细表where日期>='''+datetostr(datetimepicker1.date)+'''and日期<='''+datetostr(datetimepicker2.date)+'''');
adoquery1.open;
end;
ifradiobutton3.Checked=truethen
begin
AdoqUERY1.Close;
AdoqUERY1.SQL.Clear;
AdoqUERY1.SQL.Text:
=Format('Select*From资产明细表Where来源=%s',[QuotedStr(Combobox1.text)]);
AdoqUERY1.Open;
5.3支出规划模块的实现
此模块可以令用户判断自己的支出是否合理,根据用户的选择,判断支出是否超标,根据实际情况会显示不同的容,计算可以累加计算,如图5.3所示。
combobox中的三项可以令用户选择出自己想要的支出,花费输入RMB,完成次数输入你想要完成的次数,默认为一次,然后单击“确定支出”就可以判断出支出是否合适。
单击“重新开始”可以将输入框清空,窗口如图5.3所示:
图5.3支出规划模块
其主要实现代码如下:
a:
=strtofloat(label2.Caption);
label9.Caption:
=combobox1.Text+'-'+combobox2.Text+'-'+combobox3.text;
b:
=strtofloat(edit2.text)*strtofloat(edit1.text);
label11.Caption:
=floattostr(b);
a:
=a-b;
ifa-b<=0then
begin
label12.Caption:
='对不起,您花费太多,收入不够';
label2.Caption:
='无';
end
else
begin
label12.Caption:
='方案没问题,足够支付';
label2.Caption:
=floattostr(a);
5.4储蓄计算模块的实现
储蓄计算可以算出在用户指定时间下的本息情况,可以使用户预先判断选择的储蓄方式是否合理。
窗口如图5.4所示:
图5.4储蓄计算模块
其主要实现代码如下:
a:
=strtofloat(edit1.text)*strtofloat(edit5.text)*(0.0036/12);
b:
=strtofloat(edit1.text)+a;
edit3.Text:
=floattostr(b);
edit2.text:
=floattostr(a);
label3.Caption:
='您可获得本息共'+floattostr(b)+'元,增值利息'+floattostr(a)+'元;
a:
=((strtofloat(edit1.text)+(strtofloat(edit1.text)/12))/2)*12*1*0.0171/12;
b:
=strtofloat(edit1.text)+a;
edit3.Text:
=floattostr(b);
edit2.text:
=floattostr(a);
label3.Caption:
='您每月取本'+floattostr((b-a)/12)+'元,最后获得利息'+floattostr(a)+'元';
6系统测试
为了保证系统运行的稳定性和无误性,需要对系统进行测试。
6.1测试方法
进入系统的各个模块,测试系统的查询,输入,统计功能是否能够正常运行,根据具体的情况和代码,得知系统以与数据库的问题。
6.2测试容
1、是否可以正常进入主界面。
2、能否正常地完成对数据的录入。
3、是否能够正常的完成数据的查询和统计。
4、数据的统计和查询能否可以返回正确的容。
6.3测试结果
测试过程中,基本功能都已实现,但是还有个别地方存在问题。
1、在数据录入过程中,有的信息里时间有时分秒显示,而有的没有。
修改时间组件属性后,显示正常。
2、在数据查询过程中,有时出现无法查找到正确信息的情况,修改代码后,查找正常。
7结束语
本系统是基于对普遍家庭理财方面的需求,Delphi7.0+SQLServer2000相结合而设计出的一套可以满足绝大多数普通家庭用户理财需要的系统,该系统典型、操作上手、界面美观、具有通用的价值。
经过几个月的设计和开发,本系统已经实现当初所要预想的功能,已经满足了基本要求,但由于本人水平的不足,许多更加有趣并实用的功能并没有加以实现,例如债务、房地产、保险这些投资的详细设计,还有财政统计情况的图形实现,这些由于本人能力和知识的有限,并没有在系统中做出来,但随着水平的提高和知识的不断获取,相信在日后会将这些不足加以完善。
致
在毕业设计过程中,我从我的指导老师朝霞老师身上学到很多东西,她严谨的治学精神、认真负责的工作态度、良好的工作习惯、超乎寻常的毅力和耐心给我留下了深刻的印象,使我受益匪浅。
正是在老师的悉心指导和帮助下,我的毕业设计才能顺利完成,在此感她的耐心辅导,。
此外,在本次的设计中,还要感我的同学,正是大家在一起互相交流和探讨,才会与时的发现问题,才会获得自己不懂的知识,才会有最终设计的完成,因此,本次的设计,和同学们的帮助是分不开的,这让我体会并学习到了团队合作的精神,在此感大家。
最后,向所有支持和帮助过我的老师和同学表示衷心的感!
年月日
参考文献
[1]华金秋.中国居民理财研究[D].:
西南财经大学,2002,(02).
[2]吴明星.中国富民思想理论与实践的发展[D].:
西南财经大学,2000.
[3]罗英均,徐兵,冉戎.浅谈Access数据库安全策略[J].电脑知识与技术,2005:
25-27.
[4]周斌仲.软件图形用户界面设计[D].:
理工大学,2005.
[5]乾.基于BorlandDelphi开发平台的数据库应用系统开发的原理与应用研究[D].:
大学,2009.
[6]宏.Delphi开发实用技巧[J].电子与电脑,1998:
100-101.
[7]剑.家庭理财如何进行风险防[J].商业研究,1999,(03):
40-41.
[8]王啸飞.图形传达效果[D].:
工业大学,2007,(02).
[9]梅常青.PHOTOSHOP与画面色彩表现[J].中国摄影家,2008,(02):
127.
[10]阳富.Delphi数据库应用技术[J].电脑编程技巧与维护,2009,(08):
47-48.
[11]颢.DELPHI编程的实用技巧[J].电脑编程技巧与维护,1997,(11):
9-14.
[12]封莉.软件开发的质量与其经济性研究[D].:
航空航天大学,2007,(01).
[13]晓华.深入Delphi编程技术讲座之Delphi与数据库[J].微电脑世界,1997,(10):
154-157.
[14]JointCommitteeonInfantHearing.Year2000positionstatement:
principlesandguidelinesforearlyhearingdetectionandinterventionprograms.AmJAudiol,2000,9,9(11):
9-29.
[15]德郎.Access数据库的安全与应用[J].电脑学习,2008,(02):
61-62.