201871030109-韩诚 实验四 团队作业1:软件研发团队组建

项目 内容
课程班级博客链接 课程班级博客链接
这个作业要求链接 作业要求链接
团队名称 佩奇小分队
团队的课程学习目标 1、通过团队项目学习软件工程
2、通过团队项目对软件开发有更深的认识
3、通过团队项目学习GitHub的一些团队操作
4、通过团队项目体会团队合作的优势
这个作业在哪些方面帮助团队实现学习目标 1、通过对完成质量较高的小组项目进行克隆并查找bug,对背包问题有了更深的理解;
2、通过团队合作学习对软件工程课程有更深的认识
3、明白了团队合作开发对软件项目的帮助;
4.、理解了一个团队中目标统一的重要性;
团队博客链接 团队博客链接

任务1:浏览班级博客园中提交《实验三 软件工程结对项目》作业

  • 对博文作业进行阅读,并结合评分要求进行评论

    评论博客链接:201871030110-何飞 实验三 结对项目—《D{0-1}KP 实例数据集算法实验平台》项目报告

    克隆仓库链接:GitHub仓库链接

  • 运行截图

  • 项目bug

    1. 回溯算法求解过程太长,时间复杂度较大;

    2. js、css、html接口存在问题,运行时出现错误;

    3. 绘制散点图时点较多时难以区分,点的面积较大;

  • 项目复审核查表

    复审核查项 评价
    代码能符合需求和规格说明么?
    代码设计是否有周全的考虑?
    代码可读性如何? 较好
    代码容易维护么? 容易维护
    代码的每一行都执行并检查过了吗?
    设计是否遵从已知的设计模式或项目中常用的模式?
    有没有硬编码或字符串/数字等存在?
    代码有没有依赖于某一平台,是否会影响将来的移植(如Win32到Win64)?
    在本项目中是否存在类似的功能可以调用而不用全部重新实现?
    有没有无用的代码可以清除? 没有
    修改的部分符合代码标准和风格么(详细条文略)? 符合
    有没有对错误进行处理? 没有
    参数传递有无错误? 没有错误
    循环有没有可能出现死循环? 没有
    有没有使用断言(Assert)来保证我们认为不变的条件真的满足? 没有
    有没有可能导致资源泄露? 有可能
    数据结构中是否有无用的元素?
    代码中,特别是循环中是否有明显可优化的部分?
    对于系统和网络调用是否会超时?
    代码是否需要更新或创建新的单元测试?
  • 阅读《现代软件工程—构建之法》第12章内容,完成以下分析任务:

    1. 体验任务3实现软件功能,简要描述软件的使用过程,上传使用软件的照片;

    1. 总结任务3要求的功能软件解决了吗?软件在数据量/界面/功能上各有什么优缺点?对该软件产品功能有什么改进意见?

      • 界面美化还有待提高,功能完善,看直播时会出现卡顿。

      • 数据处理简单有效,值得学习,但是界面友好程度不足,还有待优化;

      • 改进界面的友好程度,减少广告弹出次数;

    2. 从职业、学历、年龄、专业、爱好、收入等方面概括任务3所研发软件产品的典型用户群特征,他们表面需求,潜在需求是什么?

      • 职业:学生
      • 学历:大学三年级
      • 专业:无限制
      • 爱好:喜欢游戏,及其相关周边
      • 收入:无要求
      • 表面需求:游戏服务,游戏辅助。
      • 潜在需求:购买需求,后续DLC购买需求,软件需求
  • 经过(1)—(3)的工作,你们一定有充分的理由给评价作业选择一个结论:

    • [√] 推荐
  • 结合(1)—(3)的评论体会,迭代改进本小组实验三任务3。

    • 算法复杂度较高,对于时间复杂度可以通过减少无用变量等方法降低时间、空间复杂度
    • 界面的友好程度可以继续改进
    • 学习克隆小组的数据处理方法,降低复杂度
    • 完善自己团队的要求功能

