正想着团队项目中数据该如何解析,就收到了来自软工课程组的一件小黄衫,真是意外之喜。详问其来源,竟是因结对项目做的“较好”而来,顿感受之有愧。

结对项目是两人对文件系统的一个小模拟,尽管也有多人合作、需求分析、架构设计及优化、代码实现和测试、进度管理等多个组成部分,与传统的 OO 题目不甚相同,但与真实的团队软工还是相差较远的。这种题目的需求是相对明确、能够进行近乎严格的正确性测试的,而在团队项目中,我深刻地体会到真实项目的需求分析远远难于此。

团队项目不是一个问题的需求分析,而是多个问题:比如我们团队近取 Key ,在后端需要单词数据以及单词间关系的数据,这些数据有的可以直接从 mdx 等字典文件解析而得,有的需要从网络上爬取、搜集各种类型格式的文件而得,但最终都需要以统一的格式存入数据库中,其中每一部分文件的解析都需要进行需求分析和设计,以及错误设计:因为很多数据都是经过了人手,必然会存在一些错误(比如 submit 写成 sumit 等),如何尽量少地避免因为数据的错误而导致推荐的不准确、如何将获取数据中用户所感兴趣的数据提取出来,每一个任务都需要一个较为完整的流程,甚至任务之间可能是并行的。因此,为了防止处理失误,在开发时我不得不在 issue 中明确每一步的处理、完成状态(如这一个 issue),并撰写详细的需求分析和设计文档以备查看。奇怪的是,并不是课程组要求我们做 issue、要求我们写文档,而是这些问题都是我们开发过程中理所当然要做的,我们需要做,那么自然而然的就会去做。部分方法的单元测试也是,认为可能出错,那么就去做,而有一些逻辑过于显然的方法,我们也暂且没有做测试,不知这样处理是否得当,最后的结果就是单元测试的覆盖率较低。

个人博客、结对和团队开发的过程都是非常紧张而愉快,同时又收获颇丰的,非常感谢课程组能够为我们提供这么一个实践软工的机会;但同时在团队开发初期,课程组似乎下偏了功夫,导致我们团队需求分析很明确的情况下还需要受到较大的来自奇怪主观判断的压力,因此收到黄衫后也一直没有时间写这篇感言;不过总体的感觉是很棒的。希望能够在 Beta 阶段更加丰富自己的软工实践经历,更加深刻地认识和实践软工。

btw,搜索黄衫全是倚天屠龙记里的黄衫女子,不知道课程组是否有此隐喻,哈哈。黄衫上的 Learning By Doing 蛮赞的。

