1)对比开篇博客你对课程目标和期待,“但愿经过实践锻炼,加强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为何?html
在完成了软工实践后来看,说实话我认为本身在代码能力的提高方面是颇有限的,身为PM在此次实践中并不负责项目的具体编码,而是将更多的时间和精力放在了团队管理和推动项目上。前端
但在团队协做方面我认为彻底达到了个人期待和目标,此次实践可以真正的管理一个9人团队并从始至终地完成了一个项目的开发,这对我来讲是第一次,它大大提升了我待人处事的能力。python
此外就是对本身的时间管理能力也在此次实践中获得了提高,经历了实践才头一次以为时间如此不够用,天天既要完成实践任务又要兼顾学习和周末的实验,这让我不得不学习如何合理利用各类碎片化的时间来兼顾实践与其余课程的学习。laravel
2)总结这门课程的实践总结和给你带来的提高,包括如下内容:git
问:统计一下,你在这门软件工程实践中,完成了多少行的代码;github
答:根据以前的beta总结的学习进度表的统计,我这个学期打了2550行代码,不过老实说个人代码量主要体如今实践的我的做业、结对两次做业上了,而到后面的团队项目时,我并无在项目中贡献太多的代码,更多的代码用来验证想法的可行性上了,以后就将任务交给分配的人去作了。web
二、软工实践的各次做业分别花了多少时间?(作一个列表)面试
做业名 | 花费时间 |
---|---|
第一次做业 | 120 |
我的项目 | 960 |
结对项目1 | 580 |
团队风采展现 | 120 |
结对做业2 | 1620 |
团队选题报告 | 720 |
团队课堂UML设计 | 405 |
团队需求分析报告 | 915 |
Alpha冲刺 | 2385 |
团队现场编程 | 205(课后)+180(课上) |
团队项目评测 | 215 |
Beta冲刺 | 1405 |
最终展现 | 180 |
三、哪一次做业让你印象最深入?为何?数据库
四、累计花了多少个小时在软工实践上?平均每周花多少个小时?同时贴出开篇博客“你打算平均每周拿出多少个小时用在这门课上”的回答编程
- 我打算每周拿出14小时左右的时间,平摊到天天大概两小时来花在这门课上,不过具体须要根据任务需求灵活调整,而且我但愿我花在这么课上的时间是高效率的,不要最后成为自我感动的借口
五、学习和使用的新软件;
原型制做软件:Axure
矢量图绘制软件:Illustrator
视频剪辑软件:Premier
Android Studio
六、学习和使用的新工具;
石墨文档(在线文档编辑)
SVG2Drawable(安卓矢量图转换)
版本控制:git及github
七、学习和掌握的新语言、新平台;
基于JAVA的Android开发基础
基于laravel的web后端框架
八、学习和掌握的新方法;
学习编写单元测试来检测代码质量
学会使用python爬取网页信息
学会撰写文档来规范团队的代码质量并以及引导团队前进
学习如何给团队的每一个人分配合适的任务
九、其余方面的提高。
收获了屡次在百十号人前展现本身的想法、思考、答辩的机会
对软件工程的思想有了本身的切身体会,明白了一个项目有必要的规范文档作支撑的必要性(虽然很繁复,可是这是“工程”不可或缺的)
收获了管理一个9人团队的宝贵经历
1)你有什么想建议、告知和期许想要告诉他们呢?
2)特别地,特别地,下一届要不要中途换队员(强制的、完全的从一队换到另外一队)?假设依旧是一个90+人数的大班
3)身在一个格外大的班级,竞争强劲,你认为一个组的人数应当在多少比较合适?
4)我的/结对/团队做业应该控制在怎样的规模?
5)这学期下来,你最感谢的人是谁?有什么话想要对TA说呢?
萌芽阶段:这一阶段大概对应着咱们从组队开始到第三次alpha冲刺时的状况,在这个阶段队员们都在学习相关的技术,对项目实现可能碰到的问题尚未一个很是清晰的认识。
磨合阶段:这一阶段对应咱们团队现场编程及以后的两次alpha编程,团队现场编程将咱们团队当时存在的问题暴露了出来,这也是组内成员提出疑问最多的一个阶段,不过很庆幸团队成员直接可以相互理解,对项目的疑问也能经过当面交流指定解决方法,从而度过了团队的磨合阶段。
规范阶段:从第六次alpha冲刺开始,我认为咱们团队进入了规范阶段,咱们在这时已经完成了项目的接口文档撰写、代码规范的约定、版本控制规则的制订,与此同时你们对项目所指望达成的目标有了清楚的认识,对本身负责的部分应该达成怎样的效果也了然于心。
创造阶段:我认为咱们的团队在beta冲刺阶段必定程度上触及了创造阶段,我的的体会是,在beta阶段咱们相比alpha阶段添加了4个全新的功能点,在我和后端组编写好接口文档后,每一个队员在明确了本身的任务后项目便开始了“并行开发”,咱们的7次beta冲刺中,由于考试冲突挤掉了3次的时间,但咱们的项目却依然早于预期的进度完成了,这说明咱们整个团队已经可以排除杂念将大部分精力花在项目的开放上了。
1)研发出符合用户需求的软件
2)经过一系列工具,流程,团队合做,可以在预计的时间内发布 “足够好” 的软件
此次实践中咱们团队的代码彻底托管在github organization上,每一个人在上传代码前都须要遵循约定撰写commit信息
团队的merge network图:
前端:
3)而且经过数据展示软件是能够维护和继续发展的。
4)对着这个检查表:http://xinz.cnblogs.com/p/3852177.html 检查一下,本身若是去企业面试,这些常见的问题是否都能回答,并在此总结。
针对“硬的问题”:按照检查表,我认为本身还有很是大的进步空间,特别是JAVA部分的问题,在此次实践中并无系统的学习JAVA这门语言,只是以项目驱动学到将将能看代码、写代码的程度
针对"软的问题":感谢软工理论课与实践,我对检查表中的这些问题都有了切身的体会,可以明白一些必要的“繁复”项目文档、相关调查、详细的规范都是为了支撑项目可持续发展的必要要素,虽然这会必定程度上下降效率,但倒是保证项目可以成为一个“工程”不可或缺的。