2018.1.7

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

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

通过本学期的学习,我意识到了代码规范对于一个计算机从业人员的重要性,同时我认为通过软工实践锻炼增强了我在计算机方面的学习能力,但相比某些能力较强的同学,个人的编码能力较弱,无法高效地完成一些任务,稍微拖了团队后腿。

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

  • 1、统计一下,你在这门软件工程实践中,完成了多少行的代码
    这门软工实践中我大概完成了3200行左右的代码
  • 2、软工实践的各次作业分别花了多少时间?(做一个列表)
第一次作业 个人项目实战 团队展示 项目选题报告 结对作业(原型设计) 结对作业(部门管理) 项目需求分析 alpha冲刺 团队项目(uml) beta冲刺 华为云软件分析
2h 4h 3h 5h 5h 12h 6h 62h 5h 54h 8h
  • 3、哪一次作业让你印象最深刻?为什么?
    个人项目实战是我印象最深刻的作业吧,大概是因为那是我唯一一次在路程中完成的作业,而不是呆在宿舍或者家中完成的作业。
  • 4、累计花了多少个小时在软工实践上?平均每周花多少个小时?
    累积花了166个小时在这门课程上吧,平均下来每周花费了9个多小时
  • 5、学习和使用的新软件
    学习使用了startuml,github,markdown
  • 6、学习和使用的新工具
    学习使用了startuml,github,markdown
  • 7、学习和掌握的新语言、新平台
    学习了qt的用法,使用qt写界面,使用vs完成加密算法
  • 8、学习和掌握的新方法
    读了加密算法,设计粗糙算法。
  • 9、其他方面的提升
    自学能力得到了很大的锻炼,并且代码规范好了很多

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

在项目设计期间,接口的设计是很有必要的,否则等对接环节,对接双方不同的要求会导致整个项目无法顺利进行(emmmm例子大概就是beta版对接失败导致整个项目延期233)


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

对于开学初的我,我有三句话要说:

  • 1.一定要注意代码规范
  • 2.一定要提前设计好接口
  • 3.一定要提前了解相关知识
    对后来人的期许:加油!😃
    中途换队员这件事,我觉得遵从个人意见即可,愿意换的队员交换就可。

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

萌芽阶段基本没有,因为本来就是一个宿舍的彼此相处两年多早就熟悉了,磨合阶段也是非常快的就度过了,理由同上,差不多在项目最开始的设计完成之后就已经到规范阶段了,最后从创造阶段其实并不完整,因为没有需要转换的项目要求。


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

1)研发出符合用户需求的软件  
必须公开发布,有实际的用户,一定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 做没有用户使用的软件  
2)通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件  
有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄  
3)并且通过数据展现软件是可以维护和继续发展的。  
而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料 
4)对着这个检查表:http://xinz.cnblogs.com/p/3852177.html 检查一下,自己如果去企业面试,这些常见的问题是否都能回答,并在此总结。

目前来说我语言只有c++能够算得上了解,不能算上精通,个人也比较喜欢研究算法之类的东西,因此对于代码质量,代码规范都没有什么比较出众的地方,只能说我还需要时间继续提高自己吧,否则是没什么实力的。