当前位置:网站首页>The agile way? Is agile development really out of date?
The agile way? Is agile development really out of date?
2022-06-24 19:27:00 【LigaAI】
Write it at the front 「 The way of agility 」 yes LigaAI New column . ad locum ,Liga I hope to discuss with more friends 「 agile 」 knowledge , Excavate and discover more in work and life “ Agility can ”. The first chapter of the new chapter , Let's talk “ What is agility ”.

Agile development is regarded as “ The good news for developers ”, But it is frequently criticized by domestic teams as “ The great lie of the century ”. Is agile development really not feasible in China ?
in fact , Many teams claim “ agile ” It's not the agility that initially liberated developers , It is One sided understanding of requirements 、 Extreme pursuit of fast delivery 、 Ignoring software quality “ Tianyuan agile ”. Agile development is practiced in China “ wandering ”, From right “ agile ” Lack of deep understanding , Floating applications will “ agile ” Mistake for “ Fast ”. therefore , I hope to discuss the following issues with you “ agile ” The essence of :
- What is agile development ?
- Agile development 「 agile 」 What do you mean ?
- Is agile development better than waterfall development ?
- What is the first step in building an agile development team ?
One 、 What is agile development ?
Agile development comes from 1990 It has been widely concerned since the s , As a new software development method , It describes the ability to respond quickly to change .
Agile Alliance (agilealliance.org) Agile development is defined as follows : Agile software development is a group based on the agile software development Manifesto and the 12 The framework and practice of the values and principles expressed in the three principles . below , Let's review 「 Agile Manifesto 」, And the values and principles behind it .
1. Agile Manifesto Agile Manifesto
「 Agile Manifesto 」 Born in Snowbird City, Utah , A ski base that has nothing to do with the software revolution or technological innovation .2001 year , Suffer from unreasonable and tedious processes and documents in software development , From many different areas of software development 17 Delegates gathered together ( A holiday ), Discuss the future of software development . Final , They have reached a consensus on values and principles , Jointly signed and issued 「 Agile software development Manifesto Manifesto for Agile Software Development 」, namely 「 Agile Manifesto 」.
「 Agile Manifesto 」 In Extreme Programming (XP)、Scrum、 Dynamic system development (DSDM)、 Crystal development (Crystal Clear)、 Feature Driven Development (FDD) And so on , It also defines four core values and twelve basic principles of agile development .
2. Agile values Agile Values
「 Agile Manifesto 」 It conveys four values different from traditional software development , Agile development pays more attention to
- Individual and interaction Individuals and interactions
- Working software Working software
- Customer cooperation Customer collaboration
- Response variation Responding to change
「 Agile Manifesto 」 At the end of the values :“ Although the right has its value , We pay more attention to the value of the left ”, And the four values of the left item , Processes and tools 、 Detailed documentation 、 Contract negotiation and plan following are the traditional software development modes —— The core of waterfall software development .

3. Agile development principles Agile Principles
「 Agile Manifesto 」 Further expand the four values , Twelve principles that agile development should follow are added .

