本次作业截止时间为:2023年6月7日 23:59
注:博客发布后需要审核,请同学们记得提前发布博客,避免影响作业提交。
一、作业要求
第一部分:课程回顾与总结
寒假作业要求你在阅读构建之法社区中前人提出的问题,选择5个及以上的问题写下自己的思考。现在的你对这些问题有什么新的看法吗?
你是否在这门课中获得了成长呢?也许你有一些想要抒怀的地方,那么在这次总结中写下来吧。
给自己的总结博客起一个有意义的标题~
给出以前问题思考的博客链接。
请尝试对自己曾经思考过的问题再次进行解答,并阐明,是如何通过看书,实践,或者讨论弄清楚的。
是否原来的问题还不明白?如果有,请分析。
是否产生了新的问题?如果有,请提出。
软件工程这门学问有很多 “知识点”, 这门课强调 “做中学”——在实践中学习知识点。
- 请问你在项目的需求/设计/实现/测试/发布阶段(一共5个阶段)中,每个阶段收获最大的知识或能力是什么?
结合自己在个人项目/结对编程/团队项目的经历,谈谈自己的理解或心得。
结合这次课堂的学习经历,自我评分对七大课程目标的掌握程度(百分制),并作出相应解释。
- 目标1: 理解软件工程师的职业道德规范和实践要求,了解国情社情民情,理解软件产品对社会、健康文化等影响,树立积极向上的软件开发理念。
- 目标2: 掌握需求分析的全过程,能辨别客户表述的多样化要求,熟练使用需求表达工具,能够规范、准确地表达客户的需求,构建需求分析模型。
- 目标3: 掌握软件开发的全过程,遵循体系结构设计方法和基本设计原则,通过正式的技术评审,完成从体系结构设计模型、数据设计模型和构件级设计模型,形成面向高效可靠的服务组件设计方案或软件系统设计方案。
- 目标4: 能够执行从组件到软件系统的技术评测,具备设计模型的评判能力,具有创新设计意识,能够优选设计方案。
- 目标5: 遵循软件开发各阶段文档标准,采用规范的表达,掌握需求规格说明书、系统设计说明书、系统测试报告等文档撰写方法,具备与业界同行交流能力。
- 目标6: 具有良好的团队意识和合作技能,能够与其他成员开展有效的沟通和协作;能够组织、协调或指挥团队开展工作。
- 目标7: 能够辨别具体软件项目管理中涉及的构成要素,掌握软件规模和工作量的估算方法,能够选择合适的工具规划软件进度并对项目管理过程进行配置,具备初步的管理复杂软件工程项目的能力。
第二部分:个人技术总结
在第一次作业“准备篇”中你为自己制定了学习路线,现在学习了怎么样了?你在团队开发中是否担任了开发角色,你在开发中解决了哪些技术问题?获得了哪些技术进展?
请你从个人技术学习角度和团队开发技术角度中选择你最擅长的一个相关技术,进行分析描述并总结。
相关技术的粒度不宜太大,比如不应该选择诸如Java语言/Html/JS这样的大类,而是一个较细的分类,如Axios的使用总结、Spring Boot上传和下载文件、在团队开发中采用的推荐算法等。
可以从项目开发过程遇到的“坑”以及采取的解决方案出发,构思技术主题。
要求单独为这个相关技术撰写一篇博客并发布,请在实践总结博客中给出技术博客的链接和技术概述,格式参考如下:
[技术博客标题](链接)
概述:.........
博客的内容应该至少包括以下部分:
- 技术概述,描述这个技术是做什么的/什么情况下会使用到这个技术,学习该技术的原因,技术的难点在哪里。控制在50-100字内。
- 技术详述,描述你是如何实现和使用该技术的,要求配合代码和流程图详细描述。可以再细分多个点,分开描述各个部分。
- 技术使用中遇到的问题和解决过程。要求问题的描述和解决有一定的内容,不能草草概括。要让遇到相关问题的人看了你的博客之后能够解决该问题。
- 进行总结。
- 列出参考文献、参考博客(标题、作者、链接)。
二、格式和要求
提交规则
- 补交:在deadline 后两天内提交视为补交,得实际得分 * 50%;忘记提交作业和补交扣分一致;
- 缺交:在deadline 之后两天未补交视为博客缺交,分数为0分;
- 作业抄袭:当助教发现两篇博客文字/图片/代码过于相似时,判定两篇博客都为抄袭,分数都为-100%(注意是倒扣!);
注:前几次作业有出现模仿去年博客的情况,一旦助教发现将进行扣分处理,请同学们 独立完成作业,严禁一切形式的模仿和抄袭 - 伪造提交:虽然作业博客没有完成,但是先提交到作业占位置,判定为伪造提交,分数得0分;
格式
为了方便其他学校的老师或者助教了解课程实况,请大家在作业开头添加格式描述:
| 这个作业属于哪个课程 | <班级的链接> |
| :---- | :---- |
| 这个作业要求在哪里 | <作业要求的链接> |
| 这个作业的目标 | <写上具体方面> |
| 其他参考文献 | .... |
三、评分标准
第一部分
【覆盖课程目标1】
- (20') 5个阶段中,每个阶段收获最大的知识或能力是什么?
- (10') 结合自己在个人项目/结对编程/团队项目的经历,谈谈自己的理解或心得
- (10') 自我评估对通过课程的学习,对各个课程目标的掌握程度,并作出解释
【覆盖课程目标5】
- (20') 回顾自己思考过的5到10个问题:尝试解答、继续分析、提出新问题
第二部分