祝贺同学们完成了第一个里程碑 M1. 经过报告/评论/Postmortem, 大家对各自项目在M1 的优缺点都应该有很深的了解, 也理解到做一个好的软件和实现一个算法的差别。请把这些对于软件工程的感悟体现在M2 的具体工作结果中。

关于转会 -  软件工程师换工作是常有的事,优秀的软件工程师都会留下足够的文档,  到哪里都能高效工作,  我相信经历了转会的工程师会以更高的热情投入到新的工作中。

M2 阶段的要求:

  1. 主要目标是要把M1 计划的功能进一步做好, 不贪多,必要时可以削减功能。
  2. 要用测试用例,单元测试,代码覆盖率,自动测试等工具和标准来保证软件模块的质量。最后会重点考察各项目测试的代码覆盖率。请测试的同学加把劲,如何保证你项目的60% 以上的代码都验证过?  都被测试用例覆盖了?
  3. 要有每日构建,每天都应该把代码集成进TFS, 并能够编译成功。
  4. 用真实世界的数据和用户来衡量软件的质量。 我们写软件是为用户写, 请考虑在适当时候请用户来试用软件, 收集用户反馈。
    1. 爬虫组:  每个小组搞定至少  4  万个英文文档;  5千个中文文档。 两个小组可以分工 (东西海岸,  不同文档类型等) , 文档处理要满足 Pipeline 组的要求。
    2. 数据Pipeline 组:  处理爬虫组的文档,并生成符合 UI 组要求的数据库。  (关键字,  问答对)。
    3. UI 组:  基本UI 要流畅好用, 使用场景完备。  搜索要快速,并能处理中英关键字的搜索,  用户的管理,  anti-spam,  anti-abuse 要达到实用的标准。 要能满足 效能测试/负载测试/压力测试的要求。
    4. AbsoluteDefense,  iLifer,  背单词小组:  不要过于强调自己的技术有多麽先进,   把软件做到满足典型用户的要求, 让用户喜欢你们的软件, 是最重要的。同时要尊重知识产权
  5.  所有的工作都写成了 TFS 的任务加入 TFS 中, 并有任务时间的估计, 所有的成员的任务都要写在里面

和M1 类似,  Daily Scrum 的 blog 打分细则如下:

  • 连续10天, 只要求 10 天,  从11/27日开始到12/10,各团队自己决定周末是否计入.   有特殊要求的请和老师说明。
  • 当天没有博客, 则得 负5分。事后补交 (日期不对) 得 0 分。
  • 有博客, 并有每人工作记录, 包括工作的任务号  (work item ID), 则加五分。
  • 没有ID 的例子: http://www.cnblogs.com/76er/archive/2012/10/30/2747245.html
  • 有ID 的例子: http://www.cnblogs.com/fightingsnail/archive/2012/11/08/2761664.html
  • 博客有TFS  remaining work  报表, 或自己做的 Burn down 报表, 加五分。
  • 例子: http://www.cnblogs.com/fightingsnail/archive/2012/10/31/2747290.html
  • 博客如果有其它优缺点, 则可酌情加减分数 (1~5 分) 。
  • 例如: 有代码测试覆盖的报告, 有测试用例的报告, 或者有最新程序运行的截屏, 等。
  • 每天最高 12 分。 最低 -5 分。

用户测试报告: 在10天的冲刺完成后, 在适当的时机 (一两天后) 请项目的目标用户来试用软件, 记录用户反馈, 并写报告, 报告要有用户使用你们软件的照片。

要点:  不要先告诉用户操作细节, 而是告诉用户一个目标 (例如想找有关 机器学习的资料), 让用户自己试着摸索。 反复几次, 收集反馈, 并思考如何改进。 所有小组都要做。 crawler 和 pipeline 小组要找其他开发人员 (假设他们以后要维护这个网站, 并且要处理更多文档) 来做用户调查。  请看移山之道或其它教材/资料关于用户调查/user study 的做法。

现在就可以考虑软件要如何发布, 最后项目评审的时候要拿出实际用户的数据, 所以要求你们的软件要在实际世界中运行了一段时间。

所有软件的发布日期都是 (12/17 中午)。  如果软件在发布之后有新版本,可以多次发布,但是12/17 号必须有第一次发布。

每个项目预期发布20 天  (1/7 中午)  之后的下载用户数量, 或者活跃用户数量。 各个项目可以自己找渠道推广各自的软件/网站.

要求所有项目都要在下列的网站发个帖子, 做宣传:

http://www.newsmth.net/nForum/#!board/NewSoftware

www.cnbeta.com

请把截屏和用户的反馈加入到报告中。

1/7/2013 进行最终项目终审。要求在这里:

