<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 需求分析 項目實戰《付費課程MVP系統》 ## 什么是用戶故事? 用戶故事是從用戶的角度來描述用戶渴望得到的功能。一個好的用戶故事包括三個要素: 1. 角色:誰要使用這個功能。 2. 活動:需要完成什么樣的功能。 3. 商業價值:為什么需要這個功能,這個功能帶來什么樣的價值。 用戶故事通常按照如下的格式來表達: * 英文:As a?, I want to?, so that?. * 中文:作為一個, 我想要, 以便于 * 舉例:作為一個“網站管理員”,我想要“統計每天有多少人訪問了我的網站”,以便于“我的贊助商了解我的網站會給他們帶來什么收益。” 需要注意的是用戶故事不能夠使用技術語言來描述,要使用用戶可以理解的業務語言來描述 ## 場景 cucumber里的步驟定義 ~~~ Given /^當前是(.*)/ do |action| @action= action end When /^輸入是(.*)/ do |subject| @subject = subject end Then /^能看到(.*)/ do |greeting| if greeting != "#{@action}#{@subject}" raise "期望看到<" + greeting + ">,實際看到<" + "#{@action}#{@subject}>" end end ~~~ 場景: 1. 假如當前是中文 2. 當輸入是測試 3. 那么能看到中文測試 場景1: 1. 假如當前是入庫 2. 當輸入是選擇某個貨品 3. 那么能完成入庫 場景2: 1. 假如當前是入庫 2. 當輸入是無法選擇任何產品 3. 那么能跳轉到新建產品界面 ## 精簡后的需求文檔 我們探索的辦法 * 使用用戶故事描述,需求 * 使用場景來驗證并測試 嚴格執行agile很難,沒有scrum master搞不定 ## 具體需求 先實現一個MVP(最小可用原型) ### 查看所有課程 * 作為一個, * 我想要, * 以便于 場景1 1. 假如當前沒有課程 2. 當輸入是點擊了查看所有課程連接 3. 那么能看到錯誤提示頁面,提示請稍后再來 ### 查看課程詳情 * 作為一個, * 我想要, * 以便于 ### 參加免費課程 * 作為一個, * 我想要, * 以便于 ### 參加付費課程 * 作為一個, * 我想要, * 以便于 場景1:支付成功 1. 假如當前支付成功 2. 當輸入是錢數>0,并且微信支付成功 3. 那么能看到我的課程里的課程支付信息 場景2:支付失敗 1. 假如當前支付失敗 2. 當輸入錢數《=0,或微信支付失敗 3. 那么能看到錯誤提示頁面,提示請返回重試 ### 查看我的個人信息 * 作為一個, * 我想要, * 以便于 ### 使用微信用戶登錄 * 作為一個, * 我想要, * 以便于 ### 查看我的課程 * 作為一個, * 我想要, * 以便于 ### 分享課程詳情 * 作為一個, * 我想要, * 以便于
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看