เริ่มต้นด้วย... Software Processes
- Software specifications ➜ ข้อกำหนดและขอบเขตต่างๆ ของซอฟต์แวร์
- Software development ➜ การพัฒนาซอฟต์แวร์ให้ตรงตามความต้องการ
- Software validation ➜ ซอฟต์แวร์ต้องได้รับการตรวจสอบเพื่อให้แน่ใจว่าตรงกับตามความต้องการ
- Software evolution ➜ ซอฟต์แวร์ต้องพัฒนาเพื่อตอบสนองความต้องการของลูกค้าที่เปลี่ยนแปลงไป
SDLC คืออะไร?
SDLC ย่อมาจาก Software Development Life Cycle คือ แนวคิดกระบวนการพัฒนาซอฟต์แวร์ โดยจะสามารถแบ่งได้เป็น 6 ขั้นตอนดังนี้
1st Planning and Requirement Analysis
การวิเคราะห์ความต้องการเป็นขั้นตอนพื้นฐานที่สำคัญที่สุดใน SDLC โดยจะต้องมีผู้ที่เกี่ยวข้องกับระบบรวบรวมข้อมูลต่างๆ นำข้อมูลมาวิเคราะห์เพิ่อให้ประสบความสำเร็จและให้มีความเสี่ยงน้อยที่สุด(Brainstorm) ตัวอย่างเครื่องมือที่ใช้
- Google Jamboard
- Google Sheet
2nd Defining Requirements
ข้อกำหนดและขอบเขตต่างๆ ของซอฟต์แวร์ โดยจัดทำเป็นเอกสาร SRS (Software Requirement Specification) โดยจะมีหัวข้อตัวอย่างดังนี้
- Introduction (บทนำ)▼
- Overall Description (ลักษณะโดยทั่วไป)▼
- System Features and Requirements (ข้อกำหนดและคุณสมบัติของระบบ)▼
3rd Designing the Product Architecture
ขั้นตอนการออกแบบการทำงานของโปรแกรม กำหนดระยะเวลา งบประมาณ และเทคโนโลยีต่างๆ ที่ใช้ในการพัฒนา โดยสามารถทำเป็นเอกสาร DDS (Design Document Specification) ได้ เครื่องมือที่เกี่ยวข้องดังนี้
- Gantt Chart
- Wireframe
- UML diagram
- Sequence diagram
- Flow Chart
- User Interface
- Infrastructure diagram
- etc.
4th Building or Developing the Product
เริ่มขั้นตอนการพัฒนาโปรแกรม ในขั้นตอนการเขียนซอร์สโค้ดเพื่อให้เป็นไปตามมาตรฐานอาจจะมีการนำเครื่องมือต่างๆ มาช่วยในการพัฒนาดังนี้
- Sonarqube
- etc.
5th Testing the Product
ขั้นตอนการทดสอบระบบหาขอบกพร่องต่างๆ ของซอฟต์แวร์ เพื่อให้นักพัฒนาทำการแก้ไขทำให้โปรแกรมเสถียรที่สุด
6th Deployment in the Market and Maintenance
นำโปรแกรมที่พัฒนาเสร็จไปใช้งานจริงกับผู้ใช้งาน แล้วนำข้อคิดเห็นต่างๆ นำมาปรับปรุงโปรแกรมให้ดีขึ้นในเวอร์ชันต่อไป
SDLC Models ต่างๆ ที่ใช้ในการพัฒนา
- Waterfall Model
- Iterative Model
- Agile Model
- Spiral Model
- V-Model
- Big Bang Model