版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕业论文(设计)开题报告毕业论文(设计)开题报告 论文(设计)题目:家庭收支管理系统设计 一、选题目的选题目的: 随着经济与生活水平的提高,家庭理财已经成为人们生活的重要内容。大多 数家庭对于量入为出、管理家庭收支有了更深层次的要求,年青单身或新婚 家庭对于管理家庭收支、告别“月光一族”更是有着迫切的要求。信息时代 的今天,计算机迅速渗透进人们的日常生活,传统纸面记账管理方法显得不 合时宜。建立一款家庭收支管理系统,能够帮助人们更方便地记账,查询和 统计家庭每个用户的收入和支出信息。家庭成员能够利用系统提供的统计信 息合理地安排日后的消费,系统具有很强的实用性。 家庭财务管理系统的主要功能包括
2、: 1)收入管理管理各类收入项(包括工资、投资收入等) ; 2)支出管理管理各类支出项(包括日常消费、投资支出等) ; 3)统计管理系统根据已知信息绘制图表(折线图、现金流量表) ,给予 用户更清晰的感受; 4)权限管理注册过的家庭成员才可登录进入系统,默认只可进行支出管 理和统计管理;有收入的家庭成员需在注册时选择“收入授权” ,进行收入管 理。 二、研究思路与方法研究思路与方法: 1.收集相关的资料,对系统进行功能需求分析。 2.利用 uml 过程进行建模。 3.进行数据库的分析和设计。 4.编写代码、开发系统。 5.对系统进行主要需求功能的测试,并完成论文。 三、相关支持条件相关支持条件
3、: 1.信息支持:图书馆以及互联网的图书、论文资源; 2.开发语言:c#; 3.开发环境:windows 7,visual studio 2010,sql server 2008; 4.经验支持:导师和同学的帮助。 四、进度安排进度安排: 2012 年 11 月 30 日前-提交开题报告; 2013 年 3 月 9 日前-提交中期检查; 2013 年 4 月 8 日前 - 提交论文初稿; 2013 年 4 月 22 日前-论文的初步形式审查及电子版提交。 2013 年 5 月 4 日前-论文最后的形式审查。 2013 年 5 月 10 日前-提交论文终稿。 学生签名:王馨漫 2012 年 11
4、 月 23 日 i 指导教师意见: 同意开题! 1、同意开题() 2、修改后开题( ) 3、重新开题( ) 指导教师签名:路永和 2012 年 11 月 23 日 ii 毕业论文过程检查情况记录表毕业论文过程检查情况记录表 指导教师分阶段检查论文的进展情况(要求过程检查记录不少于 3 次): 第第 1 次检查次检查 学生总结: 老师召集学生开会,研究论文题目,确定论文选题。 指导教师意见: 题目可行。 第第 2 次检查次检查 学生总结: 文献调查、撰写文献综述、确定论文大纲、完成开题报告。 指导教师意见: 可以开题,尽快撰写论文初稿。 第第 3 次检查次检查 学生总结: 提交论文初稿给老师,老
5、师在论文摘要、内容、格式等方面提出修改意见。 指导教师意见: 仔细检查格式,排版,语句,按照学院要求修改、完善。 第第 4 次检查次检查 学生总结: 按照老师要求进行了修改。 指导教师意见: 可以定稿。 学生签名:王馨漫 2013 年 4 月 9 日 指导教师签名:路永和 2013 年 4 月 11 日 总总 体体 完完 成成 情情 况况 指导教师意见: 写作态度认真,能够按照时间进度较好地完成论文写作。 1、按计划完成,完成情况优( ) 2、按计划完成,完成情况良( ) 3、基本按计划完成,完成情况合格( ) 4、完成情况不合格( ) 指导教师签名: 路永和 2013 年 4 月 11 日
6、iii 毕业论文答辩情况毕业论文答辩情况 答辩人专 业 论文(设计)题目 答辩小组成员 答辩记录: 记录人签名: 年 月 日 iv 学术诚信声明学术诚信声明 本人所呈交的毕业论文,是在导师的指导下,独立进行研究工作所 取得的成果,所有数据、图片资料均真实可靠。除文中已经注明引用的 内容外,本论文不包含任何其他人或集体已经发表或撰写过的作品或成 果。对本论文的研究作出重要贡献的个人和集体,均已在文中以明确的 方式标明。本毕业论文的知识产权归属于培养单位。本人完全意识到本 声明的法律结果由本人承担。 本人签名:王馨漫 日期:2013 年 4 月 4 日 v 摘摘 要要 随着家庭收入的增长以及金钱对
7、家庭行为影响力的增强,家庭理财已经成为摆 在每个家庭面前不可忽视的重要课题。家庭收支管理系统作为一款 pc 端记账软件, 能够帮助使用者更方便、快速地通过数据掌握个人或家庭收支情况,合理规划消费 和投资,提高理财水平。系统包括用户管理、收入管理、支出管理、统计信息、用 户信息管理等功能模块。 系统主要基于三层架构模式设计,使用 visual studio 2010 和 sql server 2008 开发工具,借助.net 搭建框架,使用 c#语言进行开发。主要内容包括: (1)通过参考相关文献,介绍并分析项目背景,确定项目目标和范围。 (2)简述系 统开发中涉及的技术原理,包括.net 平台
8、、windows 窗体、sql server 2008、三 层架构等。 (3)利用 uml 建模工具,阐述系统设计过程中的需求分析、架构设计, 数据库设计、核心模块设计等。 (4)介绍系统的部署和安装,简述系统的运行环境、 安装包的制作以及安装过程,并对安装后的应用程序进行系统测试。 关键词:关键词:收支管理,应用程序,.net,三层架构 vi abstract as the growth of household income and the enhancement of the impact of money on household behavior, family financial
9、management has been on the agenda of every family.family income and expenses management system(fiems for short) , an accounting application of personal computer, can help users grasp the household or individuals income and expenditure more conveniently and fast. fiems can also help users plan consum
10、ption and investment more reasonably, and improve their financial literacy. the main functions of the system include user management, revenue management, expenditure management and statistic management and so on. the system is designed by 3-tier architecture and implemented on .net framework in visu
11、al studio 2010 and sql server 2008 environment using c# language compiling and designing. the thesis includes the following contents: (1) by referring to the related documents, introduce and analysis the context of the project and confirm the goal and scope of the project. (2) sketch the technical p
12、rinciples used in the system development, .net platform, windows form, sql server 2008, 3-tier architecture, for example. (3) expound the the system requirement analysis, architecture design, database design, the core module design by making use of the modeling tool uml during the design process. (4
13、) describe the deployment, installation and the operating environment of the system.sketch the installation package-making process and the installation procedure, and then test the application. keywords: income and expenses management, application, .net platform, 3-tier architecture 0 目目 录录 第一章第一章 前
14、言前言.3 1.1 项目背景与意义.3 1.2 研究开发现状分析.3 1.3 项目的目标和范围.4 1.4 论文的结构简介.4 第二章第二章 技术与原理技术与原理.6 2.1 .net、c#语言及 winform.6 2.2 sql 语言与 sql server 2008 数据库管理系统 .8 2.3 三层架构体系.8 2.4 uml 建模技术.9 第三章第三章 需求建模需求建模.10 3.1 系统需求概述.10 3.1.1 功能性需求分析.10 3.1.2 系统模块划分.10 3.2 系统用例.11 3.2.1 系统用例图.11 3.2.2 系统用例表.12 3.3 核心用例设计.13 3.
15、3.1 uc004 录入收入条目 .14 3.3.2 uc005 修改收入条目 .15 3.3.3 uc013 查看家庭统计信息 .17 3.4 领域模型.19 第四章第四章 架构设计架构设计.20 4.1 系统架构和原理.20 4.2 业务用例的实现.21 4.2.1 用户注册用例实现.21 4.2.2 删除支出条目用例实现.22 4.3 数据库设计.23 4.3.1 e-r 图.23 4.3.2 数据库.23 第五章第五章 模块设计模块设计.25 5.1 用户管理模块.25 1 5.1.1 系统设置流程概述.25 5.1.2 系统设置算法描述.25 5.1.3 系统设置部分核心代码.26
16、5.2 支出管理模块.28 5.2.1 删除支出条目流程概述.28 5.2.2 删除支出条目算法描述.29 5.2.3 删除支出条目部分核心代码.29 第六章第六章 部署与应用部署与应用.35 6.1 系统运行环境.35 6.2 系统部署.35 6.2.1 制作安装包.35 6.2.2 安装程序.37 6.3 系统测试.38 第七章第七章 结论结论.43 致致 谢谢.44 参考文献参考文献.45 附录附录.46 2 第一章第一章前言前言 1.1项目背景与意义项目背景与意义 随着人们经济意识的提高, “家庭理财”这个词已经不再陌生,成为了每个 家庭日常生活中不可或缺的一部分。家庭理财涵盖了许多方
17、面,包括理财理念 的更新、财务、投资、计划、预算以及心态等。这些方面的基础就是对家庭收 支状况的了解与分析,就是记账。传统记账的主要方式是基于账簿、表格等纸 介质的手工处理,存在很多问题:以纸张为载体,占用空间大,不易保管,容 易丢失和破损;录入时要边算边记录,工作量大,易出错且耗时;查找困难, 不易修改(帐薄记录的错误要用化线法和红字法更正)1.这些问题使传统记 账无法满足人们对方便、快捷、环保等特性日益增长的需求。 所幸的是信息时代的今天,计算机早已迅速渗透进人们的日常生活,成为 家庭生活的一部分,使记账电子化成为解决传统手工记账问题的可行方案。作 为计算机应用的一部分,家庭收支管理系统可
18、以帮助个人或家庭更加快速、准 确地增加、查询、修改、删除收支项目,即时查看收支明细,还可以得到各种 账目汇总报表,多样化的统计报表、统计图表可以方便地分析各个时段、各类 项目的收入和支出情况,可靠性高、保密性好、存储量大、成本低,使家庭收 支管理工作规范化、程序化,避免时间和精力的不必要浪费,帮助使用者充分 挖掘数字背后的情况。 家庭收支管理系统作为一款 pc 端记账软件使家庭收支管理更加方便、快速、 安全,操作简单,即时使用,帮助使用者更方便、快速地通过数据掌握个人或 家庭收支情况,合理规划消费和投资,提高理财水平。 1.2研究开发现状分析研究开发现状分析 财务记账软件从使用对象的性质角度可
19、以划分为专业会计从业人员的大型 软件(如用友、金蝶)和针对非专业会计人员的简单实用型会计软件(如星宇 财务记账软件,e 会计) 。专业人员使用的记账软件在我国始于上世纪八十年代 初中期,目前处于较成熟的时期;业余人员使用的记账软件则是近几年来才流 3 行起来的,目前方兴未艾。从接入平台上分,记账软件分为财金汇和 quicken 为代表的 pc 端理财记账软件、mint 为代表的 web 在线理财记账 及 money 为代表的手机理财记账三大平台。2本系统面向普通家庭用户,操 作简单,无需培训学习使用。操作系统为受众广泛且安装于 pc 机的 windows 系统,开发目的是帮助每个家庭管理自己家
20、的财务收支情况,不需要信息共享, 所以无需接入网络,信息存储更为安全。因此,家庭收支管理系统属于针对非 专业人员的 pc 端的记账软件。 系统开发采用 c#语言进行开发,借助.net 搭建框架,界面布局快且美观, 具有丰富的 winform 控件,开发周期较短。winform 对数据库处理提供全面支 持,具有与 sql server 易于连接的数据控件,并且使用 c#开发 windows 应 用程序已有许多成熟的案例,这些优点使开发能够更顺利的进行。 1.3项目的目标和范围项目的目标和范围 本系统的开发目标是代替需要许多繁杂工作的传统手工记账,帮助使用者 更加快速、方便地管理家庭财务收支,更加
21、准确、清晰地掌握家庭收支情况, 节约资源,提高家庭理财效率,建立一款服务于普通家庭的桌面应用程序 (graphical user interface) 。 在设计和技术实现层面,系统开发是在 windows7 平台下,使用 visual studio 2010 和 sql server 2008 开发工具,在三层架构体系结构的基础上, 借助.net 搭建框架,使用 c#语言进行开发。清晰的界面设计使操作更简单, 为用户提供更加友好的用户体验。 系统需经注册后登陆使用,注册时需选择适合用户的权限,包括收入管理 权限、支出管理权限、总账查看权限。用户登陆后可以在权限范围内进行用户 个人收支项的添加
22、、查询、修改、删除,查看个人统计信息、家庭统计信息 (包括表格和折线图) ,进行权限重设等操作。 1.4论文的结构简介论文的结构简介 本论文旨在设计和开发一个操作简单、易于使用的桌面家庭记账系统。整 篇论文共为七章,分别是:前言、技术与原理、需求建模、架构设计、模块设 计、部署与应用和结论。 4 第 1 章:前言。阐述项目背景,研究分析开发现状,确定项目目标、项目 范围以及论文结构,整体上对项目进行描述。 第 2 章:技术与原理。描述系统开发过程中所使用的相关技术和原理,简 要介绍 c#语言、.net 平台、winform、sql 语言、sql server 2008 数据库 管理系统、三层架
23、构体系结构、uml 建模方法。 第 3 章:需求建模。确定项目功能性需求,描述系统用例,对其中的具有 代表性的用例录入收入条目、修改收入条目、查看家庭统计信息加以详细的需 求分析,最后进行领域建模。 第 4 章:架构设计。概述系统架构和数据库设计,借助包图描述系统设计 思路,利用顺序图说明用户注册、删除支出条目两个典型用例的业务实现过程 和交互过程,使用 er 图介绍数据库设计。 第 5 章:模块设计。对系统主要模块进行详细设计,选取系统用户管理模 块、支出管理模块的典型子模块,针对其主要流程、算法和核心代码作简要介 绍。 第 6 章:部署与应用。利用系统部署图说明系统的运行环境,描述系统安
24、装包的制作流程以及安装流程,选取部分用例对系统进行测试,并展示系统若 干典型界面。 第 7 章:结论。总结了项目的成果以及设计和开发过程中的不足之处,最 后提出系统的改进方向。 5 第二章第二章技术与原理技术与原理 本章介绍设计开发本系统所使用的技术,包括.net 平台、c#语言、 winform、sql 语言、sql server 2008 数据库管理系统、三层架构、uml 建 模方法。 2.1.net、c#语言及语言及 winform 介绍.net 之前先介绍一下什么是.net framework。.net framework 是 支持生成和运行下一代应用程序和 web 服务的内部 win
25、dows 组件。.net framework 的关键组件为公共语言运行时 (clr)和.net framework 类库。 .net 是微软的新一代技术平台,为敏捷商务构建互联互通的应用系统。一个. net 应用是一个使用.net framework 类库来编写,并运行于公共语言运行时 之上的应用程序。3 c#是从 c 和 c+派生出来的一种简单、现代、面向对象和类型安全的面向 对象的编程语言,其语言体系都构建在.net framework 上,并且能够与.net framework 完美结合。c#具有以下突出的特点:语法简洁,不允许直接操作 1 内存,去掉了指针操作;彻底的面向对象设计,具有
26、封装、继承和多态等特 2 性;与 web 紧密结合,支持绝大多数的 web 标准,如 html、xml 等; 3 强大的安全机制,可以消除软件开发中的常见错误(如语法错误),.net 提 4 供的垃圾回收器能够帮助开发者有效地管理内存资源;兼容性,遵守.net 的 5 公共语言规范(cls),从而保证能够与其他语言开发的组件兼容;灵活的 6 版本处理技术,语言本身内置了版本控制功能,使得开发人员可以更容易地开 发和维护;完善的错误、异常处理机制,提供了完善的错误和异常处理机制, 7 使程序在交付应用时能够更加健壮。4 用 c#编写的源代码被编译为一种符合 cli(common language
27、 infrastructure,通用语言基础结构)规范的中间语言(il)。il 代码与资源一起作 为一种称为程序集的可执行文件存储在磁盘上,通常具有的扩展名为.exe 或. 6 dll。执行 c#程序时,程序集将加载到 clr 中,如果符合安全要求,clr 就会 执行实时(jit)编译以将 il 代码转换为本机机器指令。图 2-1 阐释了 c# 源代码 文件、 .net framework 类库、程序集和 clr 编译时和运行时关系。5 图 2-1 从 c#源代码到计算机执行5 c#与.net 的关系如图 2-2 所示: 图 2-2 c#与.net 的关系4 winform 是.net 开发平
28、台对 windows form 的一种称谓,它是 windows 窗体应用程序的基本单元。.net framework 类库的 system.windows.forms 7 命名空间中定义的 form 类是所有窗体的基类。4winform 不仅提供了许多控件, 还提供了自行开发控件的基础结构,因此互联网上可以搜索到很多第三方控件 (重写或者扩展了一些原有控件的方法和属性,从而能实现某些新的功能) 。本 系统的开发就使用了一款第三方控件chartlet(图表控件) 。 2.2sql 语言语言与与 sql server 2008 数据库管理系统数据库管理系统 sql 全名是结构化查询语言(stru
29、ctured query language) ,是用于数据 库中的标准数据查询语言,ibm 公司最早使用在其开发的数据库系统中。1986 年 10 月,美国国家标准学会(ansi) 对 sql 进行规范后,以此作为关系式数 据库管理系统的标准语言 (ansi x3. 135-1986),1987 年得到国际标准组织的 支持下成为国际标准。6 sql server 2008 是 microsoft 公司推出的 sql server 数据库管理系统的 新版本,是一款大型的关系型数据库管理系统,具有强大的后台数据库管理能 力。sql server 2008 允许用户在使用 microsoft .ne
30、t 和 visual studio 开发的 自定义应用程序中使用数据,提供了一系列丰富的集成服务,可以对数据进行 查询、搜索、同步、报告和分析等操作。数据可以存储在各种设备上,从数据 中心最大的服务器一直到左面计算机和移动设备。7 2.3三层架构体系三层架构体系 三层架构(3-tier architecture) 通常意义上的三层架构就是将整个业务应用 划分为:表示层(ui) 、业务逻辑层(bll) 、数据访问层(dal) 。区分层次的 目的即为了“高内聚,低耦合”的思想。 图 2-3 为三层架构模型。 8 图 2-3 三层架构模型 表示层主要由响应各种用户界面请求的动作类组成,它会调用业务逻
31、辑层 中的函数进行业务逻辑处理,同时根据结果显示不同的界面给用户,本系统中 主要表示成 winform 方式。业务逻辑层主要完成实际的业务逻辑,把一些数据 层的操作进行组合,是系统最核心的部分。数据访问层主要完成对数据文件的 操作,负责数据库的访问。 三层架构体系结构是面向对象思想发展中的必然产物。通过引入中间层,将 复杂的商业逻辑从传统的双层结构(client-server)应用模型中分离出来,同时增 强了应用程序的可用性、安全性、封装复用性、可扩展性和可移植性,使用户在 管理上所花费的时间最小化,从而实现了便捷、高效、安全、稳定的企业级系统 应用。8 2.4uml 建模技术建模技术 统一建
32、模语言(uml,unified modeling language)是非专利的第三代建 模和规约语言。uml 是一种开放的方法,用于说明、可视化、构建和编写一个 正在开发的、面向对象的、软件密集系统的制品的开放方法。 uml 适用于以面向对象技术来描述任何类型的系统,而且适用于系统开发 的不同阶段,从需求规格描述直至系统完成后的测试和维护。9uml 模型大多 以图表的方式表现出来,包括五类图:用例图、静态图 、行为图、交互图、实 现图。开发阶段不同,模型的侧重点也不同,但是都能在 uml 语言中找到合 适的图来加以描述,并且随着各阶段的变化,前一阶段的描述都能比较好地被 后一阶段的建模工作加以
33、利用。通常,在分析阶段,使用用例图描述用户需求, 确定项目范围,使用交互图(常为顺序图)描述描述对象间的交互关系;在设 计阶段,使用类图(属于静态图)描述系统中类的静态结构(包括类之间的联 系以及类的属性和操作) 。10 9 第三章第三章需求建模需求建模 本章采用 uml 统一过程(unified process)对家庭收支管理系统进行需 求建模。首先确定项目功能性需求,描述系统用例,对其中的核心用例加以详 细的需求分析,最后进行领域建模。 3.1系统需求概述系统需求概述 3.1.1 功能性需求分析功能性需求分析 功能性需求是针对系统的特性、功能、安全性方面的需求。10根据上文对 项目开发背景
34、、开发现状,针对本项目实际需要,提出了本系统的功能性需求。 本系统主要面向普通家庭成员(非专业人员) ,系统的主要功能性需求为: (1)针对收入者:记录每笔收入项详细信息,包括收入项目、收入日期、 收入金额以及摘要;查询以及修改(或删除)收入项。 (2)针对支出者:记录每笔支出项详细信息,包括支出项目、支出日期、 支出金额以及摘要;查询以及修改(或删除)支出项。 (3)针对家庭财产管理者:查看家庭收支统计信息。 (4)针对所有使用者:注册、登录系统;查看个人收支统计信息;重设密 码以及权限。 3.1.2 系统模块划分系统模块划分 家庭收支管理系统根据功能可分为五大模块: (1)通用模块:处理用
35、户注销和退出系统操作。 (2)收入管理模块:收入者录入、修改、删除个人收入项。 (3)支出管理模块:支出者录入、修改、删除个人支出项。 (4)统计信息模块:所有系统使用者均可查看个人收支统计信息,拥有 “总账查看权限”的用户可以查看家庭收支统计信息。 (5)用户管理模块:处理用户注册、登录和设置等和用户信息有关的操作。 10 本系统的具体功能模块划分如图 3-1 所示。 图 3-1 系统功能模块图 3.2系统用例系统用例 用例是文本形式的情节描述,广泛应用于需求的发现和记录工作中,10通 过用例名、应用程序的用户类型(称为执行者)及执行者和程序间的交互来标 识。11 3.2.1 系统用例图系统
36、用例图 根据上述需求分析可知,本系统面向所有普通家庭成员。所有用户均可进 行登录、注册、查看个人收支统计、设置、注销、退出操作,但是不同权限的 使用者能够进行的操作也不同。收入管理权限用户可以管理个人收入项,支出 管理权限用户可以管理支出项,总账查看权限用户能够查看家庭收支统计。 图 3-2 为家庭收支管理系统用例图。 11 图 3-2 系统用例图 3.2.2 系统用例表系统用例表 本系统的主要用例和其描述、参与者如表 3-1 所示: 表 3-1 系统用例表 用例编号用例编号用例名称用例名称描述描述参与者参与者 uc001 用户注册 系统的未来用户通过输入用户名、设 定密码、选择权限(至少一项
37、)注册 成为系统用户。 用户 uc002 用户登录用户通过输入用户名与密码登录系统用户 uc003 收入管理 管理用户收入项,包含录入收入条目 和查改收入条目 2 个用例。 收入管理权 限用户 uc004 录入收入条目 把收入项目、收入日期、摘要、金额 信息录入系统。 收入管理权 限用户 uc005 修改收入条目 根据收入日期、收入项目查询目标项, 选择需修改的条目进行修改。 收入管理权 限用户 12 用例编号用例编号用例名称用例名称描述描述参与者参与者 uc006 删除收入条目 根据收入日期、收入项目查询目标项, 选择需删除的条目进行删除。 收入管理权 限用户 uc007 支出管理 管理用户
38、支出项,包含录入支出条目 和查改支出条目 2 个用例。 支出管理权 限用户 uc008 录入支出条目 把支出项目、支出日期、摘要、金额 信息录入系统。 支出管理权 限用户 uc009 修改支出条目 根据支出日期、支出项目查询目标项, 选中需修改的条目进行修改。 支出管理权 限用户 uc010 删除支出条目 根据支出日期、支出项目查询目标项, 选择需删除的条目进行删除。 支出管理权 限用户 uc011 统计信息 查看统计信息,包含查看个人统计信 息和查看家庭统计信息 2 个用例。 用户 uc012 查看个人统计信 息 查看个人收支统计。根据日期、类别 (收入、支出、收支)查询,查看表 格或图表(
39、折线图) ,得到统计信息。 用户 uc013 查看家庭统计信 息 查看家庭收支统计。根据日期、类别 (收入、支出、收支)查询,查看表 格或图表(折线图) ,得到统计信息。 总账查看权 限用户 uc014 系统设置 重设密码或权限。 用户 uc015 系统注销 当前用户注销,返回登录界面。 用户 uc016 退出系统 退出系统,结束进程。 用户 3.3核心用例设计核心用例设计 本部分将选取家庭收支管理系统的三个具有代表性的用例:录入收入条目、 修改收入条目、查看家庭统计信息的设计进行分析。 13 3.3.1 uc004uc004 录入收入条目录入收入条目 表 3-2 录入收入条目设计 用例名称用
40、例名称录入收入条目 范围范围家庭收支管理系统 级别级别用户目标 主要参与者主要参与者收入管理权限用户 涉众及其关注点:涉众及其关注点:1.收入者:希望录入个人收入信息以便后续查看以及统计 2.家庭财务管理者:希望得到每位家庭收入者录入个人收入 信息,以便家庭收入统计和分析 前置条件前置条件用户拥有收入管理权限,并且已登录系统,进入管理界面 后置条件后置条件用户成功录入收入条目 主成功场景主成功场景1.用户登录系统 2.用户选择“收入管理”模块,在子菜单中选择“录入用户 收入条目”选项 3.用户进入“录入用户收入条目”界面 4.用户输入收入信息:收入日期、收入项目、摘要、金额 5.点击“确定”按
41、钮,提交录入收入信息 6.系统提示录入的详细收入信息,并询问“是否继续录入收 入项” 扩展点扩展点* a 系统崩溃 *a1 系统异常退出 4a 没有输入金额(金额文本框为空) 4a1 系统提示“金额不能为空” 6a 点击“yes” 6a1 跳转至 3 6b 点击“no” 6b1 关闭“录入用户收入条目”窗口,返回到管理窗口 发生频率发生频率经常 “录入收入条目”活动图如图 3-3。 14 图 3-3 录入收入条目活动图 3.3.2 uc005uc005 修改收入条目修改收入条目 表 3-3 修改收入条目设计 用例名称用例名称修改收入条目 范围范围家庭收支管理系统 级别级别用户目标 主要参与者主
42、要参与者收入管理权限用户 涉众及其关注点:涉众及其关注点:1.收入者:希望查询并修改/删除收入项 2.家庭财务管理者:希望得到每位家庭收入者录入个人收入 的最新信息,以便家庭收入统计和分析 前置条件前置条件用户拥有收入管理权限,并且已登录系统,进入管理界面 后置条件后置条件用户成功修改/删除目标收入条目 主成功场景主成功场景1.用户登录系统 2.用户选择“收入管理”模块,在子菜单中选择“查改用户 收入条目”选项 3.用户进入“查改用户收入条目”界面 15 4.用户选择收入日期范围、项目名称,并以此作为查询条件, 点击“查询”按钮 5.界面下方显示查询到的收入条目列表,点击选择目标条目 6.目标
43、条目信息显示在“收入条目基本信息”栏中,修 改收入信息 7.点击“修改”按钮,提交修改信息 8.系统提示详细修改信息,并询问“是否继续修改/删除收入 项” 扩展点扩展点* a 系统崩溃 *a1 系统异常退出 4a 查询条件下没有查到任何收入项 4a1 系统提示“查询条件下没有找到收入项” 7a 修改金额为空 7a1 系统提示“金额不能为空” 8a 点击“yes” 8a1 先前查询条件下没有查到收入项,跳转至 3 8a2 先前查询条件下查到至少一条收入项,跳转至 5 6b 点击“no” 8b1 关闭“查改用户收入条目”窗口,返回到管理窗口 发生频率发生频率经常 “修改收入条目”活动图如图 3-4
44、。 16 图 3-4 修改收入条目活动图 3.3.3 uc013uc013 查看家庭统计信息查看家庭统计信息 表 3-4 查看家庭统计信息设计 用例名称用例名称查看家庭收支统计 范围范围家庭收支管理系统 级别级别用户目标 主要参与者主要参与者总账查看权限用户 涉众及其关注点:涉众及其关注点:1.家庭财务管理者:希望通过表格或图表统计家庭整体在一 段时间内的收支状况 前置条件前置条件用户拥有总账查看权限,并且已登录系统,进入管理界面 后置条件后置条件系统反馈家庭收支统计情况 主成功场景主成功场景1.用户登录系统 2.用户选择“统计信息”模块,在子菜单中选择“查看家庭 收支统计”选项 3.用户进入
45、“查看家庭收支统计”界面 4.用户选择收入日期范围、类别(收入、支出、收支) ,并以 17 此作为查询条件 5.点击“查看表格”按钮 6.界面下方显示查询到的家庭所有用户收支(/收入/支出) 信息列表,同时统计查询范围内的收入总额、支出总额、期 内余额和家庭余额 扩展点扩展点* a 系统崩溃 *a1 系统异常退出 5a 查询条件下没有查到任何收入项 5a1 系统提示“查询条件下没有找到收入项” 5b 点击“查看表单”按钮 5b1 界面下方显示查询到的家庭所有用户收支(/收入/ 支出)折线图,同时统计查询范围内的收入总额、支出总额、 期内余额和家庭余额 发生频率发生频率经常 “查看家庭统计信息”
46、活动图如图 3-5。 图 3-5 查看家庭统计信息活动图 18 3.4领域模型领域模型 领域模型(domain model)是对领域内的概念类或现实世界中对象的可视 化表示,可以减少我们的思维与软件模型之间的表示差异。10本系统的领域模 型如图 3-6 所示。 图 3-6 领域模型图 19 第四章第四章架构设计架构设计 本章概述系统架构和数据库设计,借助包图描述系统设计思路,利用顺序 图说明两个典型用例的业务实现过程,使用 er 图介绍数据库设计。 4.1系统架构和原理系统架构和原理 家庭收支管理系统使用三层架构体系结构,即将这个业务应用划分为表示 层(ui) 、业务逻辑层(bll) 、数据访
47、问层(dal)三层。三层架构把业务逻 辑分离出来,使程序各部分可以独立开发、测试和维护,提高了程序整体的可 维护性和可扩展性。图 4-1 为系统包图,体现了分层逻辑设计的思想。 图 4-1 包图 表示层主要由响应各种用户界面请求的动作类组成,它会调用业务逻辑层 中的函数进行业务逻辑处理,获取业务逻辑层的反馈信息显示不同的信息给用 户;表示层将用户动作传递给业务逻辑层,由业务逻辑层完成实际的业务逻辑, 20 在这个过程中业务逻辑层可能会调用数据访问层协助完成实际业务逻辑操作; 数据访问层用于访问数据库(即对数据表的增删改查操作) 。 4.2业务用例的实现业务用例的实现 本节选取用户注册、删除支出
48、条目两个用例为例子,使用顺序图来说明系 统业务用例的实现过程和交互过程。 4.2.1 用户注册用例实现用户注册用例实现 用户注册用例的交互过程说明如下: 1. 用户点击进入设置界面; 2. 用户填写完相关注册信息后,按“提交”按钮; 3. regist 类判断用户输入信息是否合法,有不合法数据的情况下,弹出提 示,指导用户更改; 4. register 类把注册信息 pope(用户名、密码以及权限)和 pbal(余额 初始值)传递给 controller 类,调用 controller 类中 add_user()方法; 5. controller 类中 add_user()方法调用 baseo
49、perate 类中 regist()和 addpbal()方法,把注册信息写入数据库,更新数据表; 6. 更新数据成功后,regist 类弹出“注册成功”消息提示窗。 用户注册顺序图如图 4-2 所示: 21 图 4-2 用户注册顺序图 4.2.2 删除支出条目用例实现删除支出条目用例实现 删除支出条目用例的交互过程说明如下: 1. 用户进入查改收支条目界面; 2. 用户选择支出日期范围、项目名称,点击“查询”按钮; 3. 选中要删除的条目,点击“删除”按钮,updateexpense 类将账目信息 acco 传递给 controller 类,调用 controller 类中 delete_a
50、cco()方法; 4. controller 类中 delete_acco()方法调用 baseoperate 类中 deleteitem() 方法,更新数据表; 5. 更新数据成功后,updateexpense 类提示删除成功,datagridview 显 示更新后的支出条目列表 删除支出条目用例的顺序图如图 4-3 所示: 图 4-3 删除支出条目顺序图 22 4.3数据库设计数据库设计 数据库是数据的集合,用于描述一个或多个相关组织的活动。12本系统的 数据库使用 sql server 2008 设计实现。 4.3.1 e-re-r 图图 e-r 方法是“实体-联系方法”(entity-
51、relationship approach)的简称,是 描述现实世界概念结构模型的有效方法。本节针对上述需求分析,使用 e-r 方 法,设计相关的数据模型。本系统 e-r 图包含 3 个实体:用户实体、余额实体、 账目信息实体。图 4-4 为系统 e-r 图。 图 4-4 系统 e-r 图 4.3.2 数据库数据库 数据库描述 本系统的数据库总共包含三个表 tb_popedom,tb_pblance,tb_account。如表 4-1 所示: 表 4-1 系统数据库各表的描述 表名描述 tb_popedom记录注册用户的信息 tb_pblance记录用户余额信息 tb_account记录用户收
52、支信息 数据库设计 23 1. 用户表 tb_popedom,username 为主键,如表 4-2 所示: 表 4-2 用户表 tb_popedom 的描述 字段数据类型描述 usernamevarchar(20)记录用户名 passwordvarchar(20)记录用户的密码 incomebit 记录用户的收入管理权限:1 为拥有此权 限 expensesbit 记录用户的支出管理权限:1 为拥有此权 限 ledger_viewbit 记录用户的总账查看权限:1 为拥有此权 限 2. 余额表 tb_pbalance,username 为主键,如表 4-3 所示: 表 4-3 余额表 tb_
53、pbalance 的描述 字段数据类型描述 usernamevarchar(20)记录用户名 p_balmoney记录用户的个人余额 3. 收支表 tb_account,item_code 为主键,如表 4-4 所示: 表 4-4 收支表 tb_popedom 的描述 字段数据类型描述 item_codevarchar(20)记录收支编号 datedate记录收入/支出日期 usernamevarchar(20)记录用户名 categoryvarchar(10)记录收支类别 projectvarchar(20)记录收入/支出项目 summaryvarchar(20)记录摘要 pricemone
54、y记录金额 注意:tb_account 表中 date 列为收入/支出日期,而非录入/修改日期; category 列记录某条记录是收入项还是支出项;project 列记录收支项目,其中 24 收入类包括“工资与薪金”、 “奖金”、 “养老金”、 “投资收入”、 “自由收入”、 “其他收入”6 项,支出类包括“日常开支”、 “大件消费”、 “医疗费用”、 “偿付性支出”、 “礼金支出”、 “教育支出”、 “投资支出”、 “其他支出”8 项。 25 第五章第五章模块设计模块设计 如图 3-1 系统功能模块图所示,家庭收支管理系统共包含五大模块。本章 选取用户管理模块、支出管理模块,针对其主要流程
55、、算法和核心代码作简要 介绍。 5.1用户管理模块用户管理模块 用户管理模块涉及和用户信息相关的用户注册、登录、系统设置等操作, 本节选取其中用户的设置流程作介绍。 5.1.1 系统设置流程概述系统设置流程概述 用户已登录系统,点击菜单栏上“设置”选项,进入系统设置界面。系统 允许密码重设和权限重设,其中权限重设区域显示用户当前权限。 如果用户希望重新设置密码,那么在“密码重设”区域输入相关信息并点 击“提交”按钮;如果用户希望重新设置权限,那么在“权限重设”区域重选 权限,使用当前密码确认并点击“提交”按钮。如输入(/选择)信息有误或缺 失,系统会有相关提示。 5.1.2 系统设置算法描述系
56、统设置算法描述 重设密码与重设权限流程类似,管理流程算法如活动图 5-1 所示。 26 图 5-1 设置活动图 5.1.3 系统设置部分核心代码系统设置部分核心代码 本节介绍重设权限操作核心代码。 setting 类(windows 窗体)中 button3_click()方法:按下“权限重设”区 域“提交”按钮触发此方法,若检测到输入合法,则调用 setting 类中 updatepope()方法。对应代码如图 5-2 所示。 图 5-2 setting.button3_click()方法 setting 类中 updatepope()方法:把用户输入的权限数据传递给 controller
57、类并调用 controller 类中 update_pope()方法,即把具体业务逻辑操作交给业务 逻辑层处理。对应代码如图 5-3 所示。 27 图 5-3 setting.updatepope()方法 controller 类中 update_pope()方法:调用 baseoperate 类中 updatepope()方 法。对应代码如图 5-4 所示。 图 5-4 controller.update_pope()方法 baseoperate 类中 updatepope()方法:权限数据实例化成参数对象,调用 linkdb 类中 runproc()方法。对应代码如图 5-5 所示。 图
58、5-5 baseoperate.updatepope()方法 linkdb 类中 runproc()方法:传入 baseoperate.updatepope()中构造的参 数数组,调用 linkdb 类中 createcommand()方法创建 sqlcommand 对象, 直接执行 sql 语句命令。对应代码如图 5-6 所示。 28 图 5-6 linkdb.runproc()方法 linkdb 类中 createcommand()方法:创建一个 sqlcommand 对象以此来 执行命令文本。对应代码如图 5-7 所示。 图 5-7 linkdb.createcommand()方法 5.
59、2支出管理模块支出管理模块 由于收入管理模块和支出管理模块操作类似,本章只介绍支出管理模块。 支出管理模块涉及支出项的录入、查找、修改、删除操作。本节选取删除支出 29 条目这一流程作介绍,涉及到查找、删除两项操作。 5.2.1 删除支出条目流程概述删除支出条目流程概述 用户(此用户需拥有“支出管理权限” )进入查改用户支出条目界面,选择 支出日期范围和支出项目名称,点击“查询”按钮。若存在支出项,界面下方 显示支出项列表(datagridview) ,默认选中第一条。反之,系统提示“查询条 件下没有查询到支出项” 。选择目标支出条目,点击删除”按钮,系统提示删除 成功并询问是否继续修改/删除
60、,点击“yes”则以当前查询条件查询并显示查 询结果,点击“no”则退出查改用户支出条目界面,回到管理界面。 若在初始界面直接点击“删除”按钮,系统会提示“请选择修改/删除项” , 本系统不支持批量删除。 5.2.2 删除支出条目算法描述删除支出条目算法描述 删除支出条目算法如活动图 5-8 所示。 图 5-8 删除支出条目活动图 30 5.2.3 删除支出条目部分核心代码删除支出条目部分核心代码 updateexpense 类(windows 窗体)中 button1_click()方法:按下“查询” 按钮触发此方法,调用 updateexpense 类中 selectitem()方法,根据
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 文书模板-《家庭沟通讲座》的方案
- 消防安全知识及消防安全管理考核试卷
- 住宅建筑中的装饰与装修风格考核试卷
- 托儿所服务的户外活动与生态教育考核试卷
- 林木育种的木材品质评价与选择考核试卷
- 油炸食品的食品安全标准与检测方法考核试卷
- 建筑装饰建筑工程项目验收管理案例考核试卷
- 利用生物材料制造新型骨科植入物考核试卷
- 物业管理与电梯运维管理考核试卷
- DB11T 933-2012 儿童福利机构儿童日常生活照料技术规范
- 2024传染病预防ppt课件完整版
- 2024年华融实业投资管理有限公司招聘笔试参考题库含答案解析
- 2024年1月普通高等学校招生全国统一考试适应性测试(九省联考)历史试题(适用地区:贵州)含解析
- 《宽容待人 正确交往》班会课件
- HSK五级必过考前辅导课件
- 小儿胃肠功能紊乱护理查房课件
- 大学生职业生涯规划书铁道工程
- 2024年中国铁路国际有限公司招聘笔试参考题库含答案解析
- 小学教育课件教案雪雕和冰雕的历史与传统
- 医学生临床技能培训
- 2023年度高级会计实务真题及答案解析
评论
0/150
提交评论