ข้อกำหนดด้านการทำงานในวิศวกรรมซอฟต์แวร์คืออะไร?
ข้อกำหนดด้านการทำงานคืออะไร?
A ความต้องการใช้งาน (FR) คือคำอธิบายของบริการที่ซอฟต์แวร์ต้องนำเสนอ มันอธิบายระบบซอฟต์แวร์หรือส่วนประกอบของมัน ฟังก์ชันเป็นเพียงอินพุตไปยังระบบซอฟต์แวร์ ลักษณะการทำงาน และเอาต์พุตเท่านั้น อาจเป็นการคำนวณ การจัดการข้อมูล กระบวนการทางธุรกิจ การโต้ตอบของผู้ใช้ หรือฟังก์ชันเฉพาะอื่นๆ ที่กำหนดฟังก์ชันที่ระบบน่าจะดำเนินการ ข้อกำหนดการทำงานในวิศวกรรมซอฟต์แวร์เรียกอีกอย่างว่า คุณสมบัติการทำงาน.
ในวิศวกรรมซอฟต์แวร์และวิศวกรรมระบบ ข้อกำหนดด้านฟังก์ชันอาจมีตั้งแต่ข้อความเชิงนามธรรมระดับสูงเกี่ยวกับความจำเป็นของผู้ส่ง ไปจนถึงข้อกำหนดข้อกำหนดด้านฟังก์ชันทางคณิตศาสตร์โดยละเอียด ซอฟต์แวร์ที่ใช้งานได้ ข้อกำหนดช่วยให้คุณบันทึกพฤติกรรมที่ต้องการของระบบได้
สิ่งที่ควรรวมอยู่ในเอกสารข้อกำหนดด้านการทำงาน?
ต่อไปนี้เป็นวิธีเขียนเอกสารข้อกำหนดด้านการทำงาน:
ความต้องการการทำงานของระบบควรมีสิ่งต่อไปนี้:
- รายละเอียดการดำเนินการที่ทำในแต่ละหน้าจอ
- ควรป้อนตรรกะการจัดการข้อมูลเข้าสู่ระบบ
- ควรมีคำอธิบายรายงานของระบบหรือผลลัพธ์อื่นๆ
- ข้อมูลที่สมบูรณ์เกี่ยวกับเวิร์กโฟลว์ที่ดำเนินการโดยระบบ
- ควรกำหนดให้ชัดเจนว่าใครจะได้รับอนุญาตให้สร้าง/แก้ไข/ลบข้อมูลในระบบ
- วิธีที่ระบบจะตอบสนองความต้องการด้านกฎระเบียบและการปฏิบัติตามข้อกำหนดที่เกี่ยวข้องควรบันทึกไว้ในเอกสารการทำงาน
ประโยชน์ของข้อกำหนดด้านการทำงาน
นี่คือข้อดี/ข้อดีของการสร้างเอกสารข้อกำหนดด้านการทำงานโดยทั่วไป-
- ช่วยให้คุณตรวจสอบว่าแอปพลิเคชันมีฟังก์ชันการทำงานทั้งหมดที่กล่าวถึงในข้อกำหนดด้านการทำงานของแอปพลิเคชันนั้นหรือไม่
- เอกสารข้อกำหนดด้านการทำงานช่วยให้คุณสามารถกำหนดฟังก์ชันการทำงานของระบบหรือระบบย่อยระบบใดระบบหนึ่งได้
- ข้อกำหนดเชิงหน้าที่พร้อมกับการวิเคราะห์ความต้องการช่วยระบุข้อกำหนดที่ขาดหายไป ช่วยกำหนดบริการและพฤติกรรมของระบบที่คาดหวังได้อย่างชัดเจน
- ข้อผิดพลาดที่พบในขั้นตอนการรวบรวมความต้องการด้านฟังก์ชันนั้นเป็นวิธีแก้ไขที่ถูกที่สุด
- สนับสนุนเป้าหมาย งาน หรือกิจกรรมของผู้ใช้
ประเภทของข้อกำหนดในการใช้งาน
ต่อไปนี้คือประเภทความต้องการใช้งานทั่วไป:
- การจัดการธุรกรรม
- กฎเกณฑ์ทางธุรกิจ
- ความต้องการการรับรอง
- ข้อกำหนดในการรายงาน
- ฟังก์ชั่นการบริหาร
- ระดับการอนุญาต
- การติดตามการตรวจสอบ
- อินเทอร์เฟซภายนอก
- การจัดการข้อมูลทางประวัติศาสตร์
- ข้อกำหนดทางกฎหมายและข้อบังคับ
ตัวอย่างข้อกำหนดด้านการทำงาน
ด้านล่างนี้คือตัวอย่างข้อกำหนดด้านการทำงานยอดนิยม:
- ซอฟต์แวร์จะตรวจสอบลูกค้าโดยอัตโนมัติกับ ABC Contact Management System
- ระบบการขายควรอนุญาตให้ผู้ใช้สามารถบันทึกยอดขายของลูกค้าได้
- สีพื้นหลังสำหรับหน้าต่างทั้งหมดในแอปพลิเคชันจะเป็นสีน้ำเงินและมีค่าสี RGB เลขฐานสิบหกที่ 0x0000FF
- เฉพาะพนักงานระดับผู้จัดการเท่านั้นที่มีสิทธิ์ดูข้อมูลรายได้
- ระบบซอฟต์แวร์ควรบูรณาการเข้ากับ Banking API
- ระบบซอฟต์แวร์ควรผ่าน 508 มาตรา ข้อกำหนดในการเข้าถึง
ข้อกำหนดด้านการใช้งานกับข้อกำหนดด้านการใช้งาน
นี่คือความแตกต่างที่สำคัญระหว่างข้อกำหนดด้านการทำงานและที่ไม่เกี่ยวกับหน้าที่ วิศวกรรมซอฟต์แวร์:
พารามิเตอร์ | ความต้องการใช้งาน | ข้อกำหนดที่ไม่สามารถใช้งานได้ |
---|---|---|
มันคืออะไร | คำกริยา | คุณสมบัติ |
ความต้องการ | มันเป็นข้อบังคับ | มันไม่บังคับ |
ประเภทการจับ | มันถูกบันทึกในกรณีการใช้งาน | ถือเป็นคุณลักษณะที่มีคุณภาพ |
ผลลัพธ์สุดท้าย | คุณลักษณะผลิตภัณฑ์ | คุณสมบัติผลิตภัณฑ์ |
จับ | ง่ายต่อการจับภาพ | ยากที่จะจับ |
วัตถุประสงค์ | ช่วยคุณตรวจสอบการทำงานของซอฟต์แวร์ | ช่วยคุณตรวจสอบประสิทธิภาพของซอฟต์แวร์ |
พื้นที่โฟกัส | มุ่งเน้นไปที่ความต้องการของผู้ใช้ | มุ่งเน้นไปที่ความคาดหวังของผู้ใช้ |
เอกสาร | อธิบายว่าผลิตภัณฑ์ทำอะไร | อธิบายวิธีการทำงานของผลิตภัณฑ์ |
ประเภทของการทดสอบ | การทดสอบการทำงาน เช่น System, Integration, End to End, การทดสอบ APIฯลฯ | การทดสอบที่ไม่เกี่ยวกับฟังก์ชัน เช่น ประสิทธิภาพ ความเครียด การใช้งาน การทดสอบความปลอดภัยฯลฯ |
ทดสอบการทำงาน | การดำเนินการทดสอบเสร็จสิ้นก่อนการทดสอบไม่ทำงาน | หลังจากการทดสอบการทำงาน |
ข้อมูลสินค้า | สินค้า | คุณสมบัติผลิตภัณฑ์ |
แนวปฏิบัติที่ดีที่สุดของข้อกำหนดด้านฟังก์ชัน
แนวทางปฏิบัติที่ดีที่สุดที่สำคัญสำหรับการพัฒนาเอกสารข้อกำหนดด้านการทำงานมีดังนี้:
- อย่ารวมข้อกำหนดสองข้อเข้าด้วยกัน รักษาข้อกำหนดให้ละเอียด
- คุณควรทำให้ข้อกำหนดแต่ละข้อครบถ้วนและถูกต้องที่สุดเท่าที่จะเป็นไปได้
- เอกสารควรร่างข้อกำหนดทางเทคนิคทั้งหมด
- จัดทำแผนที่ข้อกำหนดทั้งหมดให้สอดคล้องกับวัตถุประสงค์และหลักการซึ่งมีส่วนช่วยให้การส่งมอบซอฟต์แวร์ประสบความสำเร็จ
- ดึงเอาข้อกำหนดโดยใช้การสัมภาษณ์ เวิร์คช็อป และการสื่อสารแบบไม่เป็นทางการ
- หากมีข้อจำกัดที่ทราบและได้รับการยืนยันซึ่งส่งผลกระทบอย่างมีนัยสำคัญต่อข้อกำหนด ถือเป็นสถานะวิกฤติที่ควรจัดทำเป็นเอกสาร
- คุณจำเป็นต้องบันทึกข้อสันนิษฐานทั้งหมดไว้ในเอกสาร
ข้อผิดพลาดขณะสร้างข้อกำหนดด้านการทำงาน
ข้อผิดพลาดทั่วไปบางประการที่เกิดขึ้นขณะสร้างเอกสารข้อกำหนดฟังก์ชันมีดังนี้
- การใส่ข้อมูลเพิ่มเติมที่ไม่ยุติธรรมซึ่งอาจทำให้นักพัฒนาสับสน
- ใส่รายละเอียดไม่เพียงพอในเอกสารข้อกำหนด
- คุณเพิ่มกฎหรือตัวอย่าง ข้อความกำหนดขอบเขต หรือวัตถุประสงค์ใดๆ ก็ตาม ยกเว้นข้อกำหนดนั้นเอง
- ละทิ้งข้อมูลสำคัญที่จำเป็นอย่างยิ่งเพื่อระบุข้อกำหนดอย่างครบถ้วน ถูกต้อง และชัดเจน
- ผู้เชี่ยวชาญบางคนเริ่มปกป้องข้อกำหนดที่พวกเขาบันทึกไว้เมื่อมีการแก้ไขข้อกำหนด แทนที่จะค้นหาความจริงที่ถูกต้อง
- ข้อกำหนดที่ไม่ได้ถูกแม็ปกับวัตถุประสงค์หรือหลักการ
การเรียนรู้ที่สำคัญ
- อธิบายข้อกำหนดด้านการทำงานในวิศวกรรมซอฟต์แวร์: ข้อกำหนดด้านฟังก์ชันกำหนดระบบหรือส่วนประกอบต่างๆ
- เอกสารข้อกำหนดด้านการทำงานควรมีตรรกะการจัดการข้อมูลและข้อมูลที่สมบูรณ์เกี่ยวกับเวิร์กโฟลว์ที่ดำเนินการโดยระบบ
- ข้อกำหนดเชิงหน้าที่พร้อมกับการวิเคราะห์ความต้องการช่วยระบุข้อกำหนดที่ขาดหายไป
- การแก้ไข การปรับ และการยกเลิกธุรกรรม กฎเกณฑ์ทางธุรกิจ ข้อกำหนดการรับรอง ข้อกำหนดการรายงาน ฟังก์ชันการบริหาร ระดับการอนุญาต การติดตามการตรวจสอบ อินเทอร์เฟซภายนอก การจัดการข้อมูลในอดีต ข้อกำหนดทางกฎหมายหรือข้อบังคับเป็นข้อกำหนดด้านการทำงานประเภทต่างๆ
- ตามแนวทางปฏิบัติที่ดีอย่ารวมข้อกำหนดสองข้อเข้าด้วยกัน รักษาข้อกำหนดให้ละเอียด
- ควรหลีกเลี่ยงการใส่ข้อมูลเพิ่มเติมที่ไม่ยุติธรรมซึ่งอาจทำให้นักพัฒนาสับสนในเอกสารข้อกำหนดด้านการทำงาน เพื่อทำความเข้าใจว่าข้อกำหนดเหล่านี้แปลไปสู่ขั้นตอนการทดสอบจริงอย่างไร คุณอาจต้องการอ่านคู่มือนี้ใน การทดสอบการใช้งาน.