一个轻记账本的设计与实现

2022-05-31 01:13黄张昊刘星含范龙辉宋云翔李昊龙丁龙霏
电脑知识与技术 2022年11期
关键词:记账消费

黄张昊 刘星含 范龙辉 宋云翔 李昊龙 丁龙霏

摘要:随着社会科技的发展,移动设备的普及使线上支付成为主流,微信与支付宝在网购与日常的支付中更是占了主导地位。由于移动支付的出现,人们在消费时对于消费的金额缺乏清晰的认识。因此,该文旨在开发一款软件,通过记账的方式提高用户对金钱的敏感性,并能够根据消费情况,自动生成图表,使用户清楚地认识自己日常的消费习惯,同时可通过设置消费预警避免用户过度消费,帮助用户合理消费。

关键词:SSM Vue;记账;消费

中图分类号:TP391      文献标识码:A

文章编号:1009-3044(2022)11-0043-02

移动互联网时代,移动支付成为人们不可分割的一部分。随着科技的进步,移动支付几乎取代了现金支付。基于这种情况,本文根据用户的日常需求,开发了一款贴心的记账软件,通过简单的操作流程,自动生成图表信息,帮用户分析消费情况,并且使用预算功能帮助用户对自己的消费情况进行改善。本文根据软件工程的基本原理提出了基于SSM Vue的轻记账本,本着高效、简洁的思路和分布式结构设计,使用户简单高效地记录收支情况,分析消费情况,查阅消费记录,提醒用户本月预算。

1 需求分析

在经过一定的市场调研后,开发者对本文叙述的“轻记账本系统”进行了相应的需求分析。确定该系统的核心功能主要集中在满足用户通过已注册的账号登入系统,以实现每日的记账功能,同时用户可以选择日常的消费类别与系统提供默认的开支类别进行比对,并将实际数据上传到数据库中储存起来,来保证可以实时监控到用户的消费水平,并做出适当的提醒。现阶段市场急需此类的软件来控制人们的消费。

1) 系统运行环境要求

该款App是基于Android 4.0以上的版本,系统规模不大,可以让每一个用户在自己的Android手机上使用这款App。

2) 系统功能要求

界面美观,信息点清晰明了;操作简单,适用于各类人群;每日生成消费账单,便于用户查询消费明细;可实现金额存入功能;可实现记录消费功能;可实现消费类型分组功能;可实现自动备份和清理缓存功能;可实现每日用户消费额度提醒功能;可实现月支出上限功能[1]。

3) 对项目App进行分析综合

通过综合分析项目中涉及的软件功能,从而找出项目中各个模块之间的关联度,以及后期设计与实现中可能会遇到的问题及限制情况,最终整理出系统设计中可能存在的不合理不符合规则的部分,对其进行整改与优化,同时增加具有特色的系统功能吸引用户。最终形成合理的系统的具体构建方案,在此基础上,组织搭建系统逻辑模型,给出项目要开发的详细的系统模型与框架[2]。

4) 进行App项目评审

评审项目完成的功能,包括App系统功能的正确性与运行的流畅性,分析功能要求的完成度与完整性。如果项目能够通过评审,开发者才能够进行后续工作,否则,只能重复执行以上几个阶段的分析,直至满足需求 [3]。

2 研究内容

轻记账本的适用对象是各类移动支付人员,尤其是冲动消费的年轻人。用户通过手机号注册登录,登录后填写个人信息,即可开始记账。提前填写本月预算,每次消费之后按照消费项目分类记录开销,系统会自动归纳各类别消费的总体情况,并生成图表展示,用户可一目了然地看到本月各项目的支出,当消费金额达到设定金额后,系统会自动提醒用户减少支出,用户也可以根据自己的喜好选择想要的背景皮肤[4]。

3 系统描述

