一、概述1、需求分析、调查分析随着人们生活水平的提高,我国大部分家庭的财产收入有了较大的增长。于此同时,家庭财产的收入、支出种类也变得多种多样,如何对家庭的财产(包括收支情况、固定资产、债务等)进行科学有效管理,节约开支并发挥资金的最大效益,是每个家庭需要考虑的问题。此外经济全球化和居民生活需求的变化以及计算机技术不断发展的今天,人们生活水平越来越高,财务管理也变得越来越重要,理财直接影响着人们的生活。由于本班是学信息管理相关专业的,所以我们想解决办法时自然会考虑到用管理信息系统解决,着手做之前我们小组首先对家庭进行调查和分析,调查结果和我们的初衷出入不大:针对以上的几个问题,本系统分为四大模块,分别是收入及支出的记账,收入支出的查询统计,总资产的统计,在线用户列表。2、管理上的可行性、技术上的可行性、经济上的可行性,可行性结论。管理上:角色和权限分明。氛围普通管理员和终极管理员,只有管理员(家庭成员)才能对财务及联系人员进行管理,并且只有终极管理员(一家只长)才能对家庭成员的进行修改。技术上:我们采用了PB+SQL2000技术,这些语言和工具我们都学过和经常使用,而对于这个功能比较简单的班务管理系统来说足以满足其需要了。经济上:一个小组开发自然不需要什么花费,成本低,而且系统占用空间非常小,在网上购买一个几兆的空间也花不了太多。完全在可以接受的范围内。二、系统分析1、系统可行性分析:“家庭财务管理信息系统”的主要目的是通过对家庭的收入、支出、存取款、固定资产、债务等进行科学管理,是家庭的财务更加准确、科学。这个系统能够解决长期以来家庭理财的不规范性,并使用户依据过去、当前的信息规划未来,为财政决策和管理做辅助。2、系统组织结构和功能结构分析:1)系统组织结构分析2)功能结构分析收入管理:所有管理员都能负责更新统计,记录家庭所有成员的管理员普通管理员终极管理员收入管理支出管理固定资产管理借入借出管理家庭成员管理联系人管理收入,并按时间顺序储存。支出管理:也是所有管理员都能负责更新,记录家庭成员每时每刻的花费,并按支出类型分类。总资产管理:每个家庭的财产不仅仅是收入,还包括一批固定资产,这对可以让家庭成员对总资产有所了解。用户管理:不仅是家庭联系人员的通讯录,还是家庭成员用户的管理,只有终极管理员(家长)可以执行。家庭理财系统功能模块图3、系统业务流程分析顶级流程图家庭理财系统记账管理理财工具查询与统计系统维护收入记录用户设置计算器留言日志收支总表物品借用固定资产数据管理支出记录收支管理子系统流程图用户登陆是否合法用户是否为管理员开始YN登入家庭管理系统,可做后台管理Y登入首页面查询or财产资料修改退出系统N总资产管理子系统流程图开始管理员操作操作处理更新信息维护信息资产信息表退出开始管理员操作操作处理添加收支修改收支删除公告公告信息表退出用户管理子系统流程图4、系统数据流程分析顶级数据流程图收支管理数据流程图开始管理员操作操作处理添加用户增加联系信息用户存档退出P1用户资料信息判定用户登陆信息系统判定信息登陆系统管理员总资产管理数据流程图D2-4更新后资产D2-3资产信息D2-2(处理请求)D2-1(处理请求)总资产存档P2.2判定操作处理方式资产管理子系统a管理请求P2.2.1管理原有资产资产管理子系统bP2.2.2管理变更后资产资产管理子系统c管理员D1-5改后收支D1-4新增收支D1-3(处理请求)D1-2(处理请求)D1-1(处理请求)收支信息存档P2.1判定操作处理方式收支管理子系统a管理请求P2.1.1添加收支信息公告管理子系统bP2.1.2删除收支信息公告管理子系统cP2.1.3修改收支信息公告管理子系统d管理员用户管理数据流程图5、数据字典1)数据项描述用户管理子系统数据项条目总资产管理子系统数据项条目数据项编号:I02-02数据项名称:资产编号别名:资产编码简述:某样资产的编号类型:字符型数据项编号:I02-01数据项名称:用户ID别名:用户帐号简述:家庭某位成员的帐号类型及宽度:字符型,2位取值范围:“01”-“10”管理请求D3-4用户信息D3-3联系人信息D3-2(处理请求)D3-1(处理请求)联系人信息存档P2.4判定操作处理方式用户管理子系统a添加联系人操作用户管理子系统bP2.3.2添加用户操作用户管理子系统cP2.3.1用户信息存档管理员收支管理子系统数据项条目数据项编号:I02-03数据项名称:收支存档编号别名:收支存档编码简述:某次收支记录的编码类型:字符型2)数据项描述总资产管理处理请求数据流编号:D1-1,1-2,1-3数据流名称:总资产管理处理请求简述:管理员对资产的管理方式(添加、修改、删除)处理请求数据流来源:管理员请求操作数据流去向:资产管理子系统数据流组成:操作编号+操作名称+系统对操作的响应用户资料管理处理请求数据流编号:D2-1,2-2数据流名称:用户资料管理处理请求简述:管理员对用户资料的管理方式(管理原有资料、更改资料处理)的处理请求数据流来源:管理员请求操作数据流去向:用户资料管理子系统数据流组成:操作编号+操作名称+系统对操作的响应收支管理处理请求数据流编号:D3-1,3-2数据流名称:收支管理处理请求简述:管理员对收支管理(收支班费、结算班费)处理方式的请求数据流来源:管理员请求操作数据流去向:收支管理子系统数据流组成:操作编号+操作名称+系统对操作的响应3)数据存储数据字典用户资料信息判定处理逻辑编号:P1处理逻辑名称:用户资料信息判定输入的数据流:用户输入的用户名、密码;用户资料表处理:通过用户资料表和用户输入的用户名、密码以及职位信息判定用户是否合法,是否为管理员输出的数据流:判定用户是否合法、是否为管理员的信息总资产信息判定处理逻辑编号:P2.2处理逻辑名称:判定操作处理方式输入的数据流:用户操作处理:通过用户操作判定用户处理方式是管理原有资产或是管理变更后的资产。输出的数据流:判定管理员操作方式的信息收支信息判定处理逻辑编号:P2.3处理逻辑名称:判定操作处理方式输入的数据流:用户操作处理:通过用户操作判定用户是要管理收支或是收支结算。输出的数据流:判定管理员管理方式的信息三、系统设计1、系统功能结构设计2、系统软硬件平台设计软件平台设计:采用windowsxp操作系统,运用pb+sqlserve结合开发系统。硬件平台设计:以个人计算机为服务器进行开发,对电脑硬件配置要求不高,主流计算机都可支持。3、系统信息处理流程的设计记账管理理财工具总资产系统维护添加收支记录用户设置计算器留言日志添加资产删除资产删除收支记录数据管理修改收支记录家庭理财系统登陆、注册用户资料修改新增的用户信息用户添加模块修改的用户信息用户修改模块用户删除模块用户资料主文件用户列表模块用户资料查看模块家庭用户列表用户详细资料用户管理信息系统流程图新增的收支记录收支添加模块修改的收支记录收支修改模块收支删除模块收支管理主文件收支列表模块收支查看模块收支列表收支详细内容收支管理信息系统流程图4、代码设计联系人代码的设计号码如0000000一般化ABCDEFGAB代表父亲认识的人01母亲认识的人02小孩认识的人03·····CD代表本地的01外地的02······EFG代表编号示例:0202103代表母亲认识的外地的编号为103的人5、输入输出设计新增的资产项目项目添加模块修改的资产项目项目修改模块项目删除模块资产项目主文件资产项目列表模块资产项目列表班费管理信息系统流程图登陆界面收入输入界面固定资产输入界面记事本输入输出设计查询输出计算机输出6、储存文件格式设计根据系统要求,采用sqlserver2000作为数据库,对系统各个功能设计了下面4个表,其结构如下。用于存储收入记录资料字段名数据类型长度索引能否重复能否为空描叙I_id自动编号-PK否否收入的唯一idI_name文本10是是收入名I_date文本20是是收入日期I_money文本10是是收入金额I_type文本2是是收入种类I_bankaccount文本5是是收入的银行I_remark文本100是是收入备注用于存储支出来记录资料字段名数据类型长度索引能否重复能否为空描叙O_id自动编号-PK否否支出的唯一idO_name文本10否否支出名O_date文本20是是支出日期O_money文本10是是支出金额O_type文本2是是支出种类O_bankaccount文本5是是支出的银行o_remark文本100是是支出备注用于存储总资产资料字段名数据类型长度索引能否重复能否为空描叙id自动编号-PK否否资产的唯一idName文本10是是姓名Buydate文本20是是购买日期assettype文本10是是Brand文本2是是品牌Buyprice文本5是是购买价格Nowprice文本20是是现在价格Remark备注100是是备注anum文本10是是数量用于存储联系人资料字段名数据类型长度索引能否重复能否为空描叙id自动编号-PK否否人员的唯一idname文本10是是姓名adress文本255FK是是地址phone文本15否是联系电话company文本100是是所在单位7、系统安全性设计系统的数据安全:数据库采用算sqlserver2000,安全系数较高。软件安全:pb连接数据库比较方便,独立运行,安全性相对较高。网络和系统运行安全:pb及sqlserver2000运行不需要网络,能在个人计算机上单独运行,不会受网络安全影响。系统实体安全:主流配置电脑都能运行,对硬件要求低,只需安装pb及sqlserver2000就可运行,对安全标准的要求不高。四、系统实施部分1、源程序代码:应用程序代码;//ProfilehuaSQLCA.DBMS=MSSMicrosoftSQLServerSQLCA.Database=huaSQLCA.ServerName=e4422a5a29384d6.SQLCA.LogId=huaSQLCA.AutoCommit=FalseSQLCA.DBParm=connect;open(denglu)登陆代码:intistringname,passwordname=trim(sle_1.text)password=trim(sle_2.text)selectcount(*)into:ifromuser_infolwherename=:nameandpaw=:password;ifi=1thenopen(w_cwglxt)close(denglu)elsemessagebox(提示,密码或用户名错误!)endif数据的插入:dw_1.settransobject(sqlca)dw_1.retrieve()dw_1.insertrow(0)dw_1.setfocus()dw_1.scrolltorow(dw_1.rowcount()+1)数据的删除:dw_1.deleterow(0)数据的保存:dw_1.update()数据的退出:close()orhalt查询:全部ifcbx_1.checked=truethendw_1.settransobject(sqlca)stringsqlsql=select*fromassortdw_1.setsqlselect(sql)dw_1.retrieve()endif模糊查找dw_1.setfilter(i_namelike'%+sle_1.text+%')dw_1.filter()注册新用户:insertuser_infol(id,name,paw)values(:sle_3.text,:sle_1.text,:sle_2.text);ifsqlca.sqlcode=0thenmessagebox(ok,success!)elseifsqlca.sqlcode=-1thenmessagebox(error,faile!)messagebox(debug,sqlca.sqlerrtext)endif2、模拟运行数据:收入表I_id内容日期金额形式银行备注1工资2009-6-2