《从零开始的记账本开发》第2篇 概要设计

1引言

以下这些是根据《软件工程》里的要求写的概要设计,删改了一些,看看系统结构图和E-R图就行,我的个人空间的资源里有我上传的word文档,需要的同学可以去下载

1.1编写目的

概要设计说明书编制的目的是:说明对程序系统的设计考虑,包括程序系统的基本处理流程、程序系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为详细设计提供基础。

本软件概要设计说明书的读者是系统开发人员或合同约定人员。

1.2背景

开发的系统名称:流水记账本(WasteBook)

开发者:本人

用户:有记账需求的个体用户

实现该软件的计算机网络:软件工程实验室

项目与其他软件,系统的关系:本项目采用C/S原理,服务端主要是为用户提供数据备份。客户端的程序是建立在Android5.1以上,使用Android studio,Java,以及SQLite数据库等为开发软件的应用程序。  

1.3定义

数据流图:数据流图描绘系统的逻辑模型,图中没有任何具体的物理元素,只是描绘信息在系统中流动和处理的情况。

系统的流程图:系统流程图是描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子的形式描绘系统里的每个部件(程序,文件,数据库,表格,人工过程等)。

用户表:存放用户数据,包括密码、头像、昵称,数据备份同步状态

账单表:存放每条记录的信息。

类型表:存放系统提供的类型和用户自定义的类型信息。

预算表:存放用户设置的年预算、月预算、类别预算信息。

2总体设计

2.1需求规定

用户可以随时使用该app来记录支出收入情况,可以增删改查记录。可以管理类型标签,可以饼状图、曲线图显示支出收入情况,并显示前十的支出、收入记录。可以设置预算(按月或按类型),登录之后可以同步信息。

本系统在用户登录,或者使用游客登录之后,即可添加账单信息,账单信息包括类别(支出或收入)、数值大小、类型(【支出】餐饮、购物、交通、娱乐等【收入】工资、兼职、理财等)日期、备注(非必填)。用户添加成功后可在主页查看添加的账单记录,可点击编辑,可左右滑动删除。也可管理类型标签,增删改查、排序标签。

流水记账本APP可以划分为如下几个部分:

  1. 记账管理:查询账单、增加账单、编辑账单、删除账单
  2. 标签管理:添加标签、编辑标签、删除标签、排序标签
  3. 用户信息管理:修改个人信息,包括密码、头像、昵称,数据备份同步,包括账单记录、标签,设置预算。

本系统对性能的规定:

1)系统的更新处理时间应该在可接受的范围内;

2)系统的数据查询时间应该在可接受的范围内;

3)系统的数据统计时间应该在可接受的范围内。

2.2运行环境

1)硬件环境:运行本软件的服务端要求处理器在奔腾Ⅲ以上,内存在512MB以上的计算机。客户端要求处理器频率至少为1Ghz,内存至少为256MB.

2)软件环境:本系统客户端支持的操作系统包仅Android5.1以上;本系统客户端支持的数据库为SQLite;服务端为数据库为:Mariadb,本软件的客户端开发工具为Android Studio,使用的开发语言为JAVA、XML。

2.3基本设计概念和处理流程

本系统的基本设计概念和处理流程如下:

1)系统启动时,激活身份验证模块。

2)通过身份验证后,对系统进行初始化,判断用户身份,导入到不同的处理页面是。

3)系统进入消息循环状态,通过事件驱动机制激活各功能模块,并执行指定模块。

4)各项功能执行完毕后,重新进入消息循环状态。

5)由退出系统事件激活关闭系统模块,退出系统。

2.4结构

 

软件结构图

 

记账管理结构图

 

标签管理结构图

 

用户信息管理结构图

 

数据流图/用例图

顶层:

一层:

二层:

2.5功能需求与程序的关系

1)用户身份验证必须调用“验证用户”模块程序进行身份验证。

2)验证之后,系统会初始化标签,自动插入常用的标签

3)当用户修改或者删除标签时,对应的账单的标签会修改或删除

4)用户排序标签之后,在添加账单时,标签的位置为用户排序调整之后

2.6人工处理过程

所有合法操作系统将会自动进行。

3接口设计

3.1用户接口

