Tải bản đầy đủ - 0 (trang)
Appendix G. Extreme Programming (XP) Cheat Sheet

Appendix G. Extreme Programming (XP) Cheat Sheet

Tải bản đầy đủ - 0trang

Overview

Customerliststhefeaturesthatthesoftwaremustprovide.

Programmersbreakthefeaturesintostandalonetasksand

estimatetheworkneededtocompleteeachtask.

Customerchoosesthemostimportanttasksthatcanbe

completedbythenextrelease.

Programmerschoosetasksandworkinpairs.

Programmerswriteunittests.

Programmersaddfeaturestopassunittests.

Programmersfixfeaturesandtestsasnecessary,untilall

testspass.

Programmersintegratecode.

Programmersproduceareleasedversion.

Customerrunsacceptancetests.

Versiongoesintoproduction.

Programmersupdatetheirestimatesbasedontheamount

ofworkthey'vedoneinreleasecycle.

RulesandPractices







Planning



Coding



Userstoriesarewritten.



Thecustomerisalwaysavailable.



Releaseplanningcreatesthe

schedule.



Codemustbewrittentoagreed

standards.



Makefrequentsmallreleases.



Codetheunittestfirst.



TheProjectVelocityismeasured.



Allproductioncodeispair

programmed.



Theprojectisdividedinto

iterations.



Onlyonepairintegratescodeata

time.



Iterationplanningstartseach

iteration.



Integrateoften.



Movepeoplearound.



Usecollectivecodeownership.



Astand-upmeetingstartseach

day.



Leaveoptimizationuntillast.



FixXPwhenitbreaks.



Noovertime.



Designing



Testing



Simplicity.



Allcodemusthaveunittests.



Chooseasystemmetaphor.



Allcodemustpassallunittests

beforeitcanbereleased.



UseCRCcardsfordesignsessions. Whenabugisfound,testsare

created.

Createspikesolutionstoreduce

risk.

Nofunctionalityisaddedearly.

Refactorwheneverandwherever

possible.



Acceptancetestsarerunoftenand

thescoreispublished.











H.CoolTools

WEALLHAVEOURFAVORITETOOLSandutilitiesweliketouse

toworkrapidly.

ListednextareonesthateitherIhaveusedpersonallyorthat

wererecommendedbyvariousfriendsandcolleagues.These

wereallfree(atthetimeofthiswriting),unlessotherwise

notedhere.Ofcourse,alltheproductscoveredinthisbook(for

example,Eclipse)qualifyforcooltools,aswell.

Likeallfreesoftware,useatyourownrisk!







Cross-PlatformTools

7-ZipFilearchiverwithhighcompressionratio

http://www.7-zip.org/

AquaDataStudio(Java)Slow,butgoodfordata

import/exporthttp://aquafold.com/

ArgoUMLUMLdesigntoolhttp://argouml.tigris.org/

CruiseControlFrameworkforacontinuousbuild

processhttp://cruisecontrol.sourceforge.net

CVSSourceconfiguration

managementhttp://www.nongnu.org/cvs/

DbVisualizerDatabasetoolhttp://www.minq.se

FreeMindMind-mapping

softwarehttp://freemind.sourceforge.net/

GaimMulti-protocolinstantmessaging(IM)

clienthttp://gaim.sourceforge.net/

ImageManipulationProgramhttp://gimp.org/

JARClassFinderEclipseplug-inutilityforfindingJARfiles

containingagiven

classhttp://www.alphaworks.ibm.com/tech/jarclassfinder

Jtexteditor(Java)http://armedbear-j.sourceforge.net/



KDiff3Compare/mergetwoorthreetextinputfilesor

directorieshttp://kdiff3.sourceforge.net/

MozillaFirefoxplug-insHundredsofusefulplug-insfor

Firefoxbrowserhttps://addons.mozilla.org/extensions/

NetbeansFullyfeaturedIntegratedDevelopment

Environment(IDE)http://www.netbeans.org/

