Scrum学习心得

什么是敏捷开发?

  敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的 开发方法。它不是一门技术,它是一种开发方法,也就是一种软件开发的流程,它会指导我们用规定的环节去一步一步完成项目的开发。
  老师上课曾说过瀑布开发模型,瀑布开发模型是通过写大量文档,开发人员以文档为依据进行开发,然而敏捷开发则是注重的是人与人之间,面对面的交流,它只写有必要的文档,或尽量少写文档。它还会将一个复杂且开发周期长的开发任务分成若干小周期能完成的任务,每一次开发或生产的小任务都可以进行检测。`

什么是Scrum?

  Scrum是一种敏捷过程模型,它的原则和敏捷宣言一致,应用Scrum原则指导过程中的开发活动,过程由“需求、分析、设计、演化和交付”等框架性活动组成。每一个框架活动中,发生于一个过程模式中的工作任务称为一个冲刺。冲刺中进行的工作适应当前的问题,有Scrum团队规定并常常进行实时修改。

  Scrum开发流程中的三大角色:
  产品负责人(Product Owner)
  流程管理员(Scrum Master)
  开发团队(Scrum Team)

流程图如下:

如何进行Scrum开发?

  1. 首先需要确定一个Product Backlog(按优先顺序排列的一个产品需求列表),这个是由Product Owner(产品负责人) 负责的;
  2. Scrum Team根据Product Backlog列表,做工作量的预估和安排;
  3. 有了Product Backlog列表,我们需要通过 Sprint Planning Meeting(Sprint计划会议) 来从中挑选出一个Story作为本次迭代完成的目标,这个目标的时间周期是1~4个星期,然后把这个Story进行细化,形成一个Sprint Backlog;
  4. Sprint Backlog是由Scrum Team去完成的,每个成员根据Sprint Backlog再细化成更小的任务(细到每个任务的工作量在2天内能完成);
  5. 在挑选出的Sprint Backlog过程中,需要进行 Daily Scrum Meeting(每日站立会议),每次会议控制在15分钟左右,每个人都必须发言,并且要向所有成员当面汇报你昨天完成的任务,并且向所有成员承诺你今天要完成什么任务,同时遇到不能解决的问题也可以提出,每个人回答完成后,要走到黑板前更新自己的 Sprint burn down(Sprint燃尽图);
  6. 做到每日集成,使用TFS的自动化集成功能,当服务器获得最新版本,便会编译,若全部通过则发布新版本,则将该版本发布,这时一次正式的签入操作才保存TFS中,中间有任何失败,都会用邮件通知项目管理人员;
  7. 当一个Story完成,也就是Sprint Backlog被完成,也就表示一次Sprint完成,这时,我们要进行评审会议,产品负责人和客户均要参加,每一个Scrum Team的成员都要向他们演示自己完成的软件产品;
  8. 最后就是 Sprint Retrospective Meeting(回顾会议),以轮流发言方式进行,每个人都要发言,总结并讨论改进的地方,放入下一轮Sprint的产品需求中。

团队项目

1.团队名称
BUGG

2.团队信息与分工  

  • 开发:周斌 、舒 溢

  • 测试:许嘉荣 、唐 浩

  • Product Owner,产品负责人:黄欣欣 、廖帅元

3.计划实施:

  • 选题

在线评测系统(Online Judge)起源于国际大学生程序设计竞赛(ACM/ICPC),是一种采用黑盒测试原理进行计算机程序正确性判题的自动化程序。该系统具有比赛公平性好,评测自动化程度高、节约人力成本等优点,广泛应用于各类计算机程序设计比赛和教学。几乎每一个大学都拥有自己OJ重点内容,像国内的北京大学和杭州电子科技大学国外的Codeforces和LeetCode都是一些著名的刷题网站,里面有众多的高质量的算法题供你练习,但是很遗憾,我们长沙学院没有属于自己的一套OJ系统,作为学校的一员和一个伪ACMER想建立自己学校的OJ,所以这就是我们这次选题的来源。

  • 计划

由于以前没有类似的项目经验,所以在开源HUSTOJ基础上进行实现,HUSTOJ分为两大部分,core和web,分别对应判题和数据管理两大功能。

core分为三部分,judged,judged_client,sim。

①juded是一个服务进程,负责轮询数据库或web端,提取判题队列

②judge_client进程为实际判题程序,负责准备运行环境,数据,运行并监控目标程序的系统调用,采集运行指标,判断运行结果

③sim为第三方应用程序,可进行语法分析判断文本的相似度,通过检验的程序将由judge_client复制进题目数据的ac目录,成为新的参考样本。

4.团队中实践scrum
  根据所选题目,挑选出多个小故事作为迭代完成的目标,一个一个有规划的完成,尽量按照敏捷开发的流程规划,做到快速,迅捷开发。

Scrum----学习心得的更多相关文章

  1. Scrum学习心得

    一.Scrum学习心得: 最近简单的学习了一下scrum模式,感觉又开启了一个新世界的大门. 首先,scrum是一个应用于互联网研发的开发方式,这种开发方式的主要特点是快速迭代,持续交付. scrum ...

  2. "Gun N' Rose" Team学习心得

    如果我比别人看得更远,只因为我站在巨人的肩膀上.                                                        ——牛顿 高级软件工程课程终于开课了!第 ...

  3. Scrum培训心得体会

    # Scrum培训心得体会 非常荣幸能够参加公司组织的这场为期两天的培训,赛宝的老师讲的非常好.通过这次学习,理解了当前最流行的Scrum开发框架,下面总结了我对Scrum的理解. ## scrum的 ...

  4. 我的MYSQL学习心得(一) 简单语法

    我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  5. 我的MYSQL学习心得(二) 数据类型宽度

    我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  6. 我的MYSQL学习心得(三) 查看字段长度

    我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...

  7. 我的MYSQL学习心得(四) 数据类型

    我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(五) 运 ...

  8. 我的MYSQL学习心得(五) 运算符

    我的MYSQL学习心得(五) 运算符 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...

  9. 我的MYSQL学习心得(六) 函数

    我的MYSQL学习心得(六) 函数 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类 ...

  10. 我的MYSQL学习心得(七) 查询

    我的MYSQL学习心得(七) 查询 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类 ...

随机推荐

  1. Visual Studio 2019 激活码

    Visual Studio 2019 Enterprise BF8Y8-GN2QH-T84XB-QVY3B-RC4DF Visual Studio 2019 Professional NYWVH-HT ...

  2. 项目版本不同导致Eclipse报错问题——关于在JDK1.7环境中,运行JDK1.8环境下编写的项目

    本人电脑环境配置的是JDK1.7,朋友的是JDK1.8 ,我把她编的java文件导入到我电脑里的Eclipse(LUNA版本)的时候,项目出现一个红色叹号,当然运行是肯定出错了.SO我就开始了解决之旅 ...

  3. Vmtools的安装步骤

    目的:实现win和centos之间的相互复制功能 1.进入centos 2.点击vm菜单的->虚拟机->安装VMware Tools 3.centos会出现一个vm的安装包 4.将文件移动 ...

  4. springboot利用fastjson序列化输出(默认是jackson)

    在@SpringBootApplication类中添加 @Bean public HttpMessageConverters fastJsonHttpMessageConverters() { //创 ...

  5. pandas中获取数据框的行、列数

    获取数据框的行.列数 # 获取行数 df.shape[0] # 获取行数 len(df) # 获取列数 df.shape[1]

  6. java io 模型重点讲述

    java io 模型重点讲述 bio(阻塞) 同步IO 接受请求与处理请求用同一条线程 aio 应用程序线程会向系统注册一个socket请求,以及一个回调方法,继续执行下去.socket接受区的数据监 ...

  7. ps中的常用功能与技巧

    1.如何将多个png图片合成一个? 首先,打开ps,新建一个透明色画布,然后再将两张图片拖入(注意:回车拖入),然后再选中这三个图层,右键选择合并图层,最后快速导出为png即可. 2.如何快速找到ps ...

  8. Netty构建Http服务器

    Netty 是一个基于 JAVA NIO 类库的异步通信框架,它的架构特点是:异步非阻塞.基于事件驱动.高性能.高可靠性和高可定制性.换句话说,Netty是一个NIO框架,使用它可以简单快速地开发网络 ...

  9. Java学习之路(二):Java中的方法

    Java中的方法 概念: 为什么要有方法: 提高代码的复用性 什么是方法: 完成特定功能的代码块 格式: 修饰符 返回值类型 方法名(参数){ 方法体语句: return 返回值: } 1.修饰符:例 ...

  10. React 同构开发(一)

    为什么要做同构 要回答这个问题,首先要问什么是同构.所谓同构,顾名思义就是同一套代码,既可以运行在客户端(浏览器),又可以运行在服务器端(node). 我们知道,在前端的开发过程中,我们一般都会有一个 ...