วันจันทร์ที่ 24 มกราคม พ.ศ. 2554

วงจรการพัฒนาระบบสารสนเทศ SDLC

การพัฒนาระบบสารสนเทศ
วัตถุประสงค์
     1. อธิบายแนวทางจัดหาระบบสารสนเทศเพื่อใช้งานภายในองค์กร
     2. สามารถประยุกต์ใช้วงจรการพัฒนาระบบ และแนวทางปฏิบัติ เพื่อพัฒนาระบบได้
      3. สามารถอธิบายและเลือกใช้ แนวทางในการพัฒนาระบบสารสนเทศ
     4. สามารถอธิบายหลักในการพัฒนาระบบสารสนเทศ
     5. สามารถประยุกต์ใช้การพัฒนาระบบโดยใช้วงจรการพัฒนาระบบ (SDLC)
     6. สามารถอธิบายเครื่องมือสนับสนุนการพัฒนาระบบ
แนวทางจัดหาระบบสารสนเทศเพื่อใช้งานภายในองค์กร
ในการจัดหาระบบสารสนเทศให้เกิดขึ้นภายในองค์กร จัดทำได้ 3 วิธีด้วยกัน
1. พัฒนาระบบสารสนเทศขึ้นเองโดยอาศัยเจ้าหน้าที่คอมพิวเตอร์ภายในองค์กรเป็นผู้พัฒนาระบบ
2. ว่าจ้างบริษัทที่ ปรึกษาจัดทำระบบให้
3. การซื้อซอฟต์แวร์สำเร็จมาใช้
วงจรชีวิตของการพัฒนาระบบ  (System Development Life Cycle : SDLC)
วงจรการพัฒนาระบบ คือ กระบวนในการพัฒนาระบบสารสนเทศ เพื่อแก้ปัญหาทางธุรกิจและตอบสนองความต้องการของผู้ใช้ได้ โดยภายในวงจรนั้นจะแบ่งกระบวนการพัฒนาออกเป็นกลุ่มงานหลัก ๆ  ดังนี้ ด้านการวางแผน (Planning Phase)  ด้านการวิเคราะห์ (Analysis Phase)  ด้านการออกแบบ (Design Phase)  ด้านการสร้างและพัฒนา (Implementation Phase)
วงจรการพัฒนาระบบ หรือ
 SDLC จะประกอบไปด้วย
                -
 การกำหนดปัญหา(Problem Definition) หรือ การเลือกสิ่งที่จะนำมาพัฒนาระบบงาน(Project Identification and Selection) นับว่าเป็นขั้นตอนแรกในวงจรของการพัฒนา ขั้นตอนนี้มักจะเกิดขึ้นอย่างเป็นทางการ จากการประชุมของฝ่ายบริหาร เพื่อที่จะค้นหาวิธีการทำงานที่มีประสิทธิภาพ และ มุ่งหวังที่จะใช้แทนวิธีการทำงานแบบเดิม ปรับปรุงวิธีการทำงาน หรือ เพื่อสร้างรูปแบบบริการแบบใหม่ เป็นต้น
                -
 การวิเคราะห์ปัญหา(Analysis) เมื่อผ่านขั้นตอนการการกำหนด หรือ เลือกโครงการที่จะทำการพัฒนาแล้ว ขั้นตอนต่อไปก็จะต้องนำเอาสิ่งที่ได้จากขั้นตอนแรกมาทำการวิเคราะห์ โดยนักวิเคราะห์ระบบจะต้องทำการ วิเคราะห์ระบบ ในขั้นตอนนี้เป็นขั้นตอนที่มีความสำคัญมาก และไม่ควรทำอย่างรีบเร่ง เนื่องจากโครงการพัฒนาจำนวนมากที่ประสบความล้มเหลวเพราะการวิเคราะห์ และออกแบบที่ไม่ถูกต้อง 
                -
 การออกแบบ(Design) จะเป็นการนำเอาสิ่งที่ได้จากการวิเคราะห์ มาออกแบบเป็นระบบงาน สำหรับการพัฒนาในขั้นตอนถัดไป เช่น การออกแบบ Form , Report, Dialoques, Interface, Files & Database, Program & Process design เป็นต้น
                -
 การพัฒนาระบบงาน(Development) หรือ การสร้างระบบงานจริง ขั้นตอนนี้จะเป็นขั้นตอนที่นำเอาสิ่งที่ได้จากการออกแบบระบบมาทำการCoding หรือ สร้างตัวระบบงานขึ้นมาใช้งานจริง ผู้ที่มีบทบาทสูงในขั้นตอนนี้คือ Programmer นั่นเอง
                -
 การทดสอบ(Testing) การทดสอบระบบจะเป็นการตรวจสอบความถูกต้องของระบบงานที่ถูกสร้างขึ้นมาว่าตรงตามกับความต้องการจริงๆ หรือไม่ การ Test จะมีด้วยกัน หลายระดับ กล่าวคือ 
1.
 การทดสอบในระดับ Module หรือ Unit test เป็นการทดสอบการทำงานโดยแยกเป็นส่วนย่อยๆ ในแต่ละ module 
2. การทดสอบ
 Integrate test จะนำเอา module ย่อยๆ มาทำการทดสอบการทำงานเป็นกระบวนการร่วมกัน 
3. System test
 การทดสอบโดยนำเอาโปรแกรมย่อยมาทดสอบการทำงานร่วมกันทั้งระบบ 
