ข้อกำหนดเชิงหน้าที่และไม่ใช่เชิงหน้าที่

ความแตกต่างที่สำคัญระหว่างข้อกำหนดเชิงหน้าที่และไม่ใช่เชิงหน้าที่

  • ข้อกำหนดด้านการทำงานกำหนดระบบหรือส่วนประกอบ ในขณะที่ข้อกำหนดที่ไม่เกี่ยวกับการทำงานจะกำหนดคุณลักษณะด้านประสิทธิภาพของระบบซอฟต์แวร์
  • ข้อกำหนดด้านการทำงานควบคู่ไปกับการวิเคราะห์ความต้องการจะช่วยระบุความต้องการที่หายไป ในขณะที่ข้อดีของข้อกำหนดที่ไม่ใช่ด้านการทำงานก็คือช่วยให้คุณมั่นใจได้ถึงประสบการณ์ผู้ใช้ที่ดีและการใช้งานซอฟต์แวร์ที่ง่ายดาย
  • Functional Requirement เป็นคำกริยา ในขณะที่ Non-Functional Requirement เป็นคุณลักษณะ
  • ประเภทของข้อกำหนดที่ไม่เกี่ยวกับฟังก์ชัน ได้แก่ ความสามารถในการปรับขนาด ความพร้อมใช้งาน ความน่าเชื่อถือ ความสามารถในการกู้คืน ข้อมูล Integrityฯลฯ ในขณะที่การแก้ไข การปรับ และการยกเลิกธุรกรรม กฎเกณฑ์ทางธุรกิจ ข้อกำหนดการรับรอง ข้อกำหนดการรายงาน ฟังก์ชันการบริหาร ระดับการอนุญาต การติดตามการตรวจสอบ อินเทอร์เฟซภายนอก การจัดการข้อมูลในอดีต ข้อกำหนดทางกฎหมายหรือข้อบังคับ ถือเป็นข้อกำหนดด้านการทำงานประเภทต่างๆ
ข้อกำหนดเชิงหน้าที่และไม่ใช่เชิงหน้าที่
ความแตกต่างระหว่างข้อกำหนดเชิงหน้าที่และไม่ใช่เชิงหน้าที่

ข้อกำหนดด้านการทำงานคืออะไร?

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

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

ข้อกำหนดที่ไม่เกี่ยวกับฟังก์ชันคืออะไร?

A ข้อกำหนดที่ไม่สามารถใช้งานได้ กำหนดคุณลักษณะคุณภาพของระบบซอฟต์แวร์ โดยเป็นชุดมาตรฐานที่ใช้ตัดสินการทำงานเฉพาะของระบบ ตัวอย่างเช่น เว็บไซต์โหลดเร็วแค่ไหน

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

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

ตัวอย่างข้อกำหนดด้านการทำงาน

นี่คือตัวอย่างบางส่วนของข้อกำหนดด้านการทำงานในวิศวกรรมซอฟต์แวร์:

  • ซอฟต์แวร์จะตรวจสอบลูกค้าโดยอัตโนมัติกับ ABC Contact Management System
  • ระบบการขายควรอนุญาตให้ผู้ใช้สามารถบันทึกยอดขายของลูกค้าได้
  • สีพื้นหลังสำหรับหน้าต่างทั้งหมดในแอปพลิเคชันจะเป็นสีน้ำเงินและมีค่าสี RGB เลขฐานสิบหกที่ 0x0000FF
  • เฉพาะพนักงานระดับผู้จัดการเท่านั้นที่มีสิทธิ์ดูข้อมูลรายได้
  • ระบบซอฟต์แวร์ควรบูรณาการเข้ากับ Banking API
  • ระบบซอฟต์แวร์ควรผ่าน 508 มาตรา ข้อกำหนดในการเข้าถึง

