Status/Lifecycle of a bug/issue/task

Status/Lifecycle of a bug/issue/task như sau:

*New*
Task mới được tạo, chưa assign cho ai

*In Progress (Assigned)*
Task đã assign, đang làm

*Resolved*
Task đã được làm xong bởi người được assigned, tự review xong. Chờ review chéo hoặc review từ cấp trên hay confirm từ khách hàng.

*Feedback*
Vì một lý do nào đó, task bị "trả lại" cho người tạo ra nó.
Ví dụ: Tester X tìm ra lỗi #6868 assign cho developer Y. Y kiểm tra lại và
thấy đó không phải là lỗi do mình gây ra. Khi đó Y sẽ "feedback" lại task
#6868 cho X để X assign cho người thích hợp.

*Incomplete*
Task thiếu thông tin, cần được làm rõ.
Ví dụ: Tester X tìm ra lỗi #6767 assign cho developer Y. Y không thể tái
hiện được lỗi đó. Khi đó Y sẽ mask task #6767 là "Incomplete" và assign cho X để X phân tích thêm.

*Closed*
Done. đóng task.

*Rejected*
Task sai. đóng lại.

*Pending*
Treo task, tạm thời chưa làm.
Có thể đẩy lùi task sang sprint sau nhưng không đóng task.

*Reopen*
Mở lại 1 task/issue đã đóng.
Ví dụ: Developer Y fixed xong lỗi #7070 và Tester X đã closed lỗi đó. Tuy nhiên sau đó Tester X phát hiện lỗi này chưa được fix hẳn. Khi đó Tester X reopen lại lỗi #7070.

*Verified*
Issue/lỗi đã được verified bởi tester X sau khi tiếp nhận báo cáo lỗi từ
phía khách hàng.

*Invalid*
Issue/lỗi sai. Failed alert. Close.

*Wontfix*
Không phải làm. Lý do "wontfix" có thể là: báo cáo sai, chưa cần thiết
phải làm/fix trong sprint hiện tại, tuy là lỗi nhưng có workaround nên chấp
nhận được, hoặc độ ưu tiên/cần thiết của task là thấp

*Duplicated*
Task bị trùng lặp với một task khác. Close.

*Closed*
Done, đóng task.

Chú ý:
Đây là những status cơ bản của một issue/ticket/bug.

Có thể đơn giản hoá vòng đời của task với các bộ status như sau:
1. New, In Progress, Resolved, Closed (Backlog.jp default status)

2. TODO, DOING, DONE (Basic Kanban)
3. TODO, DOING, VERIFYING, DONE (thêm Verifying: Kiểm tra)

​Tham khảo: ​
1. A life cycle of a bug:
http://www.bugzilla.org/docs/3.0/html/lifecycle.html

2. Design a workflow with Redmine:
<a href="http://www.redmine.org/projects/redmine/wiki/RedmineIssueTrackingSetup​" rel="nofollow">www.redmine.org/projects/redmine/wiki/RedmineIssueTrackin...</a>

How to write daily reports / Viết báo cáo ngày thế nào

How to write daily report
(dành cho IT staffs, developers)

Chú ý chung
Viết report hàng ngày, vào buổi chiều tối trước đi khi về
Viết thật ngắn
Nếu đề cập tới issue: ghi issue ID (Jira, backlog.jp…)
Nội dung daily report:
Ngày hôm nay đã làm gì?
Ngày mai sẽ làm gì
Có vấn đề gì, khó khăn gì cản trở công việc không?

Các chú ý khác
– Tập hợp report ở một nơi
– Dễ tìm
– Dễ đọc theo từng người
– Dễ đọc cho cả nhóm
– Vừa nhìn được tổng thể
– Dễ so sánh (tiến độ, issue) của lần viết trước và sau

Ai đọc report?
– Thành viên dự án
– Những người liên quan đến dự án
– Sếp, sếp của sếp
– Khách hàng

Viết report cho ai?
– Cho mình
– Cho tất cả những người liên quan

Tham khảo
Cách thực hiện Daily Scrum: https://www.mountaingoatsoftware.com/agile/scrum/daily-scrum

Management by objectives (MBO): Quản lý theo mục tiêu

Management by objectives (MBO): Quản lý theo mục tiêu
– Tập trung vào mục tiêu
– Dựa trên lượng tài nguyên có sẵn
– Để nhân viên hiểu rõ mục tiêu mà tổ chức, cá nhân họ cần đạt được
– Đánh giá nhân viên, tổ chức
– Các bước thực hiện
– Đặt mục tiêu
– Lập kế hoạch hành động
– Theo dõi
– Đánh giá hiệu quả

MBO cho ai?
– Nhân viên
– Sếp
– Nhóm
– Công ty

