12.6 总结和交付阶段
该阶段提供交付清单、软件项目总结报告、软件验收报告和用户手册。
12.6.1 交付清单
12.6.1.1 引言
1)编写目的
本交付清单的编写目的是对二手商品交易平台软件的交付物进行罗列和说明。清单将展示项目交付的所有文档和软件的构成。本文档用于客户对开发团队的工作进行验收。
2)适用范围
本文档适用的软件:校园二手商品交易平台。
与该软件相关的文档、子系统、模型、代码等均符合本文档中的内容。
3)定义
本文件中涉及的术语定义在项目词汇表(词汇表.docx)中给出。
4)参考资料
《面向对象软件工程——使用UML、模式与Java》(第3版),清华大学出版社,2011。
5)概述
本文档包括文档清单和软件清单两部分。文档清单列出所交付的各种文档及对应的文件名。软件清单列出各个软件模块、对应的文件名及其大小。两部分互为补充和对照,共同呈现本软件的交付物。
12.6.1.2 文档清单
1)计划阶段
计划阶段文档清单如表12-47所示。
2)需求获取和分析阶段
需求获取和分析阶段文档清单如表12-48所示。
表12-47 计划阶段文档清单
表12-48 需求获取和分析阶段文档清单
(1)设计阶段(见表12-49)。
表12-49 设计阶段文档清单
(2)开发阶段(见表12-50)。
表12-50 开发阶段文档清单
(3)测试、总结和交付阶段(见表12-51)。
表12-51 测试、总结和交付阶段文档清单
3)附件(注:本文未提供)
附件表如表12-52所示。
表12-52 附件表
12.6.1.3 软件清单
1)Android客户端
Android项目文件名为erhuo,大小为123MB,项目的文件结构如下:
erhuo
各文件夹对应的文件如下:
(1)Java源代码:Java源代码位于src文件夹下,大小为94.2k B,包名为com.example. erhuo。
(2)资源文件:各种软件需要的资源文件在res文件夹下,总大小为2.59MB。
(3)其他:软件所需的JAR包在libs文件夹下,总大小为1.59MB。对应文件如图12-99所示。
图12-99 Jar包
2)服务器端
服务器端项目开发环境为Eclipse,服务器容器为Tomcat,文件夹名为erhuo Server,文件结构如下:
erhuo Server
Java源代码在src文件夹下,总大小为89k B,包含的文件如下:
3)数据库
此处插入模块开发卷宗文档中12.4.1.5节中的数据库表信息。此处略去。
数据库总共插入293条数据,所占大小为96.00k B。
12.6.2 软件项目总结报告
12.6.2.1 引言
1)编写目的
本软件项目总结报告文档的编写目的是对二手商品交易平台软件的整个项目工作进行总结和回顾。文档将展示项目的最终结果,对开发工作进行评价,并总结经验和教训。本文档用于开发团队总结项目情况,为之后的工作积累经验。
2)适用范围
本文档适用的软件:校园二手商品交易平台。
与该软件相关的特性、子系统、模型、代码等均符合本文档中的内容。
3)定义
本文件中涉及的术语定义在项目词汇表(词汇表.docx)中给出。
4)参考资料
《面向对象软件工程——使用UML、模式与Java》(第3版),清华大学出版社,2011。
5)概述
本文档包括实际开发结果、开发工作评价及经验与教训三部分。实际开发结果总结了项目的产品、费用和人员等情况。开发工作评价从多个方面回顾开发工作。经验与教训是整个团体最后的反思和体会。本文件的各部分内容联系紧密,回顾了之前的工作,进行了全面的总结。各部分互为补充和对照,共同呈现本项目的总体情况。
12.6.2.2 实际开发结果
12.6.2.2.1 产品
1)程序系统
(1)Android客户端程序层次关系(见表12-53)。
表12-53 程序层次关系表
(2)服务器端程序(见表12-54)。
表12-54 服务器端程序列表
2)程序系统版本(见表12-55)
表12-55 程序版本列表
3)文件描述
该节拷贝模块开发卷宗的12.4.1.5节。此处略去。
4)数据库
该节拷贝模块开发卷宗的12.4.1.5节内容。此处略去。
12.6.2.2.2 主要功能和性能
主要功能和性能列表如表12-56和表12-57所示。
表12-56 主要功能列表
(续 表)
表12-57 主要性能列表
12.6.2.2.3 基本流程
本系统中的核心用例为Purchase Item。
此处插入软件设计模型文档中的图12-80。
进度如表12-58所示。
表12-58 进度表
由于是第一次系统地开发软件,经验上有所欠缺,在计划阶段预定的时间可能偏早,没有考虑到实际开发进程中会遇到很多问题。在开发过程中,又有一些没有预料到的问题,加之开发组成员的时间安排等因素,造成实际开发进度比起计划进度有较大的延迟。
12.6.2.2.4 费用
由于本项目作为实习项目依托学生团队开发,因此目前暂无实际的支出。
12.6.2.3 开发工作评价
1)对生产效率的评价
(1)系统开发历时约3个月。
(2)开发的反复性比较多。
(3)程序平均生产效率,每人每月生产约1000行。
(4)文件平均生产效率,每人每月生产约3600多字。
原计划:每人每月生产约1500行代码、5000字左右。
2)对产品质量的评价
约每200条指令会出现一个BUG,错误发生率在估计范围内。
3)对技术方法的评价
(1)使用了Power Designer工具建立模型,方便程序员很好地理解业务流程和掌握系统架构者的架构思想,更好地满足客户的功能需求。在今后的项目开发中,我们要更好地完成系统的前期模型建立来最大限度地优化系统功能。
(2)采用了客户端/服务器模式,前台客户端为手机端Android App,后台为Tomcat服务器+My SQL数据库,客户、服务器分离符合App开发的环境,并且也方便数据的集中管理。
(3)采用了MVC模式,MVC模式将系统分为视图(第一层)、控制器(第二层)和模型(第三层)三部分。另外在本系统中会使用到对话功能(联系卖家),也需要使用MVC模式。
(4)使用三层体系结构:①用户界面层,App的UI;②应用逻辑层,控制实现系统功能,负责用户信息、商品、订单和对话的控制;③存储层,主要负责系统数据的存储、检索和查询;④使用了第三方服务实现即时通讯,节约了开发成本和时间。
4)出错原因的分析
(1)My SQL中的字符集编码中,默认编码为latin,这导致了客户端无法显示从服务器收到的中文字符,解决方法是修改My SQL安装目录下的配置文件,加入“character_set_server=utf8”和“character_set_database=utf8”即可将默认编码修改为utf-8。
(2)使用Androidstudio无法编译项目代码,当时出错的原因是gradle的版本不是最新的,而且compile API和buildtarget没有一一对应。
(3)服务器端的开发环境为Eclipse,服务器容器为Tomcat,当需要修改服务器端的代码时,Tomcat服务器必须重新启动才能将编译后的文件写回服务器中。
(4)Android设计过程中,出现了可任意调整大小的一种图片格式“.9.png”,这种图片是用于Android开发的一种特殊的图片格式,可以用Android SDK/platformtools文件夹下的draw9patch.bat工具把普通的图片修改成“.9.png”格式的图片。
12.6.2.4 经验与教训
1)经验
(1)计划方面:从实际开发进度与计划开发进度的对比中可以看到,实际开发进度比起计划有较大的延迟。由于是首次按照系统的流程来开发一个软件,经验不足是造成这种情况的主要因素。在计划阶段,对实际开发过程中可能遇到的各种问题考虑不足,给各阶段预留的时间较少。在实际开发过程中也遇到了一些事先没有预料到的问题,加上开发组成员时间安排等因素,造成实际进度的延迟。
(2)需求方面:项目的需求调查一定要做到位,落实到具体使用者的需求,完全考虑产品使用者可能会有的需求,需求没有最细,只有更细,这样才能在后续的开发中符合客户的需求,同时在实施过程中,以需求作为准则,进行更好的分析和开发。
(3)设计方面:项目的设计中使用了UML(统一建模语言),对项目的开发起到了很好的指导作用。对于项目开发人员,在系统的分析和设计阶段,尽可能地让其参与,保证开发目的明确,避免出现开发产品和预先设计脱节的情况,为设计一流的系统提供设计保障。
(4)技术方面:尽量根据预先设定的文档来进行开发,避免脱离初衷。项目开发遇到问题时应该尽早提出,避免拖延,想尽一切办法解决,否则会拖延整个项目进度,对于每一个BUG不应该抱有侥幸心理。项目管理上应保持严格的态度。
2)教训
这次项目进行中我们做得不太好的一点是版本控制,由于各自使用的开发软件版本不一致,在进行汇总的部分出现了一系列本不该有的问题,常常导致无法调试,同时,接口部分也并不完善,在下次的开发中应使用Git来进行更好的项目控制。
3)收获
这次软件开发过程提供的经验是宝贵的,使我们对一个软件从开发计划、需求获取,到分析、设计、构造,再到最终的测试、交付的全过程有了亲身的体会,也有了一定的认识和理解。在以后的软件开发过程中,我们对整体过程的把握一定会有所提升,考虑问题也会更加完善和周到。
12.6.3 软件验收报告
12.6.3.1 引言
1)编写目的
本软件验收报告文档的编写目的是对二手商品交易平台软件的验收进行记录。文档将介绍项目的基本情况,描述项目的验收环境,记录最终的验收结果。本文档用于开发团队和客户验收时的参考和记录。
2)适用范围
本文档适用的软件:校园二手商品交易平台。
与该软件相关的特性、子系统、模型、代码等均符合本文档中的内容。
3)定义
本文件中涉及的术语定义在项目词汇表(词汇表.docx)中给出。
4)参考资料
《面向对象软件工程——使用UML、模式与Java》(第3版),清华大学出版社,2011。
5)概述
本文档包括项目信息、软件概述、验收测试环境、验收及测试结果和验收总结五个部分。项目信息介绍了项目的基本情况。软件概述描述了软件的组织和功能,验收测试环境记录了验收的软硬件和人员情况。验收及测试结果展示验收的实际结果。验收总结进行总体评价。各部分互为补充和对照,共同呈现本软件的验收情况。
12.6.3.2 项目信息
项目名称:校园二手商品交易平台。
项目开发单位:Hello World开发团队。
项目开发时间:2016年3月22日至6月23日。
项目验收时间:2016年6月24日。
12.6.3.3 软件概述
12.6.3.3.1 软件结构
1)程序系统
(1)Android客户端程序层次关系(见表12-59)。
表12-59 客户端层次关系列表
(续 表)
(2)服务器端程序(见表12-60)。
表12-60 服务器端程序列表
(续 表)
2)数据库
该系统所使用数据库为My SQL关系型数据库,数据库名为erhuo,包含的表如表12-61所示。
表12-61 数据库表
(续 表)
12.6.3.3.2 主要功能和性能
主要功能和性能如表12-62和表12-63所示。
表12-62 主要功能列表
表12-63 主要性能列表
(续 表)
12.6.3.4 验收测试环境
1)硬件
服务器:一台装有AMD A4-5000 M 4 GB内存500 GB硬盘的笔记本电脑。
服务器端网络:10Mbps及以上的广域网接入。
客户端:具有四核心处理器2 GB RAM、6 GB ROM数据网络接入的Android智能手机。
客户端网络:互联网接入。
2)软件
操作系统:Microsoft Windows/8.1,
Android6.0.1。
开发软件:Eclipse,Android Studio。
应用软件:JAVA8。
3)文档
软件需求规约.docx。
用户手册.docx。
软件测试计划.docx。
软件验收总结报告.docx。
4)人员
技术经理:雷同学。
开发人员:田同学、徐同学。
测试人员:姚同学、徐同学。
技术支持人员:苏同学。
12.6.3.5 验收及测试结果
(1)功能验收(见表12-64)。
表12-64 功能验收表
(续 表)
(2)性能验收(见表12-65)。
表12-65 性能验收表
(3)文档验收(见表12-66)。
表12-66 文档验收表
(续 表)
12.6.3.6 验收总结
该软件系统基本功能已全部实现并基本满足性能要求,验收通过。
12.6.4 用户手册
12.6.4.1 引言
1)编写目的
本用户手册的编写目的是对二手商品交易平台软件的使用和运行进行说明。手册中介绍了软件的功能,规定了运行环境,详细地说明了使用过程和运行步骤。本文档用于辅助用户顺利使用软件。
2)适用范围
本文档适用的软件:校园二手商品交易平台。
与该软件相关的特性、子系统、模型、代码等均符合本文档中的内容。
3)定义
本文件中涉及的术语定义在项目词汇表(词汇表.docx)中给出。
4)参考资料
《面向对象软件工程——使用UML、模式与Java》(第3版),清华大学出版社,2011。
5)概述
本用户手册包括软件概述、运行环境、使用过程和运行说明四部分。软件概述部分说明了软件的构成和功能。运行环境部分规定了软件的使用环境。使用过程按步骤详细地介绍了软件的使用方法。运行说明介绍了系统的运行步骤。本文件的各部分内容联系紧密,详尽地描述了软件的情况和使用。各部分互为补充和对照,共同为用户的使用进行指导。
12.6.4.2 软件概述
该节内容复制自软件验收报告12.6.3.3节内容,此处略去。
12.6.4.3 运行环境
1)硬件环境
(1)服务器:处理器:AMD A4-5000M、Intelcorei53210m或以上。
内存:4GBDDR3或以上。
外部存储器:1×500GBHDD或更好的配置。
网络环境:具有10Mbps或以上的广域网连接。
(2)客户端:处理器:ARMcortex-A91GHz双核或以上。
内存:512MB或以上。
存储器:512MB或以上。
网络环境:2G/3G/4G/Wi-Fi网络接入。
2)支持软件
(1)服务器端:Microsoft Windows7/8.1/10。
JAVA8update9164bit。
My SQL5.6.24。
(2)客户端:Android4.4/5.0/5.1/6.0。
3)数据结构
本项目使用关系型数据库,具体为My SQL5.6.24,实际中与服务器为同一台物理机。
12.6.4.4 使用过程
12.6.4.4.1 安装与初始化
1)客户端
首先需要获取安装包(.apk文件),打开安装包,软件安装完成。
2)服务器端
解压压缩文件,放于某磁盘根目录下,打开Eclipse,import该工程,以JAVA服务器的形式运行该工程。
12.6.4.4.2 输入
1)注册时的输入
用户名:一个字符串,可以是数字、字母及符号,长度至少为4位。例:zhangsan,foobar0123。
密码:一个字符串,可以是数字、字母及符号,长度至少为6位。例:abcd1234。
手机号码:一个字符串,必须为11位纯数字。例:13912345678。
邮箱:一个合法的邮箱地址,字符串。例:test@test.com。
2)登录时的输入
用户名:同注册。
密码:同注册。
3)发布商品时的输入
商品名称:一个字符串,可以是汉字、数字、字母及符号,长度小于255个字节。例:计算机组成课本。
商品描述:一个字符串,可以是汉字、数字、字母及符号,长度小于255个字节。例:用了一个学期的课本,九成新,现在低价出售。
出售价格:一个浮点数。例:17.5。
4)聊天时的输入
一个字符串。例:你好。
5)创建订单时的输入
交易时间:一个字符串,需要满足以下格式:YYYY-MM-DDHH∶MM∶SS。YYYY为年,MM为月,DD为日,HH为小时,MM为分钟,SS为秒,例:2016-06-25 14∶00∶00。
交易地点:一个字符串,可以是汉字、数字、字母及符号,长度小于255个字节。
联系电话:一个字符串,必须为11位数字,例子同上。
6)修改个人资料时的输入
手机:一个字符串,必须为11位数字,例子同上。
邮箱:一个合法的邮箱地址,字符串。例:test@test.com。
12.6.4.4.3 输出
本软件运行时,与用户的所有交互结果均以界面交互的形式输出,并不包含大量的格式化数据,因此参见运行说明中运行步骤。
12.6.4.4.4 帮助信息获取
运行中遇到任何问题,请联系开发人员。
开发人员邮箱:515106143@qq.com。
12.6.4.5 运行说明
1)运行步骤
(1)登录:打开App,在输入框中输入用户名和密码,单击登录按键(见图12-100)。
(2)注册:打开App,单击取消按键,在新的界面中的输入框输入用户名、密码、确认密码、手机号码、联系方式、邮箱,单击注册按键(见图12-101)。
图12-100 登录界面
图12-101 注册界面
(3)浏览商品:登录成功后,即为商品的分类,单击类别即进入该类别下的商品列表。单击列表中任意一项,进入商品详情页面,可以浏览商品(见图12-102)。
图12-102 浏览商品界面
(4)查看功能列表:在登录后的主界面,可以拉出侧边栏,查看并选择想要进行的操作(见图12-103)。
图12-103 查看功能列表界面
图12-104 查看商品详情界面
(5)查看商品详情:在商品列表中单击任意一项,进入商品详情页面。可以看到价格、图片、简介等信息(见图12-104)。
(6)联系卖家:在商品详情页面,单击联系卖家按键,即进入与对方的联系界面(见图12-105)。
(7)收藏商品:在商品详情页面,单击收藏商品按键,即可将商品加入自己的收藏列表。
(8)创建订单:在商品详情页面,单击立即购买,进入创建订单页面。在该页面输入框中输入交易时间、交易地点、联系方式等信息,单击创建订单,即创建一个订单(见图12-106)。
图12-105 联系卖家界面
图12-106 创建订单界面
(9)发布商品:用户在登录成功后,从左侧滑出侧边菜单,单击“发布商品”按钮,进入商品发布页面。在商品发布页面填写商品名称、商品描述、期望价格,选择商品类别,上传1张照片,完成后单击“确认发布”按钮(见图12-107)。
(10)查看发布商品:用户在登录成功后,从左侧滑出侧边菜单,单击“我的发布”按钮,进入我的发布列表(见表12-108)。单击列表中任意项可以进入商品详情页面。
(11)查看收藏商品:用户在登录成功后,从左侧滑出侧边菜单,单击“我的收藏”按钮,进入我的收藏列表(见图12-109)。单击列表中任意项可以进入商品详情页面。
(12)更改资料:用户在登录成功后,从左侧滑出侧边菜单,单击“资料管理”按钮,进入个人信息页面。单击“修改资料”按钮,进入资料修改页面。填写新的手机、邮箱,单击“确定”完成资料更改(见图12-110)。
(13)查看我的订单:用户在登录成功后,从左侧滑出侧边菜单,单击“我的订单”按钮,进入我的订单列表(见图12-111)。单击列表中任意项可以进入订单详情页面。
(14)取消订单:在订单详情页面,单击“取消订单”按钮,即可取消订单(见图12-112)。
图12-107 发布商品界面
图12-108 查看发布商品
图12-109 查看收藏商品
图12-110 更改资料
图12-111 查看订单
图12-112 取消订单
(15)确认订单:在订单详情页面,单击“确认交易”按钮,即可确认订单。
(16)联系对方:在订单详情页面,单击“联系”按钮,即可联系商品买方或卖方。
(17)搜索商品:用户在登录成功后,单击左上角“更多”按钮,单击搜索,在屏幕最上的搜索框中输入关键字,单击前往,转到搜索结果列表(见图12-113)。
图12-113 搜索界面
2)非常规过程
客户端运行时如果出现卡顿、死机等,可重启程序。如果在运行过程中遇到问题,建议首先重启服务器。如有疑问或异常可及时联系开发和维护人员。