การพัฒนาระบบงานแบบวงจรชีวิต SDLC ว่ามีอะไรบ้าง

การพัฒนาระบบงานแบบวงจรชีวิต SDLC ว่ามีอะไรบ้าง

นักวิชาการคอมพิวเตอร์ชำนาญการพิเศษ สำนักโลจิสติกส์

ที่มา http://logistics.go.th/index.php/en/news-article/bol-article/9386-2017-03-09-03-01-34

ในฉบับที่ผ่านมา (link) เรากล่าวถึง การจัดทำแผนที่นําทางเทคโนโลยี (Technology Road Mapping: TRM) ซึ่งเป็นแนวคิดที่นำเทคโนโลยีมาเป็นปัจจัยร่วมในการกำหนดทิศทางการขับเคลื่อนองค์กร ฉบับนี้จะพูดถึงขั้นตอนการนำระบบ (เทคโนโลยีสารสนเทศ) มาใช้ในองค์กร อาจเรียกว่า การพัฒนาระบบ เนื่องจากปัจจุบันหลายองค์กรล้มเหลวในการนำระบบมาใช้ในงาน เพราะขาดความรู้ความเข้าใจหรือไม่ได้มีการจัดขั้นตอนการพัฒนาระบบที่ถูกต้อง ดังนั้น ทุกองค์กรจึงควรมีการวางแผนการดำเนินงานตามขั้นตอนการพัฒนาระบบที่ดีในองค์กรเพื่อประสิทธิภาพที่สูงสุด

วงจรการพัฒนาระบบ (System Development Life Cycle : SDLC) คือ การแบ่งขั้นตอนกระบวนการพัฒนาระบบงาน หรือระบบเทคโนโลยีสารสนเทศด้วย เพื่อช่วยแก้ปัญหาทางธุรกิจหรือตอบสนองความต้องการขององค์กรโดยระบบที่จะพัฒนานั้นอาจเป็นการพัฒนาระบบใหม่หรือการปรับปรุงระบบเดิมให้ดีขึ้นก็ได้ การพัฒนาระบบแบ่งออกเป็น 7 ขั้นตอน ดังนี้

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

2. การศึกษาความเหมาะสม (Feasibility Study) ว่าเหมาะสมหรือไม่ที่จะปรับเปลี่ยนระบบ โดยให้เสียค่าใช้จ่าย (Cost) และเวลา (Time) น้อยที่สุดแต่ให้ได้ผลลัพธ์ที่น่าพอใจ และหาความต้องการของผู้เกี่ยวข้องใน 3 เรื่อง คือ เทคนิคเครื่องมือหรืออุปกรณ์ที่ใช้ บุคลากรและความพร้อม และความคุ้มค่า เพื่อใช้นำเสนอต่อผู้บริหารพิจารณาอนุมัติดำเนินการต่อไป

3. การวิเคราะห์ (Analysis) เป็นการรวบรวมข้อมูลปัญหาความต้องการที่มีเพื่อนำไปออกแบบระบบ ขั้นตอนนี้จะศึกษาจากผู้ใช้ โดยวิเคราะห์การทำงานของระบบเดิม (As Is) และความต้องการที่มีจากระบบใหม่ (To Be) จากนั้นนำผลการศึกษาและวิเคราะห์มาเขียนเป็นแผนภาพผังงานระบบ (System Flowchart) และทิศทางการไหลของข้อมูล (Data Flow Diagram)

4. การออกแบบ (Design) นำผลการวิเคราะห์มาออกแบบเป็นแนวคิด (Logical Design) เพื่อแก้ไขปัญหา โดยในส่วนนี้จะยังไม่ได้มีการระบุถึงรายละเอียดและคุณลักษณะอุปกรณ์มากนัก เน้นการออกแบบโครงร่างบนกระดาษ แล้วส่งให้ผู้ออกแบบระบบนำไปออกแบบ (System Design) ซึ่งขั้นตอนนี้จะเริ่มมีการระบุลักษณะการทำงานของระบบทางเทคนิค รายละเอียดคุณลักษณะอุปกรณ์ที่ใช้ เทคโนโลยีที่ใช้ ชนิดฐานข้อมูลการออกแบบ เครือข่ายที่เหมาะสม ลักษณะของการนำข้อมูลเข้า ลักษณะรูปแบบรายงานที่เกิด และผลลัพธ์ที่ได้

