谢立新 | 2021软件代码开发技术作业五 | 代码开发、测试及发布
代码开发、测试及发布
| 这个作业属于哪个课程 | 软件代码开发技术 |
|---|---|
| 这个作业要求在哪里 | 代码开发、测试及发布 |
| 这个作业的目标 | 1、掌握Git |
| 2、熟悉独立开发web应用 | |
| 3、熟悉代码规范 | |
| 4、熟悉软件测试 | |
| 5、熟悉软件开发项目管理、文档管理 |
一、代码开发
1、记录开发过程
| 日期 | 昨天已完成的工作 | 今天计划完成的工作 | 工作中遇到的困难 |
|---|---|---|---|
| 2021.5.31 | 数据库实现 | 环境搭建,使用springboot+mybatis搭建系统结构 | 资源引用路径问题 |
| 2021.6.1 | 环境搭建 | 使用mybatis编写数据访问层 | sql语句有部分遗忘 |
| 2021.6.2 | 编写数据访问层 | 编写业务层 | 无 |
| 2021.6.3 | 编写业务层 | 使用layui构建前端页面结构 | 对前端框架一无所知 |
| 2021.6.4 | 构建前端页面结构 | 实现注册登录功能 | ajax异步请求验证用户名重复问题 |
| 2021.6.5 | 实现注册登录功能 | 实现管理员的管理客户功能 | layui表单渲染;新增、删除、编辑功能的JSON响应问题 |
| 2021.6.6 | 实现管理员的管理客户功能 | 实现管理员的管理服务提供者、管理项目、管理时间表、管理合同功能的新增、删除、修改 | 编辑功能父子页面传值渲染问题 |
2、项目燃尽图

3、代码/文档签入记录
(1)详情见:https://github.com/ecochap/ServiveProvideSystem


