学生个人财务管理系统的设计与实现-论文(含任务书) - 图文

更新时间:2024-01-30 12:01:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

分类号 密级

中国地质大学(北京)

本 科 毕 业 设 计

题 目 学生个人财务管理系统的设计与实现

英文题目 Design and Realization of Students' Personally

Financial Management System

学生姓名 孙家萍 院(系) 人文经管学院 专 业 信息管理与信息系统 学 号 07508109 指导教师 安海忠 职 称 教 授

二O一二 年五月

中国地质大学(北京)本科毕业设计(论文)任务书

学生姓名 导师姓名 毕业设计(论学生个人财务管理系统的设计与实现 文)题目 毕业设计(论文)主要内容和要求: 内容: 1. 绪论。提出研究题目并阐述研究背景、目的及意义,对目前的研究现状进行综述。 2. 系统规划。了解系统需求,规划系统总体结构和可行性分析。 3. 系统分析。分析系统的业务流程及数据类,完成系统的业务流程图和数据流程图,确定系统的层次结构和功能模块。 4. 系统设计。完成数据表逻辑和存储结构的设计,用户界面输入输出的设计。 5. 系统实现。完成每一应用模块的程序设计、组装调试等工作。 6. 总结。总结本文的完成程度、不足之处及尚需继续深入研究的问题。 要求: 1. 设计选题要有意义,与信息管理与信息系统专业相关。 2. 系统功能结构合理,能实现并实施基本功能模块。 3. 格式正确无误,结构完整,语言连贯,表达清晰明确。 4. 于2012年6月5日前完成设计及答辩。 毕业设计(论文)主要参考资料: [1] J.D.Roth, 万婧.又要过冬,如何管理个人财务?[J].创业邦,2011.12:98. [2] 张宇铭.学生财务管理系统及其设计[J].苏州城建环保学院学报,第8卷第4期,1995.12:52. [3] 沈玮.小型家庭财务管理系统的设计与实现[J].电脑知识与技术,2011.09:6140-6141. [4] 颜瑜.民族地区家庭财务管理系统的设计与实现[D].电子科技大学,2009.04:61. [5] 郝俊寿,丁艳会.基于JSP技术的家庭财务管理系统设计与实现[J].福建电脑,2011.01:102. [6] 陈得友,刘远超.家庭财务管理系统[J].科技创新导报,2009.01:233. [7] 庞艳民,张阳.基于J2EE、J2ME技术网络个人财务管理系统[R].第九届中国Java技术及应用交流大会,2006.12:13-14. [8] 陈颂丽,李海良.基于MVC模式的个人财务管理系统的设计与实现[J].科技信息,2010.02:232. [9] 孙维伯,张立岩.基于MiniGUI的嵌入式个人财务管理系统[J].无线互联科技,2011.07:50 [10] 孙莉,程永生.最新个人财务软件性能与比较[J].电脑技术,1995.08:8. [11] 胡纲.个人财务软件MicrosoftMoneyPremium2004[J].个人电脑,2004.02:33. 毕业设计(论文)应完成的主要工作: 1. 阅读有关学生个人财务管理的著书、论文、期刊。 2. 收集有关学生个人财务管理的资料,并完成文献综述。 3. 翻译相关学生个人财务管理的外文文献。 4. 完成相关整理及相关图表的绘制,交初稿、中期检查表等,完成论文终稿及相关表格。 孙家萍 安海忠 班级 职称 078081 教授 专业 单位 信息管理与信息系统 人文经管学院

毕业设计(论文)进度安排: 序号 1 毕业设计(论文)各阶段内容 与导师沟通,确定论文题目 进行调研、查找相关资料,撰写文献综述、外文翻译 完成任务书、开题报告 撰写论文初稿 提交中期检查表、论文初稿 时间安排 2012年1月22日之前 备注 选题准备 2 2012年1月22日—2月13日 开题准备 3 4 5 6 2012年2月13日—20日 2012年2月21日—3月下旬 2012年4月上旬—5月上旬 开题答辩 中期检查 最终答辩 修改论文形成终稿,终期答辩 2011年5月中旬—6月5日 课题信息: 课题性质: 设计√ 论文 课题来源: 教学 科研 生产 其它√ 发出任务书日期: 指导教师签名: 年 月 日 教研室意见: 教研室主任签名: 年 月 日 学生签名:

摘要

摘 要

根据国外一项调查研究的结果显示,大学生普遍存在理财知识不足的现象。随着“后理财时代”的到来,个人理财的重要性日益凸现。传统的人工方式记录和管理自己的财务情况不仅不便于长期保存,还显露出越来越多的不便,已经不能满足人们对于理财的需求。许多软件研发人员开始着手于财务管理系统的开发。但目前,针对学生个人的财务管理系统处于稀少而且不易于使用的阶段。

本文采用结构化的生命周期法,“自顶向下”地完成系统的规划、分析和设计工作,然后“自底向上”地实现,利用Microsoft Visual Studio2008进行系统的设计与开发。系统规划,了解系统需求;系统分析,完成系统的业务流程图和数据流程图,确定系统的层次结构和功能模块;系统设计,完成数据表逻辑和存储结构的设计,用户界面输入输出的设计;系统实现,完成每一应用模块的程序设计、组装调试等工作。最终基本实现学生个人财务管理系统。

与传统手工式管理相比,本系统可以完成记账、财务查询、预算、统计分析、账户管理、债务提醒等功能,帮助学生更好的管理个人财务。

关键词:学生个人财务管理;系统设计与实现;Visual Studio

ABSTRACT

ABSTRACT

According to the results of a survey studied abroad, college students widespread lack knowledge of financial management. With the coming of post-financial times, the importance of personal finance is becoming more and more obvious. The traditionally manual records and management mode of their financial condition neither facilitate long-term preservation, nor show any convenience, and cannot satisfy people's financial needs. Many software research and development personnel began work on developing financial management system. However, at present, the individual students’ financial management system is still rare and is not easy to use.

This article uses structured life cycle, \work to complete the system, and then the \and development based on Microsoft Visual Studio2008. System planning, to understand the system requirements; system analysis, complete business process diagrams and data flow diagram to determine the level of structure and function module of the system; system design, complete data sheet logic and memory architecture design, user interface input and output design; system implementation, to complete the procedures for each application module design, assembly, debugging. Finally, implement the students' personally financial management system.

Compared with the traditional manual management, this system realize some basic functions, such as accounting, financial inquires, statistical analysis, budget, account management, debt reminder etc, to help students better manage their personal finance.

Keywords: students' personally financial management; system design and realization; Visual Studio

目录

目 录

1 绪论 ···························································································································· 1 1.1 系统背景············································································································ 1 1.2 系统的目的和目标···························································································· 1 1.3 学生的个人财务管理现状················································································ 3 2 系统规划 ···················································································································· 4 2.1 学生的个人财务管理功能需求········································································ 4 2.2 学生个人财务管理系统的流程········································································ 4 2.3 系统软、硬件相关技术总结············································································ 5 2.4 系统的可行性分析···························································································· 6

2.4.1 系统研究方法的可行性分析 ··································································· 6 2.4.2 技术的可行性分析 ··················································································· 7 2.4.3 经济可行性分析 ······················································································· 7 2.4.4 操作可行性分析 ······················································································· 7 2.4.5 法律及社会可行性分析 ··········································································· 8 3 系统分析 ···················································································································· 9 3.1 系统需求分析···································································································· 9

3.1.1 业务需求 ··································································································· 9 3.1.2 用户需求 ··································································································· 9 3.1.3 功能需求 ································································································· 10 3.1.4 稳定性及安全性需求 ············································································· 10 3.2 业务过程描述和分析······················································································ 11 3.3 数据分析及数据流程分析·············································································· 11

