团队项目选题
每个团队在10月6日前将所希望选择项目按优先次序排列(比如,数据获取和处理、在线系统、自选项目:XXXX),发布在团队博客上,我们将根据黄金点游戏排出的次序来确定每个团队的项目。确定之后每个团队需要写团队博客描述他们要做的究竟是什么系统 (不懂的地方可以在博客上提问或联系老师)。
这次课程有4个学生团队,我们有2个备选项目,2个自选项目。
第一组项目:在上个学期的Xueba项目的基础上继续完善改进3个模块(2个团队)。
创建网上教学问答系统
在网上有许多关于某门学科 (例如计算机科学) 的许多知识和问答,这些问答散落在网上课件,维基百科,论坛,校园BBS,技术文档,教学视频… 中。许多网上大学也有很多相关内容。一个新手 (例如大学生) 往往要花许多时间搜索这些问题的答案。事实上,无数的师兄师姐们已经问过,答过这样的问题了。 这个系统的目的是要把高质量的内容都聚合起来 (在遵守相关知识产权规定的前提下),让用户能系统地浏览、搜索、编辑、评论; 同时也支持用户继续通过提问/回答完善这些内容。
主要针对计算机科学、软件工程两个学科。
1. 数据获取和处理(爬虫和数据处理模块) (1个团队)
从网上收集计算机科学相关的网页、文档、幻灯片、视频、问答对等,并通过分类器对其进行分类, 并支持手工分类;再根据在线系统组的需求,定义数据库的存储结构;从第一步收集到的网页等数据中,抽取元数据 (meta data),提取关键词,作中英翻译,并支持标签等,把数据和元数据存入数据库中。
爬虫:http://www.cnblogs.com/cnmxfd/
数据处理:http://www.cnblogs.com/cheneygroup/
2. 在线系统 (1个团队)
系统已实现的功能
项目说明 |
功能 |
用户管理 |
用户信息查看 |
用户信息修改 |
|
用户标签管理:添加、删除 |
|
用户查看推荐标签 |
|
搜索单元 |
|
基于Tags标签栈的搜索 |
|
输入框关键字搜索 |
|
课程单元 |
课程视频展示 |
课程pdf展示 |
|
Phobia助手 |
聊天查询 |
问答 |
查看问题 |
添加问题 |
系统架构、设计文档、功能规格说明书见http://www.cnblogs.com/bugphobia/。
图 1前端页面
图 2后端系统
对于搜索系统,采用了搭建在Apache服务器上的Solr + Nutch的配置。
第二组项目: (2个团队) 自由选题。 这个团队可以自己选择真实软件项目,必须在规定时间内公开发布并达到事先计划的一系列指标(用户数目、用户评价等)。
所有团队时间:
Alpha版本发布:4周之后 (1周计划和设计,2周实现 (sprint),1周稳定和发布)。
10/16: 所有的任务都创建在Github中,并应用各种估计方法 (1) (2), 去估计各个任务的时间。把各个任务交给个人。每个任务必须有估计的时间,并且时间不能多于8小时。把所有任务更新之后,截屏、统计你们项目到底需要多少时间做完。写成一个博客。(各个团队的PM 负责此事)
10/17: 必须写出第一个每日例会(scrum meeting)报告。(例子)
- 每个人的工作 (有Issue的内容和链接):昨天已完成的工作,今天计划完成的工作;工作中遇到的困难。
- 燃尽图(Github燃尽图制作方法)
- 每日例会的照片
- 每人的代码/文档签入记录(签入记录对应的Issue内容与链接)
如实报告这四个部分的,得满分5分。少任何一个,就扣 1/4 的分。迟交得 0 分,晚于两周交博客,倒扣全部分。
复审、反思、团队重组: 1周。
Beta版本发布:4周 (与Alpha阶段一致)。
团队博客:在 10/16 日前写出你的项目的NABCD。并明确写出在哪里发布软件,发布后一周的用户量(精确到千)。