这个作业属于哪个课程 | 2020春W班 |
---|---|
这个作业要求在哪里 | 软件工程实践总结&个人技术博客 |
这个作业的目标 | 软件工程实践总结&个人技术博客 |
作业正文 | 软件工程实践总结&个人技术博客 |
其他参考文献 | 《构建之法》 |
回望
对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强软件工程专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
在课程开始的时候,期望可以通过实践了解到一个完整的软件项目需要经历怎样的过程,并在实践过程中学会如何管理软件项目和其他软件工程专业的能力。
在软件项目管理,代码管理,以及其他软件工程专业的知识在课程实践的各个阶段老师都很好地安排了,所以在这方面是达到自己的预期的。
不足之处暂时没有想到。
你在第一次作业的个人简历中制定的这门课程结束后,你预期你将增长的能力、技术、技能;和你针对你的目标绘制的学习路线图。对比当前你的所学所得,你达到了当时的预期值吗?
达到预期的40%。因为实践项目担任的是前端的工作,所以没有预期的空闲再去研究后端。
请总结这门课程的实践总结和给你带来的提升
软件工程实践中累计完成的代码量
大约 5000 行
软工实践的各次作业分别花费的时间
项目 | 时间(小时) |
---|---|
寒假作业(1/2) | 5 |
寒假作业(2/2) | 12 |
结对第一次作业 | 16 |
结对第二次作业 | 20 |
团队作业第一次——种子队伍选拔和团队展示 | 5 |
团队作业第二次—团队Github实战训练 | 10 |
团队作业第三次—项目需求分析 | 5 |
团队作业第四次—项目系统设计与数据库设计 | 3 |
个人作业——软件评测 | 6 |
团队作业第五次——站立式会议+alpha冲刺 | 30 |
团队作业第六次——beta冲刺+事后诸葛亮 | 16 |
个人作业——软件工程实践总结&个人技术博客 | 5 |
印象最深的一次作业
应该是结对作业。因为刚开始实践课程热情还比较高,学习了新的前端框架和队友从原型设计到实现还是收获不少的。
累计花了多少时间在软工实践上?平均每周花多少个小时 ?
大约133个小时,平均每周10 ~ 15 小时
学习和使用的新软件
PostMan, 墨刀,AxureRP,teambition, Leangoo
学习和使用的新工具
Angular
学习和掌握的新语言,新平台
语言: Typescript,Makrdown
平台: 博客园
学习和掌握的新方法
原型设计,单元测试
工程能力的提升
Github 管理代码,用看板管理项目,测试能力
其他能力的提升
沟通能力
团队总结
如果你是组员,你觉得你的组长分工安排是否合理?你对组长的选举有什么建议?
我觉得我们小组的组长的分工安排挺合理的,阶段开始前有经过意见交流。对于组长的选举可以通过组内民主,因为小组内成员数量不是很多,大家又都是同学互相应该比较了解,可以通过充分的交流得到一个较好的结果。
你这学期经历过换组吗?你对换组有哪些看法?谈谈你在这个过程中的感受。
没有经历过。由于每个人对于实践课的初衷和期望不同,所以换组最好以自愿为好,让有需要的同学得到锻炼。
分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建之法》第17章 人、绩效和职业道德)
萌芽阶段: 开始组队的时候每个人的角色都不清楚的,但是我们组内交流还是很热心。直到确定了组长和选题后,才明确了小组的目标并确定了前后端的分工。
磨合阶段: 在项目开始初期,需要学习新的技术,需要统一代码风格,需要确定项目的任务分配。在项目冲刺过程中也出现过项目配置冲突,任务粒度太大等问题。这些都是我们团队磨合过程中出现的问题,也吸取了教训在下一次冲刺中进行了改进。
规范阶段: 在beta冲刺过程中项目任务的安排更加细致,并确定了预期每个工作的工作量和开始截至时间,相较alpha冲刺有了更加规范的项目管理,前后端的代码也开始规范。
创造阶段: 相比于专业的软件项目团队,我们的团队只能算是为了课程目的的组队,而没有长期的目标。所以在规范化之后,我觉得团队并没有进入创造阶段。
人月神话
怎样证明你学会了软件工程?以下要求你们的团队达到了哪几个?请在随笔中用数据证明上述内容或侧重选择之一
(1) 项目发布后进行的用户调查,至少有19个人开始使用我们的应用
(2) 在alpha阶段和beta阶段团队都提前收集了这个阶段各个任务的安排,并在冲刺过程中严格把控了任务的进度。每一天的组会都会跟进每一个组员的进度,有问题可以比较快发现解决。
(3) 按照课程实践的安排,我们的项目经过了需求分析阶段,设计阶段,alpha阶段和beta阶段,发布阶段。在每个阶段都有对应的文档,所以是可以支持继续开发的。项目的前后端代码也都通过Github进行管理。
写下属于你自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析,文字部分字数要求在100字以上,可以使用你自己喜欢的方式表达(如图文结合、视频)
在两次团队项目冲刺中得到的项目经验是,项目任务的划分粒度应该细化到每一天的任务,因为这样可以在每一天的组会上及时跟进今天团队的进度情况,可以比较早地解决问题,提高了效率。在项目开始前就尽量把所有可以预料到的任务添加到项目看板上,并合理估计每个任务的工作量和开始截至时间,并预留合理的缓冲时间。这样可以在项目冲刺过程中比较自如地把控项目的进度,更好地达到预期的目标。
建议
对下一届同学的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?请写下你对后来人的期许。对于软工实践课程,你有哪些建议?对于助教工作,你有哪些建议?对于自己今后,你有哪些建言?
对于学弟学妹的建议,希望尽快找到实际的目标并开始付诸实践,时间总是过的很快的。在大学的时光中如果过的太舒服而不多努力的话,再回首一定会后悔的。
对于软工实践课程的建议,暂无。相比于大学期间的其他课程,这门课程可以说是安排的最明确有针对性。
对于助教工作的建议,助教工作很认真负责,暂时没有什么好建议。
对于自己今后的建言,努力,毕竟还很菜。
个人技术总结
个人技术博客----Angular向后端发送请求
技术概述
在前后端分离的WEB项目中,前端需要从后端发送请求获取数据然后在前端页面展示,用户通过前端页面进行的操作也需要前端发送请求到后端处理。该博客主要介绍Angular前端如何向后端发送请求并进行错误处理。