黄衫女子,黄衫好.png的更多相关文章

  1. 技术的正宗与野路子 c#, AOP动态代理实现动态权限控制(一) 探索基于.NET下实现一句话木马之asmx篇 asp.net core 系列 9 环境(Development、Staging 、Production)

    黄衫女子的武功似乎与周芷若乃是一路,飘忽灵动,变幻无方,但举手抬足之间却是正而不邪,如说周芷若形似鬼魅,那黄衫女子便是态拟神仙. 这段描写出自<倚天屠龙记>第三十八回. “九阴神抓”本是& ...

  2. Build to win!——获得小黄衫的感想

    UPDATE: 应栋哥要求,上传了无遮挡的正面照(我的内心其实是拒绝的!(ㄒoㄒ)) 一.前言&背景 从大一上C++课程开始,栋哥就开始安利他大三的软工实践课. 时间过得飞快,大学转眼就过去一 ...

  3. Build to win--来自小黄衫

    写在前面 首先非常荣幸.非常侥幸能以微弱的优势得到这次小黄衫,感谢各位老师同学的帮助,也谢谢来自<构建之法>团队的小黄衫赞助! 这次能够获得小黄衫,就像汪老师上课说的那样,其实,是一个积累 ...

  4. 小黄衫 Get

    小黄衫 Get .   十分荣幸在前四次作业中以微弱的3分之差拿到了第一,获得了本次的小黄衫. 先发点牢骚.. 讲道理,原本以为的研究生生涯应该就是埋在论文堆里度过的时候顺便上上课.当初选课的时候,学 ...

  5. Beta冲刺吐槽&&获小黄衫心得

    引 个人感觉本次Beta冲刺最大的槽点还是--反向延长 "冲刺周期" 做的不一样很容易,做的更好才是非常困难的 遗留的问题 经历了Alpha冲刺,组内大多数同学也大都对实践感到些许 ...

  6. M码小黄衫买家秀=w=

    M码小黄衫买家秀=w= 17°的天气穿不了短袖polo..就只能这样强行上图啦~ 因为我一直耿耿于大一面向对象课上拿到的那件XL码小黄衫,长到能穿到膝盖,拍小黄衫全家福时候只能很凄凉的借了件小号的穿, ...

  7. Beta 反(tu)思(cao) && 获小黄衫感言

    写在前面 终于要结束了...我的心情就像走在沙漠中的人看到了一片绿洲一样,身体很疲惫,心情是自由自在~ 这是一篇总结反思的博客 (为了附加分),顺便把早该写的获小黄衫感言一起发了. Beta 反思 做 ...

  8. 18计科学期总成绩明细 && 小黄衫团队预选

    1.个人所有作业+团队作业总得分排名 2.千帆竞发图 3.各团队每次作业得分汇总 根据团队成绩排名,众志陈成队得分最高,预选为小黄衫团队. 对团队成绩有异议的团队,请在成绩预选发布后的两天内私信助教解 ...

  9. C语言—期末小黄衫获奖感言

    小黄衫获奖感言 一,感谢环节 非常感谢邹欣,周筠老师给提供的小黄衫,我非常荣幸的能够获得这个奖项,我感到无比自豪.感谢两位老师对教学事业的大力支持,对我们学生的亲切关怀.同时感谢我的C语言老师彭琛(琛 ...

随机推荐

  1. 10 分钟轻松学会 Jackson 反序列化自动适配子类

    作者:丁仪 来源:https://chengxuzhixin.com/blog/post/Jackson-fan-xu-lie-hua-zi-dong-shi-pei-zi-lei.html json ...

  2. LuckyStar hctf2018

    LuckyStar hctf2018 程序注册有TLS回调函数 char __stdcall TlsCallback_0(int a1, int a2, int a3) { char result; ...

  3. visualvm工具远程对linux服务器上的JVM虚拟机进行监控与调优

    文/朱季谦 最近在做了一些JVM监控与调优的事情,算是第一次实践,还比较陌生,故而先把这一次经验简单记下笔记,这样,对后面学习调优方面时,不至于又想不起来了.本文档主要总结在window本地环境远程对 ...

  4. 小白的第一次sql实战

    去年发的有一篇sql注入忘记粘贴过来了,今天想起了就fuzz过来一下 有id尝试sql注入 找这种sql注入的站用sql检索就行了,但是最好挂代理用谷歌搜索,百度的话搜sql注入的很多被别人打过了,导 ...

  5. QT项目-Chart Themes Example学习(一)

    1.main.cpp #include "themewidget.h" #include <QtWidgets/QApplication> #include <Q ...

  6. Vue组件(35)动态组件 component 的 is 到底可以是啥?

    component 动态组件 Vue官网上提供了一个动态组件 <component :is="currentTabComponent"> ,那么这里的 is 到底是什么 ...

  7. PAT (Basic Level) Practice (中文)1054 求平均值 (20 分) 凌宸1642

    PAT (Basic Level) Practice (中文)1054 求平均值 (20 分) 题目描述 本题的基本要求非常简单:给定 N 个实数,计算它们的平均值.但复杂的是有些输入数据可能是非法的 ...

  8. 第1课:Linux操作系统基础【DevOps基础培训】

    第1课:Linux操作系统基础 --DevOps基础培训 1. 云主机.公网IP 1.1 公网ip和私网ip 只有公网ip是能够连接互联网的,私网IP 一般只用作局域网 我们能够上网靠的是isp组织分 ...

  9. Kubernetes中利用Kubectl set 让Deployment更新镜像

    问题描述 我的deployment有单个pod,我的自定义docker镜像如下: containers: - name: mycontainer image: myimage:latest 在开发过程 ...

  10. maven中心仓库OSSRH使用简介

    目录 简介 为什么使用中心仓库 发布到中心仓库前的准备工作 使用OSSRH 使用Sonatype创建ticket 中央仓库中的组件要求 提供Javadoc 和源代码 使用GPG/PGP给文件签名 Me ...