敏捷模型是足夠正確的。模型通常都不需要100%正確,只要足夠正確就行了。舉個(gè)例子,如果一張街道地圖漏畫了一條街道,或是它標(biāo)示某條街道是通行的,但你發(fā)現(xiàn)它已經(jīng)關(guān)閉維修了,那你會(huì)不會(huì)扔掉你的地圖開始在城里飆車犯罪呢?不太可能。你會(huì)考慮更新你的地圖,你可能會(huì)拿出筆來自己做修改或是去當(dāng)?shù)氐纳痰曩I一張***版的地圖(你原來的那張過期了)。也許你還是會(huì)接受那張雖不完美但仍可使用的地圖,因?yàn)樗鼘?duì)你來說已經(jīng)足夠好了。你還是可以用這張地圖四處轉(zhuǎn)轉(zhuǎn),因?yàn)樗€是個(gè)正確的模型,標(biāo)記出了大部分街道的位置。你在發(fā)現(xiàn)這張地圖不正確的時(shí)候,你沒有立刻扔掉它,原因是你根本不在乎它是否完美。類似的,當(dāng)你在需求模型、數(shù)據(jù)模型中發(fā)現(xiàn)錯(cuò)誤的時(shí)候,你也會(huì)選擇更新或是接受--雖不完美但已經(jīng)足夠好了。有些項(xiàng)目成員能夠容忍這種不正確而有些則不能:這取決于項(xiàng)目的特性,每個(gè)團(tuán)隊(duì)成員的特性,組織的特性。充分正確性既和模型的聽眾有關(guān),也和你要處理的問題有關(guān)。單元測試:對(duì)各個(gè)模塊進(jìn)行單元測試,確保功能正常。如東創(chuàng)新辦公軟件開發(fā)服務(wù)費(fèi)

◆遞增的變化和建模相關(guān)的一個(gè)重要概念是不用在一開始就準(zhǔn)備好一切。實(shí)際上,就算想這么做也不太可能。而且,不用在模型中包容所有的細(xì)節(jié),只要足夠的細(xì)節(jié)就夠了。沒有必要試圖在一開始就建立一個(gè)囊括一切的模型,只要開發(fā)一個(gè)小的模型,或是概要模型,打下一個(gè)基礎(chǔ),然后慢慢的改進(jìn)模型,或是在不再需要的時(shí)候丟棄這個(gè)模型。這就是遞增的思想。◆令投資比較大化項(xiàng)目投資者為了開發(fā)出滿足自己需要的軟件,需要投入時(shí)間、金錢、設(shè)備等各種資源。投資者應(yīng)該可以選取比較好的方式投資,也可以要求團(tuán)隊(duì)不浪費(fèi)資源。并且,他們還有***的發(fā)言權(quán),決定要投入多少的資源。如東創(chuàng)新辦公軟件開發(fā)服務(wù)費(fèi)通過推送、郵件等方式發(fā)布企業(yè)動(dòng)態(tài),確保信息觸達(dá)全員。

實(shí)施過程中需管理產(chǎn)品待辦列表,優(yōu)先處理高價(jià)值需求,并持續(xù)優(yōu)化技術(shù)債務(wù) [10]。起源于20世紀(jì)90年代的輕量級(jí)軟件工程方法,2001年17位倡導(dǎo)者正式發(fā)布《敏捷宣言》并成立敏捷聯(lián)盟,標(biāo)志著該方法成為系統(tǒng)性理論 [8-9]。隨著持續(xù)集成工具和項(xiàng)目管理平臺(tái)(如Jira、TFS)的應(yīng)用,逐步發(fā)展為應(yīng)對(duì)復(fù)雜需求的主流開發(fā)范式 [8]。敏捷建模(AM)定義了一系列的**原則和輔助原則,它們?yōu)檐浖_發(fā)項(xiàng)目中的建模實(shí)踐奠定了基石。其中一些原則是從XP中借鑒而來,在Extreme Programming Explained中有它們的詳細(xì)描述。而XP中的一些原則又是源于眾所周知的軟件工程學(xué)。復(fù)用的思想隨處可見?;旧?,本文中對(duì)這些原則的闡述主要側(cè)重于它們是如何影響著建模工作;這樣,對(duì)于這些借鑒于XP的原則,我們可以從另一個(gè)角度來看待。
AM是有效的,而且也已開始有效。當(dāng)你學(xué)習(xí)到更多的AM知識(shí)時(shí),有件事對(duì)你來說可能不好接受,AM近乎無情的注重有效性。AM告訴你:要使你的 Project Stakeholder的投資比較大化;當(dāng)有清晰的目的以及需要了解受眾的需要時(shí)要建立模型或文檔;運(yùn)用合適的工件來記錄手頭的情形;不論何時(shí)都盡可能創(chuàng)建簡單的模型。AM不是靈丹妙藥。敏捷建模是改進(jìn)眾多**軟件開發(fā)成果的有效技術(shù),充其量也就是這樣了。它并不是什么了不得的靈丹妙藥,能夠解決你開發(fā)中的所有問題。如果你努力的工作;敏捷開發(fā):采用敏捷開發(fā)方法,快速迭代,及時(shí)反饋。

