软件工程实践总结作业~

个人作业——软件工程实践总结作业

标签(空格分隔): 软工实践

作业链接的传送门


一、请回望暑假时的第一次作业,你对于软件工程课程的想象

1)对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?

四个月的时间时间,说长不长,说短不短,之前觉得做一个项目是一个比较神秘而又复杂的事情,但是经过了实践后,发现,其实完成一个项目,也就是一个团队成员合作各施其职的完成的一项工作。每个人负责好自己的部分,然后再整合起来,有问题丢出来吐槽,该接锅的接锅,该修改的地方修改,有问题一起商量,项目也就不难做了。

经过软工实践后发现,技术上的问题基本上都不算是什么大问题,真正困难的是,我们的项目该做什么(需求),到底这个功能我们要不要做这个东西,我们到底有有没有足够时间做这个功能,理论课和实践上课初期的时候,都一直在强调的需求分析,那个时候我是懵懵懂懂,始终始终不是特别明白需求分析的重要性,项目在需求分析的时候也是主要是其他人提出来,我大概听一听,发现没有什么好补充的。直到直到beta版本的时候,由我负责,对需求分析的重要性,简直是深有体会

我:我们做了A、B、C、D四个接口
前端:啊?谁说要做A的。
我:之前讨论不是说了做A的吗。
前端:不做了,做了没意义,xxx(一堆理由)。
我:好吧。

需求分析简直是太重要了太重要了太重要了。我很庆幸还好在beta版本的时候接了一下组长的锅,不然每次从任务表中仔细思考琢磨哪一个任务适合我现在做,完全体会不到要制定任务的多么的困难。能完成项目的人一抓一大把,而能正真掌控项目的,只有项目的计划者。能甚至可以说,能制定好项目的计划,项目就完成了一半
我觉得,这方面的能力,我还是有所欠缺的,缺乏经验,能力上也缺乏锻炼。

我们做了做基础最核心的内容。但是我觉得我参与的不够多,真正写代码的时间大概只有1/4左右,甚至可能不到,其他时间要么写文档(测试文档、接口文档、流程图),要么测试接口的正确性,要么就是花在写博客上等等。导致我觉得虽然在实践课上花的时间不少,但是感觉实际上做出的东西却不多,这让我觉得有点矛盾。

2)总结这门课程的实践总结和给你带来的提升,包括以下内容:

1、统计一下,你在这门软件工程实践中,完成了多少行的代码;

github上面提交了的大概就800~1000行左右吧。实际应该删删改改大概是2、3倍。

组队作业和个人作业加起来应该也是差不多800~1000行

但是这两个800~1000行代码的质量是完全不一样的。

2、软工实践的各次作业分别花了多少时间?(做一个列表)

作业 花费时间
第一次作业-准备 1~2h
第二次作业——个人项目实战 25~30h
软件工程实践 · 团队项目 第一次作业 1~2h
第五次作业--原型设计(结对) 10h
软件工程实践 · 团队项目 第二次作业 0.5~1h
结对项目--第二次作业 15~17h
第七次作业--项目需求分析(团队) 2~3h
项目UML设计(团队) 4~5h
项目选题报告答辩总结 1~2h
项目需求分析报告答辩总结 1~2h
Alpha 冲刺 8~13h
Alpha 答辩总结 1~2h
Alpha 事后诸葛亮(团队) 4~5h
BETA 版冲刺前准备 0h~1h
软件产品案例分析(团队) 4h~6h
Beta 冲刺 23h~33h
Beta 答辩总结 6h~7h

3、哪一次作业让你印象最深刻?为什么?

印象最深的作业有两次

一次是 第二次作业——个人项目实战,当初只是觉得这个作业挺有意思的,所以才花了很多的时间和精力去弄,然后没有想到意外的得到了助教还有老师的赞赏。
另外一次是

另外一次是结对项目--第二次作业,一开始没有花时间去弄,大概还剩下一周多的时候,开始思考,然后想了很多,然后到了截至的那天,从早上8点多开始一直,外卖了午饭,到了下午上课的点去上课到了4点,回来继续弄,一直弄到晚上9点,晚饭都没有吃,才弄完这次作业。

4、累计花了多少个小时在软工实践上?平均每周花多少个小时?

总计大致上花了140~180h在完成各项作业和任务上.按照17周时间来算,平均一周160/17 = 9.41h。