3.3.1 数据流程分析 ························································································· 11 3.3.2 数据分析 ································································································· 12 3.4 新系统功能结构······························································································ 13 4 系统设计 ·················································································································· 15 4.1 系统软件结构的设计······················································································ 15

目录

4.1.1 操作系统的选择 ····················································································· 15 4.1.2 数据库服务器系统软件的选择 ····························································· 15 4.1.3 应用服务器系统软件及开发工具的选择 ············································· 16 4.2 数据处理流程及数据类的设计······································································ 16 4.3 应用系统结构设计·························································································· 19 4.4 数据库设计······································································································ 20

4.4.1 数据库概念模型设计 ············································································· 20 4.4.2 数据库逻辑模型设计 ············································································· 21 4.5 基本表格设计·································································································· 22 4.6 编码设计·········································································································· 23 4.7 功能模块的处理过程设计·············································································· 23

4.7.1 用户登录模块处理过程设计 ································································· 23 4.7.2 财务管理功能模块处理过程设计 ························································· 24 4.8 输入输出设计·································································································· 25

4.8.1 输入设计 ································································································· 25 4.8.2 输出设计 ································································································· 25 5 系统实现 ·················································································································· 27 5.1 系统实现的软、硬件环境·············································································· 27 5.2 系统实现内容·································································································· 27

5.2.1 主要功能模块 ························································································· 27 5.2.2 其他功能模块 ························································································· 33 6 总结 ·························································································································· 36 致 谢·························································································································· 37 参考文献······················································································································ 38 附 录·························································································································· 39

中国地质大学(北京)学士学位论文

1

1.1 系统背景

绪论

根据国外一项调查研究的结果显示,大学生普遍存在理财知识不足的现象。随着“后理财时代”的到来,“你不理财,财不理你”成为了常挂在人们嘴边的一句口头弹。个人理财的重要性日益凸现。每个人都需要理财,都需要对自己的财务状况进行充分和合理的管理,才能让自己的生活过的更合理和更健康,才能对自己的财务有更好的规划,让自己的生活过的更加美好。理财,是每个家庭和个人所必须面对的问题。随着市场经济的发展,人们的生活水平不断提高,生活节奏越来越快,收入和支出也越来越趋于多样化,从而导致人们对于理财的要求也越来越高。传统的人工方式记录和管理自己的财务情况不仅不便于长期保存,还显露出越来越多的不便,已经不能满足人们对于理财的需求。

随着计算机的逐步普及,网络技术日益成熟,当今社会越来越朝着信息化和数字化法发展,计算机的应用使我们的生活越来越方便和快捷,可以说我们的每个人生活都离不开计算机的帮助了。越来越多的个人应用软件成为了人们重要的助手,也在潜移默化的改变着我们的生活。许多软件研发人员开始着手于财务管理系统的开发。目前,针对企业的财务软件以及ERP(enterprise resource planning)系统也在飞速发展,针对家庭的财务管理软件也有不少,但针对学生个人的财务管理系统目前还处于稀少而且不易于使用的阶段。

笔者在之前的认识实习和生产实习中学到了JAVA、C#等很多新的技术,再加上自己本科阶段已学的信息管理与信息系统的相关知识,开发出一个简单实用的能够管理学生个人财务收支的软件系统已经很有必要。这样可以使学生利用计算机对各项财务进行电子化的管理,减轻学生在个人财务统计和财务管理上的负担,并能够克服传统方法存在的多个缺点,使人们的理财更加方便和理性化,以提升人们生活的质量和生活品位。

1.2 系统的目的和目标

为学生专门设计和开发一个小型的财务管理系统——学生个人财务管理系统,来帮助学生进行个人财务收入和支出的记录和管理是十分必要的。本次学生

1

学生个人财务管理系统的设计与实现

个人财务管理系统的设计与实现基于以下几个方面:

(1)电子化记录和查询,提高学生个人财务管理的效率,克服传统账簿记录和查询带来的不便,减少纸张浪费,实现低碳环保。

(2)生成统计数据,方便学生全面宏观的掌握自己的收入、支出以及借入、借出等财务状况。

(3)预算管理,方便学生按照预算管理开销,有效的管理个人财务,避免成为月光族。

本系统属于一个小型的个人财务管理软件,主要针对学生个人的财务管理,能够满足个人或多个人的财务管理需求,提供用户管理、记账管理、财务查询、财务统计、财务预算等几个功能模块,旨在实现以下目标:

(1)系统界面简洁美观,易使用、易维护,能够适用于非计算机人员使用。能够完成对学生基本财务状况的存储和查询,并提供数据备份等系统维护功能,可以查找、修改、添加和删除学生个人财务信息。从而使学生面对一个庞大的学生财务数据库,可以全面、准确、有效的处理财务管理的各种信息,及时掌握财务信息的动态变化,更方便地管理个人财务。

(2)可扩展性和包容性强。系统的可扩展性应包括能接纳已有的系统和在今后系统软硬件扩展时,能有效地保护已有的投资,特别是在应用需求变化时,有一个较好的应用平台,能容易地加以调整。系统易于扩充升级,既能满足当前业务的需求,又能为今后的扩充留有空间。

(3)为学生提供良好方便的信息服务。在财务信息标准化、规范化的基础上,对信息进行合理的布局,在提供优质、高效的业务管理和事务处理的同时,能够按照用户要求进行高效率的计算统计任务,使学生可以在这个平台上了解个人财务信息,自主的按分类查找信息,并且可以提供统计信息,使学生及时真实的了解自己的收入、支出和债务情况。

(4)可靠运行,安全保密。可以使用网络加密保护,用来帮助尽可能地减少在公用网络和专用网络上传输敏感信息所带有的风险和权限限制等。因此系统建设应具有安全高效的通信机制、身份认证、权限检查,以解决财务管理系统的安全性、保密性问题,防止非法侵入和信息泄密。

2

中国地质大学(北京)学士学位论文

1.3 学生的个人财务管理现状

对于学生而言,学生的个人财务管理需要对多种信息进行处理和管理,笔者在对本学校的学生进行的个人财务管理的现状调查中发现,本校学生中虽然有使用计算机进行财务信息处理的,但是主要是对财务收支信息的录入和存档,并且只有流水记录,学生不能用它来实现对学生财务的管理。大部分理财的学生对于个人财务的管理还都是使用记事本等纸质介质的手工处理方式。这种方式有很大的不便,尤其在月度和学期统计时,需要分类逐项累加,并且将数据进行对比也不直观,同时还需要付出大量的工作时间,花费大量的时间成本。这样的财务信息管理方式数据信息处理工作量大,容易出错;数据繁多,容易丢失,且不易查找。更为重要的是,当前的一些管理方式,包括一些运用计算机来进行的管理方式,都不能达到一个很好地直观的管理效果,学生的一些财务数据不能得到很好的统计结果,影响对财务的反应和及时处理,借出或应还的财务也不能及时的被提醒。总的来说,当前的大部分学生财务管理缺乏系统、规范的信息管理手段。

3

学生个人财务管理系统的设计与实现

2 系统规划

2.1 学生的个人财务管理功能需求

本研究设计开发的学生个人财务管理系统应该满足以下需求:

(1)面向多用户进行财务收支和债务情况记录。此系统不同于以往的单机版的财务管理系统,该系统是多用户型的,面向的用户不仅仅是一个人,也可以是多个个人。

(2)能快速按分类查找财务信息。对于财务管理使用者来说,可以按照日、周、月、季度、年等时间段来查找各项财务收入、支出情况;也可以按照收入明细或支出明细,比如餐饮、衣服、饰品、生活用品、交通费用、通讯费用、医疗费用等条件快速查看学生财务信息。对于学生来讲,可以利用这项功能,快速查找自己的任何时间段、任何项目的收支情况,使其更加细致的掌握自己的财务状况,便于更好地管理自己的财务。

