详细设计文档(final)
1. 引言
1.1编写目的
本部分旨在阐明编写详细设计的目的,面向读者对象。
本文档主要描述各个模块的细节设计,明确软件的结构与实现过程,分析各个模块,描述模块的功能、性能和结构等方面包括模块接口、调用关系、处理过程和算法,以及各个模块的测试方案。本文档的主要读者为软件设计人员、模块开发人员、管理人员、测试人员。
1.2项目背景
我们通过调查问卷的方式,调查了华农部分学生,结果显示参加调查的50%以上的学生有查找空教室,蹭课,约自习需求。经过讨论权衡分析最终确定以该想法----华中农业大学空教室查询作为项目主题,并在此基础上进行功能拓展:经过约自习、蹭课,以微信小程序为应用平台,为华农全体学生提供便利的空教室查询途径。
1.2.1项目来源
该项目起初源自Triple兔小组一名成员的想法。
1.2.2项目实现
本项目由Triple兔小组成员共同实现。
1.3缩写定义
华农:华中农业大学。
Triple兔:华中农业大学信息学院triple兔软件工程小组。
1.4术语定义
无。
1.5参考资料
[1]窦万峰.软件工程与实践[M].北京:机械工业出版社,2017.
1.6版本信息
修改编号 |
修改日期 |
修改后版本 |
修改位置 |
修改内容概述 |
1 |
2019-5-17 |
1.0 |
全部 |
完成第一次编写 |
2.总体设计
本部分简要给出系统的需求和软件结构组成,以便追踪到需求与设计。
2.1需求概述
自习吧小程序的需求定义如下:
初始化设置:设置用户登录后的初始页面为查空教室页面。
用户发布邀约设置:在发出邀约之前,必须填写个人资料。
2.2软件结构
自习吧小程序流程图经过优化设计,得出模块层次结构适中的软件总流程图如下:
3.程序描述
本部分针对每一个模块进行详细设计。
3.1登录模块
3.1.1 模块说明如下:
小程序授权登录,获取用户个人信息,进入小程序
3.1.2算法
后端算法描述:
前端算法描述:
3.1.3程序逻辑
3.2 查询空教室模块
3.2.1 模块说明如下:
输入:教学楼信息(几栋教学楼,哪座,几层)
输出:当前楼层的教室信息
功能:查询指定教学楼楼层的教室信息(空闲或者有课)
性能:要求在0.5秒以内完成
3.2.2算法
查询空教室模块调用以下模块完成相应功能:
查询指定教学楼楼层的空闲教室
调整数据格式
后端算法描述:
前端算法描述:
3.2.3程序逻辑
3.3蹭课模块
3.3.1 模块说明如下:
输入:课程名,教师名,专业名(三选一)
输出:课程信息
功能:查询想要上的课程的具体信息
性能:要求在0.5秒以内完成
3.3.2 算法
蹭课模块调用以下模块完成相应功能:
(三选一)
根据课程名查询相应课程信息
后端算法描述: 前端算法描述:
根据教师名查询该教师教授的课程
后端算法描述: 前端算法描述:
根据专业名查询该专业本学期上的课
后端算法描述: 前端算法描述:
补充:其他算法:
3.3.3 程序逻辑
3.4约自习模块
3.4.1 模块说明如下:
输入:用户约自习请求信息
输出:在“广场”页面上对所有人显示该请求
功能:用户输入的约自习请求,在数据库中保存相应请求的信息,并在“广场”页面上对所有人可见,在“我的”页面可查看、删除或编辑用户个人发布的邀约。
性能:要求在0.5秒以内完成
3.4.2算法
蹭课模块模块调用以下模块完成相应功能:
接收用户输入的信息
数据库存储
数据库信息显示
主要功能描述:1.发布约自习 2.查看仔细邀约内容 3.检索自习邀约内容
后端算法描述:
前端算法描述:
3.4.3程序逻辑
3.5测试要点
主要测试输入输出接口是否正确,以及模块内部调用关系是否正确。
详细设计文档(final)的更多相关文章
- java 文档自动生成的神器 idoc
写文档 作为一名开发者,每个人都要写代码. 工作中,几乎每一位开发者都要写文档. 因为工作是人和人的协作,产品要写需求文档,开发要写详细设计文档,接口文档. 可是,作为一个懒人,平时最讨厌的一件事情就 ...
- 从零开始编写自己的C#框架(4)——文档编写说明
在写本系列的过程中,了解得越多越不知道从哪里做为切入点来写,几乎每个知识点展开来说都可以写成一本书.而自己在写作与文档编写方面来说,还是一个初鸟级别,所以只能从大方面说说,在本框架开发所需的范围内来讲 ...
- 【毕业设计】基于Android的家校互动平台开发(内含完整代码和所有文档)——爱吖校推(你关注的,我们才推)
☆ 写在前面 之前答应大家的毕业答辩之后把所有文档贡献出来,现在答辩已过,LZ信守承诺,把所有文档开源到了GitHub(这个地址包含所有的代码和文档以及PPT,外层为简单的代码).还望喜欢的朋友们,不 ...
- Atitit 项目文档规范化与必备文档与推荐文档列表
Atitit 项目文档规范化与必备文档与推荐文档列表 ===========比较重要的必备文档========== 项目组名单通讯录( 包括项目组,客户沟通人等 需求文档 原型ui文档 开发计划表 项 ...
- java基础课程笔记 static 主函数 静态工具类 classpath java文档注释 静态代码块 对象初始化过程 设计模式 继承 子父类中的函数 继承中的构造函数 对象转型 多态 封装 抽象类 final 接口 包 jar包
Static那些事儿 Static关键字 被static修饰的变量成为静态变量(类变量) 作用:是一个修饰符,用于修饰成员(成员变量,成员方法) 1.被static修饰后的成员变量只有一份 2.当成员 ...
- 测试文档(final)
1 引言 1.1编写目的 编写本测试计划的目的是: (1) 为整个测试阶段的管理工作和技术工作提供指南同时确定测试的内容和范围,为评价系统提供依据: (2) 此外还帮助安排测试活动,说 ...
- 概要设计文档(final)
1. 引言部分 引言部分主要说明编写目的.系统的范围和参考资料等. 1.1目的 该文档的目的是描述“自习吧”微信小程序的概要设计,主要内容包括系统功能简介.系统结构设计.模块设计和界面设计等. 本文档 ...
- Java多种方式动态生成doc文档
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/5280272.html 本来是要在Android端生成doc的(这需求...),最后方法没有好的方法能够在An ...
- JSP实现word文档的上传,在线预览,下载
前两天帮同学实现在线预览word文档中的内容,而且需要提供可以下载的链接!在网上找了好久,都没有什么可行的方法,只得用最笨的方法来实现了.希望得到各位大神的指教.下面我就具体谈谈自己的实现过程,总结一 ...
随机推荐
- PHP SimpleXMLElement::__toString SimpleXML 函数
定义和用法 SimpleXMLElement::__toString - 返回字符串内容 版本支持 PHP4 PHP5 PHP7 不支持 支持 支持 语法 SimpleXMLElement::__to ...
- vue中使用props传递参数
通常,父组件的模板中包含子组件,父组件要正向地向子组件传递数据或参数,子组件收到后根据参数的不同来渲染不同的内容,或者执行操作. 这个正向传递数据的过程是通过props来实现的. 在组件中,子组件使用 ...
- 射频IC卡和IC卡读卡器的成本分析
当今射频IC卡和IC卡读卡器的种类繁多,很多人问IC卡读卡器多少钱,那么如何在满足我们需求的情况下最大的节省成本呢.下面就各种射频IC卡和IC卡读卡器来分析下各自的成本. ...
- [PHP] stream_set_blocking非阻塞模式影响fgets fread函数
当设置socket为非阻塞时,fread或者fgets函数会立即返回结果,而不需要等待有输入,测试过程可以使用vscode的debug模式来进行当不设置这一项时,如果客户端没有输入会一直阻塞在这里等待 ...
- leetcode回溯算法--基础难度
都是直接dfs,算是巩固一下 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合. 给出数字到字母的映射如下(与电话按键相同).注意 1 不对应任何字母. 思路 一直 ...
- property用法,使Python中的get方法和set方法使用更简单
方法一: class a: def __init__(self): self.__num = 1 #定义一个私有变量(以双下划线开头的是私有变量) def getNum(se ...
- flask中的endpoint、自定义转化器、与djnago中session区别、利用装饰器实现登录认证
flask路由中的endpoint 与自定义转化器 ''' endpoint主要用于 反向解析, 例如:login函数中配的路由是/login,其中endpoint='lg' 则在其他函数,可以用 u ...
- 安装picard
1.下载 wget https://github.com/broadinstitute/picard/releases/download/2.21.6/picard.jar alias picard= ...
- umi+dva+antd新建项目(亲测可用)
首先全局安装dva+umiumi:npm install -g umidva:npm install -g dva-cli 通过脚手架创建项目 一: mkdir myapp && cd ...
- NRF51822/NRF51802/NRF52832/NRF52810/NRF52811/NRF52840内核对比
NRF51822的内核为M0,FLASH是256K,RAM是16K,蓝牙BLE4.0/4.2(SDK新版本支持4.2)NRF51802的内核为M0,FLASH是256K,RAM是16K,蓝牙BLE4. ...