NvuWebAuthoringSystemhttp://nvu.com/

OpenOfficeCompleteofficeapplications,comparableto

MicrosoftOfficehttp://www.openoffice.org/

Poseidon(communityedition)UMLdesign

toolhttp://gentleware.com

SQuirreLSQLClientManageJDBCcompliant

databaseshttp://squirrel-sql.sourceforge.net/

SunJavaStudioEnterpriseIDEwithintegratedUML

toolhttp://developers.sun.com/prodtech/javatools/jsenterprise/

TkCVS(includesTkDiff)GraphicalinterfaceforCVSand

Subversionconfigurationmanagement

systemshttp://www.twobarleycorns.net/tkcvs.html

VimGUItexteditormimicsUnix'Vi'http://www.vim.org/

vnc2swfScreenrecording

toolhttp://www.unixuser.org/%7Eeuske/vnc2swf/

XEmacsTexteditorandapplicationdevelopment

systemhttp://www.xemacs.org/



Yahoowidgetshttp://widgets.yahoo.com/



MicrosoftWindows-BasedTools

AppRocketkeyboardlaunchpad(forWindows)

http://www.candylabs.com/approcket/(trialversion,but

toocoolnottomentionhere)

ReplaceEmWindowstextsearch-and-replaceprogram

(Probablytheeasiest,fastedinstalling,andthemost

intuitiveprogramofitskindIhavecome

across.)http://www.orbit.org/replace/

MWSnapSnapping(capturing)imagesfromselectedparts

ofthe

screenhttp://www.mirekw.com/winfreeware/mwsnap.html

TextpadPowerful,generalpurposeeditorforplain-text

fileshttp://www.textpad.com/

FileZillaFTPclientandserverhttp://filezilla.sourceforge.net/

PrimoPDFConverttoPDFfromanyapplicationvia

printinghttp://www.primopdf.com/

CygwinLinux-likeenvironmentfor

Windowshttp://www.cygwin.com/

SysinternalsAdvancedsystemutilitiesfor

Windowshttp://www.sysinternals.com/

WinMergeVisualtextfiledifferencingandmerging

toolhttp://winmerge.sourceforge.net/

WhiteboardPhoto(limitedversion)Imagecapturing



softwarehttp://www.polyvision.com/

ExamDiffVisualFileComparison

Toolhttp://www.prestosoft.com/ps.asp?page=edp_examdiff

TortoiseCVSCVSclientintegratedwithWindows

Explorerhttp://www.tortoisecvs.org/



MacOSX-BasedTools

Vim(ViIMproved)forMacOSXhttp://macvim.org/OSX/

AdiumInstantmessagingapplication;canconnecttoAIM,

MSN,Jabber,Yahoo,andmorehttp://www.adiumx.com/

GrabItBuildpartofMacOSX

Quicksilver(forMacOSX)http://quicksilver.blacktree.com/



Linux-BasedTools(KDE)

Itisdifficulttorecommendafewcooltoolsforaplatformthat

comesloadedwithsomanycoolutilities.Furthermore,someof

thecross-platformtoolsrecommendedinthissectionalsorun

onLinux.Nevertheless,hereareafewrecommendedtomeby

colleagues.

SomeKDevelopmentEnvironment(KDE)utilitiesthatyou

mightwanttocheckoutKonsole,Klipper,KEdit,KPrinter,Kate,

Kompare,KFind,KSnapshot,KRuler,K3B,KAlarm,KTimer,

KInfoCenter,KWiFiManager,andKSayIt.

PollixLiveCD(basedonKnoppix,whichbootsdirectlyfromthe

CD;noinstall!)Pollixisloadedwithprogrammingtoolssuchas

Eclipse,NetBeans,Python,andothers;

http://moe.tnc.edu.tw/%7Ekendrew/pollix/.

OtherLinuxutilitiesincludelocate,expect,andwish.







Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Appendix G. Extreme Programming (XP) Cheat Sheet

Tải bản đầy đủ ngay(0 tr)

×