จดสรุปการเรียน Agile Foundation ในเว็บ klasssi

Learning Feb 5, 2021

จริงๆเจอเว็บ klasssi ในทวิตเตอร์ว่ามีคอร์สให้เรียนฟรี ทางเราหยิบมาเรียนคอร์สนึง คือ Agile Foundation โดยนอกจาก Agile แล้วยังมีเรื่อง OKRs อีกด้วย สอนโดย HR ของ KBANK

สามารถเข้าไปเรียนได้ที่นี่เลย

https://klasssi.com/course/18/curriculum?contenttype_id=91

ทางเรามีสรุปมาบ้าง แต่ไม่ทั้งหมด และมี 1-page summary ให้ด้วยนะ


Section 1 - Overview

เป็นการปรับ mindset ให้มีประสิทธิภาพมากขึ้น เข้าใจ agile และตั้งเป้าหมายได้ด้วย OKR ในการทำงานหรือใช้ชีวิตประจำวัน

Section 2 - Agile

What is Agile?

agility คือ ความสามารถในการเคลื่อนที่ได้เร็ว และคล่องแคล่ว

และการทำงานในรูปแบบ Agile คือ การทำงานรูปแบบที่มีความไว รวดเร็ว และมีขั้นตอนไม่ซับซ้อน

การทำงานในรูปแบบนี้จะเน้นวิธีการเคลื่อนที่ไปข้างหน้า เน้นสร้างคุณค่า และสร้างทีม เพื่อทำให้ทีมของเราเน้นเผชิญความท้าทายต่างๆที่เข้ามา สามารถเรียนรู้ได้อย่างรวดเร็ว และสามารถตอบรับการเปลี่ยนแปลงตลอดทาง

Agile มาจากตอนที่นักพัฒนา software 17 คน มาพักผ่อนและพูดคุยถึงวิธีการทำงานรูปแบบใหม่ นอกจาก waterfall ที่ Snowbird รัฐ Utah เมื่อปี 2001

Getting Start with Agile

เราจะเริ่มทำงานแบบ Agile ยังไงบ้าง ต้องเตรียมเครื่องมืออะไร? จริงๆ Agile ไม่ได้เน้นเรื่อง process จะเน้นเรื่องการเตรียมพร้อมเรื่องของคน เน้นเรื่องการปฏิสัมพันธ์ เริ่มที่ mindset ของคน

It is NOT all about PROCESS. It is all about PEOPLE.

การทำงานในรูปแบบ Agile เป็นเรื่องของคนและปฏิสัมพันธ์กัน มากกว่าเรื่องของขั้นตอนและเครื่องมือ ถ้าพร้อมแล้วสามารถเริ่มได้ทันที

แล้วเริ่มที่ mindset อะไรบ้าง?

Stop starting, start finishing.

หยุดเพิ่มงานหรือเพิ่มไอเดียกันก่อน แล้วเริ่มทำงานที่มีอยู่ในมือให้เสร็จก่อน เพราะทรัพยากรต่างๆมีอยู่จำกัด เช่น คน เวลา งบประมาณ ดังนั้น เราจะต้องพิจารณาว่าเราจะเลือกทำอะไร และไม่ทำอะไร โดยเลือกจากความต้องการของลูกค้ามาบางเรื่องเอามาทำก่อน รับ feedback จากลูกค้า และนำมาปรับแก้ในครั้งต่อๆไป ซึ่งกระบวนการเหล่านี้ มีชื่อว่า MVP หรือ Minimum Viable Product

Agile Manifesto & Principles

Agile ต่างจากการทำงานรูปแบบเดิมอย่างไร?

แบบเดิมคือ waterfall ปกติเริ่มจากเก็บ requirement จากลูกค้า และตกลงกัน จากนั้นนำคนและเวลาในการทำ product ออกมา และส่งมอบให้แก่ลูกค้า แต่บางครั้งสิ่งที่ส่งออกมา ไม่ตรงกับความต้องการของลูกค้า และมีโอกาสสูงมากในการถูกแก้ requirement

ส่วนแบบ Agile นำ requirement ที่เก็บได้ นำมาซอยย่อย และแบ่งเวลาการทำงานออกเป็นช่วงๆเท่าๆกัน พัฒนาและส่งมอบให้กับลูกค้า เพื่อให้เขาตรวจสอบและให้ feedback กลับมา เพื่อให้เรานำมาปรับแก้ในครั้งต่อๆไป และทำต่อไปเรื่อยๆจนจบ

