การพัฒนาระบบสารสนเทศ(Information System Development)
วงจรการพัฒนาระบบ (System Development Life Cycle)
การพัฒนาระบบสารสนเทศเป็นกระบวนการในการสร้างระบบสารสนเทศขึ้นมาเพื่อใช้สำหรับแก้ปัญหา หรือสร้างมูลค่าเพิ่มให้กับธุรกิจ และด้วยระบบสารสนเทศในยุคปัจจุบัน นับวันจะทวีความซับซ้อนยิ่งขึ้น ดังนั้น โครงการพัฒนาระบบสารสนเทศจึงจำเป็นต้องได้รับการวางแผนที่ดี
การพัฒนาซอฟต์แวร์ ตามปกติแล้วจะประกอบไปด้วยกลุ่มกิจกรรม 3 ส่วนหลักๆ คือ การวิเคราะห์ (Analysis),การออกแบบ(Design) และการนำไปใช้(Implementation) ซึ่งกิจกรรมทั้งสามอย่างนี้สามารถใช้งานได้ดีกับโครงการซอฟต์แวร์ขนาดเล็ก ในขณะที่ซอฟต์แวร์ขนาดใหญ่ จำเป็นต้องช้แบบแผนการพัฒนาซอฟต์แวร์ตามแนวทางของ SDLC จนครบทุกกิจกรรม ซึ่งแสดงได้ดังรูปในสไลด์ที่ผ่านมา ดังนี้
ระยะที่ 1 : การวางแผนโครงการ (Project Planning Phase)
ระยะที่ 2 : การวิเคราะห์ (Analysis Phase)
ระยะที่ 3 : การออกแบบ (Design Phase)
ระยะที่ 4 : การนำไปใช้ (Implementation Phase)
ระยะที่ 5 : การบำรุงรักษา (Maintenance Phase)
กรรมวิธีการพัฒนาระบบ(System Development Methodology)
นักวิเคราะห์ระบบ สามารถนำเครื่องต่างๆ มาประยุกต์ใช้กับ การวิเคราะห์และออกแบบ ซึ่งเรียกว่า “Methodology” โดย Methodology นั้นเป็นแนวทางที่มีการนำโมเดล (Model), เครื่องมือ(Tools) และเทคนิค(Techniques) ต่างๆ มาใช้กับการพัฒนาซอฟต์แวร์ ซึ่งจัดเป็นแนวทางในการแก้ปัญหาด้วยวิธีการพัฒนาซอฟต์แวร์นั่นเอง
โมเดล (Models)
โมเดลที่ใช้ในการพัฒนาระบบ ประกอบด้วยการนำเสนอสิ่งที่เกี่ยวกับการอินพุต เอาต์พุต โปรเซส ข้อมูล ออบเจ็กต์ การโต้ตอบระหว่างออบเจ็กต์ สถานที่ตั้ง เครือข่าย และอุปกรณ์อื่นๆ ซึ่งโดยส่วนใหญ่แล้วโมเดล จะนำเสนอในรูปแบบของภาพ ซึ่งประกอบด้วยไดอะแกรม (Diagram) หรือแผนภูมิ (Chart) ตัวอย่างโมเดลต่างๆ
เครื่องมือ (Tools)
เครื่องมือที่ช่วยในการพัฒนาระบบ ประกอบด้วยซอฟต์แวร์หรือโปรแกรมที่ใช้สนับสนุนการใช้งานเหล่านี้สามารถนำมาใช้งานเพื่อสร้างแบบจำลองหรือโมเดลต่าง และรวมถึงส่วนประกอบอื่นๆ ตัวอย่างเครื่องมือต่างๆ ประกอบด้วย
-โปรแกรมจัดการโครงการ
-โปรแกรม/เครื่องมือช่วยวาด
-โปรแกรมประมวลคำ หรือโปรแกรมเอดิเตอร์
-เคสทูลส์ (CASE Tools)
-โปรแกรมจัดการฐานข้อมูล
-โปรแกรมแปลงไดอะแกรมเป็นรหัสคำสั่ง
เทคนิค (Techniques)
เทคนิคในการพัฒนาระบบ คือกลุ่มแนวทางที่ช่วยในการชี้นำ (Guidelines) เพื่อให้นักวิเคราะห์ระบบสามารถนำเทคนิคไปดำเนินกิจกรรมการพัฒนาระบบเพื่อให้เกิดความสมบูรณ์ยิ่งขึ้น ตัวอย่างเทคนิคต่างๆ ประกอบด้วย
-เทคนิคการบริหารโครงการ
-เทคนิคการสัมภาษณ์
-เทคนิคการสร้างแบบจำลองข้อมูล
วิธีการพัฒนาระบบ
1.วิธีการพัฒนาระบบแบบดั้งเดิม (The Traditional Approach)
2.วิธีการพัฒนาระบบเชิงวัตถุ (The Object-Oriented Approach)
วิธีการพัฒนาระบบแบบดั้งเดิม (TheTraditional Approach) มีเทคนิคหลากหลาย ซึ่งตั้งอยู่บนพื้นฐานของการพัฒนาระบบสารสนเทศด้วยวิธีโครงสร้างและการโปรแกรมแบบโมดูล โดยมักเรียกวิธีนี้ว่า การพัฒนาระบบเชิงโครงสร้าง (Structured System Development)
การโปรแกรมเชิงโครงสร้าง (Structured Programming)
การโปรแกรมเชิงโครงสร้างนอกจากช่วยให้การเขียนโปรแกรมมีคุณภาพแล้ว ยังมีส่วนช่วยให้โปรแกรมเมอร์สามารถอ่านโปรแกรมเพื่อทำการตรวจสอบและทำการแก้ไขปรับปรุงโปรแกรมได้ง่ายขึ้น โดยแนวทางในการโปรแกรมเชิงโครงสร้าง ประกอบด้วย
1.ชุดคำสั่งที่เรียงเป็นลำดับ (Sequence)
2.ชุดคำสั่งที่มีการตัดสินใจ (Decision)
3.ชุดคำสั่งที่มีการทำงานเป็นลูปหรือการทำซ้ำ (Repetition)
การออกแบบโครงสร้าง (Structured Design)
-โมดูลสามารถแสดงได้ในลักษณะแผนภาพด้วยการใช้แบบจำลองที่เรียกว่า ผังโครงสร้าง (Structure Chart)
ความเป็นหนึ่งเดียวสูง (Highly Cohesive)
-หมายถึงโมดูลนั้นมีความเป็นหนึ่งเดียว ในการทำงานให้สำเร็จได้ด้วยฟังก์ชันหน้าที่เดียว
ความสัมพันธ์ระหว่างโมดูลแบบหลวมๆ (Loosely Coupled)
-หมายถึงความสัมพันธ์ระหว่างโมดูลที่ร่วมทำงานกันนั้นมีความอิสระต่อกันสูงหรือมีความขึ้นต่อกันต่ำ
#การวิเคราะห์และออกแบบเชิงโครงสร้างสมัยใหม่(Modern Structured Analysis and Design)
#ความต้องการของระบบ (System Requirements) เป็นการกำหนดว่าระบบต้องทำอะไรในรายละเอียด
กระบวนการต่างๆ ในแผนภาพกระแสข้อมูลจะมีข้อมูลเกี่ยวข้อง แบบจำลองดังกล่าวเรียกว่า แผนภาพอีอาร์ (Entity-Relationship Diagram : DFD) ซึ่งแสดงได้ดังรูปต่อไปนี้ โดยเป็นแบบจำลองข้อมูลที่แสดงถึงความสัมพันธ์ระหว่างข้อมูลเป็นสำคัญ
วิธีการพัฒนาระบบเชิงวัตถุ (The Object-Oriented Approach)
- จัดเป็นวิธีใหม่ของการพัฒนาระบบ
วิศวกรรมซอฟต์แวร์ (Software Engineering)
กิจกรรมพื้นฐานของกระบวนการทางวิศวกรรมซอฟต์แวร์ไว้อยู่ 4 ส่วนหลักๆ คือ
1.ข้อกำหนดซอฟต์แวร์ (Software Specification)
2.การพัฒนาซอฟต์แวร์ (Software Development)
3.การตรวจสอบความถูกต้องของซอฟต์แวร์ (Software Validation)
4.วิวัฒนาการของซอฟต์แวร์ (Software Evolution)
คุณสมบัติของซอฟแวร์ที่มีคุณภาพ ประกอบด้วย
1.มีความถูกต้อง (Correctness)
2.มีความน่าเชื่อถือ (Reliability)
3.ใช้งานง่าย (User Friendliness)
4.บำรุงรักษาง่าย (Maintainability)
โมเดลการพัฒนาซอฟแวร์ (Software Development Process Models)
คือ แบบจำลองที่ใช้สำหรับเป็นตัวชี้นำถึงกิจกรรมหลัก (Key Activities) ในการพัฒนาซอฟแวร์ ด้วยการกำหนดรายละเอียดในแต่ละขั้นตอน เพื่อให้เกิดปัญหาในการพัฒนาน้อยที่สุด
Rapid Application Development (RAD)
RAD คือ การพัฒนาแอปพลิเคชันแบบรวดเร็ว ซึ่งมักใช้เครื่องมือสนับสนุนอย่าง CASE Tools ช่วยในการพัฒนา จึงส่งผลให้แอปพลิเคชันที่พัฒนาด้วยเทคนิค RAD นั้นใช้เวลาอันสั้น ด้วยการมุ่งเน้นด้านการลดต้นทุนและระยะเวลาในการพัฒนา
Joint Application Development (JAD)
1.การสนทนาร่วมกัน มุ่งเน้นความคล่องแคล่วและสะดวก ภายใต้กฎเกณฑ์ที่บังคับใช้
2.มีกลุ่มผู้ใช้ประมาณ 3-5 คนที่พร้อมเข้าร่วมประชุมเชิงปฏิบัติการ
3.นักพัฒนาที่มีความเชี่ยวชาญด้านเทคโนโลยีสารสนเทศประมาณ 2-3 คน
ประเภทของเคสทูลส์
ตามปกติแล้ว โดยทั่วไปเคสทูลส์จะแบ่งออกเป็น 2 ประเภทด้วยกัน คือ
1.อัปเปอร์เคสทูลส์ (Upper CASE Tools)
2.โลเวอร์เคสทูลส์ (Lower CASE Tools)
Microsoft Visio
โปรแกรมอย่าง Visio จัดเป็นโปรแกรมประเภทเครื่องมือช่วยวาด (Drawing Tool) โดยนักวิเคราะห์สามารถนำมาใช้ในการวาดแบบจำลองระบบ หรือไดอะแกรมต่างๆ และตกแต่งให้สวยงามตามความต้องการได้
Visible Analyst
โปรแกรม Visible Analyst นี้จัดเป็นเคสทูลส์ที่นิยมนำมาใช้เป็นเครื่องมือการพัฒนาระบบในรูปแบบดั้งเดิม (Traditional Model)
Rational Rose
เป็นเครื่องมือที่ใช้สำหรับวิธีการพัฒนาระบบเชิงวัตถุ (Object-Oriented Approach)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น