1、家庭理财系统的设计与实现毕业设计论文忻 州 师 范 学 院计算机系本科毕业(设计)论文课题名称家庭理财系统的设计与实现专 业计 算 机 科 学 与 技 术姓 名学 号指导教师目 录 1 引 言 11.1 开发背景及研究意义 11.2 本人主要工作 21.3 论文组织结构 22 需求分析 32.1 用户需求描述 32.2 经济可行性 32.3 技术可行性 32.4 系统功能分析 32.5 数据流图 43 概要设计 53.1 系统功能设计 53.2 系统工作流程图 63.3 数据库设计 63.4 系统开发环境 74 详细设计 84.1 财政统计模块设计 84.2 储蓄计算模块设计 84.3 支出规
2、划模块的实现 94.4 收支预算模块的实现 95 系统实现 105.1 资产明细模块的实现 105.2 收入统计模块的实现 105.3 支出规划模块的实现 125.4 储蓄计算模块的实现 136 系统测试 146.1 测试方法 146.2 测试内容 146.3 测试结果 147 结束语 15致 谢 16参考文献 17 家庭理财系统的设计与实现摘 要:家庭理财系统是根据对居民收支情况的调查,通过对居民家庭理财方式的分析,利用现代软件工程的思想和方法以及数据库技术开发的一款针对于普通家庭用户的软件。可以帮助用户快速有效的查看和管理收支类目,为用户提供合理的投资建议,最终能使用户从中获取有益信息并做
3、出正确的理财方案。该系统是以Delphi 7.0为前台开发环境,以 SQL Server 2000作为后台数据库,结合Windows平台建立起来的数据库管理系统,满足了家庭用户对理财的需求。关键词:家庭理财 Delphi 7.0 SQL Server 2000 Abstract: The family financing system is a normal family software developed by the survey of residents payments case , the analysis of family financing way,using the ide
4、a of modern software engineering and database technology. It can help users check and manage payments quickly and effectly, make reasonable investment advice for users, make users get useful information and correct project. The database management system is based on Delphi 7.0 development environmen
5、t for the future, making SQL Server 2000 for backstage database, and using Windows for its platform, satisfy the family members need of the financing. Keywords:Family Financing Delphi 7.0 SQL Server 20001 引 言1.1 开发背景及研究意义近年来,人民生活水平不断提高,家庭收入不断增加,收入增加的同时,投资也相应的增加,如果细分如今的收入和支出种类,可谓五花八门,数不胜数,在这种情况下,家庭对于
6、财物的管理,就出现了许许多多的问题,有的家庭仍采用传统的手记方式记账,对于今天的多样的财物流动来说,这样显得既累又繁琐,而有的家庭根本没有去在理财上下功夫,这样不免造成财物的浪费1。所以,一款合适的家庭理财软件的诞生迫在眉睫。本文介绍的家庭理财系统,就是针对上述的种种问题而开发的软件,它可以很好的对家庭的收入和支出项目进行记录,查询和分析,提供快捷简便的方式给用户的投资做出判断,而且,众多实用的功能可以给用户提供贴心的服务。1.2 本人主要工作学习Delphi 7.0和SQL Server 2000软件的应用,为系统的开发打好基础。通过对任务书的分析,以及实际考察,对系统进行进一步的需求分析,
7、设计系统的主要功能,分为四大模块:资产明细模块、支出管理模块、财政统计模块、收支预算模块。资产明细模块包括对资产数据的录入、查看以及删除;支出管理模块完成对支出项目的录入、查看和删除;财政统计模块包括三种查询收支类目的方法;收支预算可以对未来的收入和开销进行统计并计算。在以上工作基础上,对系统进行详细设计并完成系统所有的功能,最后进入论文的撰写阶段,完成设计的全部任务。1.3 论文组织结构 论文的结构如下:第一章:引言。介绍系统的开发背景及研究意义,以及本人主要工作。第二章:需求分析。对需求和可行性进行了分析。第三章:系统设计。从模块设计和数据库设计两方面来设计系统。第四章:系统实现。介绍系统
8、所使用的界面及代码。第五章:系统测试和优化。进行系统的测试和优化。第六章:总结语。对论文进行总结。2 需求分析开发系统首先要进行需求分析。需求分析是介于系统分析和设计阶段的桥梁。需求分析的好坏直接决定着系统能否满足工作的需要,指导系统的进一步开发。2.1 用户需求描述 根据很多家庭用户的反映,如今的收入和消费渠道越来越多,如果要进行统计的话,将会是一项复杂繁琐的工作,容易出错,而且每天的花费各式各样,到底该如何做出正确的消费,如何才能给自己免去不必要的花销,如何才能做出正确的决定,已经是很多家庭面对的共同难题2。因此本系统的制作,就要使家庭用户能够快捷,简便的记录自己的日常收支,能提供给用户判
9、断自己消费行为的方法,而且在界面制作上追求美观大方,给用户舒适的感觉。2.2 经济可行性 计算机的价格已经十分低廉,性能却有了长足的进步。而本系统的开发,为家庭的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面:第一,本系统的运行可以代替人工进行许多繁杂的劳动;第二,本系统的运行可以节省许多资源;第三,本系统的运行可以大大的提高家庭的工作效率;所以,本系统在经济上是可行的。2.3 技术可行性 本系统运行在Windows XP操作系统上,该操作系统在我国已十分普及,在稳定性,安全性,实用性等方面都可以满足用户需求。系统使用Delphi 7.0为系统开发工具,使用该软件开发的系统,从各方面来
10、说都比较成熟稳定。2.4 系统功能分析系统功能分析是在系统开发总体任务的基础上完成的,通过需求分析阶段对家庭用户的需求情况做出的调查以及各方面的数据,确定了本系统的设计和实现的目的,明确设计此系统的目标。系统要完成的功能如下:1、资产明细:分类记录家庭的所有资产情况;2、支出管理:分类记录家庭的所有支出情况;3、财政统计:按不同的要求检索并查看你需要的收支类目;4、收支预算:可以完成收入与支出的预算,提前观察,并做出决定。除上述功能外,还应添加一些辅助型的功能,如:支出规划、储蓄计算、理财助手等。它们可以方便的使用户判断自己的储蓄手段和消费途径,还可以给用户一个理财方式的参照,让用户取长补短。
11、2.5 数据流图数据流图显示了系统开始的构想,提供了最初的系统数据流示意图。本系统的顶级DFD如图2.1所示,一级DFD如图2.2所示:理财要求图2.1 系统顶级数据流图预算结果 图2.2 系统一级数据流图3 概要设计3.1 系统功能设计根据用户的需求,结合家庭的实际情况,经过模块分析,本系统应具有如下功能模块:1、资产明细:此模块列出了用户所拥有的所有资产数据,可以达到录入,删除,查看的功能,通过此模块,可以细致地将每日的详细资产获得情况记录进系统。2、支出管理:此模块列出了用户所拥有的所有支出项目,可以实现录入,查看,删除等功能,用户可以分类别将自己的日常开销录入到系统中,直观简便。3、财
12、政统计:此模块分为收入统计和支出统计,可以按照自己喜欢的方式查询自己的收入或支出项目,一目了然,快捷方便。4、收支预算:分为收入预算和支出预算,可以预先算出用户的收入和开销的费用,提前决定以后的理财打算。5、储蓄计算:可以根据不同的银行不同的储蓄方式,计算出规定时间内的本息,让用户面对不同的储蓄,做出正确的判断。6、支出规划:多样化的选择方式,判定出用户的支出,再根据用户的投入,判断支出是否符合现状,是否超标,以便用户选取投资方式。投资计算 图3.1 系统功能模块图3.2 系统工作流程图开始 主界面 收支预算财政统计支出管理资产明细收入添加支出添加支出预算收入预算收支查询收支表处理结束图3.2
13、 系统工作流程图3.3 数据库设计在系统设计过程中,数据库设计是尤为重要的一环。当用户完成对收支的录入与管理时,无时不刻存在着对表的使用,因此,表的设计可以对系统的稳定运行起到有效的帮助。表1 资产明细表字段名数据类型大小是否为空默认值编号char10是no日期datetime8是no来源char10是no金额money8是no表2 支出管理表字段名数据类型大小是否为空默认值编号char10是no日期datetime8是no阶段char10是no分类char10是no金额money8是no表3 收入预算表字段名数据类型大小是否为空默认值编号char10是no日期datetime8是no种类ch
14、ar10是no金额money8是no表4 支出预算表字段名数据类型大小是否为空默认值编号char10是no日期datetime8是no种类char10是no金额money8是no表5 银行表字段名数据类型大小是否为空默认值方式char10是no时间char10是no利率char10是no 3.4 系统开发环境硬件环境:处理器 Intel Core Duo T5800,主频2.0G;内存1G;显存64M;硬盘160G;网卡10M/100M自适应以太网卡。软件环境: Windows XP操作系统;SQL Server 2000数据库软件; Delphi 7.0应用软件。4 详细设计4.1 财政统计
15、模块设计由图4.1可以看出,本模块主要完成对收支的查询。1、计算总收支:可以对收支金额进行统计。2、时间检索:可以查看固定时间范围内的收支情况。3、来源检索:用于查看具体来源下的收支情况。来源检索图4.1 财政统计模块图4.2 储蓄计算模块设计 本模块实现对储蓄方式的选择和计算,令用户自行判断自己的储蓄手段,选择具体的银行,储蓄方式和时间,可以知道相应的利率,输入存款金额后,可以计算出最后的本息。利率图4.2 储蓄计算模块图4.3 支出规划模块的实现图4.3 支出规划模块图支出规划模块供用户选择具体的支出项目,然后给出提醒,使用户判断出自己的规划是否合适。 4.4 收支预算模块的实现收支预算模
16、块分为收入预算模块和支出预算模块,可以对预算收支进行记录,删除,统计等功能。计算总预支出图4.4 收支预算模块图5 系统实现5.1 资产明细模块的实现此模块要实现添加记录,删除记录的功能,编号,日期,来源,金额由用户自己输入或选择,窗口如图5.1所示:图5.1 资产明细模块 在编号、来源、日期、金额四个框中填入实际的值后,单击“保存”按钮,便可将信息保存,保存的代码如下: Try with ADOQuery2 do begin Close; SQL.Clear; SQL.Add(insert 资产明细表 values(:a,:b,:c,:d); Parameters.ParamByName(a
17、).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
18、.2所示: 图5.2 收入统计模块其主要实现代码如下: if radiobutton1.Checked=true then begin adoquery3.close; adoquery3.sql.clear; adoquery3.SQL.Add(select Sum(金额) 金额和 from 资产明细表); adoquery3.Open; edit1.text:=adoquery3.fieldbyname(金额和).asstring; end; if radiobutton2.Checked=true then begin adoquery1.close; adoquery1.sql.cle
19、ar; adoquery1.sql.add(select * from 资产明细表 where 日期 = +datetostr(datetimepicker1.date)+ and 日期 = +datetostr(datetimepicker2.date)+ ); adoquery1.open;end; if radiobutton3.Checked=true then begin AdoqUERY1.Close; AdoqUERY1.SQL.Clear; AdoqUERY1.SQL.Text:= Format(Select * From 资产明细表 Where 来源 = %s,QuotedS
20、tr(Combobox1.text); AdoqUERY1.Open;5.3 支出规划模块的实现此模块可以令用户判断自己的支出是否合理,根据用户的选择,判断支出是否超标,根据实际情况会显示不同的内容,计算可以累加计算,如图5.3所示。combobox中的三项可以令用户选择出自己想要的支出,花费输入RMB,完成次数输入你想要完成的次数,默认为一次,然后单击“确定支出”就可以判断出支出是否合适。单击“重新开始”可以将输入框清空,窗口如图5.3所示:图5.3 支出规划模块其主要实现代码如下: a:=strtofloat(label2.Caption); label9.Caption:=combobo
21、x1.Text+-+combobox2.Text+-+combobox3.text; b:=strtofloat(edit2.text)*strtofloat(edit1.text); label11.Caption:=floattostr(b); a:=a-b; if a-b=0 then begin label12.Caption:=对不起,您花费太多,收入不够; label2.Caption:=无; end else begin label12.Caption:=方案没问题,足够支付; label2.Caption:=floattostr(a);5.4 储蓄计算模块的实现储蓄计算可以算出
22、在用户指定时间下的本息情况,可以使用户预先判断选择的储蓄方式是否合理。窗口如图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)+(strt
23、ofloat(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、是否可
24、以正常进入主界面。2、能否正常地完成对数据的录入。3、是否能够正常的完成数据的查询和统计。4、数据的统计和查询能否可以返回正确的内容。6.3 测试结果测试过程中,基本功能都已实现,但是还有个别地方存在问题。1、在数据录入过程中,有的信息里时间有时分秒显示,而有的没有。修改时间组件属性后,显示正常。2、在数据查询过程中,有时出现无法查找到正确信息的情况,修改代码后,查找正常。 7 结束语本系统是基于对普遍家庭理财方面的需求,Delphi 7.0+SQL Server 2000相结合而设计出的一套可以满足绝大多数普通家庭用户理财需要的系统,该系统典型、操作上手、界面美观、具有通用的价值。经过几个月
25、的设计和开发,本系统已经实现当初所要预想的功能,已经满足了基本要求,但由于本人水平的不足,许多更加有趣并实用的功能并没有加以实现,例如债务、房地产、保险这些投资的详细设计,还有财政统计情况的图形实现,这些由于本人能力和知识的有限,并没有在系统中做出来,但随着水平的提高和知识的不断获取,相信在日后会将这些不足加以完善。致 谢在毕业设计过程中,我从我的指导老师李朝霞老师身上学到很多东西,她严谨的治学精神、认真负责的工作态度、良好的工作习惯、超乎寻常的毅力和耐心给我留下了深刻的印象,使我受益匪浅。正是在李老师的悉心指导和帮助下,我的毕业设计才能顺利完成,在此感谢她的耐心辅导,谢谢。此外,在本次的设计
26、中,还要感谢我的同学,正是大家在一起互相交流和探讨,才会及时的发现问题,才会获得自己不懂的知识,才会有最终设计的完成,因此,本次的设计,和同学们的帮助是分不开的,这让我体会并学习到了团队合作的精神,在此感谢大家。最后,向所有支持和帮助过我的老师和同学表示衷心的感谢! 年 月 日参考文献1华金秋.中国居民理财研究D.成都:西南财经大学,2002,(02).2吴明星.中国富民思想理论与实践的发展D.成都:西南财经大学,2000.3罗英均,徐兵,冉戎.浅谈Access数据库安全策略J.电脑知识与技术,2005:25-27.4周斌仲.软件图形用户界面设计D.武汉:武汉理工大学,2005.5张乾.基于B
27、orland Delphi开发平台的数据库应用系统开发的原理与应用研究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封莉
28、.软件开发的质量及其经济性研究D.南京:南京航空航天大学,2007,(01).13李晓华.深入Delphi编程技术讲座之Delphi与数据库J.微电脑世界,1997,(10):154-157.14 Joint Committee on Infant Hearing. Year2000position statement:principles and guidelines for early hearing detection and intervention programs .Am J Audiol,2000,9,9(11):9-29.15李德郎.Access数据库的安全与应用J.电脑学习,
29、2008,(02):61-62.毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1