การพัฒนาระบบสารสนเทศ ความจำเป็นในการพัฒนาระบบสารสนเทศ      

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

การเปลี่ยนแปลงกระบวนการบริหารและการปฏิบัติงาน

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

การเปลี่ยนแปลงด้านเทคโนโลยี

       เทคโนโลยีราคาถูกลง เทคโนโลยีที่ใช้อยู่ในระบบสารสนเทศในปัจจุบันล้าสมัย ค่าใช้จ่ายในการบำรุงรักษาระบบมีราคาสูง จึงต้องรับเอาเทคโนโลยีใหม่ๆมาประยุกต์ใช้ซึ่งทำให้มีการเปลี่ยนแปลงระบบการ ทำงานที่มีอยู่เดิม

การปรับองค์การและสร้างความได้เปรียบในการแข่งขัน

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

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

กระบวนการทางธุรกิจ(Business Process)
       เกี่ยวข้องกับวัตถุประสงค์ เป้าหมาย และขั้นตอนการดำเนินธุรกิจขององค์การ ซึ่งเป็นสิ่งที่กำหนดแนวทางของระบบสารสนเทศที่จะพัฒนา

บุคลากร(People)
       การพัฒนาระบบให้ประสบความสำเร็จจะต้องได้รับความร่วมมือ และการทำงานที่ประสานร่วมมือกันอย่างดีจากบุคลากรที่เกี่ยวข้องกับการพัฒนาระบบ

วิธีการและเทคนิค(Methodology and Technique)
       วิธีการและเทคนิคต่างๆ ในการพัฒนาระบบสารสนเทศมีข้อดีและข้อจำกัดแตกต่างกัน การเลือกใช้วิธีการและเทคนิคที่เหมาะสมกับลักษณะของระบบเป็นสิ่งสำคัญ ช่วยให้สามารถพัฒนาระบบได้ภายในกรอบของเวลาที่กำหนดและตรงกับควมต้องการ

เทคโนโลยี(Technology)
       เนื่องจากเทคโนโลยีมีการเปลี่ยนแปลงอย่างรวดเร็ว จึงต้องมีการพิจารณาอย่างรอบคอบในการเลือกใช้เทคโนโลยีสารสนเทศให้มีความเหมาะสมกับลักษณะและขอบเขตของระบบสารสนเทศและงบประมาณที่กำหนด

งบประมาณ(Budget)

       การจัดเตรียมงบประมาณไว้รองรับล่วงหน้าอย่างเพียงพอและเหมาะสม จะช่วยให้การพัฒนาระบบเป็นไปอย่างต่อเนื่องและราบรื่น

ข้อมูลและโครงสร้างพื้นฐานภายในองค์การ (Infrastructure)

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

การบริหารโครงการ(Project Management)

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

ทีมงานพัฒนาระบบ
     

       การพัฒนาระบบสารสนเทศจะเกี่ยวข้องกับบุคคลที่มีหน้าที่และรับผิดชอบในกระบวนการพัฒนาระบบหลายกลุ่มด้วยกัน ดังนี้

คณะกรรมการ(Steering Committee)
       มีหน้าที่ในการกำกับดูแล กำหนดทิศทาง จัดลำดับความสำคัญของระบบงาน ตัดสินใจและวางแผนในการนำเทคโนโลยีสารสนเทศมาใช้ให้ครอบคลุมตามความต้องการของส่วนงานต่างๆ ในองค์การ

ผู้บริหารโครงการ(Project manager)
       มีหน้าที่ในการควบคุมการดำเนินโครงการ กำหนดงานและความสัมพันธ์ของงานต่างๆ มอบหมายงาน ให้คำปรึกษา แนะนำ ตลอดจนอำนวยความสะดวกในการทำงานให้กับสมาชิกในทีม ประสานงานและให้ข้อมูลข่าวสารกับกลุ่มผู้เกี่ยวข้องกับการพัฒนาระบบ จัดสรรและควบคุมการใช้ทรัพยากร รวมถึงการบริหารความเปลี่ยนแปลง เพื่อให้สามารถดำเนินโครงการได้อย่างราบรื่นและบรรลุตามวัตถุประสงค์

ผู้บริหารหน่วยงานด้านสารสนเทศ(Mis Manager)
       เป็นผู้ที่มีความรู้ความเข้าใจระบบงานขององค์การ และรับนโยบายจากผู้บริหารระดับสูงมาดำเนินการและประสานงานเกี่ยวกับโครงการ และแผนงานด้านระบบสารสนเทศ  และมีบทบาทในการอนุมัติให้ทำโครงการและมีความรับผิดชอบในการวางแนวทางวิชาชีพให้บุคลากรด้านสารสนเทศ รวมถึงให้การอบรมตามความเหมาะสม

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

- ทักษะด้านเทคนิค
       นักวิเคราะห์ระบบควรมีความรู้ความเข้าใจในด้านฮาร์ดแวร์ ซอฟต์แวร์ ฐานข้อมูล ระบบเครือข่าย และจะต้องปรับตัวให้ทันกับการเปลี่ยนแปลงของเทคโนโลยี เพื่อสามารถให้คำแนะนำด้านเทคนิคที่จำเป็นแก่ผู้เกี่ยวข้อง

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

