201873030133-杨子豪 实验四 团队作业1:软件研发团队组建个人博客
项目 | 内容 |
---|---|
课程班级博客链接 | 班级博客链接 |
这个作业要求链接 | 作业要求链接 |
团队名称 | 玛卡巴卡小分队 |
团队的课程学习目标 | 取长补短,反思不足,分工合作,在更大的团队中与他人建立联结。 |
这个作业在哪些方面帮助团队实现学习目标 | 作业互评可以学习他人在软件项目中的优点并且加以学习,同时弥补自己的不足。在组建团队的过程中也可以体验更复杂更密切的分工合作。 |
团队博客链接 | 团队博客链接 |
任务1:对实验三作业互评并完成以下要求
(1)对博文作业进行阅读,并结合评分要求进行评论,评论要点包括:博文结构、博文内容、博文结构与PSP中“任务内容”列的关系、PSP中“计划共完成需要的时间”与“实际完成需要的时间”两列数据的差异化分析与原因探究,给出这个结对小组在进度计划方面可以提高的具体建议。将以上评论内容发布到博客评论区。
(2)克隆任务3项目源码到本地机器,阅读并运行代码,找出项目代码的5个以上bug,参照《现代软件工程—构建之法》4.4.3节核查表复审项目代码并记录。
(3)阅读《现代软件工程—构建之法》第12章内容,完成以下分析任务:
A. 体验任务3实现软件功能,简要描述软件的使用过程,上传使用软件的照片;
B. 总结任务3要求的功能软件解决了吗?软件在数据量/界面/功能上各有什么优缺点?对该软件产品功能有什么改进意见?
C. 从职业、学历、年龄、专业、爱好、收入等方面概括任务3所研发软件产品的典型用户群特征,他们表面需求,潜在需求是什么?
(4)经过(1)—(3)的工作,你们一定有充分的理由给评价作业选择一个结论: a) 非常不推荐 b) 不推荐 c) 一般 d) 好,不错 e) 非常推荐
(5)结合(1)—(3)的评论体会,迭代改进本小组实验三任务3。
-
被评论作业的博客链接(1分);
-
被评论作业的Github项目仓库链接(1分);
-
符合(1)要求的博客评论(10分);
博文结构
结构清晰,标题醒目,按照老师要求书写排版而成,从任务一至任务三均已达到标准。由于内容细分过多所以排版略显繁杂,但是整体而言主次分明,标题的放置加黑,内容的排序,使博文易读易懂。
博文内容
内容详实,细节饱满,看得出为了完成任务确实花了很多的心思,投入了比较大的精力。任务一引用了自觉重要和能引起共鸣的段落,并且为制定的代码风格提供了具体的示例,图文结合更能传递出内涵。任务二完成PSP相关文章阅读并掌握流程,建议代码核查表部分可以做得更松散利落一些,细密的文字可读性会变差。任务三针对需求分析、功能设计、设计实现、测试运行等部分进行了详细而准确的说明并配上了相应的截图和关键代码。
博文结构与PSP中“任务内容”列的关系
博文结构与PSP中“任务内容”列并不完全对应,可以看得出PSP是根据个人开发过程中的具体过程进行填写。
PSP中“计划共完成需要的时间”与“实际完成需要的时间”两列数据的差异化分析与原因探究
实际完成需要的时间与计划共完成需要的时间大致相同,但整体而言计划时间始终短于时间完成时间,可以理解应当是在实验的过程中遇到了没有预料到的问题和麻烦,有可能是算法的错误也可能是耗时间的BUG,但能把两者的误差控制在一个比较小的范围内,也能看得出时间规划预估能力很强了。
-
符合(2)要求的代码核查表(10分);
----------概要部分---------- 代码是否符合需求和规范说明 符合 代码设计是否考虑周全 周全 代码可读性如何 清晰易读 代码容易维护吗 容易 代码的每一行都执行并检查过了吗 否 ----------设计规范部分---------- 设计是否遵循从已知的设计模式或项目中常用的设计模式 是 有没有硬编码或字符串/数字等存在 有 代码是否依赖于某一平台,是否会影响将来的移植 代码由python编写,可能会影响移植 开发者新写的代码是否用已有的Library/SDK/Framework中的功能实现?在本项目中是否存在类似的功能可以通过调用而不用全部重新实现? 是,用已有的Library/SDK/Framework中的功能实现 有没有无用的代码可以清除 有 ----------代码规范部分---------- 修改的部分符合代码标准和风格么 符合 ----------具体代码部分---------- 有没有对错误进行处理?对于调用的外部函数,是否检查了返回值或处理了异常? 已处理 参数传递有无错误,字符串的长度是字节的长度还是字符的长度,是从0开始计数还是从1开始计数 无错误,字符的长度,从0开始计数 边界条件是如何处理的?switch语句和default分支是如何处理的?循环有没有可能出现死循环? 通过前提分析推导边界条件 有没有使用断言(Assert)来保证我们认为不变的条件真的得到满足? 否 对资源的利用,是在哪里申请,在哪里释放的?有无可能存在资源泄露?有没有优化的空间? 自动申请释放,不会存在资源泄露,有优化的空间 数据结构中有没有用不到的元素? 有 ----------效能---------- 代码的效能(Performance)如何?最坏的情况是怎么样的? 效能一般,数据量过大可能会需要很长的运行时间而得不到结果 代码中,特别是循环中是否有明显可优化的部分? 无 对于系统和网络的调用是否会超时?如何处理? 如果超时,重新调用 代码可读性如何?有没有足够的注释? 结构清晰,但注释较少 ----------可测试性---------- 代码是否需要更新或创建新的单元测试 否 -
符合(3)要求总结:A(5分)、B(5分)、C(5分);
A:通过对方的github仓库讲项目克隆并下载到本地,然后安装相应的项目需要的软件,配置好环境运行即可。对方编程使用的语言为python。下面是使用软件的截图。
B:
1.对方的项目对于散点图的实现并不是很好,没有加入到项目的界面当中去,其余功能表现良好。2.对方的数据量与我小组的类似,如果容量过大就需要耗费很长的时间来进行处理,但如果是小容量的数据则可以比较轻易地进行运算。界面略显简陋冰冷,没有进行优化,作为用户来讲的话,得到的体验相对而言是不那么好的,但是功能实实在在地都得到了实现,所以如果对界面进行优化那么应当也是比较不错的作品。
C: 3.
职业 | 在校大学生或工作程序员 |
学历 | 专科或本科或本科以上 |
年龄 | 18+ |
专业 | 计算机相关 |
爱好 | 上网冲浪,自主学习 |
收入 | 0-8000 |
表面需求 | 学习计算机方面的知识 |
潜在需求 | 完成学业任务,增强自己的能力提高薪水 |