系统采用SSM框架,SSM是Spring+SpringMVC+MyBatis集成的框架,Spring就像是整个项目中装配bean的大工厂,通过指定配置文件中使用特定的参数实现调用实体类的构造方法的实例化,也可以称之为项目中的粘合剂。Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet,Spring MVC 角色划分清晰,分工明细。由于 Spring MVC 本身就是 Spring 框架的一部分,可以说和 Spring 框架是无缝集成。性能方面具有先天的优越性,是当今业界最主流的 Web 开发框架,最热门的开发技能。MyBatis通过对jdbc的封装使数据库底层操作简单易行。通过sqlSessionFactory实例展开MyBatis的操作。各实体类的Mapper文件通过进一步的文件配置与Mybatis关联,并通过SQL语句对数据库进行映射。在每次与数据库交互的过程中,通过sqlSessionFactory得到sqlSession,最后执行SQL命令。

本文选取的是MySQL数据库:MySQL可通过在不同的表中保存数据,提升数据存取速度,提高数据操作的灵活性,简化开发过程。同时在维护数据的安全性方面已经比较成熟,具有一定的数据恢复功能。

4 系统总体模块图

为了用户使用的方便快捷,本系统使用简洁的界面,用户无须长时间的学习,即刻上手。本系统界面基于Vue,后台基于SSM框架进行开发。用户端功能模块图如图1所示。

5 系统详细设计

5.1 整体设计

1) 界面设计

首次打开程序需要注册和登录用户,以后登录直接进入当前用户操作界面(即关闭程序前登录用户) 。界面包括TODAY界面、账单界面、我的界面等界面。使用Vue技术实现功能界面,实现界面转换,函数运算,统计记录等功能,如图2所示。

2) 数据库设计

使用关系型数据库MySQL,将数据保存在不同的表中,这样就提高了速度和灵活性。并创建与之功能相匹配的视图,提高用户与数据之间的联系[5]。

5.2 App功能設计

1) 注册登录功能设计

注册页面,需要用户输入注册用户名及密码,完成注册后可使用已注册的账号进行登录。登录时系统查询数据库的数据,账号密码一致即可登录成功。点击登录,成功后进入应用首页,应用中现有功能均可使用。注册和登录失败均会有错误信息提示。

2) 随时记账功能设计

当用户登录后可以输入今日所消费的金额,金额会按照服装、零食、鞋包、生鲜、蔬菜等分类记录,方便用户查看每一类目的消费情况,使得用户填写收入金额情况能更加详细。用户可以根据自己的实际消费情况,随时随地记录每一笔收入和支出,简单、省时地记录每天花销。

3) 账目图表功能设计

根据用户不同的需求,切换不同的图表帮助用户更加直观地浏览账目信息。收支趋势一目了然,帮助用户快速分析消费状况,创建统计图表简单又自动化,不需要用户的复杂操作就可以轻松地看到想要的柱形图、堆叠图、折线图、饼状图等,如图3所示。

4) 预算监控,提醒功能设计

虽然App整体是用来记录收入和支出的,为了将App设计得更加完整,加入一些辅助和提醒功能,这些功能将会让这个App更加完整,更加有序。

提醒是用户自行启用,有的用户不喜欢自己被打扰,所以提醒功能默认是关闭的,用户必须要在设置中去设置是否开启提醒模式,除了提醒模式的设置,用户还需要设置好月支出上限,如果用户月支出超过月支出上限的时候,系统才会给予提示。开启提醒模式,系统会根据用户所设置的月支出上限,如果用户的支出大大超过了月支出上限,将会进行提醒,提醒只有震动提醒,根据调查表明,铃声提醒已经不是特别受用户的需要了。

5) 预算推荐功能设计

服务器可以对用户消费进度实时监控,及时发现收支改善点。后台获取用户消费信息后,根据价格消费曲线(PriceConsumptionCurve) 、预算线(Budgetline) 对用户的消费情况进行分析,生成用户的预算线推荐。

6) 界面换肤功能设计

