จากตอนที่แล้วนอกจากจุดประสงค์(Objective)ของตัว Software และความคุ้มค่าที่จะทำ(Feasibility)แล้ว สิ่งที่ตามมาคือ ความต้องการ(Requirement)ในสิ่งที่จะให้ Software ทำได้นั่นเอง
ความต้องการ คือจุดประสงค์ย่อยของจุดประสงค์หลัก อาจจะมองว่าจุดประสงค์หลักคือ Goal จุดประสงค์ย่อยคือ Requirement ที่จะทำให้ไปถึง Goal นั่นเอง
จากที่จ่าหัวไว้ว่า ความต้องการที่ทำได้ vs ความต้องการที่เหมาะสม หลายๆคนคงคิดว่ามันน่าจะเหมือนกัน เพราะถ้าเป็นความต้องการที่ทำได้ ก็ต้องเป็นความต้องการที่เหมาะสมที่จะทำ ซึ่งจริงๆแล้วก็ไม่ค่อยจะถูกนัก เพราะบางทีความต้องการที่ทำได้ ก็ไม่ใช่ความต้องการที่เหมาะสมเสมอไป ผมมีตัวอย่างง่ายๆที่จะยกขึ้นมาให้ดูนะครับ
เรื่องมีอยู่ว่าโจอี่พับเครื่องบินกระดาษขึ้นมา แล้วเอาไปอวดให้น้อยสาวดู น้องสาวคนแรกก็ติว่า "ทำไมเครื่องบินถึงมีหลายสีฟ้าอยู่ด้วยละ" โจอี่ก็ตอบว่าเพราะ"มันเป็นกระดาษจากสมุดโน๊ตนะสิ" แต่โจอี่ก็กลับไปแก้ไขเครื่องบินของเขาใหม่ โดยใช้สีพ่นมาพ่นใส่เครื่องบินและวาดรวดลายสวยงาม แล้วกลับออกมาไปอวดให้น้องสาวอีกคนดู น้องสาวคนที่สองก็บอกว่า "โอมันสวยมาก แต่มันจะลงพื้นยังไงละถ้าไม่มีล้อ" โจอี่ก็บอกว่านั่นเป็นความคิดที่ดี จากนั้นก็กลับไปเอาที่หนีบกระดาษกับเม็ดกระดุมมาทำเป็นล้อ แล้วก็เอาออกมาอวดให้น้องสาวคนที่สามดู น้องสาวคนที่สามก็บอกว่า "ว้าว นี่สวยมากเลยแต่ว่าไม่มีที่นั่งเหรอ?" โจอี่ก็เลยกลับไปเอาแกนที่ใส่กระดาษเทชชูมาเจาะรูเป็นหน้าต่างและทำเก้าอี่กระดาษแข็งใส่เข้าไป แล้วเอามาติดกับเครื่องบินที่ทำไว้โดยใช้เทคนิคพอสมควร สุดท้ายโจอี่กลับออกมาหาน้องสาวคนที่สามอีกที ก็ได้รับคำชมกลับว่า "ว้าว นี่มันสมบูรณ์แบบมาก เอาละจะลองบินดูนะ" พอน้องสาวลองเขวียงเครื่องบินกระดาษของโจอี่ มันก็หัวปักลงพื้นที่อยู่ตรงนั้นทันที!!!จากเรื่องข้างต้น คุณเห็นอะไรบ้าง?...ตัวผม ผมเห็นว่าจุดประสงค์หลักของการพับเครื่องบินกระดาษคือต้องการให้มันบินได้ ความต้องการอื่นๆที่ได้มานั้นก็ทำได้นะครับ แต่พอทำแล้วกลับทำให้เครื่องบินบินไม่ได้ ถามว่าเป็นความต้องการที่เหมาะสมกับวัตถุประสงค์หรือเปล่า?
จะเห็นได้ว่าโดยทั่วไป ความต้องการของ user มักจะเริ่มหลงประเด็นจากเป้าหมายหลักอยู่เป็นประจำ เพราะฉะนั้นขั้นตอนของการเก็บความต้องการของ user นั้นต้องระวังความต้องการประเภทนี้ให้ดี...
ไม่มีความเห็น