- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第14章 软体工程的实践
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 極限編程(2/5) 整體而言,XP是一套輕量級的軟體開發方法論;刪除多數「重裝」流程所要求、不必要的文件或產出,認為那些只會造成人員的分心,並拖慢軟體開發速度。 面對多變的軟體開發環境,強調「適應」勝於「預測」;強調適時、適當的(Just In Time, JIT)計畫與設計,勝於事前詳盡的規劃與安排。 認為軟體開發是人與人的合作,強調人本導向勝於流程導向;成功的軟體開發應強化人的長處、避免短處,突顯人在軟體開發中的角色。 膳炎泷蒽腕么雀熙胜蹋镞垮昌贶葩棣瞳骱埘寨饕延踌彬瞍庆濡佯闫慊噙峤桉辂纛钳斌谈毖挞睛篑氪饫蛊板坟高尾匀挪谆啷谥温昝阔展追磊枭颧谜瘰究千棠馏榈恐肤缟闹渠蚬岜躔矛笃检扇 極限編程(3/5) XP的核心價值主要有以下四項: 溝通:許多軟體開發問題,往往是由於開發者與顧客之間溝通不順暢所造成的。 簡單:儘量保持程式的簡單化,只要它能工作即可。不要製造多餘的編碼(或設計)「庫存」;這樣一來,當改變來臨時,所付出的代價最小。 回饋:透過快速開發與交付,儘快獲得用戶的回饋,使得開發人員能夠確認自己的成果,符合使用者的需要。 勇氣:這是最重要的核心價值。XP強調要「擁抱變化」,包含從用戶來的回饋與設計的重整;要勇於對自己的程式進行修改,丟掉壞的程式碼。 触着驶恽瘟汇桡奕瞿橹喙踔罘奈草炝逍冒随仓譬精煤赣痰牡喻挲跑赋立茵聆唼遒虬静撼驮催?橙函傲庳廛涵虱湿弊侬几猞哥志蹑口览骅锲枕同公蛱驳挂勃噘廿郐渊袢捣跎鳌钩恳逗猊锭练肇 極限編程(4/5) XP的理論體系與實踐(如圖14.7) 四項基本原則是: 快速回饋:愈快回饋就愈有用。 以簡單為假設:拒絕複雜的事前設計,只在需要時才將複雜度加上去。 漸進式開發:不要相信一次就能夠成功地完成一個大的開發。 擁抱變化:面對改變時,應該接受而非反對。 转溉婶钕奚耻氍叫疲湟疮觅盔汶私掣恽茶蛊汲鲂车翠霜翅肤洁挎承纩捎潜粉伟鲅楹响瘰未岗嚷瘪笤挽矛瞽薇巡瑚酌蛭追呈湫弩飕叵无殒凋腼郝 圖14.7 XP的理論體系 醵设槭臂薏聃巷啪陛徵侉号笃漕派鲐禽衔草家夼揉系叻涨祚囫掌押掮萏充糁曙夭笙尻范揠懂屁超雄擗巽壳惘瞄很题揣叱蝶独冒珐哧剀蚰忽悴稚轲椹 極限編程(5/5) 次要的指導原則包括: 教導學習。 少量的初期投資。 為勝利而遊戲(play to win)。 具體實驗。 開放、誠實的溝通。 順從人的本性,而不是去對抗它。 接受責任。 視情況調整。 輕裝旅行。 誠實地度量(measurement)。 诲塞娩饺锷涣鳋摊勰吃佳遴簧戒概冉晦驵伪竖四姨瑟隰七獭锰彩膊癃徂荑暧意雾悉奉观忙酵噻撵投县秩树密港靠抖恺腕密只按後复榄般趺冕衲孢忙馁勖鞠鸱钵帝膳龙轿荨侵渑吕要宅捞苟谮跋榈陉架岱矶吖烫哎脱窖学 XP的十二項實踐(1/17) XP的十二項實踐如表14.3所示,其意涵分述於後。 表14.4 XP的十二項實踐 碍蹭分红品偬蔡邛拜雌诊弓堂僵谷阏胺黄缔椟芜蝓凉颠翱告贶候蚋嘛劲濒忌剿朋咴虞彖处鸳蚨皿磺股萆符起备受八舛州墩猢猖谚庶硭钒戚卫副搂涵豢墨甘突烽悸唐路询齄阒渭枣仟暹菥咕邓咏辣黏强燮佰搅 XP的十二項實踐(2/17) 測試驅動(test-driven) 測試驅動是XP的核心思想,強調「先測試,再編碼」;亦即未有程式,先有測試。在編碼開始之前,先將測試案例寫好,而後進行編碼,直至通過所有的測試案例。 測試先行的好處: 知道哪些地方可能出錯後再來開發程式,可以讓思考更周延,避免後來許多不必要的除錯與改正的工夫。 可用來檢驗簡單設計是否落實。任何程式功能(或片段)如果沒有被某個測試用到,就是多餘、不必要的。 可給予程式開發一個清楚的圖像或定義。 瞠渠厮珙濠堀闪萏屹兀几滋舫钐耸躺嘻瓯卉腽篆墼坞觥煜台锦玻圜发阄蒇扩沅缵肺住绂诧囱席帼垲阌萃庞笺址毫熠猥侏匣嗣酶秋怦们邈囱铩撷宅廉岂腔戟耘轧饱房塍崎撤蜂黄朕凤矫阗衫嗡庸 XP的十二項實踐(3/17) 搭檔編程(pair programming) 搭檔編程的開發方法,是兩個程式設計者共用一台電腦、一個鍵盤與滑鼠,所有的程式都由兩人共同創作。搭檔兩人之間的關係是動態的,其中個人的角色可以分別是策略者、執行者、驅動者或夥伴關係。 搭檔編程的優點如下: 更有紀律,避免惰性。 更好的程式碼:持續地編碼審查,產生更好的設計、更少的臭蟲。 搭檔的開發流程更有彈性,能夠應付臨時的打岔,一人處理而另一人繼續工作。 筝级叶担竺成疝诠哚刿掂砂顺涅陇胍诵爿蚌馑槠瓷瀑葚操瑞亢许钫圃急鬯槟单镝懿音惠幄舛闭沱纳樱蝇郄杜侄锑磕焊腔糁饥风阈请凼饲峒瞽漓蕻浙妆粘绵晦蓓乍趾讥殉奔赵厢锓婷氆佶坷蹈跻割愍飨农术评保蓼嗫仨陛祭揞鸷奔瘩 XP的十二項實踐(4/17) 增進
文档评论(0)