• 201871010123-吴丽丽 实验四 团队作业1:软件研发团队组建--个人博客


    201871010123-吴丽丽 实验四 团队作业1:软件研发团队组建--个人博客

    项目 内容
    课程班级博客链接 班级链接
    这个作业要求链接 作业要求链接
    团队名称 upower团队
    团队的课程学习目标 1.组建软件团队,了解团队是如何进行运行、工作的
    2. 提升自身能力,为团队贡献自身力量
    这个作业在哪些方面帮助团队实现学习目标 1.通过阅读《构建之法》这本书来让我了解了什么是团队,团队应该如何进行开展工作
    2.通过阅读完成质量较高的项目小组的代码,了解其思想,进行代码复审,进而提高自身能力
    团队博客链接 团队博客

    一、实验目的与要求

    (1)实验三作业互评。

    (2)组建软件项目研发团队。

    二、实验内容与步骤

    任务1:浏览班级博客园中提交《实验三 软件工程结对项目》作业,任选一个你认为完成质量较高的小组项目成果,继续以实验三结对学习方式完成以下任务,具体要求如下:

    项目 内容
    被评论作业的博客链接 https://www.cnblogs.com/1763088787h/p/14656485.html
    被评论作业的Github项目仓库链接 https://github.com/budinge/Exercise-homework1.git

    (1)对博文作业进行阅读,并结合评分要求进行评论,评论要点包括:博文结构、博文内容、博文结构与PSP中“任务内容”列的关系、PSP中“计划共完成需要的时间”与“实际完成需要的时间”两列数据的差异化分析与原因探究,给出这个结对小组在进度计划方面可以提高的具体建议。将以上评论内容发布到博客评论区。

    • 完成情况:已完成评论,评论内容截图如下:

    (2)克隆任务3项目源码到本地机器,阅读并运行代码,找出项目代码的5个以上bug,参照《现代软件工程—构建之法》4.4.3节核查表复审项目代码并记录。

    • 情况说明:不知道是网络的原因还是什么,经常进不去那个github仓库,如图所示:,后点击代码下载,进行下载,发现其文件里没有相应的代码,可能是其未上传成功,后通过寻找那位同学,让其发送其对应的文件过来,才可进行阅读并运行代码

    • 找出来的bug

      • 绘制散点图更新不及时,有浏览器缓存
      • 回溯算法求解过程太长,用户体验不是很友好
      • 没有算法测评报错信息,用户提交成功后需要长时间等待
      • 在无工作人员的介绍下,用户不能轻松的运行其该项目
      • 算法求解时间过长,时间复杂度高

    代码复审的核查表如下:

    复审部分 复审情况说明
    1.概要部分 (1)代码基本符合要求
    (2)代码设计虽然已经实现了一些功能,但是考虑不够周全,其未将用户的一些需求考虑进去,如能够嵌入其他算法,其相对应的遗传算法未能实现
    (3)其交互性不是很好,算法运行时间长
    (4)代码可读性较好
    2.设计规范部分 (1) 设计遵从项目中常用的模式MVVC
    (2)无硬编码存在
    (3)代码依赖于浏览器页面用的PHP,服务器端是PYthon
    3.代码规范部分 修改的部分符合代码风格和规范
    4.具体代码部分 (1)对错误没有进行一些处理
    (2)参数传递无错误,字符串的长度是以0开始计数
    (3) 未看到其对边界条件进行处理
    (4)没有使用断言
    5.效能 (1)代码的一些效能还行,就是算法运行时间长
    (2) 没有对算法进行优化
    6.可读性 (1)代码的可读性还行,易读,能够让让知道函数的功能(2)注释有点少,不易于非专业人士进行解读
    7.可测试性 针对数据库的开发没有整理专门的核查表

    (3)阅读《现代软件工程—构建之法》第12章内容,完成以下分析任务:
    A. 体验任务3实现软件功能,简要描述软件的使用过程,上传使用软件的照片;

    • 在软件体检过程中,后端需要安装的Python库有flash,以及flask需要的MYSQLdb,还有画图的Matplotlib等,需要部署相应的环境才可以将软件运行起来,在使用过程中发现其用回溯算法求解时间太长,没有算法测评报错信息,绘制散点图更新不及时等等,其运行结果未能以.txt或者.excel文件来呈现。
    • 使用软件的照片如下:


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

    答:任务3要求的功能软件基本实现了,其遗传算法没能够进行实现,软件在界面上设置得通俗易懂,易于用户使用,就是利用算法来进行求解背包问题时时间过长,用户需等待,我觉得可以对回溯算法进行适当的优化,减少时间复杂度,减少用户的等待时间。

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

    (4)经过(1)—(3)的工作,你们一定有充分的理由给评价作业选择一个结论: a) 非常不推荐 b) 不推荐 c) 一般 d) 好,不错 e) 非常推荐

    答:经过我自身使用,发现其有点麻烦,不利于用户体验,所以我给的结论是c).

    (5)结合(1)—(3)的评论体会,迭代改进本小组实验三任务3。

    任务2:团队组建

    1.在实验三结对基础上,结对小组两两自由组合,组建软件项目研发团队;

    • 已根据小组情况,决定与石欣钰、马北这一小组来一起组建软件项目研发团队

    2.申请开通团队博客,点击以下链接提交团队信息,将团队博客加入到班级博客;(3分)

    3.阅读《现代软件工程—构建之法》第5章内容

    第5章内容主要介绍:团队和流程
    a.软件项目团队的特点
      (1)团队有一致的集体目标
      (2)团队成员各自又自己的分工,互相依赖合作,共同完成任务

    b.软件团队的模式
      (1)一窝蜂模式:最初的一窝蜂形式的软件团队模式,经过一段时间的演变将转变为其他模式;
      (2)主治医师模式:首席程序员负责主要模块的设计与编码,其他成员从不同角度提供支持;
      (3)明星模式:主治医师模式运用的极点,团队“明星”的能力掩盖了团队所有人的缺陷与优点;
      (4)社区模式:成员分布不受时间空间的限制,所有人根据喜好选择项目进行开发,一般不要求报酬;
      (5)业余剧团模式:没有固定的团队,且成员在不同的项目中没有固定的工作分配,所有成员由“中央指挥”指示;
      (6)秘密团队:秘密状态下进行,无外界干扰,团队肩负独特使命,内部成员自由度与热情较高;
      (7)特工团队:团队由专业人士组成,负责一些紧急问题的解决;
      (8)交响乐团模式:较多大型软件公司采用,成员与领导者能力较强且有相似的项目开发经验,所有成员各司其职但统一受领导者指挥;
      (9)爵士乐模式:与交响乐团模式对立,较为松散,领导者完成框架,其他成员在此基础上创作,最后再由领导者收尾;
      (10)功能团队模式:没有固定的团队,由不同能力的成员进行组合,协作完成某一项目,项目完成后成员重新组织进行其它不同项目;
      (11)官僚模式:脱胎于大机构的组织架构,几人向小头目报告,小头目向大头目报告。容易形成恶性竞争。

    c.瀑布模型及其变形
      瀑布模型是一个经典的软件生命周期模型,也叫预测型生命周期、完全计划驱动型生命周期。在这个模型里,在项目生命周期的尽早时间,要确定项目范围及交付此范围所需的时间和成本。
      瀑布模型的变形有生鱼片模型和大瀑布带着小瀑布。

    d.渐进交付流程
      迭代式开发流程,当系统的主要需求和架构明确之后,软件团队进入了一个不断演进的循环中:
      开发——>发布——>听取反馈——>根据反馈做改进

    e.TSP原则:
    (1)使用妥善定义的流程,流程中的每一步都是可以重复、可以衡量结果的;
    (2)团队的各个成员对团队的目标、角色、产品都有统一的理解;
    (3)尽量使用成熟的技术和做法;
    (4)尽量多地收集数据(也包括对团队不利的数据),并用数据来帮助团队做出理性的决定;
    (5)制定切合实际的计划和承诺,团队计划要由负责具体执行的的角色来制定(而不是从上级而来);
    (6)增加团队的自我管理能力;
    (7)专注于提高质量,争取在软件生命周期的早期发现问题。最有效提高质量的办法是做全面而细致的设计工作(而不是在后期匆忙修复问题)。

    团队相关介绍见团队博客作业

    阅读《现代软件工程—构建之法》第7章、第17章,理解MSF的9点基本原则和团队成员绩效

    第7章的主要内容有:
    1.MSF的九点基本原则:

    2.介绍了MSF团队模型、MSF的过程模型还有实战中的软件工程

    第17章的主要内容有:
    1.领导力的要素:
    a.设定目标
    b.知人善任
    c.带领团队成长
    d.绩效管理
    2.绩效管理的几种方法
    3.介绍了RASCI模型

    4.团队成长的几个阶段:萌芽阶段、磨合阶段、规范阶段和创造阶段,还介绍了团队解决分歧的方法
    5.IEEE软件工程师的道德规范

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

    任务 完成时间(h)
    任务1 3
    任务2 5
    任务3 0.5

    谈谈完成本次作业的感受和体会。

    • 在本次作业中,我选择了一组完成质量较高的小组项目成果进行测试、复审,虽然他们没能将全部功能实现,还存在一些bug,但是相对于我们小组来说,他们已经完成得挺好的了,我们应该要向他们看齐,向他们学习。在阅读《构建之法》这本书时,我从中学会了挺多,了解到了什么是团队和非团队、TSP原则,以及绩效管理等各种关于团队的内容。在本次组建团队的时候,我们根据各自的特点来进行了组建,组建团队的时候我发现要想组建一个好的团队是不容易的,这需要下一定的功夫,我们要对每个团队成员都有一定的了解,每位成员都有各自的特色,通过组建团队,也让我从中更进一步的了解了自己的能力,也从中了解了自己还存在着许多不足之处,以后自己一定会多加注意的。
  • 相关阅读:
    jquery animate()方法 语法
    jquery unload方法 语法
    jquery undelegate()方法 语法
    jquery unbind()方法 语法
    jquery trigger() 方法 语法
    jquery toggle()方法 语法
    jquery change() 函数 语法
    jquery blur()函数 语法
    jquery bind()方法 语法
    jquery checked选择器 语法
  • 原文地址:https://www.cnblogs.com/lily-2018/p/14661111.html
Copyright © 2020-2023  润新知