วิธีสร้างข้อกำหนดข้อกำหนดซอฟต์แวร์และปรับปรุงกระบวนการพัฒนาซอฟต์แวร์ของคุณ
เผยแพร่แล้ว: 2020-04-28รายรับจากตลาดซอฟต์แวร์ทั่วโลกคาดว่าจะสูงถึง 507.2 พันล้านดอลลาร์ ในปี 2564 และ 44% ของบริษัทต่างๆ กำลังวางแผนที่จะเพิ่มการใช้จ่ายด้านเทคโนโลยีในปี 2563 Spiceworks รายงาน
ผลิตภัณฑ์ซอฟต์แวร์เป็นธุรกิจที่มีการแข่งขันสูง และมักต้องใช้เงินลงทุนจำนวนมาก
ด้วยเหตุนี้จึงต้องมีการวางแผนอย่างรอบคอบ ขอแนะนำให้ใช้มาตรการป้องกันทั้งหมดและปฏิบัติตามกระบวนการต่างๆ เช่น ข้อกำหนดข้อกำหนดของซอฟต์แวร์
ในบทความนี้ เราจะพูดถึงห้าขั้นตอนที่จำเป็นที่องค์กรควรดำเนินการเพื่อสรุปข้อกำหนดในการพัฒนาซอฟต์แวร์ของตน
นอกจากนี้เรายังจะสำรวจ:
- เหตุผลในการกำหนดข้อกำหนดการพัฒนาซอฟต์แวร์และวิธีที่จะช่วยให้ผลิตภัณฑ์ขั้นสุดท้ายบรรลุมาตรฐานคุณภาพระดับสูง
- เอกสารข้อกำหนดข้อกำหนดซอฟต์แวร์คืออะไร
- สิ่งที่คุณต้องรู้ก่อนกำหนดข้อกำหนดซอฟต์แวร์ของคุณ
- ข้อกำหนดด้านการทำงานและไม่ใช่หน้าที่ในการพัฒนาซอฟต์แวร์มีอะไรบ้าง
- อะไรคือความเสี่ยงของการมีข้อกำหนดซอฟต์แวร์ที่ไม่มีเอกสาร
ไปกันเถอะ!
5 เหตุผลในการกำหนดข้อกำหนดในการพัฒนาซอฟต์แวร์ของคุณก่อนมองหาพันธมิตรด้านการพัฒนา
ข้อกำหนดในการพัฒนาซอฟต์แวร์ระบุคุณลักษณะที่ผลิตภัณฑ์ซอฟต์แวร์ควรมีและวัตถุประสงค์ของผลิตภัณฑ์คืออะไร
วิธีที่คุณเข้าถึงข้อกำหนดเหล่านี้สามารถสร้างความแตกต่างให้กับกระบวนการพัฒนาและสุดท้ายสำหรับผลิตภัณฑ์ขั้นสุดท้ายได้เช่นกัน
การกำหนดข้อกำหนดในการพัฒนาซอฟต์แวร์อย่างชัดเจนมีความสำคัญ เนื่องจากสิ่งนี้สามารถ:
- รับรองความสอดคล้องของโครงการ: การกำหนดข้อกำหนดซอฟต์แวร์เฉพาะคือจุดเริ่มต้นของกระบวนการพัฒนาซอฟต์แวร์และการรับประกันความสอดคล้องในขั้นตอนต่อๆ ไป หลังจากการพัฒนาเป็นเวลานาน ผู้มีส่วนได้ส่วนเสียอาจสับสนว่าซอฟต์แวร์ควรทำอย่างไร ข้อกำหนดที่ชัดเจน ชัดเจนและสามารถวัดผลได้นั้นเกี่ยวข้องกับความต้องการทางธุรกิจ และให้ความชัดเจนและมุ่งเน้นที่โครงการทั้งหมดและทุกคนที่เกี่ยวข้อง
- ประหยัดเวลาและเงิน: เมื่อคุณกำหนดและจัดโครงสร้างข้อกำหนดของซอฟต์แวร์ ขั้นตอนจะได้รับการตั้งค่าสำหรับการพัฒนาผลิตภัณฑ์จริง การรู้ล่วงหน้าให้มากที่สุดเกี่ยวกับสิ่งที่ซอฟต์แวร์จำเป็นต้องทำและคุณลักษณะที่ควรมี จะสร้างผลลัพธ์ในเชิงบวกได้เร็วยิ่งขึ้นและมีค่าใช้จ่ายน้อยลง
- จัดเตรียมฐานสำหรับการทำงานร่วมกัน: ทีมที่ทำงานเกี่ยวกับการพัฒนาซอฟต์แวร์มักประกอบด้วยสมาชิกที่มีความรู้เฉพาะเจาะจงและเฉพาะเจาะจง โดยเฉพาะอย่างยิ่งสำหรับทีมที่ใช้วิธีการพัฒนาที่คล่องตัว การกำหนดข้อกำหนดในการพัฒนาซอฟต์แวร์ช่วยให้ทุกอย่างมีข้อมูลตรงกัน ข้อกำหนดให้แหล่งที่มาของความจริงและแนวทางทั่วไปสำหรับโครงการโดยอธิบายทุกแง่มุมของผลิตภัณฑ์ ทำให้ทุกคนมองเห็นได้ง่ายขึ้นว่าบทบาทของตนอยู่ที่ใดในภาพรวม
- ให้ความเสถียรในกรณีที่มีการเปลี่ยนแปลงที่ไม่คาดคิด: ทุกกระบวนการพัฒนามีแนวโน้มที่จะเปลี่ยนแปลงอย่างกะทันหันและไม่คาดคิด: ข้อบกพร่องในการออกแบบ การทดสอบล้มเหลว การเปลี่ยนแปลงการจัดการ วัตถุประสงค์การทำงานที่เปลี่ยนแปลงไป และอื่นๆ การจัดการการเปลี่ยนแปลงมีความสำคัญเนื่องจากสามารถควบคุมต้นทุนที่เพิ่มขึ้นของโครงการและให้แน่ใจว่าการส่งมอบผลิตภัณฑ์จะไม่ล่าช้า ข้อกำหนดในการพัฒนาซอฟต์แวร์ของคุณควรประสานงานและคาดการณ์การเปลี่ยนแปลงที่เป็นไปได้เหล่านี้เพื่อระบุผลกระทบที่อาจเกิดขึ้น
- ตรวจสอบให้แน่ใจว่าโครงการซอฟต์แวร์ทั้งหมดไม่ล้มเหลว: ข้อกำหนดซอฟต์แวร์ที่มีการกำหนดหรือไม่ได้กำหนดไว้ไม่ดีซึ่งไม่ได้รับการจัดลำดับความสำคัญ ไม่ชัดเจน ไม่สมบูรณ์หรือไม่สอดคล้องกัน เป็นอันตรายต่อโครงการพัฒนาซอฟต์แวร์ทั้งหมด
เอกสารข้อกำหนดข้อกำหนดซอฟต์แวร์คืออะไร?
เอกสารข้อกำหนดข้อกำหนดซอฟต์แวร์ (SRS) ระบุฟังก์ชันและวัตถุประสงค์ของผลิตภัณฑ์ซอฟต์แวร์ในอนาคต สิ่งที่จะดำเนินการและวิธีดำเนินการ
เป็นแกนหลักของโครงการพัฒนาซอฟต์แวร์เนื่องจากวางรากฐานและแนวทางที่ทุกฝ่ายที่เกี่ยวข้องในโครงการควรปฏิบัติตาม
เอกสารข้อกำหนดข้อกำหนดของซอฟต์แวร์อธิบายฟังก์ชันต่างๆ ที่ผลิตภัณฑ์ต้องมีเพื่อให้เป็นไปตามความคาดหวังของผู้ใช้ในอนาคต
เอกสารนี้ควรรวมถึง:
- คำอธิบายโดยรวม
- วัตถุประสงค์ของผลิตภัณฑ์
- ข้อกำหนดเฉพาะของซอฟต์แวร์
นอกจากนี้ เอกสาร SRS ยังจำเป็นต้องกำหนดวิธีที่ซอฟต์แวร์ทำงานร่วมกับฮาร์ดแวร์หรือเชื่อมต่อกับระบบซอฟต์แวร์อื่นๆ
การสรุปเอกสาร SRS สามารถให้ข้อมูลเชิงลึกอันมีค่า เช่น:
- วิธีลดเวลาและต้นทุนในการพัฒนาให้เหลือน้อยที่สุด
- อย่างไรและเมื่อใดในการตัดสินใจเกี่ยวกับวงจรชีวิตของผลิตภัณฑ์ซอฟต์แวร์
เอกสารนี้ให้ข้อมูลที่จำเป็นเกี่ยวกับโครงการพัฒนาภาคส่วนต่างๆ โดยให้ข้อมูลตรงกัน ภาคส่วนเหล่านี้รวมถึง:
- ออกแบบ
- การพัฒนา
- การทดสอบคุณภาพ
- ปฏิบัติการ
- การซ่อมบำรุง
แม้ว่าบางครั้งคำว่า "ซอฟต์แวร์" และ "ระบบ" จะใช้สลับกันได้ แต่ก็มีความแตกต่างระหว่างข้อกำหนดข้อกำหนดของซอฟต์แวร์และข้อกำหนดข้อกำหนดของระบบ
แม้ว่าข้อมูลจำเพาะข้อกำหนดซอฟต์แวร์จะอธิบายซอฟต์แวร์ที่จะพัฒนา เอกสารข้อกำหนดข้อกำหนดของระบบจะรวบรวมข้อมูลเกี่ยวกับข้อกำหนดของระบบ
สิ่งที่คุณต้องรู้ก่อนกำหนดข้อกำหนดซอฟต์แวร์ของคุณ
ก่อนกำหนดข้อกำหนดของซอฟต์แวร์จริงในเอกสารข้อมูลจำเพาะ มีหลายสิ่งที่คุณควรทำและทำความเข้าใจก่อน
1. เข้าใจกระบวนการพัฒนาซอฟต์แวร์
ประเภทของกระบวนการพัฒนาซอฟต์แวร์ขึ้นอยู่กับโครงการที่ต้องทำและทีมงานที่พัฒนา
กระบวนการนี้สรุปขั้นตอนของวงจรการพัฒนาซอฟต์แวร์และทุกขั้นตอนจะสร้างผลิตภัณฑ์ที่จำเป็นสำหรับขั้นตอนต่อไปของวงจร
กระบวนการพัฒนาซอฟต์แวร์ประกอบด้วยหกขั้นตอนพื้นฐานเหล่านี้:
- การรวบรวมข้อกำหนดซอฟต์แวร์และการวิเคราะห์โครงการ
- ออกแบบผลิตภัณฑ์
- การใช้งาน/การเข้ารหัส
- การทดสอบ
- การปรับใช้
- การซ่อมบำรุง
แต่ละขั้นตอนที่ตามมาจะขึ้นอยู่กับก่อนหน้าและสร้างเวิร์กโฟลว์ ข้อกำหนดที่รวบรวมได้จะสร้างพื้นฐานสำหรับการจัดวางและการออกแบบผลิตภัณฑ์ ขั้นตอนการพัฒนา - การนำไปใช้และการเข้ารหัส - ขึ้นอยู่กับการออกแบบ
ขั้นตอนการทดสอบที่ตรวจสอบว่าเป็นไปตามข้อกำหนดหรือไม่เป็นการอนุมัติหรือปฏิเสธผลิตภัณฑ์ที่เป็นผลจากขั้นตอนการพัฒนา
หากผลิตภัณฑ์ตรงตามข้อกำหนด ผลิตภัณฑ์ก็พร้อมที่จะนำไปใช้ในตลาดโดยมีกระบวนการบำรุงรักษาที่ตามมารออยู่
2. กำหนดข้อกำหนดทางธุรกิจสำหรับโซลูชันซอฟต์แวร์ของคุณ
ผลิตภัณฑ์ซอฟต์แวร์ทุกชิ้นถูกสร้างขึ้นเพื่อตอบสนองความต้องการทางธุรกิจบางอย่าง ขั้นตอนการกำหนดและวิเคราะห์ข้อกำหนดซอฟต์แวร์เกี่ยวข้องกับวัตถุประสงค์ทางธุรกิจเฉพาะ
กระบวนการกำหนดความต้องการทางธุรกิจของซอฟต์แวร์สามารถช่วยให้ธุรกิจของคุณกำหนดขอบเขตของโครงการได้
ซึ่งจะช่วยในการประเมินทรัพยากรและกรอบเวลาที่จำเป็นสำหรับการทำให้เสร็จสมบูรณ์
การทราบข้อกำหนดทางธุรกิจของโซลูชันซอฟต์แวร์จะทำให้เข้าใจความต้องการทางธุรกิจได้ดีขึ้น ซึ่งสามารถแบ่งออกเป็นรายละเอียดเฉพาะได้
หากมีปัญหาและมีการระบุในขั้นตอนการวิเคราะห์ การแก้ไขนั้นถูกกว่ามากเมื่อนั้นและที่นั่น มากกว่าตอนเปิดตัวผลิตภัณฑ์
ทำตามขั้นตอนเหล่านี้เพื่อกำหนดความต้องการทางธุรกิจของโซลูชันซอฟต์แวร์ของคุณ:
- ระบุผู้มีส่วนได้ส่วนเสียและกลุ่มที่จะได้รับประโยชน์จากผลิตภัณฑ์ซอฟต์แวร์: ซึ่งรวมถึงผู้สนับสนุนโครงการและลูกค้าที่เป็นผู้พูดขั้นสุดท้ายเกี่ยวกับขอบเขตของโครงการ เหล่านี้ยังเป็นผู้ใช้ปลายทางของโซลูชันซอฟต์แวร์ที่ต้องการตอบสนองความต้องการของพวกเขา
- รวบรวม ความต้องการของพวกเขา: กลุ่มข้างต้นคาดหวังอะไรจากโซลูชันซอฟต์แวร์นี้ ข้อกำหนดของตนเองจากผลิตภัณฑ์มีอะไรบ้าง? การทำความเข้าใจมุมมองที่แตกต่างกันของผู้มีส่วนได้ส่วนเสียทุกกลุ่มจะช่วยสร้างภาพรวมที่สมบูรณ์ของสิ่งที่โครงการควรบรรลุ
- จัดหมวดหมู่ข้อกำหนด : การจัดกลุ่มข้อกำหนดออกเป็นหลายประเภท เช่น รายการด้านล่างทำให้ขั้นตอนการวิเคราะห์ของคุณง่ายขึ้น
- ความต้องการการทำงาน
- ข้อกำหนดการดำเนินงาน
- ความต้องการทางด้านเทคนิค
- ข้อกำหนดเฉพาะกาล
- ตีความข้อกำหนด: เมื่อรวบรวมและจัดหมวดหมู่ความต้องการและความคาดหวังแล้ว สิ่งสำคัญคือต้องกำหนดว่าข้อใดทำได้และวิธีที่ผลิตภัณฑ์ของคุณสามารถส่งมอบได้ คุณควร:
- จัดลำดับความสำคัญความคาดหวังบางอย่าง
- ตรวจสอบให้แน่ใจว่ามีการใช้ถ้อยคำชัดเจน มีรายละเอียดเพียงพอ เกี่ยวข้องกับความต้องการทางธุรกิจและไม่คลุมเครือ
- แก้ไขปัญหาที่ขัดแย้งกัน
- วิเคราะห์ความเป็นไปได้
3. กำหนด Tech Stack และวิธีการพัฒนาที่คุณต้องการ (ถ้ามี)
ขึ้นอยู่กับเป้าหมายของผลิตภัณฑ์ซอฟต์แวร์ของคุณ ขนาดของทีมพัฒนา และปัจจัยอื่นๆ คุณอาจต้องการพิจารณาวิธีการพัฒนาหลายวิธีที่จะให้ผลลัพธ์ที่ดีที่สุดในสถานการณ์ที่กำหนด
นี่เป็นวิธีการพัฒนาที่ใช้กันอย่างแพร่หลายมากที่สุด ซึ่งคุณสามารถเลือกได้เมื่อพัฒนาซอฟต์แวร์
- การพัฒนาที่ขับเคลื่อนด้วยคุณลักษณะ: เป้าหมายของวิธีการนี้คือการนำเสนอซอฟต์แวร์ที่ใช้งานได้บ่อยครั้งและเน้นที่ไคลเอนต์ เหมาะอย่างยิ่งสำหรับทีมพัฒนาขนาดเล็กและเป็นตัวตั้งต้นของระเบียบวิธีแบบคล่องตัวและแบบลีน
- น้ำตก : วิธีดั้งเดิมในการพัฒนาซอฟต์แวร์ นี่เป็นแนวทางที่ขับเคลื่อนด้วยแผนซึ่งต้องการโครงสร้างและเอกสารที่เข้มงวดมากล่วงหน้า ในระยะแรก จำเป็นต้องมีความเข้าใจอย่างถ่องแท้ถึงความต้องการของโครงการ ดีสำหรับทีมขนาดใหญ่ที่ขับเคลื่อนด้วยการวางแผนซึ่งไม่เอนเอียงไปจากแนวคิดดั้งเดิม
- เปรียว : ตรงกันข้ามกับน้ำตก วิธีการแบบเปรียวมีความยืดหยุ่นและรองรับความเป็นไปได้ของการเปลี่ยนแปลงในระหว่างกระบวนการพัฒนา ให้คุณค่ากับสมาชิกในทีมแต่ละคนและการโต้ตอบของพวกเขาตลอดจนความร่วมมือกับลูกค้า เหมาะสำหรับทีมที่ทำงานร่วมกันอย่างหนัก
- Scrum : วิธีการนี้ใช้แนวคิดของ Agile ที่ว่าสมาชิกในทีมควรทำงานร่วมกันอย่างใกล้ชิดและพัฒนาซอฟต์แวร์ด้วยวิธีวนซ้ำ นักพัฒนาแบ่งเป้าหมายสุดท้ายออกเป็นเป้าหมายย่อยๆ และดำเนินการโดยใช้ Sprints เพื่อสร้างซอฟต์แวร์ แนวทางที่เป็นประโยชน์สำหรับทีมขนาดเล็กที่มีระเบียบวินัย
- แบบลีน : หลักการพื้นฐานของวิธีนี้คือการเพิ่มประสิทธิภาพโดยรวม การกำจัดของเสีย การสร้างความรู้ การส่งมอบความมุ่งมั่นที่รวดเร็วและรอช้า รวมวิธีปฏิบัติในการผลิตและใช้วิธีการที่คล่องตัวเพื่อปรับขนาดทั่วทั้งองค์กรและนำไปใช้นอกงานพัฒนา
วิธีการกำหนดและจัดทำเอกสารข้อกำหนดการพัฒนาซอฟต์แวร์ใน 5 ขั้นตอน
เมื่อคุณเข้าใจกระบวนการพัฒนาซอฟต์แวร์และกำหนดข้อกำหนดทางธุรกิจและวิธีการพัฒนาแล้ว คุณก็พร้อมที่จะจัดทำเอกสารข้อกำหนดในการพัฒนาซอฟต์แวร์
ปฏิบัติตามห้าขั้นตอนเหล่านี้เพื่อสร้างเอกสารข้อกำหนดด้านซอฟต์แวร์ที่มีคุณภาพสำหรับผลิตภัณฑ์ที่คุณต้องการสร้าง
1. สร้างโครงร่างข้อกำหนดข้อกำหนดของซอฟต์แวร์
ขั้นตอนแรกในการกำหนดข้อกำหนดการพัฒนาซอฟต์แวร์เอกสารคือการสร้างโครงร่างสำหรับ SRS
โครงร่างนี้ควรรวมถึงบทเหล่านี้:
- วัตถุประสงค์ของผลิตภัณฑ์
- ผู้ชม
- ใช้
- ขอบเขตของผลิตภัณฑ์
- ภาพรวมผลิตภัณฑ์
- ความต้องการของผู้ใช้
- สมมติฐานและการพึ่งพา
- ข้อกำหนดและคุณสมบัติของระบบ
- คุณสมบัติของระบบ
- ความต้องการของตลาด
- ข้อกำหนดทางธุรกิจ
- ข้อกำหนด UI
- ความต้องการการทำงาน
- ข้อกำหนดที่ไม่เป็นไปตามข้อกำหนด
การกำหนดแต่ละรายการเหล่านี้ในโครงร่างข้อกำหนดข้อกำหนดของซอฟต์แวร์และการกรอกหมายความว่าคุณพร้อมที่จะไปยังขั้นตอนถัดไป
2. กำหนดวัตถุประสงค์และความคาดหวังของผลิตภัณฑ์
บทแรกในเอกสาร SRS ของคุณเกี่ยวข้องกับวัตถุประสงค์ของผลิตภัณฑ์ มันกำหนดความคาดหวังสำหรับโซลูชันซอฟต์แวร์ที่คุณกำลังสร้าง
- ผู้ชมและการใช้งาน: ในส่วนนี้ คุณต้องร่างโครงร่างบุคคลในโปรเจ็กต์ทั้งหมดที่จะมีสิทธิ์เข้าถึงเอกสารและวิธีที่พวกเขาควรใช้ เหล่านี้อาจเป็นนักพัฒนา ผู้จัดการโครงการ ผู้ทดสอบ พนักงานขายและการตลาด หรือผู้มีส่วนได้ส่วนเสียในแผนกอื่นๆ
- ขอบเขตของผลิตภัณฑ์: ส่วนนี้มีไว้สำหรับกำหนดผลิตภัณฑ์ที่คุณกำลังระบุ ควรร่างวัตถุประสงค์ของโซลูชันซอฟต์แวร์และประโยชน์ของโซลูชัน
3. สร้างภาพรวมของผลิตภัณฑ์ซอฟต์แวร์สำเร็จรูป
ภาพรวมหรือคำอธิบายของส่วนผลิตภัณฑ์ของ SRS ควรสรุปซอฟต์แวร์ที่คุณกำลังสร้าง
เพื่อให้ทุกคนในโครงการรู้ว่าพวกเขากำลังสร้างอะไร คุณควรตอบคำถามเหล่านี้ล่วงหน้า:
- ผลิตภัณฑ์เป็นโซลูชั่นรูปแบบใหม่หรือไม่?
- เป็นการปรับปรุงหรือใช้เวลากับผลิตภัณฑ์ที่มีอยู่?
- มันเป็นส่วนเสริมสำหรับผลิตภัณฑ์ที่สร้างขึ้นแล้วหรือไม่?
การตอบคำถามข้างต้นช่วยในการกำหนดสิ่งต่อไปนี้:
- ความต้องการของผู้ใช้ : กลุ่มเป้าหมายของคุณ - ผู้ที่จะใช้โซลูชันซอฟต์แวร์ของคุณ - อยู่ในกลุ่มนี้ การกำหนดผู้ใช้ที่ต้องการผลิตภัณฑ์ซอฟต์แวร์ที่คุณกำลังสร้างมีความสำคัญ: มีผู้ใช้หลักและรองที่จะใช้โซลูชันนี้เป็นประจำ และอาจมีผู้ซื้อแยกกันซึ่งคุณจำเป็นต้องกำหนดความต้องการด้วย
- สมมติฐานและการพึ่งพา: ส่วนนี้ควรสรุปปัจจัยที่อาจส่งผลต่อการปฏิบัติตามข้อกำหนด SRS นอกจากนี้ยังควรรวมถึงข้อสันนิษฐานที่ STS กำลังทำและนั่นอาจเป็นเท็จ นอกจากนี้ ให้จดบันทึกปัจจัยภายนอกที่โครงการพัฒนาซอฟต์แวร์ขึ้นอยู่กับ
4. รับความต้องการของคุณที่เฉพาะเจาะจงมาก
ทีมพัฒนาจะใช้ส่วนนี้ให้เกิดประโยชน์สูงสุด เนื่องจากคุณจำเป็นต้องให้รายละเอียดข้อกำหนดเฉพาะสำหรับการสร้างโซลูชันซอฟต์แวร์
ประกอบด้วยข้อกำหนดด้านการทำงานและการทำงานที่ไม่เป็นไปตามข้อกำหนด ซึ่งเราจะกล่าวถึงในเชิงลึกในบทความต่อไป นอกจากนี้ยังมี:
- ข้อกำหนดทางธุรกิจ: เป้าหมายทางธุรกิจระดับสูงของธุรกิจที่สร้างโซลูชันซอฟต์แวร์
- ข้อกำหนดของตลาด: ข้อกำหนดที่ระบุความต้องการของตลาดและกลุ่มเป้าหมาย
- ข้อกำหนดอินเทอร์เฟซภายนอก: ประเภทของข้อกำหนดด้านฟังก์ชันที่ระบุว่าผลิตภัณฑ์จะผสานรวมกับซอฟต์แวร์อื่นๆ ได้อย่างไร
- ข้อกำหนดอินเทอร์เฟซผู้ใช้: ข้อมูลจำเพาะที่สรุปว่า UI จะมีหน้าตาเป็นอย่างไร สิ่งนี้กำหนดประสบการณ์ผู้ใช้ของผลิตภัณฑ์
- ข้อกำหนดคุณสมบัติของระบบ: โครงร่างคุณลักษณะที่จำเป็นเพื่อให้ผลิตภัณฑ์ทำงานได้
5. มีผู้มีส่วนได้ส่วนเสียอนุมัติข้อกำหนดการพัฒนาซอฟต์แวร์
เมื่อคุณกำหนดและจัดทำเอกสารข้อกำหนดในการพัฒนาซอฟต์แวร์ของคุณในเอกสาร SRS แล้ว ขั้นตอนสุดท้ายที่ยังคงอยู่คือการส่งไปยังผู้มีส่วนได้ส่วนเสียเพื่อทำการแก้ไขและอนุมัติ
ทุกคนควรตรวจสอบเวอร์ชันสุดท้ายของเอกสารนี้ ไม่ว่าจะเป็นทีมพัฒนาและออกแบบที่ทำงานกับมัน ธุรกิจหรือบริษัทที่ว่าจ้าง ผู้สนับสนุนที่ให้ทุน ตลอดจนกลุ่มตัวอย่างกลุ่มเป้าหมายเพื่อทบทวนฟังก์ชันและคุณลักษณะต่างๆ
นี่เป็นขั้นตอนสุดท้ายในการทำให้แน่ใจว่าทุกคนเข้าใจตรงกันก่อนที่การผลิตโซลูชันจะเริ่มต้นขึ้น
นี่คือเวลาที่ผู้ตรวจสอบ SRS สามารถยื่นข้อเสนอแนะ ข้อร้องเรียน และแนวคิดในนาทีสุดท้ายสำหรับการปรับปรุงกระบวนการและผลิตภัณฑ์สำเร็จรูป
ข้อกำหนดที่ไม่สามารถใช้งานได้ในการพัฒนาซอฟต์แวร์มีอะไรบ้าง?
ในการพัฒนาซอฟต์แวร์ มีข้อกำหนดสองประเภท: ฟังก์ชันและ nonfunctional
- ข้อกำหนดด้านการทำงาน: นี่คือคุณลักษณะของผลิตภัณฑ์ที่ทีมพัฒนาจะออกแบบ เขียนโค้ด และทดสอบ พวกเขากำหนดฟังก์ชันการทำงานของผลิตภัณฑ์ซอฟต์แวร์ที่จะช่วยในการแก้ไขจุดบอดของผู้ใช้ ข้อกำหนดเหล่านี้กำหนดโดยคำถาม "อะไร" เช่น:
- ระบบซอฟต์แวร์ควรทำอย่างไร?
- ฟังก์ชันหรือฟังก์ชันการทำงานใดบ้างที่ผลิตภัณฑ์จะสนับสนุน
- ข้อมูลหรือข้อมูลใดที่จะจัดการ?
- ข้อกำหนดที่ไม่ทำงาน: ข้อกำหนด เหล่านี้อธิบายว่าคุณลักษณะแต่ละรายการควรทำงานอย่างไรภายใต้เงื่อนไขบางประการและควรมีข้อจำกัดอะไรบ้าง เป็นคำอธิบายของหน้าที่ที่มีความสำคัญสำหรับผู้มีส่วนได้ส่วนเสีย ข้อกำหนดเหล่านี้กำหนดโดยคำถาม "อย่างไร" เช่น "ระบบจะทำในสิ่งที่ได้รับการออกแบบมาอย่างไร" พวกเขาสร้างมาตรฐานสำหรับ
- ความปลอดภัย
- ออกแบบ
- การช่วยสำหรับการเข้าถึง
- ประสิทธิภาพ
- ความน่าเชื่อถือ
ข้อกำหนดที่ไม่เป็นไปตามข้อกำหนดช่วยเสริมข้อกำหนดด้านการทำงาน รายการแรกคือรายการคุณสมบัติเฉพาะ ในขณะที่ส่วนหลังสรุปฟังก์ชันการทำงานของซอฟต์แวร์
เพื่อแสดงให้เห็น ความต้องการด้านการทำงานอาจเป็นความสามารถของโซลูชันซอฟต์แวร์ในการส่งข้อความหรือถ่ายโอนไฟล์
ข้อกำหนดที่ไม่ทำงานจะเสนอข้อกำหนดด้านการทำงานเหล่านี้ในเบราว์เซอร์และระบบปฏิบัติการหลักทั้งหมด หรือสนับสนุนในเค้าโครงอุปกรณ์มือถือ
7 ความเสี่ยงของการมีข้อกำหนดซอฟต์แวร์ที่ไม่มีเอกสาร
เป็นไปไม่ได้ที่จะทราบได้ว่าผลิตภัณฑ์ซอฟต์แวร์และคุณสมบัติของซอฟต์แวร์ได้รับการพัฒนาอย่างเหมาะสมโดยไม่ได้ระบุและจัดทำเอกสารพารามิเตอร์ซอฟต์แวร์
มีหลายสิ่งหลายอย่างที่อาจผิดพลาดได้หากไม่มีการวิเคราะห์และจัดทำข้อกำหนดของซอฟต์แวร์อย่างละเอียดถี่ถ้วน
การไม่มีข้อกำหนดข้อกำหนดซอฟต์แวร์ที่เป็นทางการอาจส่งผลให้เกิดวิธีดังต่อไปนี้:
- ข้อบกพร่องและข้อผิดพลาดบานปลายในระบบ
- นักพัฒนาจำเป็นต้องแยกแยะคุณสมบัติเฉพาะตามคำแนะนำที่พูดและวิธีที่พวกเขาเข้าใจ
- ไม่มีข้อตกลงอย่างเป็นทางการเกี่ยวกับสิ่งที่ทำให้ผลิตภัณฑ์ขั้นสุดท้าย
- ลูกค้าไม่รู้ว่าผลิตภัณฑ์สุดท้ายคาดหวังอะไร
- กรณีของการสื่อสารที่ผิดพลาดเกิดขึ้นทั่วทั้งโครงการและในทุกภาคส่วน
- เนื่องจากการสื่อสารผิดพลาดและการพัฒนาที่ไม่ดี จึงจำเป็นต้องแก้ไขจุดบกพร่องและทำงานใหม่
- ค่าใช้จ่ายเพิ่มขึ้นและยากมากที่จะทำตามกำหนดเวลา
ประเด็นสำคัญเกี่ยวกับข้อกำหนดของซอฟต์แวร์
เมื่อพูดถึงการสรุปและกำหนดความต้องการของผลิตภัณฑ์ซอฟต์แวร์ สิ่งที่สำคัญที่สุดคือ:
- เข้าใจวัตถุประสงค์ของผลิตภัณฑ์และกระบวนการพัฒนา
- กำหนดข้อกำหนดทางธุรกิจ
- ตัดสินใจเกี่ยวกับวิธีการพัฒนา
- กำหนดข้อกำหนดด้านการทำงานและไม่เป็นไปตามข้อกำหนด
- สร้างกำหนดการที่ครอบคลุม
- กำหนดลำดับความสำคัญ
- ให้ผู้มีส่วนได้ส่วนเสียตรวจสอบเอกสารข้อกำหนดซอฟต์แวร์