其實(shí)你已經(jīng)知道怎么做了
也許你現(xiàn)在覺(jué)得創(chuàng)建用戶故事地圖是一件很難的事,整個(gè)過(guò)程中充滿了復(fù)雜和神奇。但其實(shí)就在此時(shí)此刻,你已經(jīng)具備了創(chuàng)建一個(gè)用戶故事地圖的能力和知識(shí),所以我保證這個(gè)過(guò)程一點(diǎn)兒也不困難。讓我們從一個(gè)日常生活中常見的例子開始。為了再進(jìn)一步簡(jiǎn)化,就從你的生活開始。隨著這個(gè)例子的展開,也許我會(huì)給你已經(jīng)知道了的事情重新起一些名字。
找一疊即時(shí)貼和一支筆,我說(shuō)什么你就做什么。
別擔(dān)心,去準(zhǔn)備一下吧,我等你。
準(zhǔn)備好了嗎?
1. 寫下關(guān)于你的故事,一次一個(gè)
閉上你的眼睛,回想一下今天早上你醒來(lái)的那一刻。你至少“醒來(lái)”了對(duì)吧?那么第一件你回想起來(lái)的事情是什么呢?現(xiàn)在睜開你的眼睛,把它寫下來(lái),寫在一張即時(shí)貼上。我也會(huì)跟你一起想、一起寫的。我第一張即時(shí)貼上寫著“點(diǎn)擊鬧鐘的'小睡一會(huì)兒'”。讓我不爽的是,這件事幾乎每天早上都會(huì)發(fā)生,如果是一些很糟糕的早晨,我會(huì)敲上鬧鐘兩次或者三次。
現(xiàn)在,撕下這張即時(shí)貼把它貼到你面前的桌子上,然后回想今天早上你做過(guò)的下一件事情,把它寫下來(lái)、撕下來(lái),貼到第一張邊上。然后繼續(xù)。
我的第二張和第三張即時(shí)貼上寫著“關(guān)上鬧鐘”、“昏昏沉沉跌跌撞撞地走進(jìn)浴室”。
一直寫到你終于準(zhǔn)備好出門上班了,如果你今天不上班,那就寫到你已經(jīng)準(zhǔn)備好正式開始這美好的一天吧。我通常會(huì)以“進(jìn)入我的愛(ài)車”作為最后一張即時(shí)貼。
我覺(jué)得你能在三到四分鐘之內(nèi)就能寫完所有的即時(shí)貼。
“任務(wù)”就是我們做的事
看一下你寫下的所有即時(shí)貼,注意一下它們是不是都是動(dòng)詞短語(yǔ)?至少絕大多數(shù)是吧。這些動(dòng)詞短語(yǔ)就是任務(wù),例如“沖澡”、“刷牙”。
所謂任務(wù)就是我們?yōu)榱四硞€(gè)特定的目的而按順序做的一系列事情。
在軟件里,人們按照某個(gè)特定的目的而按順序做的一系列事情我們就就叫它們“用戶任務(wù)”。這是一個(gè)對(duì)于用戶故事地圖來(lái)講非常重要的概念,甚至比寫下并講出一個(gè)好的故事還要重要。
用戶故事地圖中的即時(shí)貼上記錄著人們?nèi)绾问褂媚愕能浖阋苍S會(huì)注意到它們幾乎都是動(dòng)詞短語(yǔ)。
現(xiàn)在休息幾分鐘,想想剛才的過(guò)程有多么的容易。
我讓你寫下你所做的事情,之后所有的任務(wù)就從你的腦海中一個(gè)個(gè)地蹦出來(lái)了。這個(gè)概念是如此的重要,卻又如此自然而然,這讓我覺(jué)得這個(gè)過(guò)程非???。
先別著急沉醉在“任務(wù)”這個(gè)詞里。如果你是一個(gè)項(xiàng)目經(jīng)理,你會(huì)注意到項(xiàng)目計(jì)劃中充滿了各種“任務(wù)”。如果你是一個(gè)程序員,在敏捷開發(fā)中正在使用用戶故事,你會(huì)發(fā)現(xiàn)在做計(jì)劃的時(shí)候會(huì)寫上一堆開發(fā)和測(cè)試的“任務(wù)”。如果你既不是一個(gè)項(xiàng)目經(jīng)理,又不是一個(gè)程序員,那么在使用“任務(wù)”這個(gè)詞的時(shí)候要加倍小心。因?yàn)轫?xiàng)目經(jīng)理和程序員會(huì)認(rèn)為你說(shuō)的“任務(wù)”跟他們的使用方法不太一樣,他們也許會(huì)告訴你,你對(duì)這個(gè)詞的使用方法似乎不太對(duì)。
用戶任務(wù)是構(gòu)建用戶故事地圖的基本元素
現(xiàn)在,數(shù)數(shù)你寫下的這些任務(wù),大多數(shù)人都會(huì)寫下大概15~25張即時(shí)貼。如果你寫下的比這個(gè)數(shù)要多,那你簡(jiǎn)直太棒了。如果你寫下的比這個(gè)數(shù)要少呢?哥們兒,你一定是過(guò)著一種非常簡(jiǎn)約的生活吧,我無(wú)比渴望每天早上自己也能像你這么快就能出家門。但你最好回頭看看你的列表,看看是不是把一些事情給跳過(guò)去了。
我的任務(wù)和你的任務(wù)是不同的
我相信,“人與人是不同的”這個(gè)觀點(diǎn)對(duì)于每個(gè)人來(lái)講都不是什么新鮮事。你會(huì)在人們選擇做什么事情的時(shí)候發(fā)現(xiàn)這種不同。
舉個(gè)例子來(lái)說(shuō),總有一些人有動(dòng)力和自律,幾乎每天早上都會(huì)去晨練。如果你寫下了幾張關(guān)于晨練的任務(wù),那你就太棒了!我一直還在為這個(gè)目標(biāo)而努力。
還有些人會(huì)因?yàn)榧彝ザ幸恍╊~外的任務(wù)。如果你有孩子了,我保證你會(huì)比那些沒(méi)有孩子的人多寫下很多任務(wù)。如果你養(yǎng)了一條狗,那也許在你的桌子上會(huì)多出來(lái)幾個(gè)關(guān)于照顧狗的任務(wù)。
當(dāng)你在考慮人們?nèi)绾问褂媚阕龀鰜?lái)的軟件的時(shí)候,牢記這一點(diǎn):人與人是不同的。他們?cè)谑褂密浖臅r(shí)候也許會(huì)有不同的目的。他們也許在不同的場(chǎng)景下使用你的軟件,而這個(gè)場(chǎng)景會(huì)迫使他們做出一些你想不到的事。
我只是更關(guān)注細(xì)節(jié)
在這個(gè)練習(xí)里,有些人寫下了比其他人更多的細(xì)節(jié)。他們也許會(huì)把“做早飯”分成“把面包放入烤面包機(jī)”、“倒一杯果汁”。如果是我老婆的話,也許她會(huì)寫下一個(gè)讓我深惡痛絕的任務(wù)——“在果汁里加入紫甘藍(lán)”。
任務(wù)就像是大石頭,你可以用錘子把大石頭敲碎成一堆小石頭,而這些小石頭仍然是石頭。到現(xiàn)在為止我也搞不清一塊大石頭究竟要大到什么份兒上就會(huì)被稱作“巨石”,一塊小石頭要小到什么份兒上就會(huì)被稱作“鵝卵石”。不過(guò)提到把大任務(wù)和小任務(wù)區(qū)分開,還是有一個(gè)很有效的方法的。
我的朋友Alistair Cockburn在他的著作《編寫有效用例》中介紹了一個(gè)關(guān)于“目的等級(jí)”的概念。別慌,咱們不是要開始寫用例了。只是我們?cè)谡務(wù)撊祟愋袨榈臅r(shí)候這個(gè)概念非常有用。
Alistair使用了“海平面”的比喻來(lái)形容這個(gè)概念。海平面位于正中間,其它的所有東西都位于海平面的上面或下面。一個(gè)海平面級(jí)別的任務(wù)意味著我們希望完整而單獨(dú)地完成它。你有沒(méi)有寫下“沖澡”這個(gè)任務(wù)?這就是個(gè)海平面任務(wù),因?yàn)槟悴粫?huì)在進(jìn)行到一半的時(shí)候去想:“嗯,洗澡這件事先拖一拖吧,我先去搞杯咖啡喝,等會(huì)兒再繼續(xù)沖澡。”Alistair管這類任務(wù)叫做“功能級(jí)別任務(wù)”,并用海波浪來(lái)標(biāo)示它。不過(guò)我們還是管這類任務(wù)就叫任務(wù)吧。
像“沖澡”這個(gè)任務(wù)可以被拆分成很多個(gè)更小的子任務(wù),比如“調(diào)整水溫”和“洗頭發(fā)”,如果是我的老婆的話,可能還要加上“用絲瓜絡(luò)清理死皮”之類的。始終要注意,人與人是不同的,你會(huì)看到人們執(zhí)行這些任務(wù)的時(shí)候選擇的行為是不同的。因?yàn)檫@些任務(wù)在海平面之下,所以Alistair用小魚的圖標(biāo)來(lái)標(biāo)識(shí)這些任務(wù)。
最后,我們可以將一批任務(wù)上升到“摘要任務(wù)”級(jí)別,“洗澡”、“剃須”、“刷牙”以及所有其它在你起床之后要做的類似的任務(wù),都可以被歸整到一個(gè)“摘要任務(wù)”中,我沒(méi)想好管它叫什么,“個(gè)人清潔“?或者叫”清晨洗禮“?不過(guò)好像“洗禮”是個(gè)挺傻的詞兒,算了,別用它了。
使用目的等級(jí)的概念,可以幫助你把一些小任務(wù)集合起來(lái),或者是把一些大的任務(wù)分解開。
2. 組織你的故事
如果你還沒(méi)有把你的任務(wù)組織起來(lái),那請(qǐng)將你的任務(wù)們按照先后執(zhí)行的順序,從左到右排列起來(lái)。
用你的手指指著第一張即時(shí)貼,試著講一個(gè)故事,就從“首先,我做這件事”開始。然后把手指挪向下一張即時(shí)貼,說(shuō)“然后,我做這件事“。之后從左向右繼續(xù)講你的故事。你會(huì)看到每張即時(shí)貼都是一個(gè)步驟,而連接這些步驟的則是一個(gè)小巧的連詞:然后。
我管這種從左向右的順序叫做”故事講述順序“,或者是個(gè)更華麗的名字:”敘述流“。我們管這整件事叫做一個(gè)”地圖“,而敘述流就是這個(gè)地圖的橫坐標(biāo)。
由于我的敘述流已經(jīng)變得很長(zhǎng)了,所以我開始把一些同時(shí)發(fā)生的事情堆疊起來(lái)。隨著我把整個(gè)流程展開,我發(fā)現(xiàn)我遺漏了一些細(xì)節(jié)。這讓我去仔細(xì)思考被遺漏的事情究竟是不是真的重要。
把遺漏的細(xì)節(jié)補(bǔ)充進(jìn)去
挪動(dòng)即時(shí)貼的方式最爽的地方在于能夠讓我們看到一整個(gè)大的故事??粗@些已經(jīng)被組織在敘述流中的故事,我們會(huì)更容易發(fā)現(xiàn)被遺漏的部分。
現(xiàn)在回過(guò)頭去看看你的那張正在變大的地圖,看看有哪些步驟是你遺漏了的。
我只增加了幾張即時(shí)貼,因?yàn)橛刑嘣凇昂F矫妗敝碌募?xì)節(jié)了,所以我不打算把它們寫出來(lái)了。如果我這么做了,我的桌子上也許會(huì)有上百?gòu)埣磿r(shí)貼。
3. 探索其它的故事
直到現(xiàn)在為止,都太明顯了,對(duì)吧?學(xué)習(xí)這些東西感覺(jué)都對(duì)不起你浪費(fèi)的那些紙!
但是,好玩的事兒才剛剛開始呢。
花上一分鐘想想你昨天早上都做什么了。如果昨天早上和今天早上你做過(guò)的事有什么不一樣的,把它們寫下來(lái)并加入到你的故事地圖中。
想象一下一個(gè)糟糕的早上,如果沒(méi)有沒(méi)有熱水了會(huì)怎樣?你會(huì)怎么做?如果麥片或者牛奶或者其它的什么你經(jīng)常作為早餐的什么東西沒(méi)有了呢?如果你閨女因?yàn)闆](méi)做作業(yè)而一大清早情緒崩潰了怎么辦(這種事情在我家每隔一段時(shí)間就會(huì)發(fā)生一次)?
把你處理這些事情時(shí)候的任務(wù)寫下來(lái)并加入到你的故事地圖中。
現(xiàn)在想象一個(gè)你理想中的早晨。哪些事情能夠讓你的早晨變得非常完美呢?如果早上我去晨練了,并且伴隨著閱讀享受了一頓悠閑的早飯的話,對(duì)我來(lái)講就算是一個(gè)完美的早晨了。不過(guò)如果那樣的話,我希望我能夠早起一會(huì)兒并終止每天早上和鬧鐘的作戰(zhàn)。
同時(shí)注意一下你最好把一些任務(wù)放到同一列當(dāng)中,不僅為了節(jié)省空間,同時(shí)還意味著他們和其它的任務(wù)有相像的地方。例如,你可能會(huì)把“做一頓豐盛的早餐”和“快速做一頓早飯”放到同一列中。
我的朋友David Hussman管這件事叫做“怎么辦”的游戲。不幸的是,我們也許可以玩這個(gè)游戲很長(zhǎng)的時(shí)間,但 那會(huì)讓我們的地圖變得無(wú)比巨大。我加了一些我希望能夠在早上做的事,例如晨練、伴隨著放松的閱讀吃一頓早餐。我還加了一些經(jīng)常在早上發(fā)生的其它事。
把細(xì)節(jié)、其它的選項(xiàng)、變化和異常加入到你的地圖中
保持?jǐn)⑹隽?/h3>
有沒(méi)有注意到當(dāng)你開始加入這些新的任務(wù)的時(shí)候,你會(huì)重新調(diào)整你的敘述流。至少我會(huì)的。例如,我需要把“晨練”插入到“起床”和“沖澡”之間。同時(shí)我需要加入“穿上運(yùn)動(dòng)服”,而這個(gè)任務(wù)和我洗完澡之后的“穿衣”還是不同的。
如果你很輕松自然地把事情都排列好,你會(huì)對(duì)呈現(xiàn)出來(lái)的敘述流感到很滿意。
如果現(xiàn)在你講出你的故事的話,你會(huì)發(fā)現(xiàn)你可以用很多種方式講出這個(gè)故事。你可以講關(guān)于典型的早上的故事、關(guān)于一個(gè)豪華早上的故事、關(guān)于發(fā)生了一件或兩件緊急事件的早上。所有的這些故事都可以采用同樣的方式——用手指從左向右一張一張地指著不同的即時(shí)貼。試試使用一些連詞來(lái)把你的任務(wù)連接起來(lái),你也許會(huì)說(shuō):“通常我做這件事,但有時(shí)候我做這個(gè)?!被蛘摺拔易鲞@件事,或者這件,然后是這件事?!碑?dāng)然我希望你用具體要做的事來(lái)代替“這件事”這個(gè)詞,因?yàn)閺奈疫@里看不到你指的是哪張即時(shí)貼。
我小的時(shí)候,有一個(gè)兒童圖書系列,叫做《選擇你自己的大冒險(xiǎn)》,也許你也記得它們。它會(huì)在你閱讀完一個(gè)章節(jié)的時(shí)候給你好幾個(gè)選項(xiàng),你的選擇會(huì)決定英雄接下來(lái)要做的事。在每個(gè)選項(xiàng)后面都是一個(gè)頁(yè)碼。如果你選擇了一個(gè)選項(xiàng),就可以把書翻到指定的頁(yè)碼繼續(xù)讀。實(shí)話實(shí)話,我從來(lái)都不是這類書的粉絲。不管我做出什么樣的選擇,故事最終好像都會(huì)結(jié)束在同一個(gè)地方,而且對(duì)于一個(gè)真正的大冒險(xiǎn)的話,似乎選項(xiàng)從來(lái)都不夠。故事地圖有點(diǎn)像這種書,或許更好一點(diǎn)兒。地圖中的道路數(shù)量幾乎是無(wú)限的,如果你想想一個(gè)使用你的軟件來(lái)達(dá)成他們自己目標(biāo)的人,這種情況確實(shí)更真實(shí)一點(diǎn)兒。
如果你想讓整件事情變得更加有挑戰(zhàn)性一點(diǎn)兒的話,那就和你的同事們一起來(lái)做這個(gè)練習(xí)。你會(huì)更多地了解這些每天和你一起工作的人,并且你會(huì)發(fā)現(xiàn)找到每個(gè)人都同意的敘述流是一件有趣的事兒。在這里,“有趣”的意思是“爭(zhēng)論”??傆幸恍┤嗽诔酝暝顼埲ハ丛?,而另外一些人正好相反,同樣,關(guān)于刷牙也是個(gè)經(jīng)常發(fā)生的爭(zhēng)論,你是在吃早飯前刷牙還是在吃早飯后刷牙呢?或者早飯前后各刷一次?
放輕松。
如果你們有分歧,那證明這件事其實(shí)不是什么大不了的事兒。例如,早飯前洗澡或者早飯后洗澡只是個(gè)人喜好問(wèn)題。如果找到那些你和你的同事們共通的事情,你會(huì)發(fā)現(xiàn)在真正重要的事上不會(huì)有什么分歧,例如把“穿衣服”這個(gè)任務(wù)放在“沖澡”這個(gè)任務(wù)之后,這件事就不是什么個(gè)人喜好問(wèn)題了,畢竟沖澡之前穿衣服只會(huì)讓你濕漉漉地出現(xiàn)在你的同事面前。
4. 提煉你的故事地圖,找到一條主線
到現(xiàn)在為止,你的故事地圖應(yīng)該看上去很寬了,如果你探索了一些其它選項(xiàng),應(yīng)該看上去也有了一定高度。應(yīng)該差不多有了30個(gè)左右的任務(wù)吧,有點(diǎn)兒像一只詭異的動(dòng)物的脊椎骨和肋骨。
回頭從左向右看一下你的故事地圖,你會(huì)發(fā)現(xiàn)有一堆故事好像應(yīng)該原本待在一起。例如,那些你在浴室中完成的事情,或者那些在廚房為了做早飯而做的事,或者那些你離開家門之前的瑣事——看看天氣、抄起外套、把電腦和一天用的東西裝進(jìn)包里之類的。你發(fā)現(xiàn)了嗎?這樣一堆一堆的任務(wù)好像原本就應(yīng)該待在一起,幫你完成一個(gè)更大的目標(biāo)。
在每堆相似的任務(wù)上面,貼上一個(gè)不同顏色的即時(shí)貼,并寫上一個(gè)動(dòng)詞短語(yǔ),把下面那些待在一堆的任務(wù)提煉出來(lái)。
如果你沒(méi)有其它顏色的即時(shí)貼了,讓我教你個(gè)小把戲——其實(shí)每張即時(shí)貼都有兩種不同的形狀!只需要把一張即時(shí)貼旋轉(zhuǎn)45°……唰!一張鉆石形狀的即時(shí)貼就閃亮登場(chǎng)了!當(dāng)你希望擁有不同形狀的即時(shí)貼的時(shí)候,就可以用這個(gè)法子。
這些更高一層的任務(wù)被稱作”活動(dòng)“?;顒?dòng)把一堆由相同的人在相同的時(shí)間內(nèi)所做的任務(wù)組織起來(lái),去達(dá)成一個(gè)特定的目標(biāo)。當(dāng)你閱讀在故事地圖上面的活動(dòng)的時(shí)候,它們也構(gòu)成了一個(gè)敘述流。這一行即時(shí)貼就是整張故事地圖的骨干。如果你有一張由非常多數(shù)量的即時(shí)貼構(gòu)成的故事地圖,而你又非常想把它共享給別人的話,一個(gè)好的方式就是講一個(gè)高層次的故事。只需要閱讀一下故事地圖的主干,使用”然后,他們……“這個(gè)連接詞把每個(gè)活動(dòng)連接起來(lái)。
活動(dòng)可以為了一個(gè)共同的目標(biāo)把任務(wù)聚合起來(lái)。
這里是我把活動(dòng)加入到故事地圖中之后的樣子,活動(dòng)給了整張故事地圖一個(gè)骨干。它讓閱讀故事地圖和尋找某個(gè)任務(wù)變得更加容易,至少對(duì)我來(lái)講是這樣的。而且骨干還能讓我更容易地在宏觀上看到早上發(fā)生的所有事情。
活動(dòng)和更高級(jí)別的任務(wù)組成了故事地圖的骨干
活動(dòng)和任務(wù)不一定采取同樣的表述手段。舉個(gè)例子,你管早上離開屋子之前做的事情叫什么呢?就是類似拿起背包,找到一份購(gòu)物清單,查看天氣,拿起雨傘(如果需要的話)這種事情。我可能會(huì)管它叫”歸攏我的雜物“,而你可能會(huì)給它起個(gè)別的名字。
當(dāng)你在為你的客戶、你的產(chǎn)品創(chuàng)建故事地圖以及找到骨干的時(shí)候,最好能夠給他們起一個(gè)你的客戶習(xí)慣的名字。
5. 為了達(dá)成某個(gè)特性的目標(biāo),把你的任務(wù)們分片
接下來(lái)會(huì)是真正很酷的部分了,在這個(gè)小節(jié)里你會(huì)開始用故事地圖幫助你暢想那些沒(méi)有發(fā)生的事情。
如果看看你創(chuàng)造出來(lái)的故事地圖,你可能會(huì)看到”點(diǎn)擊鬧鐘的‘小睡一會(huì)兒’“或者”關(guān)上鬧鐘“在你地圖的最左端。想象一下昨晚你忘記設(shè)置鬧鐘了,所以今天早上你沒(méi)有執(zhí)行這些”任務(wù)“。你猛地睜開眼,看了一眼鬧鐘,發(fā)現(xiàn)幾分鐘之后你就應(yīng)該出現(xiàn)在某地,你要遲到了!——?jiǎng)e緊張,我們只是假設(shè)。
在一張即時(shí)貼上寫下”幾分鐘之內(nèi)出門“,把它放在故事地圖的最左端,靠上的位置?,F(xiàn)在設(shè)想一條線,從左向右貫穿整張故事地圖,就像一條腰帶一樣?,F(xiàn)在,把所有不是必須的任務(wù)移到這條線的下方。不需要把活動(dòng)挪下來(lái),即使在線的上方?jīng)]有任何這個(gè)活動(dòng)下屬的任務(wù)了。就讓那個(gè)活動(dòng)下面沒(méi)有任何任務(wù),這表示如果你想在幾分鐘之內(nèi)出門,你不需要去達(dá)成這個(gè)活動(dòng)的目標(biāo)。
現(xiàn)在在最上面的切片里應(yīng)該只剩下了少數(shù)的幾個(gè)任務(wù)?,F(xiàn)在回頭沿著整個(gè)敘述流查看一下,如果在你馬上要遲到的時(shí)候,還有什么事需要做,而不在故事地圖之中的。例如,平時(shí)你也許會(huì)”沖澡“,但在如此緊急的時(shí)刻,”胡亂洗一把臉“或者”用毛巾擦一下身上有異味的部位“這種任務(wù)會(huì)取代”沖澡“。每當(dāng)我在一群程序員中做這個(gè)練習(xí)的時(shí)候,我經(jīng)??吹健倍嗤恳恍┏秳斑@個(gè)任務(wù)。我沒(méi)有偏見,我只是在陳述。
這里是我的地圖,分出來(lái)的這一條就是我如果想在幾分鐘之內(nèi)出門,要做的所有任務(wù)。
你可以用這個(gè)方法考慮不同的目標(biāo),把這些不同的目標(biāo)貼在最左端。比如”享受一個(gè)有史以來(lái)最豪華的清晨“,或者”為期兩周的度假“。你會(huì)發(fā)現(xiàn)敘述流會(huì)保持穩(wěn)定,但你需要添加或刪除某些任務(wù)來(lái)達(dá)成不同的目標(biāo)。
采用分片的方式,在特定的目標(biāo)下識(shí)別出對(duì)應(yīng)的任務(wù)和細(xì)節(jié)
就這些了!你已經(jīng)學(xué)到了所有重要的概念
太容易了,對(duì)吧?隨著你創(chuàng)建這個(gè)故事地圖,你學(xué)到了:
- 任務(wù)是描述人們做的事用的,它是動(dòng)詞短語(yǔ)。
- 任務(wù)具有不同的目標(biāo)等級(jí)。
- 任務(wù)在故事地圖中從左向右被組織成為敘述流。
- 故事地圖的縱深包含了變化的、可互相替換的任務(wù)。
- 任務(wù)被處于故事地圖頂端的活動(dòng)組織在一起。
- 活動(dòng)構(gòu)成了故事地圖的骨干。
- 你可以把故事地圖分片,用來(lái)識(shí)別為了達(dá)成某個(gè)特定目標(biāo)而必須的任務(wù)。