自动化开发敏捷开发是什么?
一、自动化开发敏捷开发
介绍
自动化开发敏捷开发是以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都要经过测试。
具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。
对于没有完全接触过敏捷开发的人来说,看完还是觉得挺懵,但其实上面的话已经总结的挺好的了,但要理解上面那段话,还需要明白,为什么要进行敏捷开发。
众所周知(不知道的看看我之前的文章),产品(这里指APP,小程序或网站)从想法到原型图到UI设计图到开发到测试最终上线需要经过几个环节的流转,前前后后可能需要花上半个月到一个月的时间,需求比较复杂的时候可能需要花上几个月。
从管理学的角度来讲,一个团队如果超过7个人,效率就会越来越低下,团队保持7人的时候效率是较高的,所以敏捷开发也是运用了这一理念,把大的团队成员切分成7人的小分队,把大的需求也切分成许多小的需求,每个小团队负责每个小需求,一个团队包含一个产品经理,几个开发人员和一到两个测试人员就能运转了,具体人员分配还得看需求,比如有些需求后台复杂就安排多一些,有些前端复杂就安排前端人员多一些。一般两个星期就可以迭代一个版本,快速高效。
敏捷开发的优势和不足
敏捷开发优势在于把一艘大船变成许多条小船,每条小船各司其职,分配小目标,所有的小目标合起来就能完成大目标。效率高,每个人职责分明。
不足之处在于小团队做不到拥有开阔的视野,看不到所有团队都在一起做什么事情,大家只知道埋头苦干做好自己的部分就可以,但看不到全局,不知道全局发生了什么事情。对于一些不可分割的大需求,需要一次性派很多人手同时做的需求,敏捷开发就不再合适。
敏捷开发只适用于成熟的APP做高效的版本迭代,对于一些小需求小想法可以快速试错,抽一支小团队试试做不行就下线这个需求,灵活方便,但对于初创型或快速增长的公司不适合做敏捷开发。这个时候需要集中力量办大事,还是得采用传统的瀑布式开发。
所谓瀑布式开发就是大家最容易理解的,产品组,开发组测试组UI组相互合作一起做一件事情,做一套系统或者一个APP,耗时长可能几个月,但大家一起做,做同样的需求可以互相沟通协同作战,很多问题和困难讨论讨论就解决了,所以这也是瀑布式开发的优势。
延伸阅读:
二、螺旋式开发
螺旋式开发是由巴利 · 玻姆在 1988 年正式发表的软件系统开发模型,它兼顾了快速原型的法代特征及瀑布模型的系统化和严格监控,其最大的特点是引入了其他模型不具备的风险分析,使软件在无法排除重大风险时有机会停止,以减少损失。 同时,在每个法 代阶段构建原型是螺旋模型用来减少风险的方法。 螺旋模型更适合大型的昂贵的系统级的软件开发, 一开始应用的规模很小,当项目被定义得更好、更稳定时逐渐展开。其核心在于不需要 在刚开始时就把所有事情都定义清楚,可以先定义最重要的功能去实现它,然后听取客户的意 见,再进入下一个阶段,如此不断循环、重复,直到得到满意的产品。螺旋模型在很大程度上 是一种风险驱动的方法体系,因为在每个阶段及经常发生的循环之前,都必须先进行风险评估。
相关推荐HOT
更多>>线性表中的随机存取(读写)是什么意思?
一、线性表中的随机存取(读写)是什么意思线性表是数据结构中的一种基本数据类型,它包含了一组有序的数据元素,每个元素有一个少数的前驱元素和...详情>>
2023-10-14 23:06:05为什么MySQL的IN操作在大于3个操作数时不用索引?
一、MySQL的IN操作在大于3个操作数时不用索引的原因1、索引数据结构的限制MySQL使用B树或哈希等索引数据结构来加速查询,但这些数据结构都有其...详情>>
2023-10-14 22:01:14STL中为什么遍历map比遍历list慢?
一、STL中遍历map比遍历list慢的原因1、内存布局不同 map和list的内存布局不同,map是一种基于红黑树实现的关联容器,其数据结构是一棵二叉搜索...详情>>
2023-10-14 18:50:17先根遍历和先序遍历的区别?
一、先根遍历和先序遍历先根遍历和先序遍历是同一个概念,只是叫法不同,也叫前序遍历,是一种节点遍历算法,指的是按照“根节点->左子树->右子...详情>>
2023-10-14 17:31:25热门推荐
完全二叉树为什么非常适合顺序存储结构?
沸线性表中的随机存取(读写)是什么意思?
热有哪些javascript数据结构相关库用来描述队列、树、图?
热为什么MySQL的IN操作在大于3个操作数时不用索引?
新Java中遍历数据结构Enumeration和Iterator相比有什么不同?
数据结构里面pnext与next有什么区别?
数组与集合有什么不同?
ASPICE是什么?
数据结构中HashMap与HashTable的区别是什么?
STL中为什么遍历map比遍历list慢?
什么是tpm管理?
什么叫精益管理?
先根遍历和先序遍历的区别?
HashMap为什么不用B+树来替换红黑树?