(2)Code Review:
| 编号 | 修改点 | 方式 |
|---|---|---|
| 1 | 数据库字段命名 | 小写字母单词,多单词字段各单词使用下划线分隔 |
| 2 | 实体类命名 | 使用大驼峰命名规则 |
| 3 | Java方法命名 | 使用小驼峰命名规则,使用见名知意的单词,动词开头 |
| 4 | 引用对象属性 | 必要判空判null |
| 5 | 业务层方法 | 使用接口+实现类方式 |
| 6 | mapper文件查询结果集 | 为基本结果集统一命名BaseResultMap,特殊结果集按意思命名 |
| 7 | sql语句编写 | 各个关键字独占一行 |
| 8 | 前端对象展示 | 包装值对象 |
| 9 | 前后端交互 | 使用包装的自定义JSON对象进行前后端交互 |
| 10 | html编写 | js、css文件引用全部在head标签,script脚本编写在body标签内的最后 |
| 11 | 通用自定义css格式 | 不使用组件style属性自定义格式,使用自定义css文件,引用该文件来使用自定义格式 |
二、测试
(1)BUG详情
| BUG类型 | 数量 |
|---|---|
| 修复的bug | 16 |
| 不能重现的bug | 0 |
| 这个产品就是这样设计的,不是bug | 0 |
| 没有能力修复,将来也不打算修复 | 0 |
| 这个bug的确应该修复,但是没有时间在这个版本修复,延迟到下一个版本修复 | 0 |
修复的bug:
| 编号 | bug描述 |
|---|---|
| 1 | 数据访问层sql执行错误,sql语句编写错误 |
| 2 | thymeleaf解析模板错误,无法解析layui中的[[]] |
| 3 | 资源请求错误 |
| 4 | 普通用户注册时用户名重复 |
| 5 | 后台JSON解析错误 |
| 6 | layui表格数据渲染错误 |
| 7 | ajax异步请求路径错误 |
| 8 | ajax请求传参类型错误 |
| 9 | ajax接受参数错误 |
| 10 | 删除数据表单不刷新错误 |
| 11 | 数据表格表头菜单执行错误 |
| 12 | 数据编辑弹出子页面加载错误 |
| 13 | select标签动态加载数据错误 |
| 14 | 页面传参错误 |
| 15 | 删除弹窗提示确认后没有反应错误 |
| 16 | HTTP请求方法错误 |
(2)场景测试
1、你预期不同的用户会怎样使用你的软件?
(1)该公司管理员使用本软件时需要使用管理员账号登录,可以对所有数据进行增删查改。
(2)发布项目的客户可以注册成为客户并使用客户账号完成对项目的发布、修改、撤销等。
(3)寻找项目的自由职业者可注册成为服务提供者并使用账号完成接受项目和管理时间表等。
2、他们有什么需求和目标?
(1)管理员需要对所有数据的直观感受,容易操作,可以通过日志进行审计和恢复数据。
(2)客户用户需要能方便发布任务和查看任务的状态的系统,故对项目的管理是客户的主要目标。
(3)自由职业者需要在本系统中寻找适合的项目来进行实践,所以项目数据和时间表数据对自由职业者来说是最重要的。
3、你的软件提供的功能怎么组合起来满足他们的需要?
将客户的发布项目的数据展示在服务提供者的可接受项目列表中,将服务提供者的类型信息展示在客户的可选提供服务列表中。
管理员使用系统进行所有数据的管理和日志审计。
(3)测试矩阵
运行平台:Windows 10 家庭中文版
硬件配置:
- CPU:Intel i7-8550U
- RAM:8GB
- 硬盘:512GB SSD
浏览器:
- Google Chrome
- Firefox
- Microsoft Edge
| 测试功能 | 测试项 | 检验点 | 预期结果 | Google Chrome | Firefox | Microsoft Edge |
|---|---|---|---|---|---|---|
| 注册登录功能 | 注册界面 | 注册按钮颜色 | 白字绿底 | 正确 | 正确 | 正确 |
| 用户名重复 | 提示“用户名已存在” | 正确 | 正确 | 正确 | ||
| 两次密码输入不一致 | 提示“两次密码不一致” | 正确 | 正确 | 正确 | ||
| 用户类型选择 | 可选“客户”或“服务提供者” | 正确 | 正确 | 正确 | ||
| 在注册页面点击“去登录” | 成功跳转到登录页面 | 正确 | 正确 | 正确 | ||
| 使用不重复的用户名注册,两次密码一致 | 提示“注册成功”,跳转登录界面 | 正确 | 正确 | 正确 | ||
| 登录界面 | 登录框格式 | 方框居中,边框有些许阴影 | 正确 | 正确 | 正确 | |
| 使用正确的用户名和密码,对应的用户类型登录 | 提示“登录成功”,并跳转到对应用户主页 | 正确 | 正确 | 正确 | ||
| 用户名或密码错误登录 | 提示“登录失败,用户名或密码错误” | 正确 | 正确 | 正确 | ||
| 在登录页面点击“注册” | 成功跳转到注册页面 | 正确 | 正确 | 正确 | ||
| 管理员登录界面 | 登录框格式 | 方框居中,无阴影 | 正确 | 正确 | 正确 | |
| 用户名或密码错误登录 | 提示“登录失败,用户名或密码错误” | 正确 | 正确 | 正确 | ||
| 使用正确的管理员用户名和密码登录 | 提示“登录成功”,并成功跳转到管理员主页 | 正确 | 正确 | 正确 | ||
| 管理员功能 | 管理员首页 | 首页导航栏显示 | 有各项管理菜单 | 正确 | 正确 | 正确 |
| 点击导航栏“退出登录”按钮 | 成功退出系统,跳转到管理员登录页面 | 正确 | 正确 | 正确 | ||
| 点击导航栏其他按钮 | 跳转到对应的页面,并且导航栏指示当前页面 | 正确 | 正确 | 正确 | ||
| 主页显示 | 正确显示一张背景图片和标题“欢迎使用此管理系统” | 正确 | 正确 | 正确 | ||
| 管理客户页面 | 点击导航栏“管理客户” | 跳转到管理客户页面,并且展示所有客户的信息 | 正确 | 正确 | 正确 | |
| 点击表格左上方新增按钮 | 弹出子页面,子页面内容为新增客户的表单 | 正确 | 正确 | 正确 | ||
| 不选择数据行,点击表格左上方修改按钮 | 弹出提示“请选择一行” | 正确 | 正确 | 正确 | ||
| 选择多于一行的数据,点击表格左上方修改按钮 | 弹出提示“只能同时编辑一个” | 正确 | 正确 | 正确 | ||
| 选择一行数据,点击表格左上方修改按钮 | 弹出子页面,子页面表单内容为选中的对应数据 | 正确 | 正确 | 正确 | ||
| 对修改子页面填写可填写项,并点击保存修改 | 若成功则提示“修改成功”,并关闭编辑子页面;失败则提示“修改失败” | 正确 | 正确 | 正确 | ||
| 选中一行数据,点击点击表格左上方删除按钮 | 弹出提示框“真的删除行么” | 正确 | 正确 | 正确 | ||
| 点击弹出提示框“真的删除行么”上的取消 | 关闭提示框 | 正确 | 正确 | 正确 | ||
| 点击弹出提示框“真的删除行么”上的确定 | 关闭提示框,提示“删除成功” | 正确 | 正确 | 正确 | ||
| 管理服务提供者页面 | 与管理客户页面检验点一致 | 与管理客户页面预期结果一致 | 正确 | 正确 | 正确 | |
| 管理项目页面 | 与管理客户页面检验点一致 | 与管理客户页面预期结果一致 | 正确 | 正确 | 正确 | |
| 管理时间表页面 | 与管理客户页面检验点一致 | 与管理客户页面预期结果一致 | 正确 | 正确 | 正确 | |
| 管理合同页面 | 与管理客户页面检验点一致 | 与管理客户页面预期结果一致 | 正确 | 正确 | 正确 | |
(4)出口条件
可实现普通用户的注册登录、各种必要功能,管理员的所有管理功能
三、alpha版本发布
1、功能介绍
(1)注册登录功能
普通用户注册页:

普通用户登录页:

管理员登录页:

(2)管理客户信息
查看客户信息

新增客户信息

编辑客户信息

删除客户信息

(3)管理服务提供者信息
新增服务提供者

编辑服务提供者信息

删除服务提供者信息

(4)管理项目信息
新增项目

编辑项目信息

删除项目信息

(5)导出数据


(6)打印数据

2、修改的缺陷
此版本是本软件的第一版,没有修改缺陷
3、运行环境要求
该系统是以网页形式存在,支持主流浏览器如:Google Chrome,Firefox,Microsoft Edge。
若使用源代码编译运行方法,需要JDK8+Maven3.6+MySQL5.7+SpringBoot 2.2.4等运行环境。
4、安装方法
由于未购买服务器,试用系统可自行编译运行。
(1)使用命令
git clone https://github.com/ecochap/ServiveProvideSystem.git
或下载ZIP压缩包,将项目下载到本地。
(2)使用Maven将项目导入IDE
(3)运行ServiveProviderSystemApplication应用方法
(4)使用http://localhost:8080/访问
5、问题和限制
问题:该系统Alpha版本由于进行数据处理的实践数量较少,系统稳定性可能无法保证,需要进一步优化。
限制:该系统目前只实现了管理员的功能,普通用户的发布接受任务等功能尚未实现;由于没有购买服务器,没有在线网站。
6、发布方式及发布地址
GitHub源代码发布地址:https://github.com/ecochap/ServiveProvideSystem

浙公网安备 33010602011771号