个人财务管理系统需求分析.docx
《个人财务管理系统需求分析.docx》由会员分享,可在线阅读,更多相关《个人财务管理系统需求分析.docx(17页珍藏版)》请在冰豆网上搜索。
![个人财务管理系统需求分析.docx](https://file1.bdocx.com/fileroot1/2023-7/17/5e3e488a-3394-42bc-b793-f81f5712be9e/5e3e488a-3394-42bc-b793-f81f5712be9e1.gif)
个人财务管理系统需求分析
1.引言----------------------------------------------------------2
1.1编写目的--------------------------------------------------2
1.2项目背景--------------------------------------------------2
1.3参考资料--------------------------------------------------2
2.总体描述------------------------------------------------------3
2.1产品描述------------------------------------------------3
2.2产品功能------------------------------------------------4
2.3用户类及特征--------------------------------------------5
2.4运行环境------------------------------------------------5
3.功能需求------------------------------------------------------6
3.1需求获取-------------------------------------------------6
3.2需求分析-------------------------------------------------7
3.2.1业务需求-------------------------------------------7
3.2.2用户需求-------------------------------------------8
3.2.2.1用户需求描述-------------------------------8
3.2.2.2用户需求用例图-----------------------------9
3.2.3接口需求-------------------------------------------9
3.2.3.1用户接口-----------------------------------9
3.2.3.2硬件接口-----------------------------------9
3.2.3.3软件接口-----------------------------------10
3.2.4功能需求-------------------------------------------10
3.2.5非功能需求-----------------------------------------14
数据字典--------------------------------------------------------14
基于Android平台的个人财务管理系统
------需求规格说明
1引言
1.1编写目的
编写需求规格说明的目的是为了开发基于Android的个人财务管理系统的所有需求文档,安排项目规划与进度,组织软件开发与测试,定义出各种不同需求以及接口,对设计的要求做进一步的探讨,画出各种用例图,数据流图来指导并更形象的描述系统运行的情况。
该需求规格说明预期的读者包括项目经理,产品经理,设计人员,项目提出及验收的人士以及开发人员。
其中项目提出人员阅读后应适当对文档提出建议,是否有不完善或不妥的地方,是否能达到自己对该系统的预期。
1.2项目背景
a.该项目由软件设计与体系结构课程作为实验开发,由本小组作为开发单位,在此的主管部门为负责需求获取的人员小组;
b.该软件系统目前市面上已有类似产品,可将他们作为一部分进行需求分析,以求最终得到的文档更为完善。
1.3参考资料
a.已形成的项目开发计划
b.可行性研究形成的文档
2.总体描述
2.1产品描述
a.系统功能:
当今社会,随着社会经济的发展,价值的交换也越来越多,货币的流通量也随之变得越来越大。
人们可能常常会有一种不知道自己的钱的去处的疑问,如果仅仅用笔和纸来记录显得相当麻烦且不实际,并且也不符合当代人的生活习惯。
目前的电子理财软件偏向于商业级别,且主要用于企业级和部门级,但是个人理财的需求越来越迫切,而专业的大型商业软件价格昂贵并且功能庞杂而无法满足需求。
为了方便用户更好的理财,以及对资金去向有一个更清晰的了解,我们就需要一个可以帮我们完成对收入和支出资金的信息进行整理、图像化、查询等功能的信息管理系统。
为了使用方便,该系统应该可应用于便携设备,这里我们主要研究基于Android平台上的情况。
该系统的主要功能为管理资金流动信息,可以对信息进行查询,添加以及修改等,同时可以将开销分类管理并根据相应数据做出比较直观的图表。
它把每笔支出的状态都清晰的展现在你的面前。
使客户能够对自己的财务状况有一个清晰认识,方便管理自己的财务,提供时间段的财务统计。
本软件免费,简单,实用,满足家庭和个人的理财需求。
b.输入:
在操作该系统的过程中,除了通过按钮选择需要实现的功能外,其他功能如下:
1.添加栏下,在资金收入/支出/借贷的部分中,需要输入的部分有金额、日期以及具体的原因;
2.添加栏下,借贷的部分的输入包括借出/被借对象,对象联系方式,
借出/借进的金额和借贷的开始时间以及终止时间;
3.可根据收入设置或取消在某段时期内每天支出金额限制(可分类),若
某天超支则需要选定是否让该超支结果影响该月之后每天的支出金额;
4.在设置栏中,用户可以自己设置支出的分类项,使系统更为个性化;
5.输入包括在进入系统时对身份的验证信息。
c.输出:
该系统的输出主要就是检索出的信息主要是以往的资金流动历史
1.在查询资金状况时(此处可以选择日期、资金使用方面为检索条件),会输出一张列表,上面清晰列出了资金支出/收入的具体金额,用途和日期;
2.该系统也可以完成以天或月或年为时间单位,就对整体或单就某方面的资金支出画出折线图,让你更了解资金动态;
3.或者就支出中的各部分做出一张饼状图,让你更清晰看到使用的各部分资金的比例;
4.当某天支出资金超支时,给出提醒,并可选择根据它调整该计划周期内的财务计划;
5.当借贷模块中,要还款或收取还款的时候,系统会予以提示。
d.系统的总体大概的一个数据流程图:
2.2产品功能
该产品的功能包括对花销计划表的设定;基本功能像对每笔费用的记录;以任意时间段给出支出收入一览表或者绘制支出资金折线图;以任意时间段给出该时间段内各类开销所占比例的图;可以设置超支,并对超支的情况给用户提示;存入或查看借贷相关信息,并提示还款或收取还款。
以下图表示该系统需要具有的功能:
2.3用户类及其特征
用户:
所有拥有Android设备并且有更好理财计划的人,利用该系统记录下平时的所有支入支出,统计自己的资金流动金额,以更形象的方法例如流线图及饼状图来查看自己的开支走向及比例,并给自己制定相应的理财计划。
2.4运行环境
该系统运行环境分客户端、服务器端两部分。
以下是系统所需的运行环境:
(1)客户端
操作系统:
Jellybean及其他版本Android操作系统
(2)应用服务器端
由于尚未学习过通信方面的知识,该系统现阶段是单机版,不过有计划在将来实现时添加本小组成员电脑作为服务器实现云存储。
3.功能需求
3.1需求获取
需求获取可有以下几个途径:
1.召开会议,会议出席人员包括这个项目的提出者,该开发的需求获取的人员,一些用户等,大家提出关于该系统他们认为应当完成的功能,将其记录下来,大家进行讨论,将适合的需求确定下来形成文档;
2.通过对已有系统的研究获取需求,可以从他的开发者获得很有用的信息,并且可以从他的用户对他的评价中发现该系统的不足,避免自己的系统重蹈覆辙,对他已有的功能做分析;
3.可以通过在网上进行问卷调查,调查大众对该系统有怎样的期望与需求。
最终将讨论出的可能的功能形成列表:
功能名称
功能描述
功能分类
功能评价
操作收入/开销相关内容
该操作包括添加、删除或修改收入/开销的金额,日期以及备注
基本功能
必要,作为为系统的基本功能,功能应当尽可量多样性,尽可能人性化
操作借贷相关内容
该操作包括添加、删除或修改借出/借入的金额、日期、应当归还的时间以及原因
基本功能
必要,同上,应当尽可能功能多样化并且人性化
计划表
该计划表可设置每天花费的最高值,当超过时会给用户提示。
资金规划
必要,本系统的特色功能,主要帮助用户更好的规划自己消费习惯
提醒
该功能主要就每天花费超支时以及借贷日期到的时候给用户的提醒,频率次数均可设置
提醒功能
必要,避免了用户遗忘借贷日期带来的一系列不必要的麻烦,也提醒用户注意自己的消费习惯
查看
以列表形式,可按照花销分类及某时间段查看详细花销与收入的对比,同时可以以折线图的形式画出开销/收入变化趋势和分析开销各种类别所占比例的饼状图
查询功能
必要,便于客户查看消费历史,而图表功能则更清楚的将他们展示出来,更有利于理财。
3.2需求分析
这里将需求分为业务需求,用户需求,功能需求与非功能需求进行讨论。
3.2.1业务需求
不同于古时的以物换物,货币乃至信用卡在这个时代已经变得非常普遍了,货币已然成为财富和流通价值的象征。
在经济的急剧发展和贫富差距逐渐加大的今天,个人每天财务流动变大,想要能够成功地全面详细的管理财务的难度也变得很大,这些导致人们对个人财务管理的需求逐渐增大;对于个人来说,现在用钱的方面非常多,这个世界上除了空气、阳光,仔细想来其他的什么其实都是要花钱的,生命的延续不用说,我们要靠买来的食物支撑身体的正常代谢,一次娱乐,就连普通的游戏也是需要付费才能继续的,现在我们赖以生存的电力、水也都是一样。
可能很多人会发现钱要挣的时候难,但花的时候却非常快,到最后消费完对账的时候才发现超支了许多,却也想不起是怎么花的了,结果也买了很多昂贵又不必要的东西。
对于经济并不富裕的人们,这无疑会加大经济上的压力,这时候人们就会需要一个系统来帮助他们记下自己的消费记录,以便他们能回头对自己的消费做出评价,由此避免以后类似的浪费,同时可以找出适合自己的最经济的购物方式;并且在消费时,若有超支的迹象,这个系统可以给我们提供正确的意见和计划,他给出的列表和图表,让消费状况变得更加直观,也便于我们更好更方便的管理自己的财务状况;我们就是针对用户的这种需求确定基于Android的个人财务管理系统的想法的。
本软件面向的用户是普通的个人用户,用户的知识水平参差不齐,对于传统大型理财的自动化软件需要很长的平均学习时间,而且对于价格昂贵的商业软件,显然无法接受。
但是目前人们却有着日益增长的理财需求,因此对于普通用户而言,追求的软件应该是简单,实用和廉价的。
目前廉价的自由软件或者免费的公共软件才是他们最好的选择。
本设计主要实现的是个人财务的管理,从而方便大家。
这里他的主要功能有:
对收入支出的详细记录,制定计划表来实时监控自己的消费情况,查看当前消费情况,在用户非理性消费时给予提醒,记录借贷状况,对借贷中应当归还的日期可在可设置的一定时间范围内对用户进行提醒和以形象化的方式展示和并分析消费历史。
该系统可以高效,快速的执行操作以及对大量数据安全存储,使程序尽可能小占用资源小资金消耗少。
3.2.2用户需求
该系统主要只包括一类用户:
即为对财务管理有需求的系统使用者。
3.2.2.1用户需求描述:
用户需求包括:
1.记录每次的收入2.记录每次资金支出3.记录借贷情况4.设定某周期的计划表5.当检测当前支出会破坏计划时,给予提醒6.可选择设置借贷归还日期时是否予以提醒7.查看资金流动历史8.查看当前可支配余额
3.2.2.2用户需求用例图:
3.2.3接口需求
3.2.3.1用户接口
a.屏幕格式要简明易懂易于操作,适当给予帮助选项;
b.保证反应的及时性,即系统的反应时间应尽可能短,这里要求输入输出的相对时间不超过0.1ms;
c.保证程序功能的可用性;
这里的输入包括两种事件,手指点击和文本的输入,包括手指的滑动,系统得到确认后对他们进行响应;输出包括搜索资金历史流动列表,计划表,对资金分析的图表等。
3.2.3.2硬件接口
A.硬件接口:
普通的基于Android平台的移动设备
B.网络硬件接口要求,本系统并不实现联网的功能,所以并无此方面的要求。
3.2.3.3软件接口
该系统中的软件接口包括资金历史流动数据库与该系统的接口;在以后的功能预期中,在理想中可以实现的范围内,若添加包括将系统关系到银行卡和联系到条形码的信息以便对输入进行简化等功能,那么该系统还应连接到包含用户的账户信息的系统。
3.2.4功能需求
该系统的功能需求应该分为以下几种:
1.查看2.设置3.收入/支出管理4.借贷管理5.账户管理
1.查看
A.查看历史
基本功能,便于用户查看资金流动历史。
本系统支持通过输入时间段来查看资金流动历史,界面中会有时间栏,若此时只填“年”这一栏,那么输出的表格为以年为单位,表格包括该年的总收入与总支出和结余;若输入“年”“月”,则以该年每月为单位,列出月收入、月支出与该月的结余;若输入为“年”“月”“日”,那么会显示改天所有收入与支出的记录,点击某一天记录可对该记录进行详细查看。
将界面往左或往右划时,会分别显示出以当前单位为横坐标总收入/总支出的折线图和将该时间段内收入/支出中各种类别所占比例显示的饼状图。
B.对当前余额的查询
进入查看的界面,就可以看到当前可支配余额,该余额是由收入与已支出部分的插值由系统算出来的,但用户也可以自行修改。
2.设置
A.借贷提醒设置
该功能是为了提醒用户还钱或收取借款。
这里的借贷提醒设置主要的情况是这样,对一笔借贷来说,当靠近预期还款时期时,你可以设置是要提前几天开始通知和是否需要自提醒之日开始每天提醒直到取消该提醒或是设置为只提醒一次。
其中的所有提醒会显示在提醒栏中。
B.任务计划的设置
任务计划的设定,主要是对一个时间段中的每日开销进行限制,这里的设置与以后的提醒有直接关系。
在该设置中,输入主要包括该任务计划的有效时间和每日最高消费记录,并可根据意愿选择是否需要当某日开销超出最高消费时系统给予提醒。
其中的所有提醒会显示在提醒栏中。
3.收入/支出管理
A.收入/支出的分类
该功能便于用户的输入,也便于管理、制图。
这里的收入/支出分类指的是本次收入/支出的来源/去向,系统默认的收入类别有工资、奖金等,支出类别有娱乐、餐饮等,这些类别是可以根据用户需求自定义的,用户可以自己添加或删除类别。
当你需要添加新的一条收入/支出记录时,你需要先选择分类再输入具体数目及其他内容。
B.收入/支出的输入
该模块包括输入收入/支出的金额和备注,当然你也需要包含该记录的时间以便以后记录表的形成,若此时你不输入时间,那么系统会默认时间为当前时刻。
4.借贷管理
借贷管理中,我们没有严格区分借出/借入,还出/还入的区别,我们这里只在乎资金的流动方向,即只关心是收入了钱还是支出了钱,因此这里“借入”与“还入”是用一个界面来操作的,同样的,“借出”与“还出”是用一个界面来操作的。
A.借贷(入)
该功能用于记录借贷信息。
可以选择编辑也可以选择在列出的借贷记录中选择标记一个,这里我们可以看出,这里的选择编辑是添加新的记录,在此处的意思即为有新的借入的记录,系统中之前并没有这条记录;而当选择在列出的记录中标记一条记录为已还的意思为,这条记录已经存在于系统中,所以这次“收入”为还入的资金。
当然若不进行任何一个操作,可以不操作回到上一个界面。
B.借贷(出)
该功能与借贷(入)非常相似,只是这里它分为借出和还出。
其中“借出”的操作相当于“借入”,需要新建一条记录;而“还出”则相当于“还入”,只需要标记一个借贷记录中的一条记录即可。
其他的部分同借贷(入)。
C.借贷记录的添加
除了借贷的金额外,这里添加的记录包括当时的具体时间和预计还款的时间,和备注,这里的备注可以包括这笔借贷的原因、对象和对象的联系方式等,并且这里可以选择添加还款的提醒。
5.账户管理
除了登陆系统前需要输入密码外,这里的账户管理包括对密码的修改,当进入密码管理界面时,正确输入旧密码后,输入两次新密码,若两次密码正确的话,那么该密码修改为这个新密码。
系统主要数据流图:
对当前密码的请求
用户密码表
新密码
新密码新密码
当前密码
登陆密码
基于Android平台的个人财务管理系统
用户
重新输入密码的请求
新密码
包含历史记录的表格
借贷具体信息
取消某借贷记录
设置某条借贷为提醒的请求
借贷记录列表
希望查看历史记录的日期
每日最高消费限额
预计收入\支出
设置超出最高消费会提醒的请求
任务计划起止时间
新的收入/支出分类
删除收入/支出分类的请求
一项收入/支出具体内容
提醒的日期和周期
提醒事务列表
查看根据当前数据制成图表的请求
根据当前显示历史数据制成的图表
收入支出具体内容
每日最高消费
借贷记录
历史记录
提醒列表
收入支出类别
借贷提醒设置
当前可支
配余额
3.2.5非功能需求
性能需求:
由于用户使用这个系统的时间跨度较大,它的信息量也会随着时间的过去变得很大,因此系统涉及需要存储的数据会比较多,这就需要系统是稳定的,系统的数据不会丢失可以恢复,安全要求系统信息不会被外界更改,只有固定的权限才有更改信息的权利,要求系统健壮不易崩溃,可以把错误率尽可能地降低。
同时因为这是一个处理数据精度高的系统(当修改了信息状态后,马上查找数据时就可以得到显示),反应时间不宜太久,短暂获得响应,可以灵活的做出调整,故障出现能够快速的处理;在速度和可靠性方面都对软件提出了要求。
操作界面及平台需求:
操作界面应当简洁明了,便于操作,并适当有美化功能;基于Android平台。
当面对错误用例:
a.软件在操作过程中因为遇到停电而中断,软件将丢失正在操作的信息,基础数据将恢复到最后一次修改保存后的状态。
b.软件因病毒感染而造成部分系统文件受损,影响软件的正常工作。
遇到这种情况应该可以拷贝本软件的数据库(或者本软件自己的数据存储格式的文档),然后重装本软件,在加载保存的数据库恢复原始状态。
如果数据库文件(或者本软件自己的数据存储格式的文档)受到损坏,则不能恢复。
所以应对这种状况的解决办法是用户应该自觉定期的做好数据备份。
当遇到这种状况以后可以调出自己的备份文档,恢复到最后一次更改保存的信息。
c.软件本身的缺陷,BUG的问题。
在用户使用过程中遇到类似软件的质量问题。
提供联系方式,尽力尽快的完善本软件。
数据字典:
数据项
数据项关键字
数据项含义
数据类型
用户密码
Userpassword
用户的登陆密码
字符型