提供换肤功能,用户可以选择喜欢的皮肤样式来更改默认皮肤样式。

6 系统调试与测试

6.1 测试步骤

测试的步骤与开发过程大致相同,环环相扣,由系统测试到模块测试、由总体测试到局部测试。可以通过系统测试分析系统整体运行情况与系统设计问题,模块测试检测编码方面的问题,验收测试则是根据系统需求说明书检验用户需求方面的问题。这三个方面缺一不可,每个测试步骤都是在前一个步骤的基础上进行的。

6.2 测试内容

主要测试内容由代码审查、单元测试、集成测试、确认测试和系统测试等5个方面组成。

设计者可以通过代码审查发现系统代码设计方面的漏洞,通过单元测试找出模块中实际功能与定义时不相符的情况,通过集成测试发现接口匹配等问题,通过确认测试与软件需求说明书中的需求与性能进行比对,最后通过系统测试对系统整体情况与运行流畅度进行测试。

6.3 系统测试

1) 功能测试:通过功能性测试测试开发的项目是否满足市场调研的需求,是否完成了系统需求分析中的各项功能。测试标准往往是以系统正式的软件说明书为基础进行的测试,而在本项目中的功能测试主要集中在:记账分类测试、限额提醒功能测试、图表分析统计测试、论坛讨论留言功能测试以及积分商城兑换等功能测试。测试结果基本符合要求。

2) 强度测试与性能测试:主要集中在多用户登录的情况下项目的最高实际限度,即超负荷情况下项目运行的流畅度与稳定程度。通过测试发现该项目在多用户同时登录与运行的情况下,并发度不够完善,系统会偶尔出现卡顿的情况,后续可以通过系统优化与接口升级解决该问题。

3) 安全测试:主要針对项目的数据安全性进行测试,验证项目中的保护机制对于各种干扰的抗干扰能力。本项目的安全测试主要集中在使用不同用户权限访问数据时,系统对于可访问数据的限制及如何处理无效数据、错数据、和非法数据干扰的能力的测试。测试结果基本符合要求。

经过上述的三步测试过程对项目进行测试后,该项目基本满足开发的要求,可以正常投入使用。

7 结束语

本系统是一个开放性的实时在线记账系统,主要采用MVC设计模式,并且基于SSM框架的基础上,使用Java编程语言与MySQL数据库结合开发实现。

通过前期系统调研与需求分析、设计等一系列工作,将系统主要分为以下几个模块:用户注册与登录、记录收支、收支图标展示、用户查阅收支记录、设置预算提醒、账目精确分类、界面换肤。

综上所述,随着移动支付的不断升级,消费习惯也在不断变化,冲动消费、刺激消费这类问题也接踵而至。本文提供了一个基于SSM Vue的轻记账本,致力于改善大家的消费情况,对大家的消费行为做出改善。轻记账本极大地便利用户,进一步提高大家的金钱利用率,适合当前社会的需求。

参考文献:

[1] 山少男.基于WeX5的Android系统记账本HTML5 App开发与设计[J].电脑编程技巧与维护,2017(12):47-48,52.

[2] 张娇.小账本折射大经济[N].巴中日报,2021-07-20(8).

[3] 李洋.SSM框架在Web应用开发中的设计与实现[J].计算机技术与发展,2016,26(12):190-194.

[4] 郝玉龙,姜韡.Java EE编程技术[M].北京:清华大学出版社,2008.

[5] 杨鑫华.数据库原理与DB2应用教程[M].北京:清华大学出版社,2007.

收稿日期:2022-01-15

作者简介:黄张昊(2000—) ,男,河南新乡人,本科(在读) ;研究方向为软件工程;刘星含(1987—) ,女,湖北天门人,通信作者,讲师,硕士,研究方向为数据挖掘。

猜你喜欢
记账消费
国内消费
记账类APP
记账理财的好处有哪些
新消费ABC
代理记账:会计“工学结合”的新动向