软件开发流程和项目管理

第一阶段:测试流程和理论---第一讲:软件开发流程和项目管理

 

这一讲,介绍最最基础的知识,

 

软件开发的流程是怎么样的?

软件开发模型,就是软件开发的经验沉淀下来形成了模型,

1,瀑布模型

 

 

需求分析---设计包括了界面设计和程序设计---开发进入编码阶段----进入测试阶段-----上线维护

这就是瀑布模型,本流程受限于上一个流程的结果,这是一个线性的模型,

但是这个是非常重要的模型,其他的模型都是以这个为基础的,
bug发现的越早是成本月底的,

 

 

 

2,敏捷模型

xp

 

看里层---编程方法

简单设计,满足客户当下需求

结对编程,一个考虑细节,一个考虑结构,

测试驱动开发,写测试代码,然后再开发符合测试的代码,

重构,这种方式经常需要重构,

看中间---小组实践

代码集体所有---所有都可以改任何地方的代码

编码标准----因为都可以改,所以要有标准,有一个统一的标准,

稳定高速的步伐,

持续集成----需要多个人写,把所有的人代码集成到一起,这就是合并代码的过程,

 看外层----交付和管理

小规模发布---一半就是两周一个版本,

计划游戏

完整的团队,

现场客户,

-----------所以这个xp,对开发和测试的要求都是比较高的, 比较难以实现,

scrum

---这个用的比较多,

 

 我感觉,这也是一个瀑布模型,不同的地方是

1,周期更短

2,会有站会更快的反馈迭代,

3,所以就是增量迭代,小步快跑,

 

 

3,devops---这是一个更新的模型

解决的就是更多的开发,上线,更可靠,

快速的上线,甚至是每天上线,

所以这就需要开发测试运维更紧密的配合,

这就是需求快速变化,需要开发测试都要敏捷的情况下,

 

 

 

 持续测试,里面就有自动化测试,selenium,appium,还有框架,比如unittest,pytest

 

持续部署,docker

 

我感觉这个里面最好的就是docker,流水线这种方式,就是devops,

如果要每天都发布,敏捷开发就比较吃力了,但是devops自动化部署这种就可以很快,基本一个功能几个小时开发完了,就可以上线了,

而且里面就充满了自动化测试,自动化部署,

 

 

################

项目管理

 

 

 

 

 

 

 

 

 

测试和产品的沟通:

 

 

测试和研发的沟通

 

 

整个的过程

这个实例是使用了jira来管理的,

 

 

这里面有几个重点

1,测试用例评审

2,回归范围评审

3,多轮测试,会进行至少3轮的测试,

4,灰度ab测试,会把上线的内容先发布给一部分的用户,然后比较平稳了才会全都放开,如果实在不行,还可以回滚,

5,整个流程中项目文档的管理,需要有一个项目空间来统一管理,需求的,开发设计的,测试用例的,等等,

 

 

 

 

 

 

 

 

 

 

 

###

 

posted @ 2021-04-13 22:59  技术改变命运Andy  阅读(133)  评论(0编辑  收藏  举报