การทำ discovery ใน digital products development
การทำ discovery ใน digital products คือการวาง scope ของตัว digital product เช่นต้องมี feature หรือ function การทำงานอย่างไรบ้าง โดยทั่วไปเวลาจะเริ่มทำ digital products ก็จะมีการจัดทำเอกสารบรรยาย scope งานออกมาเป็นเป็น Terms of reference (TOR) หรือ Request for proposal (RFP) แล้วส่งให้ทางทีม IT หรือ vendor ประเมินราคาและระยะเวลาการทำงานซึ่ง TOR หรือ RFP ไม่สามารถครอบคลุมรายละเอียดได้ทั้งหมดและเป็นไปได้ยากมากที่เอกสารดังกล่าวจะทำให้ทีมงานมีความเข้าใจที่ต้องตรงกัน ส่งผลให้ในระหว่าง implement หรือทำตัว software ขึ้นมาประสบปัญหามากมายโดยเฉพาะการทำงานที่เป็น project แบบ fix scope
ทำไมการทำ TOR หรือ RFP ไม่เพียงพอต่อการวาง scope งาน จริงๆแล้วการทำ TOR หรือ REP ยังคงเป็นสิ่งที่จำเป็นแต่การทำให้ละเอียดมากจนไม่เกิด change request หรือการเปลี่ยนแปลงระหว่างทางนั้นเป็นไปได้ยาก หรือแทบเป็นไปไม่ได้เลยเพราะการทำ software product หรือ digital product เป็นเรื่องที่ละเอียดมากและมีหลายส่วนที่จะต้องคำนึงถึงไม่ว่าจะเป็นเรื่อง dependency ในการพัฒนา software เช่น secrurity, legality, contents หรือ requirement ต่างๆ ไม่ว่าจะเป็น non-functional หรือ functional เช่น feature login แม้เป็น feature ง่ายๆ แต่หากต้องลงรายละเอียดให้ครอบคลุมจริงๆจะต้องคิด case ให้ครบซึ่งก็ยังมีรายละเอียดพอสมควรตัวอย่างเช่น 1. register/login ประเภทอะไรบ้าง 2. validation 3. Logic การกรอก password 4. หาก user ลืม password ต้องทำอย่างไร 5. หาก user ต้องการเปลี่ยน password ต้องทำอย่างไร 6. Login เสร็จแล้ว user จะไปอยู่หน้าไหน 7. Load time 8. User Interface หรือหน้าตาของหน้า login/register เป็นอย่างไร 9. ข้อมูลที่ user ต้องกรอกตอน register/login มีอะไรบ้าง 10. ต้องมีการ confirm user จากระบบหลังบ้านหรือ admin หรือไม่ นอกจากนี้อาจยังมี case อื่นได้อีกเช่น เชื่อมข้อมูลจากระบบที่มีอยู่แล้วเช่น ระบบสมาชิก ข้อมูล account เหล่านี้ต้องดึงข้อมูลอะไรบ้าง เป็นต้น จะเห็นได้ว่าแค่ feature เล็กๆอันเดียวก็มีรายละเอียดเยอะมากแล้ว หาก product owner (PO) ต้องคิดทุก case ใน software หรือ platform คงต้องใช้เวลานานมากและโอกาสพลาดหรือลืม case บาง case ไปมีสูงมาก ซึ่งการทำ discovery ใน digital products จะสามารถเข้ามาช่วยป้องกันปัญหาเหล่านี้ได้โดยจะทำให้การพัฒนา digital product มี scope ที่ชัดเจน ลดการ rework และเสร็จตามเวลาที่กำหนด
การทำ discovery ใน digital products คือการทำความเข้าใจ digital product เพื่อให้ได้มาซึ่งรายละเอียดของ business, user, และ software ของ digital product นั้นๆ
Business discovery
Business discovery คือการระบุเป้าหมายและวัตถุประสงค์ในการทำ digital product เช่น ทำ software ตัวนี้ขึ้นมาเพื่อแก้ปัญหาอะไร หรือเพื่อให้เกิดอะไรขึ้นหลังจากการทำ software ตัวนี้เสร็จสิ้นลง use case และ feature list เบื้องต้นเพื่อเป็นการตั้งสมมุติฐานว่า users จะต้องการใช้ features อะไรบ้างในการใช้งาน รายละเอียดของทีมงานบทบาทและหน้าที่ของทีมงานแต่ละคน รวมไปถึงทำการวิเคราะห์ต้นทุนหรือที่เรียกว่า Cost Analysis เพื่อให้เข้าใจว่าต้องใช้ต้นทุนเท่าไหร่ในการทำ digital product เพื่อให้บรรลุเป้าหมายและวัตถุประสงค์ทางธรุกิจ คุ้มค่าในการลงทุนหรือไม่ เอกสาร business requirement จะต้องจัดทำขึ้นเป็นลายลักษณ์อักษรโดยรวบรวมไว้ในที่เดียวกัน เข้าใจง่ายทีมงานทุกคนจะต้องมีความเข้าใจเอกสารตัวนี้เป็นอย่างดี เมื่อมี business requirement ที่จัดเจนจะทำให้ทีมงานมีความเข้าใจเป้าหมายและวัตถุประสงค์ในการทำ digital product ที่ต้องตรงกัน ทำงานไปในทิศทางเดียวกันไม่หลุด focus ทำให้ product owner (PO) สามารถคิด requirements หรือ feature, function ต่างๆออกมาตอบโจทก์และครอบคลุมความต้องการของ users ได้ดี
User discovery
การทำ user discovery เราต้องทำความเข้าใจ users ต่างๆบน digital product หรือ software ให้ดีเพื่อนำความเข้าใจนี้ไปออกแบบเป็น wirefram และทำ user interface ต่อไป ซึ่งเป็นขั้นตอนที่สำคัญมาก เริ่มด้วยการทำความเข้าใจประเภทของ users บน platform หรือ digital product มีทั้งหมดกี่ประเภท personas (ตัวละครสมมติ) ของ users แต่ละประเภท เป้าหมายและวัตถุประสงค์ของ users นั้นๆ
หลังจากเข้าใจประเภทต่างๆของ user แล้วก็เริ่มทำ user journey ของ users แต่ละประเภทเพื่อให้เข้าใจว่า users แต่ละประเภทจะต้องใช้ features หรือ functions ใดบ้างในการทำงานจนจบ flow หรือในการทำงานให้บรรลุวัตถุประสงค์ของเขา รวมถึงทำความเข้าใจ user preference หรือความชอบความถนัดของ users ต่างๆ เช่น ภาษาที่ใช้ใน digital product device ที่ users ต้องการใช้รวมถึง sizing ของ device ต่างๆ third party software ต่างๆ ที่ users ต้องใช้คู่กับ digital product หรือ software ตัวนี้ ความเร็วในการโหลดและการ update ข้อมูลของ software ที่ users ต้องการ เป็นต้น
ในการทำ user discovery นั้นก็จะมีเอกสารมากมายที่ต้องทำควบคู่กันไป ไม่ว่าจะเป็น user requirement, features list, site map, personas, user journey map, usability test document และ usability test report
หลังจากที่เราได้ทำความเข้าใจ users ดีแล้วเราก็จะมาเริ่มต้นทำ wireframe ซึ่งจะนำมาใช้เป็น prototype ในการทดสอบการใช้งานของ software ว่าตอบโจทย์ users เพียงพอหรือไม่ มีจุดไหนที่เรายังคิด case ไม่ครบหรือไม่ การทดสอบจะทำในขั้นตอนของ usability test ซึ่งโดยส่วนใหญ่จะต้องทำในรูปแบบ clickable prototype เพราะว่า user จะสามารถ click และกรอกข้อมูลที่จำเป็นได้เสมือนการใช้งาน software จริง เมื่อทำการ test เรียบร้อยแล้วจึงทำการปรับ wireframe อีกรอบเพื่อทำ user interface (UI) ต่อไป ขั้นตอนนี้เป็นขั้นตอนที่ไม่ควร skip ไปเด็ดขาดเพราะว่าการทำ test เป็นการตรวจสอบครั้งสุดท้ายโดยผู้ใช้งาน และการแก้ไขตัว digital products ตั้งแต่ขั้นตอนการทำ wireframe มีต้นทุนทั้งในแง่เวลาและงบประมาณน้อยกว่าการแก้ไขภายหลังเมื่อ digital product หรือ software ได้มีการ implement หรือพัฒนาออกมาเสร็จเรียบร้อยแล้วมาก และจะส่งผลดีในด้านอื่นๆอีกมากมายเช่น quality และมีประโยชน์ในการ launch ตัวอย่างเช่น หาก software ที่เราต้องการทำเป็น internal software ที่จะทำออกมาใช้ในองค์กร หาก users ซึ่งจะต้องเป็นผู้ใช้งานในอนาคตได้ test การใช้งานเองและได้เป็นผู้ที่ให้ feedback เอง เขาจะมองว่า software นี้องค์กรทำขึ้นเพื่อช่วยให้การทำงานของเขาง่ายขึ้นก็จะยินดีใช้เมื่อทำออกมาเสร็จสมบูรณ์ ลด resistance to change หรือการต่อต้านความเปลี่ยนแปลง อีกทั้งยังมีความเข้าใจ functions การทำงานต่างๆได้ดีไม่สิ้นเปลืองงบประมาณในการ training อีกด้วย
สุดท้ายหลังจากมีการปรับ wireframe เรียบร้อยก็จะเป็นขั้นตอนของการทำ user interface (UI) ซึ่งเริ่มจากการทำ design system เพื่อกำหนด design component ต่างๆ ให้ระบบมีความสวยงามและมีความสม่ำเสมอ เมื่อเสร็จขั้นตอนของ user interface (UI) product owner (PO) ก็จะต้องจัดทำ user stories เพื่อส่งต่อให้ทีมนำไปทำการ develop ต่อไป
Software discovery
ส่วนหนึ่งของ software discovery จะมาจาก user discovery ไม่ว่าจะเป็น functional requirements เช่น feature และ function การทำงานต่างๆ หรือแม้แต่ non-functional requirement บางส่วนเช่น system performance, speed เป็นต้น แต่ก็ยังมีเนื้อหาบางส่วนที่ไม่สามารถ cover ในขั้นตอนของ user discovery ได้ซึ่งส่วนใหญ่จะเป็น technical requirement เช่น hosting, server, domain, data base design, environment requirement, safety requirement, testing requirement, รูปแบบของ technical document เป็นต้น
หลังจากการทำ discovery ใน digital products เราควรมี documents ต่างๆที่จะต้องใช้ในการทำ digital product คือ Requirement documents (ประกอบไปด้วย business requirement document, user requirement document, software requirement document), End-users document(user manual), Technical documents, Usability test report, Feature list, User flow diagram, User stories และ User interface (UI) พร้อมสำหรับการ develop ตัว digital product หรือ software product ต่อไป