5. การพัฒนาและทดสอบ (Development & Test) เป็นขั้นตอนการการเขียนโปรแกรม (Coding) เพื่อพัฒนาระบบจากแบบบนกระดาษให้เป็นระบบตามคุณลักษณะที่กำหนดไว้ จากนั้นทำการทดสอบหาข้อผิดพลาด (Testing) เพื่อตรวจสอบความถูกต้อง จนมั่นใจว่าถูกต้องและตรงตามความต้องการ หากพบว่ามีข้อผิดพลาดเกิดขึ้นจากการทำงานของระบบต้องปรับแก้ไขให้เรียบร้อยพร้อมใช้งานก่อนนำไปติดตั้งใช้จริง

6. การติดตั้ง (Implementation) เป็นขั้นตอนการนำระบบที่พัฒนาจนสมบูรณ์มาติดตั้ง (Installation) และเริ่มใช้งานจริง ในส่วนนี้นอกจากติดตั้งระบบใช้งานแล้ว ยังต้องมีการจัดเตรียมขั้นตอนการสนับสนุนส่งเสริมการใช้งานให้สามารถใช้งานได้อย่างสมบูรณ์ โดยจัดทำหลักสูตรฝึกอบรมผู้ใช้งาน (Training) เอกสารประกอบระบบ (Documentation) และแผนการบริการให้ความช่วยเหลือ (Support) เพื่อให้ระบบสามารถใช้งานได้อย่างต่อเนื่อง

7. การซ่อมบำรุงระบบ (System Maintenance) เป็นขั้นตอนการบำรุงรักษาระบบต่อเนื่องหลังจากเริ่มดำเนินการ ผู้ใช้ระบบอาจจะพบกับปัญหาที่เกิดขึ้นภายหลัง เช่น ปัญหาเนื่องจากความไม่คุ้นเคยกับระบบใหม่ จึงควรกำหนดแผนค้นหาปัญหาอย่างต่อเนื่อง ติดตามประเมินผล เก็บรวบรวมคำร้องขอให้ปรับปรุงระบบ วิเคราะห์ข้อมูลร้องขอให้ปรับปรุงระบบ จากนั้นออกแบบการทำงานที่ต้องการปรับปรุงแก้ไขและติดตั้ง ซึ่งต้องมีการฝึกอบรมการใช้งานระบบให้แก่ผู้ใช้งาน เพื่อที่จะทราบความพึงพอใจของผู้ใช้

SDLC ย่อมาจาก Systems Development Life Cycle ซึ่งเป็นแนวคิดของกระบวนการพัฒนาระบบ Software หรือโปรแกรมต่างๆ เป็นกระบวนการต่อเนื่องหลายขั้นตอน ตั้งแต่เริ่มคิดพัฒนาถึงสิ้นสุดกระบวนการพัฒนา จนกระทั่งโปรแกรมที่เราพัฒนาใช้งานได้

 

SDLC มีอยู่หลายโมเดล ได้แก่ Waterfall model, V-shaped model, Iterative model,  Agile model และ Spiral model ซึ่งแต่ละโมเดลมีกระบวนการทำงานที่ต่างกันบ้าง แต่ว่าทุกโมเดลล้วนเป็นขั้นตอนในการพัฒนาโปรแกรมจนสำเร็จทั้งสิ้น ขึ้นอยู่กับเราเลือกใช้

 