Viết MBO thế nào?
SMART (Specific, Measurable, Agreed/Achievable/Attainable, Realistic/Responsible/Receivablem, Time-bound)
– Rõ ràng
– Càng số hoá càng tốt

Thời gian đánh giá MBO
– 3, 6, 12 tháng 1 lần,
– Có thể lấy các mốc review nhân viên, nhóm, phòng, công ty theo kỳ, quý, năm

MBO và KPI
– Liên quan mật thiết

MBO và BSC (Balanced Scorecard)
– Liên quan mật thiết

Cách lên MBO
– Bottom up: Từ cá nhân, tới team, phòng, ban, công ty
– Top-down: Từ chiến lược, mục tiêu công ty tới phòng, ban, team, và cuối cùng là từng cá nhân

Giải thích

Management by objectives (MBO) is a process of defining objectives within an organization /so that management and employees agree to the objectives and understand what they need to do in the organization in order to achieve them.

The term "management by objectives" was/first popularized by Peter Drucker in his 1954/ book ‘The Practice of Management’.[1]

The essence of MBO is participative goal setting, choosing course of actions and decision making. An important part of the MBO is the measurement and the comparison of the employee’s actual performance with the standards set. Ideally, when employees themselves have been involved with the goal setting and choosing the course of action to be followed by them, they are more likely to fulfill their responsibilities.

According to George S. Odiorne, the system of management by objectives can be described as a process whereby the/superior and subordinate jointly identify its common goals/, define each individual’s major areas of responsibility in terms of the results expected of him, and use these measures as guides for operating the unit and assessing the contribution of each of its members.[2]

Các bước thực hiện

Setting Objectives Goal-setting or objective setting is a multistage process. It starts with the examining of the current state of affaires, level of efficiency, threats, and opportunities. Then the key result areas are identified, such as product markets, improved services, lowered costs, work simplification, employee motivation, profitability innovation and social responsibility. The performance of these areas is critical for organization in the sense that failure in these areas may result in failure of the organization. And this is why they are known as “key” result areas. Peter says, objectives are important in every area where performance and results directly affect the survival and prosperity of business.

Developing Action Plans
Set objectives must be translated into action plans. It requires assignment of specific responsibilities to different departments, division, and individuals. It also requires allocation of necessary resources needed to perform the assigned responsibilities. Time dimensions are also to be decided in order that targets are reached without any unwarranted delays.

Periodic Review or Monitoring The Progress
After setting objectives and developing action plans, it is necessary to establish a proper a view to regularly keeping the activities. He progress is monitored without day path leading to the ultimate objective. It is ensured that the deviations found, if any, are thoroughly discussed and immediate corrective actions are taken to set them right on the course. Such a regular monitoring and periodic review not only provide feedback which is essential for completion of work in time. But also motivates the managers accountable for performance. Periodic review and monitoring are done at departmental level generally.