- ทักษะด้านการบริหารจัดการ
       นักวิเคราะห์ระบบจะต้องบริหารโครงการและใช้ทรัพยากรอย่างมีประสิทธิภาพ บริหารความเสี่ยงที่จะเกิดขึ้นกับโครงการ พัฒนาระบบ และบริหารการเปลี่ยนแปลง โดยนักวิเคราะห์ระบบจะเป็นตัวแทนการเปลี่ยนแปลง(Change Agent) เพื่อไม่ให้เกิดการต่อต้านระบบใหม่และสามารถติดตั้งและนำระบบใหม่ไปใช้งานได้อย่างราบรื่น

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

ผู้ชำนาญทางด้านความเทคนิค
       การพัฒนาระบบสารสนเทศจะมีผู้บริหารหรือบุคลากรจากหน่วยงานต่างๆด้านสารสนเทศเข้าร่วมในกระบวนการพัฒนา อาทิ ผู้ชำนาญด้านระบบเครือข่ายและโทรคมนาคม  และสำหรับผู้ชำนาญด้านเทคนิคอื่นๆ ที่มักจะเข้าร่วมการพัฒนาระบบสารสนเทศแทบทุกโครงการ เช่น
       - ผู้บริหารฐานข้อมูล(Database Administrator : DBA)
              ผู้บริหารฐานข้อมูลหรือที่เรียกว่า DBA มีหน้าที่ในการออกำแบบฐานข้อมูลของระบบสารสนเทศ โดย DBA จะต้องมีความรู้ในระบบจัดการฐานข้อมูล สามารถออกแบบระบบฐานข้อมูลทั้งในระดับตรรกะและระดับกายภาพ และยังมีหน้าที่ในการดูแลการเข้าถึงและใช้งานฐานข้อมูล การบำรุงรักษา และการรักษาความปลอดภัย รวมถึงการฟื้นสภาพของฐานข้อมูล
       - โปรแกรมเมอร์(Programmer)
              มีหน้าที่ในการเขียนและทดสอบคำสั่งเพื่อให้คอมพิวเตอร์ทำงานที่นักวิเคราะห์ระบบได้ออกแบบไว้ และต้องติดตามพัฒนาการของภาษาที่ใช้ในการเขียนโปรแกรมเพื่อที่จะสามารถเลือกใช้ภาษาได้อย่างเหมาะสมกับระบบงานที่พัฒนา

ผู้ใช้และผู้จัดการทั่วไป(User and Manager)

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

หลักในการพัฒนาระบบสารสนเทศให้มีประสิทธิภาพ

       หลักการสำคัญที่ช่วยให้การพัฒนาระบบสารสนเทศมีประสิทธิภาพ มีดังนี้

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

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

3. กำหนดขั้นตอนหรือกิจกรรมในการพัฒนาระบบ
       การพัฒนาระบบสารสนเทศไม่ว่าจะใช้วิธีใดก็ตาม จะมีการกำหนดขั้นตอนหรือกิจกรรมที่จะต้องทำไว้อย่างชัดเจน ซึ่งจะช่วยลดความยุ่งยากในการพัฒนาระบบได้

4. กำหนดมาตรฐานในการพัฒนาระบบ
       ผู้พัฒนาระบบควรมีการกำหนดมาตรฐานระหว่างการพัฒนาระบบ ไม่ว่าจะเป็นในเรื่องของรูปแบบข้อมูล การเขียนโปรแกรม การเชื่อมโยงระบบบนเครือข่าย รวมถึงมาตรฐานของเอกสารต่างๆ ที่เกี่ยวข้องกับการพัฒนาระบบ ฯลฯ เพื่อให้มีระเบียบในการปฏิบัติและช่วยให้การบำรุงรักษาระบบเป็นไปด้วยความสะดวกและคล่องตัว

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

6. เตรียมความพร้อมหากจะต้องยกเลิกหรือทบทวนระบบสารสนเทศที่กำลังพัฒนา
       ในระหว่างการพัฒนาระบบอาจมีการทบทวนขอบเขตของระบบที่กำลังพัฒนาหรือยกเลิกการพัฒนา เนื่องจากมีการประเมินผลตอบแทนจากการลงทุนใหม่แล้วไม่คุ้มค่า หรือจำเป็นต้องลดขอบเขตการทำงานลงเมื่อมีข้อจำกัดด้านงบประมาณ

7. แตกระบบสารสนเทศที่จะพัฒนาเป็นระบบย่อย
       การแบ่งระบบออกเป็นระบบย่อยๆ(Subsystems) แล้วทำการแก้ปัญหาทีละส่วน จะช่วยให้ทีมงานพัฒนาระบบความสามารถแก้ปัญหาที่ซับซ้อนได้เร็วขึ้น การตรวจสอบข้อผิดพลาดสามารถทำอย่างสะดวก ทำให้กระบวนการแก้ปัญหามีประสิทธิภาพมากขึ้น

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