http://www.cnblogs.com/xinz/archive/2012/12/26/2833855.html

附: 各小组博客列表.

北航 2012 秋季 软件工程课 M2 要求相关推荐

  1. 北航 2012 秋季 《现代软件工程》 博客列表

    如果你写了代码, 但是从来没有实际运行过, 那你究竟写了代码么, 还是在软件工程课上做的梦? 如果你写了文档, 但是从来没人读过, 那你究竟写了文档么? 在我们的课程中,  我们通过实际的项目和公开的 ...

  2. 北航2012年软件工程硕士自主招生简章

    北京航空航天大学软件学院 2012年软件工程硕士自主招生简章 (自主招生 自主划线 自主命题) 北京航空航天大学是国内最著名的大学之一,地处中国IT产业中心--北京中关村的核心地带,周边紧邻众多全球前 ...

  3. 北航 2012 秋季 现代软件工程 团队项目要求

    同学们的小组要在下次课上 (10/15) 决定做哪一个项目 (按次序挑选),  确定之后写团队博客描述他们要做的究竟是什么系统 (不懂的地方可以在博客上提问). 这次课程有10 个学生团队,  我们有 ...

  4. 北航 2012 秋季 现代软件工程 两人结对 作业要求

    Pair Project: Elevator Scheduler [电梯调度算法的实现和测试] Design and implement an Elevator Scheduler to aim fo ...

  5. 北航 X 墨刀——原来软件工程课还可以这么上!

    "教育是令人羡慕的东西,但是要记住:凡是值得知道的,没有一个是能够教会的."-- 奥斯卡·王尔德 7月25-28日,微软亚洲研究院的首席研发经理邹欣老师和北航计算机学院的罗杰老师给 ...

  6. 软件工程资料 - 优秀的大学怎么教程序开发和软件工程课

    他山之石,可以攻玉 世界上很多大学都有不错的教学方法, 例如我们曾经的助教总结他在国外的学习经历,可以看出老师和学校对于如何教好课是花了心思, 有很多投入的. 一门课怎么上: https://zhua ...

  7. 软件工程课, 编程课 助教的工作介绍

    在用 "做中学 (Learning By Doing) " 方式讲授编程和软件工程课的时候,我们认为助教在其中起了很大的作用. 费曼学习方法的精髓是 "以教代学" ...

  8. OUC2022秋季软件工程第一周作业

    注:本博客为OUC2022秋季软件工程第一周作业 文章目录 注:本博客为OUC2022秋季软件工程第一周作业 软件工程第18小组 成员: 一.个人简介 罗浩宇 二.四个问题 问题① 问题② 问题③ 问 ...

  9. 软件工程课设-----日程管理系统

    这学期进行了软件工程课设,题目是:日程管理系统(JavaWeb),为期3周.这三周只有前两天是企业老师讲解是企业老师讲解相关的基础知识(老师讲的水平实在是不可恭维......). 多的不多说.直接进行 ...

最新文章

  1. 正则表达式--python的re模块
  2. 光速AStar寻路算法(C++)
  3. 一个小小指针,竟把Linux内核攻陷了!
  4. 机器学习实战:GBDT Xgboost LightGBM对比
  5. linux C/C++内存检测
  6. selenium java api_selenium_java常用API操作
  7. npm 安装出错 npm ERR! request to https://registry.npmjs.org/express failed, reason: unable to verify th
  8. python 线程(创建2种方式,锁,死锁,递归锁,GIL锁,守护进程)
  9. PTA Python程序设计-01
  10. 华为U2000统一网管
  11. Hello World CGAL 5.4入门
  12. 计算机帮教助教活动总结,家长助教活动总结范文(精选5篇)
  13. 我们整理了20个Python项目,送给正在求职的你
  14. 2021年起重机械指挥考试报名及起重机械指挥考试技巧
  15. 退休当月要干到月底吗_到退休年龄,是当月办理退休,还是提前一个月办理?...
  16. adobe flash player 过期问题
  17. 18周过后~(学期总结)
  18. 英语语法回顾5——状语和状语从句
  19. 流量分析——安恒科技(八月CTF)
  20. 深度剖析不同企业类型私域运营的方法

热门文章

  1. 20181123_任务(套件培训)
  2. Cluster - LB - haproxy
  3. 我为什么在这里写博客
  4. php中isset() , unnset(), empty()函数
  5. Swiftfox:极速的冲浪体验
  6. 【计算机网络复习 物理层】2.1.2 数据通信基础知识
  7. Leetcode--845. 数组中的最长山脉
  8. Leetcode--461. 汉明距离
  9. Java中文件的创建
  10. response.end后抛了异常_(七)异常处理