任务二:团队组建

  • 团队共有的特点
    1、具有共同的最终目标和短期目标

    和优秀的团队接触,你会发现,团队中每一成员都了解团队为什么而存在、要取得什么样的成就,要达成的最重要的成果和目标是什么,最关键的是他们知道为什么要制定这样的目标和成果。

    2、具有共同的价值观

    优秀的团队中的每一个人都非常清晰整个团队的基本原则和遵循的价值观是什么。而且团队的价值观不是口号,而进行详细描述过的单一行为动作,这些行为都是每一个团队成员所认可的,不是只有领导认可的。团队中的每一个人都按照价值观来做事。
    

    3、具有共同的行动计划

      优秀团队的成员彼此都了解其他人都负责什么工作、做事的优先顺序以及工作计划。正因为他们的行动计划是共享的,所以他们的合作是很融洽的,他们为了完成工作计划,都会相互提醒、协作,因此他们每个人都会积极主动地完成自己负责的工作,同时还会为其他成员提供支持和帮助。这样团队的工作完成的就会很有效率,也会很少犯错。
    

    4、团队领导具有领导力

      一个优秀的团队领导,都是具有高度责任心的,他总是为团队成员提供最有力的后勤保障和支持。总是不断的扮演“指挥者”和“拦网队员”。他不断的帮助团队成员协调资源,用一切可能的、最佳的方法,帮助团队成员清除障碍。他具有高度的敬业精神、奉献精神。
    

    5、团队经常进行评估与表扬

      优秀的团队会经常进行评估,因为他们都想取得成功,把工作做好。当团队中某个成员不能完成所负责任务时,他们总会开诚布公地处理,不断的修正工作计划和工作方法。而且团队是以表扬多与批评的氛围来运转的。在团队中更多的是鼓励,而不是打击。
    
  • 软件团队的模式
    1、先锋式领导

    这种领导模式是领导人站在前头指导、激励他的团队跟上来。他只考虑自己的力量,试图通过榜样灌输给其他成员同样的品质。他希望团队成员跟着自己,同他一起战斗,具有他的活力和观点,按照他的标准办事。如果团队成员不那么做,他就感到挫折、失望、孤立无援。他只埋怨他们不跟,而不研究自己的选择和期望。

    先锋领导可能效率很高,能够实现目标,形成很好的团队形象与风气,积极的以及互相关心的成员关系。有些情况下先锋模型就不合适了。领导人高高在上,不按大家的要求领导,只能导致挫折、不满、竞争、冲突。

    2、资源式领导

    资源式领导是现代主义领导人的做法,他从后面领导,估计团体内有多少资源可用,根据薄弱环节规定领导为填补差距应做什么工作。资源式领导人将为团体的利益压制个人的要求。这样做即保证团体有控制,又令其他成员得以充分贡献才能。但在一个没有活力、死气沉沉的团队中,资源式领导往往不能很好的激励团队成员,从而会无所作为,加上团队成员的成熟度不同,不能单独以一种方式来领导团队。

  • 队名;

    • 佩琪小分队
      img
  • 团队成员组成,按以下列表形式给出,个人博客地址需加超链接,在备注中标记团队组长(PM);

    成员学号 成员姓名 个人博客地址 备注
    30109 *诚 https://www.cnblogs.com/hc82/ 组长
    30133 *作朝 https://www.cnblogs.com/zuochao/ 开发
    30140 *婷婷 https://www.cnblogs.com/ztt0808/ 文档
    30118 *云云 https://www.cnblogs.com/lyy-942 测试
  • 成员风采:介绍每位队员的风格、擅长技术、编程兴趣、希望的承担的软工角色(文档、开发、测试、PM等)、一句话宣言等;

    成员 风格 擅长技术 编程兴趣 希望承担的软工角色 宣言
    *诚 动手能力较强,善于沟通,乐于交际 python 爬虫 PM 我曾踏足山巅,也曾进入低谷,二者都让我受益良多
    *作朝 认真严谨,韧性十足,有较强的团队精神 python python 开发 只要路是对的,就不怕路远
    *婷婷 积极向上,善于思考,有较强的上进心,具有吃苦耐劳的精神,做事细心谨慎,责任心强。 Python web前端 文档 人生在勤,不索何获
    *云云 仔细认真,积极主动,性格开朗,待人友好,良好的沟通能力 python python 测试 两粒种子,一片深林
  • MSF(Microsoft Solution Framework):微软解决方案框架,也就是微软推荐的软件开发方法。

    • 9点基本原则
      1. 推动信息共享与沟通(Foster open communications)
      2. 为共同的远景而工作(Work toward a shared vision)
      3. 充分授权和信任(Empower team members)
      4. 各司其职,为项目共同负责(Establish clear accountability and shared responsibility)
      5. 交付增量的价值(Deliver incremental value)
      6. 保持敏捷,预期和适应变化(Stay agile,expect and adapt change)
      7. 投资质量(Invest in quality)
      8. 学习所有的经验(Learn from all experiences)
      9. 与顾客合作(Partner with internal and external customers)

任务3:完成《实验四 团队作业1:软件研发团队组建》博文作业

  • 记录完成《实验四 团队作业1:软件研发团队组建》各项任务实际花费的时间;:

    任务 完成时间(min)
    任务一 120
    任务二 40
    任务三 60

任务4:总结

本次团队学习任务是在之前结对小组的基础上两两组合而成。多了一倍的人,并不像是“人多了,事就好办了”,人多固然有人多的好处,但也伴随着相当的弊端。人数多的优势在于,任务划分能够更加细致,每个人的任务可以减小一些。但如何根据每个人的能力划分这不是一朝一夕就能够做到的,并且我们以总分总的学习方式分析本次案例,一旦有个别成员分配的任务完成较慢,那整个团队的进度就慢了下来。

团队学习比起小组来说最大的优势就是能够多角度看待问题,每个人思考同一个问题时就有四个不同的看法,而以小组学习时,两个人的想法是很有可能重复的,而且一个人容易受另一个强势的人的影响而导致失去自己的主见。经过这次团队学习,我们相信在以后的团队任务中,分工合作会越来越好。

posted @ 2021-04-21 10:01  ThreeTea  阅读(47)  评论(0编辑  收藏  举报