我对软工有话说


经历了一学期的软件工程课程实践,先给个自己在这门课中学到的东西打个分:

  • 编码能力:★★★
  • 代码质量:★★★★
  • 团队管理:★★★★★
  • 风险控制:★★★★
  • 解决问题的能力:★★★★★

下面也不写总结了,想写的话太多,都融入了团队总结里,但不会对这门课有太多帮助。下面就我而言谈谈感受比较深的几点和建议,希望可以通过自己的努力把这门课改得更好。

1、个人项目的题目设计

个人项目的设计上,建议从一些难解问题里面进行挑选,主要目的是开扩思路与解决问题的能力的培养上,不要是一个简简单单的程序题。我觉得今年的个人项目其实就挺不错的。

这方面最近还在想...

2、团队项目

2.1 新的团队组队模式

我认为,对于一个团队,必不可失的核心人物是两个:项目经理与架构师。如果说项目经理是在过程中探索需求与确立开发方向、进度安排、开会研讨的角色,那么技术顾问在整个团队起步时就应当有团队项目的技术架构设想——包括使用什么技术,学习什么语言,最好可以粗略估算一个功能的实现需要的时长,还能给出一定的引导教程。技术栈的确定有关学习成本,会间接影响项目的进展程度,所以我以为,技术顾问最好是之前有过相关开发经验或者有过丰富的项目实践经验的同学,这样可以大大减少团队因缺失经验而出现停滞的概率。

按照今年我了解到的团队项目来看,我发现有技术顾问或者叫技术骨干的团队,最后都做出了相对较好的产品,没有出现短期或长期停工的不可控情况。

但结合今年的团队情况来看,矛盾点出现在技术骨干在各个团队中比例不一 上。项目经理既有全能的技术,又能管理与协调团队的情况很少,所以一支队伍至少需要一个项目经理与一个技术骨干。为了协调各个队中能够尽可能达到这一点,我认为应当对纯自由组队的制度加以部分限制。至少不应让很多强力选手扎堆聚集在一个项目中,强者扎堆的团队可能做出非常惊艳的产品。愚以为,软工课的初衷是让每个同学——无差别对待地——都完整体验一遍类实际生产环境中的软件开发流程,从而对各个环节的知识有一个结合实践的新认知。强者的聚集是对其他团队资源的剥夺,违背了软工课的初衷——让每个同学都在实践中出真知。一个团队项目如果缺乏带给大家信心的技术骨干,又没有严格监督控制进度的项目经理,到最后大家水一水完成,演示也不认真准备,那么开发与不开发其实没有什么区别。

我有几个想法,但是不太成熟,不知道是否可以对上述情况有所改变:

从个人项目初步评价一个人的能力

从个人项目和结对项目中的个人博客其实可以看出每个同学对一个问题思考的深度、广度与对待软工实践的积极性。个人博客写得认真负责有水平的人,相信也会当好一个项目经理(从今年的情况来看是这样的)。

提前放出项目计划与要求,确定项目经理

将在个人项目中个人博客表现较为突出的8位同学作为种子选手,这8名同学将作为第一轮迭代项目的项目经理。同时,为了给予其他同学机会,保留4个项目经理的位置留给剩下的同学,出4名非种子选手作为项目经理。这12位同学通过黄金点游戏进行优先级排序,在课上选择自选或者给定的项目。

项目策划书与计划安排

这12位项目经理应当在个人项目结束一周后写一个小小的项目策划书,项目策划书不要求篇幅很长(大约500~1000字左右即可),内容包括但不限于:

  • 面向的用户群体
  • web/APP/其他形式
  • 拟定使用的语言/工具/开源项目
  • 项目期待的角色构成与需求的相关领域知识

项目策划展示

按照个人的想法,希望可以设计一个类似于现场招募的环节来招募到志同道合的队友。在项目策划结束后,老师将每个小组的项目策划链接放在一个博客中,然后要求其余同学对项目进行简单了解,并写出自己最想去的三个项目组以及自己适应该项目所会的基础技能或者以前的开发经验,写上自己想应聘的身份:UI/Test/Dev/Product等(三张纸,每张纸上写上自己的权重比,三个项目的权重比和应当为100)。在第一节课上课期间,助教按照项目组将意向表区分开,第一节课结束后,将每个项目组的意向表分发给各个项目经理。

现场招募

我个人所设想如下:每个项目经理通过自己手里的成员资料意向表自定一个招募队员的优先级,然后进行现场招募。招募的环节类似于下面的场景:

  • 招募分几轮进行,第1轮,先按照黄金点游戏排名的次序,首先1号项目经理进行邀请。
  • 每个项目经理1轮可以挑选1名成员,当1轮结束后,按照和上次挑选的次序相反的顺序。比如第2轮,首先应该是12号项目经理进行邀请。
  • 某个队员同意加入某个项目组的话,则成为该项目组的一员,并且不能再被其他项目经理邀请。
  • 如果被挑选到的队员还未有组,并且在邀请项目组的意向表中,且给出的倾向权重大于30,则不得以任何理由拒绝项目经理的邀请;如果被邀请的队员不在该项目组的意向表中,则可以拒绝该项目经理的邀请,且该项目经理挑选其他成员的机会顺延到本轮最后一个。
  • 一个团队最低人数为4人,最高人数为6人。
  • 如果一个项目团队最终招募到的人数达不到最低要求,将拆分合并到其他组中。

2.2 团队项目第一周

个人觉得很多团队团队项目的第一周有一点荒废,我觉得只有项目经理在写需求分析等,会让整个团队的学习成本转移到scrum meeting开始后,这样是不好的。与其这样,不如在第一周在项目经理写其他文档的同时,让其他同学也做点东西。

更合理的项目起步

