issue tracking workflow in web development and maintenance cycle

25
Issue tracking workflow in web development and maintenance cycle Allan Huang @ esobi Inc.

Upload: allan-huang

Post on 17-Dec-2014

628 views

Category:

Technology


1 download

DESCRIPTION

A study of issue tracking system for internal use.

TRANSCRIPT

Page 1: Issue tracking workflow in web development and maintenance cycle

Issue tracking workflow in web development and maintenance cycle

Allan Huang @ esobi Inc.

Page 2: Issue tracking workflow in web development and maintenance cycle

Agenda

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

Page 3: Issue tracking workflow in web development and maintenance cycle

Project Space

eSobi Production Website ID: PRODUCTION

eSobi Backend Website ID : BACKEND

eSobi Club Website ID : CLUB

TWCA Event Website ID : TWCA

Page 4: Issue tracking workflow in web development and maintenance cycle

Issue type definition

Defect / Bug 針對系統瑕疵提出的需求

New Feature 針對系統提出新功能建議的需求

Enhance / Improvement 針對系統提出改善的需求

Task / Job 針對人員提出執行任務的需求,例如:申請系統上線

Help / Support 針對人員提出需要第三方(即不屬於同一專案內的同事或人

士)提供業務 , 行銷或技術方面的支援與協助的需求

Page 5: Issue tracking workflow in web development and maintenance cycle

Role definitions and permissions

Basic roles

Project Manager

(PM)

User

(USER)

Engineer

(ENG)

Open issueAssign issueClose issueReopen issueInterrupt issue

Open issueAssign issueClose issueInterrupt issue

Assign issueResolve issueCommit result

Page 6: Issue tracking workflow in web development and maintenance cycle

Role definitions and permissions

Advanced roles (1)

Director

(DIR)

Architect Engineer

(AE)

Visual Designer

(VD)

Open issueClose issueReopen issueInterrupt issue

Open issueClose issueAssign issueResolve issueCommit resultInterrupt issue

Assign issueResolve issueCommit result

Page 7: Issue tracking workflow in web development and maintenance cycle

Role definitions and permissions

Advanced roles (2)

Customer ServiceRepresentatives

(CSR)

Marketing Specialist

(MS)

Quality Engineer

(QE)

Open issueAssign issueVerify resultInterrupt issue

Open issueAssign issueVerify resultInterrupt issue

Open issueClose issueAssign issueVerify resultInterrupt issue

Page 8: Issue tracking workflow in web development and maintenance cycle

Master fields of issue form

Severity (1) Critical

會造成影響業務,行銷或商譽損失,或客服無法進行,或整個系統嚴重的錯誤,無法運作。

Major 系統主要功能錯誤,或違反規格定義,需要進一

步釐清的新需求。 Normal

系統局部功能錯誤,或要求改進現有系統的需求。

Page 9: Issue tracking workflow in web development and maintenance cycle

Master fields of issue form

Severity (2) Minor

因應業務或行銷策略的變更,或是為了提升系統穩定性,或是可以提高系統效能或 UI 易用度。

Trivial 不會造成系統功能錯誤的小問題,例如:排版、

顏色、字句錯誤。

Page 10: Issue tracking workflow in web development and maintenance cycle

Master fields of issue form

Evaluation (1) Invalid

這個需求判定為無效,可能此需求不該歸類於此,或是問題可能是使用者操作錯誤。

Closed with Comment 這個需求以附帶條件的方式,進行結案。

Incomplete Statement 這個需求或規格敘述不清,無法判定後續處理的方式。

Page 11: Issue tracking workflow in web development and maintenance cycle

Master fields of issue form

Evaluation (2) Updated with Statement

這個需求或規格已經補足或更新過了。 Duplicate

這個類似的需求已經被人提報過了。 Not Reproducible

這個問題無法被重現且追蹤,所以無法處理。

Page 12: Issue tracking workflow in web development and maintenance cycle

Master fields of issue form

Evaluation (3) Postpone

這個問題或需求現階段無法處理,延後再議。 Dependence

這個需求牽涉到的範圍太廣,無法判定後續處理的方式,或是處理該問題時,需要再提供額外的資源與協助。

Difficult 這個需求過於困難,所以無法處理。