Agile Manifesto คิดค้นโดยนักพัฒนา 17 คนที่ Snowbird Ski Resort เมื่อเดือนกุมภาพันธ์ 2001 ในการทำงานที่ดีกว่าในการพัฒนา Software

  1. Individuals and interactions over processes and tools ให้ความสำคัญกับคน และการมีปฏิสัมพันธ์ระหว่างกัน มากกว่าขั้นตอนการทำงานและเครื่องมือต่างๆ
  2. Working software over comprehensive documentation software ที่พัฒนาต้องนำไปใช้ได้จริง มากกว่าทำเอกสารให้ครบถ้วน
  3. Customer collaboration over contract negotiation ร่วมมือและทำงานกับลูกค้า มากกว่าตอบสนองไปตามสัญญาที่ตกลงกันได้
  4. Responding to change over following a plan ตอบสนองต่อการเปลี่ยนแปลง มากกว่าการทำงานตามแผนที่วางไว้

Principles behind the Agile Manifesto

  1. Satisfy The Customer ให้ความสำคัญสูงสุดกับความต้องการของลูกค้า
  2. Welcome Changing Requirements ยอมรับการเปลี่ยนแปลงของความต้องการของลูกค้า ถ้าเป็นการสร้างความได้เปรียบในการแข่งขัน
  3. Deliver Working Software Frequently ส่งมอบงานที่ใช้ได้จริงอย่างสม่ำเสมอ และพยายามลดเวลาการส่งมอบงานให้สั้นที่สุด
  4. Collaborate Daily ทำให้มั่นใจว่าสมาชิกของทีมเข้าใจ และมีจุดมุ่งหมายในการทำงานเดียวกัน
  5. Motivated Individuals สร้างสิ่งแวดล้อม และให้การสนับสนุนสมาชิก และให้ความไว้วางใจในการทำงาน
  6. Promote Sustainable Development รักษาความเร็วในการทำงานตลอดเวลาทั้งโครงการ
  7. Measure of Progress Through Working Product ตัววัดความก้าวหน้าของโครงการ คือการที่ product ที่ผลิตออกมา นำไปใช้ได้จริง
  8. Face-to-face Conversation การพูดคุยกันแบบซึ่งหน้า เป็นวิธีการที่มีประสิทธิภาพและมีประสิทธิผล ในการแชร์ข้อมูลให้แก่กัน
  9. Continuous Attention to Technical Excellence เพิ่มวิธีและเทคนิคที่ดีอย่างต่อเนื่อง
  10. Simplicity is Essential ความเรียบง่ายคือศิลปะในการทำงานให้สำเร็จมากขึ้น
  11. Self-organizing Teams ผลงานที่ดี มาจากการบริหารจัดการด้วยตัวเอง
  12. Regularity Reflect on Continuously Improving ทีมต้องทบทวน และเพิ่มประสิทธิภาพในการทำงานอยู่เสมอ

อื่นๆสามารถหาอ่านได้เพิ่มเติมที่นี่เลยจ้า

Manifesto for Agile Software Development
We are uncovering better ways of developing softwareby doing it and helping others do it. These are ourvalues and principles.
https://agilemanifesto.org/

The Heart of Agile การนำไปปรับใช้ จะใช้หลักนี้เนอะ

  1. Collaborate เน้นความร่วมมือร่วมใจของคนในทีม เพื่อให้การทำงานมีประสิทธิภาพ
  2. Deliver เน้นในการส่งมอบงานออกมาให้มากที่สุด
  3. Reflect พยายามสะท้อนความคิดของคนในทีมออกมา
  4. Improve พัฒนาให้ดียิ่งขึ้นไปอีก
The Heart of Agile | More powerful, More human
The Heart of Agile amplifies agile culture by simplifying it into just four imperatives: Collaborate. Deliver. Reflect. Improve.
https://heartofagile.com/

ตัวอย่าง KBANK‘s Agile Principles

  1. Satisfy customer พยายามปรับเพื่อความพึงพอใจของลูกค้า
  2. Welcome Changing Requirements ตอบรับความเปลี่ยนแปลงอยู่เสมอ พร้อมปรับเปลี่ยนให้เป็นไปตามนั้น
  3. Deliver working product frequency การส่งมอบงานให้บ่อยครั้งและสมํ่าเสมอ
  4. Work together daily การทำงานร่วมกันในทุกๆวัน เพราะ collaborated เป็นสิ่งสำคัญ
  5. Build motivating environment and trust employees to get the job done การสร้างแรงบันดาลใจให้กับทีมงาน เพื่อให้เขามีความมั่นใจ และส่งมอบงานที่ดีออกมา
  6. Face-to-face conversation เน้นพูดคุยแบบเจอหน้ากัน ทำให้เข้าใจ และดูแล content ของเราได้ดีมากยิ่งขึ้น
  7. Maximizing the amount of work not done เน้นการทำงานให้ง่ายเข้าไว้ เพื่อให้งานของเรานั้นสำเร็จไปตามเป้าหมายที่เราตั้งไว้
  8. Regular intervals and reflects สะท้อนเสียงจากทีมสมํ่าเสมอ เพื่อการทำงานร่วมกันที่ smooth มากขึ้น และทำให้งานของเราดีขึ้นไปเรื่อยๆ

