201771030118-司绍斌 实验四 软件项目案例分析

项目 内容
课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE
作业要求链接 https://www.cnblogs.com/nwnu-daizh/p/12616341.html
我的课程学习目标 1.学习团队软件项目流程(TSP)与团队成员协作要求; 2.掌握敏捷流程原则及相关概念。
作业对我实现学习目标的帮助 1.掌握团队项目开发的大致流程与相应的要求; 2.学会阅读及部署其他的项目,从别人的代码和合作中学到更多
结对方学号-姓名 201771030102-常梦娇
结对方本次博客作业链接 https://www.cnblogs.com/cybc/p/12675993.html

任务一:

  • 案例作业博客链接:https://www.cnblogs.com/viqt/p/12588543.html

  • 案例作业项目仓库链接:https://github.com/Gu19901212/Partner

  • 符合(1)要求的博客评论:

  • 符合(2)要求的系统运行截图、软件功能总结(15分);附加分要求:若测试发现案例代码存在bug,截图为证,一个bug得2分,本次作业附加分最高不超过10分:

    1. 克隆项目到本地:

    2. 系统运行截图:

    3. 软件功能总结:

      本系统整体来说没有太大的问题,网页前端简洁大方,基本功能已经实现,附加功能没有实现,整体来说时候一个优秀的项目。

  • 测试发现案例代码存在bug:

    1. 不知道是我的电脑问题,还是有些文件的路径有问题,有的页面打开的时候没有样式,有的刷新几次才能看到:

    2. 中文注释是乱码的情况,可能是用的编码格式不一样:

    3. 有些页面之间不能相互跳转,可能是页面重定向有问题:

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

    1. 通过学习其他组的项目,我也找到了我们组在实验三中的一些问题,在提醒学生和老师按时提交的功能上做的不够完善,没有附加功能的提醒功能。后来通过查询,觉得可以通过邮箱或者短信的方式进行提醒,正在进一步完善中。
  1. 没有明显的bug,可能在数据过多时查询的速度可能会慢一点,这个问题应该和本地数据库和电脑也有一定关系,如果配置在服务器上应该会有所改善,希望有机会可以部署上去试试。

任务二:

我们先进行了自主学习,自己阅读课本,然后对知识点进行总结,整理成一个文档,发给对方进行阅读,比较和自己理解的那些方面有差距,在进行讨论分析。

  • 学习过程展示:

  • 学习成果展示:

    1. 软件项目团队的特点:

      (1). 团队有一致的集体目标,团队要一起完成这个目标。

      (2). 团队成员有各自的分工,互相依赖合作,共同完成任务。

    2. 瀑布模型:

      瀑布模型是将软件生存周期的各项活动规定为按固定顺序而连接的若干阶段工作,形如瀑布流水,最终得到软件产品。1970年温斯顿·罗伊斯提出了著名的“瀑布模型”,直到80年代早期,它一直是唯一被广泛采用的软件开发模型。按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。  

    3. 敏捷流程:

      在软件工程中“敏捷流程”是指一系列价值观与方法论的集合。

      敏捷流程遵循以下开发原则:

      (1). 尽早并持续地交付有价值的软件以满足顾客需求;

      (2). 敏捷流程欢迎需求的变化, 并利用这种变化来提高用户的竞争优势;

      (3). 经常发布可用的软件,发布间隔可以从几周到几个月,能短则短;

      (4). 业务人员和开发人员在项目开发过程中应该每天共同工作;

      (5). 以有进取心的人为项目核心,充分支持信任他们;

      (6). 无论团队内外,面对面的交流始终是最有效的沟通方式;

      (7). 可用的软件是衡量项目进展的主要指标;

      (8). 敏捷流程应能保持可持续的发展。领导、团队和用户应该能按照目前的步调持续合作下去;

      (9). 只有不断关注技术和设计,才能越来越敏捷;

      (10). 保持简明————尽可能简化工作量的技艺————极为重要;

      (11). 只有能自我管理的团队才能创造优秀的架构、需求和设计;

      (12). 时时总结如何提高团队效率,并付诸行动。

    4. TSP原则:

      TSP原则主要有以下七点:

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

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

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

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

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

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

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

    5. 软件团队的模式:

      (1)一窝蜂模式:一个欢乐而随意的模式

      (2)主治医师模式:首席程序员负责主要模块的设计与编码,其他成员从不同角度提供支持

      (3)明星模式:主治医师模式运用的极点,可以蜕化为明星模式

      (4) 社区模式:成员分布不受时间空间的限制,所有人根据喜好选择项目进行开发,一般不要求报酬;

      (5)业余剧团模式:没有固定的团队,且成员在不同的项目中没有固定的工作分配

      (6 秘密团队:秘密状态下进行,无外界干扰

      (7)特工团队:由有特殊技能的专业人士组成

      (8)交响乐团模式:较多大型软件公司采用

      (9)爵士乐模式:不靠谱且人少

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

      (11) 官僚模式:这种模式脱胎于大机构的组织架构,几个人报告给一个小头目,几个小头目报告给中头目,依次而上

  • 学习总结:

    通过这次学习,我对软件团队的模式,团队开发流程,敏捷流程开发以及敏捷的团队有了深入的了解。让我对团队开发的过程及分工合作有了进一步的认识,同时明白了一个优秀的项目需要一个优秀的团队的道理,这让我在以后的团队合作中会发挥很好的作用。让我有了一定的理论基础,为以后运用到项目中打下了良好的基础。

任务四:

  • 团队项目作业发布账号链接:https://www.cnblogs.com/lswz/

  • 团队项目仓库github链接:https://github.com/TheOnelswz/TheOneWork9

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

    1.在三所高校的软件工程课程中第一个想要选择的就是本校,总是感觉更加亲切一些。

    2.选择该团队项目是因为他们的名字《The one团队》比较吸引人。

    3.所有的团队项目中,这一个团队的项目我们较为感兴趣,比较贴*我们*时的生活。

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

    该项目团队共有4人,团队分工情况在前期文档编写阶段与后期编码测试阶段不同。具体分工合作情况如下:

    姓名 团队成员分工情况
    李晓雪 管理员模块代码编写,博文撰写、燃尽图、会议报告
    孙欢灵 数据库代码编写,学习黑盒测试技术,项目验收过程表
    曾佳 家教教师模块及家长模块代码编写,项目开发总结文档,用户手册撰写
    王晶 家教教师模块及家长模块代码编写,项目周报,项目维护手册撰写
  • 结合项目系列博客文档,评价项目的软件项目过程特点(TSP):

    从项目博客来看,该项目的过程特点主要有以下几点:

    1. 项目团队中的所有成员都有详细的分工安排,都能各司其职,认真完成属于自己的任务;
    2. 项目团队中各成员分配的工作量十分均衡,各占25%,是十分公*且高效的;
    
    3. 项目有团队各成员在任务明确后都为自己制定了较为实际的计划,然后根据计划完成任务;
    
    4. 项目团队成员对于新技术的学习能力较强,自我管理能力也较强;
    
    5. 项目团队成员在项目完成后都对自己在完成项目时的表现进行了深刻的总结。
    
  • 观察该团队项目github仓库的源代码文件结构,是否包含代码规范文档?

    没有代码规范文档,但是有测试计划,会议报告,维护手册等文档。

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

    1. 运行成功截图:

    2. 使用体验:

      整体来看这个项目前端界面设计很美观,基本功能得到了实现,整体结构清晰,有较好的用户体验。前端采用JQuery插件,特效及用户交互都做的很好。

    3. 严重的功能性bug:

      (1)没有数据库,导致登录及注册用户没有办法用:

      (2)整体没有后台,所有预约功能,后台查看都不能使用:

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

    1. 目前家教市场非常广泛,需求量很大,而正规的网页预约缺不多,有一定的市场需求。

    2. 目前项目前端部分已经基本完成,如果再编写一个良好的后台,再将前后端进行整合,会是一个比较出色的项目。

    3. 作为师范类学校,可以在学校进行推广,让更多学生有机会去进行兼职。

TSP:

内容 耗时
任务一 8小时
任务二 2小时
任务三 5小时
任务四 2小时

总结:通过此次实验,我学会了团队合作的模式以及敏捷流程的原则和过程。也通过阅读别人的代码和查看别的团队的合作,更加理解了团队之间的合作的重要性,让我在以后的实践中获得了更多的经验。

posted @ 2020-04-10 21:07  iEason0727  阅读(241)  评论(2编辑  收藏  举报