(3)能为财务管理提供决策资料。学生在准备财务预算计划时,首先会考虑到以往的财务使用状况。个人现在拥有多少财务,在以往年份中该月各项支出所占比例是多少,本年度物价上涨比例大概为多少,制定财务预算时还要考虑尽量将各项收入、支出所占比例加以对比,以便于财务管理。同时,学生由于各种非主流项目,如外出旅游、同学来访等,这此都需要加入学生的财务预算,并对其进行统一管理。这一系列的财务预算工作,如果按传统的处理方式不但繁琐而且效率低下,学生个人财务管理迫切的需求强大的数据库和管理系统,以帮助优化管理流程。

(4)学生个人财务管理系统的设计与实现要做到安全可靠。系统要求用户必须输入正确的用户名和密码才能进入系统;系统应该提供学生财务情况的基本登记;系统应提供学生在校期间财务收入和支出的详细情况登记。

另一方面,此系统的使用人员按照性别分为不同的类型,男生版面较简洁素雅、女生版面比较可爱多彩,不同的使用者可以按照自己的喜好设置不同的主题。

2.2 学生个人财务管理系统的流程

此系统主要流程为,同学登陆后可以查看基本财务信息,如现金数目、银行

4

中国地质大学(北京)学士学位论文

存款、当前预算等信息,也可以看到个人的借贷信息提醒;还可以进行货币、借贷等信息登记;而且可以对财务变动和明细进行查询,并生成统计数据,根据统计数据制定财务预算,填写财务管理心得。这些查询的流程都是通过系统的数据库来实现的。记账,是财务管理者将信息通过系统录入界面上传至系统数据库的过程;学生财务统计图是学生将财务记录查询信息提交以后,系统计算机对记录进行处理后将数据生成图表显示给用户,以便用户能更好地对财务进行管理。学生个人财务管理系统的流程图如图2-1所示。

图2-1 学生个人财务管理系统的流程图

2.3 系统软、硬件相关技术总结

本文所研究的学生个人财务管理系统的设计与开发遵循管理信息系统开发的结构化的生命周期法同时结合快速原型法,以达到既能使系统尽量满足用户的需求,又能较快完成系统的设计和开发的目标。考虑到个人使用的简单性和方便性,在不需要上网的情况下进行系统使用,系统采用C/S(客户/服务器)模式。开发工具采用笔者较为熟悉的Visual Studio 2008,开发语言选择简单实用面向对象的Microsoft Visual Basic,运用了SQLserver2000数据库。

本系统的软件开发语言为Visual Basic。Visual Basic是一种由微软公司开发

5

学生个人财务管理系统的设计与实现

的包含协助开发环境的事件驱动编程语言。从任何标准来说,VB都是世界上使用人数最多的语言——不仅是盛赞VB的开发者还是抱怨VB的开发者的数量。它源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。在 Visual Basic 程序设计中,对象中还可以包含头,手,腿,脚等部位,其中的每个部位又可以单独作为被研究的对象。在 Visual Basic 程序设计中,整个应用程序就是一个对象,应用程序中又包含着窗体(Frame),命令按钮(Command),菜单(Menu)等对象。Visual Basic 的最大的优势在于它的易用性,可以让经验丰富的VB程序员或是刚刚懂得皮毛的人都能用自己的方式快速开发程序。而且 VB 的程序可以非常简单地和数据库连接。比如利用控件可以绑定数据库,这样一来用VB写出的程序就可以掌握数据库的所有信息而不用写一行代码。程序员可以轻松的使用VB提供的组件快速建立一个应用程序。

本系统的软件开发环境采用的是Visual Studio2008,使用Visual Studio开发环境开发.net构架,因为.net是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在应用软件开发者的几乎全部的平台上。.net简单易学,使其在运行一些很平常的任务,如表单的提交、客户端的身份验证时变得非常的简单。

2.4 系统的可行性分析

2.4.1 系统研究方法的可行性分析

本研究采用以下的科学分析方法,研究出切实可行的系统方案: (1)运用个案研究法、资料收集法、实地考察法对中国地质大学(北京)的学生个人财务管理情况进行调查,采访部分同学,收集相关资料,了解学生个人财务管理所管理的内容、管理中存在的问题,分析其它潜在需求,对所做系统做出初步流程规划。

(2)采用文献法,将搜集到的资料(电子资料、书刊资料及学生提供的资料)进行针对性的选择、整理和分析,了解当前学生个人财务管理系统发展状况和待解决问题,在初步的研究成果基础上改进、创新,以求运用到实际学生个人财务管理中去。

(3)运用功能分析法,将系统运用到部分学生财务管理中,从实际应用中

6

中国地质大学(北京)学士学位论文

找到其功能中的优势与不足,也可以发现其他未知的需求,继而使之完善。

(4)不定时与指导老师和相关专业教授交流,听取他们的意见,从而设计出功能齐全而又切实可行的方案。

2.4.2 技术的可行性分析

根据学生提出的系统功能、性能及实现系统的各项约束条件,来衡量所需的技术是否具备。本系统主要采用数据库管理方法,服务器选用微软的SQL Server2000数据库,它是目前能处理所有中小型系统最方便的流行数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。硬件方面,该系统短小精悍对用户没有太大要求,只要能够运行windows xp就可以很好的运行该软件。

Microsoft SQL Server是一个分布式的关系型数据库管理系统,具有客户机/服务器体系结构,采用了Transact-sql的sql语言在客户机与服务器间传递客户机的请求与服务器的处理结果。它是一种应用广泛的数据库管理系统,具有许多显著的优点:易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比等。根据初步的系统流程分析,设计出系统结构。数据库设计针对学生个人财务管理系统平台的要求,对其ER图进行分析,得出几个基本的实体及其属性,运用SQLServer建立数据库。系统程序创建采用VB技术,设计创建登录系统界面和财务管理模块,如添加用户信息、财务管理界面。

2.4.3 经济可行性分析

经济可行性分析需要估算新系统的成本效益分析,其中包括估计项目开发的成本,开发费用和今后的运行、维护费用;估计新系统将获得的效益,估算开发成本是否回高于项目预期的全部经费。并且,分析系统开发是否会对其它产品或利润带来一定影响。本系统作为一个课程设计,没有必要考虑维护费用,以及本系统可获得的效益等问题。

2.4.4 操作可行性分析

本系统采用用户界面交互方式,操作简单,用户只要具备简单的应用计算机的能力,无论学历,无论背景,均可以使用本系统,用户界面上的按钮的功能明

7

学生个人财务管理系统的设计与实现

确,用户一看就可以了解怎么使用本系统,以及本系统能够完成的功能,因此本系统在操作上是可行的。

2.4.5 法律及社会可行性分析

由于本系统只是一个课程设计,在图书馆查询相关资料因此不存在侵权及相应的法律问题,不存在社会影响方面的问题。

学生个人财务管理系统是一个小型、简单的管理系统,操作方便、灵活,系统所采用的工作方式符合学生的日常习惯且开发和运行与国家的政策和法律不存在任何冲突和抵触之处,并且目前已有成功开发财务管理系统的先例,社会可行性高。

综上所述,笔者开发的学生个人财务管理系统,研究方法、经济、操作、技术和社会可行性都具备;本系统具有一定的创新点,能提高现有的学生个人财务管理效率,有很大的需求。本系统可以进行设计与开发。

8

中国地质大学(北京)学士学位论文

3

3.1 系统需求分析

系统分析