为了不荒废其他队员的时间,我觉得可以每个队员在第一周起始时接受项目经理关于学习语言/框架/工具等方面的安排,个人参考建议如下:

  • 前端通过modao/mockplus/sketch等进行界面原型的设计,并上传到Git/TFS上
  • 架构师选定某个框架进行学习,并与项目经理一起设计API文档,并上传到Git/TFS上
  • 开发/测试人员通过学习项目经理给定的任务,将自己做过的demo和实际体验的心得写成一篇个人博客。

以上是我的一些初步想法,不成熟的地方还请多多包涵~
之后如果有更好更新的想法会及时更新的!

转载于:https://www.cnblogs.com/SivilTaram/p/advice_for_software.html

[建议]我对软工有话说(上)相关推荐

  1. 软工+C(9): 助教指南,持续更新...

    上一篇:提问与回复 下一篇:从命令行开始逐步培养编程能力(Java) 目录: ** 0x00 Handshake ** 0x01 点评 ** 0x02 评分 ** 0x03 知识储备 ** 0x04 ...

  2. 助教总结 -【福大软工实践-2017-2018-K班】

    助教总结 -[福大软工实践-2017-2018-K班] 非常抱歉这么晚才来写总结! 助教工作 助教共发表博客39篇. 助教共点评约500条. 起步 对于常规课程的起步,通常都是在第一次课堂上由老师对课 ...

  3. 一名软工准毕业生考研失败后的情况以及建议

    1.个人情况 1.1 基本情况 我是一名本科双非的一名大四软件工程专业的学生,大三下学期开始准备考研,备考一年期间算是完全脱离代码,专心备考.考研结束后,经自己估分后感觉上岸的希望已经不大了(我专业课 ...

  4. 软工《英雄达拉崩吧》项目最后一篇博客

    作为主要测试人员,这几天共计5-6个小时的测试给我最大的感受就是:不测不知道一测吓一跳啊,测试真的是软件工程中很重要的一部分啊,因为测试完就是发行版本了,就要交给用户的. 在测试过程中很多细节性的错误 ...

  5. 软工文档”注意注意“事项

    经过36天的努力,我的软工视频还有软工文档终于完成了,接下来总结一下我觉得需要注意的事情. 首先看视频,我们可以开启 加速,自己一边看一边做笔记,这样可以锻炼我们的打字速度,这个没说什么说的,就是大家 ...

  6. [BUAA软工]提问回顾与个人总结

    提问回顾与个人总结 项目 内容 所属课程 2019春季计算机学院软件工程(任健) 所属作业 提问回顾与问题总结 课程目标 理解软件工程的作用和重要性,提升工程能力,团队协作能力 作业目标 回顾软工课程 ...

  7. 福大软工1816:项目测评

    福大软工 · 第十次作业 - 项目测评(团队) 评测 个人上手体验 查看课程表上效仿了超级课程表,界面美观 功能多,整合了课程表.查成绩.考场查询.历年卷.易班.空教室.图书馆.教务通知.大物实验.嘉 ...

  8. [北航软工]第一次团队作业

    第一次团队作业 团队简介 我们小组一共六个人,卓培锦,牛雅哲,张圆宁,韩笑冰,余凯,李天宇 卓培锦 菜鸡后端,六只程序猿的组长 是福建人啊. 一起努力做出一个还不错的项目,那应该还是蛮有趣的一件事情. ...

  9. 网络15软工个人作业5——软件工程总结

    一.请回望开学时的第一次作业,你对于软件工程课程的想象 1. 对比开篇博客你对课程目标和期待,"希望通过实践锻炼,增强计算机专业的能力和就业竞争力",对比目前的所学所练所得,在哪些 ...

最新文章

  1. vim学习笔记(一)
  2. 42岁著名黑客去世,曾拯救互联网:揭开索尼“罪行”、发现DNS漏洞
  3. python 32位和64位的区别在哪
  4. 手机端展现table_百度信息流广告外包丨百度信息流广告的展现样式和收费方式?...
  5. MATLAB接收机位置解算,GPS-receiver GPS软件接收机代码 完整的捕获 解算定位 (可 8个通道) matlab 240万源代码下载- www.pudn.com...
  6. ASP.NET Core 使用MySQL(Database First)
  7. 面对key数量多和区间查询低效问题:Hash索引趴窝,LSM树申请出场
  8. 简单的java日志记,Java 记要 日志,log
  9. Qt环境搭建(Visual Studio)
  10. VMware虚拟机(Ubuntu)添加物理串口
  11. Raki的nlp-begginer 提问
  12. javweb音乐网站_基于jsp的音乐网站-JavaEE实现音乐网站 - java项目源码
  13. DIV+CSS布局 - 弹性盒子布局
  14. smartpdf双击无法返回latex如何解决
  15. OPenAL 3D音效开发
  16. 从小白到Python大神只需要100天
  17. 电路设计_自恢复保险丝参数说明
  18. 第一部份1:JMF基础原理与相关术语介绍 。。。。快速了解JMF有什么相关内容
  19. Content-Type四种常见取值application/x-www-form-urlencoded,multipart/form-data,application/json,text/xml
  20. EM78P153B封装SOP8单片机方案IC开发

热门文章

  1. SQLServer 优化SQL语句 in 和not in的替代方案
  2. 完整的Android 新浪微博api调用DEMO
  3. 2011年的MVP礼包
  4. (转)MVC模式参数传递的探究
  5. 经常需要在开发中使用Excel COM,为简化使用写了这个类,感觉还是不太方便
  6. centos7安装oracle12c 三
  7. eclipse plugin 菜单
  8. TP引用样式表和js文件及验证码
  9. 京东布局消费物联网 聚合产业链共建生态
  10. poj 3348 Cows 求凸包以及凸包的面积