//上一篇:提问与回复


[备注]:请优先阅读 Handshake点评/评分 三部分。

0x00 Handshake

0x01 点评


A. 汉堡包模型

  • http://www.cnblogs.com/xinz/archive/2011/08/22/2148776.html
  • 基本过程:
    • 基于内容/知识点/博客/代码事实的肯定,鼓励。但不放水,坚决打击南郭先生。
    • 在肯定鼓励之后,使用祈使句提出改进要求:“请xxx”
    • 按需追加回复。
    • 交叉索引知识点链接,这就是为什么需要通读/熟悉本文档推荐的链接。
    • 好的作业,可以给博客点赞, 好的回复点支持。
    • 根据数据说话,坚持衡量/分析原因/建议

B. 点评内容上的建议

C. 教师/助教的点评历史记录:

D. 点评的目标有:

  • 消灭零点评,需要有节奏的安排点评的时间段,多利用碎片时间+批处理。
  • 可以观察班级博客上的学生作业提交频率的规律来安排自己的时间
  • 可以利用班级博客的【打开零回复博文】按钮一次点评页面那的零点评博客
  • 交流,思辨和交流也是大学生学习的重要途径。
  • 交叉索引。
    • 在点评学生博客的时候,使用知识点相关的链接。
    • 如果某个学生的博客和其他学校学生的博客有类似的问题,可以互相索引。
    • 抄袭别人的博客,直接post出原文链接。
  • 学生们往往会get不到此处应该是和什么关键知识点相关,此时给出链接的目的有:
    • 给出再次阅读的时机,
    • 刚好遇到这个问题,此时再读有明确的目的
    • 缺少某些必要的有条理的过程,此时,给出相关模版/列表,建议其改进。
    • 如果有抄袭,严格执行扣分机制,认识到不严格执行对于认真学习课程和完成项目同学来说是不公平的。这点要一开始就和授课教师讨论并明确。

E. 检查点:

  • 本节4个点你能做到么?
  • 你打算这样做么?

0x02 评分


A. 规则:

B. 工具:

C. 代码:

  • 如果是命令行程序,可以编写针对命令行程序的自动测试程序,并提供2进制测试程序给学生,要求学生的程序能通过自动测试程序的调用,自动测试程序还能给出给出统计得分,参考:http://www.cnblogs.com/vertextao/p/6896953.html
  • 如果是App,可以要求最终(例如Alpha结束)发布程序到应用商店。
  • 助教可以写批处理 自动 git clone下学生的程序代码,抽样编译运行,并做覆盖性的code review,例如: http://www.cnblogs.com/math/p/dbsd-2016-git.html

D. 协作

  • 一个班级被拆分成多个子班级,评分规则需要统一,可选的方法:

    • 在教师题目设计的同时,在题目里就设计好题目的所有checkpoint得分点,由题目设计直接确定,多个助教执行。
    • 在教师题目设计review确定后,由一个助教针对所有的checkpoint提出评分规则初稿,其他人review,再确定,可轮流做这个环节(值日)
  • 在作业项目的截止日期过后2天内及时达成目标
    • 发布作业评分/小结,其中包含分析优秀博客,重点问题,提供有用资料等
    • 完成大部分博客点评(最好是消灭零点评)

E. 检查点:

  • 本节4个点你能做到么?
  • 你打算这样做么?

0x03 知识储备


A. 通读构建之法,对轮廓了如指掌,以便在题目设计/点评中有的放矢:

  1. 怎样算学会软件工程:

    • 有效掌握软件工程知识
    • 使用软件工程知识有章法的过程开发
    • 发布有人用的软件
  2. 软件工程的完整环节
    • 每个环节的过程规律,例如构建之法里的(学生的作业过程中有类似规律):

      • 萌芽
      • 磨合
      • 创新
      • ...
    • 每个环节的关键方法,工具
    • 每个环节有哪些常见的模型
    • 每个环节有哪些不同角色,作用分别是什么,各自需要怎样的专业技能?
  3. 理解师生关系模型:

B. 通读/熟悉两个常用索引,以便在点评/讨论中快速链接:

C. 通读过去的教师/助教/学生的博客,学习所有的经验:

D. 小节训练:

  • 通读上述所有博客,并做一个分类对比,评价各自优缺点。
  • 到edu.cnblogs.com上阅读10篇线上学生博客,并
  • 对内容给予针对性知识点的点评
  • 使用上述博客中的链接做交叉索引式点评