系统需求分析是介于系统分析和软件设计阶段之间的桥梁,是在可行性研究的基础上,将用户对系统的描述,通过开发人员的分析概括,抽象为完整的需求定义,再形成一系列文档的过程。系统需求分析旨在回答“系统做什么”的问题,以确保将来开发出来的软件产品能够真正满足用户的需要。一方面,需求分析以系统规格说明和项目规划作为分析活动的基本出发点,并从软件角度对它们进行检查与调整;另一方面,需求规格说明又是软件设计、实现、测试直至维护的主要基础。良好的分析活动有助于避免或尽早剔除早期错误,从而提高软件生产率,降低开发成本,改进软件质量。本次财务管理系统设计与实现从以下四个方面对系统需求进行了具体分析。

3.1.1 业务需求

记账业务:用户通过系统对个人财务的详细信息进行登记,包括收入、支出、借贷信息的日期、金额、结算账户、地点、类别、数量、说明等具体信息。

财务查询业务:用户通过系统对个人财务状况进行查询,可以通过日期、账户、类别、金额等进行筛选查询。

财务统计业务:用户通过输入日期、类别、金额、结算账户等关键词,利用系统生成对应的统计表,并且可以根据需求选择以饼状图或曲线图的方式直观的查看统计结果。

财务预算业务:用户通过系统查找相应历史时期的收支明细情况表,结合本期的消费需求及收支情况,制定下一时期的财务预算。

3.1.2 用户需求

(1)用户信息需求

收入信息:对收入编号、收入日期、存入账户、收入金额、收入说明等信息进行管理。

支出信息:对支出编号、支出日期、支出地点或单位、消费类别、消费数量、

9

学生个人财务管理系统的设计与实现

支出账户、消费金额、消费说明等信息进行管理。

借入信息:对借入编号、借入日期、存入账户、借入人物或单位、借入金额、借入说明、借入状态等信息进行管理。

借出信息:对借出编号、借出日期、借出账户、借出人物或单位、借出金额、借出说明、借出状态等信息进行管理。

预算信息:对用户编号、预算编号、预算名称、预算日期、预算金额、完成金额、完成日期、预算备注等信息进行管理。

用户信息:对用户编号、用户名、密码等信息进行管理。 (2)用户处理需求

对财务信息进行添加、查询、修改、删除。例如对收支时间、收支金额等信息进行查询和修改,了解用户在某一时期的具体收支状况等。

3.1.3 功能需求

用户管理功能:用户注册,对用户登录的身份验证,密码修改、基本信息修改及保存的功能。

添加功能:添加用户,用户添加收支和借贷明细情况、添加财务预算及预算心得等。

修改功能:用户信息修改、密码修改、收支和借贷明细修改、财务预算及心得的修改等。

删除功能:删除用户,用户删除收支和借贷明细情况、删除财务预算及预算心得等。

查询功能:用户对某一时间段收支和借贷明细情况的查询,对某一时期财务预算及心得等的查询。

3.1.4 稳定性及安全性需求

本系统要求具有较高的稳定性,不但能满足用户轻松进行财务管理的基本需求,也尽量做到简洁美观易于操作。安全性需求要求进入系统必须进行用户名及密码校验,同时用户还可定期或不定期地修改个人密码,确保其他一般用户不能获得该用户的财务信息。此外,系统应该具有备份个人财务信息的功能,防止数

10

中国地质大学(北京)学士学位论文

据丢失给用户带来财务损失。

3.2 业务过程描述和分析

管理信息系统系统分析的任务是在对现有信息系统进行详细调研的基础上,通过各种可能的方式充分描述现有系统的业务流程及所需处理的数据结构,并分析这些处理过程及数据结构的逻辑合理性,最后给出新系统的逻辑方案,即不考虑计算机及网络硬件的实体结构的系统功能结构、信息结构和准备采用的管理模型。

传统财务管理基本流程主要的问题在于当数据录入及处理量大增时在难度和出错率上会以级数递增,而其基本流程也正是学生个人财务管理系统设计的基本依据。

笔者通过对本校部分学生的访谈调研,并对该访谈结果进行分析处理,得出系统的业务流程图如图3-1所示。

图3-1 学生个人财务管理系统业务流程图

3.3 数据分析及数据流程分析

3.3.1 数据流程分析

数据流程分析是舍弃企业组织机构或个人而主要从数据的处理与流动过程描述和分析实际业务的数据动态处理模式,因此数据流程分析的工具——数据流

11

学生个人财务管理系统的设计与实现

程图中主要包括信息的流动、处理和存储。数据流程图是一种抽象工具,它是深入调查用户需求之后,从系统的科学性、管理的合理性、实际运动的可行性角度出发,将信息处理功能和彼此之间的联系自顶向下,逐层分解,从逻辑上精确地描述系统应具有的数据加工功能、数据输入、数据输出、数据存储及数据来源和去向等项目。

由学生个人财务管理系统基本业务流程图,可知系统的数据来源和去处,再而确定外部实体,然后划分出几个学生个人财务管理系统主要的信息管理功能:收支管理、借贷管理和预算管理。因为收支信息是制定预算和执行预算的前提,借贷信息是债务提醒和管理债务的基础,由此绘制出学生个人财务管理系统数据流程图如图3-2所示。

图3-2 学生个人财务管理系统数据流程图

3.3.2 数据分析

在数据流程图中,对每一项业务的数据处理过程进行了动态描述,但对数据流图中涉及的数据类(数据存储、数据流等),却未给出详细描述。用于描述数据类的工具称为数据字典,它是一种简化了的、用于规范化描述数据类主要结构及特性的表格工具。在系统分析阶段,数据字典描述的结果将构成系统设计阶段数据类设计及数据库设计的基础。

数据字典是对数据流图的解释和说明,包括数据类名称及该数据类的每一个数据项的数据项名、类型、取值范围、每一数据项的内容举例、备注等。本系统

12

中国地质大学(北京)学士学位论文

的全部数据字典详见系统设计部分。

3.4 新系统功能结构

按照功能需求把整个学生个人财务管理系统分为基本信息模块、记账模块、财务查询模块、财务统计模块、财务预算模块五个模块。系统的总体功能结构图如图3-3所示。

图3-3 学生个人财务管理系统的总体功能结构图

从系统总体功能结构看,系统的五个子系统又可以分为不同功能模块。 系统的功能模块分析:

(1)基本信息模块:该模块下设信息中心、资金账户、投资理财三个子模块。系统使用者可以通过基本信息模块中的信息中心了解自己目前各项财务信息的基本情况,包括目前为止本月收入和支出总额、本月预算余额、应还账款和在借资金情况;通过资金账户子模块了解现金、银行卡收支明细;通过投资理财子模块了解定期存款、信用卡、股票等财务状况。

(2)记账模块:记账模块下设货币、借贷、投资三个子模块。当发生货币收入或支出时,系统使用者可以通过记账模块下的货币子模块进行详细的记录,包括日期、类别、数量、地点、金额、结算账户、说明等;当发生资金借贷情况时,可以通过记账模块下的借贷子模块进行详细的记录,包括日期、地点、金额、结算账户、说明、状态等;当进行投资理财时,可以通过记账模块下的投资子模

13

学生个人财务管理系统的设计与实现

块进行详细的记录,包括投资理财种类、发生日期、结算账户、代码、名称、数量、价格、金额、费用、备注等。

(3)财务查询模块:财务查询模块下设账户变动查询、指定日期查询、指定科目查询三个子模块。账户变动查询可以根据账户名、日期、说明、备注等来查询某账户或全部账户的交易明细情况以及目前余额;指定日期查询可以根据时间查找某一特定日期或时间段的收支详情;指定科目查询可以根据具体科目,如交通费用、衣服、饰品、医疗费用等科目,来查询某一时期的开销情况或收入情况。

(4)财务统计模块:财务统计模块下设预算对比图、收入分布图、支出分布图、年度曲线图等子模块。预算对比图可以将某时间段的预算和实际支出进行详细对比,提供预算依据;收入分布图可以宏观的显示某时间段各项收入所占的比例;支出分布图可以直观的显示某时间段各项支出所占的比例;年度曲线图可以按不同科目显示某一年中收支走势。