5、学习和使用的新软件;

  • Wampserver
    Apache Web服务器、PHP解释器以及MySQL数据库的整合软件包
  • excel
    用excel 生成燃尽图

6、学习和使用的新工具;

  • insomnia
    接口测试软件

7、学习和掌握的新语言、新平台

  • PHP 语言 以及 CI框架
8、学习和掌握的新方法

UML类图

9、其他方面的提升。

博客的速度提升了不少。

二、写下属于自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析

岁月神话:前期摸鱼划水,后期接锅力挽狂澜。

前期的时候,因为要打比赛,在训练和比赛上花的时间比较多,而且组长(浩晖)也觉得我要打比赛,然后就不怎么布置任务给我了,所以我就前期很安逸,主要就是跟着看了CI框架的视频和两门PHP的课程,然后熟悉一下接口测试软件,项目的具体上手任务就几个个来熟悉练练手,相比一下其他人做的事情比较少一些。
Alpha版本开始前后,组长任务交接给了海林,但是后期到了Alpha版本快结束的时候,组长(海林)因为各种原因不太想做组长了,导致alpha版本展示的时候,我们组连ppt都没有。然后就只好我来接锅,但是我接锅的时候啥都不知道啊= =。。只好先开一个会讨论一下beta版本还能做些什么,最能做什么。全部列一个列表,接下来我花了一段时间研究了如何发布任务,然后熟悉团队当前的进度,然后担任各种中转站,写博客的量刷刷刷就上去了。当然实际上因为之前的一些方向已经定好了,所以我接手的时候就是尽最大可能的保证完成项目最核心的功能要做出来。不过功夫不负有心人,虽然不完美,但是还是勉强完成了任务。

三、对下一届实践的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?对于后来人的期许。 特别地,特别地,下一届要不要中途换队员?

  • 软工实践很麻烦,很多博客要写,组队最好认识的,这样子一开始讨论起来比较不会尴尬,好分配事情的,那种可能中途弃坑的队友千万就不要了,会很坑,最初的目标千万要符合实际,需求分析千万要慎重,任务的制定一定要清晰,不然后期会很惨,还有就是团队合作很重要

  • 换队友的话,偷偷进了z班的微信群,里面讨论的很激烈,其中让我比较认可的一些内容,,软工实践的换队员机制是在模拟企业环境,但是我觉得达不到模拟的效果,你没有办法做到把一个web队员换到另外一组做前端工作中,我们也没有短时间天自学并融入到新团队的能力,就算有这个能力,除非对软工实践抱有巨大的热情(具有巨大热情的人基本上不会被换),否则按照大三上的科目情况,把大多数时间浪费在软工实践的性价比不高,那么,换队员的事情就是弊大于利,对于被换的队员,对于软工实践的恐怕也是越来越抵触。所以,我个人不建议强制换队员,极个别想要离开尝试新团队的,也支持。

四、分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》第17章 人、绩效和职业道德)

  • 萌芽阶段:团队成员虽然是经过了精心的筛选,但团队成员刚进入到一个新的团队,还是会对职责规则和团队的期望还不熟悉,可能成员之间的经历与能力彼此也不太了解。

  • 磨合阶段:每个人都相互熟识,团队开始有了明确的目标并为之共同努力,但会因各自不同的目标及个的能力、见解会对某个事项的见解不同而产生冲突,这种事情在团队磨合期是常会发生的事情。

  • 规范阶段 感觉存在这个阶段,但是又不存在的样子。

  • 创造阶段 在beta版本快要结束的那几天,感觉有创造阶段的一点点小错觉

五、怎样证明你学会了软件工程?

研发出符合用户需求的软件

已注册账号:50+
一个月内使用的用户数:20左右
活跃用户:10+

通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件

wonderland 地址

项目规划说明书

github commit 记录

Beta版本总结

Beta版本讨论分析

Alpha版本总结

项目文档汇总地址

项目github地址

关于检查表中的内容,大概掌握的语言方面不太好说,打的最多的就是c++了,软工实践用的是php,还是用框架的那种。。。软件实现方面阅读别人的代码主要考脑力模拟,实在不行就只好跑一遍,输出中间变量慢慢理解。。。。。。目前确实还有很多答不上来,不过通过软件实践已经有部分能打得上来了,比如软件测试,效能分析等已经有了涉及。

七、个性发挥,包括图文、照片和创意等

posted @ 2018-01-07 21:51  洛丶航  阅读(452)  评论(6编辑  收藏  举报