软件工程实践总结
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1 |
---|---|
这个作业要求在哪 | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/homework/10864 |
这个作业的目标 | 对这个学期软件工程这门课程的总结 |
作业正文 | 本文 |
其他参考文献 |
一、回望【30%】
-
对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
- 开篇博客之中我给自己定下的学习目标是学习跟前端Vue相关的编程技术,将来毕业后从事前端开发方面的工作。由于本次课程实践团队成员经过商议打算运用Spring框架完成任务,所以很不幸我没有完成最初顶下的目标,买的Vue书籍并没有看完大概之看完了53.6%。虽然这次课程已经结束,但是我们的人生还处于朝阳时期,倘若真想学,现在再次开始又何尝不是一个很好的开始呢?(给自己打气!)虽然对于最初的目标并没有完成,但是通过Spring的学习跟实操,我也提高了自己的编程水平跟自学能力,参加了团队合作对于团队合作能力也有了很大提高,虽然过程走了岔路但是结果是很美好的。同时这次实践我发现自己的数据库设计能力有很大不足,当初开始设计项目的数据库的时候,想的非常好,感觉已经面面俱到了,但是开始着手编程后才发现当初设计的真实一坨屎,加大了工作量,这种事是不应该的。
-
你在第一次作业的个人简历中制定的“这门课程结束后,你预期你将增长的能力、技术、技能”和你针对你的目标绘制的学习路线图。对比当前你的所学所得,你达到了当时的预期值吗?
- 预期值
- 工程能力: 提高自己的需求分析、项目系统设计能力,团队协作能力。
- 技术、技能:提高用已学习掌握的语言编写软件、程序的能力;与团队合作开发大型项目的能力;抗压能力。
- 目前看来确实每一方面都有提升。但项目系统设计能力还需要提升,因为通过这学期的作业发现这其实是项目开发初期一个非常重要的阶段;另外也要提升时间管理、多任务处理能力。
3.请总结这门课程的实践总结和给你带来的提升,包括以下内容:
- 统计一下,你在这门软件工程实践中,一共完成了多少行的代码;
大约写了几千行代码。
- 软工实践的各次作业分别花了多少时间?(做一个列表)
作业名称 | 大约花费的时间(单位:小时) |
---|---|
2020软件工程作业01 —— 自己对本门课程的期望 | 1.5h |
2020软件工程作业02 ——自己对未来的期望,制定一个学期目标 | 2h |
2020软件工程作业03 ——完成Sudokudoku项目以及进行单元检测 | 13h |
2020软件工程作业04(第一次结对作业)——设计一个家族树网站 | 8h |
2020软件工程作业05 ——在网页页面上呈现树形结构形式的师门树 | 38.5h |
问题清单 | 重在积累,具体未知 |
2020软件工程作业第二次结对作业 —— 随心购用例图,用例描述清晰展现项目 | 7h |
2020软件工程作业第三次结对作业 —— 随心购非功能需求,用例图,顺序图,类图项目需求分析模型 | 18h |
2020软件工程作业第四次结对作业 —— 随心购撰写《需求规格说明书》和体系结构模型 | 10h |
2020软件工程作业第五次结对作业 —— 随心购 项目系统设计与数据库设计 | 10h |
2020软件工程作业第六次结对作业 ——凡事预则立 | 60h |
2020软件工程作业第五次结对作业 ——事后诸葛亮 | 3h |
- 哪一次作业让你印象最深刻?为什么?
随心购——凡事预则立,由于疫情原因期末考试提前 ,作业和考试赶在一起,感觉那段时光我和我的组员们精神处于紧绷状态的没一丝松懈。
- 累计花了多少个小时在软工实践上?平均每周花多少个小时?
累计大概有两百多小时在软工实践上,平均每周十五个小时
- 学习和使用的新软件;
idea,Typora,JProfiler,Xmind,Axure RP8
- 学习和使用的新工具;
腾讯会议、 阿里巴巴规范检查的IDEA插件
- 学习和掌握的新语言、新平台;
Springboot
- 学习和掌握的新方法;
学习新的知识时,懂得如何更高效查询与解决
- 工程能力的提升;
文档设计编写能力,项目理解能力。
- 团队合作上的提升;
团队协作能力,争端调和能力。
- 其他方面的提升;
自律以及时间管理方面
二、团队总结【15%】
软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》第17章 人、绩效和职业道德)
- 你在团队中担任了什么角色?你是否完成了该角色的任务?现在你觉得你适合该角色吗?
水手
- 如果你是组长,你觉得你有哪些地方做的不够好的?有哪些地方做的好的?你觉得该怎么改进?(详细描述)
我们小组的每日汇报做的不够详细,导致冲刺阶段,有小组成员存在虚假汇报的情况,如果是我是组长的话,我会每天都要求他们向github提交记录,同时我也每天定时检查提交的代码是否是无效代码。我们小组中每日会议做的很好,组长十分的负责在每日规定的开会时间前半个小时就通知我们做好准备,同时也积极向我们转告助教、老师们在博客下留言所问的问题。
- 如果你是组员,你觉得你的组长分工安排是否合理?你对组长的选举有什么建议?
我觉得我们组(随心购)组长分工比较合理,只不过刚开始我们都不是很熟练,熟练了之后分工起来就轻松多了。
组长的选举我们采用了组内推荐,我认为就这样组内推荐蛮好的。
三、人月神话【35%】
1、怎样证明你学会了软件工程?以下要求你们的团队达到了哪几个?
(1)研发出符合用户需求的软件
必须公开发布,有实际的用户,一定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 做没有用户使用的软件
(2)通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件
有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄
(3)并且通过数据展现软件是可以维护和继续发展的。
而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料
2、写下属于你自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析,字数不限,开放命题,可以使用你自己喜欢的方式表达.
-
颁发任务时确保每个组员都到场,确保组员准确收到任务
-
每一个小任务应该具体,不模糊,使得开发人员能够理解,布置任务应该围绕主要功能进行,
切勿基础功能都未开发时,想法已经天马行空,反而使得积极性下降,只想不做。 -
开发过程多进行沟通避免后期开发与起初项目建立时相差太远
-
在祈求变化需求时,应该严格考虑后效性,不得随意改动。
四、建议【20%】
对下一届同学的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?请写下你对后来人的期许。
-
请在正式开始这门课之前最好心理准备,一定要在每个环节都紧跟课程的脚步,由于任务比较密集,而且有一定的难度,所以请不要在任何一个环节松懈,绷紧神经,在课程结束后你会感觉到自己质变了
-
希望新的同学们,能够在平时就多多累计软件工程的相关思想,也多学习算法知识、数据结构,虽然
不一定能用得上,但是对人的思维锻炼是很强大滴。
对于软工实践课程,你有哪些建议?
- 希望能够提供一些团队开发中比较经常使用的工具集
对于老师的工作,你有哪些建议?
- 老师可以多开开直播讲解一下自己的开发学历历程
对于自己今后,你有哪些建言?
- learn by doing如果想要学习什么技术,找到一个方向,大胆去做吧,不经过实践就不会成长,没踩过坑,就无法把控软件开发过程中的难题
- 请提升你的沟通能力,没人会在意你幼稚的言论,大胆出丑,虚心学习,成长就是这个过程