(5)财务预算模块:财务预算模块下设历史信息表、预算分配表、财务管理心得三个子模块。财务预算模块下的历史信息表可以显示以往详细的交易信息,为预算提供相应数据和比例;预算分配表可以用来制定当前的财务预算计划;财务管理心得用来记录自己的体会,如上月开销太大这月需节俭、不要乱买不需要的东西等。

14

中国地质大学(北京)学士学位论文

4 系统设计

在系统分析阶段,明确了学生个人财务管理系统的功能结构及信息结构,也就是系统的逻辑模型,对系统回答了“做什么?”的问题。在系统设计阶段需要回答的中心问题是“如何做?”,即通过给出新系统物理模型的方式描述如何实现在系统分析中规定的系统功能。系统设计阶段的主要内容包括:硬件结构及系统软件结构的设计、数据处理流程及数据类的设计、应用系统结构设计、数据库设计、编码设计、功能模块的处理过程设计、输入输出设计等。

4.1 系统软件结构的设计

系统软件结构的设计工作,实际上是对确定的硬件结构中每台计算机指定相应的计算机系统软件,包括操作系统软件、数据库管理系统软件、应用服务器系统软件及开发工具软件等。

4.1.1 操作系统的选择

由于选择的计算模式是客户/服务器模式,而且本学生个人财务管理系统为个人应用的小型软件,所以客户机上的操作系统最好是采用易于操作的图形界面的操作系统,现在多数选择Windows系列,如Windows XP等。而且开发系统的平台也是在可以简便操作的图形界面操作系统:Windows XP。

4.1.2 数据库服务器系统软件的选择

管理信息系统中,数据库服务器是必不可少的网络组成部分。因此,数据库管理系统软件的选择对管理信息系统的建设有着举足轻重的影响。目前市场上流行的数据库管理系统有Oracle、SQL Server、DB2等。其中SQL Server在中小型系统中应用较多,价格也比较低廉;Oracle、DB2一般在大型系统中采用,价格也比较昂贵。所以,在本次设计和实现学生个人财务管理系统中,采用的是SQL Server 2000。SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的一个版本。该版本继承了SQL Server 7.0 版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好,与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows

15

学生个人财务管理系统的设计与实现

2000的大型多处理器的服务器等多种平台使用。SQL Server 2000 数据库引擎提供完整的XML 支持。它还具有构成最大的Web 站点的数据存储组件所需的可伸缩性、可用性和安全功能。SQL Server 2000 程序设计模型与 Windows DNA 构架集成,用以开发 Web 应用程序,并且SQL Server 2000 支持 English Query 和 Microsoft 搜索服务等功能,在Web 应用程序中包含了用户友好的查询和强大的搜索功能。

4.1.3 应用服务器系统软件及开发工具的选择

系统软件结构中的另一个方面是应用服务器软件及系统开发工具的选择。系统开发工具的选取首先依据的是管理信息系统应用的模式。客户/服务器模式的开发工具及运行环境一般安装在客户端计算机上,用客户/服务器模式应用开发的系统工具软件用得较多的为Visual Basic、Delphi、Power Builder。而笔者所熟悉的开发语言是Microsoft Visual BASIC 6.0。Microsoft Visual BASIC 6.0是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。从任何标准来说,VB都是世界上使用人数最多的语言——不仅是盛赞VB的开发者还是抱怨VB的开发者的数量。它源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。程序员可以轻松的使用VB提供的组件快速建立一个应用程序。开发工具选择的是Microsoft Visual Studio 2008。VS2008引入了250多个新特性,整合了对象、关系型数据、XML的访问方式,语言更加简洁。使用Visual Studio 2008可以高效开发Windows应用。同时Visual Studio 2008支持项目模板、调试器和部署程序。Visual Studio 2008可以高效开发Web应用,集成了AJAX 1.0,包含AJAX项目模板,它还可以高效开发Office应用和Mobile应用。

4.2 数据处理流程及数据类的设计

在系统分析阶段得到了系统所有的数据处理流程,这里的设计工作是将这些结果针对系统的要求进行设计改造,进而得到系统的数据处理流程及数据字典。系统数据处理流程与分析阶段分析一致。对数据类设计得到数据字典如表4-1到

16

中国地质大学(北京)学士学位论文

4-7所示。

表4-1 用户信息的数据字典 数据类名称:用户信息表 数据项名 用户编号 用户名 密码 内容举例 User01 PinkieSun PS123! 类型 字符型 字符型 字符型 取值范围 User01~User99 最多20个字符 最多20个字符 备注 表4-2 收入信息的数据字典 数据类名称:收入情况表 数据项名 用户编号 收入编号 日期 金额 存入账户 说明 内容举例 User01 Income1 2012/03/04 1000 中国农业银行卡 爸爸现金转账 类型 字符型 字符型 日期型 数字型 字符型 字符型 取值范围 User01~User99 Income1~Income9999 15位,两位小数 20个汉字 备注 每年重新编号 表4-3 支出信息的数据字典 数据类名称:支出情况表 数据项名 用户编号 支出编号 日期 地点或单位 消费类别 消费数量 支出账户 金额 说明 内容举例 User01 Cost1 2012/03/04 华联商厦 衣服 2 现金 360 短袖、牛仔裤 类型 字符型 字符型 日期型 字符型 字符型 数字型 字符型 数字型 字符型 取值范围 User01~User99 Cost1~Cost9999 10个汉字 5个汉字 整数 15位,两位小数 20个汉字 备注 每年重新编号 表4-4 借入信息的数据字典 数据类名称:借入情况表 数据项名 内容举例 类型 取值范围 备注 17

学生个人财务管理系统的设计与实现

用户编号 借入编号 日期 金额 人物或单位 存入账户 说明 状态 User01 Borrow1 2012/03/04 100 张三 现金 张三代付午餐钱 未还 字符型 字符型 日期型 数字型 字符型 字符型 字符型 字符型 User01~User99 Borrow1~Borrow9999 15位,两位小数 10个汉字 20个汉字 2个汉字 每年重新编号 表4-5 借出信息的数据字典 数据类名称:借出情况表 数据项名 用户编号 借出编号 日期 金额 人物或单位 借出账户 说明 状态 内容举例 User01 Lent1 2012/03/04 100 李四 现金 代付班费 已还 类型 字符型 字符型 日期型 数字型 字符型 字符型 字符型 字符型 取值范围 User01~User99 Lent1~Lent9999 15位,两位小数 10个汉字 20个汉字 2个汉字 备注 每年重新编号 表4-6 消费需求信息的数据字典 数据类名称:消费需求表 数据项名 用户编号 消费需求编号 消费物品 物价 数量 内容举例 User01 Need1 衣服 200 2 类型 字符型 字符型 字符型 数字型 数字型 字符型 取值范围 User01~User99 Need1~Need9999 10个汉字 15位,两位小数 15位,两位小数 50个汉字 备注 每年重新编号 消费需求备注 夏季衣服要多 表4-7 预算信息的数据字典 数据类名称:财务预算表 数据项名 内容举例 类型 18

取值范围 备注

中国地质大学(北京)学士学位论文

用户编号 预算编号 预算名称 预算金额 执行日期 完成金额 完成日期 预算备注 User01 Budget1 毕业季预算 500 2012/03/04 230 2012/03/04 班级聚餐、出游 字符型 字符型 字符型 数字型 日期型 数字型 日期型 字符型 User01~User99 Budget1~Budget9999 10个汉字 15位,两位小数 15位,两位小数 20个汉字 每年重新编号 4.3 应用系统结构设计