E. 检查点:

  • 本节4个点你能做到么?
  • 你打算这样做么?

0x04 明确课程主线条


A. 阶梯项目类型,思考下每个环节的关键作用是什么?

B. 不同课时训练目标的核心点不同,思考下为什么需要安排这些环节?

  • 16周类型,参考构建之法的“给教师和助教的讲义”里的16周课时安排
  • 9周/12周类型,参考邹欣老师的排列组合:
    • 快速阅读全书并提问, 描述自己的课程目标(一周),
    • 随后是分析现有项目,决定团队项目(张老师的班级做的优秀项目 一周),
    • 结对编程(一周,熟悉软件开发的工具)
    • 然后做团队项目alpha (重点强调使用原型设计工具和项目计划,WBS,两周,保证有 7 天的冲刺)
    • alpha总结(一周,可以请校外专家来交流)
    • 团队项目/beta (两周,保证 7 天冲 刺)
    • beta 总结 + 个人总结(一周,可以请校外专家来交流, 每个同学回答自己课程开始时提的问题,再继续提问)。
    • 个人项目(可选,适合那些想得高分的同学)

C. 课时过程和工具的结合,怎样在课程里让学生们有效掌握工具的使用?

D. 小节训练:

  • 结合自己所在班级的课程,提前在教室群里与教师讨论并确定课程的计划轮廓
  • 提交协作式文档,将计划内容确定下来,并针对每次环节明确核心要达成的目标,特别是时间点的确定。

E. 检查点:

  • 本节4个点你能做到么?
  • 你打算这样做么?

0x05 项目设计


A. 协作工具

  • shimo.im 建立一个班级题目设计专用的共享石墨文件夹
  • 邀请教师/助教进入共享文件夹协作编辑
  • 通过微信群组织过程

B. 教师设计项目初稿

  • 整个学期的整体进度(环节)计划,具体到周
  • 每个环节快结束到下一个环节开始之前几天,设计项目初稿
  • 分享到教学微信群,协作编辑,改进

C. 复审设计的题目:

D. 发布

  • 教师在教学博客上发布定稿的项目作业
  • 助教跟踪并发布到学生班级群

E. 检查点:

  • 本节4个点你能做到么?
  • 你打算这样做么?

0x06 重视基础过程中各环节的质量


A. 排版,请一开始就让学生使用markdown:

B. 时间/风险估计

  • 预估/矫正,例如PSP的有效使用
  • 耗时估计的有效使用/训练
  • 学生团队的PM是否合格?

C. 版本管理

  • 请一开始就设计实验课,在课堂上step by step要求学生通过git的命令行操作测试
  • 这需要教师/助教自己对git的使用熟悉。
  • 代码仓库可以使用:
    • coding.net
    • github.com

D. git 工具:

E. 燃尽图:

F. 敏捷冲刺过程

G. WBS怎样才有效?:

H. 检查点:

  • 你身边的工作环境里,大家重视这些过程么?为什么?
  • 你打算怎样做?

0x07 问卷调查


A. 单次作业可以使用问卷调查某个单项数据

  • 例如:到目前为止写了多少行代码,计划在本学期写多少行代码。
  • 匿名问卷可作为适当的辅助工具。

B. 期中期末对班级做匿名问卷调查

  • 对问卷调查总统计分析,小结
  • 将统计结果发送给任课教师,累积教学数据,以便于一门课程的学期间迭代/改进
  • 参考(具体的问卷建议使用以前积累的模版):

C. 检查点:

  • 你平常使用问卷调查分析数据么?
  • 你注意分析数据的变化么?