Performance appraisal
This is the last phase of MBO program that evaluates performance annually. The annual review or appraisal is comprehensive and is done at the organization level. The actual annual results are evaluated against the set objectives. Such assessment is also used for determining targets for next year, for modification in standards (goals0 if needed, and for taking corrective actions in order to avoid deviations form predetermined objectives.

cf. https://www.flickr.com/photos/vuhung/7744821596

Apache Voting Processes

Quy trình vote của Apache

0. Lazy vote

Không cần mất thời gian, chỉ vote "đồng ý", "phản đối" hay "phiếu trắng"
Lấy ý kiến, sự đồng thuận từ rất nhiều người (cả team) trong thời gian ngắn

1. Các tuỳ chọn vote cơ bản
+1: Đồng ý
-1: Phản đối
0: Không có ý kiến (phiếu trắng)
0.x: Không/ít dùng (hơi hơi phản đối, hơi hơi đồng ý…)

2. Các tuỳ chọn khác

+0: ‘I don’t feel strongly about it, but I’m okay with this.’
-0: ‘I won’t get in the way, but I’d rather we didn’t do this.’
-0.5: ‘I don’t like this idea, but I can’t find any rational justification for my feelings.’
++1: ‘Wow! I like this! Let’s do it!’
-0.9: ‘I really don’t like this, but I’m not going to stand in the way if everyone else wants to go ahead with it.’
+0.9: ‘This is a cool idea and i like it, but I don’t have time/the skills necessary to help out.’

3. Lợi ích
– Tốn ít thời gian
– Thích hợp với remote team
– Phù hợp với các nhóm kỹ thuật

4. Quy trình vote của Apache thích hợp ở đâu?
– Dùng lúc nào cũng được
– Vote nhanh
– Hay vote chậm

5. Tham khảo
http://apache.org/foundation/voting.html

Running a Retrospective Meeting

Overview/Giới thiệu

Cuộc họp retrospective là cuộc họp quan trọng nhất trong. Nó quyết định sự thành công và độ ổn định lâu dài của nhóm Scrum. Việc khung làm việc của Scrum không định nghĩa rõ về cuộc họp này tạo sự sáng tạo và đặc thù riêng theo từng nhóm.

Tuy vậy, việc thể hiện những giá trị cốt lõi của Scrum trong cuộc họp này – minh bạch, thích nghi và cải tiến liên tục – không phải là điều dễ làm.

KPT

KPT là một cách làm retrospective theo kiểu Nhật.

“K” = Keep là những việc tốt nên keep (duy trì) trong thời gian tiếp theo.
“P” = Problem, là những tồn tại (việc xấu) trong thời gian vừa qua cần được giải quyết.
“T” = Try, là những việc cần thử nghiệm về sau này.
KPT tương ứng với giai đoạn “C” (check) trong mô hình PDCA (Plan-Do-Check-Action)

So sánh KPT với các phương pháp chạy một cuộc họp Retrospective, ta sẽ thấy các điểm chung.

Mô hình PDCA chính là sự cải tiến liên tục. Tương tự như thế, khi Retrospective – cuộc họp cuối của một sprint – kết thúc, cũng là lúc một sprint mới bắt đầu với kế hoạch mới, hành động mới.

Starfish Model/Mô hình Sao biển

Theo cách này, bảng trắng được chia thành các múi, giống như Sao biển với các ô tương ứng

  1. start doing: Bắt đầu làm cái này
  2. stop doing: Dừng không làm cái này nữa
  3. keep doing,
  4. more of,
  5. less of

 

Team Radar

Không dùng. Đây là cách cho điểm từ 1 đến 10 các tiêu chí cần đánh giá. Có lẽ cách làm này phức tạp nhưng “pick brain” được team member và cách thể hiện khá nghệ thuật một cách khoa học. Cách làm Team Radar có thể xem thêm trong cuốn “Agile Retrospectives: Making Good Teams Great”.

Conclusions/Kết luận

Có nhiều cách làm Retrospective. Một trong những mục đích cuối cùng của Retrospective là để nhóm nhìn lại những điểm tốt xấu đã làm trong nhịp trước, tạo tiền đề làm bàn đạp cho việc Kaizen của (những) sprint tiếp theo.

Chúng tôi lựa chọn một biến thể của KPT để thực hiện Retospective. Lý do của sự lựa chọn khá đơn giản: Nó được thực hiện từ nhiều năm nay như một thứ văn hóa ăn và máu của của Nhật.

References/Tham khảo

  1. https://proessler.wordpress.com/2011/08/31/agile-team-retrospective-activities-starfish-team-radar/
  2. http://agile-and-testing.chriss-baumann.de/2012/02/the-starfish-retrospective/
  3. https://www.thekua.com/rant/2006/03/the-retrospective-starfish/

Đăng lại từ http://labs.septeni-technology.jp/offshore/running-a-retrospective-meeting/

 

Agile/Scrum/Kanban/Lean Learning Resources (in Vietnamese)

Một số nguồn học Agile/Scrum/Kanban/Lean, quản lý dự án Công nghệ Thông tin:

Kanban cơ bản và nâng cao: http://www.slideshare.net/vuhung16plus/basic-kanban
Scrum guide (Vietnamese) http://www.scrumguides.org/download.html
(Scrum) Nexus Guide: https://www.scrum.org/Portals/0/NexusGuideTranslations/NexusGuide-v1.1%20-%20Vietnamese%20nfv3.pdf
Agile Y https://www.goodreads.com/book/show/33629389-agile-y
Cẩm nang Agile http://hocvienagile.com/cam-nang-scrum/
Getting Value out of Agile Retrospectives – Vietnamese: https://www.facebook.com/gettingvalueoutofagileretrospectivesVN/
Anti-patterns in IT project management: http://www.slideshare.net/vuhung16plus/anti-patterns-in-it-project-management
Workshop: Software Project Management with Jira: http://www.slideshare.net/vuhung16plus/nguyen-vu-hung-software-project-management-with-jira-agile
Beyond & Insights of Agile Adoption: Mindset & Practices: http://www.slideshare.net/vuhung16plus/nguyen-vu-hung-beyond-agile-practices-and-mindset-agile-tour-vietnam-hanoi-2014
A Casestudy at Septeni Technology: Being Agile in a Cross-Cultural Environment: http://www.slideshare.net/vuhung16plus/being-agile-in-a-cross-cultural-environment-xp-day-2015-vietnam-nguyen-vu-hung
Beyond Project Management: http://www.slideshare.net/vuhung16plus/beyond-project-management-nguyen-vu-hung-201405-duy-tan-geek