Monday, September 3, 2012

Chapter 2 Software Process


กระบวนการซอฟต์แวร์ (Software Process)


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

กิจกรรมพื้นฐานทั้งหมด 4 กิจกรรม ที่ใช้กับกระบวนการผลิตซอฟต์แวร์


1. software specification

นิยามหน้าที่ต่างๆที่ต้องมีในซอฟต์แวร์ และระบุข้อจำกัดต่างๆ ที่เกี่ยวข้องกับกระบวนพัฒนาซอฟต์แวร์ เช่น กฎหมาย , อัตราภาษี , กฎระเบียบต่างๆที่เกี่ยวในการพัฒนาซอฟต์แวร์ 

2. Software Design and Implementation

กิจกรรมนี้ทำการสร้าง / พัฒนาซอฟต์แวร์ให้ตรงกับข้อกำหนด (specification) 

3. software validation

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

4. software evolution

ในทางปฎิบัติ เมื่อซอฟต์แวร์ใช้งานได้ระยะหนึ่งแล้ว ผู้ใช้หรือลูกค้าอาจมีความต้องการเพิ่มเติมหรือเปลี่ยนแปลงความต้องการบางอย่าง ดังนั้นขั้นตอนการพัฒนาซอฟต์แวร์ ต้องมีการเตรียมการบางอย่างเพื่อจัดการกับเหตุการณ์ที่คาดหมายว่าจะเกิดขึ้นในอนาคต


Waterfall model



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


Evolutionary development




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


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


Spiral model of the software process




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

No comments:

Post a Comment