ตัวอย่างของข้อกำหนดที่ไม่สามารถใช้งานได้

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

  1. ผู้ใช้จะต้องเปลี่ยนรหัสผ่านเข้าสู่ระบบที่กำหนดไว้ในตอนแรกทันทีหลังจากเข้าสู่ระบบครั้งแรกสำเร็จ นอกจากนี้ ค่าเริ่มต้นไม่ควรนำมาใช้ซ้ำ
  2. พนักงานไม่เคยอนุญาตให้อัปเดตข้อมูลเงินเดือนของตน ความพยายามดังกล่าวควรรายงานไปยังผู้ดูแลระบบความปลอดภัย
  3. ความพยายามที่ไม่สำเร็จทุกครั้งของผู้ใช้ในการเข้าถึงรายการข้อมูลจะถูกบันทึกไว้ในเส้นทางการตรวจสอบ
  4. เว็บไซต์ควรมีความสามารถเพียงพอที่จะรองรับผู้ใช้ 20 ล้านคนโดยส่งผลต่อประสิทธิภาพการทำงาน
  5. ซอฟต์แวร์ควรพกพาได้ ดังนั้นการย้ายจากระบบปฏิบัติการหนึ่งไปยังระบบปฏิบัติการอื่นจึงไม่สร้างปัญหาใดๆ
  6. ความเป็นส่วนตัวของข้อมูล การส่งออกเทคโนโลยีที่ถูกจำกัด สิทธิ์ในทรัพย์สินทางปัญญา ฯลฯ ควรได้รับการตรวจสอบ

ความแตกต่างระหว่างข้อกำหนดเชิงหน้าที่และไม่ใช่เชิงหน้าที่

ด้านล่างนี้เป็นข้อแตกต่างหลักระหว่างข้อกำหนดด้านการทำงานและไม่ทำงานในวิศวกรรมซอฟต์แวร์:

พารามิเตอร์ ความต้องการใช้งาน ข้อกำหนดที่ไม่สามารถใช้งานได้
มันคืออะไร คำกริยา คุณสมบัติ
ความต้องการ มันเป็นข้อบังคับ มันไม่บังคับ
ประเภทการจับ มันถูกบันทึกในกรณีการใช้งาน ถือเป็นคุณลักษณะที่มีคุณภาพ
ผลลัพธ์สุดท้าย คุณลักษณะผลิตภัณฑ์ คุณสมบัติผลิตภัณฑ์
จับ ง่ายต่อการจับภาพ ยากที่จะจับ
วัตถุประสงค์ ช่วยคุณตรวจสอบการทำงานของซอฟต์แวร์ ช่วยคุณตรวจสอบประสิทธิภาพของซอฟต์แวร์
พื้นที่โฟกัส มุ่งเน้นไปที่ความต้องการของผู้ใช้ มุ่งเน้นไปที่ความคาดหวังของผู้ใช้
เอกสาร อธิบายว่าผลิตภัณฑ์ทำอะไร อธิบายวิธีการทำงานของผลิตภัณฑ์
ประเภทของการทดสอบ การทดสอบการทำงาน เช่น System, Integration, End to End, การทดสอบ APIฯลฯ การทดสอบที่ไม่เกี่ยวกับฟังก์ชัน เช่น ประสิทธิภาพ ความเครียด การใช้งาน การทดสอบความปลอดภัยฯลฯ
ทดสอบการทำงาน การดำเนินการทดสอบเสร็จสิ้นก่อนการทดสอบไม่ทำงาน หลังจากการทดสอบการทำงาน
ข้อมูลสินค้า สินค้า คุณสมบัติผลิตภัณฑ์

ข้อดีของข้อกำหนดด้านการทำงาน

นี่คือข้อดี/ข้อดีของการสร้างเอกสารข้อกำหนดด้านการทำงานโดยทั่วไป-

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

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

ประโยชน์/ข้อดีของการทดสอบแบบไม่ใช้งานใน วิศวกรรมซอฟต์แวร์ คือ:

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