ขั้นตอนในการพัฒนาระบบสารสนเทศ

       องค์การส่วนมากมองเห็นประโยชน์จากการใช้ขั้นตอน ที่เรียกว่า วิธีการพัฒนาระบบ(System Development Methodology) สำหรับสร้างระบบสารสนเทศขององค์การ ซึ่งกระบวนการพัฒนาระบบมีวงจร(Life Cycle) ในการพัฒนาเปรียบได้เช่น เดียวกับวงจรของการผลิตสินค้าสู่ตลาด โดยวงจรการพัฒนาระบบสารสนเทศ เป็นแนวคิดที่มีการกำหนดรูปแบบในการพัฒนาระบบอย่างมีแบบแผน มีการแบ่งระยะในการพัฒนาระบบ ซึ่งแต่ละองค์การอาจแบ่งระยะและขั้นตอนในแต่ละระยะแตกต่างกัน ขึ้นอยู่กับความเหมาะสม แต่โดยภาพรวมแล้วจะมีเค้าโครงที่เหมือนกัน  วงจรการพัฒนาระบบสารสนเทศ(SDLC) แบ่งออกเป็น 6 ระยะ(Phases) ได้แก่
       - การกำหนดและเลือกโครงการ(System Identification and Selection)
       - การเริ่มต้นและวางแแผนโครงการ(System Initiation and Planning)
       - การวิเคราะห์ระบบ(System Analysis)
       - การออกแบบระบบ(System Design)
       - การพัฒนาและติดตั้งระบบ(System Implementation)
       - การบำรุงรักษาระบบ(System Maintenance)      

       กระบวนการพัฒนาระบบอาจมีการไหลย้อนกลับไปขั้นตอนก่อนหน้านี้ บางขั้นตอนอาจจะต้องการทำซ้ำ หรือทำในเวลาเดียวกับขั้นตอนอื่น ซึ่งขึ้นอยู่กับแนวทางการพัฒนาระบบที่เลือกให้ ทำให้การพัฒนาระบบมีรูปแบบต่างๆ เช่น

การพัฒนาระบบแบบน้ำตก(Waterfall Model)
        
         แต่ละขั้นตอนของการพัฒนาระบบจะเริ่มได้ก็ต่อเมื่อได้ทำขั้นตอนก่อนหน้านี้เสร็จเรียบร้อยแล้ว และจะไม่ย้อนกลับไปทำขั้นตอนก่อนหน้านี้อีก จึงเปรียบลักษณะการทำงานเสมือนน้ำตกที่ไหลจากที่สูงไปที่ต่ำ ไม่มีการไหลย้อนกลับทิศทางจากที่ต่ำไปที่สูง

การพัฒนาระบบน้ำตกที่ย้อนกลับขั้นตอนได้(Adapted Waterfall)

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

การพัฒนาระบบอย่างรวดเร็ว(Rapid Application Development)
      
      เป็นรูปแบบการพัฒนาที่มีการทำซ้ำบางขั้นตอน ในรูปเป็นการทำซ้ำในขั้นตอนการออกแบบและสร้างระบบจนกว่าระบบที่สร้างได้รับการยอมรับ ไม่เหมาะกับ Project ที่มีขนาดใหญ่ เหมาะกับ Project ที่มีขนาดเล็ก

การพัฒนาระบบในรูปบบขดลวด(Evolutionary Model SDLC)

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

วงจรการพัฒนาระบบ
  ประกอบด้วย 6 ขั้นตอน ดังนี้

Phase 1. การกำหนดและเลือกโครงการ(System Indentification and Selection)

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

Phase 2. การเริ่มต้นและวางแผนโครงการ

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

การศึกษาความเป็นไปได้(Feasibility Study)
      

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

- ความเป็นไปได้ด้านเทคนิค(Technical Feasibility)
       เป็นการศึกษาถึงความสามารถ(Capability) ความน่าเชื่อถือ(Reliability) และความพร้อมใช้งาน(Abailability)ของฮาร์ดแวร์ ซอฟแวร์ และระบบเครือข่ายสื่อสาร รวมถึงทักษะและความชำนาญของทีมพัฒนาเพื่อประเมินถึงความสามารถขององค์การในการสร้างหรือปรับปรุงระบบและลดความเสี่ยงทางด้านเทคนิค

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

- ความเป็นไปได้ด้านระยะเวลาการดำเนินงาน (Schedule Feasibility)

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

- ความเป็นไปได้ด้านการเงิน(Economical Feasibility)

       เป็นการวิเคราะห์ความคุ้มค่าของการลงทุนดำเนินโครงการ โดยทำการประมาณค่าใช้จ่ายเปรียบเทียบกับผลประโยชน์ที่คาดว่าจะได้รับ

การพิจารณาผลประโยชน์หรือผลตอบแทนที่จะได้รับจากโครงการ แบ่งเป็น 2 ประเภท

- ผลประโยชน์ที่สามารถวัดค่าได้(Tangible Benefits) 

       เป็นผลประโยชน์ที่สามารถประเมินเป็นตัวเงินได้ เช่น เพิ่มผลผลิตร้อยละ 5 ต่อปี  ลดต้นทุนการผลิตได้ 5 ล้านบาทต่อปี ลดจำนวนพนักงานธุรการได้ 5 คน เป็นต้น

- ผลประโยชน์ที่ไม่สามารถวัดค่าได้(Intangible Benefits)

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

การพิจารณาค่าใช้จ่ายและต้นทุนของโครงการ
แบ่งเป็น 2 ประเภท

