Agile software development: Difference between revisions

Content deleted Content added
Restored revision 1277390760 by A09 (talk): Rv POV
Citation bot (talk | contribs)
Add: work, date. | Use this bot. Report bugs. | Suggested by Dominic3203 | Linked from User:Satori | #UCB_webform_linked 6/56
Line 3:
{{Software development process|Paradigms and models}}
 
'''Agile software development''' is an umbrella term for approaches to [[software development|developing software]] that reflect the values and principles agreed upon by ''The Agile Alliance'', a group of 17 software practitioners, in 2001.<ref>{{cite web |title=What is Agile? |url=https://www.agilealliance.org/agile101/ |website=Agile Alliance |date=29 June 2015 |access-date=16 July 2024}}</ref> As documented in their ''Manifesto for Agile Software Development'' the practitioners value:<ref name="AgileManifesto">{{cite web|author=Kent Beck|author-link=Kent Beck|author2=James Grenning|author3=Robert C. Martin|author3-link=Robert Cecil Martin|author4=Mike Beedle|author5=Jim Highsmith|author5-link=Jim Highsmith|author6=Steve Mellor|author6-link=Stephen J. Mellor|author7=Arie van Bennekum|author8=Andrew Hunt|author8-link=Andy Hunt (author)|author9=Ken Schwaber|author9-link=Ken Schwaber|year=2001|title=Manifesto for Agile Software Development|url=http://agilemanifesto.org/|archive-url=|archive-date=|access-date=14 June 2010|website=|publisher=Agile Alliance|author12=Jeff Sutherland|author10-link=Alistair Cockburn|author10=Alistair Cockburn|author11-link=Ron Jeffries|author11=Ron Jeffries|author13-link=Ward Cunningham|author17=Brian Marick|author16=Martin Fowler|author16-link=Martin Fowler (software engineer)|author15=Dave Thomas|author15-link=David A. Thomas (software developer)|author14=Jon Kern|author13=Ward Cunningham|author12-link=Jeff Sutherland}}</ref>
 
* '''Individuals and interactions''' over processes and tools
Line 424:
====Allowing technical debt to build up====
{{Further|Technical debt}}
Focusing on delivering new functionality may result in increased [[technical debt]]. The team must allow themselves time for defect remediation and refactoring. Technical debt hinders planning abilities by increasing the amount of unscheduled work as production defects distract the team from further progress.<ref name="Technical Debt + Red October">{{cite web|last1 = Band|first1 = Zvi|title = Technical Debt + Red October| work=Zvi Band |url = http://zviband.com/posts/technical-debt-red-october/|access-date = 8 June 2014|date = 22 March 2014}}</ref>
 
As the system evolves it is important to [[Code refactoring|refactor]].<ref>{{cite web|last1=Shore|first1=James|title=The Art of Agile Development: Refactoring|url=http://www.jamesshore.com/Agile-Book/refactoring.html|website=www.jamesshore.com|access-date=2014-06-14}}</ref> Over time the lack of constant maintenance causes increasing defects and development costs.<ref name="Technical Debt + Red October"/>
Line 461:
 
== Criticism ==
Agile practices have been cited as potentially inefficient in large organizations and certain types of development.<ref>{{cite book|url=http://www.informit.com/articles/article.aspx?p=1380615|first=Craig|last=Larman|author2=Bas Vodde|title=Top Ten Organizational Impediments to Large-Scale Agile Adoption |publisher=InformIT |date=2009-08-13}}</ref> Many organizations believe that agile software development methodologies are too extreme and adopt a hybrid approach<ref>{{cite web|url=https://www.binfire.com/blog/2016/07/hybrid-project-management-methodology//|title=Introduction to Hybrid project management|work=Collaboration Corner |date=20 July 2016}}</ref> that mixes elements of agile software development and plan-driven approaches.<ref>{{cite journal|last=Barlow|first=Jordan B.|author2=Justin Scott Giboney|author3=Mark Jeffery Keith|author4=David W. Wilson|author5=Ryan M. Schuetzler|author6=Paul Benjamin Lowry|author7= Anthony Vance|title=Overview and Guidance on Agile Development in Large Organizations|journal=Communications of the Association for Information Systems|year=2011|volume=29|issue=1|pages=25–44|doi=10.17705/1CAIS.02902|doi-access=free}}</ref> Some methods, such as [[dynamic systems development method]] (DSDM) attempt this in a disciplined way, without sacrificing fundamental principles.
 
The increasing adoption of agile practices has also been criticized as being a [[management fad]] that simply describes existing good practices under new jargon, promotes a ''one size fits all'' mindset towards development strategies, and wrongly emphasizes method over results.<ref>{{cite web|url = http://www.batimes.com/kupe-kupersmith/agile-is-a-fad.html|title = Agile is a Fad|last = Kupersmith|first = Kupe| date=4 July 2011 }}</ref>
Line 507:
*{{citation|title=Heavyweight project organizationHEAVYWEIGHT PROJECT ORGANIZATION |date=2000 |url=https://doi.org/10.1007/1-4020-0612-8_400 |encyclopedia=Encyclopedia of Production and Manufacturing Management |pages=261–262 |editor-last=Swamidass |editor-first=P. M. |place=Boston, MA |publisher=Springer US |language=en |doi=10.1007/1-4020-0612-8_400 |isbn=978-1-4020-0612-8 |access-date=2022-06-22}}
*{{cite journal |last1=Takeuchi |first1=Hirotaka |last2=Nonaka |first2=Ikujiro |title=The New New Product Development Game |journal=[[Harvard Business Review]] |date=1 January 1986 |url=https://hbr.org/1986/01/the-new-new-product-development-game |access-date=25 July 2021 |issn=0017-8012}}
*{{cite web|url=https://www.binfire.com/blog/2016/07/hybrid-project-management-methodology//|title=Introduction to Hybrid project management|work=Collaboration Corner |date=20 July 2016}}
{{Refend}}