和系统分析阶段一样,系统设计阶段设计的系统的功能结构也用树状(功能)模块图的形式给出。由于此时每一个模块的确定除了考虑其内在业务特征外,也考虑了软件实现的要求(如开发工具、数据接口等),因此该模块图也就是目标系统的应用软件结构。

目标系统的模块结构的设计是从数据流程图的转换开始的,一般有两种策略可供参考:即以事物为中心的设计策略(事物分析)和以变换为中心的设计策略(变换分析)。事物分析用于把一个大的、复杂的系统分解成若干个较小的、简单的子系统。变换分析从具体的数据流程图转换成模块结构图,它将数据流程图中的处理功能分解成具有输入、变换、输出功能的简单模块。

事务分析方法是划分系统模块的主要手段,其本质是依据系统具有的业务,将相对独立的业务直接认作是独立的数据处理业务,形成一个个子系统,得到目标系统模块图的上层部分,依次自顶向下一一分解。当然,在设计目标系统功能结构时尽量遵循子系统之间相对独立性、数据处理冗余尽可能小、便于实现原则、满足客户需求等原则,面向用户的原则进行设计。正确处理模块之间与模块内部的联系及它们之间的调用关系和数据联系,定义各模块的内部结构等,不但考虑学生个人财务管理各业务的特征,而且也得体现开发工具、数据接口等实现性的要求。本系统总体结构是通过数据流程图应用事务分析方法,将学生个人财务管理系统分解为基本信息模块、记账模块、财务查询模块、财务统计模块、财务预算模块等较小的简单子系统。

19

学生个人财务管理系统的设计与实现

4.4 数据库设计

数据库技术是随着计算机技术的发展,数据处理量的不断增加而逐渐产生和发展起来的。随着计算机技术的发展与应用的普及,文件系统已经不能满足人们对数据管理的要求。人们希望数据的组织不仅是简单的数据存储,而且要反映数据之间的联系,并形成清晰的描述,甚至是能够进行深层次的数据挖掘。数据库管理系统是管理信息系统产生与发展的重要基础,所以数据库设计是管理信息系统设计的重要内容。

4.4.1 数据库概念模型设计

在数据库管理系统中,采用数据模型来对现实世界进行抽象,反映数据本身及其数据之间的联系。数据模型按照计算机系统的观点来组织数据。为了将现实世界中的事物抽象为数据库管理系统支持的数据模型,通常需要一个不依赖于计算机系统的中间层次——概念模型,即首先将现实世界中的事物及其联系抽象为概念模型,再由概念模型转化为数据模型。

概念模型最常用的表示方法是实体——联系模型,即E-R模型,它反映的是现实世界中的事物及其相互联系。由上面业务流程和数据流程以及系统功能模块分析,就可以设计出E-R图,如图4-1所示,为后面的逻辑结构设计打下基础。

图4-1 学生个人财务管理系统数据库概念模型E-R图

20

中国地质大学(北京)学士学位论文

4.4.2 数据库逻辑模型设计

系统数据库开发过程中,数据库逻辑模型主要考虑的是关系模型,所以关系模型好坏对数据的存储、操作有很大的影响。因此,一般基于规范化理论进行关系模型的设计。将上面的数据库概念模型转化为SQL Server 2000数据库系统所支持的实际数据模型,一般至少需要通过第一范式(1NF)、第二范式(2NF)和第三范式(3NF)的要求来规范关系模型。 4.4.2.1 第一范式(1NF)

关系作为一张二维表,对它有一个最起码的要求:元组中每一个分量必须都是不可分割的数据项。满足了这个条件的关系模式就属于第一范式(1NF)。同一列中不能有多个值,即实体中的某个属性不能有多个值也不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系。在第一范式(1NF)中表的每一行只包含一个实例的信息。简而言之,第一范式就是无重复的列。在设计学生个人财务管理关系表格时用户信息表{用户编号、用户名、收支信息、借贷信息、预算信息},其中收支信息、借贷信息和预算信息并不是不可分割的数据项,所以将收支信息、借贷信息和预算信息及用户信息四个单列成用户信息表、预算信息表、收支信息表、借贷信息表。 4.4.2.2 第二范式(2NF)

满足第二范式(2NF)必须先满足第一范式(1NF),而且每一个非主属性完全依赖于其主码。第二范式(2NF)要求数据库表中的每个实例或行必须可以被唯一地区分。为实现区分通常需要为表加上一个列,以存储各个实例的唯一标识。所谓完全依赖是指不能存在仅依赖主关键字一部分的属性,如果存在,那么这个属性和主关键字的这一部分应该分离出来形成一个新的实体,新实体与原实体之间是一对多的关系。简而言之,第二范式就是属性完全依赖于主键,消除非主属性对主码的部分函数依赖。上面收支信息表{收支编号、收支日期、收支账户、收支金额、收支说明、支出地点或单位、消费类别、消费数量}将其分为收入信息表和支出信息表;借贷信息表{借贷编号、借贷日期、借贷账户、借贷金额、

21

学生个人财务管理系统的设计与实现

借贷说明、人物或单位、状态}将其分为借入信息表和借出信息表。 4.4.2.3 第三范式(3NF)

第三范式(3NF)要求在满足第二范式(2NF)条件的基础上,任何一个非主属性既不部分依赖于任何主属性也不传递依赖于任何主属性。简而言之,第三范式(3NF)要求一个数据库表中不包含已在其它表中已包含的非主关键字信息。

4.5 基本表格设计

通过第一范式(1NF)、第二范式(2NF)和第三范式(3NF)的要求得到规范的关系模型如表4-8到4-14所示。

表4-8 用户信息表

用户编号 User01 用户名 PinkieSun 表4-9 收入情况表

用户编号 User01 收入编号 Income1 日期 2012/03/04 金额 1000 存入账户 中国农业银行卡 说明 爸爸现金转账 密码 PS123!

表4-10 支出情况表

用户编号 支出编号 日期 2012/User01 Cost1 03/04 华联商厦 衣服 2 现金 360 地点或单位 消费类别 消费数量 支出账户 金额 说明 短袖、牛仔裤 表4-11 借入情况表

用户编号 借入编号 日期 2012/User01 Borrow1 03/04 100 张三 表4-12 借出情况表

用户编号 User01 借出编号 Lent1 日期 2012/03/04 金额 100 22

金额 人物或单位 存入账户 说明 张三代付午餐状态 现金 钱 未还 人物或单位 李四 借出账户 现金 说明 代付班费 状态 已还 中国地质大学(北京)学士学位论文

表4-13 消费需求信息表

用户编号 User01 消费需求编号 Need1 消费物品 衣服 物价 200 数量 2 消费需求备注 夏季衣服要多 表4-14 预算信息表

用户编号 预算编号 预算名称 预算金额 毕业季预User01 Budget1 算 500 2012/03/04 230 执行日期 完成金额 完成日期 预算备注 班级聚2012/03/04 餐、出游 4.6 编码设计

系统设计阶段的编码设计是未来系统数据规范化管理的基础,特别要强调的是,共享编码的设计质量直接影响到未来系统的效率。

编码是表示识别、分类、排序数据的数字、文字或符号。识别是将文件中存储数据区别开,主要用于数据更新与查找;分类是根据数据编码定义对数据分类,用于检索数据或统计分析;排序是根据编码规则,按编码中规定的次序排序,用于输出与生成报表。

编码的设计和使用一般遵循“(设计时)分段设计,(使用时)用户标携带+前台输入+后台组合”的方法,这样能较好地解决用户难以使用编码的问题。编码方式有数字编码、数字分组顺序编码、字符编码和组合编码四种。本系统主要采用组合编码形式,如用户编号编码采用字符类型,组合编码User+X,其中User表示用户,X为数字编码。

4.7 功能模块的处理过程设计