◆用代碼驗(yàn)證 模型是一種抽象,一種能夠正確反映你正在構(gòu)建的系統(tǒng)的某個(gè)方面的抽象。但它是否能運(yùn)行呢?要知道結(jié)果,你就應(yīng)該用代碼來驗(yàn)證你的模型。你已經(jīng)用一些HTML頁面建立了接受付款地址信息的草圖了嗎?編碼實(shí)現(xiàn)它,給你的用戶展示**終的用戶界面,并獲取反饋。你已經(jīng)做好了表示一個(gè)復(fù)雜業(yè)務(wù)規(guī)則邏輯的UML順序圖了嗎?寫出測試代碼,業(yè)務(wù)代碼,運(yùn)行測試以保證你做的是對(duì)的。永遠(yuǎn)也別忘了用迭代的方法開發(fā)軟件(這是大多數(shù)項(xiàng)目的標(biāo)準(zhǔn)做法),也別忘了建模只是眾多任務(wù)中的一個(gè)。做一會(huì)兒建模、做一會(huì)兒編碼、做一會(huì)兒測試(在其它的活動(dòng)之中進(jìn)行)。UI/UX設(shè)計(jì):設(shè)計(jì)友好的用戶界面,確保用戶體驗(yàn)良好。如東創(chuàng)新辦公軟件開發(fā)服務(wù)費(fèi)
集成測試:測試不同模塊之間的集成情況。如東創(chuàng)新辦公軟件開發(fā)服務(wù)費(fèi)
補(bǔ)充實(shí)踐◆使用建模標(biāo)準(zhǔn) 這項(xiàng)實(shí)踐是從XP的編碼標(biāo)準(zhǔn)改名而來,基本的概念是在一個(gè)軟件項(xiàng)目中開發(fā)人員應(yīng)該同意并遵守一套共同的建模標(biāo)準(zhǔn)。遵守共同的編碼慣例能夠產(chǎn)生價(jià)值:遵守你選擇的編碼指南能夠?qū)懗龈蓛舻拇a,易于理解,這要比不這么做產(chǎn)生出來的代碼好得多。同樣,遵守共同的建模標(biāo)準(zhǔn)也有類似的價(jià)值。可供選擇的建模標(biāo)準(zhǔn)有很多,包括對(duì)象管理組織(OMG)制定的統(tǒng)一建模語言ML,它給通用的面向?qū)ο竽P投x了符號(hào)和語義。UML開了一個(gè)好頭,但并不充分-就像你在Be Realistic About The UML中看到的,UML并沒有囊括所有可能的的建模artifact。而且,在關(guān)于建立清楚可看的圖表方面,它沒有提供任何建模風(fēng)格指南。那么,風(fēng)格指南和標(biāo)準(zhǔn)之間的差別在何處呢。對(duì)源代碼來說,一項(xiàng)標(biāo)準(zhǔn)可能是規(guī)定屬性名必須以attributeName的格式,而風(fēng)格指南可能是說在一個(gè)單元中的一段控制結(jié)構(gòu)(一個(gè)if語句,一段循環(huán))的代碼縮進(jìn)。對(duì)模型來說,一項(xiàng)標(biāo)準(zhǔn)可能是使用一個(gè)長方形對(duì)類建模,一項(xiàng)風(fēng)格指南可能是圖中子類需要放在父類的下方。如東創(chuàng)新辦公軟件開發(fā)服務(wù)費(fèi)
南通利眾網(wǎng)絡(luò)科技有限公司匯集了大量的優(yōu)秀人才,集企業(yè)奇思,創(chuàng)經(jīng)濟(jì)奇跡,一群有夢想有朝氣的團(tuán)隊(duì)不斷在前進(jìn)的道路上開創(chuàng)新天地,繪畫新藍(lán)圖,在江蘇省等地區(qū)的商務(wù)服務(wù)中始終保持良好的信譽(yù),信奉著“爭取每一個(gè)客戶不容易,失去每一個(gè)用戶很簡單”的理念,市場是企業(yè)的方向,質(zhì)量是企業(yè)的生命,在公司有效方針的領(lǐng)導(dǎo)下,全體上下,團(tuán)結(jié)一致,共同進(jìn)退,**協(xié)力把各方面工作做得更好,努力開創(chuàng)工作的新局面,公司的新高度,未來利眾供應(yīng)和您一起奔向更美好的未來,即使現(xiàn)在有一點(diǎn)小小的成績,也不足以驕傲,過去的種種都已成為昨日我們只有總結(jié)經(jīng)驗(yàn),才能繼續(xù)上路,讓我們一起點(diǎn)燃新的希望,放飛新的夢想!