SlideShare a Scribd company logo
1 of 25
Issue tracking workflow in web
development and maintenance
cycle
    Allan Huang @ esobi Inc.
Agenda

   Issue type definition
   Role definitions and permissions
   Field definitions on issue form
   Issue tracking workflow
   Scenario simulation
   Q&A
Project Space

   eSobi Production Website
       ID: PRODUCTION
   eSobi Backend Website
       ID : BACKEND
   eSobi Club Website
       ID : CLUB
   TWCA Event Website
       ID : TWCA
Issue type definition
   Defect / Bug
       針對系統瑕疵提出的需求
   New Feature
       針對系統提出新功能建議的需求
   Enhance / Improvement
       針對系統提出改善的需求
   Task / Job
       針對人員提出執行任務的需求,例如:申請系統上線
   Help / Support
       針對人員提出需要第三方(即不屬於同一專案內的同事或人
        士)提供業務 , 行銷或技術方面的支援與協助的需求
Role definitions and permissions
   Basic roles

         Project Manager          User             Engineer
               (PM)              (USER)             (ENG)
      Open   issue        Open   issue      Assignissue
      Assign issue        Assign issue      Resolve issue

      Close issue         Close issue       Commit result

      Reopen issue        Interrupt issue

      Interrupt issue
Role definitions and permissions

   Advanced roles (1)
            Director       Architect Engineer     Visual Designer
             (DIR)                (AE)                 (VD)
      Open   issue      Open   issue          Assignissue
      Close issue       Close issue           Resolve issue

      Reopen issue      Assign issue          Commit result

      Interrupt issue   Resolve issue

                         Commit result

                         Interrupt issue
Role definitions and permissions

   Advanced roles (2)
        Customer Service    Marketing Specialist      Quality Engineer
         Representatives
             (CSR)                 (MS)                     (QE)

      Open   issue        Open   issue           Open   issue
      Assign issue        Assign issue           Close issue

      Verify result       Verify result          Assign issue

      Interrupt issue     Interrupt issue        Verify result

                                                   Interrupt issue
Master fields of issue form
   Severity (1)
       Critical
         會造成影響業務,行銷或商譽損失,或客服無法
          進行,或整個系統嚴重的錯誤,無法運作。
       Major
         系統主要功能錯誤,或違反規格定義,需要進一
          步釐清的新需求。
       Normal
         系統局部功能錯誤,或要求改進現有系統的需求
          。
Master fields of issue form

   Severity (2)
       Minor
         因應業務或行銷策略的變更,或是為了提升系統

           穩定性,或是可以提高系統效能或 UI 易用度。
       Trivial
         不會造成系統功能錯誤的小問題,例如:排版、

           顏色、字句錯誤。
Master fields of issue form

   Evaluation (1)
       Invalid
           這個需求判定為無效,可能此需求不該歸類於此,或是問
            題可能是使用者操作錯誤。
       Closed with Comment
           這個需求以附帶條件的方式,進行結案。
       Incomplete Statement
           這個需求或規格敘述不清,無法判定後續處理的方式。
Master fields of issue form

   Evaluation (2)
       Updated with Statement
           這個需求或規格已經補足或更新過了。
       Duplicate
           這個類似的需求已經被人提報過了。
       Not Reproducible
           這個問題無法被重現且追蹤,所以無法處理。
Master fields of issue form

   Evaluation (3)
       Postpone
           這個問題或需求現階段無法處理,延後再議。
       Dependence
           這個需求牽涉到的範圍太廣,無法判定後續處理的方式,
            或是處理該問題時,需要再提供額外的資源與協助。
       Difficult
           這個需求過於困難,所以無法處理。
       Other
           不屬於上述類型者,皆歸類於此類型。
Detail fields of issue form

Project Name           專案或行銷活動的名稱 ( 下拉式選單 ).

Host                   發現問題 , Bug, 或執行任務時的對象主機 ( 下拉式選單 ).

Browser                發現問題或 Bug 時的使用端 Browser 名稱 ( 下拉式選單 ).