Section 3 - Agile & OKRs

Agile Goal Setting with OKRs

การทำงานแบบ Agile เน้นความสำเร็จของเป้าหมายเป็นหลัก ดังนั้นการตั้งเป้าหมายตั้งแต่เริ่มต้น จึงเป็นสิ่งที่สำคัญที่สุด

OKRs แต่ละตัวย่อมาจากอะไร?

O ย่อมาจาก Objective

  • อะไรคือสิ่งที่เราต้องการทำให้สำเร็จ ตั้งให้ใหญ่เข้าไว้
  • เน้นการวัดเชิงคุณภาพ และระบุเวลาที่แน่นอน ที่เราต้องการให้มันสำเร็จ
  • ตั้งให้ท้าทายทีมงาน ให้รู้สึกไม่สบายใจ ทำให้เราพยายามหาทางมุ่งไปข้างหน้าให้ดีขึ้นเรื่อยๆ
  • มีการ review และ reset ใหม่ได้ทุก quarter เป็นระยะๆ

KRs ย่อมาจาก Key Results

  • เน้นเรื่อง “เราจะทำอย่างไร ถึงทำให้ objective ที่เราตั้งสำเร็จไปด้วยกัน
  • เน้นเรื่องการตั้งที่มีตัววัดชัดเจนและมีกรอบเวลา
  • การสื่อสารแบบ transparent ให้ทีมได้ทราบ ทำให้ทีมสามารถ align O และ KR ไปด้วยกันได้

วิธีการ set OKRs แบบง่ายๆ

  1. Identify Objective ระบุ objective ของเราให้ชัดเจน เน้นใหญ่และมีคุณภาพ มีความท้าทายมากหน่อย เพื่อผลงานและทีมทำงานได้มากกว่าผลสำเร็จปกติ
  2. Describe Key Results อธิบาย KR ผลลัพธ์อะไรสำเร็จลงไปได้ด้วยดี

ตัวอย่างง่ายๆในการตั้ง OKR

Objective : เป็นนักวิ่งทีมชาติให้ได้ในปี 2020

Key Results :

  • ศึกษาข้อมูลการเป็นนักวิ่งทีมชาติให้เสร็จใน Q1
  • ซ้อมวิ่ง 20 กิโลเมตร ในทุดวัน
  • ลดนํ้าหนักลงให้เหลือ 50 กิโลกรัม ภายใน Q2

การตั้งเป้า Goal Setting ปกติ ต่างจาก OKRs อย่างไร?

Goal Setting ปกติเราจะตั้งเป้าหมายต้นปี ยาวไปปลายปี แต่ระหว่างทางเกิด incident ต่างๆ หรือความต้องการของลูกค้าเปลี่ยนไป แต่ OKR จะมีการ set, review และ reset ตลอดทั้งปี เพราะมีการปรับเปลี่ยนตามการเปลี่ยนแหลงตามความต้องการของลูกค้า จึงทำให้ตอบโจทย์เขาให้มากที่สุด

เมื่อเรา set OKRs แล้ว ภายในองค์กรแล้ว เกิดอะไรขึ้นบ้าง?

OKR ที่เรา set ไว้ จะเป็นเป้าหมายขององค์กร มาจาก vision และ priority ที่องค์กรสนใจและตั้งเอาไว้ และตั้งลงมาเรื่อยๆ จากระดับองค์กร division department ไปจนถึงระดับบุคคล นั่นคือพนักงานทุกคนจะเป็นกลไกสำคัญ ในการทำให้เป้าหมายนั้นๆ สำเร็จได้

สรุป

  • การตั้งเป้าหมายแบบ OKR จะต้องใหญ่ และไม่จำเป็นต้องวัดผลได้ แต่ต้องมี time frame ที่ชัดเจน
  • Key Results จำเป็นจะต้องเป็นผลลัพธ์ที่ทำให้ Objective ของเรา สำเร็จได้ที่ปลายทา
  • สิ่งที่ทีมจำเป็นต้องทำและใส่ใจอยู่เสมอ คือ communications เพราะการสื่อสารที่ดี ทำให้ทีมงานร่วมมือร่วมใจทำให้ปลายทางนั้นสำเร็จลุล่วงไปด้วยกัน
  • หมั่นประเมินผล, review, set up O และ KR ใหม่ตลอดเส้นทาง เพื่อแก้ incident และตอบโจทย์ลูกค้าให้ได้มากที่สุด
  • ถ้าทีมทำได้ไม่ถึง 100% หล่ะ? ถูกแล้ว เพราะว่าถ้าทำถึง 100% แสดงว่าเป้าหมายที่ตั้งไว้ ไม่มีความท้าทายเพียงพอ (หรือมันง่ายไปนั่นแหละ) และพยายามหาทางให้งานของเราดีขึ้นไปได้เรื่อยๆนั่นเอง