4. agile development Agile Development
Agile values and agile development principles together illustrate , Agile development aims at customer satisfaction , Pay attention to the ability and value of individual members , Emphasize the need for close collaboration and efficient communication within and outside the team , It is believed that the individual drives 、 Team trust 、 Pursuing excellence and optimizing progress can drive the project forward .
The original intention of agile development is to return software development to the software itself that customers want , Replace normative documents with value outputs to drive project completion . Compared with non agile traditional software development mode , Agile development eliminates unnecessary processes and documents , Through job simplification and efficient cooperation within and outside the team , Short lead time delivery to continuously realize software value , Customer satisfaction .
Two 、 Agile development 「 agile 」 What do you mean ?
To answer “ What is agility ”, First of all, we should know what is the core of agile development : Why agile development requires short cycle development 、 Continuous delivery 、 Embrace change and write less ?
- Short lead time development and continuous delivery To get customer feedback and confirm the research and development direction , Avoid that the final product does not meet customer expectations ;
- Embrace change Because the demand is changeable , To make the final software results conform to the actual use scenarios , Become valuable software ;
- Write less documentation To deliver information efficiently , Focus on R & D , At the same time, it can avoid the waste of time caused by invalid documents due to requirements changes .
It can be seen that , Agile development is essentially a process of gradually defining and enriching requirements , and The core of agile development is to respond to changes in requirements . let me put it another way , Agile development reduces trial and error costs ( For example, shorten the R & D cycle 、 Discard unnecessary documents, etc ), Reduce the impact of demand change on project promotion .
If agile development is an experimental , Constantly implement “ plan - practice - feedback - Optimize ” Circular software development pattern , Then agile is a kind of advocate to simplify the complexity and benign feedback , Emphasize the values of regular optimization and continuous progress .
Why? 「 agile development 」 Domestic practice will deviate from the original track , At last it evolved into 「 The agile development of Chinese countryside 」? Because people put 「 agile 」 A mistake .
Agile emphasizes to adjust and optimize according to changes in time , To reduce the negative impact , It reflects the ability to quickly respond to changes , Not the ability to develop quickly . Even out of the realm of software development , Agile is still a way to implement “ life - Work - Study ” Problem solving thinking . Just as Baidu entry defines : Agile is the ability to succeed in uncertain and chaotic environments by creating and responding to change .
3、 ... and 、 Is agile development better than waterfall development ?
If you pay careful attention 「 Agile Manifesto 」 You will find that , The early Agile Alliance never denied the value of waterfall development , Nor does it mean “ Agile values are more valuable than traditional software development values ”. actually , Agile development and waterfall development , As two different software development modes , There is no absolute distinction between good and bad , After all, any method or tool should be discussed in specific scenarios , Team composition 、 The nature of the project 、 Time / Cost and other support will affect the final determination of the effectiveness of the method .
A friend may want to refute :“ Master duanshui, you , The waterfall is out of date , Now everyone likes to be agile .” Yeah , Why do more and more teams and organizations give up waterfall development , Choose to adopt various agile development methods instead ?
Because the market is changing rapidly , The needs of users are also changeable . Compared with the standard process of waterfall development , Agile development is more adaptable to changing requirements , Be responsive . After all, there is only rapid response to demand changes , To ensure absolute competitiveness in the current business environment .
「 agile development V.S. Waterfall development 」 It's an old proposition , Each method has its own characteristics , It also applies to different scenarios :
- Waterfall development is more suitable for The project needs are clear and rarely changed , Or right High requirements for project plan Development projects ;
- Agile development applies to The demand is changeable 、 Low degree of functional coupling or sustainable superposition of availability , as well as Market feedback is urgently needed Project .
Stamp pictures to learn more 【 agile development V.S. Waterfall development 】 contrast 
Focus on LigaAI official account And reply to the key words 「 Contrast figure 」 Get the comparison of exclusive Edition
Four 、 What is the first step in building an agile development team
《 New product development games 》 The author found that , The most outstanding team of the world's outstanding companies has the following three characteristics : Beyond the ordinary 、 Autonomy and versatility . If you want to build an excellent agile development team , Where to start ?
First, define what a great agile development team is like .「 Agile Manifesto 」 Description of the “ Ideal team ” It has the following characteristics :
- Business people and developers work together
- Communicate effectively ( It is better to communicate face to face )
- Individual morale , Members are the core of the project
- Persistent pursuit of technical excellence and good design
- The team should reflect regularly , Optimization and adjustment
- Those responsible 、 Developers and users work together to maintain a steady pace
If the ideal agile development team is Efficient cooperation 、 Good communication 、 One's fighting spirit soars aloft 、 The rhythm is consistent Of , So the first step to building an agile development team , Is to have one 「 Small, fine and flat 」 Software R & D team .
- Brooks' law states that , Due to the increase of communication cost within the group, etc , Putting more people into developing an urgent project will only make progress slower . therefore , In Agile Development , The smaller the team, the better , and The optimal agile team size should be maintained at 4-9 Between people , Less is better than more .
- The development team must master all the skills required to complete a project , To smoothly promote the completion of the project . Agile development teams need skilled and versatile members , let me put it another way , Deep professional and cross functional 「T Type talent T-shaped Person」 It is the best choice for agile development .
- The human nature assumption implied in the flat organizational structure is , In addition to social needs , There is also a desire to fully express one's abilities 、 The desire to fulfill one's potential . therefore , In flat tissue , Members can achieve their goals through independent exploration and continuous improvement , Drive project progress .
In addition to being small and refined , There is also a content in agile development principles that depicts a specific team portrait :
Best architecture 、 Requirements and design come from Self organizing teams .
The best architectures, requirements, and designs emerge from self-organizing teams.
What is? “ Self organizing teams ”? How managers should build a qualified self-organizing team ? Can an ordinary development team grow into a self-organizing team ?
In the next article, we will continue to discuss with you 「 Self organizing 」. Want to get more agile development information at the first time , Stay tuned [email protected]
Click on LigaAI - A new generation of intelligent R & D cooperation platform , Apply online to experience our products .
边栏推荐
- Kubernetes集群部署
- Xiaobai, let me ask you guys, is MySQL binlog extracted by CDC in strict order
- STM32 uses time delay to realize breathing lamp register version
- 请问一下2.2.0版本支持动态新增mysql同步表吗
- 特尔携手微软发挥边云协同势能,推动AI规模化部署
- Technology implementation | Apache Doris cold and hot data storage (I)
- NFT pledge liquidity mining system development technology
- Source code analysis of ArrayList
- Ls common parameters
- 一文理解OpenStack网络
猜你喜欢

一文理解OpenStack网络

Vs2017 setting function Chinese Notes

Example analysis of corrplot related heat map beautification in R language

Necessary fault handling system for enterprise network administrator

一文理解OpenStack网络

一次 MySQL 误操作导致的事故,高可用都不顶不住!

Source code analysis of ArrayList

特尔携手微软发挥边云协同势能,推动AI规模化部署

Starring V6 platform development take out point process

This is not safe
随机推荐
华为机器学习服务语音识别功能,让应用绘“声”绘色
Volcano becomes spark default batch scheduler
Huawei machine learning service speech recognition function enables applications to paint "sound" and color
Application DDoS attack principle and defense method
网络安全审查办公室对知网启动网络安全审查
Network security review office starts network security review on HowNet
PingCAP 入选 2022 Gartner 云数据库“客户之声”,获评“卓越表现者”最高分
How do programmers do we media?
Generate the last login user account report of the computer through SCCM SQL
Why are life science enterprises on the cloud in succession?
ls 常用参数
Pingcap was selected as the "voice of customers" of Gartner cloud database in 2022, and won the highest score of "outstanding performer"
我链接mysql 报这个错 是啥意思呀?
starring V6平台开发接出点流程
Dataworks development ODPs SQL development production environment automatic completion of ProjectName
How to customize cursor position in wechat applet rotation chart
论文解读(SR-GNN)《Shift-Robust GNNs: Overcoming the Limitations of Localized Graph Training Data》
我用sql形式的会出现cdc读取乱序吗
Will the CDC read out of order when I use SQL
Introduction to smart contract security audit delegatecall (2)