Problem eSobi Ver.     發現問題或 Bug 時的使用端 eSobi AP 版本號碼 , 需要一起搭
                       配 Browser 欄位來記錄 ( 數字欄位 ).
OS (Hardware)          發現問題或 Bug 時的使用端 OS 名稱 ( 下拉式選單 ).

Function / Component   發現問題或 Bug 時所執行的功能或元件的類型 ( 純文字欄位 ).
Detail fields of issue form

Problem Type           被發現的問題或 Bug 的類型 ( 純文字欄位 ).

Problem Occurred       問題或 Bug 發生的時間 ( 日期欄位 ).

Expected Resolve       期望問題或 Bug 可被解決的時間 ( 日期欄位 ).

Problem Reproducible   問題或 Bug 重製的頻率 ( 下拉式選單 ).

Estimated Resolve      預估問題或 Bug 可被解決的時間 ( 日期欄位 ).

Resolved SVN ID        問題或 Bug 解決後交付至 SVN 時的版本代碼 ( 下拉式選單 ).

Resolved SVN No.       問題或 Bug 解決後交付至 SVN 時的版本號碼 ( 數字欄位 ).
Details for bug tracking
   How do you get these bug?
       Please type in the step.
   Test Result
   Expect Result
   Convenience to web developer debug
       Entry point (URL on Browser)
       HTML page source (View in source)
       Error 500 details
       Snapshot (Print Screen)
Issue State Machine
               Close
New




              On Hold
Open                       Resolved




             In Progress
General-purpose issue flow (1)
                  ENG                  ENG
              Assign issue to
                                Commit result
              him/herself or
                                to opener
              ENG


PM / USER

Open issue



               PM / USER             PM / USER

             1. Audit issue     Close issue by
             1.1 Reopen issue   him/herself
General-purpose issue flow (2)
  PM / USER                 ENG                   ENG
                       Assign issue to
                                         1. Commit issue
  Open issue                             to opener
                       him/herself or
                                         2. Return issue
                       ENG
                                         to opener




  PM / USER             PM / USER             PM / USER
                   1. Assign issue
1. Audit issue     to ENG                 Assign issue to
1.1 Reopen issue   2. Close issue by      AE/SE
                   him/herself
Incidental issue flow
                     ENG                     ENG
                 Assign issue to
                                   1. Commit issue
                                   to opener
                 him/herself or
                                   2. Return issue
                 ENG
                                   to opener

PM / USER

Open issue



                  PM / USER              PM / USER
                                   1. Assign issue
                1. Audit issue     to ENG
                1.1 Reopen issue   2. Close issue with
                                   him/herself
Interrupt issue flow
                PM / USER

                Cancel issue



PM / USER

Open issue



                 PM / USER             PM / USER

               1. Audit issue     Close issue with
               1.1 Reopen issue   him/herself
Complex issue flow
 USER / CSR
                                                               AE / ENG
                                  PM                     1. Commit issue
  Open issue
                                                         to opener
                            Assign issue to              2. Return issue
                            AE/ENG                       to opener

      PM

1. Audit issue
1.1 Reopen issue



                   PM                         PM             USER / CSR
                                    1. Assign issue to
           Close issue by           AE/ENG                Assign issue to
           him/herself              2. Assign issue to    AE/SE
                                    PM
Summary

   當您判定 Issue 無法繼續處理時 ...
       選擇合用的 [Evaluation] 選項
       [New Status] 改成 On Hold
       轉派給 Issue 的發起者
        ( USER / PM / CSR / MS / QE / DIR )
   當您補齊 Issue 的需求敘述時 ...
       [Evaluation] 選為 Updated with Statement
       [New Status] 改成 In Progress
       轉派給 Issue 的後續處理者( ENG / AE / VD )
Summary
   當您想要 Close Issue 時 ...
       當您被指派為 USER 、 PM 、 DIR 時
       [New Status] 改成 Closed
       指定給 Issue 的稽核者或發起者
        ( You / PM / DIR )進行歸檔
       如果 Issue 是在 On Hold 的情況下結案時 ...
           [Evaluation] 選為 Closed with Comment
   當您想要 Reopen Issue 時 ...
       當您被指派為 PM 、 DIR 時
       [New Status] 改成 Open
