免费预览已结束,剩余61页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
存档编号 华北水利水电学院 north china university of water resources and electric power 毕 业 设 计题目 家庭理财管理系统 学 院 信息工程学院 专 业 计算机科学与技术 姓 名 学 号 201017607 指导教师 完成时间 2012.5.12 独立完成与诚信声明本人郑重声明:所提交的毕业设计是本人在指导教师的指导下,独立工作所取得的成果并撰写完成的,郑重确认没有剽窃、抄袭等违反学术道德、学术规范的侵权行为。文中除已经标注引用的内容外,不包含其他人或集体已经发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均已在文中作了明确的说明并表示了谢意。本人完全意识到本声明的法律后果由本人承担。毕业设计作者签名: 指导导师签名: 签字日期: 签字日期:毕业设计版权使用授权书本人完全了解华北水利水电学院有关保管、使用毕业设计的规定。特授权华北水利水电学院可以将毕业设计的全部或部分内容公开和编入有关数据库提供检索,并采用影印、缩印或扫描等复制手段复制、保存、汇编以供查阅和借阅。同意学校向国家有关部门或机构送交毕业设计原件或复印件和电子文档(涉密的成果在解密后应遵守此规定)。毕业设计作者签名: 导师签名:签字日期: 签字日期: 目 录摘 要iabstractii引 言1第1章 系统的概述31.1开发目的及意义31.2系统设计说明布局31.3系统技术的介绍4第2章 系统的分析52.1系统的需求分析52.2系统的业务流程分析62.2.1 业务流程分析的目的62.2.2 系统的业务流程分析过程62.3系统的数据流程分析72.3.1 数据流程顶层图分析82.3.2 数据流程一层图分析82.3.3 数据流程二层图分析92.3.4系统的数据字典9第3章 系统的设计113.1概要设计原则及具体功能划分113.1.1概要设计原则113.1.2系统功能模块的划分113.2系统的配置123.3详细设计123.3.1代码设计123.3.2输入/输出设计133.3.3界面设计133.4数据库设计153.4.1数据库设计原则153.4.2数据库概念设计163.4.3数据库逻辑设计183.4.4数据库物理设计18第4章 系统的实现204.1系统基本信息管理功能的实现204.2系统收支管理功能的实现214.3系统资产管理功能的实现224.4系统数据库管理功能的实现244.5系统工具功能的实现25第5章 系统测试与结果分析275.1系统功能测试方法概述275.2系统功能测试275.3系统错误处理测试285.4系统安全性分析305.5系统实用性分析30第6章 总 结31致 谢32参 考 文 献33附 录35附录一:任务书35附录二:开题报告37附录三:外文翻译41附录四:核心代码49 摘 要随着改革开放的深入,特别是中国加人wto之后,中国经济将融入世界经济大潮,而这种大潮必将把中国抛入更激烈的竞争。理财系统是一个家庭收支或者家庭资产的管理中不可缺少的部分,家庭收支很早就实施了理财的集中管理,而家庭使用的小型理财系统却只是凤毛麟角,所以说理财对于家庭收支,家庭资产管理都有着十分重要的意义。本论文介绍了家庭理财系统开发的整个过程。利用软件工程原理,采用面向对象的编程方法来对整个系统进行全面的开发,其开发主要包括前端应用程序开发以及后台数据库的建立、维护,总体上实现了家庭理财的自动化和信息化。本家庭理财管理系统的系统设计是基于vb语言,使用visual basic 6.0作为开发平台,实现家庭理财管理系统的构建。在这一方面本篇论文还介绍了该系统的开发环境和运行平台,而后台的数据库则使用access数据库管理整个家庭理财管理系统的后台数据。该系统主要包括以下几个模块:(1)用户信息的管理模块,具体能够实现的功能包括普通用户和管理员的密码登陆,新用户的添加以及用户密码的修改等;(2)家庭收支的管理模块,具体能够实现的功能有收支信息的添加,删除与修改,并且将收支关系比例以饼形图的方式显示出来;(3)资产信息的管理模块,该模块能实现的功能比较少,仅包含投资方面的账目记录的功能;(4)数据库信息的管理模块,在这一模块中能实现以三种不同的方式进行的查找功能;(5)工具的使用模块,在工具箱里面存放着一个简易的计算器供使用;(6)退出系统模块。通过六个模块的完美结合可以使该系统更加全面和灵活。本系统有几大优点:(1)人性化的界面设计,简单大方,且易操作;(2)设计的可视化比较强,还具有一定的灵活性,主要体现在收支管理模块和工具使用模块;(3)信息保密性比较好,这体现在用户的收支信息只有管理员才能删除这一点上;(4)数据库中的信息管理性强,易检索,体现在数据库信息的管理模块中。关键词:理财;收支管理;资产管理;查询;计算器i abstractwith the deepening of reform and opening up, especially china has been with the wto, the chinese economy will integration into the world economy tide, and the tide will put into china more competition.financial management system is a family income and expenditure or family assets in the management of essential part, family income and expenditure very early implementation of the finance centralized management, and use of small family financial management system but only rare, so said financial for family income and expenditure, family asset management has a very important meaning.this paper introduces the whole process of family financial management system development. software engineering principles, object-oriented programming approach to the comprehensive development of the entire system, and its development including the establishment of front-end application development and back-end database maintenance, realized on the whole family financial management, automation and information technology.this family financial management system of the system design is based on vb language, the use of visual basic 6.0 as a development platform, and realize the family financial management system construction. on the one hand, this paper also in about the system development environment and operation platform, the background is used the database access database management the whole family financial management system background data.the system includes the following modules: (1) user information management module, specific functions can be achieved, including the normal user and administrator password, add new users and user password changes; (2) family income and expendituremanagement module, specific functions can be achieved revenue and expenditure information to add, delete, and modify a pie chart shows the relationship between the proportion of income and expenditure; (3) asset information management module, the module can achieve the functionrelatively small, contains only the function of the investment in the accounting records; (4) database information management module, this module can achieve the search function in three different ways; (5) the use of tools module in the toolbox inside the store with a simple calculator for use; (6) out of the system module. the perfect combination of six modules can make the system more comprehensive and flexible.this system has several advantages: (1) user-friendly interface design, simple and elegant, and easy to operate; (2) the visualization of the design is relatively strong, but also has some iiflexibility, mainly reflected in the balance of payments management module and toolsmodule; (3) the confidentiality of information, which is reflected in the income and expenditure information that only administrators can delete this; (4) the nature of the information in the database management, easy retrieval, information management module is reflected in the databasein. keywords: financial management; expenditure management; asset management; inquiries; calculatoriii 引 言随着社会主义的不断发展与进步,人们的生活部断完善,家庭的收入也越来越多,人们的收入再不是用来解决生计问题了,而是最求更高的物质文明与精神文明,就在解决了物质与精神文明的高度完美,很多家庭往往都会有剩余资金,这剩余资金虽然说当前没什么大的用处,然而我们却不能将乱用,以防在什么不好的情况下使用。这就要求我们对家庭收入做一个很好的支配,记录剩余资金的利用信息。当然我们不会只选择一种方式去进行投资,我们会根据不同的需要进行不同风险程度的投资。记录这些复杂的内容,这将是一个很头疼的事,如果有一个专门管理家庭收支,投资信息的软件来记录并且存储这些信息,会为我们解决很多麻烦。这个家庭理财系统软件就是为我们解决这个棘手的问题,让我们不在为这种小事伤太多的脑筋。对于投资方面的功能包括投资方式的记录管理,这也是资产管理的一方面,另外还有家庭成员基本信息的记录和收入支出的管理。本系统力求概念清晰,通俗易懂,操作容易,功能强大,实用性强,使得本系统在对家庭理财进行管理的过程中,尽可能的发挥它的作用。当然,为了在管理家庭理财时,不使理财账目发生严重错误,本系统力求最好的稳定性,最强的安全性,尽可能少的程序bug。总的来说,家庭理财系统可以有效地记录和管理家庭的收支,合理规划和支配家庭资金,是家庭理财的好帮手。它利用计算机技术技术,使家庭理财逐步信息化,从而形成由家庭成员与计算机共同构成服务于家庭的人机信息财务管理系统。随着计算机发展,家庭理财系统已经成为很多家庭财务管理的一个重要途径;计算机的最大优点在于利用它能够高效准确地进行财务信息管理,使用计算机进行信息财务管理,不仅提高了工作效率,而且大大的提高了其安全性。在数据库技术的开发工具中access是比较好的,安全性比较高,开发语言比较简单,容易操作管理,所以后台数据库采用access。利用面向对象的方法设计系统,这样可以使程序设计条理清楚,明白。根据实际情况开发系统,能够使整个系统操作简单,满足多种家庭,不同文化水平的人的需求。本论文的整体框架:第一章概述部分首先简要阐述了家庭理财管理系统的重要性和系统技术的介绍;然后结合本文的研究设计内容分析了开发的意义以及该家庭理财管理系统的设计说明,给出了本文的主要研究内容和论文的结构。第二章在第一章分析的基础上进行了该家庭理财管理系统的市场需求进行了分析,并分析了其业务流程图与数据流程图,对数据流程图右进行了进一步的细化,分解为顶层图,一层图与二层图,另外给出了该家庭理财管理系统的数据字典和数据存储。第三章对家庭理财管理系统进行了具体的设计讨论,给出了系统的概要设计原则与具体模块的划分;并且还进行了详细设计,包括代码设计,输入输出设计,界面设计;最后对主要的数据库表进行了设计。第四章给出了各个模块的功能描述及其实现代码或算法的主要思想。第五章对家庭理财管理系统进行了测试,给出了测试的方法,针对该系统进行了实用性分析和安全性分析,给出了几个测试的运行实例。第六章对全文的工作进行了总结,并对进一步的工作做了展望。第1章 系统的概述1.1开发目的及意义随着家庭收支的规模不断扩大,家庭理财需求急剧增加,有关家庭理财的各种信息也成倍增长。面对庞大的信息量,有必要开发家庭理财管理系统来提高家庭收支管理工作的效率。通过这样的系统,可以做到信息的规范管理,科学统计和快速查询,从而减少管理方面的工作量。家庭理财管理系统能为家庭收支提供一个专业管理家庭收支理财的模式。系统的目标是,以规范的内部业务流程为基础,建立一种用户同信息系统之间的关系,建立和维护一个高质量的物流管理信息系统。理财管理对每一个家庭和个人理财都是一件十分重要的工作,理财管理的好,可以准确地反映家庭收支经营成果和业绩。本论文所设计的“家庭理财管理系统”是为方便家庭收支对家庭理财的管理而开发的,包括收支管理,查询管理,系统管理,资产管理等功能。1.2系统设计说明布局科学的进步,使得计算机科学日渐成熟,其强大的功能已为人们深刻认识。作为计算机应用的一部分,使用计算机对家庭收支情况进行管理,具有手工管理所无法比拟的优点,例如:检索迅速,查找方便,可靠性高,存储量大,保密性好,寿命长,成本低等。 该家庭理财管理系统主要实现了五大功能:(1)用户基本信息管理:包括新用户的增加,用户密码的修改等功能。其中需要重点讲的有两点:只有管理员才可以对用户进行添加,而普通用户是不能执行此操作的;在修改密码时,用户只能修改与用户名相同的密码的,而不能修改其他用户的密码,否则会提示出错。(2)家庭理财收支管理:包括理财信息信息管理,分类等功能。在理财信息管理中又包括了理财信息添加、以及删除操作,在添加时系统自动给出理财编号,经过理财类型以及数额,日期等详细信息的添加,在添加之后提交,如果必要的信息为空,系统会给出错误提示要求管理员添加相应信息,添加成功后,相应的信息显示在系统界面上。选择主界面中的家庭理财信息,对选中的理财信息还可以进行删除的操作。选中主界面中的家庭收支管理,点击家庭收入按钮,出现界面,用户可以在里面进行相关的信息操作;点击家庭支出按钮同样可以进入相关界面,按照提示可以进行相关数据的操作。(3)资产系统管理:在主界面的菜单里面,点击资产管理,会弹出对话框,其中包括对资产的价格,数量,操作人员,日期等的输入记录,同时还能实现添加与修改的功能。(4)信息查询:在主界面中,管理员通过选择查询的条件,可以为日期,收入者,支出者,资产名称等信息,在进行相应信息的添加,点击查询按钮,系统给出所有符合条件的家庭理财信息。(5)工具:该工具栏主要设置有一个可用工具就是计算器,该计算器简单方便,但是其功能足以满足使用该系统的用户需求,包含正常的四种运算:加、减、乘、除。1.3系统技术的介绍该系统前台设计阶段我主要采用了vb这种面向对象的可视化语言设计的;在后台阶段利用access数据库,简单,可靠。visual basic是美国微软公司的第一个编程工具和系统开发的第一个产品,visual basic以优良的性能、较强的系统开发功能、完美的视觉界面和简单易学的特点,已经赢得了全世界广大用户的偏爱。visual basic的编程环境包含了快速有效的开发功能,尤其是数据窗口这一方便而简洁操纵数据库的智能化对象,使系统的开发更人性化,操作更简便。作为管理信息系统的开发,visual basic是一个非常理想选择。visual basic是一种可视化的、面对对象和利用事件驱动方式的结构化高级程序设计,可用于开发windows环境下的种类应用程序。它简单易学、效率高,且功能强大,可以与windows的专业开发工具sdk相媲美,而且程序开发人员不必具有c/c+编程基础。在visual basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用windows内部的应用程序接口(api)函数,以及动态链接库(dll)、动态数据交换(dde)、对象的链接与嵌入(ole)、开放式数据访问(odbc)等技术,可以高效、快速地开发出windows环境下功能强大、图形界面丰富的应用软件系统。第2章 系统的分析本章主要的工作是对该家庭理财管理系统进行需求分析,归纳该系统功能需求及分析系统用户之间的信息交流,画出该家庭理财管理系统的业务流程图与数据流程图,对数据流程图进行进一步的细化分解,从而得到数据流程顶层图,数据流程一层图以及数据流程二层图;最后设计并画出该系统的实体关系图和数据字典。2.1系统的需求分析软件需求分析就是分析软件用户的需求是什么,其中的目标是深入描述软件的功能和性能,确定软件的约束和软件同其它系统元素的接口细节,定义软件的其它有效性需求。需求分析阶段研究的对象是软件项目的用户需求。一方面,必须全面理解用户的各项要求,但又不能全盘接受所有的要求;另一方面,要准确地表达被接受的用户要求。基于需求分析的重要性,早在该家庭理财管理系统在开发前期,由本人进行了比较系统的需求调查。主要的调查对象为大连不同规模的家庭和个人理财管理人员。在需求调查中,可以清楚地认识到,这种家庭理财管理系统还是很有发展前景的,很多管理人员表示,如果这样的系统销售价格合理,就会很乐意购买使用。(1)总体目标家庭财务管理主要由日常记账管理和应用各种理财手段进行理财实现家庭资产的最大增值。记账按范围和使用方式可分为现金记账,股票基金交易记账,债权债务记账。(2)具体目标要收入、支出更加全面可从多方面增加收入支出的情况,包括一般工资收入,借款,别人还钱,及股票基金所的,支出同样如此。灵活设置系统 包括成员、消费名称、收入来源、收入说明。增加存储功能 可根用户自行添加收入支出等记录,从而得知怎样才能更好的增加收入,包括现金存储、存款支出、存储查询、存款支出查询。各费用的统计包括日常支出,股票基金,综合统计等。查询功能系统可以方便为用户提供针对个人的收入支出查询,可以具体查询某人某段时间内的收支情况,同时还有资产的查询。2.2系统的业务流程分析业务流程图是一种描述系统内各部分、人员之间业务关系、作业顺序和管理信息流向的图表,利用它可以帮助分析人员找出业务流程中的不合流理向。2.2.1 业务流程分析的目的为了使用户对该家庭理财管理系统的基本架构有一个初步的了解,为了用户可以更好的使用该家庭理财管理系统,使家庭和个人理财管理人员在使用该系统时可以得心应手,不需要特意拿出时间对使用该系统的工作人员进行培训,编写并给出了该系统的业务流程图。2.2.2 系统的业务流程分析过程系统用户在使用该家庭理财管理系统之前先进行系统登陆,如发现不是本系统使用人员则登陆出错,提示输入正确的用户名与密码。进入主界面后,在系统管理方面可以添加新用户还可以修改密码等操作。用户和管理员可以根据实际需要设置收支内容,包括添加,修改以及删除理财内容信息。在基本资料管理模块中管理员可以进行理财收入、理财支出、资产管理、收支统计,在点击任何一个按钮后,系统显示相应的全部信息,供管理员进行管理操作。在理财收支管理功能中,管理员可以设置对理财收入信息,支出信息,以及收入统计工作,在显示信息模块中,管理员可以查看现有的内容的显示并且可以对相关条件进行显示。在添加时系统自动给出理财信息编号,管理员进行理财名称,收支类型以及数额等详细信息的添加,在添加之后提交,如果必要的信息为空,系统会给出错误提示要求管理员添加相应信息,添加成功后,相应的信息显示在系统界面上。选择主界面中的家庭理财信息,就可以对该信息进行更新操作,在更新后如果必要信息为空,系统给出错误提示,修改成功后新的信息将取代原有信息,对选中的理财债务和投资信息还可以进行删除的操作,但是要注意,只有管理员才能删除收支情况的记录,普通用户不可以进行此操作。资产管理模块,用户可以根据信息自己填写详细然后添加资产按钮,同时还可以进行删除操作。接下来给出该家庭理财管理系统的业务流程图,总的描述一下用户登录到主界面的大概过程: 用户登 录出错?执行出错处理主界面系统管理家庭理财资产管理数据库管理工具退出系统否是图2-1业务流程图2.3系统的数据流程分析数据流程图是一种能全面地描述信息系统逻辑模型的主要工具,它可以用少数几种符号综合地反映出信息在系统中的流动,处理和存储情况。为了描述复杂的软件系统的信息流向和加工,可采用分层的dfd来描述,分层dfd有顶层,中间层,底层之分。 数据流程图的特征:(1)抽象性:在数据流程图中只存在数据的存储,流动,加工,使用的情况,这种抽象性能使我们总结出信息处理的内部规律性。(2)概括性:它把系统对各种业务的处理过程联系起来考虑,形成一个总体。下面就对该家庭理财管理系统进行数据流程图的设计。2.3.1 数据流程顶层图分析数据流程顶层图决定系统的范围,决定输入输出数据流,它说明系统的边界,把整个系统的功能抽象为一个加工,顶层dfd只有一张。如下所示: 图2-2数据流程顶层图2.3.2 数据流程一层图分析通过对该顶层图的具体功能模块进行细致的分析,完成了下面的数据流程一层图,也就是对整个系统进行整体描述,将各功能都用分支形式一一列举出来,详细情况如下图所示:家庭财务管理系统资产管理系统管理家庭理财数据库管理退出管理修改密码增加新用户用户登录家庭收入家庭支出家庭收入支出按收入者查询按支出者查询按资产名称查询工具简易计算器图2-3数据流程一层图2.3.3 数据流程二层图分析为了使该数据流程更加清晰,就将数据流程一层图进行了分解,进而得到数据流程二层图,下面仅列出涉及收入表,支出表,资产管理表有关的流程图:家庭收入信息家庭支出信息 家庭收入支出管理收入表支出表 图2-4数据流程二层图1管理员信息普通用户信息 系统管理用户信息用户信息图2-5数据流程二层图2资产管理信息 系统资产管理资产管理表图2-6数据流程二层图32.3.4系统的数据字典数据字典就是对软件所需要使用的数据进行编号说明,它是配合数据流图使用的,在数据流图中,数据字典是不同实体之间活动传递的信息,就是某个文件具体有什么数据,数据间什么关系,为文件专门的做一个数据字典具体描述它。数据字典和数据流图共同构成系统的逻辑模型,接下来为系统的数据存储和数据字典。(1)以下是有关外部实体,数据流的数据存储定义,如表所示:表2-1 数据存储的定义名称简述输入输出来源去向类型超级用户(管理员)系统管理者管理员账号,密码等管理信息返回信息外部实体用户登录信息用户名和密码信息用户记录用户基本信息数据流查询收入信息查询家庭收入的详细信息 管理员保存家庭收入表数据流查询支出信息查询家庭支出的详细信息 管理员保存 家庭支出表数据流资产信息 对系统使用者资产信息进行记录用户添加、修改资产信息表 数据流(2)下面分别介绍了编号,收入,资产名称等数据字典的详细信息,如下表所示:表2-2 各别数据字典的定义名字别名描述数据类型长度编号用户的编号,且为自动编号int50资产名称用户的投资项目名称用户投资用于有回报的支出名字文本50用户权限能够对数据库中数据进行操作的能力文本50资产价格用户用于资产所需的价值int50第3章 系统的设计3.1概要设计原则及具体功能划分3.1.1概要设计原则功能模块的设计,通过“自上而下、逐步细化”的手段,逐层地将系统划分为多个大小合适、功能单一的模块,从而将复杂系统的设计转变为多个简单模块的设计,其设计原则可简述为:(1)根据实际情况把相互间转为独立的管理业务划分为若干个业务模块;(2)对一个个较大的功能模块进一步划分成一个个相互独立的、能单独运行的小模块;(3)针对具体处理对象,再按对其进行的操作类型划分为功能模块。3.1.2系统功能模块的划分该系统包括以下五个基本功能模块:(1)用户基本信息管理:包括新用户的增加,用户密码的修改等功能。其中需要重点讲的有两点:只有管理员才可以对用户进行添加,而普通用户是不能执行此操作的;在修改密码时,用户只能修改与用户名相同的密码的,而不能修改其他用户的密码,否则会提示出错。(2)家庭理财收支管理:包括理财信息信息管理,分类等功能。在理财信息管理中又包括了理财信息添加、以及删除操作,在添加时系统自动给出理财编号,经过理财类型以及数额,日期等详细信息的添加,在添加之后提交,如果必要的信息为空,系统会给出错误提示要求管理员添加相应信息,添加成功后,相应的信息显示在系统界面上。选择主界面中的家庭理财信息,对选中的理财信息还可以进行删除的操作。选中主界面中的家庭收支管理,点击家庭收入按钮,出现界面,用户可以在里面进行相关的信息操作;点击家庭支出按钮同样可以进入相关界面,按照提示可以进行相关数据的操作。(3)资产系统管理:在主界面的菜单里面,点击资产管理,会弹出对话框,其中包括对资产的价格,数量,操作人员,日期等的输入记录,同时还能实现添加与修改的功能。(4)信息查询:在主界面中,管理员通过选择查询的条件,可以为日期,收入者,支出者,资产名称等信息,在进行相应信息的添加,点击查询按钮,系统给出所有符合条件的家庭理财信息。(5)工具:该工具栏主要设置有一个可用工具就是计算器,该计算器简单方便,但是其功能足以满足使用该系统的用户需求,包含正常的四种运算:加、减、乘、除。3.2系统的配置(1)服务器端服务器端的配置是由建立站点所需的软件来决定的。在最低配置下,服务器虽然能正常工作,但其性能往往不尽如人意,如果我们想使站点服务器工作得更好的话,我们需要更好的配置,特别是服务器的内存应该大于 256mb。下面为服务器端的最低配置:处理器:intel pentium 486以上内存:256mb以上硬盘空间:80g 以上光驱:需要从光盘上安装操作系统和其它开发站点所需的软件网卡:isa 或者 pci 接口均可显卡:svga 显示适配器(2)客户端内存:8mb硬盘空间:300mb网卡:isa 或者 pci 显卡:svga 显示适配器 3.3详细设计3.3.1代码设计本家庭理财管理系统的代码设计遵循标准化原则,对代码的很多方面进行了规范,例如:在该系统地设计中,局部变量使用时,尽量避免使用全局变量,因为全局变量的作用范围比较大,再对代码进行修改时,不小心就会修改到不必要修改的部分,使得系统部能够正常使用。另外,代码设计还遵从了可读性高,可使用性强等的设计原则,对代码进行了必要的注释,在代码的编写过程中,尽量对代码的格式进行了规范,因为一个好的代码必须要有一个比较清新的书写过程和思路,而这些都可以从代码的格式上体现出来,当然,代码的格式也是给读代码的人第一印象的关键因素,就如同一个系统软件的界面一样有着十分重要的作用。在代码正确并且可以提供用户正常使用的基础上,本人又对这些代码进行了力所能及的优化工作,使得代码在使用时占据的空间少,占用cpu的时间尽量少,以及在系统运行时可能遇到的问题减少。但是由于本人水平有限,并不能保证这些系统代码的最优化设计。3.3.2输入/输出设计一个系统与用户进行交流的主要方式是键盘的键入与鼠标的点击,在本系统中,具体的输入输出设计如下表所示:表3-1输入/输出设计功能输入正确输出错误输出用户登陆用户的用户名及密码用户已登陆到系统中界面提示用户名或密码错误的出错界面添加收支信息家庭收入支出的详细信息信息会保存到相应数据库中添加内容不能为空的提示对话框添加资产信息家庭资产具体信息添加成功提示对话框添加内容不能为空的提示对话框3.3.3界面设计一个友好的用户界面不仅要做到具有良好的观赏性,还应方便用户对系统的操作使用,最好符合用户以往的操作习惯,只有这样才能使用户充分发挥主观能动性更快、更好的学习使用该系统。在对家庭理财管理系统界面设计时主要遵循以下几条原则:(1)用户界面的设计在整体上保持较为一致的外观风格。(2)在进行界面设计时要充分考虑用户的操作习惯,减少用户大量的输入操作以减轻用户的工作量。(3)界面所使用的词汇、图示、选取方式等要保持前后一致性。下面就对该系统的主要界面进行详细举例,包括登录界面,主菜单界面,添加支出信息界面,查询个人支出界面等,分别如下:(1)登录界面的设计比较简单大方,首先要在原工程里面新建一个form窗体,将其caption属性设置为“用户登录”,即为该界面的名称;然后就要从工具箱里面拉取控件放置在新建的窗体里面,其中用到的控件有“欢迎进入家庭理财系统”、用户名、密码等标签;要填入用户名、密码的文本框;还有“确定”和“取消”的按钮控件,如下图:图3-1 登陆界面(2)菜单界面的设计相对登录界面要稍微复杂些,第一步要在同一个工程里面新建一个mdiform菜单窗体,且将其caption属性设置为“家庭理财系统”,然后可以利用菜单编辑器编辑菜单栏,该系统的菜单一共有六大项功能,详细如下图所示:图3-2 主界面(3)支出界面的设计是整个系统中最复杂的一类设计,除了简单的在原工程中新建窗体,再往窗体中拉取必要的控件,如标签、文本框、按钮等,还有下拉式的文本框comobox控件和datagrid控件,其中对于datagrid控件的设置比较复杂,不仅仅是在其属性栏设置,还要在其右键单击后的属性和字段项目中设置,结果如下图:图3-3 添加支出信息界面(4)在对支出信息查询界面中,其实和支出信息的输入界面设置差不多,不同的是在对datagrid控件的属性是不需要设置的,因为该界面功能是检索数据库中的信息,当点击“查询”按钮时,表中的属性都会显示出来,这是不需要之前设置的,界面如下:图3-4 查询个人支出信息界面3.4数据库设计家庭理财管理系统数据库设计目的:通过对数据库表规范设计的深入理解,促进家庭理财管理系统的合理应用与发展。数据库表结构的设计与家庭理财管理系统的内容和职能密切相关,表结构的合理设计促进了程序员对家庭理财管理系统管理,在使管理简单,明确化,确保信息的完整,一致性并以发展的模式体现管理内容和职能方面具有重要意义。3.4.1数据库设计原则在设计数据库时,关键的步骤就是要确保数据正确地分布到数据库的表中。使用正确的数据结构,不仅便于对数据库进行相应的存取操作,而且可以极大地简化应用程序的其他内容(查询、窗体、代码等)。另外,数据应该尽可能少地冗余,这意味着重复数据量应该减到最少。本家庭理财管理系统采用的access作为访问数据库的服务器,用它来对数据进行存储,在数据库应用系统的开发过程中,充分考虑到以上几个方面,运用数据库原理知识,对涉及到的数据库进行了综合设计,力求数据库的结构合理化、规范化。3.4.2数据库概念设计数据库概念设计是整个数据库设计的关键,通过对用户需求进行综合、归纳与抽象,形成一个独立于具体dbms的概念模型。通过对系统流程图的分析与研究,对数据库进行了比较细致的数据库概念设计,形成了该家庭理财管理系统的用户实体、收入实体、支出实体、资产实体以及各实体的关系图,下面就是各部分的详细描述。(1)用户实体,包括用户名,密码,权限等属性,具体如下图所示:用户用户名密码权限图3-5 用户实体属性e-r图(2)家庭收入实体,包括编号,收入说明,收入金额,年,月,日,收入者,备注等属性,具体如下图所示:家庭收入编号收入说明备注收入者日月收入金额年图3-6 家庭收入实体属性e-r图(3)家庭支出实体,包括编号,支出说明,支出金额,年,月,日,支出者,备注等属性,具体如下图所示:家庭支出编号支出说明备注支出者日月支出金额年图3-7家庭支出实体属性e-r图(3)资产管理实体,包括编号,资产名称,购买价格,年,月,日,购买数量,备注等属性,具体如下图所示:资产管理编号资产名称购买数量日月购买价格年图3-8资产实体属性e-r图(4)各实体之间的关系,包括用户实体与家庭收入之间的1对多的收入关系,用户实体与家庭支出之间的1对多的支出关系,还有用户与资产管理之间的1对多的投资关系,具体如下图所示:资产管理投资用 户收入支出家庭收入家庭支出图3-9实体关系e-r图3.4.3数据库逻辑设计数据库逻辑设计将概念结构转换为某个dbms所支持的数据模型对其进行优化。在对该家庭理财管理系统的实体关系图进行了分析之后,分别对其实体、联系作了属性的分析,得出这些实体与联系的主键与码值,为以后对该家庭理财管理系统的数据库的物理设计提供了方便与基础。下面就是对该家庭理财管理系统的数据库逻辑设计:用户基本信息(用户名,密码,权限);家庭收入(编号,收入说明,收入金额,年,月,日,收入者,备注);家庭支出(编号,支出说明,支出金额,年,月,日,支出者,备注);资产管理(编号,资产名称,购买价格,购买数量,年,月,日);3.4.4数据库物理设计数据库物理设计为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。在经过了以上的数据库概念设计、逻辑设计后进行了最后的数据库物理设计,在进行该设计时,基本上就是将数据库逻辑设计出来模版具体化,将每一个实体、联系的主键和码的数据类型,数据说明等做出注释。下面是该家庭理财管理系统的数据库物理设计模型(表中设计时属性编号均为自动匹配的形式):表3-2 用户基本信息字段名字段类型字段长度可否为空主键用户名文本50否是密码文本50否权限文本50否表3-3 家庭收入字段名字段类型字段长度可否为空主键编号int50否是收入说明文本50否收入金额int50否年int50否月int50否日int50否收入者文本50否备注文本50是表3-4家庭支出字段名字段类型字段长度可否为空主键编号int50否是支出说明文本50否支出金额int50否年int50否月int50否日int50否支出者文本50否备注文本50是表3-5资产管理字段名字段类型字段长度可否为空主键编号int50否是资产名称文本50否购买价格int50否购买数量int50否年int50否月int50否日int50否第4章 系统的实现4.1系统基本信息管理功能的实现该模块要实现三个功能,分别为增加新用户,修改密码,用户的登录。在实现增加新用户功能时,需注意只有管理员才能执行此功能,具体要输入用户的姓名,密码,确认密码,还要输入权限;在实现修改密码功能时,要输入用户名,旧密码,新密码,确认密码等内容;该模块中的用户登录功能并不与登录系统时的用户登录窗体冗余,该功能主要是针对新增加的用户的,让他们进入系统。下面是该模块中增加新用户功能界面:图4-1增加新用户功能界面实现该模块中增加新用户功能界面的主要代码的构造思想是:(1)进行控件定义:设置三个文本框,对象名为text1、text2、text3,依次用来表示用户名、密码、确认密码;设置一个como控件对象名为como1,用来供权限的选择来使用;较为简单的是定义若干标签和两个按钮。(2)首先要判定用户名是否为空,在此使用ifelse语句:如果为空就执行if后面的语句,就是弹出来一个对话框“用户名不能为空”,不为空的话就利用select语句将填入的信息赋值给变量sql,如sql = select * from 用户基本信息,再通过语句:rs_adduser.open sql, conn, adopenkeyset, adlockpessimistic可以连接到数据库中,其中rs_adduser是定义的记录集。(3)接下来要判断要添加的用户是否已经存在,在这部分使用到while语句和if语句的嵌套,while语句循环的条件是rs_adduser.eof = false,而if语句中条件为trim(rs_adduser.fields(0) = trim(text1.text),其中rs.fields(0)是用来返回记录集rs_addusr当前位置第一个字段的值,如果满足的话就说明已经有了名字相同的用户,就会弹出msgbox 已经有这个用户, 否则就执行rs_adduser.movenext,判断下一条字段的内容。(4)使用ifelseifelse语句来确定两次密码必须一致和选择正确的用户权限,两个if中的条件分别是trim(text2.text) trim(text3.text)和trim(combo1.text) system and trim(combo1.text) guest,满足之后分别将text1、text2、text3赋值给数据集中的字段fields(0)、fields(1)、fields(3),就会连接到数据
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论