เราจะเอามาตรวัดใดมาวัดระดับความซับซ้อนของ Web Application ดี?
ถ้าหากวัดแต่ Front-end ก็จะไม่เป็นการยุติธรรมกับ Back-end? เพราะเป็นไปได้ว่าความซับซ้อนมันอาจจะอยู่ที่ Back-end มากกว่า … เปรียบได้กับภูเขาน้ำแข็ง ซึ่งโผล่ยอดแหลมออกมาแค่นิดเดียว!
หรือจะวัดว่า Web Application ดังกล่าวมีลูกเล่นเยอะ ด้วยเหตุเพราะมันประกอบขึ้นจาก Web Application Framework ต่าง ๆ เข้าไว้ด้วยกัน ก็อาจจะทำแบบนั้นไม่ได้ เพราะบางทีคนที่สร้างลูกเล่นโดยการทำ Core Engine ขึ้นมาเอง โดยไม่จำเป็นต้องพึ่งพา Web Application Framework ก็มีเหมือนกัน!!!
งั้นวัดจากจำนวนบรรทัดของ code ดีมั้ย? อือม แบบนี้ก็ไม่ดีอีก เพราะบางคนเขียน code สั้นนิดเดียว แต่ได้ประสิทธิภาพทัดเทียมกับคนเขียน code ยาว ๆ ก็มี!!!
แล้วใช้เทคโนโลยีใหม่ ๆ เป็นตัดวัดล่ะ เช่น Web Application ไหนใช้ AJAX เยอะ ๆ หรือใช้ Javascript Framework เยอะ ๆ ก็ถือว่ามีความซับซ้อน แบบนี้ดีไหมหนอ?
ทำไมวันนี้คิดจะโม้เรื่องระดับความซับซ้อนฯ อือม คงเป็นเพราะระดับความซับซ้อนฯเป็นตัวแปรหนึ่งในการวัดมูลค่าของ Web Application ตัวนั้น ๆ กระมัง … ซึ่งถ้าสามารถวัดได้ … การนำเอามูลค่าของ Web Application มาลงบัญชีแยกประเภท เพื่อกระทบยอดเข้างบดุล สำหรับใช้แสดงฐานะทางการเงินของกิจการ คงเป็นเรื่องง่ายขึ้นเยอะเลย
และที่สำคัญ ถ้ามองว่า Web Application เป็นสินค้าทุนของกิจการ งั้นมันก็เหมือนกับเครื่องจักรทั่วไปสินะ ที่จะต้องมีค่าเสื่อมราคาในตัวมันเอง อือม แล้วควรจะคิดค่าเสื่อมราคาของ Web Application ของกิจการที่เท่าไหร่ดีหนอ T-T หลักสูตร MBA มีสอนมั้ยเนี่ย พับผ่าสิ มันช่างตรงกับที่หนังสือ “ความมั่งคั่งปฏิวัติ” บอกเอาไว้เลยว่า การศึกษาอ่ะมันวิ่งช้ากว่าธุรกิจโคตร ๆ เลยล่ะ!!!
[tags]ระดับ,ความซับซ้อน,Web Application, สินค้าทุน, กิจการ, ค่าเสื่อมราคา, มูลค่า, บัญชี[/tags]
การวัดมีหลายอย่างครับ
เช่น การวัดคุณภาพ (คำว่าคุณภาพก็แยกออกไปได้อีกว่าคุณภาพอะไรที่สนใจจะวัด)
การวัดความเร็วของการตอบสนอง, การวัดความง่ายในการใช้งาน, การวัดความง่ายในการเพิ่มเติม ต่อขยาย, การวัดความง่ายในการทำความเข้าใจชุดคำสั่ง, การวัดความง่ายในการแก้ไข หาข้อผิดพลาด ฯลฯ
และก็มีหลายวิธีการ (มาตรวัด) ที่จะนำมาใช้ในการวัดสิ่งที่เราสนใจข้างต้น เช่น การนับจำนวนบรรทัดของชุดคำสั่ง, การนับจำนวนของคำสั่งเงื่อนไขที่ใช้ในการตัดสินใจ
ซึ่งการวัดโดยตรงนั้น เข้าใจได้ง่าย และตรงไปตรงมาตามชื่อครับ เช่น ถ้าซอฟท์แวร์มีจำนวนบรรทัดของชุดคำสั่งเป็นจำนวนมาก ซอฟท์แวร์นี้ก็มีความซับซ้อนมากขึ้น แต่ไม่ควรใช้แค่มาตรวัดเดียว มาตัดสินครับ ควรใช้หลายๆ มาตรวัดเข้ามาเกี่ยวข้องด้วย
ส่วนการวัดโดยอ้อม เป็นเรื่องที่เข้าใจได้ยากกว่า และวัดได้ยากกว่า เช่น การวัดคุณภาพ, การวัดประสิทธิภาพ
สำหรับผมแล้ว การวัดซอฟท์แวร์เป็นเรื่องยากครับ แต่ถ้าเราสามารถวัดซอฟท์แวร์ได้อย่างแม่นยำออกมาเป็นตัวเลขที่แน่นอน สามารถตรวจสอบถึงที่มาที่ไปได้ จะวัดกี่ครั้ง ใช้คนกี่คน ทุกคนต่างวัดออกมาได้ตรงกัน ไม่ใช่ตัวเลขลอยๆ ออกมาจากความรู้สึก มันจะมีส่วนช่วยให้เราสามารถกำหนดทรัพยากรต่าง เช่น เงิน เวลา คน ที่จะมาทำงานในซอฟท์แวร์นั้น ได้ถูกต้อง แม่นยำขึ้นครับ
ผมเคยอ่านข้อความซึ่งเป็นคำกล่าวของบิล เกตว่า การวัดซอฟท์แวร์ด้วยการนับบรรทัดของชุดคำสั่งนั้น มันก็ไม่ต่างอะไรไปกับการเอาชิ้นส่วนของเครื่องบินทุกชิ้นแม้แต่น็อตหนึ่งมาตัวมาชั่งน้ำหนัก
ท่านใดสนใจในเรื่องของการวัดซอฟท์แวร์ ลองค้นหาด้วยคำว่า Software Metric ครับ
ถ้าถามว่า จะเอาอะไรไปวัด
ผมแนะนำให้เอา ดอกไม้ธูปเทียนไปวัด ครับ
.
.
..
…ตรึ่งโป๊ะ!!!
ในแง่ เศรษฐศาสตร์ ความซับซ้อนอาจไม่มีค่าเลยก็ได้ครับ
โปรแกรมที่ใช้ดอกเตอร์หมื่นคน เขียนห้าปี ทำเงินไม่ได้ซักบาท กับ โปรแกรมที่เด็ก ป โท สองคน เขียนเวลาว่าง ทำเงินได้เป็นล้าน
ตัวหลังอาจซับซ้อนไม่เท่าตัวแรก แต่มีมูลค่าสูงกว่าแน่นอน
ดังนั้นในแง่บัญชี วิธีลงที่ง่ายที่สุด คือวิธีราคาทุน(ต้นทุนวิจัย)
ส่วนในแง่มูลค่า เราสามารถตีราคา Web App ได้แบบเดียวกับการประเมินโครงการอื่นๆคือ ดูจาก
1. Pay back period
2. NPV
3. IRR
AMp – แทบสำลักเม็ดข้าว จะเอาฮาไปไหน 😀
วัดว่ามันทำประโยชน์(อาจจะหมายถึงเงิน) ได้เท่าไหร่ แล้วบวกเปอร์เซ็น
ได้ศัพท์ใหม่จากคุณเน็ตแล้ว จด ๆ ๆ ๆ
T-T คุณ AMp เล่นมุข … หายบ้าไปเลยผม
โอ๊ะจำได้แล้ว คุณ house กำลังเรียน MBA จุฬาฯ อยู่นี่นา มิน่า เชี่ยวบัญชีบริหารทีเดียวเชียว อิ อิ 😛
ผมหายบ้าเพราะมุขคุณ AMp เขาแล้วครับคุณ crucifier T-T
ใช่ ๆ เพราะวัดแล้วจะเอามาบวกมูลค่าเพิ่มเพื่อกำไรนั่นแหล่ะคุณ nowlistenyo ^-^
ขอบคุณที่ให้ความรู้ครับ