4. Acceptance test
 เป็นการทดสอบขั้นสุดท้าย โดย user (มี 2 ระดับ Alfa testing using simulated data, Beta testing using real data)

          - การติดตั้ง(Deployment) Direct installation, Pararell Installation, Single location installation, Phased installation
          -
 การบำรุงรักษา(Maintenance) Obtain Maintenance Request, Transforming Request into Change, Designing Change, Implementing Change



กลยุทธ์ในการพัฒนาระบบ มีหลายกลยุทธ์ ได้แก่
                1. SDLC ในรูปแบบ Waterfall

SDLC
 แบบ Wayerfall เป็นรูปแบบในการพัฒนาระบบงาน โดยแต่ละขั้นตอนเมื่อ
ดำเนินงานอยู่ ไม่สามารถย้อนกลับมายังขั้นตอนก่อนหน้าเพื่อแก้ไขข้อผิดพลาดได้
               
2. SDLC ในรูปแบบ Adapted Waterfall
SDLC
 แบบ Adapted Wayerfall เป็นรูปแบบในการพัฒนาระบบงานที่ปรับปรุงมาจากแบบ waterfall โดยในแต่ละขั้นตอนเมื่อดำเนินงานอยู่ สามารถย้อนกลับมายังขั้นตอนก่อนหน้าเพื่อแก้ไขข้อผิดพลาดหรือสามารถย้อนกลับข้ามขั้น โดยไม่จำเป็นต้องเป็นขั้นตอนที่ติดกันได้
                3. SDLC ในรูปแบบ Evolutionnary
SDLC
 แบบ Evolutionary มีแนวความคิดที่เกิดมาจากทฤษฎีวิวัฒนาการ โดยจะพัฒนาระบบงานจนเสร็จสิ้นไน Version แรกก่อน จากนั้นจึงพิจารณาถึงข้อดีและข้อเสีย แล้วจึงเริ่มกระบวนการพัฒนาระบบงานใหม่จนได้ระบบ ใน Version ที่ 2 และ Version ต่อไปจนกว่าจะได้ระบบที่สมบูรณ์ที่สุด ซึ่งต้องการการวางแผนกำหนดเพื่อจำนวน Version ตั้งแต่เริ่มโครงการพัฒนา 
หมายเหตุ การพัฒนาระบบใน
 Version ต่าง ๆ นั้น ไม่มีความสัมพันธ์กับระบบ ใน Version แรกแต่อย่างใด

                4. SDLC ในรูปแบบ Incremental
SDLC
 แบบ Incremental มีลักษณะคล้ายคลึงกับแบบ Evolutionary แต่มีข้อแตกต่างกันตรงที่ ตัวระบบเนื่องจากระบบที่เกิดขึ้นในการพัฒนาครั้งแรกนั้นจะยังไม่ใช่ระบบที่สมบูรณ์ แต่เป็นระบบส่วนแรกเท่านั้น ( จากตัวระบบทั้งหมด ) 
จนเมื่อมีการพัฒนาในขั้นตอนที่
 2 จึงได้ระบบในส่วนที่ 2 เพิ่มเติมเข้าไป และจะมีการเพิ่มส่วนอื่น ๆ เข้าไปอีก จนกลายเป็นระบบที่สมบูรณ์ที่สุด แต่อย่างไรก็ตาม ยังไม่สามารถแน่ใจได้ว่าระบบที่ได้ นั้นจะเป็นระบบที่สมบูรณ์ ดังนั้นในบางครั้ง SDLC ในรูปแบบ Evolutionary อาจจะมีบทบาทในการทำให้ระบบที่พัฒนาขึ้นโดยใช้การพัฒนาในรูปแบบอื่น ๆ มีความสมบูรณ์มากยิ่งขึ้นจนได้ Version ใหม่ที่สมบูรณ์ในที่สุด
               
5. SDLC ในรูปแบบ Spiral
SDLC
 แบบ Spiral มีลักษณะเป็นวงจรวิเคราะห์ - ออกแบบ  พัฒนา  ทดสอบ (Analysis – Design – Implementation – Testing ) และจะวนกลับมาในแนวทางเดิม เช่นนี้เรื่อยไป จนกระทั่งได้ระบบที่สมบูรณ์ 
การพัฒนาระบบงานด้วย
 SDLC ในรูปแบบนี้มีความยืดหยุ่นมากที่สุด เนื่องจาก
          1)
 การทำงานใน 1 วงรอบนั้น ไม่จำเป็นต้องได้ระบบ หรือส่วนของระบบที่แน่นอน 
          2)
 การทำ Analysis, Design, Implementation และ Testing ในแต่ละวงรอบนั้นจะสั้นหรือยาวเท่าใดก็ได้
          3)
 หากไม่มีความจำเป็นใด ๆ บางขั้นตอนอาจจะถูกข้ามไปก็ได้ 
เมื่อมีกระบวนการทางความคิดในการพัฒนาระบบแล้ว จะต้องมีวิธีการหรือแนวทางที่จะนำกระบวนการนั้นลงมาลงมือปฏิบัติเพื่อการพัฒนาระบบนั้นเป็นผลสำเร็จจนกลายเป็นระบบที่สามารถใช้งานได้อย่างมีประสิทธิภาพ วิธีดังกล่าวเรียกว่า
 “Methodology “

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

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

1 ความคิดเห็น:

  1. Live Dealer Casinos in Oklahoma | List of Top Live Casinos
    What is Live 케이 뱃 Dealer? — 188 벳 Live Dealer casinos offer a range 챗룰렛 of options in addition 가상 화폐 란 to live dealer games. It also offers a variety of slots and table 슬롯 games.

    ตอบลบ