版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕业设计(论文)基于.NET平台个人收支管理系统的设计与实现院 系 专 业 班 级学 号 学 生 姓 名 联 系 方 式 指 导 教 师 2012 年 4 月 目 录第1章 引 言11.1 课题开发背景11.2 开发环境与开发工具11.2.1 .NET平台介绍11.2.2 C#语言及VisualStudio200821.2.3 SQL Server 200531.3 三层架构介绍31.4 系统简介3第2章 可行性研究与需求分析52.1 可行性研究52.2 业务需求52.3 功能需求62.4 性能需求72.5 运行需求7第3章 整体设计83.1 系统整体设计83.2 数据库总体设计8第4章 详细
2、设计过程104.1 数据库设计104.2 项目结构124.3 项目流程图134.4 系统主要模块界面及相关说明144.4.1 系统启动检测144.4.2 登录及注册144.4.3 系统主界面154.4.4 用户信息154.4.5 收支项目管理164.4.6 收支明细管理164.4.7 统计模块18第5章 项目测试205.1 测试目的205.2 测试方法205.3 测试用例21结 束 语23参 考 文 献24第1章 引 言1.1 课题开发背景随着科技的出现与迅速的发展、技术步伐的加快,每个人走在事业的道路上会面临着众多的挑战与竞争,在竞争过程中,对于个人而言,良好的收支管理是个人发挥竞争优势的前
3、提。收支管理的目的,不在于要赚很多很多的钱,而是在于让人们将来的生活有保障,生活的更好,更能体现其竞争力。所以说收支管理不只是有钱人的事,工薪阶层和学生同样需要管理自己的收支。因此收支管理是一个人进入社会后必须具备的能力之一,这对即将踏入社会的毕业生来说显得尤其重要。所以建立这样的意识还是很有必要的,为学生以后踏入社会奠定坚实的理财基础。但是个人的收支包括很多种,收支统计就变成了一件繁琐的事,靠笔记和脑记是远远不够的,需要有一个智能的日常收支管理软件帮助我们更好的打理我们的收支。目前市场上的财务软件种类繁多,大型的财务软件如金蝶、用友等,针对个人的财务软件有用友旗下的财智软件、中国式个人理财软
4、件等。但这些软件功能太多而显得繁琐,而我们目前需要的功能仅是用户管理、收支项目管理、收支信息录入、收支信息查询。系统就是基于这样的情况而设计的,软件采用C/S设计模式。1.2 开发环境与开发工具设计基于.NET平台,Windows开发环境,应用的开发工具是Microsoft Visual Studio 2008或者Microsoft Visual Studio 2010,程序设计语言是C#,采用三层的设计模型,SQL Server 2005数据库。 .NET平台介绍Microsoft .NET是一个称之为理想化的未来因特网环境,微软的构想是一个“不再关注单个网站、单个设备与因特网相连的互联网环
5、境,而是要让所有的计算机群、相关设备和服务商协同工作”的网络计算环境。 Microsoft .NET追求的是以上所说的一种理想的互联网环境。Microsoft .NET的最终目的就是让用户在任何地方、任何时间,以及利用任何设备都能访问他们所需要的信息、文件和程序。而用户无需知道这些东西存在什么地方,甚至连如何获得等具体细节都不知道。 Microsoft .NET开发框架支持多种语言。而且Microsoft公司支持第三方生产针对Microsoft .NET的编译器和开发工具,这也就是说几乎所有市场上的编程语言都有可能应用于Microsoft .NET开发框架。.NET框架图如图1-1所示。图1-
6、1 .NET框架图1.2.2 C#语言及VisualStudio2008 C#是美国微软公司推出的Windows操作系统下的应用程序开发平台VisualStudio.NET(简称VS.NET)家族中的一员C#是对C+进行了很大改进的一种完全面向对象的可视化程序设计语言。由于C#采用了类似于Visual Basic 的较易使用的程序设计界面,从而成为了一种更加简单易学、功能强大的应用程序开发工具。C#是一种先进的、面向对象的语言,使用C#语言可以让开发人员快速的建立大范围的基于MS网络平台的应用,并且提供大量的开发工具和服务,帮助开发人员开发机基于计算和通信的各种应用。由于C#是一种面向对象的开
7、发语言,所以C#可以大范围地适用于高层商业应用和底层系统的开发。即使是通过简单的C#构造,也可以让各种组件方便的转变为基于Web的应用,并且能够通过Internet被各种系统或是其他开发语言所开发的应用调用。Visual Studio是一套完整的开发工具集,利用它可以生成Windows应用程序,Web应用程序,Web Service程序等。VB.NET、VC.NET、C#.NET、J#.NET都可以在这个环境中开发。利用此IDE可以共享工具且有助于创建混合语言解决方案。另外,这些编程语言使用了.NET Framework的功能,通过此框架可以简化ASP.NET Web 的开发难度。 SQL S
8、erver 2005Microsoft SQL Server是由美国微软公司所推出的关系数据库解决方案。SQL Server 是一个全面的数据库平台,使用集成的商业智能 (BI) 工具提供了企业级的数据管理。SQL Server 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能。SQL Server 是一个全面的、集成的、端到端的数据解决方案,它为企业中的用户提供了一个安全、可靠和高效的平台用于企业数据管理和商业智能应用。SQL Server数据平台包括以下工具:关系型数据库,复制服务,通知服务,集成服务,分析服务,报表服务,管理工具,开发工具。通过SQL Server平台可以为用
9、户提供以下方面的应用:充分利用数据,提高生产力,减少IT复杂度,更低的总体应用成本。系统所采用的开发环境主要是基于数据库系统的SQL Server 2005 和基于面向对象程序设计的C#。利用SQL Server 2005创建个人收支系统信息表。利用C#和数据库建立连接之后,利用C#中的控件按钮以及一些程序代码实现一些特定的功能,例如基础收支类别信息的管理、收支明细管理和收支信息的查询统计。1.3 三层架构介绍 所谓三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体
10、系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交互。 三层架构通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想。 表现层(UI):用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。数据访问层
11、(DAL):该层所做事务直接操作数据库,针对数据的增添、删除、修改、查找等。1.4 系统简介“个人收支管理系统”主要包含以下几个模块:用户管理,收支项目管理,收支明细管理和收支信息的查询统计。可以实现用户管理功能,包含注册、密码设置及更改、登录功能;收支项目管理功能,包含收支项目的添加、更改及删除功能;收支明细管理功能,包含对每一项收支信息的录入、保存、修改及查询功能;收支信息统计功能,此功能是系统中最重要的功能,可以根据用户的设置统计出相应的信息并且以表格的形式显示出来。系统里面还有信息验证及提醒功能。每一项操作,都设置有操作提醒,方便用户知道操作的结果。第2章 可行性研究与需求分析2.1
12、可行性研究可行性研究主要从业务逻辑分析可行性和技术可行性来论证设计的可行性。目前市场上的财务软件种类繁多,大型的财务软件如金蝶、用友等,针对个人的财务软件有用友旗下的财智软件、中国式个人理财软件等。“个人收支管理系统”的业务逻辑处理完全可以参照这是成熟软件的处理方式,因此在业务逻辑分析上具有可行性。根据业务逻辑分析,需要掌握的相关技术有:1. SQL Server数据库基础知识,比如建库、建表的方法;添加、更改及查询的SQL语句。2. 三层架构的比较深入的理解及熟练应用。用这个架构是为了程序以后扩展。3. ADO.NET知识。用于对数据库的操作。4. WinForm应用程序的常用控件,比如:M
13、enuStrip(菜单栏控件)、ToolStrip(工具栏控件)、ListView(数据列表控件)、DataGridView(数据列表控件)、CheckBox(复选框)、RadioButton(单选框)、ComboBox(下拉列表)、DateTimePicker(日期控件)、ErrorProvider(操作信息提醒)、Timer(计时器)、BackgroundWorker(多线程控件)等等。5. 类、接口、字段及属性等知识。2.2 业务需求鉴于此系统主要是给个人使用,系统界面应该友好的面向用户,具有操作简单、易于用户数据的录入和查询,所以选择的是Windows窗体应用程序进行开发的。为了便于以
14、后维护、扩展,具体设计的时候用得是三层架构开发模式。而且SQL Server数据库又是关系型数据库,与面向对象的设计思想能够很好的结合。SQL Server 2005可以通过新数据库镜像方法,将记录档案传送性能进行延伸。您将可以使用数据库镜像,通过将自动失效转移建立到一个待用服务器上,增强您SQL服务器系统的可用性。SQL Server 2005包括了一些在安全性能上的改进,例如数据库加密、设置安全默认值、增强密码政策、缜密的许可控制、以及一个增强型的安全模式。根据分析数据库共需要三张表,用户表、收支类型表、和收支明细表。用户表由于存储用户ID、登录名和密码;收支类型表用于存储收支项目编号和收
15、支项目名称;收支明细表主要用于存储用户的收支详细记录,如用户编号、收支项目、收支时间、是否收支、收支事件、收支金额、记录建立时间、记录修改时间等,并且收支明细表其它两个表做关联统计相关用户不同收支项目的详细记录。2.3 功能需求由于要实现收支管理,“个人收支管理系统”至少要满足以下功能:1. 需要建立收支项目,并且收支项目可以根据要求随时设置。毕竟每一个人的生活环境是不一样的,所以每个人都有自己的消费领域。所以本系统不可能设置几个固定的收支项目。2. 由于软件所设置的信息记录的是个人隐秘的事情。这些收支信息很有可能不让其它人随便查看,所以需要用户管理功能。3. 要方便录入收支信息,并且随时可以
16、根据需要添加收支项目。4. 提供查询功能,可以根据收支日期或者时间、收支项目查询出收支明细信息。5. 相对查询功能来说,统计功能是更为重要的一项功能。比如统计一个月每一天的收支总计,每一天各类型的收支总计等等。综上所述,本系统需要四个重要的功能,分别如下:1. 用户管理功能。包含注册、密码设置及更改、登录功能。2. 收支项目管理功能。包含收支项目的添加、更改及删除功能。3. 收支明细管理功能。包含对每一项收支信息的录入、保存、修改及查询功能。4. 收支信息统计功能。此功能是系统中最重要的功能,可以根据用户的设置统计出相应的信息并且以表格的形式显示出来。另外,系统里面还有信息验证及提醒功能。每一
17、项操作,都设置有操作提醒,方便用户知道操作的结果。由于每台计算机的服务器名称不一样,数据库的链接字符串是存放在配置文件里面。 2.4 性能需求从性能上说要保证系统能够长期有效、安全、稳定、可靠高效运行。系统处理数据的准确性和及时性是系统的必要性能,在系统的设计和开发过程中,要充分考虑当前的和将来可能的承受的工作量,使系统的处理能力和响应时间能够满足用户对数据的处理的需求。系统设计时应考虑以后的可维护性和扩充性。系统采用了三层架构(数据访问层、业务逻辑层、表现层)的设计方法,并且是基于.NET平台开发,很容易对功能进行维护及扩展。2.5 运行需求 由于系统是基于.NET平台开发的,故系统需要在.
18、NET Framework 2.0以上的版本运行,为保证系统的最佳性能,最好在.NET Framework 3.5版本上运行。操作系统要求Windows 操作系统,内存大于1G,数据库为SQL Server 2005。第3章 整体设计3.1 系统整体设计通过需求分析“个人收支管理系统”主要包含以下几个模块:用户管理,收支项目管理,收支明细管理和收支信息的查询统计。可以实现用户管理功能,包含注册、密码设置及更改、登录功能;收支项目管理功能,包含收支项目的添加、更改及删除功能;收支明细管理功能,包含对每一项收支信息的录入、保存、修改及查询功能;收支信息统计功能,此功能是系统中最重要的功能,可以根据
19、用户的设置统计出相应的信息并且以表格的形式显示出来。系统里面还有信息验证及提醒功能。每一项操作,都设置有操作提醒,方便用户知道操作的结果。系统功能模块图如图3-1所示。图3-1 系统功能模块3.2 数据库总体设计根据分析数据库共需要三张表,用户表、收支类型表、和收支明细表。用户表由于存储用户ID、登录名和密码;收支类型表用于存储收支项目编号和收支项目名称;收支明细表主要用于存储用户的收支详细记录,如用户编号、收支项目、收支时间、是否收支、收支事件、收支金额、记录建立时间、记录修改时间等,并且收支明细表其它两个表做关联统计相关用户不同收支项目的详细记录。图3-2至3-4是系统数据库的实体图。真实
20、姓名 用户名用户密码用户编号 用 户图 3-2 用户实体图 收支类型编号 收支类型名称 收支类型图 3-3 收支类型实体图收支日期用户编号 明细编号收支时间记录更改时间记录建立时间 收支明细是否收入收支项目消费事件消费金额图 3-4 收支明细实体图第4章 详细设计过程4.1 数据库设计数据库名称:db_PFS。根据功能,数据库共需要三张表,用户表、收支类型表、和收支明细表。此系统里面的数据库结构设计如下。用户表如表4-1,用于存储用户编号、用户名、真实姓名和密码,其中真实姓名可为空。表4-1 tb_User,用户表字段名称类型解释是否主键可否为空格式规定其它说明UIdVarchar(4)用户编
21、号是否0001,0002不是自增列UNameVarchar(10)用户名否否张三,王小明不是自增列UNameTureVarchar(10)真实姓名UPasswordVarchar(10)用户密码否否123不是自增列收支类型表如表4-2,用于存储收支项目编号和收支项目名称,其中收支项目编号为主键且不能为自增列。表 4-2 tb_CostItemType,收支类型表字段名称类型解释是否主键可否为空格式规定其它说明CostItemIDVarchar(2)收支项目编号是否01,02不是自增列CostItemTypeVarchar(max)收支项目名称否否字符串不是自增列 收支明细表如表4-3,主要用于
22、存储用户的收支详细记录,如用户编号、收支项目、收支时间、是否收支、收支事件、收支金额、记录建立时间、记录修改时间等,并且收支明细表其它两个表做关联统计相关用户不同收支项目的详细记录。其中Cno只所以是设置为自增列,一个原因是这个表数据要经常用;第二个原因是这个表的主键没有其他表作为外键。当NoteCreateTime= NoteUpdateTime时,说明此记录从录入到现在没有更改。表4-3 tb_CostDetail,收支明细表字段名称类型解释是否主键可否为空格式规定其它说明CNoint收支明细编号是否自增列UIdVarchar(4)用户编号否否不是自增列CostDatedatetime记录
23、收支日期否否2011-10-20不是自增列CostTimedatetime记录收支时间CostItemIDVarchar(2)收支项目否否收支类型表主键IsGetMoenyBit,布尔类型是否收入否否True,falseCostEventVarchar(max)消费事件否否生活费不是自增列Moneymoney金额否否¥3.00不是自增列NoteCreateTimedatetime此记录建立时间否否2011年9月30日22:43:11系统自动生成NoteUpdateTimeDatetime此记录更改时间否是2011年9月30日22:43:55若为空,则说明没有更改过4.2 项目结构项目结构截图如
24、图4-1。从底层到顶层依次是实体层,数据访问层,业务逻辑层,表现层,其中下面一层为上一层提供服务。图 4-1 项目结构4.3 项目流程图 项目流程如图4-2所示。是否退出程序启动数据库是否正常连接登录是否异常信息提醒是否登录成功是否已注册用户是注册用户否是否是主窗体用户管理收支类型管理收支明细管理汇总统计管理退出系统否退出系统图 4-2 项目流程图4.4 系统主要模块界面及相关说明 系统启动检测 此过程中程序一方面检测是否与数据库建立连接,一方面显示进度条,如图4-3。当与数据库建立连接后则跳转到登录界面,若与数据库连接失败则跳出相关错误提醒,如图4-4。图 4-3 程序启动界面图 4-4 检
25、测出异常信息 登录及注册 用户登录界面,如图4-5。输入用户名和密码,和数据库匹配,若正确则成功登录,若不是用户点击注册,进入注册页面。图 4-5 登录 用户注册页面,如图4-6。输入相关信息进行注册,若为空则提示。图 4-6 注册 系统主界面 用户主界面,如图4-7。上方为工具栏方便用户进行操作,界面友好。下方为用户登录信息,如用户编号、名称、姓名、登录时间、当前时间,可以使用户确认当前登录用户是否是自己。图 4-7 主界面 用户信息 用户信息界面,如图4-8。用户主界面上方工具栏最左边的按钮。点击后及显示当前登录用户信息,方便用户核对信息和进行密码修改。图 4-8 用户信息 收支项目管理
26、收支项目管理界面,如图4-9。用户可以进行添加、修改、删除收支项目。当用户添加收支项目尚未保存或者添加重复的记录时,操作记录或提醒会有相应的提示。图 4-9 收支项目管理 收支明细管理 收支明细管理界面,如图4-10。用户可以录入、修改、删除收支明细,还可以根据时间对相关收支明细进行查看,而且可以实现多条收支记录的同时删除。图 4-10 收支明细信息显示及查询 添加收支信息界面,如图4-11。界面友好方便用户数据录入,收支类型为用户在收支项目管理中所添加的项目,而且可以实现多条收支记录的同时保存。对添加尚未保存的记录选择后可以进行修改和移除。图 4-11 收支明细信息录入 统计模块 信息统计界
27、面,如图4-12。该模块是本系统核心功能,用户可以根据日期和收支项目对自己的收支信息进行统计,而且统计表格的列除了日期时间、统计选项、收支合计、收入合计、支出合计其余列是随着收支项目的选择动态变化的。其中查看表格的作用是为了核对输出表格是否符合用户的统计要求,及只显示统计选项的空表格不显示数据,统计数据及查询用户收支信息。图 4-12 信息汇总统计第5章 项目测试5.1 测试目的系统测试的目的决定了如何去组织测试。如果测试的目的是为了尽可能多地找出错误,那么测试就应该直接针对系统比较复杂的部分或是以前出错比较多的位置。如果测试目的是为了给最终用户提供具有一定可信度的质量评价,那么测试就应该直接针对在实际应用中会经常用到的商业假设。测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的分布特征,可以帮助项目管理者发现当前所采用的系统过程的缺陷,以便改进。同时,这种分析也能帮助我们设计出有针对性地检测方法,改善测试的有效性。没有发现错误的测试也是有价值的,完整的测试是评定测
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 淮阴师范学院《体育科研方法》2021-2022学年第一学期期末试卷
- 淮阴师范学院《仪器分析》2022-2023学年第一学期期末试卷
- 淮阴师范学院《乡村地理学》2023-2024学年第一学期期末试卷
- 淮阴师范学院《分析学专题研究》2022-2023学年第一学期期末试卷
- 淮阴工学院《食品分析与感官评定》2023-2024学年第一学期期末试卷
- 淮阴工学院《液压与气压传动1》2021-2022学年第一学期期末试卷
- 五年级诗词大会活动方案
- 天然气开采的社会与经济影响评估考核试卷
- 光学仪器的激光光源选择技术原理与应用考核试卷
- 化学矿石的电极半反应和电池动力学考核试卷
- 伴有精神病性症状的重度抑郁发作的护理查房
- 部编版七年级上册语文基础知识训练及答案一
- 污泥( 废水)运输服务方案(技术方案)
- 如何搞定你的客户-
- 八年级物理上册说课稿:第二章2.1物质的三态 温度的测量
- 职业院校面试题目及答案
- 湖北省鄂东南省级示范高中教育教学改革联盟2023-2024学年高一上学期期中联考政治试题
- 海水淡化处理方案
- 福建省厦门市翔安区2023-2024学年九年级上学期期中英语试题
- 学生对学校满意度评价表
- 化工项目国民经济分析 化工项目技术经济
评论
0/150
提交评论