1、软件工程课程设计家庭理财系统设计实验报告班级:学号:姓名:目录言3.3331.4本课题的研究方法.42可行性研究42. 1技术可行性.43. 2经济可行性42.3操作上的可行性.53系统需求分析53. 1系统功能需求分析53. 2开发和运行环境63. 3根本设计概念和处理流程.64. 4数据库设计需求分析、1434.1数据库功能需求分析.143.4.2数据表结构E-R图.143.4.3数据表结构.153. 5主界面设计.163.6 人工处理过程163.7 尚未解决的问题164参考书1、引言1.1 课题背景家庭理财系统,即FamilyConductFinancialTransactionsSys
2、tem0它利用计算机应用技术,使家庭理财逐步信息化,从而形成由家庭成员与计算机共同构成效劳于家庭的人机信息财务管理系统。随着计算机开展,家庭理财系统已经成为很多家庭财务管理的一个重要途径。计算机的最大优点在于利用它能够高效准确地进行财务信息管理。使用计算机进行信息财务管理,不仅提高了工作效率,而且大大的提高了其平安性。1.2 国内外研究的现状家庭理财系统在国外很多地方使用已经相当的普遍,而且国外的家庭理财系统功能相当强大,比方系统里包含有股票的预测、基金的分析等等。在我们国内,尤其是在近几年,伴随着计算机的高速普及,家庭理财系统的使用范围逐步扩大,从最早的简单使用纸笔记录家庭、个人财务的收支情
3、况,到现在用计算机对财务的收支、查询、汇总等等。巨大的市场需求也促使了很多公司加大了对家庭理财系统的研究。1. 3本课题研究的意义多年以来人们都使用传统的人工方式记录和管理家庭或自己财务情况。这种管理和记录方式不仅不便于长期保存,也存在着不可防止的缺点,如效率太低、保密性太差。时间一长,伴随着居民收入水平的提高和居民各种消费和收入的多样性,家庭理财所需要管理的信息就会越来越多,就会产生大量的文件和数据,这样就会对查阅、更新、保存等方面都产生不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已逐渐被人们认识并掌握。如果使用计算机对家庭理财信息进行管理具有传统的手工管理所没法比拟
4、的优点。例如:统计方便、查找容易、可靠性高、保密性好、更新方便等。这些优点能够极大地提高家庭理财信息管理的效率,大大降低居民在信息管理精力上的投入,使企业获得更大的利润空间。因此,开发一个能够管理家庭内部各种财务信息的家庭理财管理系统是一件十分必要的事情。1. 4本课题的研究方法家庭理财系统的用户群体是家庭内部成员,用户类型单一,因此将本系统设计成一个相对封闭的单机运行系统结合居民管理信息方面的具体需求,利用ViSUalC+作为前台开发工具,使用SQLSERVER2000作为数据库。结合数据库原理及应用、软件工程开发方法,在经过深入地学习之后,开发了这套家庭理财管理系统。下面将具体介绍系统的开
5、发过程。2、可行性研究2. 1技术可行性本系统的开发利用ViSUaIC+作为开发工具。VisualC+是一个具有完善开发工具的平台。其中包括了WindoWS应用程序开发、Web应用开发。改良了团队交流方式,VisualC+为团队开发提供通道和完整的开发周期工具,特别是VSS工具的引入使团队工作的耦合度更一步的得到了提高,从而增加了团队内部的交流与协作的效率。通过学习,熟悉和掌握的使用方法,使用ViSUalC+作为开发工具将使整个系统的模块化设计变得更加简便。系统采用SQLSERVER2000作为开发数据库。SQLSERVER2000是一种客户机/效劳器结构的关系数据库管理系统。SQLSERVE
6、R2000提供了许多易于使用的图形化工具和向导,其中最常用的是效劳管理器、企业管理器和查询分析器。它们为创立和管理数据库带来了很大的方便。在技术难度方面,有小组间的交流、周围同学的热心帮助,加上对很多相关文献的参考,能够解决开发过程中所遇到的困难。2. 2经济可行性如今,随着计算机的大量普及,各种软件的开发本钱越来越低,价格也越来越底。本系统也是这样,开发本钱较低,只是需要一台配置一般的计算机,该系统运行时占计算机的资源也不多,但并不会因为开发本钱低而造成系统功能性能的下降。相反,随着计算机技术的开展,各种实用软件的性能日渐提高。家庭理财管理系统廉价的开发本钱,却能够为居民带来相当大的实惠和方
7、便。主要表现在:本系统可以说是一个拥有多种实用功能的家庭理财管理信息系统,它集成了家庭成员管理、收入管理、支出管理、密码管理等多种功能,具有较强的实用性和方便性。本系统的运行可以大大提高居民管理财务的效率,减少不必要的人力和物力。本系统还具有查询和统计功能,能够查询到用户在一段特定时间内收入和支出的情况,特别是支出情况,有时往往会让用户在月底吓一跳,大大超出预算,还弄不清钱都花到哪里了。有了家庭理财系统,不仅使用户对口袋里钱的去向一目了然,而且可以帮助用户渐渐感悟到一些心得,摸清哪些花费是必要的,哪些“意外开支是可以防止的,哪笔开支是可继续评估其必要性的。由此,可以得出,本系统在经济上是具有可
8、行性的。2. 3操作上的可行性由于本系统管理的对象比较明确,就是对于资金收入支出的一些相关管理,主要是对数据库的操作,且每个数据库内容具有较强的关联性,设计的过程也不复杂。因此,整个软件的使用非常简便。任何一个普通的计算机用户都能很快的熟悉整个软件的使用。并且本系统所消耗的资源非常小,任何家庭成员只需要在一般的电脑上面,就能够使用这个软件,简单、方便、快捷的实现对财务信息进行管理。3、系统需求分析3. 1系统功能需求分析家庭理财管理系统是针对用户要求用计算机,对自己的财务的收入、支出以及相关的各种信息,进行记录、修改、添加、删除而设计的一种现代化管理软件。通过需求分析,本系统需要具有以下功能:
9、1)由于一项新的软件在被使用之前,对于使用者来说是陌生和崭新的,所以要求系统具有良好的人机界面。能够家庭理财管理系统的各项功能,能成功的对用户各种信息进行管理。查询、修改、删除、添加数据方便,数据的稳定性和可靠性好。具体说来,要求本系统具有以下几个功能模块:用户登录模块、用户管理模块、数据库备份模块、收入模块、支出模块、密码管理模块、账目统计模块、报表输出模块以及查询模块。各模块具体的需求描述如下:(1)用户登录模块用户登录:验证用户的信息是否合法,以及验证用户是否为系统的合法用户。(2)用户管理模块在系统中主要包括添加用户、删除用用户、更改用户、用户修改密码、为用户设计计数器,减少用户统计
10、资金链的烦恼。(3)数据库备份模块主要对数据库里的数据进行备份。(4)收支输入模块主要实现对收入记录的添加、删除、修改。(5)财务分析模块证券帐户管理添加、删除,维护证券账户。持股情况记录手上股票买入卖出等信息,这样即使在没有网络的情况下对自己的股票也了如指掌。证券流水账记录自己手上股票买入卖出等流水信息。股票交易费用设置各股票交易费用设置。(6)报表输出模块主要实现对收入、支出记录的输出及打印。(7)查询模块主要实现对收入、支出记录按时间按类型查询、消费提醒(实际消费额快接近预消费额)、收入、支出记录的输出(包括财务报表、累计消费额、余额)。3.2开发和运行环境开发环境MicrosoftVi
11、sualC+6.0MicrosoftSQLServer2000MicrosoftVision运行环境硬件平台:PC机软件平台:Windows98/2000/XP/Vista/LinuxMicrosoftSQLServer20003.3根本设计概念和处理流程(1)系统整体模块,此模块涵盖整个系统的全部模块。业务处理流程图如下:(2)登录功能的设计当用户输入完用户名和密码以后,系统会触发一个验证用户输入的用户名称、密码是否正确的事件。只有当两个信息全部正确时,用户才能够登录到系统中,否则页面将重复输入用户和密码。用户登录成功后,系统将跳转到主界面。业务处理流程图如下:(3)用户信息管理模块的设计添
12、加用户信息页面主要实现对新用户的信息进行添加的功能。因为本系统涉及到对用户的财务信息进行相关的管理,这些信息对于用户来说应该是相当机密相当重要的。所以,本系统添加的用户只能够是家庭内部成员。在以后需要的情况下,可以由已经存在的用户从数据库中添加新的用户,除此之外,还要为用户设计金额计数器,减少用户为统计数据而产生的烦恼。从下列图中,我们可以看到添加用户信息的界面中的各个需要添加的信息项:业务处理流程图如下:(4)数据库备份设计随着数据的推移,用户的数据可能会有所变化,而且用户也希望保护数据,经常定期备份数据库,不仅对用户而言有平安性,对于系统本身也具有一定的平安性能。业务处理流程图如下:r登入
13、数据库SO验证身份收支入模块的设计对于该家庭理财系统来说,支出模块是很非常重要的一个模块。因为它能记录用户支出的一切信息,让用户能清楚地知道每一分钱到底是花在了什么地方。为用户提供一个非常实用且便捷的记录功能。止匕外,该模块还具有修改、删除、排序等功能。在家庭理财系统中,用户添加支出记录是很频繁的事,那么在系统中支出的记录就会非常多。正因为如此,所以每条记录的信息就显得尤为重要。添加支出信息记录的内容包括:支出金额、支出类型、支出者、支出日期、支出用途以及相关备注这几项。其中支出类型包括以下几种类型:税收、衣食住行、医疗、其他。收入类型:工资、股票、分红、奖金。开始给入姓名输入姓名给人姓名心支
14、整型一/支支ILr.,.A11HI支出支甥-K支出金到相关备注支出用途/支加途保存数据图5(6)财务分析设计证券帐户管理添加、删除,维护证券账户。持股情况记录自己手上股票买入卖出等信息,这样即使没有网络的情况下对自己的股票了如指掌。证券流水账记录自己手上股票买入卖出等流水信息。股票交易费用设置各股票交易费用设置。业务处理流程图如下:板账户0开始账户登入持股情况证券流水账保存数据t(结束)图6(6)报表输出模块的设计当用户要以表格的形式打印出所有的数据时,系统为用户以报表的形式打印出所有的信息资料,实现对收入、支出记录的输出及打印。业务处理流程图如下:图7查询模块的设计为用户实现对收入、支出记录
15、按时间按类型查询、消费提醒(实际消费额近似等于预消费额)、收入、支出记录的输出(包括财务报表、累计消费额、余额)业务处理流程图如下:开始3.4数据库设计需求分析3.4.1数据库功能的需求分析本理财系统中,当用户登入时会记录多个用户的信息,用户的支出和收入也占有相当的比重;在财务分析上面,系统数据库中由用户定期对证券信息进行添加、更正。一个用户只能有多个支出表和多个收入表,一个用户可能拥有多个证券账号,并对应着多个证券信息,一个支出表和收入表只能被一个用户所拥有,一个证券账号只能被一个用户所有。支出表和收入表可能对应着多个证券信息,与多个证券账号。3.4.2数据表结构E-R图VariabIeUI
16、IaTaCterS(10)UserIdeatifiereItons1111nEIgityeConntEC_m11VariabIeUharaCterSIlO)BC.sameVarQblecharacters(10)BC.ass11ordVariableUharaCterS(10)IdentifieJlJKJ.KJKlzVJ101010101010-(VaralecharactersVariablecharactersVariabIecharactersVariablecharactersVariablecharactersVariablecharactersIdentifier1Variable
17、UharaeteltSIIO)VariablecharactersUariRblecIizuractersVariablecharactersUariablecharactersUariablecharactersVairiablecharsuitersEqLgityEmWnGiUariabIeUharaCteItS(10)(松EQBJlIaJneVarQblecharacters(10)EQ_jIyIlafniUVariablecharacters(30)Eq_eeVariablecharacters(20)IdentifieJl3.4.3数据表结构根据书库功能与E-R图的分析得出以下数据表
18、表一:用户表(USer)英文缩写字段值备注用户编号U_numChar(10Primarykey名字UnameChar(10)NOTNULL密码UpasswordChar(10NOTNULL年龄UageChar(10)NOTNULL家庭称呼UnicknameChar(10)NOTNULL工资UsaIaryChar(10)NOTNULL银行账号UcountChar(12)NOTNULL表二:支出表(ConSUm)英文缩写字段值备注支出编号CnumChar(10)Primarykey支出者CnameChar(10)NOTNULL支出金额C_sumChar(10)NOTNULL支出类型C_typeC
19、har(10)NOTNULL支出日期CdatetimeChar(10)NOTNULL支出用途CproposeChar(20NOTNULL其他CothersChar(20)附加功能表三:收入表(Earning)英文缩写字段值备注收入编号EnumChar(IO)Primarykey收入者EnameChar(IO)NOTNULL收入金额EsumChar(10)NOTNULL收入类型E_typeChar(IO)NOTNULL收入日期EdatetimeChar(IO)NOTNULL收入用途EproposeChar(20NOTNULL其他EothersChar(10)附加功能表四:证券账号表(Equait
20、yCount)英文缩写字段值备注账号编号ECnumChar(IO)Primarykey账号名字ECnameChar(IO)NOTNULL账号密码ECpasswordChar(10)NOTNUL表五:证券信息表(EqUaity)英文缩写字段值备注证券编号EqnumChar(10)Primarykey证券名字EqnameChar(10)NOTNULL证券动态EqdynamicChar(30)NULL证券交易费用EqfeeChar(20)NOTNULL3.5主界面设计用户管理数据库备份更新收入记录财务分析报表输出扛印查询记录退出3.6人工处理过程本系统中的数据因为要到达高度保密状态,所以需要用户自己手动输入。3.7尚未解决的问题(1)数据的输入需手工输入,不能用批输入处理(2)本系统只能单机处理,并没有设计到网络的处理,这给系统的扩展带来了很大的麻烦。当用户需要在网上给家庭设主任某些选项时,很难在远程端控制,在生活上带来了不必要的烦恼。(3)平安性能上面,有可能存在着权限越界的问题。4、参考文献数据库设计教程ThomasM.ConnollyCarolynE.Begg著软件体系结构及实例分析余雪丽主编深入详解c+软件工程孙鑫主编齐志昌谭庆平主编