软工我的总结

1、回望开学初对于软件工程课程的想象,回望博客开篇时对于这门课和这学期的指望

  • 对比开学初的想象指望:通过了这学期的软工实践,我对一个软件的开发过程有了一些比较清楚的了解,算是基本实现了开学初所想的了解软件开发过程的打算。当时我以为结果怎样并不重要,事实也确实没想象中的那么美好,做为第一次编写的软件,咱们的做品还有不少的不足与问题,并无达到作一个实用、有情怀的软件的目标。不过在这个过程当中也算是入门了安卓开发。
  • 软工实践带来的提高:从《构建之法》中了解到软件开发中要考虑的不少方面和规划;在结对编程中领略告终对带来的好处;团队开发中对和他人合做、代码的编写规范、以及共同解决问题有了新的了解,并提高了一点代码水平,多弄懂了一些零散的知识。
  • 学会使用的新工具:主要学会了使用Android Studio 和 Git 以及GitHub的使用,Git结合GitHub使用,功能不少,有不少的命令行,到如今我也仍是只会用一点简单的功能,还有不少的东西要慢慢掌握,Android Studio确实是一个很强大的IDE,有不少的功能还没用到过,就是比较占内存,gradle很耗CPU。以前的结对编程中用到了原型设计工具Mockplus,上手仍是很快很方便的。还有就是写博客的markdown工具。
  • 学习的新语言、平台:Java和安卓,不过基础不是很牢固,还要花一些时间进一步学习。
  • 完成的代码量:此次我负责的主要是功能模块的部分,写的代码并很少(我也有些偷懒),没有统计具体的代码量,大概几百到一千行左右吧,还有各类小修改。总的来讲,能力上仍是有不少不足,在不少时候都作不到本身想要的,在学习的过程当中也只是不断地进行尝试、各类修改,还有待提高。
  • 学习和掌握的新方法:主要是结合教程和别人的博客来进行学习,并结合本身的编码实践。

2、项目实践中的经验总结+实例/例证结合的分析

  • 总结:如今我只能算是个初学者,并无太多的经验,只能先谈谈在学习过程当中遇到的问题和一点感想吧。在项目开发前先把基础的知识补好会省下以后的不少时间,另外最好多进行尝试,在尝试中能够加深理解并熟练掌握,只是看博客教程而不实践的话最后仍是不会。虽然有些工具在刚开始用的时候会让人感到很麻烦、不习惯,好比git,在使用的时候总以为各类繁琐的概念、命令很不方便,但熟悉以后会发现它对于项目的管理和团队的开发是颇有帮助的。团队合做不是我的开发,要注意总体的进展,和队友及时讨论交流,这样才能更好地进行开发。
  • 分析:咱们软工主要阶段在alpha版的冲刺,中间也有不少的问题,首先是分工方面,咱们主要分为两部分,两我的写功能部分,五我的写界面部分,每一个人都有分配一些负责的部分。不过在协同方面作得不够好了,界面部分不一样人写的风格都有些不一样,致使一些地方为了要协调一致花了一整晚修改,边改边吐槽,另外代码命名规范也很差,一些命名乱七八糟的,也被队友吐槽,修改起来挺麻烦的。此外熬了几夜并无提升多少效率,开会时效率也不高。总之,软工是一群人的事,在分工协同方面有不少的事要作好,不然只会多不少麻烦和浪费时间,最好订好各类规范并严格执行,不要熬夜赶工。

3、对下一届实践的建议,对于后来人的期许

  • 建议:软件工程的重点仍是在于实践,建议想对软件工程多点了解和参与团队开发的同窗能够选择这门课试试。虽然栋哥的要求会比较多、也比较严格,不过只要认真参与,不抱着混一混的想法,仍是会有不少收获的。
  • 期许:咱们这一届的要求是作一款有情怀的软件,不过真正作到的并很少,刚开始的时候每一个人都畅想了不少,等到实践时才发现不少事情并无想象中的那么轻松,作一款真正有用且有情怀的软件仍是挺不容易的。其中有不少因素,我的的代码水平、团队的水平、组长的管理水平、团队的积极性、凝聚力、软件设想的合理性...所以,对于后来者,我只想说,在大家的能力还撑得起野心的时候尽力把想作的作好吧!我的认为软工实践的过程比结果重要,但结果仍是很让人在乎的,因此,仍是应该认真对待。

4、团队分析

  • 《构建之法》中讲到的团队的发展有“萌芽”、“磨合”、“规范”、“创造”四个阶段。咱们的团队经历过了“萌芽“和“磨合“阶段,如今应该处于“规范“阶段,我的认为没有达到“创造”阶段。从刚开始的各类不懂到如今比较清晰的安排分工,咱们多少达到了必定程度的规范,不过仍是欠缺必定的凝聚力,在技术能力上也仍是有须要提升的地方。总之,仍是有不少进步空间的。


5、阅读软件工程中关于代码质量的的经典论文,从下列文献中选择一篇或若干篇,结合本身的实际作一个阅读笔记(例如,本身写的代码质量如何,是否是一个大泥球,如何衡量本身代码的质量)?

  • 大概地看了一下给的第一篇论文,主要讲了开源软件开发模式与传统软件开发之间的一些对比,论文有点长,并无细看。鉴于我的代码水平并不高,没有达到必定的高度,另外也因为英语水平过低了,可能要过一阵子才能领会其中的一些思想吧。。。


6、怎样证实学会了软件工程?

1)研发出符合用户需求的软件
必须公开发布,有实际的用户,必定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 作没有用户使用的软件
2)经过一系列工具,流程,团队合做,可以在预计的时间内发布 “足够好” 的软件
有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 经过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄
3)而且经过数据展示软件是能够维护和继续发展的。
而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目发展的资料git

  • (1) 咱们的软件有公开发布,可是因为还存在一些bug,并且还有一些功能上的欠缺和设计得不够好的地方,因此暂时还不能作到有用户使用和维持必定的用户量,这其中也有个人责任,软件的注册部分存在会崩溃的bug,如今还不知道怎么解决。只能说暂时还作不到。
  • (2) 在一段较短的时间内经过一系列工具、流程、团队合做开发出“足够好”的软件,我相信这对于咱们来讲仍是可以达到的,虽然如今技术还不够好,不过经历了此次的软工实践,对于各自分工要作的事仍是有了比较清楚的认识,再进行开发应该会更熟练,剩下的就是技术和团队合做上的提升了。另外咱们组并无大牛,代码分工也比较平均,基本上也有按时交付,大致上来讲仍是有规范的。
  • (3) 代码在GitHub上都有,每次的commit都有对应的说明,一些问题也有对应的issue,就是文档可能没有写好。至于代码的可维护性,这我也不太清楚,不过在一些功能模块仍是有对应的注释的,若是有人要继续改进咱们的软件,根据注释理解代码内容应该不会有太大的问题,问题可能就是一些命名不够规范。咱们的代码有用到Bmob的数据库sdk,各类操做在官方文档上都有详细说明。

7、相处一学期不易,课堂和课程上,咱们将就此别过。惋惜学生匆匆,时光匆匆,认识和了解的同窗却不多。另外我年纪渐长,记忆日衰,会遗憾有时候我连个性或名字都没有记住。写一段话,介绍下你本身吧。

  • 自我介绍就免了,我的不太喜欢这样,并无什么特别想说的,就这样告一段落吧。
相关文章
相关标签/搜索