系统的详细设计阶段,功能模块处理过程的设计和描述可以采用程序框图或过程描述语言两种工具,虽然过程描述比程序框图更灵活、方便,但程序框图直观易懂。所以本人是采用程序框图来进行功能模块处理过程的设计和描述。

4.7.1 用户登录模块处理过程设计

用户登录时填写用户名和密码请求登录,系统会从数据库中进行检索,如果用户名和密码匹配,则登录成功进入财务管理系统主界面,否则登录失败,提示

23

学生个人财务管理系统的设计与实现

“用户名或密码错误!”,并且返回到登录界面,如图4-2所示。

图4-2 学生个人财务管理系统登录模块处理流程图

4.7.2 财务管理功能模块处理过程设计

财务管理功能模块包括记账管理、财务查询、财务统计、财务预算。记账管理是对个人各项收支和借贷进行添加、删除、修改;而财务查询主要是按条件对收支和借贷项目进行查询;财务统计是将查询结果进行统计,以图表形式显示;财务预算是对预算金额,执行时间执行进度等进行添加、删除、修改,与记账管理处理过程基本一致,如图4-3所示。

图4-3学生个人财务管理系统基本功能模块处理流程图

24

中国地质大学(北京)学士学位论文

4.8 输入输出设计

4.8.1 输入设计

输入设计的工作是依据功能模块的具体要求给出数据输入的方式、用户界面和输入校验方式。进行输入设计工作时,要注意在整个系统中用统一的设计风格,同时要注重界面友善简洁,易于操作突出重要或者常用功能模块。所以,本次系统设计尽量做到图形界面操作,错误信息、提示信息尽量做到清晰、简洁和友善,同时采用了窗口继承的方式,使窗口有统一的界面风格和操作风格。在学生个人财务管理系统功能模块中,具体的输入操作包括对各类收支信息、借贷信息、预算信息进行添加、删除和修改,如图4-4所示。

图4-4 输入界面基本框架

4.8.2 输出设计

输出设计与输入设计类似,需要给出输出的方式和用户界面的内容,如显示输出的屏幕格式、打印输出的格式,每个显示、打印项目的类型、长度。输出设计时,也要注意在整个系统中用统一的设计风格,最好同输入风格相同或者相似,这样用户才会觉得系统从输入到输出的操作都是友善的、简易的,如图4-5所示。

25

学生个人财务管理系统的设计与实现

图4-5 输出界面基本框架

26

中国地质大学(北京)学士学位论文

5 系统实现

管理信息系统的实现就是依据以上系统设计的结果,建立计算机硬件环境和软件环境,编写、调试应用程序模块,最终发布学生个人财务管理信息系统,在已经建立的软、硬件环境下试运行初步完成的系统,发现系统漏洞,修补漏洞不断完善系统,并根据试运行的结果和预期系统设计相对比,尽量做到满足用户预期及需求。

5.1 系统实现的软、硬件环境

系统运行平台可在Windows XP及 Windows 7 上运行。系统试运行的软硬件环境如下所示:

系统操作系统:Microsoft Windows XP Professional,版本2002 Service Pack 3; CPU:Intel 酷睿2双核,T6400,频率:2GHz,内存:2GB; 硬盘:250GB;

系统数据库服务器系统:SQL Server 2000(个人版)。

5.2 系统实现内容

系统实现的软、硬件环境一旦准备完毕就可将系统设计阶段的结果在计算机上实现,将原来纸面上的、类似于设计图式的系统方案转换成可执行的应用软件,这便是系统实现。本次系统实现内容主要是对系统主要功能模块登入退出、记账管理、财务查询、财务统计、预算管理、用户管理等进行试运行。实现功能模块的源代码见附录。

5.2.1 主要功能模块

5.2.1.1 用户登录界面

用户登录时填写用户名和密码请求登录,系统会从数据库中进行检索,只有用户名和密码匹配,才能成功进入财务管理系统主界面,否则登录失败,提示“用户名或密码错误!”,并且返回到登录界面,重新尝试登录,如图5-1所示。

27

学生个人财务管理系统的设计与实现

图5-1 学生个人财务管理系统登录界面

5.2.1.2 基本信息模块界面

用户成功登录系统后便进入基本信息模块界面,系统全部功能嵌入菜单栏,用户可以根据需要进行个人财务管理。例如,可以新建项目,对当日支出进行管理,也可以打印账单或将账单发送到邮箱。系统主界面下方显示登录状态和当前用户。在基本信息界面里包含信息中心、资金账户和投资理财三个子模块。

信息中心可以显示用户自拟的理财标题,以激励用户管理个人财务;还可以显示当前日期和提醒,以及账本备份位置;也可以修改密码。学生个人财务管理系统信息中心界面如图5-2所示。

28

中国地质大学(北京)学士学位论文

图5-2 学生个人财务管理系统信息中心界面

资金账户可以显示用户的资金分布,以方便用户管理个人财务;还可以对现金、银行、应收款和应付款等账户进行增加、删除和修改。学生个人财务管理系统资金账户界面如图5-3所示。

图5-3 学生个人财务管理系统资金账户界面

29

学生个人财务管理系统的设计与实现

5.2.1.3 记账管理模块界面

用户在进行记账管理时,可在“文件”菜单的“新建项目”新建“当日支出”,也可在“记账管理”栏目选择,也可以点击常用快捷按钮“本月支出”对当日支出进行管理。记账管理模块下设货币、借贷和投资三个子模块。用户可依据自身情况增加、修改或删除相关账务信息如图5-4到5-6所示。

图5-4 学生个人财务管理系统增加货币收入界面

图5-5 学生个人财务管理系统货币支出界面

30

中国地质大学(北京)学士学位论文

图5-6 学生个人财务管理系统借出业务界面

5.2.1.4 财务查询模块界面

用户如需进行财务查询可在“财务查询”模块下,根据个人需要选择账户变动查询、指定科目查询、历史交易查询、当月余额变化等不同查询方式如图5-7所示。

图5-7 学生个人财务管理系统财务查询界面

31

学生个人财务管理系统的设计与实现

5.2.1.5 财务统计模块界面

用户如需进行财务统计可在“财务统计”模块下,根据个人需要选择收支科目统计、收支对比分析、收入分配分析、支出分配分析、年度收支统计等不同统计方式。用户也可选择图形分析模式或图表分析模式如图5-8到5-9所示。

图5-8 学生个人财务管理系统财务统计表界面

图5-9 学生个人财务管理系统财务统计图界面

32

中国地质大学(北京)学士学位论文

5.2.1.6 财务预算模块界面

用户如有预算可在“财务预算”栏目选择“预算管理”,也可以点击常用快捷按钮“预算管理”对预算及预算进度进行管理。如添加当日或往后的预算,发现以往预算执行进度填写有误也可进行删除和修改操作如图5-10所示。

图5-10 学生个人财务管理系统财务预算管理界面

5.2.2 其他功能模块

5.2.2.1 用户管理

用户还可通过菜单栏的“基本信息”对用户进行管理。如用户可根据需要添加删除用户,处于安全考虑还可修改用户密码如图5-11所示。

33

学生个人财务管理系统的设计与实现

图5-11 学生个人财务管理系统用户添加界面

5.2.2.2 收支项目编辑

在本学生个人财务管理系统中,用户可以根据自身的实际情况,增加或删除收支项目,方便用户对个人财务的个性化记录与管理如图5-12到5-13所示。

图5-12 学生个人财务管理系统收入项目编辑界面图

34

中国地质大学(北京)学士学位论文

图5-13 学生个人财务管理系统支出项目编辑界面图

35

学生个人财务管理系统的设计与实现

6 总结

