การวางแผนความต้องการที่ดี

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

  • เอกสารข้อกำหนดที่ดีสามารถเป็นส่วนหนึ่งของกลุ่มที่มีข้อกำหนดระดับสูงซึ่งแบ่งออกเป็นข้อกำหนดย่อย

  • นอกจากนี้ยังอาจรวมถึงข้อกำหนดที่ละเอียดมากซึ่งรวมถึงชุดข้อกำหนดด้านการทำงานที่อธิบายถึงลักษณะการทำงานหรือส่วนประกอบของผลิตภัณฑ์ขั้นสุดท้าย

  • ข้อกำหนดที่ดีต้องรัดกุมและเฉพาะเจาะจงและควรตอบคำถามว่า“ เราต้องการอะไร” แทนที่จะเป็น "เราจะเติมเต็มความต้องการได้อย่างไร"

  • ข้อกำหนดที่ดีทำให้มั่นใจได้ว่าผู้มีส่วนได้ส่วนเสียทั้งหมดเข้าใจในส่วนของแผน หากชิ้นส่วนไม่ชัดเจนหรือตีความผิดผลิตภัณฑ์ขั้นสุดท้ายอาจมีข้อบกพร่องหรือล้มเหลว

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

การรวบรวมและวิเคราะห์ความต้องการ

ข้อกำหนดคือเงื่อนไขหรือความสามารถที่ผู้มีส่วนได้ส่วนเสียต้องการในการแก้ปัญหาหรือบรรลุวัตถุประสงค์ขององค์กร เงื่อนไขหรือความสามารถที่ต้องปฏิบัติตามหรือครอบครองโดยระบบ

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

ข้อกำหนดควรเป็น -

  • Documented
  • Actionable
  • Measurable
  • Testable
  • Traceable

ข้อกำหนดควรเกี่ยวข้องกับความต้องการหรือโอกาสทางธุรกิจที่ระบุและกำหนดไว้ในระดับรายละเอียดที่เพียงพอสำหรับการออกแบบระบบ

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

Eliciting Approach

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

  • โครงการนี้จะช่วยให้บรรลุวัตถุประสงค์ทางธุรกิจอะไรของ บริษัท ?

  • ทำไมเราถึงทำโครงการนี้ตอนนี้?

  • จะเกิดอะไรขึ้นถ้าเราทำในภายหลัง?

  • ถ้าเราไม่ทำเลยจะเป็นอย่างไร?

  • ใครจะได้รับประโยชน์จากโครงการนี้?

  • คนที่จะได้รับประโยชน์จากมันถือว่าเป็นการปรับปรุงที่สำคัญที่สุดที่สามารถทำได้ในเวลานี้หรือไม่?

  • เราควรทำโครงการอื่นแทนหรือไม่?

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

ข้อกำหนดประเภทต่างๆ

ประเภทของข้อกำหนดที่พบบ่อยที่สุดที่นักวิเคราะห์ธุรกิจสนใจมีดังต่อไปนี้ -

ข้อกำหนดทางธุรกิจ

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

ความต้องการของผู้ใช้

ข้อกำหนดของผู้ใช้ควรระบุข้อกำหนดเฉพาะที่ผู้ใช้คาดหวัง / ต้องการจากซอฟต์แวร์ที่จะสร้างจากโครงการซอฟต์แวร์ ข้อกำหนดของผู้ใช้ควรตรวจสอบได้ชัดเจนและรัดกุมสมบูรณ์สอดคล้องตรวจสอบได้และทำงานได้

เอกสารข้อกำหนดของผู้ใช้ (URD) ​​หรือข้อกำหนดข้อกำหนดของผู้ใช้เป็นเอกสารที่มักใช้ในวิศวกรรมซอฟต์แวร์ที่ระบุสิ่งที่ผู้ใช้คาดหวังให้ซอฟต์แวร์สามารถทำได้

ความต้องการของระบบ

ข้อกำหนดของระบบเกี่ยวข้องกับการกำหนดความต้องการทรัพยากรซอฟต์แวร์และข้อกำหนดเบื้องต้นที่ต้องติดตั้งบนคอมพิวเตอร์เพื่อให้แอปพลิเคชันทำงานได้อย่างเหมาะสมที่สุด

ความต้องการการทำงาน

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

