zoukankan      html  css  js  c++  java
  • 现代软件工程 作业 3 团队作业

    这是现代软件工程课的作业列表, 老师可以根据情况选用, 建议要保证每周都有作业。

    团队作业 Team Homework: 适合团队完成的作业

    这些作业都要团队的成员互相配合才能完成,  团队可以选出一位同学完成作业的具体写作和发博客部分, 大家可以轮流完成。 一个团队通常由 5-7名队员组成, 因此即使每周都有作业, 也只是团队中一个人要做文字工作, 因此负担不算重。

    Team Homework #0: Collect student feedback about SE courses

    列出小组成员的简介, 照片等。

    收集以前上过普通 软件工程 课的同学的反馈。 主要有以下内容:

    上课的课时, 年级。

    课程的教材, 讲课方式

    课程的实习项目情况

    学生每人平均写多少代码

    学生对课程的反馈

    example:

    《现代软件工程》作业1 学长采访

    《现代软件工程》作业2- 寻访信息学院同类课程

    Team Homework #1: interview past projects 

    For each team, pick a past Software Engineer Course project (either done by USTC team, or by Tsinghua students), Interview students of that team, read their blogs, and report on your learning, then publish to your team blog.

    § Did they reach their goals in project? how many users do they have?

    § lessons learned from them,

    § and what would you do differently if you were in that team, or if you could re-do the same project from scatch.

    § You can interview by face to face talk, email, phone, or interview their users.

    Please post your homework to your homepage.

    Deadline: 2nd week

    example:

     “魔方教研室”尸检报告

    http://www.cnblogs.com/SE-team-2011/archive/2011/02/28/1966921.html

     

    Team homework #2: innovation in new application domains.

    Please read books about innovation, and blogs about innovation, e.g. I have several:

    http://www.cnblogs.com/xinz/archive/2011/07/09/2102052.html

    http://www.cnblogs.com/xinz/archive/2011/07/10/2102310.html

    http://www.cnblogs.com/xinz/archive/2011/07/11/2102667.html

    I had an old assignment for PKU students: http://www.cnblogs.com/xinz/archive/2011/06/26/2090631.html.

    Now I’d like to see you do the same thing with 微博, or 团购. (就是把作业中所有提到 博客 的地方都换成 微博, or 团购), since we have 4 teams, I’d like to see team 1 and 2 pick 微博, team 3 and 4 pick 团购.

    Deadline: 8th week 

    you need to apply accounts, and use these accounts for a period of time in order to have meaningful investigation. So I suggest you start early.

    example: 团队作业——微博网站小调查 

     

    Team homework #3: how does your team evaluate member’s performance?

    Please have a team meeting and decide how your team plan to evaluate each member’s performance.

    see this blog for details.

    Deadline: 3rd week

     

    Team homework #4: your proposal for your team project

    following the NABC format

    现代软件工程系列 团队项目 如何提出靠谱的项目建议

    deadline: 4th week

    Team homework #5: spec of you most important feature

    PM of each team need to write a blog, sharing the spec of your most important/challenging feature.

    what’s is your project NABC?

    who is your typical user?

    what is the scenario?

    deadline: 10th week

     

    Team homework #6: Test Plan and Test Matrix

    Write a blog to describe in detail how you’re going to test your software based on scenario and persona

    1. your test plan

    2. the personas (典型人物) of your software

    3. How do you expect different personas (some teams have 3 personas) to use your software? What’s their need and their goals, how your features work together to solve their needs?

    4.Your test matrix (测试矩阵)

    On what platform, what language, what type of machines, what type of browser, etc. to test your software?

    5.What is “exit criteria” (good enough) for your software for beta release?

    Hint: focus on the first 5-15 minutes.

    Deadline: 11th week 

     

    Team homework #7: Alpha/Beta Stage Scrum report  (repeat this for Beta Stage)

    report the progress of 10 day scrum, each daily report should contain:

    a) what was achieved by each person yesterday (list specific work item #)

    b) what to do today (list specific work item #)

    c) what is blocking each team member? 

    d) show the “burn down” chart of the team progress.

    post this report as a blog,  for 10 consecutive days,

    Team homework #8: Alpha Release

    write a blog post to show your Alpha release

    deadline: Alpha release week (recommended: 7th week)

     

    Team homework #9: Alpha Release Postmortem

    write a blog to show what the team has learned in the alpha stage.  You can use this template to help the discussion:

    现代软件工程讲义 4 方法论 - 事后诸葛亮会议

     

    deadline: 1 week after Alpha Release

     

    Team homework #10: Bug Bash

    Each team has released beta version Code Complete.  students can test each others’s release.

    to do: 

    a. Team 1 will test team 2’s product

    b. Team 2 will test team 3’s

    c. Team 3 … 4

    d. Team 4 will test team 1’s product

     

    Each team should make their product/site ready for testing before the 14th week 

    Score:  the team logging most bugs will win.

    Please read <移山之道>, my blog,  or other doc for the guidelines of open a good quality bug.

    For bug bash,  a bug must meet the following criteria:

    1) A subject started with “Bug Bash: …”   the subject should summarize  the problem.

    2) In the body of the bug, report your “steps of reproducing the bug”,  a short form is “repro:”

    3) then report what do you expect.   Start with “expect:”

    4) Then report what happened, start with “result: “

    If your bug doesn’t meet such criteria, it will not be counted as a “bug bash” bug.

    due date: right after beta Code Complete (12 - 14th week).

     

    Team homework #11: Zero Bug report

    Please triage all the bugs, all team members look at each bug and decide one of the following:

    Must fix (P1)

    Important to fix (P2)

    Nice to have (P3)

    Won’t fix (for many reasons)

    You will use the next several days to fix ALL bugs, and get to 0, then you can have a Zero Bug Build, your product in this build is called Release Candidate 1 (RC1), you then test it to make sure it’s great, if not, you fix more bugs, and have a RC2, RC3, etc.

    When you’re sure you got a good enough product, you will turn the RC into a real release.

     

    write a simple blog to show your team has reached Zero Bug.  please attach a screen shot of your team project’s bug list (how many P1/2/3 bugs),  how many bugs you don’t plan to fix, and why.

    Team homework #12: Beta Release

    write a blog to show the world that you have released beta product. 

    deadline: 15th week

    Team homework #13: Alpha Release Postmortem

    write a blog to show what the team has learned in the alpha stage. You can use this template to help the discussion:

    现代软件工程讲义 4 方法论 - 事后诸葛亮会议

    Besides the standard template for Postmortem, each team should also report the following:

    1. 每个成员在beta 阶段的实践和alpha 阶段有何改进?

    2. 列出每个人具体的改进。

    3. 团队在beta 阶段吸取了那些alpha 阶段的经验教训?

    4. 3. 12 条敏捷开发的原则中, 团队做得最好和最不好的各列举 2 点。

    http://www.cnblogs.com/xinz/archive/2010/12/11/1902849.html

    http://www.cnblogs.com/xinz/archive/2010/12/10/1902725.html

    http://martinfowler.com/articles/newMethodology.html

    5. 对照 The Cathedral and the Bazaar (大教堂和集市), 软件团队的模式 (link) 你的团队开发模式是哪一种, 优势/劣势在哪里?

    http://en.wikipedia.org/wiki/The_Cathedral_and_the_Bazaar

    http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/ar01s13.html

    deadline: 1 week after Beta Release (16th week)

    Team homework #14: Final review (16th week)

    a. TA will book a room for students + reviwers.

    b. each team need to have app, video recording, spec, etc. ready.  (please post these to your blog as well)

    c. each team talk to users of your product, and record their feedback (text, audio, video).  summarize that as a blog.

    c. each team should have real user’s feedback to show how good your product is.

  • 相关阅读:
    React中autoComplete="off" 失效
    git配置文件—— .editorconfig
    git配置文件—— .gitattributes
    配置文件—— .travis.yml
    python入门:常用模块—sys模块
    python入门:常用模块—random模块
    python入门:常用模块—time & datetime模块
    python入门:常用模块—模块,包介绍
    Python入门:生成器&迭代器
    python入门:函数进阶(名称空间,闭包,装饰器)
  • 原文地址:https://www.cnblogs.com/xinz/p/2265050.html
Copyright © 2011-2022 走看看