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

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

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

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

对比目前的所获所得,我觉得在团队协作方面达到了当初的期待和目标。谈起最近的一次团队协作,要追溯到一两年前,那时候我在学习php,在一个项目中和前端的合作是这样的:前端完成页面代码,然后交给后端(也没使用git),由后端将代码嵌入前端页面。而这次实践中完成的项目是通过git加上前后端分离(前端调用后端写好的api接口)的方式完成的。所以在这方面有得到进步。但是在代码能力提升这一方面有所不足,究其原因,我发现是因为一我所完成的页面本身难度就不高,其二我自身并没有投入太多时间在这个项目上。

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

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

    不包括引入的库文件的话,差不多是2500行左右的代码。

  2. 软工实践的各次作业分别花了多少时间?

    • 第一次个人作业:45分钟
    • 第二次个人作业:3天
    • 第一次结对作业:1天
    • 第二次结对作业:3天
    • 个人技术博客:1个小时
    • 个人实践总结:1个小时30分钟
  3. 哪一次作业让你印象最深刻?为什么?

    第二次个人作业,也就是数独那个作业,因为我本身在算法上面的能力就不太行,而且这也算是软工实践真正意义上的第一次作业,所以这是对我的一个挑战,花了很多时间才完成,给我的印象最深。

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

    具体花了多少时间我早已忘记了,在冲刺阶段算下来大约每周会花12个小时左右。

  5. 学习和使用的新工具

    在这期间使用了一个css动画库——animate.css。

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

我觉得最重要的是沟通吧,就拿这个项目中的示例来说:这个项目一开始的时候,我们开完会然后制定了各自的任务就开始做的,我的那部分是Xmatch超级管理员web端界面的前端,因为内容比较少所以我就比较偷懒,在挺晚的时候才开始动手写,而在这之前并没有好好地和后端沟通过。这样带来了什么样的后果呢?就是当后端写完接口的时候,我还有很大一部分没有完成,应用不上那些接口,然后项目接近尾期截止日期的时候,我把前端界面赶完了,这时候发现api接口给我返回的数据并不是我想要的全部数据,所以这时候我就去和后端沟通,可是因为已经到了项目后期了,所以后端的同学已经来不及写新的api接口了,直接导致了最后有的功能并没有完成。

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

对于下一届的同志要说的话就是:如果你确实选择了这门实践课并且没有退选的情况下,首先,找到一个适合自己的团队;其次,找到一个合适的项目题目;再次,积极参与,不要摸鱼...既然已经选择加入了这门课,如果划水混学分的话倒不如好好利用这些不可避免的时间做一些有意义的事情。其实对于中途换队员这件事我不是很同意。因为周期太短,刚进来的队员还没有完全理解新的项目就结束了,所以实际意义不是很大。

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

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

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

必须公开发布,有实际的用户,一定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 做没有用户使用的软件

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

有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄

3)并且通过数据展现软件是可以维护和继续发展的。

而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料

posted @ 2017-12-27 22:50  gannon  阅读(251)  评论(0编辑  收藏  举报