กระบวนการทำงานพื้นฐานของ SDLC

  1. Planning and requirement analysis : กระบวนการแรกของการพัฒนาโปรแกรม คือ เริ่มต้นเก็บข้อมูลความต้องการ แล้ววิเคราะห์ความต้องการของระบบที่จะเริ่มพัฒนา ซึ่งเป้าหมายของขั้นตอนนี้ คือ กำหนดคำจำกัดความโดยละเอียดของข้อกำหนดของระบบ กำลังทำอะไร และต้องการอะไร ซึ่งผู้ที่อยู่ในกระบวนการนี้ทุกคน ควรจะเข้าใจงานอย่างชัดเจนและนำข้อกำหนดทั้งหมดไปปฏิบัติอย่างไร
  2. Designing project architecture : กระบวนการที่ 2 ของกระบวนการพัฒนาโปรแกรม คือ แก้ปัญหาต่างๆ ที่รวบรวมได้ในกระบวนการแรก เริ่มออกแบบการทำงานของโปรแกรม กำหนดระยะเวลา งบประมาณ และเทคโนโลยีที่ใช้ในการพัฒนาโปรแกรม
  3. Development and programming : หลังจากผ่านการอนุมัติเงื่อนไขต่างๆ ตามข้อที่ 2 แล้ว ก็เข้าสู่กระบวนการพัฒนาโปรแกรม เริ่มการพัฒนาจริง งานของ Programmer และ Designer เริ่มต้นที่นี่ ด้วยการเขียนซอร์สโค้ดโดยคำนึงถึงข้อกำหนดที่กำหนดไว้ก่อนหน้านี้
    - Graphic Design
    - Source code writing
    - Testing and debugging
  4. Testing : เมื่อพัฒนาระบบจนเสร็จก็มาถึง ขั้นตอนทดสอบระบบ ซึ่งกระบวนนี้เป็นกระบวนการหาข้อบกพร่องของระบบทั้งหมด เพื่อให้นักพัฒนาเพื่อแก้ไข กระบวนการทดสอบจะทำซ้ำจนกว่าปัญหาจะหมด และโปรแกรมเสถียรที่สุด
  5. Deployment : เมื่อพัฒนาระบบจนเสร็จ พร้อมใช้งาน ก็เปิดให้บริการ-ใช้งานได้เลย ในขั้นนี้จะเริ่มมีคำติชม ของโปรแกรมที่พัฒนา ก็สามารถนำมาอัปเดตระบบได้

 

จากข้างต้น SDLC มีอยู่หลายโมเดล แต่ละโมเดลก็มีข้อดี-ข้อด้อย แต่ทุกโมเดลล้วนเป็นกระบวนการในการพัฒนาโปรแกรม ตั้งแต่เริ่มต้นจนสำเร็จทั้งสิ้น ส่วนทางทีมออกแบบและพัฒนาเว็บไซต์ ของ RM Online Services ได้เลือกใช้ Agile SDLC Model ในการออกแบบและพัฒนาเว็บไซต์

 

Waterfall SDLC Model

วิธีการของ Waterfall SDLC Model คือ ทำงานเรียงลำดับตามขั้นตอนการออกแบบและพัฒนาต่อเนื่องไปเรื่อยๆ โดย Output ของแต่ละขั้นตอน จะเป็น Input ของขั้นตอนถัดไป

ข้อดีของ Waterfall Model

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

ข้อเสียของ Waterfall Model

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

 

การพัฒนาระบบงานแบบวงจรชีวิต SDLC ว่ามีอะไรบ้าง

Waterfall SDLC Model Schema

 

V-shaped SDLC Model

วิธีการของ V-shaped SDLC Model คือ เป็นโมเดลที่ถูกพัฒนาต่อมาจาก Waterfall Model โดยเพิ่มการตรวจสอบคุณภาพและทดสอบส่วนต่างๆ ของการพัฒนาเนื่องจาก Waterfall Model นั้นไม่ได้ให้ความสำคัญด้านการทดสอบมากนัก จึงได้มีการพัฒนา V-shaped Model ขึ้นมา เพื่อทำหน้าที่ในส่วนนี้

 

การพัฒนาระบบงานแบบวงจรชีวิต SDLC ว่ามีอะไรบ้าง

V-shaped SDLC Model Schema

 

Iterative SDLC Model

