概要设计初版来啦~
1.引言部分
引言部分主要说明编写目的、系统的范围和参考资料等。
1.1目的
该文档的目的是描述记事本的概要设计,主要内容包括系统功能简介、系统结构设计、模块设计和界面设计等。
本文档的预期读者包括:设计人员,开发人员,项目管理人员,测试人员。
1.2 范围
1.2.1 系统目标
开发一个可以记录笔记并同步到web端和android端的记事软件。用户进入软件可注册个人账户,注册完成后即可开始笔记添加、编辑、查询、删除等操作。删除的笔记会被放入废纸篓,可以随时恢复。用户对笔记的管理会同步到手机和电脑端。
1.2.2 主要软件需求
该系统的主要功能包括:
l 登录注册
l 笔记管理
l 编辑笔记
l 个人页面
1.2.3 软件设计约束、限制
软件支持多客户端同时使用的分布式物理结构。
1.3缩写说明
无。
1.4术语定义
无。
1.5参考资料
[1]窦万峰.软件工程与实践[M].北京:机械工业出版社,2017.
[2]软件概要设计文档格式标注[S].GB 856D-1988.
1.6版本信息
具体版本信息如表A-1所示
表A-1 具体版本信息
修改编号 | 修改日期 | 修改后版本 | 修改位置 | 修改内容概述 |
1 | 2019-5-10 | 1.0 | 全部 | 完成第一次编写 |
2. 数据设计
本部分主要描述软件所涉及的外部数据的结构描述。如果数据以数据库文件呈现,则描述表的名称和表字段结构;如果数据以外部文件形式呈现,则要描述文件的内部结构。
2.1数据对象和形成的数据结构
“记事本”app所设计的主要数据结构如下:
笔记:笔记编号,标题,正文,笔记类型,上一次编辑时间。
废纸篓:笔记编号,标题,正文,笔记删除时间
个人信息表:用户编号,用户昵称,用户密码。
用户总表:用户名,用户密码,用户注册用手机号,用户是否绑定邮箱号,用户邮箱号,用户创建日期,用户更新日期。
2.2 文件和数据库结构
描述文件的数据库结构。
2.2.1 外部文件结构
包括文件的逻辑结构、逻辑记录描述、访问方法。
2.2.2全局数据
“记事本”app的全局变量有:
系统时钟Timer
2.2.3 文件和数据交叉索引
l 用户信息文件在用户管理和用户个人信息(即“我的”)功能中。
l 笔记表用于搜索功能和笔记的增改删功能。
l 废纸篓表用于废纸篓的还原和彻底删除功能。
3、体系结构设计
3.1 体系结构
3.1.1 整体数据流图
3.1.2 部分数据流图精化
显示用户的个人信息,精化数据流图如下:
编辑日志,精化数据流图如下:
检索、查看日志,精化数据流图如下:
3.2 软件系统结构设计
优化后的记事本系统结构图如下:
4、界面设计
主要给出界面设计的总体要求和界面序列,以及界面设计规约。
4.1 人机界面规约
界面风格简约,对用户友好。
记事本app的界面介绍如下。
登录界面:该界面能够判断用户输入的用户名和密码是否正确。如果用户名或密码不正确,出现提示;日过输入正确进入日记管理界面。
注册界面:在数据库添加一对新的用户名和密码。
日记管理界面:
a.不仅可以按时间展示所有日记,而且可以通过创建记事本,在不同记事本中新建日记来日记进行分类管理。
b.删除的日记会装入废纸篓,废纸篓会定期销毁日记,可以把日记从废纸篓中还原。
c.搜索功能。可以在搜索栏中输入日记标题中的关键字,快速找到想要的日记。
日记编辑界面:为日记编辑标题,正文内容。
d.个人中心界面:可以修改或者添加个人账户的信息。
4.2 人机界面设计规约
给出界面序列关系,以及每个界面的操作规则和处理规则。各界面转化关系如下:
老用户界面序列:登录界面 – 日记管理界面。
新用户界面序列:注册界面 – 日记管理界面。
管理界面与编辑界面序列:日记管理界面 – 日记编辑界面。
管理界面与个人信息界面序列:日记管理界面 – 个人信息界面。
5、接口设计
5.1 外部接口设计]
5.1.1 外部数据接口
目前没有外部数据接口。
5.1.2 外部系统或设备接口
目前没有外部设备接口。
5.2 内部接口设计规约
5.2.1 内部模块接口调用关系
请假系统的接口调用流程图如下:
l 系统总模块:main()
l 2.1注册:register()
l 2.2验证身份:verify()
l 1.1笔记本:NoteBookActivity
l 1.2全部笔记:AllNoteActivity
l 1.3废纸篓:WasteActivity
l 1.4个人信息:IdentityActivity
l 1.1.1删除:delete()
l 1.1.2添加:add()
l 1.1.2.1日记编辑界面:EditActivity
l 1.3.1还原:restore()
6.模块设计过程
6.1 处理说明
登录与验证模块:负责用户的登录和识别
查看个人信息模块:根据用户的id查看个人信息
记事本模块:用户填写要记录的文字
更新记事本模块:用户修改更新记事本
查看记事本模块:用户查看记事本
删除记事本模块:用户删除记事本
恢复记事本模块:用户恢复记事本
6.2 接口描述
1.登录识别
接口名称:/login
请求参数:
id String 用户id
password String 用户密码
功能:通过用户id和密码判断身份,进行登录操作
在记事本中添加事件
接口名称:/addNotepad
请求参数:userNotepad userNotepad 记事本中事件
功能:通过用户id进行添加事件操作
2. 获取用户信息
接口名称:/getUserById
请求参数:User User 用户信息
功能:获取用户信息
4.在记事本中查看事件
接口名称:/selectNotepad
请求参数:userNotepad userNotepad 记事本中事件
功能:通过用户id进行查看事件操作
5.在记事本中删除事件
接口名称:/removeNotepad
请求参数:userNotepad userNotepad 记事本中事件
功能:通过用户id进行删除事件操作
6.在记事本中恢复事件
接口名称:/recoverNotepad
请求参数:userNotepad userNotepad 记事本中事件
功能:通过用户id进行恢复已经删除的事件操作
7.在记事本中更新事件
接口名称:/updateNotepad
请求参数:userNotepad userNotepad 记事本中事件
功能:通过用户id进行修改和更新事件操作
6.3设计语言描述
网页版前端使用JSON,HTML,CSS,JS,后台使用JSP和JAVA
安卓版主要使用JAVA
7.需求交叉索引
用户登录:登录
用户管理:用户注册
服务管理:填写和修改记事本中事件
查询管理:查看用户个人信息
删除管理:删除记事本
添加管理:添加事件或记事本
8.测试部分
8.1测试方针
给出测试的原则、策略和方法
首先对正常的功能进行测试,以黑盒测试为、白盒测试为辅来设计测试用例,测试用例要尽可能涵盖所有的程序功能,记录测试中的问题
8.2集成策略
模块集成策略和测试策略及其方案等
8.3特殊考虑
无其他特殊要求
首先对正常的功能进行测试,以黑盒测试为、白盒测试为辅来设计测试用例,测试用例要尽可能涵盖所有的程序功能,记录测试中的问题
8.2集成策略
模块集成策略和测试策略及其方案等
8.3特殊考虑
无其他特殊要求