Summary

   當您想要將 Issue 繼續送出時 ...
       選擇必要且合適的 [New Status]
       Issue 的接收者( [Assign To] )
       確認 [send email notifications] 為已勾選的狀態
        ,系統才會發信通知 Issue 的接收者
       若想要通知其他的人員時,可勾選
        [Notify By Email notification] 上列出的人員名單
Q&A

More Related Content

More from Allan Huang

Tomcat New Evolution
Tomcat New EvolutionTomcat New Evolution
Tomcat New EvolutionAllan Huang
 
JQuery New Evolution
JQuery New EvolutionJQuery New Evolution
JQuery New EvolutionAllan Huang
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web DesignAllan Huang
 
Boilerpipe Integration And Improvement
Boilerpipe Integration And ImprovementBoilerpipe Integration And Improvement
Boilerpipe Integration And ImprovementAllan Huang
 
Build Cross-Platform Mobile Application with PhoneGap
Build Cross-Platform Mobile Application with PhoneGapBuild Cross-Platform Mobile Application with PhoneGap
Build Cross-Platform Mobile Application with PhoneGapAllan Huang
 
HTML5 Multithreading
HTML5 MultithreadingHTML5 Multithreading
HTML5 MultithreadingAllan Huang
 
HTML5 Offline Web Application
HTML5 Offline Web ApplicationHTML5 Offline Web Application
HTML5 Offline Web ApplicationAllan Huang
 
HTML5 Data Storage
HTML5 Data StorageHTML5 Data Storage
HTML5 Data StorageAllan Huang
 
Java Script Patterns
Java Script PatternsJava Script Patterns
Java Script PatternsAllan Huang
 
Weighted feed recommand
Weighted feed recommandWeighted feed recommand
Weighted feed recommandAllan Huang
 
eSobi Site Initiation
eSobi Site InitiationeSobi Site Initiation
eSobi Site InitiationAllan Huang
 
Architecture of eSobi club based on J2EE
Architecture of eSobi club based on J2EEArchitecture of eSobi club based on J2EE
Architecture of eSobi club based on J2EEAllan Huang
 
J2EE Performance Monitor (Profiler)
J2EE Performance Monitor (Profiler)J2EE Performance Monitor (Profiler)
J2EE Performance Monitor (Profiler)Allan Huang
 
Search is not only search
Search is not only searchSearch is not only search
Search is not only searchAllan Huang
 

More from Allan Huang (16)

Tomcat New Evolution
Tomcat New EvolutionTomcat New Evolution
Tomcat New Evolution
 
JQuery New Evolution
JQuery New EvolutionJQuery New Evolution
JQuery New Evolution
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web Design
 
Boilerpipe Integration And Improvement
Boilerpipe Integration And ImprovementBoilerpipe Integration And Improvement
Boilerpipe Integration And Improvement
 
YQL Case Study
YQL Case StudyYQL Case Study
YQL Case Study
 
Build Cross-Platform Mobile Application with PhoneGap
Build Cross-Platform Mobile Application with PhoneGapBuild Cross-Platform Mobile Application with PhoneGap
Build Cross-Platform Mobile Application with PhoneGap
 
HTML5 Multithreading
HTML5 MultithreadingHTML5 Multithreading
HTML5 Multithreading
 
HTML5 Offline Web Application
HTML5 Offline Web ApplicationHTML5 Offline Web Application
HTML5 Offline Web Application
 
HTML5 Data Storage
HTML5 Data StorageHTML5 Data Storage
HTML5 Data Storage
 
Java Script Patterns
Java Script PatternsJava Script Patterns
Java Script Patterns
 
Weighted feed recommand
Weighted feed recommandWeighted feed recommand
Weighted feed recommand
 
Web Crawler
Web CrawlerWeb Crawler
Web Crawler
 
eSobi Site Initiation
eSobi Site InitiationeSobi Site Initiation
eSobi Site Initiation
 
Architecture of eSobi club based on J2EE
Architecture of eSobi club based on J2EEArchitecture of eSobi club based on J2EE
Architecture of eSobi club based on J2EE
 
