201971010118-梁春云 实验四 团队作业1 软件研发团队组建

项目 内容
课程班级博客链接 https://edu.cnblogs.com/campus/xbsf/2019nwnucs
这个作业要求链接 https://edu.cnblogs.com/campus/xbsf/2019nwnucs/homework/12578
在实现学习目标帮助 了解到团队分工合作的重要性;如何更好去和团队成员协作
团队的课程学习目标 (1)实验三作业互评;(2)组建软件项目研发团队
团队名称 团队9527
团队博客链接 https://www.cnblogs.com/tuandui01/
  • 任务一 浏览班级博客园中提交《实验三 软件工程结对项目》作业,任选一个你认为完成质量较高的小组项目成果,继续以实验三结对学习方式完成以下任务。
    (1)对博文作业进行阅读,并结合评分要求进行评论,评论要点包括:博文结构、博文内容、博文结构与PSP中“任务内容”列的关系。

    评论博客链接 内容
    杨凯 博文结构:层次明显,结构清晰,每个任务之间划分很清晰。博文内容:博文内容充实,对实验三的任务完成的很充分,包括对于具体的算法学习以及程序的设计与实现。博文结构与PSP中“任务内容”列的关系:博文的结构体现了从项目的需求分析-功能设计-设计实现-测试运行-总结分享的过程计划需要的时间”与“实际需要的时间”数据的差异化分析与原因探究:从PSP之中看出在具体的开发之中,实际完成所需要的时间比计划所需的时间要更多,猜测可能是在学习算法、处理在开发过程之中所遇到的问题。

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

    项目 内容
    1.概要部分
    代码符合需求和规格说明么? 符合需求和规格说明
    代码设计是否考虑周全? 基本周全
    代码可读性如何? 可读性高
    代码容易维护么? 容易维护
    代码的每一行都执行并检查过了吗? 检查过
    2.设计规范部分
    设计是否遵从已知的设计模式或项目中常用的模式? 遵从
    有没有硬编码或字符串/数字等存在? 有部分
    代码有没有依赖于某一平台,是否会影响将来的移植(如Win32到 Win64) 不影响移植
    开发者新写的代码能否用已有的 Library/SDK/Framework中的功能实现?在本项目中是否存在类似的功能可以调用而不用全部重新实现? 可以实现
    有没有无用的代码可以清除?
    3.代码规范部分
    修改的部分符合代码标准和风格么(详细条文略)? 符合
    4.具体代码部分
    有没有对错误进行处理?对于调用的外部函数,是否检查了返回值或处理了异常? 对错误进行了处理,处理了异常
    参数传递有无错误,字符串的长度是字节的长度还是字符(可能是单/双字节)的长度, 无错误,是以0开始计数
    边界条件是如何处理的? switch语句的default分支是如何处理的?循环有没有可能出 没有出现死循环,循环语句正确
    有没有使用断言(Assert)来保证我们认为不变的条件真的满足?
    对资源的利用,是在哪里申请,在哪里释放的?有无可能存在资源泄漏(内存、文件、各种GUI资源、数据库访问的连接,等等)?有没有优化的空间? 不会导致资源泄露
    数据结构中是否有无用的元素 没有
    5.效能
    代码的效能(Performance)如何?最坏的情况是怎样的? 程序运行正常,代码效能优秀。
    代码中,特别是循环中是否有明显可优化的部分(C++中反复创建类,C#中 string 的操作是否能用StringBuilder 来优化)?
    对于系统和网络调用是否会超时?如何处理? 不会超时
    6.可读性
    代码可读性如何?有没有足够的注释? 代码可读性好,有足够注释
    7.可测试性
    代码是否需要更新或创建新的单元测试?还可以有针对特定领域开发(如数据库、网页、多线程等)的核查表。

    (3)阅读《现代软件工程—构建之法》第12章内容,完成以下分析任务:
    简要描述软件的实验过程:首先运行程序,进入界面之后,通过下拉框选择算法,通过选择文件按钮查找需要输入的数据集,在保障数据集选择之后点击求最优解按钮来查找{0-1}背包问题的最优解,之后可以点击画散点图按钮来画出散点图,最后可以通过点击提交数据库按钮将数据提交到数据库之中。



    任务三要求的功能软件已解决。软件在界面方面简洁、清晰,在相应的功能上完整。

    从学历、年龄、专业、爱好、收入等方面概括实验三任务3所研发软件产品的典型用户群特征

    学历 年龄 爱好 专业 表面需求
    本科 19-24 算法学习 计算机类 解决{0-1}背包问题

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

  • 任务二 团队组建

    1. 在实验三结对基础上,结对小组两两自由组合,组建软件项目研发团队;
    成员学号 成员姓名 博客地址
    201971010118 梁春云 梁春云
    201971010121 李健康 李健康
    201971010131 李治江 李治江
    1. 申请开通团队博客,点击提交团队信息,将团队博客加入到班级博客;

    3.阅读《现代软件工程—构建之法》第5章内容
    (1)团队的特点:团队有一致的集体目标,团队要一起完成这目标。一个团队的成员不一定要同时工作,例如接力赛跑;团队成员有各自的分工,互相依赖合作,共同完成任务
    (2) 软件团队模式:主治医师模式;明星模式;社区模式;业余剧团模式;秘密团队;特工团队;交响乐团模式;爵士乐模式;功能团队模式;官僚模式。
    (3)要完成一个复杂的软件项目,团队的各种成员要在不同阶段做不同的事情,这些不同类型的工作在RUP中叫做规程(Discipline)或者工作流( Workflow )。简介如下。

    • 业务建模:业务建模( Business Modeling)工作流用精确的语言(通常是UML)把用户的活动描述出来。这个词有时也翻译为“商业建模”,但并不是只有存在金钱交易的商业活动才能符合建模的要求,任何和客户的正常工作相关的业务活动(例如政府为居民提供网上服务,学生到图书馆借书)都是建模的对象。
    • 需求:有了用例之后,开发人员和用户(或者用户代表)要分析并确认软件系统得提供什么样的功能来满足用户的需求,功能有什么约束条件,如何验证功能满足了用户需求。
    • 分析和设计︰分析和设计(Analysis & Design)工作流将需求转化成系统的设计。
    • 实现:在实现(Implementation)工作流中,工程师按照计划实现上一步产出的设计,将开发出的组件(Module),连同验证模块(例如:单元测试)提交到系统中。
    • 测试 :测试工作流要验证现阶段交付的所有组件的正确性、组件之间交互的正确性,以及检验所有的需求已被正确地实现。在这个过程中,发现、报告、会诊、修复各种缺陷,在软件部署之前保证质量达到预期要求。
    • 部署:部署(Deployment)工作流的目的是生成最终版本并将软件分发给最终用户。
    • 配置和变更管理:配置和变更管理工作流(Configuration and Change Management )负责管理RUP各个阶段产生的各种工作结果(例如源代码控制系统管理和备份各种源文件),要记录修改人员、修改原因、修改时间等属性,有些团队还可以考虑并行开发、分布式开发等。
    • 项目管理:软件项目管理工作流(Project Management)负责平衡各种可能产生冲突的目标,管理风险,克服各种约束并成功地在各个阶段交付达到要求的产品。
    • 环境:环境(Environment)工作流的目的是向软件开发组织提供软件开发环境,包括过程和工具。

    (4)RUP四个阶段的介绍

    • 初始阶段——此阶段的目标是分析软件系统大概的构成,系统与外部系统的边界在哪里,大致的成本和预算是多少,系统的风险主要来自哪里。成功度过初始阶段的项目会达到生命周期目标里程碑。
    • 细化阶段——它的目标是分析问题领域,建立健全的体系结构基础,编制项目计划,按优先级处理项目中的风险。团队要确定项目的具体范围、主要功能、性能、安全性、可扩展性等非功。
    • 构造阶段——在这一阶段,团队开发出所有的功能集,并有秩序地把功能集成为经过各种测试验证过的产品。构造阶段结束时是第三个重要的里程碑:初始功能( Initial Operational )里程碑。此时的产品版本也常被称为“beta”版。
    • 交付阶段——团队工作的重点是确保软件能满足最终用户的实际需求。交付阶段可以有迭代,基于用户的反馈,团队利用这些迭代对系统进行修改、调整。除了对功能的调整,团队还要注意处理用户设置、安装和可用性等问题。在交付阶段的终点是第四个里程碑:产品发布里程碑。
  • 总结
    此次作业通过选择评论其他结对项目组的作业,学习和收获了很多,同时通过自己运行体会到了软件中的各个功能,了解是如何运行的。通过评论他人项目作业以及比对自己作业,发现了自己结对项目作业上的一些不足之处,并努力去做出一些优化和解决。

posted @ 2022-04-10 18:59  梁春云  阅读(25)  评论(0编辑  收藏  举报