Workflow Diagram แบบใหม่ … อีกครั้ง

จากบทความเดิม … มีน้องถามมาว่า

“ถ้ามีสัก3สถานที่ อันนี้พี่ออกแบบไงครับ?”

จัดไปครับ

ความพยายามครั้งที่หนึ่ง

ผมยังชอบแนวคิดไทม์ไลน์อยู่ ผมยังชอบโครงสร้างกล่องงาน (Activity) อยู่ ผมหยิบมันมาเป็นพื้นฐานก่อนแล้วค่อยเพิ่มคอลัมน์เข้าไป

ปัญหา:

  1. ความสวย (ใหม่) — ไม่สวย

ความพยายามครั้งที่สอง

ก็หาทางทำให้มันสวยขึ้นด้วยการจัดกล่องข้อความของคอลัมน์ออฟฟิสให้ชิดขวา

ปัญหา:

  1. ความสวย (เดิม + ยังไม่ได้แก้) — ยังไม่สวย

ความพยายามครั้งที่สาม

เริ่มลากเส้นเชื่อมระหว่างลำดับขั้นตอนกับกล่องกิจกรรมในทุกคอลัมน์ หวังว่าจะให้ดูสวยขึ้น

ปัญหา:

  1. ความสวย (เดิม + ยังไม่ได้แก้) — ยังไม่สวยแถมรกขึ้นอีกต่างหาก
  2. อ่านง่าย (ใหม่) — เริ่มรู้สึกว่ามันอ่านยาก ต้องกวาดตาซ้ายทีขวาทีเพราะไทมไลน์มันอยู่กึ่งๆกลางๆ

ความพยายามครั้งที่สี่

ลองทำเป็นเส้นประเผื่อว่าจะช่วยให้รูปดูซอฟท์ขึ้น

ปัญหา:

  1. ความสวย (เดิม + ยังไม่ได้แก้) — เส้นประไม่ค่อยช่วยเท่าไร ยังรกเหมือนเดิม
  2. อ่านง่าย (เดิม + ยังไม่ได้แก้) — ปัญหานี้ยังอยู่เหมือนเดิม

ความพยายามครั้งที่ห้า

คิดใหม่เรื่องไทม์ไลน์ครับ หยิบมาวางไว้ด้านซ้ายสุดแบบนี้ … และผมเจอบั๊กจากรูปที่แล้วด้วย เห็นกันมั้ย? … ขั้นตอนที่เจ็ด — ไม่มีกิจกรรม

ปัญหา:

  1. ความสวย (เดิม + ยังแก้ไม่หมด) — ดูดีขึ้น เป็นระเบียบขึ้นนะ
  2. อ่านง่าย (เดิม + ยังแก้ไม่หมด) — การอ่านมีขั้นตอนที่แน่นอนขึ้น จากบนลงล่างและซ้ายไปขวาเสมอ

ความพยายามครั้งที่หก

เวอร์ชั่นนี้ผมพอใจละครับ เอาเส้นประออก เปลี่ยนสีน้ำเงิน แดง เหลืองให้เป็นสีเทาเพราะรู้สึกว่าสีสันพวกนั้นไม่ช่วยสื่อความหมายอะไรมาก (มีตัวอักษร C, H, M อยู่แล้ว) … แถมสีสันพวกนั้นมันดูหันเหความสนใจไปจากเนื้อหาหลักของรูปด้วยซ้ำ

ปัญหา:

  1. ความสวย (เดิม + ยังแก้ไม่หมด) — แต่ผมพอใจแล้ว
  2. อ่านง่าย (เดิม + แก้แล้ว) — ผมคิดว่าแค่นี้โอเคล่ะ อ่านง่ายและสะอาดตา

สิ่งที่ผมเรียนรู้จากการทดลองครั้งนี้

  1. ถ้าเรามีงานพื้นฐานที่มีคุณภาพดีอยู่แล้ว การแก้ไขปรับปรุงเพิ่มเติมจะเป็นเรื่องที่ทำได้อย่างรวดเร็วครับ เหมือนโค๊ดเรามีหนี้ทางเทคนิคน้อยหรือมี Automated Tests ที่ดีคอยควบคุมแบบนั่นแหละ … ผมใช้เวลานิดเดียวในการออกแบบไดอะแกรมเวอร์ชั่นใหม่นี้เพราะผมสามารถก๊อปปี้และรียูสของเดิมได้เกือบทั้งหมดซึ่งมันช่วยประหยัดเวลาและพลังงานของผมไปได้มาก — คุณภาพงานเป็นเรื่องสำคัญสำหรับอนาคตครับ
  2. การทดลองของเราไม่จำเป็นต้องถูกและเหมาะสมเสมอไป เหมือนที่ผมลองผิดลองถูกในช่วงแรกๆ … เหมือนยิ่งทำยิ่งเข้ารกเข้าพงนะ ไม่ได้แก้ปัญหาเลยซักข้อ นั่นไม่ใช่สาระสำคัญครับตราบใดที่เรายังพยายามทดลองอย่างต่อเนื่องและรวดเร็ว เราจะหาจุดกลับตัวได้อย่างทันท่วงทีเหมือนที่ผมกลับตัวกลับใจในความพยายามครั้งที่ห้า
  3. งานที่ดีกับงานที่สมบูรณ์แบบมันไม่เหมือนกัน ผมจบงานนี้ด้วยจุดที่ผมพอใจว่ามันได้คุณภาพตามมาตรฐานของผมแค่นั้น ในเวลาที่ผมมีนี่คือสิ่งที่โอเคที่สุดแล้ว “สำหรับตอนนี้” ถามว่ามันแก้ปัญหาทุกข้อของผมได้แบบเบ็ดเสร็จเด็ดขาดมั้ย? ไม่เลยแต่มันก็ไม่จำเป็นเช่นกันที่ต้องเป็นแบบนั้นเพราะนี่จะไม่ใช่ครั้งสุดท้ายที่ผมจะปรับปรุงงานชิ้นนี้ — ถ้าเราเชื่อว่างานเราสมบูรณ์แบบแล้วเราจะไม่คิดว่ามีอะไรที่ดีกว่านี้ ถ้าเราพยายามค้นหาคำว่าสมบูรณ์แบบเราจะไม่มีวันทำงานเสร็จ … เมื่องานเคยไม่เสร็จ เมื่อซอฟต์แวร์ไม่เคยถูกรีลีส คุณค่ามันจะไม่เกิดขึ้นกับใครเลย ไม่ว่าอะไรจะเกิดขึ้นจงตั้งมาตรฐานคำว่า “ดีเพียงพอ” ให้สูง ก้าวไปให้ถึงจุดนั้นแล้วปล่อยวางและหาทางปรับปรุงครับ
  4. กระบวนการนี้สนุกเหมือนเดิมเลย :)

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

The Future Has Arrived — It’s Just Not Evenly Distributed Yet, William Gibson

อนาคตอยู่ตรงนี้แล้ว เรามีหน้าที่ต้องถ่ายทอดมันออกไปให้คนอื่นได้สัมผัสสิ่งดีๆร่วมกันครับ

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.