本次学生个人财务管理系统的设计与实现,预期的各项功能基本得到实现,系统发布出来,笔者亲自对系统的各功能模块和事例系统进行测试。能够满足用户一般的个人财务管理需求,操作界面简洁也比较易于操作,系统也易于维护,同时数据库也比较安全可靠。

但由于笔者的技术能力以及知识面的限制,学生个人财务管理系统还存在着不足之处,需要进一步改进。比如用户界面设计布局和配色等缺乏美感,较为朴素;对于个人财务管理在金融业务方面,由于笔者的技术水平有限,并没能实现利用该系统进行期货交易、网络银行等网络化功能。此外,对于系统安全方面的考虑也只是基本的一级密码防护。

36

中国地质大学(北京)学士学位论文

致 谢

在本次毕业设计过程中得到了众多老师、同学和朋友的帮助与鼓舞。特别是笔者的指导老师安海忠教授,从开始的论文选题给笔者大方向上的引导,到中期后期的细心审阅,并给出一些关键意见和建议。这使得笔者受益匪浅,所以首先对安老师表示由衷的感谢。同时系里的诸位老师及班里的同学也在笔者遇到难题时给予耐心的帮助,在这里一并感谢。

最末,笔者还要感谢自己的父母,在漫长的毕业设计之路上给予笔者物质上的支持,还有精神上的鼓舞。

37

学生个人财务管理系统的设计与实现

参考文献

[1] J.D.Roth, 万婧.又要过冬,如何管理个人财务?[J].创业邦,2011.12:98.

[2] 张宇铭.学生财务管理系统及其设计[J].苏州城建环保学院学报,第8卷第4期,1995.12:52. [3] 沈玮.小型家庭财务管理系统的设计与实现[J].电脑知识与技术,2011.09:6140-6141. [4] 颜瑜.民族地区家庭财务管理系统的设计与实现[D].电子科技大学,2009.04:61.

[5] 郝俊寿,丁艳会.基于JSP技术的家庭财务管理系统设计与实现[J].福建电脑,2011.01:102. [6] 陈得友,刘远超.家庭财务管理系统[J].科技创新导报,2009.01:233.

[7] 庞艳民,张阳.基于J2EE、J2ME技术网络个人财务管理系统[R].第九届中国Java技术及

应用交流大会,2006.12:13-14.

[8] 陈颂丽,李海良.基于MVC模式的个人财务管理系统的设计与实现[J].科技信

息,2010.02:232.

[9] 孙维伯,张立岩.基于MiniGUI的嵌入式个人财务管理系统[J].无线互联科技,2011.07:50 [10] 孙莉,程永生.最新个人财务软件性能与比较[J].电脑技术,1995.08:8. [11] 胡纲.个人财务软件MicrosoftMoneyPremium2004[J].个人电脑,2004.02:33.

38

中国地质大学(北京)2012届本科毕业设计

附 录

1学生个人财务管理系统登录界面源代码:

Imports System.Data

Imports System.Data.SqlClient Public Class Login

Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click

Dim constr As String

constr = \Source=WINDO-9683E6BEC;Initial Catalog=学生个人财务管理数据库;Integrated Security=True\

Dim myconn As New SqlConnection(constr) Dim Sqlstr As String

Sqlstr = \用户信息表 where 用户名='\.Text & \密码='\.Text & \

Dim MyDp As New SqlDataAdapter(Sqlstr, myconn) Dim MyDs As New DataSet MyDp.Fill(MyDs)

If MyDs.Tables(0).Rows.Count = 0 Then MessageBox.Show(\用户或密码不正确!\ Me.Show()

UsernameTextBox.Text = \ PasswordTextBox.Text = \ UsernameTextBox.Focus() Else

Me.Hide()

Dim f As New 系统信息中心界面() f.Show() End If

myconn.Close() End Sub

Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click Me.Close() End Sub

39

学生个人财务管理系统的设计与实现

Private Sub Login_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Me.用户信息表TableAdapter.Fill(Me.DataSet1.用户信息表)

UsernameTextBox.Text = \ PasswordTextBox.Text = \ End Sub

Private Sub UsernameTextBox_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles UsernameTextBox.TextChanged

End Sub End Class

2学生个人财务管理系统信息中心界面源代码:

Public Class 系统信息中心界面 Public username As String

Private Sub 新建ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) End Sub

Private Sub 信息中心ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 信息中心ToolStripMenuItem.Click End Sub

Private Sub PM_Unload(ByVal Cancel As Integer)

If MsgBox(\你真的要退出系统吗?\系统退出提示咨询\ Cancel = False Else

Cancel = True End If End Sub

Private Declare Function SetParent Lib \(ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long

Private Declare Function FindWindow Lib \Alias \(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Private Sub 记事本MToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 记事本MToolStripMenuItem.Click

40

中国地质大学(北京)2012届本科毕业设计

Dim hw As Long

Dim Myhwnd = Shell(\.exe\ hw = FindWindow(vbNullString, \无标题 - 记事本\ If hw Then SetParent(hw, Myhwnd) End Sub

Private Sub 个人所得税计算器ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 个人所得税计算器ToolStripMenuItem.Click Dim hw As Long

Dim Myhwnd = Shell(\.exe\ hw = FindWindow(vbNullString, \计算器\ If hw Then SetParent(hw, Myhwnd) End Sub

Private Sub ToolStripButton6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton6.Click Dim f As New 财务统计() f.Show() End Sub

Private Sub 退出ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 退出ToolStripMenuItem.Click Dim a As Integer

a = MessageBox.Show(\确定退出系统?\\消息提示\MessageBoxButtons.OKCancel) If a = 1 Then Me.Close() ElseIf a = 2 Then End If End Sub

Private Sub 当日账目ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 当日账目ToolStripMenuItem.Click Dim f As New 当日支出() f.Show() End Sub

Private Sub ToolStripButton8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton8.Click Dim a As Integer

a = MessageBox.Show(\确定退出系统?\\消息提示\

41

学生个人财务管理系统的设计与实现

MessageBoxButtons.OKCancel) If a = 1 Then Me.Close() ElseIf a = 2 Then End If End Sub

Private Sub 新建用户ToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 新建用户ToolStripMenuItem1.Click Dim f As New 新建用户() f.Show() End Sub

Private Sub ToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton3.Click Dim f As New 预算管理() f.Show() End Sub

Private Sub 预算管理ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 预算管理ToolStripMenuItem.Click Dim f As New 预算管理() f.Show() End Sub

Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton2.Click Dim f As New 当月收入() f.Show() End Sub

Private Sub ToolStripButton5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton5.Click Dim f As New 财务统计() f.Show() End Sub

Private Sub ToolStripButton7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton7.Click Dim f As New 财务统计() f.Show()

42

中国地质大学(北京)2012届本科毕业设计

End Sub

Private Sub ToolStripButton4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton4.Click Dim f As New 财务统计() f.Show() End Sub End Class

Imports System.Data

Imports System.Data.SqlClient

3学生个人财务管理系统财务统计源代码:

Imports System.Data

Imports System.Data.SqlClient Public Class 财务统计

Dim sqlconn As String = \学生个人财务管理数据库;Integrated Security=True\ Dim objconn As SqlConnection Dim objadapt As SqlDataAdapter Dim objdset As DataSet Dim objdview As DataView Dim objcmmd As SqlCommand Dim objcurrmgr As CurrencyManager Dim strsql As String

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

If ComboBox1.Text > \

ElseIf ComboBox1.Text = \消费类型\

strsql = \支出信息表 where 支出用途 like '\.Text & \

objconn.Open()

objadapt.SelectCommand = New SqlCommand(strsql, objconn) objconn.Close() objdset.Clear()

objadapt.Fill(objdset, \支出信息表\

DataGridView1.DataSource = objdset.Tables(\支出信息表\

43

本文来源:https://www.bwwdw.com/article/7ymw.html

Top