




免费预览已结束,剩余29页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计中文题目基于安卓的个人记账本系统的设计与实现英文题目The Designand Implementation of PersonalAccount Based on Android Platfom院系:计算机与信息工程学院年级专业: 软件(金融) 姓名:学号:指导教师:职称: 年 月摘要摘要个人理财管理系统是基于Android系统开发的一款手机应用程序。它主要是为了满足人们在快节奏的生活中可以随时记下自己的收支情况的需求。个人理财管理系统与传统的记账方式相比,具有便捷性、安全性及可扩展性的特点。系统采用Eclipse+ Android Developer Tools作为开发工具,以SQLite为数据库。系统功能包括:用户账户的注册、用户名密码修改、账户删除,收入信息的增删改,支出信息的增删改,收入信息分类统计,支出信息分类统计,收入支出总额统计,数据还原、清空等等。系统具有界面简洁鲜明、功能便捷易用、操作人性化等特征。关键词:Android;软件开发;个人理财管理系统I1ABSTRACTABSTRACTThe personal financial management system isa mobile application developedbased on the Android system .It is mainly to meet those people who want to write down their income and expenditure more quickly and conveniently in the fast-paced life. Compared with the traditional method, Personal financial management system reflects more conve -nience,security and scalability. Especially in this day and age, people are on the side of the phone. System uses Eclipse and Android Developer Tools as a development tool and SQLite as the database. Android technology is now very mature, we can easily develop.Personal Financial Management System of the main functional modules,including: user account registration, user switching, username password changes, account deletion,Incomeinformation management,Expenditure information management,Notes manage- ment,Type of income management, Expenditure Type Manager, Income information classification statistics, expenditure information classification statistics, total income and expenditure statistics,Data reduction, data emptied and so on. The system has a simple and clear interface, easy-to-use features, user-friendly operation and other features.Key Words: Android; Software development; Personal financial management systemII目录目录第1章 引言11.1 研究背景11.2 国内外发展现状11.3 本章小结2第2章 主要理论和技术路线32.1 Android软件开发基本技术32.2 Android软件开发关键技术32.3 本章小结4第3章 需求分析53.1 系统概述53.2 需求概述53.3 系统结构63.4 系统各项功能描述73.5 本章小结11第4章 系统设计124.1 系统结构124.2 时序图124.2.1 用户登录124.2.2 用户记账134.2.3 用户查询134.3 类图134.3.1 账目信息类144.3.2 用户信息类144.4 数据154.5 本章小结16第5章 系统实现175.1 各模块功能实现175.1.1 登录模块实现175.1.2 注册模块实现175.1.3 主界面模块实现185.1.4 饼状图模块实现195.1.5 账目记录以及账目修改模块实现195.1.6 账目明细模块实现205.2 数据库实现215.3 本章小结21第6章 系统测试236.1 范围236.1.1 系统概述236.1.2 测试方案236.2 功能测试236.3 本章小结25第7章 总结与展望267.1 总结267.2 展望26参考文献28致 谢1IV第1章 引言第1章 引言1.1 研究背景近年来,人们对于智能手机日益依赖,对于很多人来说,对于手机的依赖大于电脑,智能手机成为人们对日常信息获取处理的主要手段。随着人们对于手机软件日益增加的需求,手机软件开发日益火热。Android由于其开源的特性,很多智能手机都使用Android系统作为手机操作系统,使得Android在手机市场的占有率最大,而Android软件开发也成为当下热门的课题之一。人们在日常生活中可能会有记账的需求,而用普通的纸质载体去记账,会有很多不方便的地方。手机个人记账本的实现,使人们可以随时随地进行个人消费的记录,实现多账户管理,按日期查询,方便了广大一般家庭用户的记账需求。1.2 国内外发展现状Android是一个自由且开放的操作系统,主要应用环境为移动端(一般为智能手机、平板电脑),为何Android能够占据主流的市场,并在可预期的未来几年内,仍可保持其优势,有如下三点最为重要:其一,Android具有显著的开放性。它是免费的,并且代码是开源的。免费使得制造商可以放心投入资金,Android硬件技术将是免费的,开发人员可以放心编写应用程序,而不需要担心复杂的平台成本,并且研究人员可以放心寻找缺陷,提高底层系统,无需购买许可和协议。而开源使得更多的软件得以开发,用户可以使用到更多种类的软件。其二,Android拥有丰富的硬件,这也与其开放性有关,首先有很多的制造商制造的智能手机、平板电脑都使用的Android系统,并且Android可以使用在功能特色多变的各种产品当中,如现今热门的一些可穿戴设备(如智能眼镜),以及一些终端(如智能家居)当中。其三,方便开发,Android提供给开发者非常自由开放的平台,使得其并不受各种框架所阻碍,人们可以开发各种新颖的软件。虽然经过8年来的发展,Android堆积了一些问题,但作为开源的项目,只要其不断创新,就会展现其强大的生命力。而我们作为开发者,自由的将自己的想法做成软件,则是Android其生命力的最好体现。Android开发由于其行业门槛低的特点,市场上一款好的APP往往可以创造出奇迹1。而在将来,Android开发可能会给我们带来更大的惊喜。由于其开源的特性,我们将可以实现一些更加神奇的功能。如可穿戴设备等。而之后我们的手机可能也不再仅仅是一个通信设备或微型电脑,更有可能发展成为快捷生活的遥控器。1.3 本章小结本系统将采用Java开发语言,利用JDK,Android SDK,Eclipse等工具,进行开发。软件开发时,充分考虑客户对与记账功能的诉求,保证整个软件拥有简洁方便的功能和良好的用户体验。系统功能为按现金、存款、第三方支付平台、借出、借入分类,来实现多账户管理,按账户以及时间查询记账明细,按收入、支出、转账、调整余额分类记账,保证用户能清楚明晰的来进行账目的记录和查询。而本文将分为主要理论以及技术路线,需求分析(详解人们对于记账的主要功能诉求),界面设计到每一个功能的实现,对于整个软件的测试,以及对于本次系统设计的总结与感受,从各个方面分析个人记账本系统的设计过程。28第2章 主要理论和技术路线第2章 主要理论和技术路线本章将主要介绍Android开发的相关技术,主要包括对Android开发的基本技术以及对一些关键技术进行简单介绍,让读者对Android开发有一个简要的认识。2.1 Android软件开发基本技术一个Android的软件主要由四个种类的组件来构成,其分别为:Activity(活动):是Android软件中最基本的构造零件,一个Activity往往就表示一块屏幕,而一个Android常常由多个Activity所构成,之间可以相互跳转。Service(服务):亦是Android软件的组件之一,与Activity是同一个级别的。但是其不可以自己独自去运行,而必须后台运行且可以和其他的组件进行交互。Service是一个没有界面的程序,它将会在后台一直运行下去,是一个生命周期长的程序。Broadcast(广播接收器):是一种在各应用程序之间被广泛应用的机制。可以广播为其他的程序,来为本事件进行通知。Content Provider(内容提供):由于安卓的开源性,为了保证安卓的安全性,Android对数据保护的相当的严密,除存放于SD卡中的数据一个应用所持有的文件及数据库等内容,并不允许其他直接访问。而Content Provider为所有的应用打开了一扇窗2-4。在本系统的开发过程中,组成记账本软件最主要的零件就是Activity,他将包括所有界面的应用以及功能的实现。由于本记账本软件并无对手机内其他数据的应用,故并不需要添加相应的权限。2.2 Android软件开发关键技术数据库技术:一个软件的开发离不开数据存储。而在Android平台中,数据的存储则分为两种,第一种是内部存储,另一种则是外部存储。内部存储包括如下:文件储存、系统配置以及SQLite数据库储存。外部存储则包括如下两种方式:网络和Content Provider(内容提供)。我们通常通过SharedPrefereneces类来实现对系统配置信息进行保存。而Android支持Java的各种输入输出语句,可以对储存在内部储存器或外部储存器(如SDcard)的文件进行访问。对于SQLite数据库,我们将使用SQL语句进行对其进行操作。如果软件需要在网上从服务器端获得数据,我们需要通过无线网络传送数据需要使用相关技术(如使用JSP)建立web服务器。此时需考虑软件在无线网下使用的一些效果5-6。在开发记账本软件的过程当中,我们主要使用数据库进行数据的存取,并不需要用到其他技术。界面开发技术:界面开发在所有软件开发过程中,是一个基础,界面做的是否,严重关系到用户在使用软件时的感受。基于Android的软件开发过程中,界面开发一共有三种方法:其一,使用代码来创建,在很多时候我们会需要使用到动态代码来进行部分界面的创建和修改以及一些布局样式的应用,最主要的类是LayoutInflater。其二,先使用xml文件来进行界面的详细设计,然后在Activity中进行引用或修改,同样的我们在开发记账本过程当中,这也是我们创建界面的主要手段。其三,有一情况下我们会自己绘制界面,这则主要出现在开发一些游戏的过程中7-8。二次开发技术:二次开发技术有两个方面:其一,面向应用层的开发技术。其二,面向底层组件的开发技术。目前,有数家公司相继退出了基于Android平台的二次开发平台9-10。2.3 本章小结本章主要对Android开发的基本技术以及对一些关键技术进行简单介绍。通过本章我们了解到了Android开发的相关技术。本文将采用这些技术对手机个人记账本系统进行开发。第3章 需求分析第3章 需求分析需求分析就是确定将要做什么,本章将主要对系统各个模块进行概述,以及通过系统用例对系统各功能进行了详细设计。3.1 系统概述(1) 软件名称:乐群个人记账本。(2) 软件功能:在乐群个人记账本上用户实现用户登录、账号注册及修改、用户记账、账目一览表、总览表、账单修改、饼状图,按账户以及时间查询记账明细,按收入、支出分类记账,保证用户能清楚明晰的来进行账目的记录和查询。(3) 用户:对于那些在日常生活中有记账需求的一般家庭人员。3.2 需求概述本系统的目标是实现取名为“乐群个人记账”的手机个人记账本系统。人们在日常生活中有记账的需求时,用普通的纸质载体去记账,会有很多不方便的地方。手机个人记账本的实现,使人们可以随时随地进行个人消费的记录,实现多账户管理,按日期查询,方便了广大一般家庭用户的记账需求。为达到以上目标,我们在设计和实现的过程中,要做到以下几个要点:(1) 系统易于使用且方便维护。(2) 界面简洁,用户体验良好。(3) 易于使用,对任何群体都易于上手。(4) 拥有良好的关键性能。主要的运行设备为Android系统的手机,要求Android1.6及以上版本。本文将运用JDK,Android SDK,Android ADT,Eclipse以及SQLite等工具,在Win7平台上进行开发。而主要测试环境为开发工具自带的官方模拟器以及利用各种为Android系统的手机进行真机测试。本系统面对的用户都是拥有以Android为操作系统的智能手机的群体,拥有对智能手机的基本操作经验,即可对本软件轻松上手。通过对各群体用户的调研进行总结,确定了本软件准备实现的基本功能,分为用户登录、账号注册及修改、用户记账、账目一览表、总览表、账单修改、饼状图等7个模块,对各模块的功能描述如下:(1) 用户登录:用户输入账号密码进行登录。(2) 账号注册及修改:用户可以注册账号以及修改账号。(3) 用户记账:记录每一笔现金操作,对于现金操作,并选择收入或支出,选择交易类型。(4) 账目一览表:可以查看本日,本月,本年总共收入支出,并点击查看详细账单。(5) 总览表:可以查看收入总额,支出总额,并点击查看详细账单。(6) 账单修改:可以编辑删除详细账单。(7) 饼状图:可以将收入和支出以饼状图的形式呈现。乐群个人记账系统功能模块图如图3.1所示乐群个人记账:账号注册及修改饼状图账单修改总览表账目一览表用户记账用户登录总体账目总支出账目总收入账目本年账目本日账目本月账目图3.1乐群个人记账的各个模块3.3 系统结构本系统设计在基于Linux系统的Android系统平台上,系统设计遵循Android软件设计的系统模式。系统UI布局在Layout文件夹下的xml文件中设计完成,每个界面的是一个Activity,并在Activity中加载这些用户UI界面,在Values文件夹中定义字符串信息,以及Style样式信息,在Anim文件夹下添加动画文件,整个系统结构根据google公司公布的Android软件开发目录结构来进行。系统部署图如图3.2所示,本系统是基于Android系统的手机端应用软件,是一款轻量级手机应用软件,其中不涉及到网络应用,所以不存在服务器,其中软件部署运行存在两种方式,一种是IDE集成开发环境的模拟器,另一种则是基于Android系统的智能终端手机系统。本系统软件在Android模拟器和移动手持设备下的安装部署图。图3.2系统部署图3.4 系统各项功能描述本软件主要有如下几个功能,本文将通过系统用例对项功能进行描述:用户登录模块,主要功能是用户通过登录进入主界面,具体用例如表3.1所示。表3.1系统用例用例标识Account_0用例名称用户登录应用范围手机个人记账本系统用例类型用户目标用例描述用户通过登录进入到主界面参与者用户,手机个人记账本系统前置条件无事件流基本流程1、用户输入账号2、用户输入密码3、系统查看是否有该用户名4、系统验证密码的正确性扩展流程1、用户选择取消2、用户退出系统1、 用户输入密码错误2、 系统提示用户重新输入密码异常流程无后置条件用户成功登录进入了主界面用户注册模块,主要功能是用户通过注册获得账号,具体用例如表3.2所示。表3.2系统用例用例标识Account_1用例名称用户注册应用范围手机个人记账本系统用例类型用户目标用例描述用户通过注册获得账号参与者用户,手机个人记账本系统前置条件无事件流基本流程1、用户输入账号2、用户输入密码3、用户再次输入密码4、系统验证两次输入的密码是否相同5、系统将账号以及密码储存扩展流程1、用户选择取消2、用户返回到登录界面1、用户输入两次密码不同2.系统提示用户重新输入账号密码异常流程无后置条件用户成功注册了账号修改用户信息模块,主要功能是用户修改账号密码,具体用例如表3.3所示。表3.3系统用例用例标识Account_2用例名称用户修改信息应用范围手机个人记账本系统用例类型用户目标用例描述用户修改账号密码参与者用户,手机个人记账本系统前置条件用户登录进入主界面事件流基本流程1、用户点击修改用户信息按钮2、用户输入新账户和密码3、用户再次输入密码4、系统验证两次输入的密码是否相同5、系统将账号以及密码储存扩展流程1、用户选择取消2、用户返回到主界面1、用户输入两次密码不同2.系统提示用户重新输入账号密码异常流程无后置条件用户成功注册了账号记账模块,主要功能是用户记录一笔账目,具体用例如表3.4所示。表3.4系统用例用例标识Account_3用例名称用户记账应用范围手机个人记账本系统用例类型用户目标用例描述用户记录一笔账目参与者用户,手机个人记账本系统前置条件用户登录进入主界面事件流基本流程1、用户点击记账按钮2、用户选择时间3、用户输入金额4、用户选择消费类型5、用户选择是收入还是支出6、用户添加备注7、用户点击确认添加一笔新的账目8、系统将账目添加到了数据库中扩展流程1、用户选择取消2、用户返回到主界面1、用户未输入金额2.系统提示用户重新输入金额异常流程无后置条件用户成功记录了一笔账目按时间查询账户模块,主要功能是用户按时间查询账目,具体用例如表3.5所示。表3.5系统用例用例标识Account_4用例名称用户按时间查询账目应用范围手机个人记账本系统用例类型用户目标用例描述用户按时间查询账目参与者用户,手机个人记账本系统前置条件用户登录进入主界面事件流基本流程1、 系统在账户一览表模块显示本日总收入支出,本月总收入支出,本年总收入支出2、 用户点击本日总收入支出查看本日账目明细3、 用户点击本月总收入支出查看本月账目明细4、 用户点击本年总收入支出查看本年账目明细扩展流程无异常流程无后置条件用户成功按时间查看了账目总览账户模块,主要功能为用户总览账目,具体用例如表3.6所示。表3.6系统用例用例标识Account_5用例名称用户总览账目应用范围手机个人记账本系统用例类型用户目标用例描述用户总览账目参与者用户,手机个人记账本系统前置条件用户登录进入主界面事件流基本流程1、系统在账户总览模块显示总收入,总支出,以及剩余资金总额2、用户点击总收入查看总收入账目明细3、用户点击总支出查看总支出账目明细4、用户点击剩余资金总额查看所有账目明细扩展流程无异常流程无后置条件用户成功总览账目修改账目模块,主要功能是用户修改账目记录,具体用例如表3.7所示。表3.7系统用例用例标识Account_6用例名称用户修改账目应用范围手机个人记账本系统用例类型用户目标用例描述用户修改账目记录参与者用户,手机个人记账本系统前置条件用户进入账户明细界面事件流基本流程1、 用户点击一条账户记录2、用户选择时间3、用户输入金额4、用户选择消费类型5、用户选择是收入还是支出6、用户添加备注7、用户点击确认修改8、系统将账目在数据库中进行修改扩展流程1、 用户点击取消2、 系统返回明细界面异常流程无后置条件用户成功修改账目3.5 本章小结本章主要对系统各个模块进行了概述,以及通过系统用例对系统各功能进行了详细设计。通过对功能的概述可以明确在设计时的方向,每个功能必须实现简单易操作,这需要在详细设计时多多考虑客户的体验。明确分析客户想要的功能,确保这些功能确实如大家想象的一样好用。第4章 系统设计第4章 系统设计本章主要通过时序图,类图对系统进行详细设计,并通过表格的形式对数据库进行详细设计。4.1 系统结构本系统是基于Android系统的手机软件,系统设计结构遵循google公司发布的Android工程项目的标准,布局等xml文件和后台Java处理文件分开,系统实例结构如下。系统外层机构主要有两部分组成,上面部分为控制界面显示的Activity包和逻辑处理Java包,里面主要是实现整个系统的逻辑代码。下面部分是系统资源文件,主要包括动画文件夹Anim,图片等资源文件夹Drawable,界面布局文件夹Layout,字符串资源和样式资源等文件夹Values。4.2 时序图下面采用顺序图来表示本系统用户完成一次记账功能的时间顺序,具体活动时序图与下面每项活动信息对应。4.2.1 用户登录如图4.1所示,用户点击图标进入LoginActivity界面,登录账号密码进入MainActivity,MainActivity接收LoginActivity传来的用户名name,再根据用户名name检索AccountDB数据库,并将账目记录进行计算并显示。MainActivityLoginActivity用户登陆界面进入软件主界面确定取消图4.1用户登录时序图4.2.2 用户记账如图4.2所示,用户进入MainActivity界面后,点击记账按钮进入AddNote界面点击确定添加账目,点击取消返回主界面。取消添加账目添加账目AddNote图4.2用户记账时序图4.2.3 用户查询如图4.3所示,用户用户进入MainActivity界面后,点击账目总览进入SpecificData明细界面,点击明细界面的条目可以进入MoreAction修改账目界面。明细界面取消查询SpecificData图4.3用户查询时序图4.3 类图系统实体类的类图。4.3.1 账目信息类账目信息类说明:如图4.4所示,账目信息类中id是唯一识别值,earnings是判断这笔账目类型是收入还是输出,其中get*()方法能得到对象中的这些属性的值,无输入,返回各个属性值,而set*()是为这些属性分别赋值,输入为属性的值,返回void。Account-id:int-name:String-time:String-money:float-type:String_earnings:boolean+getId():int+setId():void+getName():String+setName():void+getTime():String+setTime():void+getMoney():float+setMoney():void+getType():String+setType():void+isEarnings():boolean+setEarnings():void图4.4账目信息类4.3.2 用户信息类用户信息类说明:如图4.5所示,用户信息类中id是唯一识别值,login是判断用户是否登入,其中get*()方法能得到对象中的这些属性的值,无输入,返回各个属性值,而set*()是为这些属性分别赋值,输入为属性的值,返回void。Person-id:int-name:String_login:boolean+getId():int+setId():void+getName():String+setName():void+isLogin():boolean+setLogin():void图4.5 用户信息类4.4 数据乐群个人记账本采用了SQLite数据库来储存数据。本系统对数据详细设计如下:用户信息表,用来储存用户信息,具体数据设置如表4.1所示。表4.1用户信息表名称设置用户IdpersonId(integer,设置为主键且自增长)用户名name(verchar(20)密码passward(verchar(20)连接login(boolean)账目信息表,用来储存账目信息,具体数据设置如表4.2所示。表4.2账目信息表名称设置账目Idaccountid(integer,设置为主键且自增长)时间time(verchar(10)金额money (float)类型type (varchar(20)收支earnings (boolean)备注remark (varchar(50))用户名name(verchar(20)4.5 本章小结本章主要通过时序图,类图对系统进行详细设计,并通过表格的形式对数据库进行详细设计,软件的大体架构,接下来就是对软件的具体实现。通过对软件的详细设计,大体构建了代码的框架,在实现过程中只要根据框架进行详细加工,主要是编写实体类,调用数据库,编写每个页面的事件等,并将一些方法进行封装。第5章 系统实现第5章 系统实现本章主要介绍系统的具体实现,主要通过各功能模块实现以及数据库实现两个方面来阐述软件是如何实现的。5.1 各模块功能实现5.1.1 登录模块实现如图5.1所示,登陆界面主要供客户登录,页面为两个Edit编辑框与3个设置点击事件的控件,用户输入账号密码,点击确定,系统会根据输入的账户名从数据库用户表中查找是否有该用户,并比对密码,如果正确跳转至主页面,如果错误则会有Toast消息通知用户重新输入账号密码。点击取消按钮,会执行系统方法System.exit(0)退出该应用。图5.1登录模块界面5.1.2 注册模块实现如图5.2所示,注册模块主要供用户注册,界面为3个Edit编辑框与两个设置了点击事件的图片控件,点击取消直接关闭界面,点击注册,读取Edit编辑框的内容,如果两次密码输入一样,则将用户信息写入用户信息表,关闭界面并Toast消息通知注册成功。两次密码输入不同则会有Toast消息通知用户重新输入账号密码。图5.2注册模块界面5.1.3 主界面模块实现如图5.3所示,主界面主要显示了账户的总体信息,界面为两个线性布局,一个饼状图,两个设置了点击事件的控件。线性布局内分别放了三个文本控件并设置了点击事件。当你进入到主页面试,会根据用户名以及收支类型设置游标,查找账目明细表内该用户所记录的账目,并将其储存至HashMap容器中,并计算显示收入总额,支出总额,收支总额。之后根据方法Calendar.getInstance获取时间,并根据时间,用户名,收支类型查找账目明细表内该用户所记录的账目,并计算显示本日收入支出,本月收入支出,本年收入支出。点击这些文本控件会显示相应条件的账目明细界面。点击记账跳转到账目记录界面,点击修改用户信息跳转到用户信息修改界面。图5.3主界面模块界面5.1.4 饼状图模块实现饼状图是根据总收入和总支出的比例来画的,主要用的ChartFactory.getPieChartView方法,各种参数的设置代码如图5.4所示:图 5.4饼状图代码5.1.5 账目记录以及账目修改模块实现如图5.5所示,登陆界面主要供客户登录,页面中时间、金额、备注用Edit编辑框编辑,类型收益用Spinner选择,点击添加则添加到账目明细表中,点击返回则关闭界面,时间通过日期选择控件添加,默认为当天时间。如果用户未输入金额,系统提示用户重新输入。如图5.6所示,账目修改界面类似,点击确认修改按钮则按账目Id修改当前数据,点击确认删除则删除当前数据。图5.5账目记录模块界面图5.6账目修改模块界面5.1.6 账目明细模块实现如图5.7所示,账目明细模块主要显示账目明细,主要构成为一个文本控件和一个ListView,该模块会根据主界面点击跳转进来的点击事件,设置标题。并将主界面内容器保存的内容遍历显示在这里。图5.7账目明细模块界面5.2 数据库实现创建MyDBOpenHelper类继承SQLiteOpenHelper,通过execSQL方法执行数据库语言“CREATE TABLE IF NOT EXISTS person (personid INTEGER primary key autoincrement, name varchar(20) ,passward varchar(10) ,login BOOLEAN)”创建表。AccountDBdao类里封装了一些增删改查的方法,增加数据方法如图5.8所示,删除数据方法如图5.9所示:图5.8数据库增加代码图5.9数据库删除代码同时AccountDBdao类里封装了许多数据库类查找的方法,大致为,通过用户名等条件创建Cursor游标,查找后将数据放入List容器中。5.3 本章小结本章主要介绍系统的具体实现,通过各功能模块实现和数据库实现两个方面来阐述软件如何实现。通过对系统的详细设计的实现,完成对预想目标的实现。第6章 系统测试第6章 系统测试本章将对软件测试方法进行简要介绍,并对功能测试进行详细的介绍。6.1 范围6.1.1 系统概述(1) 软件名称:乐群个人记账本。(2) 软件功能:在乐群个人记账本上实现账户添加,收入记录,消费记录,以及对每个月的消费预算。在用户账户之间实现金额转账,统计用户某年或者某月消费、收入与预算的关系等。(3) 其他子系统的关系:本系统为一个独立的系统,目前没有与之发生关系的其它子系统。(4) 用户:所有Android乐群个人记账本软件用户。6.1.2 测试方案(1) 单元测试方案:由开发人员在系统开发过程中对编写的系统函数以及数据库接口函数等使用白盒测试方法进行单元测试。 (2) 集成测试方案:由测试小组在单元测试结束后对使用黑盒测试方法对各单元组合在一起能否按照既定意图写作运行进行测试。 (3) 系统测试方案:由测试小组在集成测试结束后对整个系统能否在实际软件要求的环境正常运行,并且对最终的系统软件进行全面的测试,以确保最终软件系统满足产品需求并且遵循系统设计。6.2 功能测试在软件编程过程中我们需要对各个模块进行功能测试,防止未知的bug,给用户带来不好的用户体验。添加账户模块,主要测试各输入是否正常,具体如表6.1所示。表6.1添加账户模块功能测试编号测试用意输入结果1正常输入名称,金额“新账户”,“11.25”成功建立一个新的账户2在金额输入非数字类型“q、”由于EditText限制只能输入数字3在金额输入多位小数“1.121345”结果显示金额“1.12”4在金额输入多位小数“1.1294”结果显示金额“1.13”5在名称栏输入为空弹出toast提示用户“请输入名称”6在金额栏输入为空默认初始金额为0添加消费/支出记录模块,主要测试各输入是否正常,具体如表6.2所示。表6.2消费/支出记录模块功能测试编号测试用意输入结果1正常输入金额,选择账户日期“11.02”成功添加一个账本记录2在金额输入非数字类型“q、”由于EditText限制只能输入数字3在金额输入多位小数“1.121345”结果显示金额“1.12”4在金额输入多位小数“1.1294”结果显示金额“1.13”5不选择账户弹出toast提示用户“请选择账户”6在金额栏输入为空弹出toast提示用户“金额不能为0”7不选择日期弹出toast提示用户“请选择日期”添加转账记录模块,主要测试各输入是否正常,具体如表6.3所示。表 6.3转账记录模块功能测试编号测试用意输入结果1正常输入金额,选择账户日期“11.02”成功添加一个账本记录2在金额输入非数字类型“q、”由于EditText限制只能输入数字3在金额输入多位小数“1.121345”结果显示金额“1.12”4在金额输入多位小数“1.1294”结果显示金额“1.13”5不选择转出账户弹出toast提示用户“请选择账户”6不选择转入账户弹出toast提示用户“请选择账户”7在金额栏输入为空弹出toast提示用户“金额不能为0”8不选择日期弹出toast提示用户“请选择日期”还有一些其他的功能测试,由于输入较简单或与以上雷同,所以略过。6.3 本章小结本章将对软件测试方法进行简要介绍,并对功能测试进行详细的介绍。软件功能基本可以使用,如有不足之处,则不是软件本身的问题,而是在软件设计的过程中有思虑不做之处。如果用更方便的方法去查看账目的话,那么可能会更好。用建议在以后将这些模块做得更好。系统界面设计美观程度还打不到一个很好的用户体验,建议以后对这些模块进行完善。此次测试目的在于发现系统缺陷与漏洞,从测试结果中没有发现严重系统缺陷。第7章 总结与展望第7章 总结与展望7.1 总结本文第一第二章主要介绍了Android开发的相关背景以及相关技术,第三章主要对系统进行需求分析,在软件开发的最初,必须确定我们要做什么,本文通过系统用例,对本文将要做的系统进行了简要的设计,根据设计思路为后续的开发做准备。而第四章本文通过类图、时序图进行了详细设计,并且详细设计了数据库。第五章则是对系统的功能模块进行了实现。第六章对系统进行了简要的功能测试,以确保系统在运行时不会发现大的bug。本系统设计的主要目的就是帮助不会自主理财的朋友们实现自主理财,使大家实现有计划的消费,合理的消费。同时软件设计美观,使用简单,结合了现在流行的Android系统,安装在用户随身携带的手机上,可以实现随时随地记账。经过几个月的不断努力,系统基本实现了需求分析给出的各项功能,实现了用户登录、账号注册及修改、用户记账、账目一览表、总览表、账单修改、饼状图以及按账户以及时间查询记账明细,按收入、支出分类记账等功能模块,保证用户能清楚明晰的来进行账目的记录和查询。7.2 展望本文对记
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论