也不分M1/M2了,就从头到尾的梳理一下这学期的软工课吧。

第一节课,老师就稀里哗啦说了一下这学期要怎么搞,什么个人项目啦,结对项目啦,团队项目一二啦,还要组队啊什么的,然后风风火火的组队。

个人项目,词频统计小程序。很快写好了,因为要按照效率评分,开始了恶心的优化之旅。试了试搞多线程,没搞出来。换了下数据结构,效率提高不少。得了本书,还阔以。拿了37/50

结对项目,是个多台电梯调度,每个电梯属性都不一样。先看代码。看懂了助教的代码然后开始写。算法一点都不高大上,模拟了现实生活中人们人所多台电梯调度应该是什么样子的。拿了92/100

团队项目。和室友还有周围寝室的同学组了队。黄金点游戏第二轮次,选了个迭代开发项目,接手学长。

不得不插一句,大学上到现在,学长在我心中的形象一点点塌掉。刚上大一的时候觉得大二的学长好牛啊。上大二的时候觉得大三的学长在学院路肯定更牛了。上大三的时候发现原来不是酱紫的。2/8原则真是无处不在。其他例子不具了,得罪人。

老师告诉我们,你们的学长都整合好了,你接着做就行。嗯,整合好了,我们接着做。

第一周按计划先设计,其实就是看代码吧。心里挺想当PM,队友希望我写代码,那就写代码吧。但是事情似乎就不受我控制了...(虽然受我控制也未必就有好结果)

看了学长代码觉得挺简单了,但是有的代码原样复制了一遍是几个意思呀...增加代码量么...

既然老师说学长们都整合好了,接口我们就不动了吧,把一些信息提取的函数提高一下准确度,再加点新功能。嗯,任务量似乎不大。简单分了分工,分词方面我跟室友一天就搞完了。

不知不觉就到了第四周。联系了爬虫组和网页,发现了,唔,我们处理的是爬虫组的数据不错,可网页组用的是10级学长的数据库。根本没用我们的...感觉有点凌乱,学长是怎么整合的呀?老师是怎么验收的呀?这事儿有点儿不对吧!

然后就到了Alpha阶段验收。什么?团队互评?虽然我对系内团结程度不完全信任,但这个时候大家应该会心照不宣的吧。这个时候罗杰老师出杀招了:不打分给排名。然后,一场博弈论的实践活动就开始了...

验收拿了100分,第三名,比第一名和第二名分别少了100和90分,然后在个人项目和结对项目积累的分数优势就统统木有了...分了分团队贡献分,第一阶段就算完了。

第二阶段前一两周都在忙大作业了,这软工也真的不想管。

跟网页组要来了需求,分析了一下,不难。先抽了一个下午+晚上跟室友写了问答页面信息提取。等第一组数据库到位了,又继续写了写,测了测。我管了算法,室友管了数据库,实现了网页组的需求。

到这会儿这课差不多也就完了。

想起邹欣老师之前在一篇博客回复我,等我写了10000+行代码,对一些软件工程存在的问题就有体会了。我数了数自己的编译大作业,5500+行。

又想起本来是有很多高工的小伙伴和我们一起经历这场磨难的,后来发现人家果断退课了。之人常情啊!高工能退课就是好!要是我能退课,我也退啊!

又想起几天前另一门软工课的同学跟我说,你们的软工课多好啊,起码还写了代码,我们啥都没学到,就一水课。我说,啥啊,你是不知道...

课程的总结到这儿也差不多了,说点不能算题外话的题外话吧。

从我们这一届开始,学院的课程结构开始改革。我们小班,碰上了所有的改革。

从大二上高小鹏老师的计组实验,到大二下王雷老师的操作系统实验,吴际老师的面相对象课,再到大三上杨海燕老师的编译(这个应该不能说是改革,因为已经做了很多届了),再到罗杰老师的软工课。我们是一路当小白鼠当过来的。

现在其中的一只小白鼠要说说感受了!

1.计组课

高老师是用心在改革,各方面的准备都很充分。作业量是大,但是有可行性,一周一个Project,早点动手时间肯定够,考核也很客观公正。虽然也有一些自学的知识,但可操作。高老师是个负责任的老师,每次的实验文档要求都很清晰,我们不会浪费时间在一些无聊的事情上。而且,按照高老师的思路来讲,他的作业是可工程化的,是可以按照一定的方法论去完成的。

后来新闻上看到高老师凭着计组的课改得奖了,这当然要得奖了!

2.操作系统课

这个课是11级的实验班在大三上做了一下,然后我们12级的在大二下做了。虽然我得了90,但我觉得我是水出来的。王雷老师可能比较忙,实验几乎照搬的MIT。其他按下不表

3.面向对象课

按下不表,同学们都懂

4.编译课

中规中矩吧,前面时间放的太松,后面略紧。有什么问题发邮件杨老师都会回复。有一回邮件还是早上五点回的。听说杨老师父亲身体不好,我猜当时杨老师可能在医院看护吧,瞬间就路人转粉了。

5.软工课

感觉出发点和计组课是一样的,想要按照国际一流大学的计算机系(或者软件工程学院?)学生的标准来要求我们。邹欣老师想探索出一条软件工程课怎么上的道路。但可能只有出发点和计组类似吧,其他方面就没法比了。

看了《构建之法》的书,知道原来老师上课PPT的内容都来自这里;又没有很好地掌握上一届学长的团队项目到底什么情况,那老师究竟做了些啥?

当这样的软工课还放在有诸多更值得做的大作业的学期,结果也就...

也不知学弟学妹们能否看到这篇博客。如果你们上的是罗杰老师的软工课,建议如下:

