Extreme programming: Difference between revisions

Content deleted Content added
Reverted good faith edits by Kauerrolemodel (talk): Incorrect use of inline external linking (TW)
Dead link substitution - New report is added "Human Centred Technology Workshop 2006
Line 3:
[[Image:Extreme Programming.svg|thumb|Planning and feedback loops in extreme programming]]
{{Software development process}}
'''Extreme programming''' ('''XP''') is a [[software development methodology]] which is intended to improve software quality and responsiveness to changing customer requirements. As a type of [[agile software development]],<ref name="Informatics85">"Human Centred Technology Workshop 20052006 ", 20052006, PDF, [ftphttp://ftpciteseerx.informaticsist.sussexpsu.ac.ukedu/pubviewdoc/reports/csrp/csrp585download?doi=10.1.1.465.2140&rep=rep1&type=pdf Informatics-UK-report-cdrp585]{{deadHuman link|date=JanuaryCentred 2018Technology |botWorkshop 2006 ]</ref><ref name=InternetArchiveBotUPenn49/><ref |fix-attemptedname=yesUSFCA601/> }}it advocates frequent "releases" in short development cycles, which is intended to improve productivity and introduce checkpoints at which new customer requirements can be adopted.
</ref><ref name=UPenn49/><ref name=USFCA601/> it advocates frequent "releases" in short development cycles, which is intended to improve productivity and introduce checkpoints at which new customer requirements can be adopted.
 
Other elements of extreme programming include: programming [[Pair programming|in pairs]] or doing extensive [[code review]], [[unit testing]] of all code, [[You_aren%27t_gonna_need_it|avoiding programming of features until they are actually needed]], a flat management structure, code simplicity and clarity, expecting changes in the customer's requirements as time passes and the problem is better understood, and frequent communication with the customer and among programmers.<ref name="UPenn49">[http://www.cis.upenn.edu/~matuszek/cit591-2003/Lectures/49-design-patterns.ppt UPenn-Lectures-design-patterns "Design Patterns and Refactoring", University of Pennsylvania, 2003].</ref><ref name="USFCA601">[http://www.cs.usfca.edu/~parrt/course/601/lectures/xp.html USFCA-edu-601-lecture Extreme Programming].