这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/ |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/homework/10864 |
这个作业的目标 | 软工实践总结 |
作业正文 | 下文 |
其他参考文献 | 无 |
一、回望
1、对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
我的学习方向是web前端,相较于之前,我学习到了bootstrap等前端框架的使用,对HTML和CSS的使用也有了巨大的进步,虽然没有达到我的目标,但离目标的距离近了许多。
在JavaScript方面还存在许多不足,我认为是时间安排不当造成的,虽然作业事情繁多,但如果有合理的时间安排,我相信我是能够学习到更多知识的。
2、你在第一次作业的个人简历中制定的这门课程结束后,你预期你将增长的能力、技术、技能;
和你在第二次作业中绘制的学习路线图。对比当前你的所学所得,你达到了当时的预期值吗?
我在第一次作业中制定的预期值“在本门课程结束后,能深刻理解软件设计的理论,并在实际操作和开发中加以实现。”我认为我达到了一半,通过这门课,我了解到了一款软件的过程,也在实际开发中将所学知识加以运用,虽然最终软件并没有完成,但我认为我达到了当时的预期值。
在第二次作业中,我绘制了学习路线图,由于疫情期间各科任务繁多,没有时间精力,导致学习只开了个头,但在后面的团队作业中,我作为前端设计者,得到了锻炼,学习到了许多前端知识,对其有了更深入的理解,也完成了一款软件的前端界面,达到了“掌握”阶段,对后端还没有进行学习,离“精通”还差很远。
3、这门课程的实践总结和给我带来的提升
- 统计一下,你在这门软件工程实践中,一共完成了多少行的代码
团队作业大概完成了600行。
- 软工实践的各次作业分别花了多少时间?
作业名称 | 做了什么 | 花费的时间 |
---|---|---|
2020软件工程作业00——问题清单 | 编写博文 | 0.5h |
2020软件工程作业01 | 编写博文 | 0.5h |
2020软件工程作业02 | 编写博文,制作思维导图,搜索资料 | 3h |
2020软件工程作业03 | 编写博文,编写数独小游戏,测试 | 20h |
2020软件工程作业04 | 编写博文,家庭树原型设计 | 8h |
2020软件工程作业05 | 编写博文,编写家庭树程序 | 35h |
2020软件工程作业——团队01 | 编写博文 | 0.5h |
2020软件工程作业——团队02 | 制作ppt | 5h |
2020软件工程作业——团队03 | 绘制分析类图 | 5h |
2020软件工程作业——团队04 | 帮助组员修改用例描述,修改分析类图,原型设计,编写博文 | 10h |
2020软件工程作业——团队05 | 编写《数据库设计说明书》,数据库实现 | 8h |
2020软件工程作业——团队06 | 做了太多了...... | 60h |
2020软件工程作业——团队07 | 编写博文 | 2h |
2020软件工程个人作业06——软件工程实践总结作业 | 编写博文 | 3h |
- 哪一次作业让你印象最深刻?为什么?
印象最深刻的当然要属团队冲刺作业,耗时最长——保守估计六十小时;耗费精力最多——做梦都梦到,每天脑子里都是项目;跟考试和其他学科作业重叠,无法兼顾;最重要的是,能力水平跟不上想法,实在太痛苦了!!!
-
累计花了多少个小时在软工实践上?平均每周花多少个小时?
保守估计90小时,平均每周9小时。
-
学习和使用的新软件、新工具
编程:HBuilder
原型制作:墨刀、Axure RP
博文编写:Typora
UML图绘制:StarUML
-
学习和掌握的新语言、新平台
没有学习新语言,对github有了进一步的认识。
- 学习和掌握的新方法
SCRUM团队开发
H5+App的制作方法
- 工程能力的提升
了解了一款软件的开发流程
学会了绘制UML图
-
团队合作上的提升
成员的分工协调
-
其他方面的提升
对HTML、CSS、js的使用更加熟练。学会了Bootstrap框架的使用。学会了制作PPT。
二、团队总结
-
软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》第17章 人、绩效和职业道德)
没有全部经历过,应该还处于磨合阶段。
-
你在团队中担任了什么角色?你是否完成了该角色的任务?现在你觉得你适合该角色吗?
前端开发者,完成了,虽然还有很多问题没有解决,但在小组内我应该是最适合该角色的。
- 如果你是组长,你觉得你有哪些地方做的不够好的?有哪些地方做的好的?你觉得该怎么改进?(详细描述)
我觉得我在分工方面做的不太好,导致冲刺阶段很多事情没有人做,都得靠自己完成;会议安排太少,没有集中对组员的疑问进行解决,导致同样的问题要回答多次;沟通太少,没有对组员的情况进行了解,导致任务堆积没有人做;对组员的水平不了解,导致代码质量参差不齐,浪费自己和组员的时间。
做的好的方面,emm不知道做的太多算不算是好的方面......及时进行博客园作业提交,承担各项任务的审查工作,及时回答组员问题,为作业寻找各种教程和软件,让组员学习。
如何改进?我认为组队之初应该考虑成员能力水平和擅长技术的均衡,了解成员掌握的技术及水平,提前对组员进行职务分配,让其分别学习锻炼自己较为擅长的技术,避免冲刺阶段,组员对自己技术水平不了解,成品质量参差不齐。
- 如果你是组员,你觉得你的组长分工安排是否合理?你对组长的选举有什么建议?
不合理。但也不知道如何安排才合理。
三、人月神话
1、怎样证明你学会了软件工程?以下要求你们的团队达到了哪几个?
(1)研发出符合用户需求的软件
必须公开发布,有实际的用户,一定的用户量和持续使用量 (3天后能保持10-100个用户);而不是: 做没有用户使用的软件
(2)通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件
有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄
(3)并且通过数据展现软件是可以维护和继续发展的。
而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料
这些要求我们团队几乎全部没有达成,问题倒是全都出现了OTZ
(1)没有实现软件,所以没有发布,没有用户。
(2)没有项目规划/需求/设计/实现/发布/维护,也没有有定时的进度发布。导致临时熬夜、胡乱拼凑编写博文,一人完成大部分任务,最终项目没有达成只能延期。
(3)有源代码,可以编译,但没有相应的解释文档和发展资料。
2、写下属于你自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析,字数不限,开放命题,可以使用你自己喜欢的方式表达..
个人作业的完成需要合理的时间安排,良好的技术和用心对待。技术的不达标会造成前期学习技术的时间大大增加,但短期内的学习无法达到自己预想的目标,尽管作业耗时巨多,最终成品却低于预想目标。这告诉我们,平时就要好好学习,不要临到用时,方恨自己学的少!
团队项目的完成需要良好的技术,更重要的是成员的用心对待,而不是临近deadline,大家也不慌不忙,发布任务,也无人回复,团队作业,单单一个人用心对待是无法完成的。
四、建议
1、对下一届同学的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?请写下你对后来人的期许。
大一的时间是最为充裕的,不要将宝贵的时间浪费在游戏、电视剧、无所事事上,学习一些自己感兴趣或是专业相关的技术。认真学习重要的科目,打好基础,这会让以后的你变的轻松许多。提升自己的专业能力,参加一些相关比赛,既可锻炼自己,也让自己的履历有内容可写。
2、对于软工实践课程,你有哪些建议?
将软工实践作业与其他科目的作业相结合,在减少任务量的同时也可提高最终成品的质量。
3、对于老师的工作,你有哪些建议?
在这次软工团队作业中,我认为个人能力的提升,比团队项目完成度更重要。作业任务实在太多太难了,实在承受不住啊T^T
4、对于自己今后,你有哪些建言?
坚持自己喜欢的事,把握时间提升自己,不要让自己后悔。