201971010146-杨凯 实验四 团队作业1 软件研发团队组建

项目 内容
课程班级博客链接 2019级计算机科学与技术
这个作业要求链接 实验四 团队作业1:软件研发团队组建
团队名称 夏日限定
我的课程学习目标 (1)组件软件项目研发团队
(2)互评实验三项目,吸取其他项目的优点
这个作业在哪些方面帮助我实现学习目标 (1)和其他项目取长补短,互相学习
(2)团队内部互相学习,更好的组件团队
团队博客链接 夏日限定

任务一:浏览班级博客园中提交《实验三 软件工程结对项目》作业,任选一个你认为完成质量较高的小组项目成果,继续以实验三结对学习方式完成以下任务

1. 评论对象信息:

项目 内容
信息 201971010115-蒋敏敏
博客 201971010115-蒋敏敏 实验三 结对项目—《{0-1}KP 实例数据集算法实验平台》项目报告 - 欽衣
Github Mao-cpu/Algrithm_platform: 2022软件工程实验三 (github.com)

2. 博文评论:

  1. 博文结构: 博文结构清晰,排版整洁
  2. 博文内容: 内容完整充实,完成了各个任务,条理清晰
  3. 博文结构与PSP中“任务内容”列的关系:博文结构与“任务内容”基本一致,基本遵循了PSP过程。
  4. PSP中“计划共完成需要的时间”与“实际完成需要的时间”两列数据的差异化分析与原因探究:该项目的PSP计划与实际时间基本一直,可以看出该组同学对计划的制定以及实施做到了精准的把握,

3. 代码克隆及复审:

  1. 克隆项目到本地:
  1. 代码复审表:

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

4. 阅读《现代软件工程—构建之法》第12章内容,完成以下分析任务:

A. 体验任务3实现软件功能,简要描述软件的使用过程,上传使用软件的照片:

​ 1. 首先是初始界面:

  1. 算法求解界面:导入数据到数据库后,选择算法,并选择导入的数据进行求解:
  1. 图形绘制界面:包括散点图和柱状图,直接选择数据库的数据进行绘制:



  1. 排序界面:可以选择不同的数据进行升序或者降序排列:

B. 总结任务3要求的功能软件解决了吗?软件在数据量/界面/功能上各有什么优缺点?对该软件产品功能有什么改进意见?

​ 该软件功能全面,基本完成了任务三的全部要求,并且完美的将数据库嵌入;

优点:

1. 可以直接将表数据上传到数据库,将数据库中的数据进行最优解求解,以及排序,极大的减轻了数据文件选择的复杂性。
2. 增加了功能绘制数据柱状图,丰富了功能。

缺点:

1. 界面较小,不容易操作
1. 数据库中的数据无法删除,容易造成重复提交数据的问题而报错

C. 从学历、年龄、专业、爱好、收入等方面概括软件产品的典型用户群特征,他们表面需求,潜在需求都是什么?

学历 年龄 专业 爱好 收入 表面需求 潜在需求
本科 18+ 计算机专业 编程 低收入 实现最好选择 算法掌握

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

e) 非常推荐

6. 迭代改进本小组任务三:

  • 增加扩展内容(画柱状图):

  • 添加如下函数:

def painterzhuzhuangtu():
    resx = fileoperate()

    print(resx[0])
    x, y = np.loadtxt(resx[0], delimiter=' ', unpack=True)
    plt.figure()
    plt.bar(x,y,0.2,color="green")
    plt.xlabel("X-weight")
    plt.ylabel("Y-value")
    plt.title("bar chart")

    write_log_to_Text("绘制柱状图成功")
    plt.show()
  • 效果:

  • git push

任务二:团队组建

1. 团队名称:

  • 夏日限定

2. 团队成员组成:

成员学号 成员姓名 个人博客地址 备注
201971010235 阮凯 阮凯-博客地址 PM
201971010146 杨凯 杨凯-博客地址
201971010230 孟姣姣 孟姣姣-博客地址
201971010233 潘晴 潘晴-博客地址

3. 团队成员风采:

成员姓名 擅长技术 编程兴趣 希望承担的角色 宣言
阮凯 web前端 web前端和python PM 做好每一件事
杨凯 java 前端 测试 从现在开始
孟姣姣 java 后端开发 开发 星光不问赶路人,时光不负有心人
潘晴 c语言 前端开发 文档 虽然很菜,但是努力不在菜

4. 阅读《现代软件工程—构建之法》第5章内容:

  • 团队的共同特点:
    1. 团队有一致的集体目标,团队要一起完成这个目标
    2. 团队成员有各自的分工,互相依赖合作,共同完成任务
  • 软件团队的模式:
    1. 主治医师模式
    2. 明星模式
    3. 社区模式
    4. 业余剧团模式
    5. 私密团队
    6. 特工模式
    7. 交响乐团模式
    8. 爵士乐模式
    9. 功能团队模式
    10. 官僚模式

5. MSF的9点基本原则:

  • 推动信息共享与沟通(Foster open communications)

    所有信息都保留公开,同时对于涉及到技术机密以及安全性等信息采取保护措施。

  • 为共同的远景而工作(Work toward a shared vision)
    共同的远景”指产品的远景。

  • 充分授权和信任(Empower team members)

    在一个高效的团队中,所有成员都应得到充分授权。

  • 各司其职,对项目共同负责(Establish clear accountability and shared responsibility)

    团队中每个角色都有自己的职责,若出现了问题,这个角色就要负责。

  • 重视商业价值

    如果你还没有能说清楚你的产品解决了什么问题,为谁解决问题,为什么你的产品会解决这些问题,以及客户怎样付钱让你解决

  • 保持敏捷,预期和适应变化(Stay agile, expect and adapt change)

    软件工程,唯一不变的是变化;我们是预期变化,不是期望变化。

  • 投资质量(Invest in quality)

    对质量的重视,引发对质量的投资,引发对人、过程和工具的投资。

  • 学习所有的经验(Learn from all experiences)

    在学习过去的经验的同时,也要避免让过去的经验妨碍解决现在的问题。

  • 与顾客合作(Partner with internal and external customers)

    MSF强调产品团队与顾客的交流和合作,因为“我觉得”和“顾客觉得”是两码事。

6. 团队企业微信群:

7. 团队特色描述:

  • 团队特点:思维活跃,特点分明,分工明确。
  • 核心竞争力:团队组建的时间久,合作的范围广,相互了解。

任务三:记录完成《实验四 团队作业1:软件研发团队组建》各项任务实际花费的时间并谈谈完成本次作业的感受和体会

  1. 团队建立花费时间:
任务 实际花费时间(min)
团队名称 5
团队成员组成 10
团队成员风采 10
第5章内容的阅读 15
MSF的学习 30
团队企业微信群 2
特色描述 5
  1. 本次作业感受:

​ 本次作业首先对其他组的项目进行了评审及借鉴,吸取了对方项目的优点,改进了自身项目,并对对方的缺点做出了评论,达到了互相取长补短的目的。此外,组建了团队,对团队有了新的认识,希望在接下来的日子里,我们团队能够互相配合,完成之后的任务与学习。

posted @ 2022-04-10 23:47  丸子头野鸽儿  阅读(56)  评论(0编辑  收藏  举报