软工+C(2017第9期) 助教指南的更多相关文章

  1. 软工+C(2017第8期) 提问与回复

    // 上一篇:野生程序员 // 下一篇:助教指南 在线上博客教学里引入了第三方助教,助教在每次作业期间尽力完成"消灭零点评"的目标.然而紧接而来的问题是:学生对博客作业点评的回复率 ...

  2. 软工+C(2017第5期) 工具和结构化

    // 上一篇:Alpha/Beta换人 // 下一篇:最近发展区/脚手架 工具/轮子 软件工程/计算机相关专业的一个特点是会使用到众多的工具,工具的使用是从程序猿进化到程序员的一个关键要素.软件工程师 ...

  3. 软工+C(2017第1期) 题目设计、点评和评分

    // 下一篇:分数和checklist 如何设计题目 教学中的一个问题是老师出题太简单了,题目设计一开始上来就不紧凑,我认为一个好的课程应该上来就给你紧凑感,而不是先上来"轻松2-3周&qu ...

  4. 软工+C(2017第6期) 最近发展区/脚手架

    // 上一篇:工具和结构化 // 下一篇:野生程序员 教育心理学里面有提到"最近发展区"这个概念,这个概念是前苏联发展心理学家维果茨基(Vygotsky)提出的,英文名词是Zone ...

  5. 软工+C(2017第2期) 分数和checklist

    // 上一篇:题目设计.点评和评分 // 下一篇:超链接 教学里,建立清晰明确的评分规则并且一开始就公布,对于教师.助教.学生都是重要的. 公布时机 在课程开始的时候,就需要确定并公布评分机制,随着课 ...

  6. 软工+C(2017第3期) 超链接

    // 上一篇:分数和checklist // 下一篇:Alpha/Beta换人 注:平常看文章,总有能和构建之法,软件工程相关的链接,增量记录,也可以通过在其他人博客的交流中使用相关的超链接,在使用中 ...

  7. 软工+C(2017第4期) Alpha/Beta换人

    // 上一篇:超链接 // 下一篇:工具和结构化 注:在一次软件工程讨论课程进度设计的过程中,出现了这个关于 Alpha/Beta换人机制的讨论,这个机制在不同学校有不同的实施,本篇积累各方观点,持续 ...

  8. 软工+C(2017第7期) 野生程序员

    // 上一篇:最近发展区/脚手架 // 下一篇:提问和回复 怎样做足够好的软件?我们就差一个程序员! 没有什么软件工程的理论的时候,程序员们凭借自己对编程的热爱,凭借着:"这是一个可以自动化 ...

  9. [敏捷软工团队博客]Beta阶段使用指南

    软件工程教学实践平台使用指南 项目地址:http://20.185.223.195:8000/ 项目团队:the agiles 进入界面如图: 目录 软件工程教学实践平台使用指南 学生端 登录 iss ...

随机推荐

  1. 使用 Node.js 搭建一个 API 网关

    原文地址:Building an API Gateway using Node.js 外部客户端访问微服务架构中的服务时,服务端会对认证和传输有一些常见的要求.API 网关提供共享层来处理服务协议之间 ...

  2. Linux - 简明Shell编程02 - 变量(Variable)

    脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash v1=test-variabl ...

  3. 阅读:RAID5和RAID10,哪种RAID更适合你

    阅读:RAID5和RAID10,哪种RAID更适合你-------------------------------------------2013/10/06 存储是目前IT产业发展的一大热点,而RA ...

  4. 小白对Salesforce的简单认识(01)

    1. Salesforce为我们提供的服务? Salesforce基于云平台为我们提供SAAS和 PAAS服务. SAAS(Salesforce.com is Software as a Servic ...

  5. Android App 压力测试 monkeyrunner

    Android App 压力测试 第一部分 背景 1. 为什么要开展压力测试? 2. 什么时候开展压力测试?第二部分 理论 1. 手工测试场景 2. 自动测试创建 3. Monkey工具 4. ADB ...

  6. JQuery中的回调对象

    JQuery中的回调对象 回调对象(Callbacks object)模块是JQuery中的一个很基础的模块,很多其他的模块(比如Deferred.Ajax等)都依赖于Callbacks模块的实现.本 ...

  7. CentOS 7 服务器配置--安装Java和Tomcat

    一 安装 JAVA (jdk_8u121_linux_x64) #查看是否安装了OpenJDK #检查是否安装了JAVA java -version rpm -qa | grep java #卸载已安 ...

  8. Mac配置eclipse+pydev+Python遇到的问题

    最近在研究Python,作为一名新手在配置环境的时候遇到各种问题:高手可略过~ 1.eclipse官网上下载最新的OS版本,并成功安装eclipse 2.安装JDK,eclipse这些都是要安装JDK ...

  9. 腾讯织云:DevOps 流水线应用平台践行之路

    欢迎大家前往腾讯云技术社区,获取更多腾讯海量技术实践干货哦~ 作者:梁定安,腾讯织云负责人,目前就职于腾讯社交网络运营部,任运维技术总监,开放运维联盟委员,腾讯云布道师,腾讯课堂运维讲师,EXIN D ...

  10. javascript DOM 笔记

    以下内容来自<javasript DOM 编程艺术>第二版 dom中三种重要的节点:元素节点.属性节点.文本节点. 几种节点的重要属性:nodeValue,nodeType(为数字1.2. ...