一、请回望开学时的第一次作业,你对于软件工程课程的想象
对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
达到的目标:
- 在学这门课程的时候,我的期望是能够系统化的了解如何作为一名合格程序员,和在开发过程的时候会出现什么问题和怎么去解决。
不足:
- 不足之处还是项目实操不够熟练,在很多时候写程序的时候对编程语言的不熟练。
- 总归还是写的代码不够多,今后会努力改正,多练习,多动手。
总结这门课程的实践总结和给你带来的提升,包括以下内容:
1)统计一下,你在这门课程中,完成了多少行的代码;
2)软工的各次作业分别花了多少时间?(做一个列表)
作业 |
所花的时间(h) |
. 个人阅读作业1 |
1 |
·个人阅读作业2——提问题 |
3 |
. 结对编程练习 |
24 |
· 团队组队&展示 |
1 |
· 案例分析 |
2 |
· 团队计划 |
2 |
·需求分析与设计 |
3 |
· Alpha阶段敏捷冲刺 |
90 |
· 展示博客 |
1 |
· 测试与发布 |
2 |
· alpha阶段之事后诸葛亮分析 |
3 |
. alpha阶段个人总结 |
2 |
·敏捷冲刺(Beta阶段 |
25 |
·软工个人总结 |
1 |
3)哪一次作业让你印象最深刻?为什么?
- 应该是针对课程课本提出问题这个问题,在此之前,我以为会有老师和助教来回答我提出的问题,结果却不是,顿时有点小失望,因为我问的大多是实际问题,是想要有经验的老师或者助教言传身教一下,让我能少走弯路。所以我在做最后一次作业的时候题目要求我来回答提出的问题,是有点脑壳疼了一下。
4)累计花了多少个小时在软工上?平均每周花多少个小时?
- 从开始课程到现在,大概每周花10小时左右在软工上,总的花话大概168左右吧。
5)学习和使用的新软件;
6)学习和使用的新工具;
7)学习和掌握的新语言、新平台;
8)学习和掌握的新方法;
- bootstrap框架可以兼容多个浏览器和移动端,使得网页无论在什么地方展示都会比较的美观。
9)其他方面的提升。
- 软工课程主要就提前锻炼我们团队的合作能力以及锻炼我们的实际能力。经过初期中期后期的磨合,对团队开发有了一定的认识。也弥补了自身的知识面的不足。
二、写下属于自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析
- 首先确定目标很重要,你只有确定了正确一致的目标之后,才能一往无前的走下去,比如我们之前的课程设计题目没有经过深思熟虑,导致前1周什么东西都没有做出来,后来经过成员的讨论协商,才确定了方向,更改了课程设计题目。其次,不要怕自己不会,什么不会就学什么,一个项目的开发往往是从无到有,对于我们能力也是一种重新的锻炼。我们做的是网页开发和app的设计,这就使得我们得分层两小组去完成,虽然过程很难受,数次都因为能力知识不过关导致进度缓慢,但最终还是克服下来了,成品的网页和app让我们有一种直接在校园推广的冲动。。。
三、对下一届实践的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?对于后来人的期许。对于换人机制,有什么样的建议?
对于下一届的建议
- 首先最主要的就是掌握一门编程语言,目前热门的包括php,java,Python,c++等等,学院上的课程基本教的都是基础,你需要确定你想学的语言后,专门去深究,多做项目实操,才能熟练上手。
对于后人的期许:
- 软工这门课程还是很有用的,尤其是结对编程,这是能实际锻炼你能力的一次机会,好好把握这次机会,认真考虑自己要学的东西,然后坚持下去,对以后的出路是很有帮助的。
对于换人机制:
- 建议可以稍微调整一下,取消强制每个团队换人。因为经过a阶段开发每个人都至少找到了自己所处团队的角色,若是去其他团队,不熟悉和找不到新团队角色定义是件蛮头疼的事情。
四、分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》第17章 人、绩效和职业道德)
(1)萌芽阶段
- 我们团队主要核心都是一个宿舍的,平时兴趣和性格都合得来,对于一些事物的看法和观点都很有独特的见解,所以才一致想出了“校园帮帮帮”这个项目主题,有了目标,接下来就是学习和开发阶段了。
(2)磨合阶段
- 因为除了做网页,还要做app,所以我们在分配任务的时候每个人身上的任务是很重的,但还好我们团队都很上心,有冲劲,遇到困难会一起克服。
(3)规范阶段
- 在开发的时候,每个人都应该要有主要的任务和目标,所以在安排分配完后,做起来的就会有效率的多。
(4)创造阶段
- 在a阶段后,我们已经基本完成了网页的设计和app的开发,略有不足的是界面的美观和规范度略有不足,所以在复审阶段我们的是要任务就是重新写界面和补充一些功能以及一些bug的完善。最后的成果应该也是名列前茅的吧,毕竟网页和app都已经开发完成,实用性也很好。
五、怎样证明你学会了软件工程?
- 1.熟练掌握了一门编程语言
- 2.成功开发出可用的软件等,并且能完善bug以及后期的处理
- 3.所开发的项目有实用性,有用户量。
(2)通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件,有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄
团队博客汇总
(3)通过数据展现软件是可以维护和继续发展的。而不是找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料
码云地址: