zoukankan      html  css  js  c++  java
  • 201771010143-张云飞 实验四 软件项目案例分析

    项目 内容
    班级博客链接 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE/
    作业要求链接 https://www.cnblogs.com/nwnu-daizh/p/12616341.html
    我的课程学习目标 学习团队软件项目流程(TSP)、团队成员协作要求。掌握敏捷流程原则及相关概念。
    结对方学号-姓名 201771010139-张季跃
    结对方本次博客链接 /

    任务1:实验三优秀案例推荐:王艳&王玉兰


    案例作业博客链接:https://www.cnblogs.com/JAVA-729/p/12554359.html
    案例作业项目仓库链接:https://github.com/JAVAWY/MyDemo
    在实验三得分100分以上作业中,任选一份作为案例,对案例项目成果进行评价,具体要求如下:

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

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

    克隆代码:

    运行界面:

    填报信息:

    信息进入数据库:

    数据可视化:

    导出数据:

    定时提醒:

    (3)总结本组实验三博客作业及代码设计存在问题与不足,列举代码中存在的bug,未实现的功能等等。

    实验三博客作业:作业内容完善,未发现不足。

    代码设计存在问题与不足:GUI界面设计没有特点,使用起来比较乏味。

    代码中存在的bug:未发现。

    任务2:与实验三结对伙伴协作学习:


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

    软件团队的模式包括以下几种:

    (1)主治医师模式:一人为主,其他人为此人服务。

    (2)明星模式:主治医师模式到达极致,一人的光芒掩盖所有人。

    (3)社区模式:每个人参与自己感兴趣的项目,贡献力量,大部分人不拿报酬。

    (4)业余剧团模式:在不同项目中每个人扮演着不同的角色,可能随着项目的改变,自己的角色也会发生变化。

    (5)秘密团队模式:一些软件项目在秘密状态下进行,别人不知道他们具体在做什么。

    (6)特工团队模式:有一些有特殊技能的专业人士组成的团队。

    (7)交响乐团模式:人员工具齐全,准备充足的团队。

    (8)爵士乐模式:相对自由,有风险,人少且不靠谱。

    (9)功能团队模式:具备不同能力的同事们平等协作,共同完成一个功能。

    (10)官僚模式:层层领导的团队模式。

    团队的开发模式包括以下几种:

    (1)写了再改模式:和一窝蜂团队模式比较像。

    (2)瀑布模型及其各种变形。

    (3)RUP统一流程。

    (4)老板驱动的流程。

    (5)渐进交付的流程。

    (6)TSP的原则。

    TSP原则

    (1)使用妥善定义的流程,流程中的每一步都是可以重复的、可以衡量结果的;

    (2)团队的各个成员对团队的目标、角色、产品都有统一的理解;

    (3)尽量使用成熟的技术和做法;

    (4)尽量多的收集数据(包括对团队不利的数据),并用数据来帮助团队做出理性的决定;

    (5)制定切合实际的计划和承诺,团队计划要由负责具体执行的角色来制定(而不是从上级而来);

    (6)增加团队的自我管理能力;

    (7)专注于提高质量,争取在软件生命周期的早期发现问题。最有效提高质量的办法是做全面细而细致的设计工作(而不是在后期匆忙修复问题)。

    敏捷流程

      敏捷开发的高适应性,以人为本的特性。更加的灵活并且更加充分的利用了每个开发者的优势,调动了每个人的工作热情。

    讨论截图:

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


    1. 2016级计算机科学与工程学院软件工程 (西北师范大学)

    2. 2019秋福大软件工程实践Z班 (福州大学)

    3. 2019春季计算机学院软件工程 (北京航空航天大学)

    (1)团队项目作业发布账号链接:https://www.cnblogs.com/PureMan6

    (2)团队项目仓库github链接:https://github.com/swearitagain/EduCnblogs2.0

    (3)陈述你选择该团队项目进行分析的理由:

      这个团队的创意是让用户可以在手机app上直接使用博客园的一些功能,在原有的APP上面进行一部分功能的拓展。这与我们的软件工程学习方式不谋而合,在查询作业等方面很方便,很适合追踪。而且我对Android开发的东西都很感兴趣。

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

    团队成员贡献分分配规则

    人员分工细则:
                    
    邵旭哲:PM,主要负责所有博客撰写;
    
    蒋锋,陈治齐,胡俊崧:开发人员;
    
    吴枫:测试人员;
    
    吴昊:开发(任务没有其他开发人员那么多),负责开会。
    
    团队总则
    
    开会时,每位成员需要如实汇报自己的工作进度,虚报会造成团队进度不协调;
    
    每位成员需要将自己每天的工作以及遇到的问题等记录并提交issue,并上传给pm;
    
    出现exception时需要在群内通知所有成员;
    
    贡献分的记录需要公开,所有人有权利提出异议。
    
    开发人员准则
    
    开发人员需要保证将自己实现功能进行覆盖测试,在进行一定量的test之后再交付测试人员;
    
    开发人员需要将自己遇到的开发困难详细描述给PM,方便文档撰写;
    
    开发人员需要保证彼此的沟通,防止其中一人进度滞后。
    
    测试人员准则
    
    测试人员需要保证测试的全面性,产品发布后出现过多错误会有一定的惩罚;
    
    测试人员需要对开发人员实现的功能有一定的了解;
    
    测试人员需要将自己检测到的问题发布issue并上传给pm。
    

    PM准则

       1.需要保证文档的即时性,如果一段时间工作量太大,可以找协助人员分担。

      所有成员基础分数为50分,根据分配到的工作量进行调整基础分,最终统计分数时以300分为满分进行分数调整。

      分工明确合理,自我管理能力强,值得学习。

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

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

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

    没有包含代码规范文档

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

    使用体验:
        我认为该团队项目的选题还是比较新颖,并且各个界面和功能都实现的不错,这个软件应有的功能都有,并且最后的意见反馈功能是我认为最好的,整的来说挺不错的。

    功能性bug:

    (1)投票功能尚不完善:投票功能目前只能获取投票信息和展示投票详情,不能参与投票;

    (2)记住密码功能没有实现,每次退出都得重新输入密码。

    (8).评价该团队项目是否值得继续开发,并陈述理由:

    我认为该团队项目的选题还是可以的,附和一些在博客园学习的同学的需求,如果能够继续完善,是值得继续开发的。

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

    任务 花费时间(min)
    任务一 120
    任务二 400
    任务三 420
    任务四 100

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

    本次作业的重点在于学习软件项目案例分析,通过对两份实际的案例分析,以客户或者用户的角度去看在软件项目开发中存在的问题。同时我也掌握了软件开发中的不同的开发流程如:瀑布模型,渐进交付和敏捷流程。在今后的学习中我也会将这些知识融入到实际操作中,完善自己的专业知识,提升实战能力。同时通过学习其他团队的程序代码,使我也学习了很多新的知识,通过比较,我认识到了自己的不足,学习到了很多相关的知识和技巧,将来可以吸取经验,对于今后有关的学习任务积累经验。

  • 相关阅读:
    机器学习十四--深度学习-卷积
    机器学习十三——垃圾邮件分类2
    机器学习十二----朴素贝叶斯-垃圾邮件分类
    机器学习十一 ——分类与监督学习,朴素贝叶斯分类算法
    机器学习九----主成分分析
    机器学习八——特征选择
    基于D3.js 绘制一个折柱混合图
    一个轮播图
    贪吃蛇
    数组中哪些方法是响应式的
  • 原文地址:https://www.cnblogs.com/fairber/p/12677683.html
Copyright © 2011-2022 走看看