团队成员
人员分配:
PM:潘礼鹏
dev:符美潇 焉域政 谢金洛
test:符美潇 周文祥 玉钟焕
博客地址:
13061178 符美潇 博客链接:
爬虫刚到的样子
它告诉我们他能为我们专门爬取pdf,可是它还没开始爬就睡着了。
它总会在爬取中犯错。
也常常不听话。
团队项目的目标
项目的目标是根据是POWER TEAM的要求,在约定周期内完成基本功能的开发,尽量减少bug的出现,将相应数据存入数据库供其使用。
预期典型用户是POWER TEAM。
预期功能:通用型爬取,问答页爬取,pdf专门爬取,doc专门爬取,ppt专门爬取功能。
预期爬取文件数量:50000。
用户的需求
用户的需求是爬取大量的问答页面,存入数据库中使用。
爬虫的蜕变历程
重要缺陷的修复
a) 修复了一个多线程Bug,该Bug会导致爬取的网页数超出用户所要求的网页数。
b) 修复了一个Bug,该Bug会导致只要网址中出现pdf字符串就判断当前页为pdf类型。
c) 修复了一个Bug,该Bug会导致文档专门性爬取无法开始。
d) 修复了一个Bug,该Bug会导致用户选择通用爬取时爬虫只识别html和pdf型文件。
e) 修复了一个BUG,该Bug在某些情况会导致文件存储位置异常。
f) 修复了一个BUG,该BUG会使下载页面数和更新的数据库项数不同。
g) 修复了一个BUG,该BUG会导致页面信息存入数据库而没有把文件下载到本地。
新功能的推出
a) 新添了用户自定义关键词的分类功能:
b) 真正实现了pdf,ppt,doc等文档文件的专门爬取:
c) UI界面的升级
后期的优化
a) 优化了对数据库数据的统计操作,使得Analyze响应时间更快。
b) 优化了进行爬取时对进度显示以及对数据库操作的方法,使得单位时间爬取的网页数目更多(详情见测试报告)。
c) 优化了爬取方式,把网页、pdf、ppt等各文档文件的爬取和下载功能充分联系到一起,提高了爬取效率。同时删减了相应的代码文件,减少了代码量
团队的分工、时间的统筹和项目的成果
团队包含PM,dev,test,分工明确。在迭代一的四周时间里,我们第一周进行了需求分析和设计,第二、三周进行了编码,最后一周部署、稳定和测试,根据POWER TEAM小组的需求,维护、修改和完善工程。
迭代一燃尽图:
爱码室Alpha爬虫的一些数据
文件类型 | 爬取数目 | 目标数目 |
网页 | 53489 | 50000 |
搜狗问问 | 5726 | 20000 |
德问 | 4684 | |
百度知道 | 17102 | |
博客园 | 3163 | |
702 | 2000 | |
ppt | 24 | 2000 |
doc | 4 | 2000 |
测试序号 | 爬取方式:URL地址 | 网页数目 | 老版本花费时间(ms) | 新版本花费时间(ms) |
1 | 通用型爬取: http://ask.csdn.net | 100 | 64276 | 47320 |
2 | 通用型爬取:http://q.cnblogs.com | 100 | 21170 | 10006 |
3 | 通用型爬取: http://www.dewen.io | 100 | 37152 | 15880 |
迭代一阶段完整的文档
需求分析文档:
http://www.cnblogs.com/cnmxfd/p/4893526.html
项目设计文档:
http://www.cnblogs.com/cnmxfd/p/4931716.html
功能规格说明书:
http://www.cnblogs.com/cnmxfd/p/4931532.html
测试报告:
http://www.cnblogs.com/cnmxfd/p/4966080.html
团队成员贡献
成员 | 角色 | 具体可量贡献 |
潘礼鹏 | PM | 会议组织、功能规格说明书、设计文档、团队工作分配、成员贡献调研、博客作业等。 |
符美潇 | DEV、TEST | 修复了7个影响较大的BUG、14篇Daily Scrum、优化了文件下载的代码,减少了820行代码量、增加了专门爬取功能、使用爬虫爬取了5W多个文件、测试报告、Alpha版本发布文档。 |
谢金洛 | DEV | 进行UI界面的开发、设计了链接数据库的界面、设计了关键字分类的饼图 |
焉域政 | DEV | 服务器部署、增加了根据爬取关键字分类的功能 |
周文祥 | TEST | Junit test |
玉钟焕 | DEV | 相关资料的收集 |
完善空间
收获与建议
1.需求分析是决定是一个项目是否成功的关键因素之一,在Alpha阶段中,我们接触并实践了软件工程的需求分析。在Beta阶段中我们会尤其重视这一个点。
2.充分培养了团队协作能力、交流能力。我们在迭代一种优势互补,明确分工,使得每一个成员都能为团队项目出一份力,多一分收获。
3.切身体验了一个软件工程项目的生命周期,从需求分析到最后的部署和稳定,实践使得我们对软工理论的理解更深一分。
4.一个小建议:在开发的后两周罗老师会在课上向我们了解项目的情况。希望换一个形式:可以给每个小组的PM2-3分钟的时间上台做小报告,令团队更主动的关心项目进展。
5.希望能加快服务器的网速。