还剩60页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
家庭财务管理系统的设计与实现作者姓名郑昕忻指导教师王刚单位名称东北大学专业名称计算机科学与技术东北大学2010年6月TheDesignandImplementationofFamilyFinancialManagementSystemByZhengXinxinSupervisor WangGangNortheasternUniversityJune2010毕业设计(论文)任务书毕业设计(论文)题目家庭财务管理系统的设计与实现设计论文的基本内容1了解项目开发背景,分析项目进度管理系统功能需求,研究其设计及实现技术2独立设计家庭财务管理管理系统总体结构,根据用户的具体需求,进行了家庭银行账号管理、收入支出信息管理、借贷信息管理及图表分析等模块功能设计与实现3总结归纳所完成的任务,弥补不足,以最短的时间用最少的投入实现项目的开发毕业设计(论文)专题部分题目 设计或论文专题的基本内容学生接受毕业设计(论文)题目日期 第 周指导教师签字年 月 日家庭财务管理系统的设计与实现摘要家庭财务管理系统就是我们常说的管理信息系统MIS(ManagementInformationSystem)中的一种,它是一个计算机软硬件资源以及数据库的人--机系统随着信息技术、计算机技术的发展,在社会各个领域都已近离不开信息系统的支持家庭财务管理系统针对个人用户及家庭,是一个单用系统,它提供全方位的财务数据统计、数据查询、数据打印,方便个人及家庭理财,做出正确的财务决策其开发的功能主要包括通过计算机管理个人及家庭财产,实现无纸化理财,通过查询分析,统计出各项数据,分析出生活中的浪费和节约的地方,通过强大的查询和检索高效的检索出数据,提高办事效率作为一名即将离开校园马上走上工作岗位的大学生,尤其在刚开始工作工资普遍不高的情况下,理财观念和财务决策尤为重要为自己量身订造一套适合自己的跟人理财系统则分外显得有意义与挑战收支类型设置即根据使用者实际情况设置收入和支出项目的名称,如收入类型有工资、补贴、股票收入等,反应经济来源的详细情况如支出类型有电话费、伙食、房租、水电费,详细反映资金的花费去向,花费时间,发生金额等关键词财务管理系统;面向对象编程;财务决策;个人理财TheDesignandImplementationofFamilyFinancialManagementSystemAbstractFamilyFinancialManagementsystemMISManagementInformationSystemwhichthemanagementsystemisweoftensaidthecenteronekind.Itisacomputersoftwareandhardwareresourceaswellasthedatabaseperson--machinesystem.Alongwiththeinformationtechnologyandthecomputertechnologydevelopmentallalreadycouldnotleaveinthesocialvariousdomainstheinformationsystemsupport.Individualfinancialcontrolsysteminviewofindividualuserdesignisasingleusersystemitprovidestheomni-directionalfinancialdatastatisticsthedatainquirythedataprintingfacilitatespersonallymanagesfinancesmakesthecorrectfinancialdecision-making.Itsdevelopmentfunctionmainlyincludes:Throughthecomputermanagementfinancesthroughtheinquiryanalysiscountseachdataanalysesthewasteandthefrugalplaceindailylifeexaminesthehighlyeffectiveropethroughtheformidableinquiryandtheropetopickoutthedataenhancesthemanagementefficiency.Soonleavesastheuniversitystudentwiththecampusstepontotheworkpostimmediately.Especiallyjuststartingtoworkthewagesisgenerallynotinhighsituation.Personalfinancialmanagementandthefinancialdecision--makingespeciallyisveryimportant.Tailoredforyouthefamilyfinancialsystemparticularyappearshasthesignificanceandthechallenges.Revenueandexpendituretypeestablishment:Namelyactsaccordingtotheuseractualsituationestablishmentincomeandthedisbursementprojectnameiftheincometypeincludes:Wagessubsidestockincomeandsoonreflectionsourceofincomedetailedsituation.Ifthedisbursementtypeincludes:Thetelephonebillthemealstheshoppingtherentandsoonindetailreflectedthefundtheexpenditurewhereaboutsspendsthetimehastheamountandsoon.Keywords:thefinancialcontrolsystemtheobject--orientedprogrammingthefinancialdecision--makingpersonallymanagesfinances.目录TOC\o毕业设计(论文)任务书Ⅰ摘要IIabstractⅢ第1章绪论
21.1课题背景
21.2课题的现实意义
21.3管理信息系统概述
1.
3.1概述
21.
3.2管理信息系统的发展历史
21.
3.3管理信息系统的发展历史
21.
3.4管理信息系统开发方法介绍
41.4如何科学理财
61.5本产品所要达到的要求6第2章相关知识
92.1开发平台简介
92.2开发语言C#简介
92.3MySQL数据库简介
102.4系统开发理论介绍
112.
4.1结构化生命周期法简介
112.
4.2快速原型法简介
122.
4.3系统开发方法的选择13第3章需求分析
153.1可行性分析
153.
1.1经济可行性
153.
1.2技术可行性
153.
1.3操作可行性
163.2业务流程分析
163.3数据流程图
173.
3.1系统顶层图
173.
3.2一级细化图
183.
3.3二级细化图
193.4数据字典
193.
4.1数据流定义
203.
4.2数据存储描述
213.
4.3数据处理定义
223.5功能需求分析22第4章总体设计
254.1系统模块功能结构
264.3系统模块调用关系27第5章数据库设计
315.1概念模型设计
315.3数据库逻辑设计35第6章详细设计与实现
396.1系统总体流程图
396.2系统登录模块
426.3账户管理界面
436.4收支管理
446.5借贷管理45第7章测试设计
477.1测试的目标
477.2测试的方法
477.3测试过程
487.
3.1单元测试
487.
3.2组合测试
487.
3.3需求测试
487.
3.4系统测试
487.
3.5测试用例49第8章结论51参考文献53致谢55第1章绪论理财系统在强调管理,强调信息,强调经济效益的现代化社会中越来越普及,越来越重要而理财系统一直运用于企业单位,是体现企业竞争力,市场力和凝聚力的一个方面,可以说,没有一个符合企业状况的理财系统,企业就没有良好的发展前景现在,理财系统不再仅仅是企业所要具备的,小到一个家庭,也是必不可少的而这个家庭财务管理系统就是专门为了家庭而设计的,通过这个系统,我们可以便捷的记录每年每月每天的日常开销和收入,我们只需要点击鼠标,就可以计算出收支平衡情况,为家庭的理财提供帮助,有利于收支的良性发展
1.1课题背景近年来,计算机技术飞速发展几乎超出了人们的想象,硬件的更新换代速度更是以几何级数进行计算机在处理对象、处理方法上都发生了巨大的变化同时计算机科学的重要分支——数据库技术,也被越来越多的应用领域采用来存储和处理他们的信息资源计算机已经不再仅仅是科学研究的工具,它越来越多的影响到我们生活的诸多方面,越来越多的应用软件出现在了我们身边,给人们生活的方方面面都带来了极大地便利近年来随着国内外社会经济和科学技术的不断改革和发展,各种各样的开销与收入项目也越来越多,很多人对于日常生活账目的管理也越来越力不从心,日常生活财务管理已刻不容缓在大多数家庭里,由于计算机知识的缺乏,人们还采用手写记账的方法,这种管理方法存在诸多缺陷,如效率低下、保密性差,另外时间一长,将产生大量的冗余文件和数据,同样,这对于查找、更新和维护工作都带来了巨大的困难家庭理财系统就是通过计算机对人们日常收支进行管理,具有相关的收支情况查询和录入,以及有关数据的打印输出,通过计算机统计帮助人们从繁重的劳动中解脱出来,通过一些简单的输入操作,及时、准确的获得需要的信息
1.2课题的现实意义进入20世纪80年代末,随着计算机网络和通信技术的大力发展,企业管理信息系统进入网络化的发展时期世界发达国家已建立起了完善的先进的管理信息系统体系,在其社会经济发展领域中发挥着巨大的作用我国的管理信息系统大发展是在80年代末90年代初,国家相继建立起了“金卡”、“金关”、“金桥”工程,多数企事业单位建立了局域网和广域网管理信息系统随着世界经济和我国经济逐步向知识经济迈进,无论是基于工业经济的管理信息系统,还是面向少数专家和管理人员的专家系统(ES)或决策支持系统(DSS),其处理对象和服务对象,自身的系统结构,处理能力,都有了进一步的发展开发一个适用于家庭几个人理财软件迎合了现代的家庭发展趋势,对居民合理分配家庭财产起到重要意义
1.3管理信息系统概述
1.
3.1概述管理信息系统(ManagementInformationSystem,简称MIS)是一个有管理人员和计算机组成的用以进行信息的收集、传输、加工、存储、维护和使用的系统它是一门综合了管理科学,管理理论,计算机科学的系统新边缘科学管理信息系统的物理组成
(1)计算机硬件系统包括主机、外部存储器、输入输出设备等
(2)计算机软件系统包括系统软件和应用软件两部分
(3)通信系统包括线路等通信设施和与计算机网络、数据通信有关的软件等
(4)工作人员包括系统分析师、程序设计员、维护人员、管理员、操作人员等
1.
3.2管理信息系统的发展历史管理信息系统的概念起源很早早在20世纪30年代,柏德就强调了决策在组织管理中的作用50年代,西蒙提出了管理依赖于信息和决策的概念同一时代维纳发表了控制论与管理,他把管理过程当成一个控制过程50年代计算机已用于会计工作,1958年盖尔写道管理将一汽奥迪的成本得到及时准确的信息,做到较好的控制这是数据处理一次已经出现管理信息系统已经逐步成为一个独立的学科分支,它继承了其他众多学科的理论、方法与应用技术,它与信息科学、系统科学、控制理论、运筹学、会计学、统计学、经济学、管理科学、计算机科学有着十分密切的联系同时管理新系统作为一种应用工具,又广泛的应用于工业、农业、交通、运输、文化、教育、卫生、体育以及各种社会经济活动的信息管理之中,并起着日益重要的作用,显示出强大的生命力随着社会的不断进步、科学技术快速发展以及生产力水平的逐步提高,管理工作显得越来越重要在现代管理科学体系中,管理信息系统已经被公认为是一门不可代替的崭新学科,目前,其正处在不断发展、逐步完善阶段计算机作为现代化的工具与手段应用于管理,已成为信息处理的重要工具计算机的应用范围越来越广,应用的功能由一般的数据处理发展为分析预测、支持决策,最终导致了管理信息系统的产生管理信息系统它是依赖于管理和科学技术的发展而形成的管理信息系统的三要素是系统的观点、数学的方法和计算机的应用,而这三点也正是管理现代化的标志管理信息系统是依赖于电子计算机的发展而发展的管理信息系统是与电子计算机同步发展的从原理上讲,任何部门或企业,无论有无计算机,均有信息的收集,加工和使用,因而都有管理信息系统但是,只是有了计算机以后管理信息系统的功能才能真正体现出来
1.
3.3管理信息系统的发展历史管理信息系统(MIS)是一门边缘科学,集管理科学、信息科学、系统科学、现代通信技术和计算机技术于一体1985年,管理信息系统创始人,明尼苏达大学卡尔森管理学院的著名教授戴维斯(Gordon,B.Davis)给出了一个具有代表性的定义“管理信息系统是一个利用计算机硬件和软件,手工作业、分析、计划、控制和决策模型以及数据库的用户—机器系统它能够提供信息支持企业或组织运行、管理和决策功能”随着网络技术的出现,管理信息系统有了新的含义,基于网络的管理信息系统不断地出现,管理信息系统的概念模型也发生了相应的变化,许多学者对管理信息系统给出了新的定义例如劳顿认为“管理信息系统是一个基于计算机的信息系统,它通过手机、处理、存储和扩散信息,老支持组织的管理、决策、合作、控制、分析活动,并使之可视化”因此我们可以看出,管理信息系统具有几个基本含义
(1)管理信息系统不是一个单纯的软件系统,而是一个人—机系统,由人和机器协同工作管理信息系统在支持企业或组织的各项管理活动中,管理人员负责将基础数据及时的输入到计算机中,计算机则根据企业或组织中的各层管理人员的要求对基础数据进行加工处理,并将所得到的信息输出计算机不断地与最终用户进行着信息交换,但在对数据的人机共处理过程中又需要人的适当干预
(2)管理信息系统的管理过程就是对数据进行手机、存储、加工处理、传递,并产生信息的过程,因此数据是管理信息系统的灵魂管理信息系统运用了数据库的技术,对基础数据进行统一的规划、存储,供各层管理人员使用,从而实现了数据的一致和共享
(3)管理信息系统可以解决企业或组织所面临的问题例如,管理信息系统可以处理企业生产经营活动的全过程,可以解决组织中数据处理效率问题,也可以解决财务管理决策的过程等管理信息系统应具备如下几个功能
(1)数据处理功能呢数据处理时管理信息系统最基本的功能,它包括对各种类型数据的收集、加工处理、传递、存储等工作
(2)实测功能通过对数据的加工处理,可以随时了解各个部门的实际运行情况,如各生产车间今天生产的产品数量、销售部接受的订单等
(3)预测功能通过运用一定的数学方法和预测模型,对过去的数据进行分析,就可能对未来可能发生的情况进行预测,为高级管理人员进行管理决策提供依据
(4)控制功能通过信息的反馈可以对整个企业生产经营的各个部门、各个环节的运行情况进行监测、协调、控制,保证系统的正常运行
(5)辅助决策功能通过对数据的加工处理,可以快速的获取对决策有影响的信息,从而为合理的配置企业的各项资源做出最佳决策提供科学的依据目前,管理信息系统的应用已经非常广泛,随着计算机技术、网络技术和通信技术的发展,管理信息系统的功能也日趋完善,并朝着智能化、网络化、集成化的方向发展如办公自动化(OA)、电子商务(EC)、专家系统(ES)、计算机集成制造系统(CIMS)
1.
3.4管理信息系统开发方法介绍目前,常用的管理信息系统的开发方法有生命周期法、原型法和面向对象的开发方法下面仅对原型法和面向对象的开发方法进行简单的描述
(1)原型法原型法(PrototypingMethod)是20世纪80年代发展起来的,旨在改变生命周期法的缺点的一种系统开发方法1)原型法的基本思想首先根据用户的要求,由用户和开发者共同确定系统的基本要求和主要功能,利用系统快速生成工具,建立一个系统模型在此基础上与用户交流,将模型不断补充,修改完善,如此反复,最终直至用户和开发者都比较满意为止,就形成了一个相对稳定,较为理想的管理信息系统2)原型法的开发过程采用原型法开发管理信息系统可以分为如下几个阶段A、确定用户的基本需求由用户提出对新系统的基本要求,如功能、基本界面形式、所需的数据、应用范围、运行环境等,开发者根据这些信息估算出开发该系统所需的费用,并建立简明的系统模型B、开发初步的原型系统系统开发人员根据用户的要求建立原型系统,但该系统只是一个初步的、不成熟的系统,从系统的工作效率上看也是不完善的其主要的目的是为了描述开发者所理解的用户的基本需求C、修改、评价原型系统将建造好的原型系统交给用户,并投入试运行,用户将使用过程中发现的问题一一记录下来,并与开发人员进行交流开发人员针对这些问题不断地对系统进行修改、扩充与完善,直至用户满意为止D、形成最终的管理信息系统对用户满意的原型系统进行进一步的开发、不断补充、完善,最终形成一个使用的管理信息系统3)原型法的优缺点原型法的优点是开发周期短,费用较少,同时可以较有效地避免因开发者和用户的认识隔阂所产生的失败其缺点是系统开发缺乏统一的规划和开发标准,难以对系统的开发过程加以控制原型法一般适用于开发规模不大、不太复杂或需求经常发生变化的系统
(2)面向对象的开发方法面向对象(ObjectOriented)的技术于20世纪80年代兴起,随后广泛地应用于计算机技术的几乎所有领域面向对象的技术中最重要的概念是对象面向对象是基于问题对象的自底向上的一种系统开发方法在开发过程中分析和设计阶段独立于程序设计语言,信息系统模型设计好后,最终用具体的程序设计语言、数据库或硬件来实现面向对象法最主要的特点是以对象为基础,对象是分析问题和解决问题的核心1)面向对象法的开发过程面向对象法的开发过程一般分为四个阶段A、认识客观世界(如一个企业)中的对象以及行为,分别独立设计各个对象的实体B、分析对象之间的练习和相互之间所传递的信息,由此构造客观世界(企业)作对应的信息管理系统的模型C、由信息系统的模型转换成计算机软件系统的模型D、由计算机软件系统的模型在转化成一个现实系统2)面向对象法的优缺点面向对象法的优点是便于帮助分析者、设计者和用户清楚地表达抽象概念,互相进行交流;通过特定的软件工具模块,直接的完成了从对象的描述到软件体系结构之间的转换,避免了其它的方法在开发过程的客观世界描述和软件结构不一致和复杂性问题,便于系统开发简单、统一,开发周期短,费用低面向对象法的主要缺点与原型法一样,因此这种方法也不适用于开发打的、复杂的系统本系统在开发过程中具体是采用了原型法和面向对象两种方法相结合的开发思路,力求在开发过程中尽量吸收两种方法的长处,而克服它们的短处
1.4如何科学理财正确的理财观念非常的重要,科学理财方式选择将成为决定个人贫富差距的关键性因素真正的理财是因人而异的,因“财”制宜的理财方式的选择也因人而异在国内,有些人亲自进行股票、债券买卖,只有少部分人请理财机构代为理财而在国外大部分人是请经验丰富的理财专家或顾问来替他们理财、机制开源因为投资市场的变化和理财工具的复杂,是的理财专业知识和技能的要求也越来越高,更多人理智的选择了专家个人理财的核心是投资收益的最大化和个人资产分配合理化的集合理财服务通过充分利用各种理财工具(如现金、银行存款、股票、债券、基金、期货、房产、保险等),帮助您达到合理分配的目的、满足您对理财安全性、收益性等多样化要求
1.5本产品所要达到的要求目标系统应该达到以下要求
1.时间经济型优化逻辑设计与物理设计,是系统运行效率高,反应速度快
2.可靠性能连续准确的处理业务,有较强的容错能力
3.可理解性用户容易理解和使用该系统
4.可维护性和适应性系统易于修改、易于扩充、易于维护,能够适应业务不断发展变化的需要
5.可用性目标系统功能齐全,能够完全满足家庭理财的各种需求
6.安全保密性保证系统的物理安全、数据存储和存取的安全与密码、数据传输的安全与保密,锁好使用人员的授权管理第2章相关知识
2.1开发平台简介本系统的开发利用VS2005作为开发工具VS2005是一个具有完善开发工具的平台VS2005提供的工具适合各种水平层次无论是初学者还是有经验的团队,并适合各种不同的开发需求降低了开发的复杂度,其提供给开发者更加简便动态的.NETFramework基础解决方案,其中包括了windows应用程序开发、office开发、web应用开发、移动应用程序开发改进团队交流方式,VS2005为团队开发提供通道和完整的开发周期工具,从而增加了团队内部的交流与协作效率通过学习,熟悉和掌握C#.NET的使用方法,使用VS2005作为开发工具将是整个系统模块化设计变得更加简便系统采用MySQL作为开发数据库MySQL是一种客户机/服务器结构的关系数据库管理系统MySQL提供了许多易于使用的图形化工具和向导,其中最常用的服务管理器、企业管理器和查询分析器它们为创建和管理数据库带来了很大的方便
2.2开发语言C#简介在过去的二十年内,C和C++已经成为广泛的应用在商用软件的开发中的开发语言但是C和C++都提供了一些容易使开发者产生错误的特性,也可以说C和C++的灵活性是牺牲了开发效率如果和其他的开发语言相比(比如说VB),相同功能的C/C++软件通常会需要更长的开发周期正是由于C/C++开发的复杂性和需要较长的开发周期,所以许多C/C++开发人员都在寻找一种可以在功能和开发效率提高更多平衡的开发语言目前有一些开发语言通过牺牲C/C++语言的灵活性(一些必要的灵活性)来换取开发效率有些语言对开发人员产生了过多的限制(比如说限制使用底层控制代码)并且提供更少的通用命名能力(可能是指对变量,函数的引用能力)这些语言不能够轻易的与现存的系统相结合,并且不能够当前的WEB开发相结合一种合理的C/C++替代语言应该是能够提供对现存和潜在的平台上的高效开发提供有效和有力的支持并可以使WEB开发可以非常方便的与现存的应用开发相结合而且C/C++开发人员都倾向于在必要的时候使用底层代码在这个问题上微软的解决方案是推出一种命名为C#(发音为CSharp)的开发语言C#是一种先进,面向对象的语言,通过C#可以让开发人员快速的建立大范围的基于MS网络平台的应用,并且提供大量的开发工具和服务帮助开发人员开发基于计算和通信的各种应用由于C#是一种面向对象的开发语言,所以C#可以大范围的适用于高层商业应用和底层系统的开发即使是通过简单的C#构造也可以各种组件方便的转变为基于WEB的应用,并且能够通过Internet被各种系统或是其他开发语言所开发的应用调用即使抛开上面所提到的优点,C#也可以为C/C++开发人员提供快速的开发手段而不需要牺牲任何C/C++语言的特点/优点从继承角度来看,C#在更高层次上重新实现了C/C++,熟悉C/C++开发的人员可以很快的转变为C#开发人员目前的各种基于WEB应用的软件开发向传统的商业应用软件开发提出了挑战,开发者被组织起来开发具有更短开发周期的各种应用,并且需要能够提供更好的可修正性,而不是建立一个可以长久使用的软件系统C#的设计正是充分考虑了这些因素C#会帮助开发者通过更少的代码完成相同的功能,并且能够更好的避免错误发生新的开发模式意味着需要更好的利用现有的各种WEB标准,例如HTML,XML,SOAP(简单对象存取协议)现存的开发工具是在Internet出现前或是未得到充分应用前出现的,所以都不能很好的适应目前WEB技术的开发需要C#开发者可以方便的在微软网络平台上扩展自己的应用C#可以将任何组件转变为WEB服务,并且可以被运行于Internet上的任何平台的任何应用调用,重要的是C#对这一特性提供了内置的支持更重要的一点,WEB服务框架可以让任何WEB服务都看起来类似于C#的内置对象,所以可以让开发人员在开发过程中继续使用他们已经具备的面向对象的开发方法和技巧
2.3MySQL数据库简介数据库的使用
1.进入dos状态(记住命令行的要运行在mysql的安装目录下的bin目录的)
2.连接mysql输入mysql–hlocalhost–uroot–p 输入在安装时已设好的密码,就近入了mysql的命令编辑界面了
3.使用mysql的基本命令显示数据库showdatabases;使用数据库use数据库名;
4.建库 命令createdatabaseshujuku;
5.为数据库设置权限(用户和密码) 命令grantallprivilegesonshujuku.*toxin@localhostidentifiedby“034683”; 当你执行完这个命令以后,只要你再以用户名xin密码034683登录时你就只可以对shujuku这个数据库操作,这样避开使用root,对数据库的安全有很大帮助.
6.建表命令createtablebiaoidint8primarykeynamevarchar10;剩下来的与标准sqsl命令基本上是一样的
2.4系统开发理论介绍建立一个管理信息系统,是一项复杂的关键工程的实施近30多年来,软件工程发展成为性科学,至今已经成为IT产业的重要支柱一开始,人们往往是用手工作坊式的软件开发方法,靠个人的力量便携各种小型程序,但是随着计算机硬件技术的飞速发展,计算机软件在各个领域中的热作用日益突出,那种多年来被人们沿用的收工作方式的开发放啊,已经在软件产品质量、成本及开发时间等方面无法满足需求
2.
4.1结构化生命周期法简介结构化生命周期是一种传统的管理信息系统开发方法,其基本思想是吧整个系统开发过程分为若干个阶段,每个阶段进行着若干活动,每项活动引用一系列标准、规范、方法和技术,完成一个或多个任务,形成符合给定规范的产品采用机构化生命周期法开发管理信息系统是,应遵守的主要原则有
(1)用户参与原则
(2)“先逻辑后物理”的原则
(3)“自顶向下”的原则
(4)工作成果描述(主要指文档)标准化的原则其具体开发周期可分为以下四步
(一)系统规划
(二)系统开发
1、系统分析.系统初步调查.系统可行性研究.现行系统的详细调查.新系统逻辑方案的提出
2、系统设计.系统总体结构设计.系统总体功能设计.系统总体物理结构设计.系统详细设计.数据库设计.代码设计.输入输出设计
3、系统实施.程序设计.系统测试
(三)系统的运行及维护
(四)系统评价
2.
4.2快速原型法简介快速原型法是80年代发展起来的,旨在缩短开发周期,提高开发效率和用户对系统的满意程度其基本思想是在系统开发的初期,尽快架造出系统的原型,是用户能及早地运行这个系统原型,通过使用它、熟悉它,受到启发并取得经验,然后对系统的目标和功能提出更精确、具体的要求,研制人员据此逐渐修改和完善原型,使它满足用户的需求,最后完成系统的开发该方法大大条了系统开发效率,弥补了结构化生命周期法开发时间长的缺陷通常采用原型法需要以下四个阶段
(1)明确用户的基本需求
(2)研制系统的原型
(3)使用、评价系统原型
(4)修改和完善原型
2.
4.3系统开发方法的选择基于以上开发方法的优劣和本系统的实际情况,本系统总体上采用结构化生命周期法进行系统规划、系统分析和系统设计,但在系统实施阶段采用原型法系统规划,应根据组织的目标和发展战略以及管理信息系统建设的客观规律,并考虑到组织面临的内外部环境,科学地制定管理信息系统的发展战略和总体方案,合理安排系统建设的进程;它是管理信息系统(MIS)舍命周期的第一个阶段,是MIS的概念形成时期,这一阶段的主要目标,就是制定出MIS的长期发展方案,决定MIS在整个生命周期内的发展方向、规模和发展进程它的主要任务是制定MIS的发展战略、确定组织的主要信息需求,形成MIS的总体方案、制定系统建设的资源分配计划以计算机为主要手段的管理信息系统是企业的管理信息系统的一个组成部分它的建立应服从企业的整体目标和管理决策活动的需要为此,这个阶段主要任务是了解企业的战略目标和内外部环境,确定系统的总目标和主要功能,拟定总体方案,并从技术、经济、社会条件等方面论证技术方案的可行性,制定投资规划和开发计划,编写可行性报告系统分析,就是在管理信息系统开发的生命周期中系统分析阶段的各项活动和方法它的主要目标是在系统规划锁定的某个开发项目范围内明确系统开发的目标和用户信息需求,他提出逻辑方案系统分析在整个系统开发过程中,是要解决“做什么”的问题,需要解决哪些问题、要满足用户哪些具体的信息需求调查、分析清楚,从逻辑上或从功能需求上提出系统的方案,即“逻辑模型”第3章第4章需求分析
3.1可行性分析
3.
1.1经济可行性如今,随着计算机的大量普及,各种软件的开发成本越来越低,价格也越来越低本系统也是这样,开发成本较低,只是需要一台一般配置的计算机即可,该系统运行时占用计算机的资源也不多,但并不会因为开发成本的而造成系统功能性能的下降相反,随着计算机技术的发展,这种实用软件的性能日渐提高个人理财管理系统廉价的开发成本,能够为用户带来相当大的实惠和方便主要表现在
(1)本系统可以说是一个拥有多种实用功能的理财管理信息系统,它实现了家庭账号管理、收支管理、借贷管理、权限管理等多种功能,具有很大的实用性和方便性
(2)本系统运行可以大大提高用户对于财务管理的效率,减少不必要的人力和物力
(3)本系统还具有查询和统计功能,能够查询用户在一段特定时间内收入和支出情况,特别是支出情况,有时往往会让用户在月底吓一跳,大大超出预算,还弄不行出钱都花到哪里去了有了本系统,不仅用会对口袋里钱的去向一目了然,而且可以见见唔到一些心得,摸清哪些花费是必要的,哪些意外开支是可以避免的,哪笔开支时刻继续评估其必要性的由此可以得出,本系统在经济上是绝对具有可行性的
3.
1.2技术可行性本系统的开发利用VS2005作为开发工具VS2005是一个具有完善开发工具的平台VS2005提供的工具适合各种水平层次无论是初学者还是有经验的团队,并适合各种不同的开发需求降低了开发的复杂度,其提供给开发者更加简便动态的.NETFramework基础解决方案,其中包括了windows应用程序开发、office开发、web应用开发、移动应用程序开发改进团队交流方式,VS2005为团队开发提供通道和完整的开发周期工具,从而增加了团队内部的交流与协作效率通过学习,熟悉和掌握C#.NET的使用方法,使用VS2005作为开发工具将是整个系统模块化设计变得更加简便系统采用SQLSERVER2000作为开发数据库SQLSERVER2000是一种客户机/服务器结构的关系数据库管理系统SQLSERVER2000提供了许多易于使用的图形化工具和向导,其中最常用的服务管理器、企业管理器和查询分析器它们为创建和管理数据库带来了很大的方便在技术难度方面,有指导老师的知道、周围同学热心帮助,加上对很多相关文献的参考能够解决开发过程中所遇到的困难
3.
1.3操作可行性由于本系统管理对象比较明确,就是对于家庭财务中的账号、收支、借贷信息的管理,主要就是对数据库的操作,并且每个数据库内容具有较强的关联性,设计的过程也不复杂因此,整个软件的使用非常简便任何一个普通计算机用户都能很快的熟悉整个软件的使用并且本系统所耗费的资源非常小,任何家庭成员只需要在一般的电脑上面,就能够使用这个软件,简单、方便、会计的实现对财务信心进行管理
3.2业务流程分析系统业务流程是系统分析和描述现行系统的重要工具,是业务流程调查结果的详细描述,它反映了现行系统各机构的业务处理过程和它们之间的业务分工与联系,以及连接各机构的物流、信息流的传递和流通关系,体现了现行系统的界限、环境、输入、输出、处理和数据存储等内容符号名称实体处理业务流向存储图
3.1家庭财务管理系统业务流程图Fig
3.1Operationalflowchartoffamilyfinancialmanagementsystem
3.3数据流程图数据流程图(DataFlowDiagram,DFD)是一种能全面地描述系统逻辑结构模型的主要工具,它可以用少数几种符号综合地反映出信息在系统中的流动、处理和储存情况数据流的绘制是下一阶段设计的基础在管理信息系统的设计开发过程中,在对系统流程分析后,绘制出了数据流程图数据流图描述系统的逻辑模型,不涉及硬、软件,数据结果与文件组织,用图形描述及相关的注释表示系统的逻辑功能在对管理系统调研阶段的业务流程图进行分析的基础上,从系统的科学性、管理的合理性、实际运用的可行性角度出发,将信息处理功能和彼此之间的联系自顶向下、逐层分解,从逻辑上精确地描述新系统应具有的数据加工功能、数据输入、数据输出、数据存储及数据来源和去向(外部项)数据流图是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换数据流图描绘系统的逻辑模型,图中没有任何具体的物理元素,只是描绘信息在系统中流动和处理的情况因为数据流图是逻辑系统的图形表示,即使不是专业的计算机技术人员也容易理解,所以是极好的通信工具此外,设计数据流图只需考虑系统必须完成的基本逻辑功能,完全不需要考虑如何具体地实现这些功能,所以它也是软件设计的很好的出发点数据流程分析采用自顶向下逐层分解的方法,通过分析会置分层的数据流程图数据流程图由顶层图、一级细化图、二级细化图等一组图促成
3.
3.1系统顶层图在顶层途中,将系统视为由一个处理功能所构成的系统图
3.2家庭财务管理系统顶层图Fig.
3.2FamilyFinancialManagementSystemTOPmap
3.
3.2一级细化图一级细化图是对顶层图处理功能的分解与细化将系统划分为各个小模块,在对各个小模块进行数据流分析图
3.3家庭财务管理系统一级数据流图Fig.
3.3FamilyFinancialManagementSystemFirstrankdetailmap
3.
3.3二级细化图与一级细化图的作用类似,二级细化图是对一级细化图中各个处理功能的细化与分解图
3.4家庭理财政管理系统二级细化数据流程图Fig.
3.4FamilyFinancialManagementSystemSecondrankdetailmap
3.4数据字典数据字典(DataDictionary,DD)是“关于系统数据库的数据库”建立数据字典是为了对数据流程图上各个元素作出详细的定义和说明数据流程图配以数据字典,就可以从图形和文字两个方面对系统的逻辑模型进行描述,从而形成一个完整的说明数据字典的作用也正是在软件分析和设计的过程中给人提供关于数据的描述信息,作为分析阶段的工具以改进分析员和用户之间的通信,消除许多可能的误解,对开发人员则能避免许多麻烦的接口处理问题
3.
4.1数据流定义表
3.1顶层数据流定义表Tab
3.1toplayerdatastreamdefinitiontable表
3.2系统管理员输入权限数据流表Tab
3.2systemmanagersinputthejurisdictiondatastreamtable编号F
2.1名称管理员输入账号基本信息描述包括录入、修改、删除基本信息组成F
2.
1.
1、F
2.
1.
2、F
2.
1.3编号F
2.2名称管理员输入家庭收入支出基本信息描述包括录入、修改、删除基本信息组成F
2.
2.
1、F
2.
2.
2、F
2.
2.3编号F
2.3名称管理员输入家庭借贷基本信息描述包括录入、修改、删除基本信息组成F
2.
3.
1、F
2.
3.
2、F
2.
3.3编号F
2.4名称管理员输入权限管理基本信息描述包括录入、修改、删除基本信息组成F
2.
4.
1、F
2.
4.
2、F
2.
4.3表
3.3用户查看权限数据流表Tab
3.3userexaminethejurisdictiondatastreamtable表
3.4管理员查看权限数据流表Tab
3.4managersexaminethejurisdictiondatastreamtable编号F
4.1名称管理员查看家庭各种账号基本信息描述只能查看基本信息而不能修改数据组成账号基本信息编号F
4.2名称管理员查看收入支出基本信息描述只能查看基本信息而不能修改数据组成收入支出基本信息编号F
4.3名称管理员查看家庭各种借贷本信息描述只能查看基本信息而不能修改数据组成借贷基本信息编号F
4.4名称管理员查看权限基本信息描述只能查看基本信息而不能修改数据组成权限基本信息
3.
4.2数据存储描述表
3.5数据存储表Tab
3.5datastoragetable编号D1名称账号管理信息表描述存储账号基本信息组成表单字段编号D2名称收入支出管理信息表描述存储收入支出相关信息组成表单字段续编号D3名称借贷管理信息表描述存储借贷信息组成表单字段编号D4名称用户权限信息表描述存储权限信息组成表单字段
3.
4.3数据处理定义表
3.6数据处理定义表Tab
3.6dataprocessingdefinitiontable名称家庭财务管理系统描述整个系统编号P组成P1+P2+P3+P4输入F1+F2输出F3+F4编号P1名称账号信息管理描述对家庭的各个账号进行管理组成P
1.1+P
1.2+P
1.3+P
1.4输入F
2.1输出F
3.1+F
4.1编号P2名称收入支出管理描述对家庭中各项收入支出进行管理组成P
2.1+P
2.2+P
2.3+P
2.4输入F
2.2输出F
3.2+F
4.2编号P3名称借贷信息管理描述对家庭中的各项借贷进行管理组成P
3.1+P
3.2+P
3.3+
3.4输入F
2.3输出F
3.3+F
4.3编号P4名称用户权限信息管理描述对用户权限信息进行管理组成P
4.1+P
4.2+P
4.3+P
4.4输入F
2.4输出F
4.
43.5功能需求分析本系统主要分为五个模块账号信息管理、收入支出信息管理、借贷信息管理、图表统计、权限管理这五个模块是整个系统的核心家庭理财内容看似简单,但要记录下每天的收入支出、借贷等内容还是比较繁琐的,若还是采用原始的手写记录,工作量很大,非常容易出现错误这五个模块已将主要的理财内容分门别类,能满足各个家庭的不同需求,并且极大地改善记录的工作效率本系统是一个家庭及个人进行财务管理的重要依据,系统数据来源一定要具有可靠性系统应具有备份和恢复功能,以防止由于系统崩溃或存储介质损坏等原因造成数据的永久丢失;另外,不同的用户应有不同的权限,对数据库的许可操作不同,一般用户不能对数据进行修改、删除、插入等操作要对已经得到的数据进行很好的保管,防止数据被恶意篡改通过本系统用户能够了解到各自家庭在日常生活中的日常收入支出、借贷的详细信息,及各个银行账户的具体信息同时也能够提高个人理财的效率同时由于财务信息对于一个家庭是较为隐秘的信息,所以该系统在保密性上有较高的要求同时为了统一财务信息的输入,所以只有具有一定权限的管理员级用户才能往系统中写入信息,其他一般用户只能查看本权限范围内的信息、数据同样系统为了满足用户不同的需求,本系统既能够进行单条件查询,也能够实现多条件查询,是一个多功能的通用查询系统
(1)账户管理描述管理用户的银行账户的详细资料,使用户详细得掌握自己所有的银行账户信息输入开户银行名称、账号、卡号、开户时间、开户金额、币种、存款类型信息处理简历账号管理表格,将依次输入的信息记录在表格的一行上同时可以将信息汇总,输出图表分析输出按用户指定时间段(若无时间段时,默认情况按开户时间先后顺序)显示表格中的每行记录
(2)收入支出管理描述收入支出管理表示用户及时的了解自己的收入和支出情况,可以让用户合理的管理自己的收支收入收入来源、收入金额、收入时间、支出原因、支出金额、支出时间信息处理简历收入支出管理表格,加一次输入的信息记录在表格的一行上同时可以将信息汇总,输出图表分析输出按用户指定时间段(若无指定时间段,默认情况按开户时间先后顺序)显示表格中的每行记录
(3)借贷管理描述记录用户的借贷情况,备查输入分为借出和借入两个方面借出包含借出对象、对象联系方式、借出金额、借贷开始时间和结束时间借入包含被借对象、对象联系方式、借入金额、借贷开始时间和结束时间信息处理建立借贷管理表格,将一次输入的信息记录在表格的一行上同时可以将信息汇总,输出图表分析输出按用户指定时间段(若无指定时间段时,默认情况按开户时间先后顺序)显示表格中的每行记录
(4)权限管理权限管理以为业务逻辑提供服务为目标权限管理的设计目的,是基于维护系统管理账户,提供权限调整、删除功能,提供系统管理账户的创建、角色指定、账户禁用的需要通过数据库中建的属性表,可以分辨管理员和其他人员的识别,所以本系统具有很强的保密功能
(5)统计描述综合各种表单信息,提供账户、收入支出、借贷统计数据输入账户管理表,收支管理表,接待管理表,三张表的信息信息处理统计账户管理表和收支管理表中的金额综述,计算收支差额,回执资金流动走势图输出以表的形式列出当前用户的银行账户资金总额,指定时间段的收入总额和支出总额,收支差额画出资金流动走势图第5章总体设计系统设计又称为物理设计,是开发管理信息系统的第二阶段,系统设计通常可分为两个阶段进行首先是总体设计,其任务式设计系统的框架和概貌,并向用户做详细报告得到确认,在此基础上进行第二阶段——详细设计,这两部分工作是相互联系的,需要交叉进行系统的总体设计任务是从系统的总体目标出发,根据系统分析的逻辑模型设计应用软件系统物理结构系统物理结构模型必须符合逻辑模型,能够完成逻辑模型所规定的信息处理功能,这是物理设计的基本要求决定软件系统是否具有可修改性的是系统的物理模型结构与此同时,设计时需要充分考虑到经济、技术和运行环境等方面的条件,确定系统的总体结构和系统各组成部分的技术方案,合理选择计算机的通信的软、硬件设备,提出系统的实施计划,确保总体目标的实现系统是否具有可修改性与其结构有着密切联系1974年7月美国的W.Stevens等首次提出“结构化设计”的构想,成为系统总体设计的基本思想其要点如下1模块化模块是结构化系统的基本要素,是数据说明可执行语句等程序对象的集合,它是单独命名而且可通过名字来访问模块化就是把程序划分成若干个模块,每个模块完成一个子功能,且模块之间的联系应尽量减少把这些模块集中起来组成一个整体,可以完成指定的功能满足部题的要求
(2)自顶向下,逐步求精系统划分模块的工作按层次进行,即先把整个系统划分为若干个模块,每个模块再划分为若干个更小的模块,知道最底层的模块是功能相对独立、不能再分解为止
(3)上层模块分解为下层模块的三种结构形式上层模块分解为下层模块,有三种基本的结构形式顺序结构、分支结构、循环结构不管一个系统有多么复杂,模块间的关系都是这三中关系组合
5.1系统模块功能结构层次图并不严格表示模块的调用顺序,利用模块说明书得到模块调用时传递的信息,由层次图导出结构图的过程可以导出作为检查设计正确性和评价模块独立性的好方法图
4.1家庭理财管理系统HIPO图Fig.
4.1FamilyFinancialManagementSystemHIPOmap
4.3系统模块调用关系IPO是指结构化设计中变换型结构的输入、加工、输出,IPO图是对每个模块进行详细设计的工具IPO图描述分层图中每一个模块的输入、输出关系、处理内容、本模块的内部数据和模块的调用关系,是系统设计的重要成果,是系统实施阶段编程序设计任务书和程序设计的出发点和依据本系统的模块设计严格参照HIPO图,具体设计请参见下图图
4.2总体模块调用图Fig
4.2overallmoduletransferchart图
4.3账号信息管理模块调用图Fig
4.3accountinformationmanagementmoduletransferchart图
4.4收支信息管理总体模块调用图Figure
4.4revenueandexpenditureinformationmanagementmoduletransferchart图
4.5借贷信息管理模块调用图Figure
4.5borrowinginformationmanagementmoduletransferchart图
4.6权限信息管理模块调用图Figure
4.6jurisdictioninformationmanagementmoduletransferchart第6章数据库设计数据库设计是指在现有数据库管理系统上建立数据库的过程,它是管理信息系统的重要组成部分其设计内容是对于一个特定的环境,进行符合应用语义的逻辑设计,以及提供一个确定存贮结构和物理设计,建立实现系统目标,并能有效存取数据和数据模型
[1]在本系统的设计中,充分考虑到了管理系统数据繁杂,重复性很大,数据使用频繁因此本系统采用了一种能正确反映用户实现环境,能被现行系统接受,易于维护、效率高的数据管理方法
5.1概念模型设计
(1)账号实体图账号的属性主要包括户主、卡号、存折号、开户时间、开户银行、币种、账户类型、初始额
5.1账号实体属性图Fig.
5.1AccountentityandattributeE-Rmap
(2)收支实体图收支信息的属性包括创建日期,科目,收入金额,支出金额,备注图
5.2收支实体属性图Fig.
5.2BalanceofpaymentsentityandattributeE-R图
(3)借贷实体图借贷的属性包括姓名、日期、借入金额、借出金额、备注图
5.3借贷实属性图Fig.
5.3DebitentityandattributeE-R图
(4)用户权限实体图用户权限属性包括权限图
5.4用户权限实体属性图Fig.
5.4userauthorityentityandattributeE-R图〔5〕管理员实体图管理员属性包括编号、户名、密码图
5.5管理员实体属性图Fig.
5.5administerentityandattributeE-R图
(6)用户实体图工作人员的属性包括编号、用户名、密码图
5.6用户实体属性图Fig.
5.6userentityandattributeE-R图
(7)总体E-R图E-R图也即实体——联系图(EntityRelationshipDiagram),提供了表示实体型、属性和联系地方法,用来描述现实世界的概念模型图
5.7家庭财务管理系统总体E-R图Fig.
5.7FamilyFinancialManagementSystemgeneralE-R图
5.2关系模型设计关系模型是用二维表的形式表示实体和实体间联系的数据模型关系模式设计账号=序号+户主+卡号+存折号+开户时间+开户银行+币种+账户类型+初始额+备注收支=序号+收支人+收入金额+支出金额+初始金额+余额+收支科目+收支日期+备注借贷=序号+姓名+日期+借入金额+借出金额+备注管理员=编号+用户名+密码用户=编号+用户名+密码权限=密极+权限
5.3数据库逻辑设计
(1)账号基本信息表记录家庭中各个银行卡账户的详细信息,采用录入时序号为主键,,包括账户类型、存折号、卡号、初始金额、货币类型、户主名称、月、备注、开户日期等信息本项内容只有管理员有权有修改,其他用户只有查询的权限表
5.1账户基本信息表Tab.
5.1accountbasicinformationtable字段名数据类型长度主键描述Idinteger4是序号AccountTypestring10账户类型BankbookNumstring20存折号CardNumstring20卡号IniBalancedouble8初始金额MoneyTypestring8币种OwnerNamestring10户主名称RemainBalancedouble8余额Remarkstring50备注StartDateSystem.DateTime开户日期
(2)收支基本信息表具有记录家庭日常收入支出的基本信息,自动编号为主键,具有添加、查询、修改、删除等功能,可以安全阀变得管理家庭日常的收入支出,管理员有权限修改具体内容,其他用户只具有查询权限表
5.2收支基本信息表Tab.5-2balanceofpaymentsbasicinformationtable字段名数据类型长度主键描述Idinteger4是序号Ownerstring10收支人续InBalancedouble8收入金额OutBalancedouble8支出金额IniBalancedouble8初始金额Balancedouble8余额Typestring10收支科目DateSystem.DateTime发生日期Remarkstring50备注
(3)借贷基本信息表借贷基本信息表,可以记录家庭中借出和借入的信息,以自动编码为主键,包括借入或借出人姓名、日期、借入金额、借出金额、相关描述等等可以让用户方便直接的了解自身的借贷信息,为相应的财务分配提供依据表
5.3借贷基本信息表Tab.
5.3debitbasicinformationtable字段名数据类型长度主键描述Idinteger4是序号Namestring10姓名DateSystem.DateTime日期Lenddouble8借出金额Borrowdouble8借入金额Remarkstring50备注
(4)用户权限基本信息表系统下的用户依据用户角色的不同具有不同的权限,因此首先确定系统下的用户角色用户角色共有以下几种管理员、用户每个用户均具有某一种用户角色,并且根据用户角色的不同拥有不同的操作权限,根据其各自的密级和权限,用户在登录系统后可以进行不同的操作表
5.4用户权限基本信息表Tab.
5.4userauthoritybasicinformationtable字段名数据类型长度是否主键描述levelstring4密级authority1String4权限1表
5.5人员权限表单Tab
5.5Personneljurisdictionform管理员账号信息收支信息借贷信息权限信息图表统计查看修改用户账号信息收支信息借贷信息权限信息图表统计查看修改
(5)用户基本信息表用户的基本信息包括用户名,密码,这些东西需要管理员在新用户添加,不可以再登陆界面中添加,无形中就增强了系统的安全性表
5.6用户基本信息表Tab.
5.6userauthoritybasicinformationtable字段名数据类型长度主键描述Idinteger4是编号Userstring10用户名Passwordstring20密码
(6)管理员基本信息表管理员包括用户名和密码自动编号作为主键,通常管理员密码只设一个,但如果家庭中不同成员均需使用管理员权限则可增加表
5.7管理员基本信息表Tab.
5.7userauthoritybasicinformationtable字段名数据类型长度主键描述Idinteger4是编号Userstring10用户名Passwordstring20密码第6章详细设计与实现详细设计阶段的根本目标是在总体设计的基础上确定应该怎样具体地实现所要求的系统,经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序过程设计是详细设计阶段应该完成的主要任务,他应该在数据设计、体系结构设计和接口设计完成之后进行过程设计的任务还不是具体的编写程序,而是要设计出程序的“蓝图”,以后程序员将根据这个蓝图写出实际的程序代码,因此,过程设计的结果基本上决定了最终的程序代码的质量描述程序处理过程的工具成为程序设计的工具,它们可以分为图形、表格和语言三类本系统用程序流程图描述.程序流程图又称为程序框图,它是历史最悠久、使用最广泛的描述过程设计的方法程序流程图独立于任何一种程序设计语言,比较直观、清晰,易于学习掌握然而它也是用的最混乱的一种方法,它随意性和灵活性使它不可避免的存在着一些缺点
(1)由于程序流程图的贴点,它本身并不是逐步求精的好工具因为它使程序员容易过早的考虑程序的具体控制流程,而忽略了程序的全局结构;
(2)程序流程图中用箭头代表控制流,这样是程序员不受任何约束,可以完全不顾结构程序设计的精神,随意转移控制
(3)程序流程图在表示数据结构方面存在不足
6.1系统总体流程图当用户运行系统后,进入FormLogin.cs登陆界面,用户输入用户名和密码后,将信息与用户信息表中数据进行对照,若一致则判断其权限级,进入对应页面进入FormMain.cs系统主窗口,选择用户需要的功能模块银行账号管理、收支信息管理、借贷信息管理、用户权限管理(管理员特有)、图表统计选择之后进入相应界面,进而选择所需功能对财务进行管理与分析操作完成后,如果还需要用到其他功能,可在系统窗口工具栏“个人理财”一栏中选择所需功能模块如下为系统实现后的界面截图用户登陆界面图
6.1登陆界面图Fig.1debarkationcontactsurfacechart登陆后主菜单界面图
6.2主菜单界面Figure
6.2mainmenucontactsurface其余界面风格大同小异,只有小部分的功能选项不同,故以下仅列举银行账号信息管理主界面一项账号管理界面图
6.3账号管理界面Figure
6.3accountmanagementcontactsurface图
6.4家庭财务管理系统主程序流程图Fig.
6.4Systemmanagementmainprogramflowdiagram
6.2系统登录模块1)功能管理员登录到主页面,对整个管理系统实现全面管理2)描述用户登录信息的填写页面为FormLogin.cs,登录的验证页面为UserCollection.cs验证页面根据访问者填写的用户名,在数据库的用户信息表查找如果未找到对应记录,则将返回“该用户不存在”的提示如果找到,则进一步将访问者填写的密码与用户信息表中的记录进行比较,如果符合则登录成功,否则将返回“错误的密码”作为提示访问者登录成功后,会跳转到FormMain.cs系统主窗口,选择用户想要使用的模块工具本系统中的大部分页面是必须经过用户验证方能访问的,并且特定的用户只能访问自己权限范围内的页面这就是说,用户权限为工作人员的用户只能访问公文管理相关的页面,而不能进入档案管理相关的页面虽然页面上的各种链接均是在本功能模块范围内的页面跳转,用户不会因为点击链接而进入到不属于自己权限范围的页面3)程序流程图图
6.5登录信息验证流程图Fig
6.5Flowchartofinformationvalidateforentry
6.3账户管理界面账户管理模块实现了个个性行账户信息的添加、修改、删除和查询由于在修改和删除用户信息之前必须要先选中要修改和删除的数据,因此,界面上方提供了一个“给我筛”的控件,帮助用户快速的找到所需要的数据而对用户信息的修改和删除操作是在选中的基础上进行的账户管理界面流程图图6-6账户管理模块图Fig6-6accountmodulechart通过系统主窗口登陆FormAccountManage.cs账户管理窗口,若选择添加账号信息将会跳转到FormAddAccount.cs添加信息窗口,依照提示内容填入,信息既会添加至AccountCollection账户基本信息表中若选中账号项目,选择删除或修改,则会通过方法Remove或RemoveAt修改AccountList账户基本信息表中对应数据
6.4收支管理收支管理的主要四大功能是增加收入支出项、删除收入支出项、修改收入支出、筛选收入支出项收入支出项的添加会跳转到收支增加项页面,而当修改和删除收入支出信息是,需要先选中目标项同时为了方便用户查找,提供了筛选功能,能根据项目的添加时间来筛选收支项目收支管理流程图图
6.7收支管理模块图Fig
6.7balanceofpaymentsmodulechart通过系统主窗口登陆FormIncomeManage.cs账户管理窗口,若选择添加收支信息将会跳转到FormAddIncome.cs添加信息窗口,依照提示内容填入,信息既会添加至IncomeCollection账户基本信息表中若选中账号项目,选择删除或修改,则会通过方法Remove或RemoveAt修改IncomeList收支基本信息表中对应数据
6.5借贷管理借贷管理模块实现了借贷信息的添加、删除、修改统计、数据统计等功能,为用户更好的分配自己的资金提供了有力的依据借贷信息的修改和删除必须再选中的情况下操作同时考虑到借贷相对于账户信息、收入支出信息的特殊性,不提供筛选功能借贷信息管理流程图图
6.8借贷管理模块流程图Fig
6.8debitmoduleflowchart通过系统主窗口登陆FormDebitManage.cs账户管理窗口,若选择添加借贷信息将会跳转到FormAddDebit.cs添加信息窗口,依照提示内容填入,信息既会添加至DebitCollection基本信息表中若选中账号项目,选择删除或修改,则会通过方法Remove或RemoveAt修改DebitList收支基本信息表中对应数据第7章测试设计尽管在系统开发过程中采用了多种措施保证软件质量,但是在实际开发过程中还是不可避免地会产生差错,系统中通常可能隐藏着错误和缺陷,将不经过周密测试的系统投入运营,将会造成难以想象的后果,因此系统测试是系统开发过程中为保证软件质量必须进行的工作大量统计资料表明,系统测试的工作量往往占系统开发总工作量的40%以上因此,我们必须重视测试工作
[10]
7.1测试的目标软件测试是实际上是为了发现程序中的错误而执行程序的过程,简单来说,测试的目标是失败就是成功
[10]好的测试方案能尽可能发现迄今为止尚未发现的错误这一测试目标决定了测试方案的设计,换句话说,测试是为了尽量发现软件中存在的错误,而不是为了表明程序的正确还应该认识到,测试方案决不能证明程序是正确的即使经过了最严格的测试之后,仍然还可能有没有被发现的错误潜藏在程序中测试只能查出程序中的错误,不能证明程序中没有错误
7.2测试的方法测试任何产品都有两种方法黑盒(闭盒)测试和白盒(开盒)测试黑盒测试法是指把程序看成一个黑盒子,完全不考虑程序内部结构和处理过程也就是说,黑盒测试是在程序接口进行的测试,它只检查程序功能是否按照规格说明书的规定正常使用,程序是否能适当的接受输入数据提供正确的输出信息,并且保持外部信息(如数据库或文件)的完整性,因此,黑盒测试又称为功能测试与黑盒测试相反,还和测试法的前提是把程序看成装在一个透明的白盒子里,也就是完全了解程序的结构和处理过程这种方法按照程序内部的软件测试程序,检验程序中的每条通路是否都能按预定要求正确工作白盒测试又称为结构测试不论采用哪种测试方法,只要对每一种可能的情况都进行测试,就可以得到完全正确的程序,即穷尽测试对于实际程序而言,穷尽测试通常是不可能做到的
7.3测试过程
7.
3.1单元测试单元测试是在软件开发过程中要进行的最低级别的测试活动,在单元测试活动中,软件的独立单元将在与程序其他部分相隔离的情况下进行测试本系统在编码阶段便进行了单元测试,编写出的源程序代码通过了编译之后,根据详细设计的描述,对重要的执行通路进行了测试,以检查模块内部是否存在错误在这里,单元测试主要使用白盒测试技术,而且可以同时进行多个模块的测试总的来说,可以应用人工测试和计算机测试这两种不同类型的测试方法,完成单元测试工作这两种测试方法各有所长,互相补充
7.
3.2组合测试组合测试也称集成测试或子系统测试,通常采用自顶向下测试和自底向上测试两种测试方法组合测试是一种有效的测试用力生成技术,它假设本测系统中的缺陷往往由少数参数见得交互出发,所以可以使用较小规模的测试用例集完成高质量的软件测试组合测试的对象是指已经通过单元测试的模块,不是对零散模块进行单个测试,而是用系统化的方法装配和测试软件系统,是一个严格的过程,必须认真地进行,其计划的产生和单元模块测试的完成日期要协调起来
7.
3.3需求测试需求测试又称其为确认测试这是测试中很重要的一个环节.因为需求分析是在软件设计开发乃至软件测试中重要的依据.在实际的开发中,测试人员需要反过来反复分析需求分析中的内容,看看是否完成了所有的预期功能在本系统中,因为需求分析与系统测试都由我一人完成,所以在这一步,我没花费很多时间就轻松完成了
7.
3.4系统测试系统测试是对整体性能的测试,即把经过测试的子系统装配成一个完整的系统来测试,主要解决各子系统之间的数据通信和数据共享问题以及检测系统能否达到用户的实际要求,系统测试的依据是系统分析报告系统测试应在系统的整个范围内进行,这种测试不只对软件进行,而是对构成系统的硬、软件一起进行在这里,通过将系统在计算机上整体运行数次,由于以上的单元测试和组合测试打下了很好的基础,最终本系统实现了整体上的连贯运行,在运行过程中,都可正确实现应有功能,达到了预期的效果
7.
3.5测试用例以账号管理为例添加账号信息测试用例账号(序号、户主、卡号、存折号、开户时间、开户银行、币种、账户类型、初始额)表7-1 账号信息具体测试点与测试结果序号测试点前提条件输入与操作期望结果测试结果1用户名输入和密码任何字符sissi034683通过检测通过检测2用户名输入和密码任何字符sissi/提示缺密码,不能通过不能通过3用户名输入和密码任何字符/034683提示缺用户名,不能通过不能通过4户主任何字符sissi显示户主sissi5卡号数字sissiERROR不能通过6卡号数字123456显示卡号1234567卡号数字Sissi0603ERROR不能通过8开户银行任何字符CMB显示银行通过9初始额数字1000显示初始额10009初始额数字sissiERROR不能通过第8章结论本系统具有功能全面、易于日后程序更新、数据库管理容易、界面友好、操作方便等优点但是,由于个人能力和时间方面的限制,仍有很多不足例如由于对家庭理财管理系统的整个流程的了解还不够深入,许多功能还需要进一步完善,同样还有许多新功能需要重新考虑与添加;在所有模块中虽然有打印这一项,但却没有实现;在总体模块的设计上也有很多的功能没有能够实现,本系统现在只能满足家庭理财方面的一些基本功能,大体上来说只完成了一部分,因为理财不仅仅是管理还包括对家庭理财的一些预测因此,该系统还有很大的拓展空间本系统共有以下几个部分1登陆系统,通过mysql数据库,对输入信息和数据源信息进行处理,之后分辨出管理员和其他人员进行登陆2账号管理实现了对于家庭中多个不同多个账号的详细信息的管理收支信息及借贷信息,则让用户能够清楚的了解资金的流行,以便对自身的财务做出更好的规划3后台管理系统,实现系统信息管理功能权限信息管理实现用户权限信息管理功能后台管理的理念是宁可不灵活也严格,而且对于每一个操作对应一个用户和多个组是被允许的,每个用户可以属于多个组4对系统进行整体框架和流程的设计,按功能将系统划分为功能模块,对各个模块分别进行详细设计另外根据审计数据的形式设计数据的存储结构,包括数据库表和用例图5对系统进行详细设计和实现,设计系统的数据流程,根据数据流程完成程序流程的设计,实现系统各个模块的功能6对系统进行功能测试,根据运行情况对系统性能进行评价,分析系统运行结果参考文献桌面/论文模板/文献格式篇数大于30篇且含近三年五篇文献%201专著格式:序号.编著者.书名【M】出版地:出版社年代起止页码%202期刊论文格式:序号.作者.论文名称【J】期刊名称年度卷(期):起止页码%203学位论文格式:序号.作者.学位论文名称【D】发表地:学位授予单位年度%20例:
1.张艺.铸造工艺【M】北京:机械工业出版社19944-5%
202.张颖伟.一类大组合系统的容错控制【J】东北大学学报2000524:351-355%
203.周丽.挖掘机的优化【D】:沈阳:沈阳东北大学:2000张海藩.软件工程导论[M].第4版.北京:清华大学出版社,
2005.MichaelV.Mannino数据库设计、应用开发与管理[M].第2版北京电子工业出版社,2006王路,王改性,彭云海.VisualC#2005动态网站开发技术与实践[M].北京:电子工业出版社
2007.王石.精通VisualC#2005—语言基础、数据库系统开发、web开发[M],北京电子工业出版社,2007刘晓东.总体设计中的结构化系统分析方法[J].军队指挥自动化,199604KarliWatsonChrstianNagel.C#入门经典(第三版)[M]北京:清华大学出版社2006ChristianNagelBillEvjenJayGlynn.C#高级编程(第六版)[M]北京:清华大学出版社2008陈昊华,李承军,魏万水.管理信息系统通用查询器的设计与实现[J].计算机与现代化,200312严俊,蔡启明,齐祥阳.关系信息系统中的数据存取技术的选择[J].计算机与现代化,200211朱少民.全程软件测试[J].第1版.北京电子工业出版社,2007孙雅琪,宋颖,李莎莎.基于VB的家庭管理记账系统设计与实现[J].广西轻工业,201004蔡永昶.采用B/S结构的MIS的设计与实现[J].计算机与现代化,200606马骏,郑逢斌,沈夏炯.C#网络应用高级编程[M].北京人民邮电出版社,2006刘秋生、徐红梅等.数据库系统设计及其应用案例分析[J].第1版.南京东南大学出版社,2007JacquieBarker,GrantPalmer.BeginningC#Object[M]Alexpal.
2007.KarliWatson.BeginningC#2005Databases[M].JohnWileySons2006BillWagner. EffectiveC#[M].北京机械工业出版社,2005致谢本次毕业设计历时近三个月,最终在王刚老师和许多热情的同学帮助下顺利完成在此,我特别要感谢王刚老师,从选题到开题报告,从设计到论文定稿,都给了我很大的指点,他工作繁忙,却从不忽略检查我们设计的进展,帮我们解决存在着的问题,使我们在这个过程中不断进步我要忠心地感谢王老师,谢谢他对我的悉心关怀和耐心指导还要感谢所有帮助过我的同学,我的设计顺利完成离不开你们的帮助紧张而忙碌的毕业设计即将完成,我感到既高兴又骄傲,因为通过毕业设计我学到很多东西,更锻炼了我独立思考,敢于实践的能力这是我大学中最难忘的一段学习经历由于自身能力和时间的限制,本次设计中必然存在欠缺与疏漏之处,请各位老师批评指正四年本科的学习生活即将结束,四年中,在老师们的关心和指导之下,我学到了扎实的专业知识和做人的道理,在此我对老师们表示衷心的感谢,谢谢你们孜孜不倦的教诲,向你们致以崇高的敬意编号F1名字用户登录信息表描述用户只在登录模块输入自己的用户名和密码组成用户名,密码编号F2名字管理员信息描述本系统几乎所有信息都由管理员统一输入组成F
2.1F
2.2F
2.3F
2.4编号F4名称管理员查看信息描述管理员具有系统最高权限,查看各种系统信息组成F
4.1F
4.2F
4.3F
4.4编号F3名称用户查看信息描述用户可以查看家庭财务情况的各种信息组成F
3.1F
3.2F
3.3编号F
3.2名称用户查看收入支出基本信息描述只能查看基本信息而不能修改数据组成收入支出基本信息编号F
3.1名称用户查看账号基本信息描述只能查看基本信息而不能修改数据组成家庭财务账号基本信息编号F
3.3名称用户查看家庭借贷的基本信息描述只能查看基本信息而不能修改数据组成借贷基本信息编号F
3.4名称用户查看系统基本信息描述只能查看基本信息而不能修改数据组成系统基本信息家庭理财管理系统用户权限管理P4统计借贷信息管理P3收支信息管理P2账号信息管理P1公共人员设置管理员设置处理系统日志处理管理员权限处理借贷信息录入借贷查询处理借贷信息添加借贷信息删减账号信息添加账号信息删减账号信息录入账号查询处理各信息表录入图表输出处理收支信息录入收支信息删减收支信息添加收支查询处理IPO表系统家庭财务管理系统作者郑昕忻模块家庭财务管理系统编号P被调用模块无调用模块P1+P2+P3+P4输入F1+F2输出F3+F4处理对家庭财务信息的全面管理,包括银行账号管理、收入支出管理、借贷信息管理、图表统计、权限信息管理IPO表系统家庭财务管理系统作者郑昕忻模块账号信息管理编号P1被调用模块P调用模块P
1.1+P
1.2+P
1.3+P
1.4输入F
2.1输出F
3.1+F
4.1处理管理员对家庭银行账号信息的全面管理包括账号的增减、账号信息的查询,账号信息的修改等IPO表系统家庭财务管理系统作者郑昕忻模块收入支出管理编号P2被调用模块P调用模块P
2.1+P
2.2+P
2.3+P
2.4输入F
2.2输出F
3.2+F
4.2处理管理员对家庭的日常收支信息进行全面的管理包括收支项目的增减,收支项目查询,收支信息的修改、统计等IPO表系统家庭财务管理系统作者郑昕忻模块借贷信息管理编号P3被调用模块P调用模块P
3.1+P
3.2+P
3.3+P
3.4输入F
2.3输出F
3.3+F
4.3处理管理员对家庭的借贷信息进行全面的管理包括接待项目的增减,借贷项目查询,借贷信息的修改、统计等IPO表系统家庭财务管理系统作者郑昕忻模块权限组信息管理编号P4被调用模块P调用模块P
4.1+P
4.2+P
4.3+P
4.4输入F
2.4输出F
4.4处理管理员对权限组信息进行全面管理,包括公共人员设置、系统日志、管理员设置。