1、软件工程课程设计个人财务管理系统摘 要此次课程设计在 Windows XP 平台上,以Delphi 7.0作为界面开发工具,SQL Server 作为数据库工具,分析设计了 “个人财务管理信息系统”。系统软件和对数据库操作和管理全部可在计算机上完成。现在计算机已走进千家万户,传统在纸上统计收入支出方法已经过时,大家需要一个能够在计算机统计自己收入支出信息软件,可是市场上财务管理软件大多数十面向企业,或是有专门用途,面向一般用户个人财务管理系统极难找到,在者无偿软件更是少之又少,为了满足一般用户需求,特开发此软件。 本系统功效简单,只适合对个人财务管理要求不高用户,能够完成收入支出金钱及物品统计
2、和查询操纵,但这些对一般用户还说应该够了,本系统操作简单,用户无需统计复杂命令,打开主机面就能够很轻易看出系统功效,在者,本软件为无偿产品,对于不愿花很多钱购置软件用户来说是个很好选择,本软件无需很高硬件配置,通常配置均可运行,占用系统资源少。本汇报中首先说明了该系统特点和业务需求,以后具体说明了系统业务步骤和系统开发步骤,关键介绍了系统各模块功效及相关功效具体实现。该系统功效完善、用户界面友好、运行稳定,可完成日常个人财务信息管理和维护。本汇报中首先说明了该系统业务需求,以后介绍了系统总体设计思绪和着重介绍了数据库表设计过程及说明可供研究此系统人员提供参考。关键词 管理信息系统;个人财务信息
3、管理系统;Delphi;SQL Server 第一章:绪论1.1课题背景 当今社会越来越着朝着信息化和数字化法发展,计算机应用领域使我们生活越来越方便和快捷,能够说我们每个人生活全部离不开计算机帮助了。越来越多个人应用软件成为了大家关键助手,也在潜移默化改变着我们生活。 伴随市场经济发展,中国居民对理财有着越来越高要求。理财,是每个家庭和个人所必需面正确问题。现在,相关企业会计制度逐步完善,而且针对企业财务软件和EPR(enterprise resource planning)系统也在飞速发展,但针对个人或家庭财务系统现在还是一段空白。 实际生活中常常要对个人各项财务收支进行管理,本课题目标就
4、是利用计算机对各项财务进行电子化管理,使我们理财愈加方便和理性化,提升我们生活质量和品位。课题意义 我们常常看到企业部分财务报表,这些报表关键是关注企业资产负债表和损益表。简单说,前者是反应这个企业有多少钱,是存量;后者,反应了企业在一定时间能赚到多少钱,是流量。 其实,对一个人或家庭财务情况,也是关注这两个方面。关注家里存多少钱,关注今年赚了多少钱,花了多少,借出什么等等。 要做到这些需要对大量数据做存放和计算,工作是相当复杂繁琐和枯燥,所以这些问题轻易被人忽略。我们纵然能够为生活中每一笔花销记账,不过对这么大量数据做分类处理确实是一个会令大多数人头疼问题,假如有一个个人理财软件理财软件对我
5、们日常财务进行那样繁琐数据处理和计算工作,相信能够让我们理财效率大大提升。这么一个软件不仅能够方便我们生活,更能够使我们对自己财务情况有一个清楚了解。 和此同时,这么一个软件开发和制作也是对我们大学学到多种知识进行一次综合利用一个好机会,是对我大学学习一个检验和实践。1.1.1 1.2 相关MIS管理信息系统(简称MIS)是在管理科学、系统科学、计算机科学等基础上发展起来综合性边缘科学。在二十一世纪信息高速发展时代中,管理信息系统含有很关键作用,它估计和辅助决议功效,即利用现代管理决议和支持。管理信息系统是一个由人、机(计算机)组成能进行管理信息搜集、传输、存放、加工、维护和使用系统。它能观察
6、企业或组织多种运动情况,利用过去数据估计未来;从全局出发辅助决议;利用信息控制企业或组织行为,帮助其实现长远计划目标。简言之,管理信息系统是一个以计算机为工具,含有数据处理、估计、控制和辅助决议功效信息系统。管理信息系统是一个人机系统,同时它又是一个一体化集成系统。管理信息系统是信息系统一个子系统,它以计算机技术、通讯技术和软件技术为技术基础,同时将现代管理理论、现代管理方法及各级管理人员融为一体,最终为某个组织整体管理和决议服务,是由人和计算机组成能进行管理信息搜集、传输、存放、加工、维护和使用系统。管理信息系统基础结构能够概括为四大部件,即信息源、信息处理器、信息用户和信息管理者。所以,一
7、个成功管理信息系统应该含有可靠硬件、实用软件、强有力现代化管理水平。具体讲,管理信息系统三大支柱是:计算机网络、数据库和现代化管理,这三打支柱称为管理信息系统扩展部件。第2章 可行性分析2.2.1 可行性分析当接收一个软件开发任务,就进入软件生命第一个阶段,即进行可行性研究。并不是全部问题全部含有简单处理措施,很多问题不能在预定规模之内处理。可行性分析就是在系统调查基础上,针对新系统开发是否含有必需性和可能性,对新系统开发从技术、经济、社会方面进行分析和研究,以避免投资失误,确保新系统开发成功。可行性研究目标就是用最小代价在尽可能短时间内确定问题是否能够处理。2.1.2 技术可行性依据用户提出
8、系统功效、性能及实现系统各项约束条件,依据新系统目标,来衡量所需技术是否含有。本系统关键采取数据库管理方法,服务器选择微软SQL Server数据库,她是它是现在能处理全部中小型系统最方便流行数据库,它能够处理大量数据,同时保持数据完整性并提供很多高级管理功效。它灵活性、安全性和易用性为数据库编程提供了良好条件。硬件方面,该系统短小精悍对赢家没有太大要求,只要能够运行windows xp就能够很好运行该软件。另外在划单操作中可用磁条来触发事件响应,这项技术也已经很成熟。2.1.3 操作可行性本系统采取用户界面交互方法,并有必需帮助信息,操作简单,用户只要含有简单应用计算机能力,不管学历,不管背
9、景,均能够使用本系统,用户界面上按钮功效明确,用户一看就能够了解怎么使用本系统,和本系统能够完成功效,所以本系统在操作上是可行。2.1.2 经济可行性估算新系统成本效益分析,其中包含估量项目开发成本,开发费用和以后运行、维护费用,估量新系统将取得效益,估算开发成本是否回高于项目预期全部经费。而且,分析系统开发是否会对其它产品或利润带来一定影响。本系统作为一个课程设计,没有必需考虑维护费用,和本系统可取得效益等问题。2.1.4 法律及社会效益方面可行性因为本系统只是一个课程设计,在图书馆查询相关资料所以不存在侵权等法律和社会影响方面问题,不存在侵权级对应法律问题。相关效益方面,本系统仅仅是一个课
10、程设计,只是为了提升自己分析,设计能力,而非为了社会效益而编写设计,所以社会效益方面也是可行。第3章 需求分析1.2 3.1 用户需求本系统是针对用户要求,使用计算机对自己日常资金和物品收入、支出和相关多种信息进行统计、修改、添加、删除等操作,并实现对信息进行统计和以文档形式输出操作而设计一个现代化个人财务管理软件。经过分析,本系统需要含有以下功效:1、能够实现个人财务管理方面各项功效,能成功对用户多种信息进行管理。2、实现查询、修改、删除、添加数据方便,数据稳定性和可靠性好。3、能够实现按日期查询和对库存数据进行按月统计和以文本形式输出。4、拥有良好人机交互界面。1.3 3.2 功效需求1.
11、3.1 系统业务需求本系统含有以下多个功效模块:用户登录模块、系统管理模块、现金管理模块、物品管理模块、统计模块。用户登录模块为每个用户分配账号密码使得个人财务信息含有隐私性,现金管理模块能有效管理用户现金,能够进行添加,查询,删除操作,物品管理模块能够添加物品借入,借出,买进,买出,和删除查询操作,统计模块使得用户能够查询用户某月金钱和物品统计信息,能够让用户对自己每个月或一段时间收支情况,系统管理模块能够让用户修改密码,进行关键数据备份和恢复。登陆功效对于个人财务管理系统,我们要求软件满足用户对个人财务隐私性管理,确保在用户以外其它人使用软件对其信息进行操作,所以要采取用户注册和登录制度,
12、确保用户对自己财务信息隐私管理。1.3.2 物品管理模块功效物品管理模块是用户对物品进行添加、删除、修改操作模块,提供用户对物品收入支出进行操作功效。1.3.3 现金管理模块功效现金管理模块是用户对现金进行添加、删除、修改操作模块,提供用户对现金收入支出进行操作功效,使适当用户统计需要修改时,能够方便添加和修改。1.3.4 统计管理模块提供用户对现金收支信息和物品收支信息进行统计输出功效。1.3.5 系统管理模块系统管理模块提供用户对用户个人信息管理和修改和对系统信息进行备份和恢复功效。1.3.6 系统技术需求稳定性:本系统为财务管理系统,多为查询、修改、删除、添加数据等操作,要求数据稳定性好
13、。可靠性:用户财务数据多比较关键,要求系统含有数据备份,数据恢复等性能。安全性:系统设计个人银行账号和密码保留,要求系统提供加密保留等安全方法,即要求系统有较高安全性能。1.3.7 数据流图3.3 数据字典名称:收支信息报表别名:描述:描述某日收支信息定义:收入报表=【收入|支出】+金额+原因+日期位置:显示给用户名称:物品信息报表别名:描述:描述某日物品收入/支出/借入/借出信息定义:物品信息报表=【借入|借出|买入|卖出】+名称+数量+日期+原因位置:显示给用户名称:收支统计报表别名:描述:描述某月收支收支信息定义:月收支信息=收入总额+支出总额+日期位置:显示给用途名称:物品统计报表别名
14、:描述:描述某月物品借入/借出/买入/卖出信息定义:物品统计报表:借入物品名称+数量+借出物品名称+数量+买入物品名称+数量+卖出物品名称+数量+日期位置:显示给用户3.3 状态转换图状态转换图模拟系统行为模型,把系统概括分为多个状态,并表示触发状态转换事件,因为该系统是医院内部使用小型系统故不用设置登录功效,打开系统自动初始化为等候状态,接收事件,并依据事件类型进入对应状4.2.1 ER 图数据库ER图以下所表示: 图4.2 ER 图其中用户编号是用户主键,每个用户全部有唯一编号,收入物资统计物品收入信息,其中收入类型物资类型包含物品和资金,支出物品资金包含物品和资金,用户和收入物资之间有收
15、入联络,其中收入编号是收入主键,收入类型包含买入、借入,收入,假如是金钱,金额就是金钱数量,备注就是对事件具体说明,支出联络同收入联络,支出类型包含:借出、卖出、支出,备注能够填写用途或原因说明。第四章:总体设计4.1:层次结构图把整个系统分为收支管理,物品管理,统计管理,系统管理四个模块,收支管理模块分为添加收入,添加支出,修改收入,修改支出,查询收支,删除收支6个模块,物品管理模块分为物品借入,物品借出,物品买入,物品卖出,物品查询,物品删除,统计管理模块分为物品统计信息,收支统计信息两个模块,收支管理模块分为修改密码,数据备份,数据恢复,系统说明,退出系统5个部分,每个模块完成功效能够从
16、名字上显著看出。层次从结构图以下所表示:个人财务管理收支管理物品管理统计管理物品借入物品借出物品买入物品卖出删除物品查询物品添 加 收 入添加支出修改收入修改支出删除收支查询收支系统管理收支信息物品信息修改密码系统说明数据备份数据恢复退出系统 图4.1 层次结构图4.2:数据库设计4.2.2 数据库表 序号字段汉字名字段英文名类型、宽度、精度取值约束空否默认值主键/外键1用户编号UserIDbigint否主键2用户名UserNamevarchar(50)少于50字符否3密码Passwordvarchar(50)少于50字符否表4.1用户表序号字段汉字名字段英文名类型、宽度、精度取值约束空否默认
17、值主键/外键1支出物资编号PayoutIDbigint否主键2用户编号UserIDbigint否外键3支出类型Paykindvarchar (50)否4支出物资类型payoutkingVarchar(50)否5支出金额PayAccountfloat否6支出时间PayTimedate否7备注Remarkvarchar(200)少于200字符表4.2 支出信息表序号字段汉字名字段英文名类型、宽度、精度取值约束空否默认值主键/外键1收入信息编号IncomeIDbigint否主键2用户编号UserIDbigint否外键3收入类型Inkindvarchar (50)否4收入物资类型PayinkindVa
18、rchar(50)否5收入金额InAccountfloat否6收入时间InTimedate否7备注Remarkvarchar(200)少于200字符表4.3 收入信息表第五章:具体设计5.1界面设计:一个好用户界面能够给用户一个好印象,甚至能够事半功倍,有时候,即使软件设计很好,但用户界面不符适用户操作习惯,也可能会让用户不满意,所以说,一个好用户界面是至关关键。本系统界面设计以下:主界面左侧有四个选项,分别对应层次图四个模块,分别为:用户收支管理,物品收支管理,统计查询,系统设置,每个选项下面还有对应多个子选项,完成对应添加、查询、修改、删除操作,右侧为正文部分,显示用户需要信息。用表单形式
19、显示出来。以下:金钱支出500 03 04卖衣服物品借出MP3 04 01 老王5.2:数据库查询设计输出显示关键是对数据库组合或单独查询得出结果,三个表用用户编号联络起来,在用户表中用户编号是主键,在收入表中和支出表中则是作为外键,三个表组合查询就能够查到想要全部信息。其中收入类型填写金钱收入,借入物品,买入物品:收入物资类型填写物品、金钱,支出类型填写金钱支出,物品借出,物品卖出;备注填写原因后用途。5.3登录界面数据步骤图图5.1 登录界面数据步骤图5.4 查询模块数据步骤图图5.2 查询模块数据步骤图结论个人财务管理信息系统,本质上是对数据库更新和检索。不知不觉一周课程设计就结束了,我
20、们小组有最开始对系统了解很模糊,我们在网上简明了解了个人财务管理工作步骤,并经过和王老师讨论初步了解了这个系统功效需求和较具体工作步骤,因为我们课设时间太短不能完全实现财务管理全部复杂步骤。经过这一周课程设计,我们对学过软件工程了解更深了,基础了解了整个软件设计过程,对数据流图设计过程愈加清楚,深入知道了需求分析阶段关键性,因为你不了解现实世界中业务步骤话,那你就不能用软件模拟这个业务步骤,整个软件设计就无从下手。其次假如你在需求分析阶段对系统功效了解错误,那你设计软件会完全失败。在设计过程中我也加深了对数据库相关知识了解,再设计数据库是提取实体联络过程就是对整个系统分析过程。有数据库向关系模
21、型映射完成后,将关系模型以二维表形式存放在计算机内部,就能够用Select语句实现检索和视图显示过程了。整个程序即使没有经过代码完全实现,不过整个撑血结构已经出现在我面前,只要经过利用一个熟练语言就能够完全实现以上全部功效,可见,软件工程这门课程在整个软件开发中关键意义。我们整个设计过程是对系统一点点加深了解过程我们经过讨论,对系统实现功效深入清楚,对模糊功效需求我们经过问老师,王老师,穆老师也给我们透彻分析解释。我们每个人全部经过课程设计对理论知识了解深入加深,也对学科间相互联络真正做到了学以致用。其次对搜集资料、查阅文件、方案制订等实践能力也得到了很好锻炼,促进了我对所学知识应用能力;同时
22、,发觉问题、分析归纳、综合比较逻辑分析能力、处理问题等能力也得到了很好提升。本课程设计不管是对软件工程了解还是对数据库了解全部上升了一个高度,让我们体会到了真正设计软件大致步骤,也增加对数据流图,状态转换图熟悉程度,为我们以后做毕业设计打好基础,也为以后从事软件行业打好基础,总而言之,软件工程课程设计收获了很多,也想了很多,很有意义。参考文件1 谢世亮.Visual C#.NET开发和技巧M. 北京:清华大学出版社,.5.2(美)内格尔,C#高级编程(第4版),清华大学出版社,出版10月.3(美)solid,SQLServer从入门和精通(应用技术基础),清华大学出版社,出版09月.4 吴晨,
23、ASP.NET+SQL Server-数据库开发和实例,清华大学出版社,出版7月.5李春葆,曾慧.SQL Server 学习和上机指导M. 北京:清华大学出版社,.6.6张曜,张青.ASP.NET函数实用手册M. 北京:冶金工业出版社,.12.7张华.Visual C#程序设计教程和上机指导M. 北京:清华大学出版,.12. 8(美)保罗ASP.NET 2.0经典教程C#篇人民邮电出版社,出版5月.9崔巍.数据库系统及应用M. 北京:高等教育出版社,.6.10陈钟.C#编程语言程序设计和开发M. 北京:清华大学出版社,.7. 11李勇平.ASP.NET Web应用开发教程M. 北京:北京期望电子出版社,.4.12杨帆.ASP.NET技术和应用M. 北京:高等教育出版社,.7.13东方华人.ASP.NET数据库开发M. 北京:清华大学出版社, .6. 14田原.ASP.NET程序设计教程M.北京:清华大学出版社, .6. 15明月创作室.ASP.NET出色变成百例M. 北京:人民邮电出版社,.5.