1.牛到可以一个人干8个人或者24个人的活,并且心甘情愿一肩挑的,随便来。

2.学长项目尽量别选,尤其团队合作类的学长项目。

3.推荐自选项目,至少能完整感受一下流程。网上实际项目的代码多得是,很多模块可以拿来用,看多了自己可能就有想法了。

软件工程M1/M2总结的更多相关文章

  1. 软件工程M1/M2总结及阅读作业总结

    一.软件工程M1/M2总结 写下这篇总结的时候,我们的软件项目尚未完工.虽然尝试申请了延期答辩,但最终未能成功.这意味着,我们的项目能否正常发布已经处于了一个微妙的状态.可能可以,也可能不可以.只能尽 ...

  2. 个人阅读作业 --软件工程M1/M2总结

    软件工程M1/M2总结 写在前面的话: 这学期的软件工程伴着考期的展开逐渐落下帷幕,回顾这学期的软件工程,我感觉我的热情在一次又一次的失落中逐步消耗殆尽,每个人对于这门课的体验都会有所不同吧,可以确定 ...

  3. 【个人总结】软件工程M1/M2总结

    个人博客连接: http://www.cnblogs.com/lwq12061168/p/4094252.html http://www.cnblogs.com/lwq12061168/p/40284 ...

  4. 【个人阅读】软件工程M1/M2做一个总结

    1.以前博客链接 http://www.cnblogs.com/penglinjiang/p/4027850.html http://www.cnblogs.com/penglinjiang/p/40 ...

  5. 【个人阅读】软件工程M1/M2阶段总结

    这次作业是好久以前布置的,由于学期末课程设计任务比较重,我在完善M2阶段的代码的同时又忙于数据库的实现和编译器的实现,一度感觉忙得透不过气来....到这些都基本完成的时候,会看自己以前的阅读心得,觉得 ...

  6. 个人阅读作业——软件工程M1/M2的总结

    临近学期末,本学期的软件工程课也已经结束了,在此我对软件工程课中,我们团队M1和M2开发阶段中,我做的工作做一个总结 我是DEV,主要工作是等着上级给我分配任务,但是很多时候如果这个活我不干,其他人就 ...

  7. 【个人阅读作业】软件工程M1/M2总结

    链接:”看<快速软件开发>的五个问题“ http://www.cnblogs.com/leiyy/p/4027759.html 一.较为明白的问题 1. 在文章的第一个关于Square_T ...

  8. M1/M2项目阶段总结

    1.M1/M2总结 我们这学期完成了学霸项目. 在M1阶段,我们首先进行了分工,完成了一个系统的计划,然后是对学长代码的移植和优化.在优化代码的过程中,我们遇到了不少问题,比如一些代码的冗余以及指向性 ...

  9. T-SQL - 习题02_将数据表year|month|amount查询成year|m1|m2|m3|m4的样式

    时间:2017-09-11 整理:byzqy 题目:有个年度统计表,结构如下: 怎么样把这个表,查询成这样一个结果: 这是在面试过程中遇到的一个关于数据库的题,没有一点思路,不知它考查到的知识点是什么 ...

随机推荐

  1. if 嵌套if 的先后顺序的区别 (自测)

    # 验证 verify very good! # username = input("请输入用户名").capitalize()# password = input("请 ...

  2. Alpha冲刺! Day7 - 砍柴

    Alpha冲刺! Day7 - 砍柴 今日已完成 晨瑶:列了各模块目前的进度情况:确定了纯多媒体流星预览页的显示方式:给工具包函数列表新增了与服务器端的交互:玩华为软件云发现刚好可以试试它的测试,于是 ...

  3. 17秋 软件工程 Alpha展示博客

    成员简介 姓名 个人简介 博客地址 郑世强 郑世强,计算机三班,了解java web端和Android端编程,使用过Spring MVC和Spring Boot开发商业程序,Android端学习了rx ...

  4. ABP模块运行解析

    从官方创建一份ASP.NET CORE 2.0的项目,并加入源码调试,可以看出如下图的加载顺序 1.ABP是通过什么样的机制加载的 既然ABP中模块需要添加DLL到引用中,又要加入DependsOn在 ...

  5. 有关科学计算方面的python解决

    在科学计算方面,一般觉得matlab是一个超强的东西.此外还有R. 至于某种语言来说,一般都要讲究一些特别的算法,包含但不限于: 矩阵方面的计算 指数计算 对数计算 多项式运算 各类方程求解 总之.仅 ...

  6. zip 的 压缩与解压

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/xiananliu/article/details/23993481 zip格式是开源的相比rar格式 ...

  7. 20145236《网络对抗》Exp 6 信息搜集与漏洞扫描

    20145236<网络对抗>Exp 6 信息搜集与漏洞扫描 一.基础问题回答 哪些组织负责DNS,IP的管理? 互联网名称与数字地址分配机构,简称ICANN机构,决定了域名和IP地址的分配 ...

  8. 转载 .Net多线程编程—任务Task https://www.cnblogs.com/hdwgxz/p/6258014.html

    .Net多线程编程—任务Task   1 System.Threading.Tasks.Task简介 一个Task表示一个异步操作,Task的创建和执行是独立的. 只读属性: 返回值 名称 说明 ob ...

  9. go标准库的学习-io

    参考https://studygolang.com/pkgdoc 导入方式: import "io" o包提供了对I/O原语的基本接口.本包的基本任务是包装这些原语已有的实现(如o ...

  10. csvwrite

    https://ww2.mathworks.cn/help/matlab/ref/csvwrite.html