OKRs Examples

ใน session นี้มีตัวอย่าง 3 แบบด้วยกัน คือ

Google Chrome

ที่ Google เป็นสถานที่ต้นแบบ OKRs เลย และ Google Chrome แรกๆคือไม่ค่อยมีคนใช้ เขาก็เลยตั้งเป้าหมายที่มัน challenge มากขึ้น ซึ่งตั้ง OKRs ในปี 2010 ดังนี้

Objective: Build The Best Web Browser by 2010

Key Results:

  • 111M 7Days Active Users
  • 20X faster JavaScript on WD and OS X
  • 500B Global reach through "Chrome Fast" campaign
  • 100M downloads through OEM Distribution
สำหรับใครที่สนใจเพิ่มเติม ทางเราไปค้น Google มา เจออันนี้น่าสนใจดี
re:Work - Guide: Set goals with OKRs
Goal setting has been shown to boost performance. Objectives and Key Results (OKRs) are a way to set goals and measure progress.
https://rework.withgoogle.com/guides/set-goals-with-okrs/steps/introduction/
OKRs 101
Your step-by-step guide for getting started with Objectives and Key Results, created by John Doerr and the “Measure What Matters” team.
https://www.whatmatters.com/get-started/

OKRs for personal or life goals เช่น new year resolution

Objective: อยากมีสุขภาพดีในปี 2020

Key Results:

  • ตรวจสุขภาพทุก 6 เดือน
  • ทำ To do list รายวัน ทั้งเรื่องงานและเรื่องส่วนตัว
  • ทานอาหารให้เป็นเวลา อาหารครบ 5 หมู่ ในทุกมื้อ
  • ออกกำลังกาย 5 วันต่อสัปดาห์ อย่างน้อยครั้งละ 30 นาที

OKRs KBANK’s Agile way of work

ทางทีมเขาได้นำไปปรับใช้จริง พบว่าลดเวลาทำงานลด 50% (หื้มมม)

Objective: มีช่องทางการสื่อสารถึงพนักงานทุกคนแบบ Anywhere Anytime ให้เสร็จภายใน 2 เดือน

Key Results:

  • ตั้งทีมโดยรวบรวมผู้เชี่ยวชาญ และปรับการทำงานเป็นแบบ Agile
  • เก็บ Content และ Requirement ให้สร็จภายใน 2 สัปดาห์ KR
  • ทำ Chat Bot ให้ตอบคำถามได้ ให้เสร็จภายใน 1 เดือน KR
  • ทำ Prototype และ Pilot เพื่อปรับแก้ให้เสร็จภายใน 2 สัปดาห์

Summary

มี 1-page summary มาให้ เรียนจบได้ certificate มาด้วย เขาบอกว่ามีอีก 2 คอร์ส แต่ทางเราก็ยังหาไม่เจอเนอะ

ในบทเรียนนี้เขาจะบอกพื้นฐาน เพื่อให้เราเข้าใจ และนำไปศึกษาเพิ่มเติมต่อได้เนอะ เช่น หนังสือ OKRs ที่เรากดใน Ookbee ebook ด้วยสวัสดิการที่เราดองไว้เป็นต้น


ส่วนหลายๆทีมที่ออฟฟิศเราใช้ Agile กันยังไง สามารถอ่านได้ที่นี่เลยจ้า

จดบันทึก knowledge sharing เรื่องของ agile & scrum
เนื่องจากทางทีมทำงานแบบ Agile กันอยู่แล้วเนอะ ก็เลยหาความรู้จากทีมอื่นๆที่เขามา sharing ให้เราฟัง ก็เลยจดมา
https://www.mikkipastel.com/ookbee-knowledge-sharing-agile-and-scrum/

download แอพอ่านบล็อกใหม่ของเราได้ที่นี่

MikkiPastel - Apps on Google Play
First application from “MikkiPastel” on play store beta feature- read blog from https://www.mikkipastel.com by this application- read blog content by chrome custom tab- update or refresh new content by pull to refresh- share content to social network
https://play.google.com/store/apps/details?id=com.mikkipastel.blog

ติดตามข่าวสารและบทความใหม่ๆได้ที่

อย่าลืมกด like กด share บทความกันด้วยนะคะ :)

Posted by MikkiPastel on Sunday, 10 December 2017

และช่องทางใหม่ใน Twiter จ้า

Tags

Minseo Chayabanjonglerd

I am a full-time Android Developer and part-time contributor with developer community and web3 world, who believe people have hard skills and soft skills to up-skill to da moon.