
วัฏจักรการพัฒนาซอฟต์แวร์: Software Development Life Cycle
วัฏจักรการพัฒนาซอฟต์แวร์ หรือ Software Development Life Cycle เป็นวัฏจักรพื้นฐานในการพัฒนาซอฟต์แวร์ หรือโปรแกรมคอมพิวเตอร์ ให้มีประสิทธิภาพมากยิ่งขึ้น นับตั้งแต่เริ่มเก็บความต้องการ (Get Requirement) ไปจนถึงการสำรวจความเห็นย้อนกลับ (Feedback) มาที่ผู้พัฒนา Software Development Life Cycle มีส่วนประกอบพื้นฐาน ดังต่อไปนี้ 1. Planning: วางแผนโครงการ การวางแผนการพัฒนาซอฟต์แวร์ เริ่มต้นจาก การเก็บความต้องการ (Get Requirement) ทั้งจากลูกค้า (Customer) หรือผู้ใช้งาน (User) อาจจะเป็นการกำหนดจากขั้นตอนทางธุรกิจ หรือ Business Process ก็ได้ 2. Analysis: วิเคราะห์โครงการ เมื่อเราได้ความต้องการจากลูกค้า หรือผู้ใช้งานแล้ว จะเข้าสู่ขั้นตอนการวิเคราะห์ระบบ ซึ่งจะต้องวิเคราะห์ความคุ้มค่าในการลงทุน (Return On Investment: ROI) ว่าคุ้มค่าในการดำเนินการต่อหรือไม่ เมื่อเราคำนวณความคุ้มค่าของโครงการแล้ว จึงจะนำมาจัดทำขอบเขตของโครงการ หรือ Project Scope Of Work เพื่อกำหนดขอบเขตการพัฒนาซอฟต์แวร์ว่าเราจะทำหรือไม่ทำอะไรบ้าง โดยขั้นตอนนี้จะต้องสรุปกับลูกค้า หรือผู้ใช้งาน ตามความต้องการ (Requirement) ที่ได้เก็บมาตั้งแต่ต้น จนได้ข้อสรุปที่ตกลงได้ทั้ง 2 ฝ่าย เมื่อเราสามารถสรุปขอบเขตของโครงการได้แล้ว ขั้นตอนต่อไปคือ การทำแผนการปฏิบัติการ หรือ Action Plan เพื่อกำหนดการทำงานภายใต้ระยะเวลาตามที่ได้สรุปกับลูกค้า หรือผู้ใช้งาน ในขอบเขตของโครงการ (Project Scope Of Work) 3. Design: ออกแบบระบบ การออกแบบระบบนี้ นอกจากการออกแบบทางด้านซอฟต์แวร์ ทั้งหน้าจอตอบสนองผู้ใช้งาน (User Interface: UI) และการโค้ดซอฟต์แวร์ (Software Coding) ด้วยการทำรายละเอียดซอฟต์แวร์ หรือ Software Specification แต่จะรวมถึงการออกแบบฐานข้อมูล (Database Design) และเครือข่าย (Network Design) ด้วย เพื่อให้ซอฟต์แวร์สามารถทำงานได้ตามความต้องการของลูกค้า หรือผู้ใช้งาน 4. Implementation: พัฒนาซอฟต์แวร์และติดตั้ง เมื่อทำการออกแบบระบบเรียบร้อยแล้ว จะเข้าสู่ขั้นตอนการพัฒนาซอฟต์แวร์ให้ใช้งานได้จริง โดยพัฒนาซอฟต์แวร์ตามที่ได้ออกแบบไว้แล้ว ให้กลายเป็นความจริง สามารถใช้งานได้อย่างมีประสิทธิภาพ ตรงตามความต้องการของลูกค้า หรือผู้ใช้งาน ตามที่ได้เก็บมา ขั้นตอนนี้จะทำอยู่ในสภาวะแวดล้อมทดสอบ หรือ Test Environment 5. Testing & Integration: ทดสอบและนำไปใช้งาน หลังจากพัฒนาซอฟต์แวร์แล้ว ขั้นตอนต่อไปคือการทดสอบและการบูรณาการ จะต้องทำการทดสอบจนกว่า ความผิดพลาดของซอฟต์แวร์ หรือบั๊ก (Bug) จะลดน้อยมากที่สุด…