- ต้นทุนที่สามารถวัดค่าได้(Tangible Costs)  เป็นต้นทุนที่สามารถประเมินเป็นตัวเงินได้ เช่น ค่าซื้อเครื่องคอมพิวเตอร์ ค่าซื้อซอฟต์แวร์ ค่าเงินเดือนพนักงาน เป็นต้น

- ต้นทุนที่ไม่สามารถวัดค่าได้(Intangible Cost) เป็นต้นทุนที่ไม่สามารถประเมินเป็นตัวเงินได้ชัดเจน เช่น พนักงานขาดขวัญและกำลังใจ การทำงานไม่มีประสิทธิภาพ  สูญเสียภาพลักษณ์ เป็นต้น      

       ต้นทุนยังสามารถถูกจำแนกออกเป็น ต้นทุนที่เกิดครั้งเดียว(One-time Costs) และต้นทุนที่เกิดซ้ำ(Recurring Costs)
       ต้นทุนที่เกิดครั้งเดียว(One-time Costs) คือ ต้นทุนที่เกิดขึ้นเมื่อเริ่มต้นโครงการและเริ่มใช้ระบบ เช่น ค่าฮาร์ดแวร์ใหม่ ค่าซอฟต์แวร์ เป็นต้น
       ต้นทุนที่เกิดซ้ำ(Recurring Costs) คือ ต้นทุนที่เกิดระหว่างการดำเนินระบบใหม่  เช่น ค่าบำรุงรักษาระบบ ค่าใช้จ่ายในการจัดหาเนื้อที่ในการจัดเป็บข้อมูลเพิ่มเติม เป็นต้น
       นอกจากนั้นยังสามารถจำแนกต้นทุนออกเป็น ต้นทุนคงที่(Fixed Costs) และต้นทุนผันแปร(Variable Costs)
       ต้นทุนคงที่(Fixed Costs) คือ ต้นทุนที่ไม่เปลี่ยนแปลงไปตามการผลิตหรือการใช้งาน เช่น เงินเดือนพนักงาน ค่าเช่าอาคารสำนักงานที่ต้องจ่ายเท่ากันทุกเดือน
       ต้นทุนผันแปร(Variable Costs) คือ ต้นทุนที่เปลี่ยนแปลงไปตามการผลิตหรือการใช้งาน เช่น ค่าใช้ไฟฟ้า ค่าน้ำประปา ค่าวัสดุสิ้นเปลืองที่มีการใช้งานไม่เท่ากันในแต่ละเดือน

การวิเคราะห์ความคุ้มค่าของการพัฒนาระบบสารสนเทศ      

       วิธีวิเคราะห์ความคุ้มค่าของการพัฒนาระบบสารสนเทศมีได้หลายวิธีด้วยกัน  เช่น

1. วิธีมูลค่าปัจจุบันสุทธิ(Net Present Value Method : NPV)
       เป็นการพิจารณาต้นทุนและผลตอบแทนจากการลงทุนโดยคำนึงถึงค่าของเงินที่สัมพันธ์กับเวลา(Time Value of Money) โดย
       NPV = มูลค่าปัจจุบันของผลตอบแทนที่คาดว่าจะได้รับในอนาคต - มูลค่าปัจจบันของเงินจ่ายลงทุน
       เกณฑ์ในการพิจารณา : จะยอมรับดำเนินตามโครงการที่ให้มูลค่าปัจจุบันสุทธิ(NPV) เป็นบวกหรือมีค่ามากกว่าศูนย์

2. วิธีดัชนีผลกำไร(Profitability Index Method : PI)
       คืออัตราส่วนระหว่างมูลค่าปัจจุบันของผลตอบแทนที่คาดว่าจะได้รับในอนาคต กับมูลค่าปัจจุบันของเงินลงทุน
       PI = มูลค่าปัจจับันของผลตอบแทนในอนาคต/มูลค่าปัจจุบันของเงินลงทุน
       เกณฑ์ในการพิจารณา : จะยอมรับดำเนินตามโครงการที่ให้ค่า PI มากกว่า 1             

              การวัดโครงการโดยวิธี PI และ NPV จะให้คำตอบในการรับหรือปฏิเสธโครงการในลักษณะเดียวกัน แต่จะแตกต่างกันที่วิธี NPV จะแสดงให้เห็นถึงมูลค่าปัจจุบันสุทธิที่คาดว่าจะได้จากโครงการ แต่วิธี PI จะแสดงให้เห็นถึงความสามารถในการทำกำไรเท่านั้น

3. อัตราผลตอบแทนจากการลงทุน(Return On Investment : ROI)
       เป็นการวัดผลตอบแทนจากการลงทุนโดยพิจารณาจากอัตราส่วนระหว่างมูลค่าปัจจุบันสุทธิของผลตอบแทนและต้นทุนกับมูลค่าปัจจุบันสุทธิของต้นทุน
       ROI = (NPV ของผลประโยชน์ทั้งหมด - NPV ของต้นทุนทั้งหมด)/ NPV ของต้นทุนทั้งหมด
       เกณฑ์ในการพิจารณา : จะยอมรับดำเนินตามโครงการที่ให้ค่า ROI มากกว่าค่าที่องค์การกำหนด

