• 201771010123-汪慧和 实验四 软件项目案例分析


    项目 内容
    课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE
    作业要求链接 https://www.cnblogs.com/nwnu-daizh/p/12616341.html
    我的课程学习目标 (1)学习团队软件项目流程(TSP)、团队成员协作要求。(2)掌握敏捷流程原则及相关概念。
    这个作业在哪些方面帮助我实现学习目标 这次作业进一步提升了我的合作意识,通过运行其他组的项目,我更加深刻的认识了实验三
    结对方学号-姓名 201771010136-杨野
    结对方本次博客作业链接 https://www.cnblogs.com/2017xinghui/p/12664648.html

    任务1:在实验三得分100分以上作业中,任选一份作为案例,对案例项目成果进行评价。

    实验三优秀案例推荐:李婷华&王颖奇组

    1、对案例博文作业进行阅读并进行评论,评论要点包括:博文结构、博文内容、博文结构与PSP中“任务内容”列的关系,并将以上评论内容发布到案例作业的博客评论区。


    2、案例作业项目仓库链接

       https://github.com/wyq1998/System-second

    3、案例作业博客链接;

       https://www.cnblogs.com/litinghua/p/12534838.html
       https://www.cnblogs.com/1556889081wyq/p/12546166.html

    4、克隆案例项目源码到本地机器,阅读项目代码规范文档并运行代码,总结代码运行中存在的问题,体会案例博文是否有助于项目代码理解。

    (1)下载该组到本地进行测试。


    (2)项目规范说明文档

    System-second
    项目代码规范说明
    1、包名使用小写英文字母
    2、接口类中的方法和属性不要加任何修饰符号(public也不要加),保持代码的简洁性
    3、获取单个对象的方法用get做前缀
    4、插入的方法用save(推荐)或insert做前缀
    5、删除的方法用remove(推荐)或delete做前缀
    6、如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果是非空代码块则:
      左大括号前不换行
      左大括号后换行
      右大括号前换行
      右大括号后还有else等代码则不换行;表示终止右大括号后必须换行
    7、缩进采用4个空格,禁止使用tab字符
    8、一行代码不超过120个字符
    9、遇到其他同行可能不易看懂的内容时,在代码上一行使用“//”进行注释
    10、声明字符串常量:命名不不可以英文和拼音混合使用
    11、一行声明一个变量
    12、在对变量命名时,避免过多的描述
    13、避免可要可不要的修饰
    14、按照如下顺序来说明类中的成员:public、protected、private
    15、检查new的返回值
    16、释放指针时不用检查NULL
    (3)运行代码及结果如下
      1)导入项目到自己的eclipse

      2)运行界面

      3)学生登录

      4)学生填写信息

      5)登录防控办

      6)删除信息

      7)查询

      8)感染人数统计图


    (4)总结本组实验三博客作业及代码设计存在问题与不足,列举代码中存在的bug,未实现的功能等等。
      1)填写错误信息不会提示
      。填写上报信息,信息填写不符合要求未报错,导致数据库未更新

      。正确填写信息,数据库出现相应的数据


      2)删除信息点某一行,显示删除成功,但没有删除,必须把信息重新输入一遍才可以删除
      。删除一行信息,显示删除成功,但没有成功

      。输入后删除才成功

      3)提醒功能,输入提醒时间之后并没有提醒

      4)github上未上传数据库文件

      5)可以插入空数据,没有对数据进行检查

      6)登录相关界面时必须用同一个账号,而不是独立账号,这样会造成安全问题。

    以上是我找到的bug,也可能是由于我的运行测试方法有问题,若有更正的请在博客下面评论,我会及时修改。总体来说,很欣赏他们组的项目,页面、功能都设计的很全面,很值得我们学习。

    任务2:与实验三结对伙伴协作学习:阅读《现代软件工程—构建之法》第5-6章内容,理解并掌握软件项目团队的特点、了解软件团队的模式、结合理论课学习内容理解瀑布模型及其变形、渐进交付流程、敏捷流程等典型软件过程模型特点,理解并体会卡内基梅隆大学(CMU)软件工程学院总结的TSP原则;

    软件项目团队的特点

      (1)团队有一致的集体目标
      (2)团队成员各自又自己的分工,互相依赖合作,共同完成任务

    软件团队的模式

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

    瀑布模型及其变形

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

    渐进交付流程

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

    卡内基梅隆大学(CMU)软件工程学院总结的TSP原则

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

    博客作业中针对任务2的评分要点:提供两人讨论任务2学习内容的微信或QQ截图,要求截图美观。



    任务3:在班级博客园,有很多高校的软件工程课程要求同学们完成团队项目,请与实验三结对伙伴协商,在以下三个班级中选择一个高质量的团队项目案例进行协作学习,要求追踪该团队项目发布所有博客作业,下载项目软件代码。

    1. 2016级计算机科学与工程学院软件工程 (西北师范大学)
    2. 2019秋福大软件工程实践Z班 (福州大学)
    3. 2019春季计算机学院软件工程 (北京航空航天大学)
      本次选择2019春季计算机学院软件工程 (北京航空航天大学)

    团队项目作业发布账号链接;

    https://www.cnblogs.com/PureMan6/p/10895058.html

    团队项目仓库github链接;

    https://github.com/swearitagain/EduCnblogs2.0

    陈述你选择该团队项目进行分析的理由;

      作为一个用户来说,我想有一个下载就可以用的软件,下载的apk然后安装使用就是一个正常的流程。或者访问一个微信小程序,或者在网页端就可以访问。在选择的是候发现许多网页端,或者小程序端都不能访问,所以选择了这个可以下载的手机上的博客园。

    结合项目系列博客文档,总结项目团队成员的分工合作情况:

      博客撰写:邵旭哲
      开发者:蒋锋,陈治齐,胡俊崧
      测试人员:吴枫:
      组织者:吴昊

    结合项目系列博客文档,评价项目的软件项目过程特点(TSP);

    使用了妥善定义的流程,流程中的每一步都是可以重复、可以衡量结果的;团队的各个成员对团队的目标、角色、产品都有统一的理解;使用了成熟的技术和做法;制定了切合实际的计划和承诺;。

    观察该团队项目github仓库的源代码文件结构,是否包含代码规范文档?

      包含代码规范文档,如下图所示:

    下载团队项目代码,尝试部署项目运行环境并使用软件,描述最简单直观的使用体验,找出至少两个比较严重的功能性bug,在博客中展示截图








    遇到的问题和bug

    (1)没有显示自己以前交过的作业以及评分。

    (2)未显示加入的班级的图标以及自己以前加入的班级。

    (3)会提示“身份信息过期,请重新登录”和“网络请求失败,请稍后再试”,但是依然可以进行所有的操作。

    评价该团队项目是否值得继续开发,并陈述理由?

      我认为值得继续开发,学计算机的很多人遇到困难都比较喜欢CSDN、博客园以及github,当然其他专业的也会用到,所以说这样的平台是很受欢迎的,尤其是上传高质量的博文会让用户喜欢这个平台,有市场有前景。该团队的项目还有很多可以改进的地方,可以考虑继续优化,到可以独立的投入运行。

    任务4:完成《实验四 软件项目案例分析》博文作业

    1、记录完成《实验四 软件项目案例分析》各项任务实际花费的时间;

    任务 实际花费的时间(h)
    任务1 3
    任务2 2
    任务3 7
    任务4 3.5

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

      我从本次作业中学到了很多,学习了同样的任务其他组是怎么做的,意识到了自己项目的不足,在以后的项目中也会借鉴其他组的亮点。此外,通过学习了软件项目团队的特点、软件团队的模式、瀑布模型及其变形、渐进交付流程、敏捷流程等典型软件过程模型特点以及TSP原则。学习了别人的代码,让我深刻的意识到了代码规范的重要性,一个优秀的程序除了要有良好的功能还要有注释文档,这样才易于阅读,在今后的学习中,我会更加规范的写代码,以及添加相应的注释。

  • 相关阅读:
    visual studio disable git
    app常见性能测试点
    App测试流程及测试点(个人整理版)
    APP测试要点
    APP端测试常见的功能点
    一文搞懂性能测试常见指标
    为什么会有生产bug?
    线上出了bug,是谁的责任?
    生产上线发现重大Bug的思考
    项目上线后出现Bug,该如何处理?
  • 原文地址:https://www.cnblogs.com/http-www-whh0601-cnblogs-com/p/12659482.html
Copyright © 2020-2023  润新知