个人作业5-软工个人总结
一、请回望开学时的第一次作业,你对于软件工程课程的想象
对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
没学软工时候,我以为这们课会交我们怎么打代码,怎么设计软件;学了之后才知道开发流程,测试这些操作的重要性,虽然再结对和团队里并没有让我的代码能力有多大的提升,但对开发软件的过程,如何开发出更好的软件这方面学习到了很多,而且通过团队和结对编程我学会了如何更好的和组员沟通,如何让效率最大化,这也是一个不错的收获;如何完善项目细节这方面我还是做不好,开发过程中很多时候会卡壳,不知道怎么办,肯定是代码密密麻麻的太可怕了。
总结这门课程的实践总结和给你带来的提升,包括以下内容:
1)统计一下,你在这门课程中,完成了多少行的代码;
大概六百多行吧,结对编程时候该别人的代码,没完成多少,团队项目就比较模糊了,大家都有参加。
2)软工的各次作业分别花了多少时间?(做一个列表)
3)哪一次作业让你印象最深刻?为什么?
提问题那一次作业让我印象最深,提出问题往往是检查自己的过程,思考的过程,那一次写博客写了很久,不是因为那次作业量很大,而是在翻书的时候思考了很久。
4)累计花了多少个小时在软工上?平均每周花多少个小时?
累计花了134h在软工上,平均每周8.374h
5)学习和使用的新软件;
Android studio
6)学习和使用的新工具;
磨刀,微信开发工具等。
7)学习和掌握的新语言、新平台;
java,GitHub等
8)学习和掌握的新方法;
通过用户调研找到不足,需求分析等。
9)其他方面的提升。
沟通和交流
二、写下属于自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析
遇到问题要多问别人,或者多在网上了解,软件工程涉及到的知识非常多,用到的开发工具,语言各种各样,你肯定不会所有的都会,用安卓变成的时候,用到的java代码非常复杂,跟之前自己掌握的不一样。
要学会锻炼自己的思维能力,在beta阶段经常做着做着就卡住了,虽然给我的任务也并不多,打代码很考程序员的逻辑分析能力。
三、对下一届实践的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?对于后来人的期许。对于换人机制,有什么样的建议?
希望下一届的孩子可以更好的规划好时间,别像我开始一样在alpha阶段很久都做不出东西,不要求做的非常快,但是每个阶段的任务一定要踏实做好。然后就是不要因为自己coding能力不好就放弃,代码都是在项目过程中不断完善的。
对于换人机制,我觉得挺好,像有些团队进度太慢,可以招募个能力强的组员来,有些人对于自己团队的项目不是很得心应手可以交易出去,建议是可以吧换人机制能的更程序化点,这样自己私下交换感觉优点乱。
四、分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》第17章 人、绩效和职业道德)
《构建之法》上说团队的发展有四个阶段,分别是萌芽阶段、磨合阶段、规范阶段、创造阶段。我开始所在的团队感觉在磨合阶段磨合了很久,因为不能好的安排分配任务,也找不到下手点。在后来的团队感觉已经到了创造阶段了,组员们熟能生巧,可以开始自己添加一些功能了。
五、怎样证明你学会了软件工程?
研发出符合用户需求的软件
必须公开发布,有实际的用户,一定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 做没有用户使用的软件
通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件
有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄
并且通过数据展现软件是可以维护和继续发展的。
而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料
我们的码云:https://gitee.com/zfy666/casually_check/attach_files