解析Keep:如何優化課程體驗?

編輯導語:如今,人們越來越注重健康消費,不斷地去尋找更加健康的生活和運動方式。隨著互聯網技術的迅速發展,開辟了“互聯網+健身”模式,掀起了健身行業的快速變革,轉眼間,keep健身已成為知名品牌。本文作者作為一名資深“keeper”,對Keep進行了解析,總結了如何才能優化其課程體驗。

1. 需求背景

1.1 競品分析回顧

筆者此前針對Keep、咕咚、小米運動三個運動健身app進行了市場分析和競品分析。

由于近年來國家對于運動健身事業的扶持、國民經濟水平的提高、健身意識的覺醒、5G和其他技術的進步等諸多利好因素,線上健身事業迎來了巨大的發展契機。

目前Keep在國內運動健身智能平臺中處于領先地位,注冊用戶超過兩億,得益于其全品類的運動類別記錄功能、大量免費的精品健身課程、良好的社區交流氛圍等,其行業獨占率遙遙領先,可以說是國內最受認可的智能健身應用。

即便如此,Keep仍然面臨一系列問題和挑戰,如平臺用戶活躍度不高、應用下載量面臨瓶頸、商業化道路困難重重等。

通過對Keep自身的優勢、劣勢,及其所面臨的外部機遇、挑戰,筆者進行了SWOT分析,從內容模塊(主要針對課程)、社區模塊和商業化模塊分別提出了幾點發揮優勢、克服劣勢、抓住機遇、化解危機的建議(完整的競品分析報告請見http://www.woshipm.com/evaluating/4170714.html)。

1.2 用戶調研

筆者通過競品分析得出了內容模塊、社區模塊和商業化模塊三個調研方向,采取了用戶訪談和問卷調查結合的方式進行了本次用戶調研。

但受到個人條件限制,未能對樣本進行大規模隨機調研,僅對5為用戶進行了訪談,收回66份調查問卷,因此調研結果僅用于本次迭代練習。

筆者首先通過微信語音對身邊5位經常使用Keep鍛煉的好友進行了訪談,通過訪談,印證了競品分析中Keep吸引用戶的主要原因在于免費精品課程和全品類運動記錄功能的觀點,同時也發現了用戶對于課程、社區和商業化三個模塊的槽點集中之處:

根據用戶訪談的結果、結合頭腦風暴和筆者的使用體驗,共總結出33條具體需求,列出了需求清單。為了確定需求優先級,筆者編制了調查問卷,對需求進行定量分析。

結合Keep這個產品一站式智能運動平臺的定位,筆者認為,因為豐富優質的免費課程是Keep從眾多健身平臺中脫穎而出的核心競爭力,持續優化健身課程的體驗,有利于Keep繼續高筑壁壘,一騎絕塵。

因此,筆者在設置本次調查問卷的題目時,選擇了內容模塊作為方向,以與課程有關的需求作為此次問卷調查的主線。

問卷涉及的主要問題有課程難度、課程多樣性、內容滿意度、直播課、會員計劃滿意度這幾個方面(調查問卷連接:https://www.wjx.cn/m/91409115.aspx)。

本次問卷調查收回樣本66份,其中有40位使用過Keep的用戶,占總樣本的60%。通過用戶個人信息調查,得知樣本畫像與Keep的用戶畫像基本一致。

調查結果顯示,四成用戶對“訓練感受反饋”模塊表示不滿意;對于推薦課程,接近五成用戶表示不滿意或沒注意過。

從課程總體滿意度上看,選擇滿意和非常滿意的用戶勉強超過半數,用戶不滿意的原因中,占比最高的兩項為:1Keep課程不能智能調整難度;同一個訓練部位的課程較為單一,需要研發更豐富的課程。

因此筆者在本次迭代中,將“訓練感受反饋”與“推薦課程”結合,在二者間建立跳轉關系,為推薦課程模塊引流,提高推薦課程點擊率,并增加運動偏好修改功能,在優化算法的基礎上提高內容推薦的準確性。

對于課程難度,增加官方課程調整功能,用戶可根據自身訓練水平對官方課程做出一定調整;對于課程多樣性,首先豐富動作庫動作,增加分組分類標簽,并向有一定訓練基礎的用戶開放自制課程功能。

通過上述功能的新增和完善,提高用戶對Keep課程的滿意度。

由于本次調查問卷之時正處于直播課上線之初,受訪用戶對直播課內容和形式基本不了解,且樣本中體驗過會員訓練計劃的人數也過少,因此本次迭代暫不考慮這兩個方向。

但從今年受疫情影響和5G時代為直播行業帶來的發展契機來看,直播課一定是近期Keep團隊重點把握的迭代方向。

1.3 需求列表

通過以上競品分析回顧和用戶調研分析,本次迭代從需求列表中選出了除Bug外優先級最高的下列幾個需求作為此次功能優化的方向:

(完整需求清單: https://pan.baidu.com/s/1PFH174UdoAOjKGOXMCTbIQ ;提取碼: 2pvk)

2. 功能設計

2.1 優化訓練感受反饋和推薦課程

功能點拆分:

  • “本次訓練感受”后置,反饋后顯示推薦課程
  • 在我的模塊增加運動偏好入口

2.1.1 本次訓練感受后置,反饋后顯示推薦課程

用戶調研過程中,發現有部分用戶與筆者一樣對“本次訓練感受”反饋功能產生了誤解,認為反饋后系統會根據反饋結果智能調整課程難度,但實際上反饋結果只是幫助系統向用戶推薦其他訓練課程。

因此,本次調整將“訓練感受反饋”和“推薦課程”建立跳轉關系,一方面突出反饋感受的目的,另一方面吸引用戶對關注推薦課程。

2.1.1.1 流程圖

2.1.1.2 功能原型

2.1.1.3 功能邏輯

  • 訓練完成后,界面1不再顯示“本次訓練感受”模塊;
  • 用戶選擇“完成”直接跳轉至界面2,或進行“分享”或“打卡”,完成對應操作后跳轉至界面2,“本次訓練感受”添加至該界面;
  • 用戶反饋訓練感受后,原文案和表情不變,并顯示“推薦課程”;用戶若不反饋訓練感受,則此流程結束;
  • 返回鍵回到運動首頁。

2.1.1.4 功能目標

  • 用戶選擇感受后,立即向用戶推薦課程,讓用戶明確知悉訓練感受反饋的目的是向用戶推薦合適的其他課程;
  • 反饋后立即顯示“推薦課程”,有助于吸引用戶注意力,提高推薦課程點擊率;
  • 將“本次訓練感受”模塊移動到訓練完成和打卡之后的界面,不會影響到用戶進行分享或打卡操作。

2.1.2 增加運動偏好入口

新用戶注冊后,在填寫個人信息過程中有關于運動偏好標簽的選擇,包括“運動目標”(多選)和“運動水平”(單選)兩項,此功能的問題在于:

首先,用戶一旦做出選擇就無法修改,日后運動偏好改變則無法獲得合適的推薦內容;

其次,“運動目標”下僅列出10個標簽,未完全列舉平臺所能滿足的運動需求,模糊的選項導致推薦內容的不準確。因此筆者提出增加運動偏好入口,完善偏好標簽,且用戶可隨時更改。

2.1.2.1 功能原型

2.1.2.2 功能邏輯

  • 如界面1所示,我的模塊增加“運動偏好”入口,點擊進入界面2選擇運動偏好標簽;
  • 將運動標簽從原來的兩項擴展到四項,增加“訓練部位”和“運動品類”選項,并修改原“運動目標”項下的標簽,使三者與“全部課程”篩選的標簽一致(如界面1和2.2所示),原“運動水平”選項不變;
  • “運動目標”、“訓練部位”、“運動品類”標簽可多選,未選中和選中狀態分別為界面2所示的灰色和綠色標簽;“運動水平”為單選,文案不變;
  • 保存后返回“我的”界面,toast提示“保存成功”,2秒后消失;
  • 優化算法,根據用戶選擇的運動偏好標簽為用戶推薦合適的內容。

2.1.2.3 功能目標

  • 收集更多的用戶訓練偏好信息,有助于平臺數據的積累;
  • 標簽可更改,有助于了解用戶在使用Keep后運動表現上發生的變化;
  • 更詳細的訓練偏好有助于更精準地為用戶推薦合適內容,提高用戶滿意度。

2.2   訓練課程個性化設置

功能點拆分:

  • 動作庫收錄所有動作并分組分類
  • 調整官方課程
  • 添加自制課程

2.2.1 動作庫收錄所有動作并分組分類

2.2.1.1 功能原型

2.2.1.2 功能邏輯

  • 將所有官方課和達人課中出現的動作收錄至動作庫中;
  • 界面1動作庫中原有的“胸部、背部、肩部、手臂、頸部、腹部、腰部、臀部、腿部、全身”十個部位組別標簽保持不變,所有組別中的所有動作分成 “熱身、訓練、拉伸” 三個品類并對應添加類別標簽;
  • 用戶在界面1選擇組別后,進入界面2瀏覽組內每個品類的動作,類別標簽默認展開,點擊標簽切換展開/收起,如界面3所示,無頁面跳轉;
  • 一個動作可重復出現在不同組別或不同品類中,每個品類中無器械動作排列在有器械動作之前,左右對稱的兩個動作位置連續,其余動作順序由課程設計師決定;
  • 界面1新增“熱身”和“拉伸”兩個分組標簽,分別收錄前十個身體部位分組中的熱身和拉伸動作,并將這些動作的身體部位標簽作為在這兩個新分組中的品類標簽。

2.2.1.3 功能目標

  • 擴充動作庫,盡量多的收錄動作,滿足用戶各類訓練需求;
  • 將動作品類細分,使用戶更容易定位自己需要訓練的動作;
  • 添加“熱身”、“拉伸”動作分組和分類,給用戶訓練前后科學的熱身和拉伸建議;
  • 為調整官方課程功能和自制課程功能做準備。

2.2.2 調整官方課程

2.2.2.1 流程圖

2.2.2.2 功能入口

調整官方課程難度功能的入口有兩種,分別為:

  • 入口①訓練結束后,界面增加“難度調整”按鈕,點擊進入界面1;
  • 入口②課程詳情頁-課程內容,內容頁底部增加“難度調整”按鈕,點擊進入界面2;
  • 兩種入口難度調整邏輯相同,區別在于入口②顯示動作縮略圖。

2.2.2.3 功能邏輯與功能原型

難度調整:上圖中,界面1和界面2為難度調整界面,課程動作列表被分為“熱身、訓練、拉伸”三個品類標簽(若無熱身或拉伸動作,則不顯示該標簽),界面中可進行的調整操作包括調整時間或數量、查看動作詳情、調整順序、替換動作、復原官方課程、保存、返回上層。

  • 調整時間:以時間為單位的動作可以通過時間兩邊的加號延長或減號縮短訓練時長,每次操作變化時間為2秒。延長時間上限為原動作時長的2倍,當原時長為單數時,到達上限前的最后一次操作變化時間為1秒;縮短時間下限為原動作時長的一半,當原時長的一半為單數時,到達下限前的最后一次操作變化時間為1秒。到達調整上限/下限時,系統以toast形式提示,2秒后自動消失,文案分別為“不能再加啦,休息一下吧~”和“不能再減啦,不要偷懶哦~”。
  • 調整數量:以個數為單位的動作可以通過數量兩邊的加號增加或減號減少訓練個數,每次操作變化數量為1個。增加數量上限為原動作數量的2倍;減少數量下限為原動作數量的一半,當原動作數量n為單數時,可調整的數量為(n-1)/2;到達調整上限/下限時,系統以toast形式提示,2秒后自動消失。文案分別為“不能再加啦,休息一下吧~”和“不能再減啦,不要偷懶哦~”。
  • 查看動作詳情:在界面1中單擊動作名稱、在界面2中單擊動作名稱或縮略圖,可進入動作詳情頁,詳情頁展示內容和交互邏輯不變。
  • 調整順序:長按動作名稱左側小圖標,上下拖動調整動作位置,移動范圍僅限于當前品類標簽。
  • 替換動作:(下圖原型圖以入口①為例)如界面3所示,將動作名稱左滑,出現“替換動作”選項,單擊后進入界面4,即推薦動作庫。單擊動作右側添加按鈕,彈出界面5的蒙層和dialog提示“確定將 A動作 替換為 B動作 嗎?”,選擇“取消”則返回界面4,選擇“替換”則進入界面6,且toast提示“替換成功”,2秒后消失,新動作取代原動作在課程列表中的位置。

注:

  1. 推薦動作庫中的動作是由系統篩選的與被替換動作訓練同一個身體部位,且同屬“熱身”、“訓練”或“拉伸”品類的動作,列表中加入“無器械”和“有器械”兩個標簽,將動作分類展示。
  2. 課程設計師需將動作庫中的每個動作都設置一個時長或個數的初始值,替換動作后默認顯示新動作的初始時長或個數,用戶可根據需求自行調整。
  3. 課程列表和推薦動作庫中左右對稱的兩個動作,在進入“替換動作”功能時默認合并成為一組動作,同時調整時間或數量、同時替換或被替換,如界面4的“左側偏重俯臥撐”和“右側偏重俯臥撐”所示。“熱身”和“拉伸”標簽下的左右對稱動作中間無休息時間,“訓練”標簽下的左右對稱動作中間休息時間為n秒,n的值由課程設計師設置。
  • 復原官方課程(下圖原型圖以入口①為例):當用戶對官方課程進行調整后,可通過界面6右上角的“復原”按鈕,一鍵恢復官方課。單擊“復原”后彈出界面7的蒙層和dialog對話框,提示“確定將所有調整刪除,并復原官方課程?”,選擇“取消”返回界面6,選擇“復原”彈出界面8所示的toast,提示“復原成功”,2秒后自動消失。若用戶未對官方課程進行任何修改,點擊“復原”則彈出界面9所示的toast,提示“你還沒有對本課程進行調整哦~”,2秒后消失。

  • 保存:用戶對課程進行任意調整后,點擊界面6下方“保存”,返回至入口①訓練完成頁面,并彈出toast提示“保存成功,調整將在下次訓練時生效”。若用戶本次未對課程進行任何調整,點擊“保存”則彈出toast提示“你還沒有對本課程進行調整哦~” ,2秒后消失,頁面不跳轉。
  • 返回:若用戶本次未對課程進行任何調整,點擊界面1或界面2的返回鍵可直接返回至上層入口界面。若用戶對課程進行任意修改后,在未保存的情況下選擇返回,則彈出蒙層和dialog對話框,詢問“此時離開系統將不會保存你所做的調整,確認離開?”,選項“離開”返回至上層入口界面,選擇“取消”留在當前界面。

休息時間:休息時間是默認且無法調整的,課程設計師需將動作庫中每個“訓練”標簽下的動作都設置一個默認休息時間X秒。

用戶替換某個動作后,訓練時此動作后的休息時間即為默認值X秒;若用戶將多個連續的動作替換為同一個動作時,該動作第一次訓練后休息時間為X秒,第二次為X+10秒,第三次為X+20秒,以10秒為公差類推。

若兩組動作雖相同卻不連續,則每組動作后的休息時間仍然為X秒。動作庫中“熱身”和“拉伸”標簽下的動作后默認無休息時間。

只有課程列表中“熱身”標簽下的最后一個動作之后,即“訓練”標簽的第一個動作開始之前,有20秒的休息時間(休息時間可增加20秒的邏輯不變)。

用戶版本更新后首次登陸時,需要設置新手指引。

2.2.2.4 功能目標

Keep的一些官方課程整體上符合用戶的訓練需求,但受到場景、器械和個人身體素質等各種原因的限制,課程中的有些動作可能無法完成。

用戶按照自身需求調整課程動作類型、數量和訓練時長,實現課程的個性化定制,能夠優化用戶的課程使用體驗。

2.2.3 自制課程

2.2.3.1 流程圖

2.2.3.2 功能入口

自制課程功能入口有三種,第一種和第二種新建課程的方式可以直接通過我的課程庫喚起,適用于所有用戶,如圖所示分別為:

  • 入口①:運動-訓練-我的課程庫-更多;
  • 入口②:我的-我的課程-我的課程庫-更多。

第三種新建課程的方式適用于已經使用過第一或第二種方式新建過課程且保留了“我的自制課程” 合集的用戶,如上圖:

  • 入口③:我的自制課程-更多,選擇新建課程(注:只有系統默認創建的“我的自制課程”合集下可以新建課程,若用戶新建的課程合集命名為“我的自制課程”,不允許新建課程,“我的自制課程”合集邏輯在下文詳述)。

2.2.3.3 功能邏輯與功能原型

新建課程:

(上圖原型圖以入口①為例)通過界面1“我的課程庫”右側更多選項,選擇新建課程,進入界面2設置課程名稱,文字輸入規則與新建課程合集的命名規則相同。

若用戶不輸入任何字符,則課程名稱默認為“我的第N+1個自制課程”(N為用戶已經創建的自制課程,N+1為中文數字),點擊確定后跳轉至界面3課程內容列表,此時動作列表為空。

“我的自制課程”合集:

若用戶在界面3不添加動作直接返回,則進入界面4,即“我的自制課程”合集課程列表。

該合集為用戶首次新建課程時系統默認創建,不允許重命名,此合集將收錄所有自制課程,新建課程默認排在合集課程列表最頂,合集課程列表顯示所有自制課程,展示信息包括課程名稱、時長、難度、上次訓練時間(未添加動作的課程顯示為“0個動作”,未訓練過的課程顯示“還未進行過訓練”)。

左滑課程名稱可刪除課程。合集封面為第一個自制課程的封面圖片,若該課程被刪除,則合集封面變為當前課程列表中排在最頂課程的封面圖片。

若該課程未設置封面圖片,則合集封面為默認灰色。合集右上角更多選項可進行的操作有“新建課程”、“批量管理課程”、“刪除合集”、“取消”:

  • 新建課程:即用戶自制課程入口③,不贅述;
  • 批量管理課程:可對課程進行排序或刪除,此功能邏輯與其他合集邏輯相同;
  • 刪除合集:彈出dialog提示“若刪除此合集,所有自制課程將被刪除且無法回復,確認刪除?”。合集確認刪除后再次自制課程時,系統將再次自動創建此合集。

添加動作:用戶在上圖界面3選擇“去添加”,進入下圖界面5的動作庫,選擇一個分類進入界面6,單擊動作右側添加按鈕,彈出toast提示“添加成功”,2秒后自動消失,頁面不跳轉,用戶可繼續選擇其他動作進行添加,新動作將默認添加至課程列表中相應標簽最頂端的位置。

添加過程中,界面6右上角即時顯示已添加的動作數量,課程設計師需設置一個最大值,當用戶添加的動作數量超過該值時,系統toast提示“你添加的動作太多了,先去訓練吧~”,2秒后消失。

所有動作添加完成后,通過點擊左上角返回按鈕,可返回至界面7的動作列表進行調整。界面7可進行的操作包括調整時間或數量、查看動作詳情、調整順序、刪除動作、繼續添加動作、返回、保存:

  • 調整時間、調整數量、查看動作詳情、調整順序:邏輯同2.2.2調整官方課程;
  • 刪除動作:左滑要刪除的動作,單擊刪除彈出蒙層和dialog,詢問“確定將此動作刪除?”,選擇“刪除”則彈出toast提示“刪除成功”,2秒后消失;選擇“取消”直接返回界面7;
  • 添加動作:進入界面5和界面6,重復添加流程;
  • 返回:彈出蒙層和dialog,詢問“此時離開系統將不會保存你所做的調整,確認離開?”,選項“離開”返回至界面4,選擇“取消”留在當前界面;
  • 保存:跳轉至界面8“我的自制課程”合集列表,同時彈出toast提示“保存成功”,2秒后消失。

課程詳情頁:在界面4單擊未添加動作的課程名稱進入界面3;在單擊界面8單擊已添加動作的課程名稱進入界面9,詳情頁展示內容包括課程封面、“自制課程”標簽、課程名稱、熱量消耗、課程難度、課程時間、建議練習頻次、所需器械、課程內容、已添加按鈕、開始訓練按鈕:

  • 課程封面:單擊屏幕上方灰色區域可選擇圖片或更換封面圖片,下方彈出彈框選擇“拍照、相冊選擇、取消”(若未授權相機或相冊需先取得授權);
  • 熱量消耗、課程時間:由系統根據用戶選擇的動作內容計算;
  • 課程難度、建議練習頻次:由系統根據用戶選擇的動作內容估算;
  • 所需器械:根據用戶選擇的課程,列出用到的所有器械,展開后彈出相關商品鏈接;無器械則顯示“無”,且不能展開;
  • 課程內容:該模塊顯示動作組數(單擊展開至界面10)、每個動作的縮略圖(含動作名稱和時間,單擊進入動作詳情頁)、組間休息時間,橫版顯示,左右滑動可查看全部動作內容。界面10為豎版排列的課程內容列表,顯示每組動作的標簽、名稱、時間或個數,單擊進入動作詳情頁。此界面增加“難度調整”按鈕,選擇后進入界面7,可重新調整課程。若用戶本次未對課程進行任何調整,點擊“保存”則彈出toast提示“你還沒有對本課程進行調整哦~” ,2秒后消失,頁面不跳轉;
  • 已添加:單擊此按鈕,可將自制課程添加至其他合集,此邏輯不變。若用戶將“我的自制課程”合集刪除時,所有自制課程將被刪除,包括添加至其他課程合集的自制課程;
  • 開始第n次訓練:n為已經訓練過的次數+1,選擇進入訓練;
  • 右上角更多選項:如下圖界面11所示,將原來“訓練實況”功能改為“修改名稱”,可修改自制課程名稱,單擊跳轉至界面12,輸入文字邏輯不變,“確定”保存修改跳轉至界面13課程詳情頁,toast提示“保存成功”,2秒后消失;“取消”返回至界面11。增加“刪除課程”功能,與其他刪除功能邏輯相同。

等級限制:根據Keep官方數據顯示,用戶達到健身等級的時間要求和人數如下圖所示。用戶達到一定的健身時長,具有了一定健身經驗,才允許使用自制課程功能。

功能上線之初,可首先對W17級以上(健身40000分鐘以上)的用戶開放,并隨機邀請W12至W16級(健身20000分鐘至40000分鐘之間)的部分活躍用戶參與內測,一個月后,搜集用戶反饋并對功能進行迭代升級,再完全面向W12級以上的用戶開放。

兩個月后,根據用戶對功能的使用情況和滿意度,決定是否繼續向等級更低的用戶開放(上文所述等級為示例,具體等級限制規則需由產品、運營、課程設計團隊共同商議確定)。

2.2.3.4 功能目標

  • 允許有一定健身經驗的用戶制定個性化課程,不受官方課程限制,給予這部分用戶更大的發揮空間,提高課程模塊的滿意度,起到增加留存的作用;
  • 對自制課程功能加以一定的等級限制,一方面可以保證自制課程的品質,另一方面對等級較低的用戶起到一定激勵作用。

2.2.3.5 迭代方向

  • 復制官方課程:自制課程基本功能穩定后,增加一鍵復制官方課程功能,用戶可以在官方課程動作列表的基礎上設計自己的課程;
  • 發布自制課程:支持用戶發布自制課程,課程經過官方審核后,可以成為公開課程,供站內所有Keepers跟練,使課程種類更加豐富,既滿足了創作者的成就感,又滿足使用者的個性化需求。

3. 數據統計需求

4. 需求配合部門

4.1 課程設計團隊

  • 將動作庫中所有動作加上“熱身”、“訓練”、“拉伸”三個品類標簽;
  • 將官方課程和達人設計課程中的所有未列在動作庫中的動作錄制成GIF動畫,并加入動作庫對應分組標簽和品類標簽;
  • 有器械的動作需列出器械名稱;
  • 將動作庫中的每個動作都設置一個訓練時長或個數的初始值;設置“訓練”標簽下的左右對稱動作中間休息時間n的值;
  • 設置“訓練”標簽下每個動作休息時長的默認值;
  • 設置自制課程添加動作組數的最大值;
  • 確定動作庫每個組別和品類中動作的顯示順序。

4.2 運營部門

  • 負責“調整官方課程”功能推廣和“自制課程”功能在符合條件的用戶間推廣;
  • 與產品團隊和課程設計團隊商議決定“自制課程”功能上線初期的等級限制規則;邀請部分即將達到限制等級的活躍用戶參與功能體驗;
  • 功能上線一個月后,進行用戶調研,包括用戶對功能的使用情況、滿意度、意見和建議等;
  • 與產品團隊和課程設計團隊商議決定“自制課程”功能改版后是否對更多用戶開放。

4.3 服務部門

針對“調整官方課程”和“自制課程”功能邏輯設計新手指引。

 

本文由 @M.Lamiraud 原創發布于人人都是產品經理。未經許可,禁止轉載

題圖來自 Pexels,基于 CC0 協議

給作者打賞,鼓勵TA抓緊創作!

文章若有侵權請來信告知:品牌行銷策略,產品行銷與設計,各類型行銷推廣案例分享-品牌行銷點點讚 » 解析Keep:如何優化課程體驗?