J2EE Performance Monitor (Profiler)
J2EE Performance Monitor (Profiler)J2EE Performance Monitor (Profiler)
J2EE Performance Monitor (Profiler)
 
Search is not only search
Search is not only searchSearch is not only search
Search is not only search
 

Issue tracking workflow in web development and maintenance cycle

  • 1. Issue tracking workflow in web development and maintenance cycle Allan Huang @ esobi Inc.
  • 2. Agenda  Issue type definition  Role definitions and permissions  Field definitions on issue form  Issue tracking workflow  Scenario simulation  Q&A
  • 3. Project Space  eSobi Production Website  ID: PRODUCTION  eSobi Backend Website  ID : BACKEND  eSobi Club Website  ID : CLUB  TWCA Event Website  ID : TWCA
  • 4. Issue type definition  Defect / Bug  針對系統瑕疵提出的需求  New Feature  針對系統提出新功能建議的需求  Enhance / Improvement  針對系統提出改善的需求  Task / Job  針對人員提出執行任務的需求,例如:申請系統上線  Help / Support  針對人員提出需要第三方(即不屬於同一專案內的同事或人 士)提供業務 , 行銷或技術方面的支援與協助的需求
  • 5. Role definitions and permissions  Basic roles Project Manager User Engineer (PM) (USER) (ENG) Open issue Open issue Assignissue Assign issue Assign issue Resolve issue Close issue Close issue Commit result Reopen issue Interrupt issue Interrupt issue
  • 6. Role definitions and permissions  Advanced roles (1) Director Architect Engineer Visual Designer (DIR) (AE) (VD) Open issue Open issue Assignissue Close issue Close issue Resolve issue Reopen issue Assign issue Commit result Interrupt issue Resolve issue Commit result Interrupt issue
  • 7. Role definitions and permissions  Advanced roles (2) Customer Service Marketing Specialist Quality Engineer Representatives (CSR) (MS) (QE) Open issue Open issue Open issue Assign issue Assign issue Close issue Verify result Verify result Assign issue Interrupt issue Interrupt issue Verify result Interrupt issue
  • 8. Master fields of issue form  Severity (1)  Critical  會造成影響業務,行銷或商譽損失,或客服無法 進行,或整個系統嚴重的錯誤,無法運作。  Major  系統主要功能錯誤,或違反規格定義,需要進一 步釐清的新需求。  Normal  系統局部功能錯誤,或要求改進現有系統的需求 。
  • 9. Master fields of issue form  Severity (2)  Minor  因應業務或行銷策略的變更,或是為了提升系統 穩定性,或是可以提高系統效能或 UI 易用度。  Trivial  不會造成系統功能錯誤的小問題,例如:排版、 顏色、字句錯誤。
  • 10. Master fields of issue form  Evaluation (1)  Invalid  這個需求判定為無效,可能此需求不該歸類於此,或是問 題可能是使用者操作錯誤。  Closed with Comment  這個需求以附帶條件的方式,進行結案。  Incomplete Statement  這個需求或規格敘述不清,無法判定後續處理的方式。
  • 11. Master fields of issue form  Evaluation (2)  Updated with Statement  這個需求或規格已經補足或更新過了。  Duplicate  這個類似的需求已經被人提報過了。  Not Reproducible  這個問題無法被重現且追蹤,所以無法處理。
  • 12. Master fields of issue form  Evaluation (3)  Postpone  這個問題或需求現階段無法處理,延後再議。  Dependence  這個需求牽涉到的範圍太廣,無法判定後續處理的方式, 或是處理該問題時,需要再提供額外的資源與協助。  Difficult  這個需求過於困難,所以無法處理。  Other  不屬於上述類型者,皆歸類於此類型。
  • 13. Detail fields of issue form Project Name 專案或行銷活動的名稱 ( 下拉式選單 ). Host 發現問題 , Bug, 或執行任務時的對象主機 ( 下拉式選單 ). Browser 發現問題或 Bug 時的使用端 Browser 名稱 ( 下拉式選單 ). Problem eSobi Ver. 發現問題或 Bug 時的使用端 eSobi AP 版本號碼 , 需要一起搭 配 Browser 欄位來記錄 ( 數字欄位 ). OS (Hardware) 發現問題或 Bug 時的使用端 OS 名稱 ( 下拉式選單 ). Function / Component 發現問題或 Bug 時所執行的功能或元件的類型 ( 純文字欄位 ).
  • 14. Detail fields of issue form Problem Type 被發現的問題或 Bug 的類型 ( 純文字欄位 ). Problem Occurred 問題或 Bug 發生的時間 ( 日期欄位 ). Expected Resolve 期望問題或 Bug 可被解決的時間 ( 日期欄位 ). Problem Reproducible 問題或 Bug 重製的頻率 ( 下拉式選單 ). Estimated Resolve 預估問題或 Bug 可被解決的時間 ( 日期欄位 ). Resolved SVN ID 問題或 Bug 解決後交付至 SVN 時的版本代碼 ( 下拉式選單 ). Resolved SVN No. 問題或 Bug 解決後交付至 SVN 時的版本號碼 ( 數字欄位 ).
  • 15. Details for bug tracking  How do you get these bug?  Please type in the step.  Test Result  Expect Result  Convenience to web developer debug  Entry point (URL on Browser)  HTML page source (View in source)  Error 500 details  Snapshot (Print Screen)
  • 16. Issue State Machine Close New On Hold Open Resolved In Progress
  • 17. General-purpose issue flow (1) ENG ENG Assign issue to Commit result him/herself or to opener ENG PM / USER Open issue PM / USER PM / USER 1. Audit issue Close issue by 1.1 Reopen issue him/herself
  • 18. General-purpose issue flow (2) PM / USER ENG ENG Assign issue to 1. Commit issue Open issue to opener him/herself or 2. Return issue ENG to opener PM / USER PM / USER PM / USER 1. Assign issue 1. Audit issue to ENG Assign issue to 1.1 Reopen issue 2. Close issue by AE/SE him/herself
  • 19. Incidental issue flow ENG ENG Assign issue to 1. Commit issue to opener him/herself or 2. Return issue ENG to opener PM / USER Open issue PM / USER PM / USER 1. Assign issue 1. Audit issue to ENG 1.1 Reopen issue 2. Close issue with him/herself
  • 20. Interrupt issue flow PM / USER Cancel issue PM / USER Open issue PM / USER PM / USER 1. Audit issue Close issue with 1.1 Reopen issue him/herself
  • 21. Complex issue flow USER / CSR AE / ENG PM 1. Commit issue Open issue to opener Assign issue to 2. Return issue AE/ENG to opener PM 1. Audit issue 1.1 Reopen issue PM PM USER / CSR 1. Assign issue to Close issue by AE/ENG Assign issue to him/herself 2. Assign issue to AE/SE PM
  • 22. Summary  當您判定 Issue 無法繼續處理時 ...  選擇合用的 [Evaluation] 選項  [New Status] 改成 On Hold  轉派給 Issue 的發起者 ( USER / PM / CSR / MS / QE / DIR )  當您補齊 Issue 的需求敘述時 ...  [Evaluation] 選為 Updated with Statement  [New Status] 改成 In Progress  轉派給 Issue 的後續處理者( ENG / AE / VD )
  • 23. Summary  當您想要 Close Issue 時 ...  當您被指派為 USER 、 PM 、 DIR 時  [New Status] 改成 Closed  指定給 Issue 的稽核者或發起者 ( You / PM / DIR )進行歸檔  如果 Issue 是在 On Hold 的情況下結案時 ...  [Evaluation] 選為 Closed with Comment  當您想要 Reopen Issue 時 ...  當您被指派為 PM 、 DIR 時  [New Status] 改成 Open
  • 24. Summary  當您想要將 Issue 繼續送出時 ...  選擇必要且合適的 [New Status]  Issue 的接收者( [Assign To] )  確認 [send email notifications] 為已勾選的狀態 ,系統才會發信通知 Issue 的接收者  若想要通知其他的人員時,可勾選 [Notify By Email notification] 上列出的人員名單
  • 25. Q&A