本系统客户端遵循Material Design设计规范,采用固定的底部导航栏,可直达账单列表、添加账单、标签管理、用户信息管理界面。使用弹窗、吐司供用户输入或提醒用户。

  1. 查询账单:显示账单列表,饼状图显示比例
  2. 删除账单:用户删除账单记录
  3. 查询标签:添加账单记录时需要获取标签信息
  4. 删除标签:用户删除标签,对应账单删除
  5. 查询预算:预算提醒需要用户设置的预算信息
  6. 初始化标签:进入系统时为用户添加必要的标签种类

3.2外部接口

服务端:

硬件接口:PentiumⅣ CPU及以上,内存在1GB以上的计算机。

软件接口:支持本系统的软件包括:Windows7、 Windows XP、Linux等 。

客户端:

    硬件接口:ARM架构,内存521MB以上的安卓手机

    软件接口:Android5.1,API 22

4运行设计

4.1运行模块组合

1)对标签的删除会删除对应的账单记录

2)添加预算会在预算不足10%并在添加账单时提醒用户

 

4.2运行控制

用户通过身份验证之后进入系统操作界面,可以对系统进行信息的增添,删除,修改,查询等操作

4.3运行时间

“用户验证”模块在完成用户登录的身份验证后立即退出运行,释放占用的系统资源。一般来说,本系统运行一般耗时100~1000毫秒,在UI界面不进行耗时操作,所有的数据库操作不允许在主线程运行,均为异步完成。数据同步受网络因素的影响,耗时视网络情况而定,如果同步为系统主动触发则在用户使用期间进行,如果为用户触发,则需要耗时1~5秒进行。

5系统的数据结构设计

5.1逻辑结构设计

1)用户表 属性名:{用户编号,用户名,密码,头像,同步}

用户编号

用户名

密码

头像

同步

 

 

 

 

 

说明: 此为用户实体对应的关系模式,其他一些冗余信息删除。

2)账单表 属性名:{账单编号用户编号,类别,数额,标签编号,时间,备注,同步状态}

账单编号

用户编号

类别

数额

标签编号

时间

备注

同步

 

 

 

 

 

 

 

 

说明:此为账单实体对应的关系模式,其中用户编号是外码,其他一些冗余信息删除。

3)标签表 属性名:{标签编号用户编号,序号,标签名,图标,同步}

标签编号

用户编号

序号

标签名

图标

同步

 

 

 

 

 

 

说明:此为标签实体对应的关系模式,其中用户编号是外码,其他一些冗余信息删除。

4)预算表 属性名:{用户编号,时间,金额,标签编号,同步}

用户编号

时间

金额

标签编号

同步

 

 

 

 

 

说明:此为预算实体对应的关系模式,其中用户编号、标签编号是外码,其他一些冗余信息删除。

5.2数据库表的详细清单

 

1)用户表

数据项名

别名

数据类型

长度

备注

用户编号

UserID

int

4

primary key

用户名

UserName

char

20

not null

密码

UserPasswd

char

50

not null

头像

UserIcon

char

50

not null

同步

UserSync

tinyint

1

not null

 

2)账单表

数据项名

别名

数据类型

长度

备注

账单编号

BillID

char

20

foreign key

用户编号

BillUserID

int

4

not null

类别

BillType

tinyint

1

not null

数额

BillAmount

decimal

10

总长10,小数2位

标签编号

BillTagID

int

4

not null

时间

BillTime

DateTime

8

not null

备注

BillInfo

char

50

 

同步

BillSync

tinyint

1

not null

3)标签表

数据项名

别名

数据类型

长度

备注

标签编号

TagID

int

4

primary key

用户编号

TagUserID

int

4

foreign key

序号

TagOrder

int

4

not null

标签名

TagName

char

20

not null

图标

TagIcon

char

50

not null

同步

TagSync

tinyint

1

not null

4)预算表

数据项名

别名

数据类型

长度

备注

用户编号

BudgetID

int

4

foreign key

时间

BudgetTime

DateTime

8

not null

金额

BudgetAmount

decimal

10

总长10,小数2位

标签编号

BudgetTagID

int

4

foreign key

同步

BudgetSync

tinyint

1

not null

发布了3 篇原创文章 · 获赞 0 · 访问量 76

猜你喜欢

转载自blog.csdn.net/qq_41548460/article/details/104030169