4. การวิเคราะห์จุดคุ้มทุน(Break-Even Point Analysis)
       เป็นการวิเคราะห์ถึงเวลาที่ทำให้ต้นทุนและผลตอบแทนมีค่าเท่ากัน ซึ่งมีสูตรดังนี้
       สัดส่วนของจุดคุ้มทุน = (กระแสเงินสดรับต่อปี - กระแสเงินสดสะสม) / กระแสเงินสดรับต่อปี
       โดยที่ กระแสเงินสดรับต่อปีคำนวณได้จาก
              กระแสเงินสดรับต่อปี = PV ของผลประโยชน์ – PV ของต้นทุน
       เกณฑ์ในการพิจารณา : จะยอมรับดำเนินตามโครงการที่ให้ค่าไม่เกินเวลาที่องค์การกำหนด

Phase 3. การวิเคราะห์ระบบ(System Analysis)

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

       - Fact-Finding Technique เป็นกระบวนการในการเก็บรวบรวมข้อมูล ข้อเท็จจริงและสารสนเทศของระบบแบบดั้งเดิมที่ยังนิยมใช้กันอยู่ เช่น การศึกษาจากเอกสาร แบบฟอร์ม และฐานข้อมูลที่ใช้งานอยู่ในปัจจุบัน

       - Joint Application Design(JAD) เป็นการประชุมร่วมกันของผู้ที่เกี่ยวข้องกับการพัฒนาระบบ อาทิ ผู้ใช้ระบบ นักวิเคราะห์ระบบ ผู้บริการขององค์การ และทีมงานด้านสารนเทศ รวมถึงผู้ดำเนินการประชุม(JAD Session Leader) ผู้จดบันทึกและสรุปรายละเอียดในการประชุม(Scribe)  และผู้ที่ให้การสนับสนุนในการพัฒนาระบบ(Sponsor) โดยทั่วไประหว่างการประชุม JAD อาจจะมีการใช้เครื่องมือต่างๆ เพื่อช่วยให้การประชุมดำเนินไปได้อย่างรวดเร็ว
 