ข้อกำหนดที่ไม่ใช่หน้าที่

ข้อกำหนดที่ไม่ใช้งานได้คือข้อกำหนดที่ระบุเกณฑ์ที่สามารถใช้ในการตัดสินการทำงานของระบบมากกว่าพฤติกรรมเฉพาะ สถาปัตยกรรมระบบพูดถึงแผนการดำเนินการตามข้อกำหนดที่ไม่สามารถใช้งานได้

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

ข้อกำหนดการเปลี่ยนแปลง

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

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

การตรวจสอบย้อนกลับและการจัดการการเปลี่ยนแปลง

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

เมทริกซ์ความสามารถในการติดตามข้อกำหนด (RTM) จัดเตรียมวิธีการในการติดตามข้อกำหนดการทำงานและการนำไปใช้งานผ่านกระบวนการพัฒนา ข้อกำหนดแต่ละข้อจะรวมอยู่ในเมทริกซ์พร้อมกับหมายเลขส่วนที่เกี่ยวข้อง

ในขณะที่โครงการดำเนินไป RIM จะได้รับการอัปเดตเพื่อแสดงสถานะของข้อกำหนดแต่ละข้อ เมื่อผลิตภัณฑ์พร้อมสำหรับการทดสอบระบบเมทริกซ์จะแสดงข้อกำหนดแต่ละข้อส่วนประกอบของผลิตภัณฑ์ใดที่อยู่และสิ่งที่ทดสอบยืนยันว่ามีการนำไปใช้อย่างถูกต้อง

รวมคอลัมน์สำหรับแต่ละรายการต่อไปนี้ใน RTM -

  • คำอธิบายความต้องการ
  • การอ้างอิงความต้องการใน FRD
  • วิธีการตรวจสอบ
  • การอ้างอิงความต้องการในแผนการทดสอบ

Example- การเชื่อมต่อจุดเพื่อระบุความสัมพันธ์ระหว่างรายการภายในโครงการของคุณ มันเป็นตัวเชื่อมต่อของการไหลล่องทั่วไป

ความต้องการความคิดออกแบบทดสอบวัตถุประสงค์ทางธุรกิจ

คุณควรจะสามารถติดตามความต้องการแต่ละข้อของคุณกลับไปสู่วัตถุประสงค์ทางธุรกิจเดิมได้

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

การประกันคุณภาพ

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

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

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

กล่าวอีกนัยหนึ่งคือทีมพัฒนากำลังเสียงบประมาณส่วนใหญ่ไปกับความพยายามที่ทำไม่ถูกต้องในครั้งแรก ตัวอย่างเช่นนักพัฒนาซอฟต์แวร์โค้ดคุณลักษณะตามเอกสารข้อกำหนดเก่าเพื่อเรียนรู้ในภายหลังว่าข้อกำหนดสำหรับคุณลักษณะนั้นมีการเปลี่ยนแปลงเท่านั้น ปัญหาประเภทนี้สามารถหลีกเลี่ยงได้ด้วยแนวทางปฏิบัติที่ดีที่สุดในการจัดการข้อกำหนดที่มีประสิทธิภาพ

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

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

Note- การวิจัยพบว่าทีมโครงการสามารถกำจัดข้อบกพร่องของโครงการได้ 50-80% โดยการจัดการข้อกำหนดอย่างมีประสิทธิภาพ จากข้อมูลของสถาบันวิศวกรรมซอฟต์แวร์ Carnegie Mellon“ 60-80 เปอร์เซ็นต์ของต้นทุนการพัฒนาซอฟต์แวร์อยู่ระหว่างการปรับปรุงใหม่”

การได้รับความต้องการ Signoff

การลงนามความต้องการกำหนดข้อตกลงโดยผู้มีส่วนได้ส่วนเสียในโครงการอย่างเป็นทางการว่าเนื้อหาและการนำเสนอข้อกำหนดตามที่บันทึกไว้มีความถูกต้องและสมบูรณ์ ข้อตกลงอย่างเป็นทางการช่วยลดความเสี่ยงที่ผู้มีส่วนได้ส่วนเสียจะแนะนำข้อกำหนดใหม่ (ก่อนหน้านี้ที่ไม่ได้โต้แย้ง) ในระหว่างหรือหลังจากนั้น

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

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