软件工程---个人账本---概要设计与详细设计文档(已更新)

时间:2024-10-13 07:51:56

一、体系结构设计

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图设计
    在这里插入图片描述

初次尝试软工,还在学习中,多有纰漏与错误,路过的朋友小心上当(逃