Other 不屬於上述類型者,皆歸類於此類型。

Page 13: Issue tracking workflow in web development and maintenance cycle

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 時所執行的功能或元件的類型 ( 純文字欄位 ).

Page 14: Issue tracking workflow in web development and maintenance cycle

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 時的版本號碼 ( 數字欄位 ).

Page 15: Issue tracking workflow in web development and maintenance cycle

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)

Page 16: Issue tracking workflow in web development and maintenance cycle

Issue State Machine

CloseClose

In ProgressIn Progress

NewNew

OpenOpen

On HoldOn Hold

ResolvedResolved

Page 17: Issue tracking workflow in web development and maintenance cycle

General-purpose issue flow (1)

1. Audit issue1.1 Reopen issue1. Audit issue1.1 Reopen issue

PM / USERPM / USER

Commit resultto openerCommit resultto opener

ENGENG

Assign issue tohim/herself or ENG

Assign issue tohim/herself or ENG

ENGENG

Close issue byhim/herselfClose issue byhim/herself

PM / USERPM / USER

Open issueOpen issue

PM / USERPM / USER

Page 18: Issue tracking workflow in web development and maintenance cycle

General-purpose issue flow (2)

1. Audit issue1.1 Reopen issue1. Audit issue1.1 Reopen issue

PM / USERPM / USER

1. Commit issueto opener2. Return issueto opener

1. Commit issueto opener2. Return issueto opener

ENGENG

Open issueOpen issue

PM / USERPM / USER

Assign issue tohim/herself or ENG

Assign issue tohim/herself or ENG

ENGENG

Assign issue toAE/SEAssign issue toAE/SE

PM / USERPM / USER1. Assign issueto ENG2. Close issue byhim/herself

1. Assign issueto ENG2. Close issue byhim/herself

PM / USERPM / USER

Page 19: Issue tracking workflow in web development and maintenance cycle

Incidental issue flow

1. Assign issueto ENG2. Close issue withhim/herself

1. Assign issueto ENG2. Close issue withhim/herself

PM / USERPM / USER

Open issueOpen issue

PM / USERPM / USER

1. Commit issueto opener2. Return issueto opener

1. Commit issueto opener2. Return issueto opener

ENGENG

Assign issue tohim/herself or ENG

Assign issue tohim/herself or ENG

ENGENG

1. Audit issue1.1 Reopen issue1. Audit issue1.1 Reopen issue

PM / USERPM / USER

Page 20: Issue tracking workflow in web development and maintenance cycle

Interrupt issue flow

Close issue withhim/herselfClose issue withhim/herself

PM / USERPM / USER

Open issueOpen issue

PM / USERPM / USER

Cancel issueCancel issue

PM / USERPM / USER

1. Audit issue1.1 Reopen issue1. Audit issue1.1 Reopen issue

PM / USERPM / USER

Page 21: Issue tracking workflow in web development and maintenance cycle

Complex issue flow

1. Audit issue1.1 Reopen issue1. Audit issue1.1 Reopen issue

PMPM

1. Commit issueto opener2. Return issueto opener

1. Commit issueto opener2. Return issueto opener

AE / ENGAE / ENG

Open issueOpen issue

USER / CSRUSER / CSR

Assign issue toAE/ENGAssign issue toAE/ENG

PMPM

Assign issue toAE/SEAssign issue toAE/SE

USER / CSRUSER / CSR1. Assign issue toAE/ENG2. Assign issue toPM

1. Assign issue toAE/ENG2. Assign issue toPM

PMPM

Close issue byhim/herselfClose issue byhim/herself

PMPM

Page 22: Issue tracking workflow in web development and maintenance cycle

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 )

Page 23: Issue tracking workflow in web development and maintenance cycle

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

Page 24: Issue tracking workflow in web development and maintenance cycle

Summary

當您想要將 Issue 繼續送出時 ... 選擇必要且合適的 [New Status] Issue 的接收者( [Assign To] ) 確認 [send email notifications] 為已勾選的狀態,

系統才會發信通知 Issue 的接收者 若想要通知其他的人員時,可勾選

[Notify By Email notification] 上列出的人員名單

Page 25: Issue tracking workflow in web development and maintenance cycle

Q & A