Phase 4. การออกแบบระบบ(System Design)
      

       การออกแบบมีวัตถุประสงค์เพื่อออกแบบระบบให้เข้ากับความต้องการของระบบใหม่ตามที่ได้มีการวิเคราะห์ไว้ โดยนักวิเคราะห์ระบบจะต้องออกแบบส่วนนำข้อมูลเข้าสู่ระบบ(Input) ผลลัพธ์ที่ได้จากระบบฐานข้อมูล(Output) โปรแกรม(Programs)ระบบปฏิบัติการ กระบวนการทำงาน(Procedures) เครือข่าย(Network) และออกแบบวิธีการที่จะทำให้ผู้ใช้มั่นใจว่า ระบบมีความถูกต้อง เชื่อถือได้และปลอดภัย  
       โดยทั่วไปการออกแบบแบ่งออกเป็น 2 ส่วน คือ การออกแบบเชิงตรรกะ(Logical Design) และการออกแบบเชิงกายภาพ((Physical Design)

       - การออกแบบเชิงตรรกะ(Logical Design) เป็นการออกแบบโครงสร้างของระบบ กำหนดว่าระบบจะทำงานอะไรบ้าง โดยยังไม่คำนึงถึงลักษณะและรายละเอียดของอุปกรณ์ที่จะนำมาใช้       

       - การออกแบบเชิงกายภาพ((Physical Design) เป็นการออกแบบรายละเอียดในการทำงานหรือกำหนดว่าระบบจะทำงานอย่างไร โดยคำนึงถึงเทคโนโลยีและลักษณะของอุปกรณ์ที่นำมาใช้ โปรแกรมภาษา ระบบปฏิบัติการ ฐานข้อมูลในระดับกายภาพ ระบบเครือข่ายและระบบรักษาความปลอดภัย

Phase 5. การดำเนินการระบบ(System Implementation)

       การดำเนินการระบบมีวัตถุประสงค์เพื่อสร้างระบบและติดตั้งระบบ ซึ่งจะครอบคลุมกิจกรรมดังต่อไปนี้       

- จัดซื้อหรือจัดหาฮาร์แวร์(Hardware) และซอฟต์แวร์(Software) ที่เกี่ยวข้อง เช่น คอมพิวเตอร์ เครื่องพิม์ อุปกรณ์ต่อพ่วงอื่นๆ รวมทั้งซอฟต์แวร์ระบบปฏิบัติการ

- เขียนโปรแกรมโดยโปรแกรมเมอร์(Coding) หรือจัดหาโปรแกรมสำเร็จรูปมาใช้งาน
       เป็นการนำข้อกำหนดที่ได้ในขั้นตอนการออกแบบมาแปลงเป็นชุดคำสั่ง ซึ่งองค์การสามารถจ้างโปรแกรมเมอร์ภายนอกหรือจ้างบริษัทอื่นทำการเขียนโปรแกรมให้ได้ ในกรณีที่มีโปรแกรมที่ตรงหรือใกล้เคียงกับความต้องการอยู่แล้วในท้องตลาด องค์การก็ไม่จำเป็นต้องทำการเขียนโปรแกรมขึ้นใช้งานเอง สามารถจัดหาโปรแกรมสำเร็จรูปนั้นมาใช้งาน

- ทำการทดสอบ
       ก่อนนำระบบไปใช้งานจะต้องทำการทดสอบในทุกๆด้าน เพื่อให้แน่ใจว่าระบบที่พัฒนามานั้นสามารถทำงานได้อย่างถูกต้องตามต้องการ โดยการทดสอบดังนี้
       •  Unit Testing: การทดสอบแต่ละส่วนว่ามีความถูกต้อง สมบูรณ์หรือไม่ และจะต้องตรวจสอบการทำงานของแต่ละโปรแกรมหรือแต่ละโมดูล(Module)ด้วย
       • Integration Testing: การทดสอบรวมโดยนำโปรแกรมที่สามารถทำงานโดยลำพังได้อย่างถูกต้องแล้วมาทดสอบการทำงานของโปรแกรมทั้งหมดรวมกัน
       • System Testing: การทดสอบระบบทั้งระบบเป็นการทดสอบการทำงานของระบบในภาพรวม ประเมินระยะเวลาในการทำงาน ความสามารถในการจัดการกับปริมาณงานหรือการตอบสนองในกรณีที่มีผู้ใช้ระบบจำนวนมาก รวมถึงความสามารถในการฟื้นสภาพหากระบบล้มเหลว จึงควรจัดสภาวะแวดล้อมของการทดสอบให้เหมือนการทำงานจริงมากที่สุด
       • Acceptance Testing: การทดสอบการยอมรับระบบเพื่อให้เกิดความมั่นใจถึงความพร้อมในการนำระบบไปใช้งาน เมื่อผู้บริหารพอใจแล้ว ระบบก็จะได้รับการยอรับอย่างเป็นทางการ พร้อมที่จะติดตั้งใช้งานต่อไป

- การจัดทำเอกสารระบบ(Documentation) 

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

- การถ่ายโอนระบบงาน(System Conversion)

       เป็นการเปลี่ยนจากระบบงานเก่าเป็นระบบงานใหม่ โดยสามารถทำได้ 4 แนวทาง คือ
       1. การถ่ายโอนแบบขนาน(Parallel Conversion)  จะติดตั้งใช้งานระบบใหม่ควบคู่กับระบบเก่าระยะหนึ่งจนแน่ใจว่า ระบบใหม่สามารถทำงานได้อย่างถูกต้องจึงยกเลิกระบบเก่า วิธีนี้มีความปลอดภัยสูง แต่ค่าใช้จ่ายจะสูงและอาจใช้ทรัพยากรมากกว่าวิธีอื่น
       2. การถ่านโอนแบบทันที(Direct Cutover Conversion)  จะติดตั้งใช้ระบบใหม่และยกเลิกระบบเก่าไปพร้อมกัน วิธีนี้จะมีค่าใช้จ่ายต่ำสุด แต่จะมีความเสี่ยงสูงมากที่สุดหากระบบใหม่ขัดข้องหรือล้มเหลวและอาจมีความเสียหายเกิดขึ้นในช่วงที่ไม่มีระบบใช้งาน ดังนั้น ต้องทำการทดสอบระบบอย่างละเอียดก่อนใช้งาน
       3. การใช้ระบบทดลอง(Pilot Study)  เป็นการนำระบบใหม่มาใช้ทันทีแต่นำมาใช้เฉพาะส่วนงานที่กำหนดเท่านั้น เมื่อใช้งานได้ดี จึงนำไปใช้ส่วนอื่นทั่วองค์การต่อไป
       4. การถ่ายโอนทีละขั้น(Phase Conersion)  เป็นการเปลี่ยนแบบค่อยเป็นค่อยไป คือ เปลี่ยนงานบางส่วนจากระบบเดิมมาใช้ระบบใหม่ เมื่อเห็นว่าทำงานได้อย่างถูกต้องตามต้องการ จึงเพิ่มการทำงานส่วนอื่นเข้าไป ทีละกลุ่มงานจนครบทั้งระบบ วิธีนี้จะใช้เวลานานกว่าวิธีอื่น

- ฝึกอบรมผู้ใช้ระบบ(Training) ก่อนเริ่มใช้งานระบบควรทำการฝึกอบรมผู้ใช่เพื่อให้ผู้ใช้มีความรู้ความเข้าใจ ขั้นตอนการทำงานและช่วยให้สามารถใช้ระบบเป็นและใช้ได้อย่างมีประสิทธิภาพ
       ผลลัพธ์ของระยะนี้คือ ระบบใหม่ที่พร้อมจะใช้งาน รายงานประกอบระบบและคู่มือการใช้ระบบ ซึ่งควรมีการประเมินหลังการติดตั้งระบบด้วย          

Phase 6. การบำรุงรักษาระบบ(System Maintenance)      

       การบำรุงรักษาระบบเป็นขั้นตอนการดูแลระบบเพื่อให้ระบบมีประสิทธิภาพในการทำงาน การบำรุงรักษาระบบอาจจะอยู่ในรูปของการแก้ไขข้อผิดพลาดของโปรแกรม การปรับปรุงหรือแก้ไขโปรแกรมให้รองรับกับความต้องการใหม่ๆ ที่เพิ่มขึ้นของผู้ใช้ระบบหรือเพื่อเพิ่มประสิทธิภาพให้กับระบบ
       การบำรุงรักษาระบบสามารถแบ่งได้เป็น 4 ประเภท
       1. Corrective Maintenance  เป็นการบำรุงรักษาระบบเพื่อแก้ไขข้อผิดพลาดให้ถูกต้อง
       2. Adaptive Maintenance  เป็นการบำรุงรักษาระบบเพื่อให้สามารถรองรับความต้องการที่เพิ่มขึ้น เนื่องจากเงื่อนไขในการดำเนินธุรกิจหรือเทคโนโลยีต่างๆ มีการเปลี่ยนแปลง
       3. Perfective Maintenance  เป็นการบำรุงรักษาระบบเพื่อให้ระบบทำงานได้อย่างมีประสิทธิภาพเพิ่มขึ้น
       4. Preventive Maintenance  เป็นการบำรุงรักษาระบบเพื่อป้องกันข้อผิดพลาดที่อาจเกิดขึ้นในอนาคต
       การบำรุงรักษาระบบสามารถเริ่มได้ทันทีที่มีการนำระบบไปใช้ ซึ่งระยะของการบำรุงรักษานั้นจะมีระยะเวลายาวนานเท่าไหร่นั้นขึ้นอยู่กับหลายปัจจัย ซึ่งทำให้องค์การจำเป็นต้องเปลี่ยนแปลงรูปแบบการดำเนินการ ทำให้ต้องปรับปรุงแก้ไขระบบเดิมอย่างมาก เนื่องจากระบบงานเดิมที่ใช้อยู่ไม่สามารถตอบสนองความต้องการของผู้ใช้ระบบได้ต่อไป จึงมีการนำเสนอโครงการด้านสารสนเทศใหม่เพื่อทดแทนระบบเดิม และเป็นการวนกลับไปเริ่มต้นวงจรการพัฒนาระบบ

วิธีการพัฒนาระบบสารสนเทศ


1. การพัฒนาระบบงานแบบดั้งเดิม(Traditional SDLC Methodology)
      

       วีธีนี้เป็นวิธีที่เก่าที่สุดและนิยมเรียกย่อๆว่า SDLC และยังเป็นวิธีที่ใช้กันอยู่ซึ่งมักจะถูกนำมาใช้กับการพัฒนาระบบสารสนเทศที่มีขนาดกลางจนถึงขนาดใหญ่ที่มีความซับซ้อน การพัฒนาระบบโดยวิธีนี้มีการแบ่งแยกบทบาทระหว่างฝ่ายผู้ใช้กับฝ่ายผู้พัฒนาออกอย่างชัดเจน
       เนื่องจากเป็นวิธีการดำเนินงานที่มีโครงสร้างและเป็นขั้นตอนจึงเป็นวิธีที่ยังใช้ได้สำหรับการพัฒนาระบบประมวลผลธุรกรรม(Transaction Processing Systems : TPS) ขนาดใหญ่ที่สามารถกำหนดความต้องการไว้อย่างละเอียดและมีรูปแบบที่ซับซ้อน และยังสามารถนำไปใช้ในการพัฒนาระบบที่มีการใช้เทคนิคซับซ้อนที่มีการกำหนดคุณลักษณะต่างๆ ไว้คงที่ล่วงหน้า มีการวิเคราะห์ความต้องการอย่างมีแบบแผนเป็นทางการ และมีการควบคุมกระบวนการในการสร้างระบบอย่างเข้มงวดรัดกุม
       วิธีนี้จะใช้เวลานาน มีค่าใช้จ่ายสูงและขาดความยืดหยุ่นต่อการเปลี่ยนแปลงความต้องการที่อาจจะเกิดขึ้น จึงไม่เหมาะกับระบบที่ไม่สามารถระบุความต้องการสารสนเทศได้ล่วงหน้าหรือความต้องการที่มีการเปลี่ยนแปลงตลอดเวลา

2. การสร้างต้นแบบ(Prototyping)      

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

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

3. การพัฒนาระบบโดยผู้ใช้(End-user Development)              

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

4. การใช้บริการจากแหล่งภายนอก(Outsourcing)

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

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

5. การใช้ซอฟแวร์สำหรับรูปประยุกต์(Application Software Package)

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

การเลือกซอฟแวร์สำเร็จรูปประยุกต์  มีเกณฑ์การประเมินที่สำคัญ ได้แก่
       - ความสามารถในการทำงาน
       - ความยืดหยุ่นต่อการปรับเปลี่ยนโปรแกรม
       - ความง่ายในการใช้ง่าย
       - ฮาร์ดแวร์และซอฟต์แวร์ระบบปฏบัติการที่ต้องการ
       - ความเข้ากันได้(Compatible)กับฮาร์ดแวร์และซอฟต์แวร์ที่องค์การมีอยู่
       - ระบบจัดการฐานข้อมูล
       - การติดตั้ง
       - การบำรุงรักษา
       - เอกสารประกอบ
       - คุณภาพของผู้ขาย
       - ค่าใช้จ่ายอื่นๆ

การพัฒนาระบบงานแบบออบเจ็กต์(Object-Oriented Methodology)
      

       การพัฒนาระบบออบเจ็กต์จะพิจารณาระบบว่า ประกอบด้วยกลุ่มของวัตถุ(Class of Objects) ซึ่งทำงานร่วมกัน มีการจัดกลุ่มของข้อมูลและพฤติกรรมหรือฟังก์ชันที่กระทำกับข้อมูลนั้นเป็นกลุ่มๆ ในรูปของออบเจ็กต์ เนื่องจากออบเจ็กต์มีคุณสมบัติในการกลับมาใช้ใหม่ได้(Reusability) จึงใช้เวลาในการพัฒนาน้อยกว่าวิธีอื่น
       UML เป็นภาษามาตรฐานสำหรับการจำลองระบบที่ได้รับการยอมรับอย่างกว้างขวาง ผู้พัฒนาระบบสามารถใช้ไดอะแกรมต่างๆ ของ UML เพื่อจำลองภาพ(Visualizing) ของระบบด้วยมุมมองต่างๆ เช่น จำลองภาพการกำหนดความต้องการ(Specifying) การดำเนินการสร้าง (Construction) และการบันทึก(Document) ผลงานตามขั้นตอนต่างๆ ในการพัฒนาระบบ
การพัฒนาระบบงานแบบออบเจ็กต์มีข้อดี ดังนี้
       - ช่วยลดความซับซ้อนในการพัฒนาระบบ
       - สามารถนำโปรแกรมที่พัฒนาแล้วกลับมาใช้ใหม่ได้(Reusability)
       - ช่วยให้การบำรุงรักษาระบบทำได้ง่ายขึ้น

การพัฒนาระบบงานประยุกต์แบบรวดเร็ว(Rapid Application Development) 
  

       การพัฒนาระบบงานประยุกต์แบบรวดเร็ว(Rapid Application Development) หรือเรียกย่อๆ ว่า RAD เป็นวงจรการพัฒนาระบบที่ใช้ระยะเวลาในการพัฒนารวดเร็วกว่าและคุณภาพดีกว่าวิธีพัฒนาระบบงานแบบดั้งเดิม โดยมีการนำเครื่องมือซอฟต์แวร์มาช่วยในการพัฒนาระบบ
    ขั้นตอนการพัฒนาระบบงานประยุกต์แบบรวดเร็วมี 4 ขั้นตอน ดังนี้

1. การกำหนดความต้องการ ผู้ใช้และผู้บริหารที่เกี่ยวข้องจะทำการกำหนดว่าระบบควรจะมีหน้าที่และมีงานใดบ้าง และสามารถนำคอมพิวเตอร์มาช่วยในการแก้ปัญหาได้อย่างไร การกำหนดความต้องการนี้อาจใช้วิธีสัมนาเชิงปฏิบัติการ(Workshop)

2. การออกแบบโดยผู้ใช้ ผู้ใช้จะมีส่วนร่วมอย่างมากในการออกแบบ โดยอาจใช้สัมนาเชิงปฏิบัติการเช่นเดียวกับในขั้นการกำหนดความต้องการ และมีเครื่องมือซอฟต์แวร์มาช่วยในการออกแบบระบบด้วย

3. การสร้างระบบ  โดยใช้เครื่องมือซอฟต์แวร์มาใช่วยในการสร้งระบบ เช่น สร้างส่วนติดต่อกับผู้ใช้แบบบกราฟิก สร้างโปรแกรมที่สามารถนำไปใช้งานไอ้รวดเร็ว โดยจะทำการทดสอบไปด้วย

4. การเปลี่ยนระบบ เป็นการเปลี่ยนจากระบบเดิมมาเป็ฯระบบใหม่ซึ่งจะมีขั้นตอนเหมือนกับวิธีพัฒนาระบบงานแบบดั้งเดิม เช่น การทดสอบ การฝึกอบรมผู้ใช้ และการใช้ระบบใหม่

เครื่องมือสำหรับ RAD
       การพัฒนาระบบแบบ RAD จำเป็นต้องอาศัยเครื่องมือต่างๆ มาช่วย เครื่องมือที่สำคัญ มีดังนี้

- ภาษารุ่นที่ 4(4GL) เป็นภาษาระดับสูง เช่น SQL ซึ่งเป็นภาษาสอบถามที่มีใช้มากในโปรแกรมจัดการฐานข้อมูล ตัวอย่างของภาษา SQL เพื่อค้นหาข้อมูลของพนักงานที่ทำงานน้อยกว่า 5 ปี และมีเงินเดือนมากกว่า 30,000 บาทขึ้นไป
SELECT NAME FROM EMPLOYEE WHERE WORKYEAR < 5 AND SALARY > 30000
    นอกจาก SQL แล้ว ยังมีภาษา 4GL อื่นๆ ที่ช่วยในการสร้างรายงาน (Report Generator) ซึ่งแล้วแต่เครื่องมือซอฟต์แวร์ที่ใช้

- ภาษาเคส(CASE Tools) เป็นซอฟต์แวร์ที่ช่วยในการพัฒนาระบบและสนับสนุนการทำงานใตแต่ละขั้นตอนของการพัฒนาระบบ อำนวยความสะดวกในการสร้างเอกสารหรือแผนภาพต่างๆ อย่างมีคุณภาพ

- เครื่องมือสร้างต้นแบบ(Prototype Tool) เป็นเครื่องมือที่ช่วยให้สามารถสร้างต้นแบบได้อย่างรวดเร็วซึ่งจะมีประโยชน์อย่างมากในขั้นตอนของการกำหนดความต้องการและการสร้างระบบ

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

ปัจจัยที่มีผลต่อการพัฒนาระบบสารสนเทศให้ประสบความสำเร็จ

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

Comment

Comment:

Tweet