一、体系结构设计
1、概述
该阶段主要在于定义个人账本软件的主要结构模块及其之间的关系。
详细的数据流图已在需求分析文档中给出。通过功能划分过程来完成软件结构设计,设计基本模块如下:软件登录、发布账单、报告下载、账单管理、自定义设置等。
2、简明结构图
二、数据设计
1、概述
E-R图、数据字典描述、状态图等已在需求分析文档中给出。根据分析模型中的实体关系图和数据字典进行数据设计,包括数据文件的设计和数据库设计
2、文件设计
i)账单信息
所有的账单信息储存在本地的工作文件夹中,包括账单创建时间、具体内容等信息
当创建或修改一个账单信息后,立即修改相应文件内容,保证实时修改和查看。
账单信息以天为单位更新和查看,同一天的账单信息储存在同一txt文件中
ii)修改记录、删除记录等
所有的修改和删除都会产生记录
记录会以的形式储存在本地
与账单信息一致,以天为单位
之后储存最近两个月的log文件
三、过程设计–程序流程图设计
几个主要的过程的结构流程图如下:
1、浏览记账信息
2、修改账单信息
3、删除账单信息
4、报告生成
四、模块详细设计
1、登录模块
1.1数据结构设计:无
传入变量:
- 读取用户名和正确的密码:string
- 从input表单获取用户输入:string
传出变量:
登录状态:bool
1.2 PAD图设计:
2、账单数据结构
2.1 一天的所有账单信息使用一个完整的链表储存,dailybill-list:
使用链表结构保存dailybill如下
2.2 一个月中的所有天数的账单信息用一个完整链表储存,monthlybill-list:
使用链表结构保存monthlybill如下:
2.3相关文件设计:
- 每天的所有账单信息单独以一个dailybill-日期.txt的文件,同一个月的文件存储在同一个文件夹中,命名为“月份-dailybill”
- 每个月的账单总结信息单独以一个monthlybill-月份.txt的文件,同一年的文件储存在同一个文件夹中,命名为“年份-monthlybill"
- 所有修改记录与账单信息同步储存,名字在相应账单后面加上log
3、SearchBill模块
3-1 数据结构设计:2中的数据设计适用
数据流:
- 通过文件读取月份和日期账单数据
- 通过文件写入账单数据和修改记录
3-2 PAD设计
4、newbill 模块
4-1 数据结构设计:2中的数据结构适用
数据流传递:
- 通过文件写入新账单
- 更新dailybill和monthlybill链表
4-2 PAD图设计
初次尝试软工,还在学习中,多有纰漏与错误,路过的朋友小心上当(逃