zoukankan      html  css  js  c++  java
  • 201771030102-常梦娇 实验四 软件项目案例分析

    项目 内容
    课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/nwnu2020SE
    这个作业要求链接 https://www.cnblogs.com/nwnu-daizh/p/12616341.html
    我的课程学习目标 (1)学习团队软件项目流程、团队成员协作要求(2)掌握敏捷流程原则及相关概念
    这个作业在哪些方面帮助我实现学习目标 (1)软件项目案例分析(2)团队成员协作交流
    结对方学号-姓名 201771030118-司绍斌
    结对方本次博客作业链接 https://www.cnblogs.com/iEason/p/12676143.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. 通过学习其他组的项目,我也找到了我们组在实验三中的一些问题,在定时提交和定时提醒的功能上做的不够完善。通过查询,觉得可以通过邮箱或者短信的方式实现,后面会进一步的完善。

    2. 没有明显的bug,可能在数据过多时查询的速度可能会慢一点,这个问题应该和本地数据库和电脑也有一定关系,如果配置在服务器上应该会有所改善,希望有机会可以部署上去试试。


    任务二:

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

    学习过程展示:

    学习成果展示:

    1. 软件项目团队的特点

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

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

    2. 软件团队的模式

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

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

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

    (4) 社区模式:众人拾柴火焰高

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

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

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

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

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

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

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

    3. 渐进交付流程

    渐进交付流程是史蒂夫.迈克康奈尔在1996年总结的,但是它其实已经很接近现在大家谈论较多的迭代式开发流程。当系统的主要需求和架构明确之后,软件团队进入了一个不断演进的循环中。

    4. 瀑布模型

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

    5. TSP原则

    TSP原则主要有以下七点:

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

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

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

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

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

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

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

    6. 敏捷流程

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    学习总结:

    通过这次学习,我对软件团队的模式,团队开发流程,瀑布模型及其变形、渐进交付流程、敏捷流程等典型软件过程模型特点有了深入的认识与了解。对软件开发团队的分工也有了一定的了解,回想之前与结对伙伴在软件开发过程中遇到的问题,现在确实很有感触。我相信会在以后的团队合作中会发挥很好的作用。

    任务三:

    团队项目作业发布账号链接: https://www.cnblogs.com/lswz/default.html?page=1

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

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

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

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

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

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

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

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

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

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

    1. 项目团队中的所有成员都有详细的分工安排,都能各司其职,认真完成属于自己的任务;

    2. 项目团队中各成员分配的工作量十分均衡,各占25%,是十分公平且高效的;

    3. 项目有团队各成员在任务明确后都为自己制定了较为实际的计划,然后根据计划完成任务;

    4. 项目团队成员对于新技术的学习能力较强,自我管理能力也较强;

    5. 项目团队成员在项目完成后都对自己在完成项目时的表现进行了深刻的总结。

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

    团队项目github仓库的源代码不包含代码规范文档,但是有测试计划,会议报告,维护手册等文档。

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

    1.运行截图

    2.使用体验

    这个项目的前端界面设计的十分美观、大方,包括配色、布局都设计的很好,运用HTML、CSS、JS、JQ等前端技术把一些小细节处理的很到位,使很多基本功能得到了实现,整体结构清晰,有较好的用户体验。可是整个项目没有后台支持,也没有连接数据库,使得一些功能得不到使用,会降低体验感。

    3.严重的功能性bug

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

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

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

    该团队项目值得开发,具体原因如下:

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

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

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

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

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

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

    通过本次跟踪、检测别人的实验项目,深刻感觉到了自己的不足之处。检验别人的代码其实也是一个自我学习的过程,跟踪别人的代码,会发现自己在编程上的一些不好的习惯,从而纠正自己的代码规范。现在越发意识到了代码规范的重要性,在以后的开发学习中会逐渐改正。
    通过阅读《现代软件工程—构建之法》5-6章,我对于软件项目团队的特点和模式有了一定的理解,也更加深入的了解了一些软件过程模型。

  • 相关阅读:
    每天一个linux命令(54):sftp命令
    每天一个linux命令(53):wget命令
    每天一个linux命令(52):scp命令
    每天一个linux命令(51):rcp命令
    每天一个linux命令(50):telnet命令
    每天一个linux命令(49):ss命令
    每天一个linux命令(48):netstat命令
    每天一个linux命令(46):ping命令
    Springmvc常见问题
    MP实战系列(十)之SpringMVC集成SpringFox+Swagger2
  • 原文地址:https://www.cnblogs.com/cybc/p/12675993.html
Copyright © 2011-2022 走看看