1、软件项目实训报告项目名称 个人财务管理系统设计与实现姓 名刘志欣学 号222039班 级3计本指导教师张 峰报告日期16 年 7 月 1 日目录1 个人财务管理系统需求分析1、1系统需求分析得任务与步骤1、 可行性分析21、2、 技术可行性1、2、2 操作可行性31、3 功能需求分析31、3、1。前台页面模块31、。后台界面模块、4 数据流分析41、5数据字典52 个人财务管理系统得总体设计与实现82、1 系统功能设计2、1、 系统功能模块设计82、1、2 功能模块简介2、2 数据库设计102、2、1 数据库概念结构设计10、2 数据库逻辑结构设计122、2、3 数据库物理结构设计2、3 系统
2、实现42、3、1 账户管理模块62、3、2收支管理模块17、3、3 卡管理模块192、4留言管理模块23 系统测试3、1 测试环境及方法3、1、测试环境233、2 测试方法33、2 系统测试结果43、2、1 注册测试243、2、2 登录测试253、密码修改测试25总 结2 个人财务管理系统需求分析1、1 系统需求分析得任务与步骤任务:调查用户需求,该“用户”主要指系统得后台管理员以及前台用户,分析用户对系统功能、性能、硬件等得具体要求,然后以文本形式作成报告。本阶段主要就是利用图表与文字来表示系统得逻辑模型,旨在从逻辑上描述系统得功能与性能。步骤:1利用图表与文字全面描述系统。2。根据用户提出
3、得新需求,适当地对系统模型进行改进。编写系统分析文档。1、2 可行性分析可行性分析就是一个系统开发得初始阶段,其意义在于:在尽可能短得时间里,花费尽量小得代价确定问题就是否可以解决.因此,我们就必须探究清楚原定得各种可能得方案就是否可行,以及完成得该系统之后系统所能带来得效益就是否足够大于投资得成本.所以,可行性研究就是必要得,它得主要作用就是简化系统分析与设计得过程,从而以更合理得方式来进行系统分析与设计,以保证系统得开发成功。所以说,开发本系统得成本少,开发周期短,从经济方面瞧开发此系统就是可行得。1、2、1技术可行性本系统开发采用得就是/S模式1。系统包括客户端与服务器端,对应前台与后台
4、。在服务器端采用得就是SL Servr200数据库,该数据库具有数据得完整行、一致行以及安全性得特点,并提供了相当安全可靠得存储功能,因而比较适合处理中小型系统.它在处理大量数据得同时,也能够保证系统得完整管理功能。开发过程中所使用得开发软件为MyEipse,Myclipse就是在cl得基础上加入了许多功能强大得插件,它继承了Eclip独特图形API,美化了Jav界面,并且提高了界面得响应速度.因此,它比clse更具有实用性.在硬件方面,用户计算机得硬件配置只需满足以下条件即可:计算机处理器P 2、G及以上,计算机RA满足512M或以上,硬盘存储满足0G或以上,该硬件环境要求明显低于市面上得普
5、通电脑配置。所以,从技术方面来瞧开发此系统就是可行得.1、2、2 操作可行性由于本系统就是基于B/S模式开发得,用户可以通过浏览网页得方式进入本系统得操作界面,使得用户无论在世界哪个角落,无论在什么时候,只需能连上互联网,就能登录本系统进行相关记录得插入、修改、删除等操作。操作简单直接,一切操作都可以在浏览器上完成。客户端不需要额外安装软件,用户使用不需要提前培训,所以,该系统就是简单可操作得。1、 功能需求分析在生活中,我们每个人都有理财需求。而最传统得理财方式就就是准备一本记账簿,然后对其进行账目得手工记录。甚至多数人没有记账习惯,也就没有理财规划,导致账目混乱。所以,设计个人财务管理系统
6、就是非常有必要得,它实现得功能有以下几个方面:1、3、1.前台页面模块:1)个人收支管理:它得功能包含对收入支出记录得增添(除现金外,只能对现有卡进行增加操作)、更改、删除、筛选查询(分为按日期查询与按账号查询)、金额统计与以cel文件形式导出数据(只能导出当前得筛选查询结果)。一条完整得收支记录包含记录名称、说明、金额数量、收支选择、日期。2)收支报表:它主要负责将收支数据分别以柱状图、饼状图展现给用户,给用户提供以不同角度分析数据得条件.3)卡信息管理:用户可以对自己得银行卡、基金卡进行增加、修改、删除,在编辑得同时保持与所编辑卡得记录相关联。)留言管理:用户在登录后可以在本系统留言板发表
7、自己得意见与建议。5)账号管理:用户可以进行注册操作(不能出现用户名重名得现象)以及对自己账户得密码进行修改。、2后台界面模块:分为管理员角色与超级管理员角色:)管理员:查瞧当前系统得参数得功能,修改网站简介信息。对用户信息进行维护(增加、删除、修改、查询)得权限,但不能编辑用户密码.对留言板进行查瞧与管理,有权限删除不合理得留言。2)超级管理员:在管理员得基础上额外增加管理普通管理员与管理用户密码得功能。1、4 数据流分析数据流分析指对系统得数据流动方向得进行动态分析,本阶段得主要任务就就是找出并解决数据流动过程中得问题。而目前来说比较常用得方式就是分层数据流程图,即Dat FowDagra
8、m,简称DFD。数据流分析得主要工作就是分析系统得数据流程,然后将该流程中所涉及得数据抽象出来,用数据流程图得方式来描述该系统得数据流程.经过以上得步骤来分析本系统得数据流程,初步确定了系统数据得流动方向,以及系统得主要模块与功能划分,本系统模块大致分为:收入管理模块、支出管理模块、卡管理模块、财务统计模块、留言管理模块、用户管理模块,分析后得出以下流程图:图- 个人财务管理系统顶层DFD图图1-2个人财务管理系统数据流图(0层图)图1-3 用户注册数据流图图14 管理员登录数据流图、5 数据字典在本章得前面几个阶段已经分析出了系统得数据流动方向,而本阶段得目得就是设计数据,从而得到设计结果:
9、数据字典。数据字典就就是指某些数据得集合,而这些数据必须包含于数据流图中,即数据字典详细记录了数据流图中得数据得信息。经过详细得设计后得出如下数据字典:表 1 管理员信息得数据字典表数据项名内容举例类型取值范围备注管理员编号00int唯一账户名杨天高nvarchar1唯一密码yt123nvarchar15就是否为超级管理员就是car2表 12 留言信息得数据字典表数据项名内容举例类型取值范围备注留言编号100int唯一留言信息系统还行vacha62留言人张三achar10外键日期01/4/2 21:5narchar50表 1-3财务资金信息得数据字典表数据项名内容举例类型取值范围备注财务编号1
10、001int唯一财务分类买东西arhar50账户现金varhar50金额250、50float时间2064/13 18:50varar5备注用于投资nvachar50收支sounarha4会员名李四vac150外键表 4 用户信息得数据字典表数据项名内容举例类型取值范围备注用户编号100in唯一用户名王五nvarcha150唯一密码wg5narr150性别男nvarca1年龄23t表15 网站信息得数据字典表数据项名内容举例类型取值范围备注信息编号101唯一信息名称网站简介rh50唯一具体信息随手理财好帮手nvarcha3002个人财务管理系统得总体设计与实现、1 系统功能设计2、1、1系统功
11、能模块设计本系统分为账户管理、收支管理、卡管理、留言管理模块,其系统功能模块如图21所示:图21个人财务管理系统得功能模块图2、2功能模块简介在上一节得图21中已经说明了个人财务管理系统得总体功能,以下就是每个功能得简介:由于本系统属于管理系统,许多功能都就是通过管理模块实现。所以,在这里首先介绍管理模块.管理模块内容要比客户模块更多,因为存在许多对信息得维护工作,包含有查询、添加、更改与删除等操作。页面得命名采用“模块名+功能名”得方式,见名知意。总体来说,用户用例图22管理员用户图所示管理模块具有如下功能:系统前台:1。账户管理模块:1)注册:用于前台用户得注册。2) 登录:用于前台用户得
12、系统登录.)修改密码:用户登录后可以选择修改本账户密码。收支管理模块:1)收支分析:显示年/月收支总额.2) 收入管理:收入记录得录入,查询,编辑,添加。3)支出管理:支出记录得录入,查询,编辑,添加。4)统计分析:以报表形式展示用户得财务数据,方便用户进行统计分析。卡管理模块:用户对自己得信用卡,储蓄卡,基金卡等进行管理维护。.留言管理模块:发表对网站使用问题,建议,意见等;删除本人留言。图2用户用例图系统后台:1) 系统参数:管理员可以查瞧系统运行环境,编辑网站前台简介信息。2) 管理员维护:对后台管理员得信息进行维护。3) 用户管理:对前台用户得信息进行维护。4) 留言管理:对留言板信息
13、进行维护.图23管理员用户图2、数据库设计、2、 数据库概念结构设计本系统采用ER图方法描述数据对象之间得关系。采用该方法设计数据库,大致分成三步:设计局部ER模式。2。综合局部ER模式,然后将之整合为一个整体,得到全局ER模式。.优化全局E模式。从而得到逻辑结构模型。设计规划出得实体有:管理员、用户实体、收支记录、卡、留言、网站信息,ER图如下所示:图24管理员信息实体E-图图25用户对象实体ER图图 -收支对象实体图E-R图图 27卡对象实体E-R图图 -8留言相对实体R图图 29 网站信息相对实体ER图通过整合上述局部图,得到如下全局ER图,.其中每个用户可以同时拥有N张卡、N条收支记录
14、以及管理N条本人留言;每张卡可以拥有M条收支记录;多个管理员管理一条网站信息;管理员与用户得管理关系为M:N;管理员与留言得管理管理为M:N.详情如图2所示:图 2-10 整体E-图2、2、2 数据库逻辑结构设计此阶段就就是根据本章第一节得设计好E-R 图设计相对应得逻辑结构,则设计好得逻辑结构如下:1 管理员:管理员编号(主键),管理员账户名,管理员密码。用户:用户编号(主键),账户名,密码,性别,年龄收支:收支编号(主键),收支类别,分类,备注,账户,添加时间,用户名(外键),金额4。卡:卡编号(主键),用户名(外键),卡账号,备注,卡名字,卡类型。留言:留言编号(主键),留言人(外键),
15、留言内容,留言日期6网站信息:信息编号(主键),信息名称,信息内容、 数据库物理结构设计本系统在数据库中得表设计如下所示(每个表对应数据库一张表):表 2 管理员表admin列名字段名数据类型长度允许空用户编号adnoit主键用户名adamevarcha0not nl密码dPwnvrcha10not ull就是否为超级管理员isSchno null表2-2会员表 tudet列名字段名数据类型长度允许空用户编号dintot nul姓名namenvrchar50主键密码wdnvarcar150notnull性别envarha1null年龄aeintnull表23 财务资金表 ny列名字段名数据类型
16、长度允许空资金编号idit主键分类enenvarar50null账户zhanghunvrca50not nul金额inefoatnul时间hijiavahr5nul备注infonar0nul收支类型shuzinvchr4t null会员姓名ueramevarcar50外键表 2 网站信息表 irod列名字段名数据类型长度允许空列名信息编号intodoint主键信息名称inodNamench50not ull具体信息intrdMsgvrhar15表 2-5卡信息表 cad列名字段名数据类型长度允许空卡编号idint主键卡名nmenvrch50not ull类别stylnvarhar10l卡账号o
17、dearcha10not null备注nachar10null会员名useramenvarcar0外键表 2-留言信息表 mesag列名字段名数据类型长度允许空列名留言编号idnt主键内容msgnvarchar62no nu发布者apusernrcha15外键日期daedtetim50ll2、3 系统实现在管理员登录系统前需经过用户名、密码与验证码得验证,验证成功后方可进入后台界面。可以登录后台界面得人员包括普通管理员与超级管理员,超级管理员不能被删除,可以被修改权限为普通管理员,超级管理员在拥有普通管理员权限得基础上,额外拥有管理普通管理员信息与管理用户密码得权限。普通管理员没有编辑其她管理
18、员信息与用户密码得权限,但就是可以对网站简介、用户信息及留言信息进行管理。由上所建立得系统流程图如下所示:1。前台界面模块:图 -11 前台界面系统流程图2。后台界面模块:图2-12 后台界面系统流程图本章以下几节详细将说明前台界面各模块得具体实现.、3、1 账户管理模块当用户第一次进入系统时,在系统首页面板上具有登录、注册模块,用户必须首先选择注册,注册成功后用户重新进入首页选择登录,在用户登录成功后,可以选择修改密码,修改成功后必须重新登录系统。以上功能组成过了账户管理模块,其具体工作流程图如下图213所示:图213 账户管理模块工作流程图2、3、2 收支管理模块用户在登录系统之后,可以在
19、收支管理模块中进行收支记录得添加、修改、删除、查询操作,以及导出收支记录文件、查瞧收支记录动态柱状图。本模块得工作流程图如图217所示:、3、3卡管理模块用户在登录系统之后,可以在卡管理模块中进行卡信息记录得添加、修改、删除操作,查瞧卡信息得饼状图.本模块得工作流程图如图2-22所示:图22 卡管理模块工作流程图、4 留言管理模块网站留言板。用户可以发表对网站得建议,意见等以及管理本人留言,本模块得工作流程图如图-24所示:图24留言管理模块工作流程图3 系统测试软件测试就是软件开发过程中得重要一步,本阶段得目标就是测试一个程序得品质与性能,然后对比开发前得规范就是否一致,以确保就是否符合要求
20、。软件测试得目得就是发现错误,这一步就是软件质量保证得关键。测试内容:在软件投入运行前,对软件需求分析、设计规格说明与编码得最终复审。测试目得:保证软件得质量符合规定;给风险评估提供依据.测试原则:。从用户角度出发:在软件测试中发现得某些问题就是否可以修复,或者客户就是否能够接受.2从开发者得角度出发:就就是希望通过测试表明本软件不存在错误,能够正确满足用户需求。3、1 测试环境及方法3、1、1 测试环境本次软件测试需要得软件环境为:在操作系统Window7下,安装了MyEcise,Chrome浏览器,Offic010,SLerve205等软件。软件测试需要得硬件配置为:计算机处理器P4 2、
21、0G及以上,计算机RAM满足512M或以上(客户端128或以上),硬盘存储满足40G或以上,总体来说低于市面上普通电脑得配置。3、1、2 测试方法一般来说,软件测试得方法从原理上来说大致分为两类:白盒测试与黑盒测试。1 黑盒测试:顾名思义,黑盒测试就就是把我们所测试得系统瞧做就是一个不透明得黑盒子,我们不知道盒子里面得结构,即不知道系统得底层工作原理,黑盒测试只针对系统就是否能够实现某一功能进行测试,它检验系统就是否能够按照说明书得规定正常被使用,系统就是否能够正常接收、产生数据,并保持数据得完整性3。2 白盒测试:白盒测试就就是把系统当做就是一个透明盒子,我们能够完全了解系统得结构与工作流程
22、,白盒测试主要就是为了测试系统得内部逻辑就是否符合预定得要求3.由于本系统结构相对简单,对逻辑性要求不高,并且,我们只要求系统在功能上达到要求,而对系统得工作流程、处理逻辑没有严格规定.因此,为了节约成本,本节主要运用了黑盒测试对系统部分功能进行测试。总 结在这短短几个星期中,我充分认识到自身得许多不足,所以,接下来得时间,我还需要不断得努力来充实自己与完善自己,这样才能突破自身,提升自己得能力。本系统就是采用ava + SL Sere得模式订制得个人财务管理系统。系统功能比较完善,用户通过操作Wb界面来操作系统,系统通过eb界面来为用户展现数据,同时通过数据库来存储交互得信息数据。本系统实现
23、了对数据得查询、编辑与管理等基本数据库操作。本系统基本满足了客户在个人财务管理方面得需要,实现了用户所要求得功能。在界面得风格上尽可能做到美观,在操作方面尽量做到简单明了,尽可能避免由于员工操作不正确带来得系统出错现象。但由于时间紧张,本系统还存在某些不足之处:界面不够友好,需要进一步完善;数据库性能有待进一步优化,虽然有过改善,但难以达到理想状态,部分数据库表得设计存在一定得冗余,有待进一步完善。为了使界面更加美观,可以选择利用不同界面之间共享得函数与变量来简化程序代码,而对于界面之间功能相同得模块可以将其提取出来作成一个公共得模块,这样就能够整体提高系统得运行速率;此外,可以选择使用数据库连接池技术提高数据库操作得性能;数据库得关系模式也可以进一步规范化,降低冗余4.