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

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

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

  对比开篇博客课程目标和期待来说,我认为高级软件工程这门课程让我学到了很多,在增强了计算机专业能力和就业竞争力等方面都有帮助,课程的内容与本科的时候相比更加注重知识在实际项目中的运用。尤其在设计模式的运用这一块上得到了很大的提升与锻炼,以前知识学习了这些模式,但是从来没有在项目的设计中应用过,这次的课程先让我们在平时的设计模式中训练了设计模式的运用,之后在我们的项目中也运用了设计模式,虽然有些模式用得不够自然,但是也让我们对设计模式有了更深刻的理解。

  此外,这次的项目开发也锻炼了我的编程能力,并且让我感受到了前期认真做需求分析的好处,虽然这很花时间,但是磨刀不误砍柴工,这些工作的完成是非常有必要的。

  我的队友们更是大大超过了我的期待,我们在项目期间互相帮助、交流,在遇到问题的时候可以齐心协力解决困难,真的是非常优秀了!

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

  • 1、统计一下,你在这门高级软件工程实践中,完成了多少行的代码;
      8000行左右
  • 2、高级软工实践的各次作业分别花了多少时间?(做一个列表)
     
    作业花费时间作业花费时间
    高级软件工程第一次作业(准备) 2h 事后诸葛亮(团队) 7h
    团队展示(团队) 3h Beta冲刺预备 7h
    项目选题报告(团队) 6h Beta冲刺Day1 5h
    项目需求分析(团队) 5h Beta冲刺Day2 8h
    项目Alpha冲刺Day1 10h Beta冲刺Day3 6h
    项目Alpha冲刺Day2 9h Beta冲刺Day4 6h
    项目Alpha冲刺Day3 8h Beta冲刺Day5 6h
    项目Alpha冲刺Day4 9h Beta冲刺Day6 9h
    项目Alpha冲刺Day5 9h Beta冲刺Day7 10h
    项目Alpha冲刺Day6 8h Beta冲刺总结随笔 6h
    项目Alpha冲刺Day7 9h 用户使用调查报告 3h
    项目Alpha冲刺Day8 8h 高级软件工程实践总结 4h
    项目Alpha冲刺Day9 8h 第一次作业 1h
    项目Alpha冲刺Day10 6h 第二次作业 6h
    项目Alpha冲刺Day11 9h 第三次作业 6h
    项目Alpha冲刺Day12 9h 第四次作业 6h
    Alpha冲刺总结随笔 4h 第五次作业 6h
    测试随笔 5h  

  • 3、哪一次作业让你印象最深刻?为什么?
           Alpha冲刺和Beta冲刺都留下了非常深刻的印象,每天都在开会敲代码挣扎熬夜,感叹自己脸上冒出来的痘痘......
  • 4、累计花了多少个小时在高级软工实践上?平均每周花多少个小时?
           累计花了204个小时,冲刺时间三周,平均每周68个小时。
  • 5、学习和使用的新软件;
      学习使用Axure RP制作原型
  • 6、学习和使用的新工具;
      starUML,PowerDesigner,github
  • 7、学习和掌握的新语言、新平台;
           SSH 框架
  • 8、学习和掌握的新方法
           学习了许多设计模式
  • 9、其他方面的提升。
           编程能力、测试能力以及差错改错的能力得到了很大的提升

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

  • 项目的需求分析要明确清楚,做好设计文档,不要因为要花费的时间多而不认真做需求分析。
  • 代码风格规范 :在代码的规范上,需要项目组统一格式,注意代码风格的原则:简明、易读、无二义性缩进、命名、注释等代码编排的风格规范。
  • 模块化设计:在设计规范上,要保证代码是高内聚,例如一个函数只做一件事,一个模块只做一类事的,实现功能尽量用库函数;同时要合理使用数据结构、控制结构等来简化代码。
  • 有问题要及时提出与队友讨论或者寻求大佬的帮助。

 

三、对下一届实践的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?

有两点建议想分享给下一届的实践者(以及开学的我):

  • 保持良好的心态,项目中出现困难挫折是常事,要多跟队友沟通,向老师请教。
  • 认真完成老师布置的作业,会有很大收获哦!
  • 和团队保持良好的关系,这对自己对团队都是一件好事。  

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

团队发展分为四个阶段:

  • 萌芽阶段
  • 磨合阶段
  • 规范阶段
  • 创造阶段。

我们团队大体上经历了前三个阶段。团队刚组建的时候,我们对于选题一片茫然,在确定下队长后,我们讨论出可行的选题,接着完成需求、原型等等的设计,这大概就是我们的萌芽阶段;

经过了萌芽阶段,组长负责主要的框架搭建,分配工作后,每个人开始自己的模块编写,一开始出现了很多问题冲突、意见不合,但好在大家都友好地沟通解决了,团队在磕磕绊绊中度过了我们的磨合阶段;

之后,项目开发逐渐步上正轨,我们按照分工与计划一天天地完成任务。项目的进展迅速,大家的效率都很高,也给了自己极大的成就感并且得到了提升,团队进入了规范阶段。

我觉得我们还没有到达创造阶段。或许在以后的项目实践中我们能够有更多的可能达到创造阶段。

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

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

我们软件虽然没有发布至外网,但我们开放了局域网的网址,供我们使用同一校园网的同学使用,并征集了他们的建议和意见。 

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

 我们团队在开发过程中经过了选题、需求分析、原型设计、详细设计代码实现、用户测试到最后项目,每个冲刺阶段有定时发布进度,所有人都参与到项目当中:

 

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

  

 

posted @ 2018-12-15 22:39  fyy_blog  阅读(243)  评论(1编辑  收藏  举报