วิธีการของ Iterative SDLC Model คือ มีการเก็บข้อมูลความต้องการของผู้ใช้ในตัวโปรแกรมครั้งแรก แล้วนำข้อมูลนั้นมาวิเคราะห์มาใช้ออกแบบและพัฒนาโปรแกรม แล้วพัฒนาซ้ำๆ เพื่อปรับปรุงความสามารถ ปรับปรุง Version ของโปรแกรมไปเรื่อยๆ

 

การพัฒนาระบบงานแบบวงจรชีวิต SDLC ว่ามีอะไรบ้าง

Iterative SDLC Model Schema

 

Agile SDLC Model

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

 

การพัฒนาระบบงานแบบวงจรชีวิต SDLC ว่ามีอะไรบ้าง

Agile SDLC Model Schema

 

Spiral SDLC Model

วิธีการของ Spiral SDLC Model คือ เป็นโมเดลรูปแบบเกลียว มุ่งเน้นด้านประเมินความเสี่ยงเพื่อลดความเสี่ยงของโครงการ โดยจะแบ่งโครงสร้างใหญ่ ออกเป็นโครงการย่อยๆ ซึ่งจะช่วยให้การปรับเปลี่ยนความต้องการ ทำได้ง่ายขึ้น และระหว่างขั้นตอนการออกแบบและพัฒนา จะมีการประเมินความเสี่ยงและความต่อเนื่องของโครงการอยู่เรื่อยๆ

วงจร SDLC ประกอบด้วยอะไรบ้าง

ตามทฤษฎีวงจรการพัฒนาระบบ (System Development life Cycle : SDLC) 7 ขั้นตอน 1. การค้นหาปัญหาขององค์กร (Problem Study) 2. การศึกษาความเหมาะสม (Feasibility Study) 3. การวิเคราะห์ระบบ (System Analysis) 4. การออกแบบระบบ (System Design) 5. การพัฒนา และการทดสอบระบบ (Development and Test) 6. การติดตั้งระบบ (System Implement) 7. ...

วงจร การ พัฒนา ระบบ SDLC คือ อะไร

วงจรการพัฒนาระบบ (System Development Life Cycle : SDLC) คือ การแบ่งขั้นตอนกระบวนการพัฒนาระบบงาน หรือระบบเทคโนโลยีสารสนเทศด้วย เพื่อช่วยแก้ปัญหาทางธุรกิจหรือตอบสนองความต้องการขององค์กรโดยระบบที่จะพัฒนานั้นอาจเป็นการพัฒนาระบบใหม่หรือการปรับปรุงระบบเดิมให้ดีขึ้นก็ได้ การพัฒนาระบบแบ่งออกเป็น 7 ขั้นตอน ดังนี้

ขั้นตอนสุดท้ายของวงจรการพัฒนาระบบคือข้อใด

7. การซ่อมบ ารุงระบบ (System Maintenance) เป็นขั้นตอนสุดท้ายของวงจรพัฒนา ระบบ (SDLC) หลังจากระบบใหม่ได้เริ่มด าเนินการผู้ใช้ระบบจะพบกับปัญหาที่เกิดขึ้น เนื่องจากความไม่คุ้นเคยกบระบบใหม่ และค้นหาวิธีการแก้ไขปัญหานั้นเพื่อให้ตรงกับ ความต้องการของผู้ใช้

การพัฒนาระบบงานมีกี่ขั้นตอนอะไรบ้าง

วงจรการพัฒนาระบบงาน (System Development Life Cycle : SDLC) ของระบบสารสนเทศ ได้มีการคิดค้นขึ้นมาโดยมีขึ้นตอนที่แตกต่างไปจากวงจรการพัฒนาระบบงานสำหรับระบบงานทั่วไป ตรงที่มีขั้นตอนในการพัฒนาระบบงานที่ละเอียดว่าถึง 7 ขั้นตอน ซึ่งนักวิเคราะห์ระบบต้องทำความเข้าใจว่าในแต่ละขั้นตอนว่าทำอะไรและทำอย่างไร สามารถแบ่งออกเป็นลำดับ ...