กระบวนแก้ปัญหาด้วยเทคโนโลยีสารสนเทศ
การแก้ปัญหามีหลายวิธี
ขึ้นกับชนิดของาน วิธีการแก้ปัญหาอย่างหนึ่งอาจแก้ปัญหาอีกอย่างหนึ่งไม่ได้
และการแก้ปัญหาอาจจำเป็นต้องใช้เทคโนโลยีสารสนเทศหรือไม่ก็ได้ ดังนั้น
จึงควรยึดหลักการแก้ปัญหาอย่างเป็นระบบ เพื่อไม่ให้เสียเวลา หลงทาง และสับสน
วิธีการแก้ปัญหาแต่ละวิธีมีความเหมาะสมกับงานแตกต่างกันไป
1.1
การแก้ปัญหาด้วยกระบวนการทางเทคโนโลยีสารสนเทศ
การแก้ปัญหาที่ซับซ้อนด้วยวิธีการต่างๆ
ที่กล่าวมาแล้ว ส่วนมากจำเป็นต้องใช้เทคโนโลยีสารสนเทศเข้าช่วยเพื่อเพิ่มความรวดเร็ว
ถูกต้อง และสามารถทำซ้ำได้ง่าย ในกระบวนการทางเทคโนโลยีสารสนเทศเข้าช่วยแก้ปัญหา
จำเป็นต้องปรับรูปแบบวิธีการทำงานให้เหมาะสมกับการใช้เทคโนโลยีสารสนเทศ
วิธีการแก้ปัญหาด้วยกระบวนการทางเทคโนโลยีสารสนเทศ
เป็นวิธีคล้ายกับการแก้ปัญกาทางวิศวกรรมมาก
แต่ในการนำระบบคอมพิวเตอร์ไปใช้ในการแก้ปัญหา หรือเพิ่มประสิทธิภาพในการทำงานใดๆ
ก็ตาม จะต้องมีการวิเคราะห์ปัญหาและศึกษาความเป็นไปได้ให้รอบคอบเสียก่อน
ทั้งนี้เนื่องจากคอมพิวเตอร์ไม่ใช้เครื่องมือวิเศษที่จะแก้ปัญหได้ทุกเรื่อง
นอกจากนี้ยังจะต้องมีการศึกษาถึงความคุ้มค่าในการลงทุน
เพื่อไม่ให้เป็นการลงทุนที่เสียเปล่า ต้องเลือกวิธีการแก้ปัญหาให้เหมาะสมกับงาน
จัดหาเครื่องมือและเทคโนโลยีที่ไม่เกินความจำเป็น
การแก้ปัญหาด้วยกระบวนการทางเทคโนโลยีสารสนเทศ
เหมาะกับระบบงานที่ต้องทำงานอย่างใดอย่างหนึ่งซึ่งซากและมีปริมาณงานมากหรืองานที่ต้องการความรวดเร็วในการคำนวณเกินกว่าคนธรรมดาจะทำได้
วิธีการโดยทั้วไปคือ ปรับเปลี่ยนวิธีการหรือระบบการทำงานแบบเดิม
มาใช้ระบบงานที่มีเครื่องคอมพิวเตอร์ช่วยทำงานเป็นบางส่วน หรือทั้งหมด
เท่าที่สามารถจะทำแทนคนได้ ดังนั้น การแก้ปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
จึงต้องมีการสร้างระบบงานคอมพิวเตอร์ขึ้นมาช่วยทำงานอย่างหลีกเลี่ยงไม่ได้
วิธีการโดยทั้วไป เราอาจไม่ต้องสร้างระบบงานทั้งหมดขึ้นใหม่
แต่พัฒนาระบบงานเดิมให้เป็นระบบงานที่ทำงานโดยคอมพิวเตอร์นิยมเรียกกันว่า
การพัฒนาระบบงานคอมพิวเตอร์
1.1.1
ขั้นตอนการพัฒนาระบบงานคอมพิวเตอร์ตามหลักวิชาว่าด้วยการวิเคราะห์และออกแบบระบบงาน
( System analysis and design ) มีการจัดขั้นตอนการพัฒนาระบบงานคอมพิวเตอร์และสารสนเทศดังนี้
1. วิเคราะห์ระบบงานหรือปัญหา
( System or problem analysis ) รวมถึงรายละเอียดข้อมูลที่ต้องใช้
โดยการศึกษาระบบงานเดิมอย่างละเอียด
2. กำหนดรายละเอียดของความต้องการของผู้ใช้ระบบงาน
( Require-ments specification )
3. ออกแบบขั้นตอนวิธีการทำงานของระบบใหม่
4. ตรวจสอบขั้นตอนวิธีให้ได้ผลตามความต้องการ
5. ออกแบบโปรแกรม
( Program design )
6.เขียนชุดคำสั่ง
( Coding )
7. ทดสอบโปรแกรม
( Testing ) และหาที่ผิดพลาด ( Debuugging )
8. นำโปรแกรมและระบบงานไปใช้งานจริง
( Implementation oroperation )
9. บำรุงรักษา
ติดตามผล แก้ไขปรับปรุง ( Software maintenance and improvement ) เพื่อให้ทันสมัยใช้ได้ตลอดไป
จะเห็นว่าการพัฒนาระบบสารสนเทศ จำเป็นจะต้องรู้ขั้นตอนวิธีการทำงานของระบบเดิม
ตามด้วยการหาวิธีการแก้ปัญหาโดยใช้ระบบคอมพิวเตอร์และโปรแกรม
จากนั้นจึงออกแบบวิธีการทำงานในระบบใหม่ให้ระเอียดซึ่งจะต้องมีการสร้างโปรแกรมคอมพิวเตอร์ขึ้นมาช่วยทำงานบางส่วน
หรือทั้งหมด
1.1.2
ขั้นตอนการพัฒนาระบบงานโดยการจัดซื้อโปรแกรมสำเร็จรูป
ในกรณีที่เราไม่ได้พัฒนาโปรแกรมเอง แต่เป็นการจัดซื้อโปรแกรมสำเร็จรูปมาใช้งาน
เราอาจปรับเปลี่ยนขั้นตอนมาเป็นดังนี้
1. วิเคราะห์ปัญหาและระบบงานที่จะทำ
( System or problem analysis ) รวมถึงรายละเอียดข้อมูลที่มีอยุ่
2. กำหนดรายละเอียดของความต้องการของผู้ใช้ระบบงาน
( Require-ments specification )
3. ออกแบบขั้นตอนวิธีการทำงานของระบบใหม่
4. ตรวจสอบขั้นตอนวิธีว่าให้ผลตรงกับที่ต้องการ
5. จัดหาโปรแกรมที่ทำงานตรงตามความต้องการ
โดยการซื้อหรือจ้างทำ
6. นำโปรแกรมและระบบงานไปใช้จริง
( Implementation oroperation )
7. บำรุงรักษาระบบ
ติดตามผลและแก้ไขปรับปรุง ( Software mainte-mance and improvement )
1.2
เครื่องมือในการวิเคราะห์ขั้นตอนวิธีการแก้ปัญหา
ในการออกแบบขั้นตอนวิธีการทำงานเพื่อการแก้ปัญหาต่างๆ
หรือการเขียนโปรแกรม
จำเป็นต้องใช้เครื่องมือบางอย่างช่วยในการออกแบบและวิเคราะห์วิธีการเพื่อให้ง่ายต่อการมองภาพกระบวนการทำงานของระบบ
สามารถตรวจสอบหาที่ผิด รวมทั้งหาทางปรับปรุงให้ดีกว่าเดิมได้
เครื่องมือดังกล่าวที่ง่ายที่สุด ได้แก่ ผังงาน หรือโฟลชาร์ต ( Flowchart )
และรหัสจำลอง ( Pseudo Code )
1.2.1
ผังงาน ( Flowchart ) เป็นเครื่องมือช่วยออกแบบ
และวิเคราะห์การทำงานของโปรอกรมแบบรูปภาพขั้นพื้นฐานที่สุด
ช่วยให้สามารถมองเห็นภาพของความสัมพันธ์ระหว่างกระบวนการต่างๆ ของระบบงานหรือโปรแกรมได้ง่าย
และสามารถตรวจสอบว่าวิธีการนั้น ถูกต้อง มีประสิทธิภาพในการทำงาน
และมีความซับซ้อนหรือไม่
ทำให้นำไปเขียนเป็นโปรแกรมได้อย่างถูกต้องซึ่งเหมาะสมสำหรับผู้เริ่มต้นศึกษากลไกของโปรแกรมอย่างละเอียดรวมทั้งเพื่อเป็นการศึกษาคิดค้นขั้นตอนวิธี(
algorithm ) ที่ละเอียดอ่อน
และยังจัดว่าเป็นกระบวนการที่ไม่ใหญ่และซับซ้อนมากนัก ผังงานประกอบด้วยสัญลักษณ์
จุดเริ่มต้น / สิ้นสุดของโปรแกรม
ลูกศรแสดงทิศทางการทำงานของโปรแกรมและการไหลของข้อมูล
ใช้แสดงคำสั่งในการประมวลผล
หรือการกำหนดค่าข้อมูลให้กับตัวแปร
แสดงการอ่านข้อมูลจากหน่วยเก็บข้อมูลสำรองเข้าสู่หน่วยความจำหลักภายในเครื่องหรือการแสดง
ผลลัพธ์จากการประมวลผลออกมา
การตรวจสอบเงื่อนไขเพื่อตัดสินใจ
โดยจะมีเส้นออกจารรูปเพื่อแสดงทิศทางการทำงานต่อไป เงื่อนไขเป็นจริงหรือเป็นเท็จ
แสดงผลหรือรายงานที่ถูกสร้างออกมา
แสดงจุดเชื่อมต่อของผังงานภายใน
หรือเป็นที่บรรจบของเส้นหลายเส้นที่มาจากหลายทิศทางเพื่อ
จะไปสู่การทำงานอย่างใดอย่างหนึ่งที่เหมือนกัน
การขึ้นหน้าใหม่
ในกรณีที่ผังงานมีความยาวเกินกว่าที่จะแสดงพอในหนึ่งหน้า
ปัจจุบันโปรแกรมช่วยเขียนผังงานทำให้เขียนได้ง่ายขึ้น
เช่น SmartDraw ,Microsoft Visio 2002
ซึ่งหาข้อมูลและโปรแกรมตัวอย่างได้ที่เว็บไซต์ต่อไปนี้
http://www.smartdrae.com/resourcers/centers/flowcharts/index.htm
http://www.microsoft.com/office/visio/default.asp
1.2.2
รหัสลำลอง ( Pseudo Code ) เป็นเครื่องช่วยในการออกแบบระบบงานและโปรแกรมอีกแบบหนึ่ง
โดยเขียนขั้นตอนวิธีเป็น ประโยคสั้นๆ กะทัดรัด แต่สื่อความหมายชัดเจน
เรียงกันโดยมีหมายเลขกำกับแต่ละขั้นตอน
ให้ทำงานตามลำดับหมายเลขและเงื่อนไขที่เขียนไว้ ตัวอย่างเช่น
ถ้าต้องการออกแบบโปรแกรมให้พิมพ์ตัวเลขจาก 1
ถึง N โดยที N เป็นตัวเลขใด
ๆ ก็ได้ที่มากกว่าหรือเท่ากับ 1 เราอาจเขียนวิธีทำงาน
ที่เรียกว่ารหัสจำลองได้ดังนี้
1. ป้อนค่า
N จากแป้นพิมพ์
2. กำหนดให้ตัวแปร
I เป็นตัวเลขที่จะต้องพิมพ์ เริ่มต้นที่ I
= 1
3. พิมพ์ค่า
I ที่กระดาษของเครื่องพิมพ์
4. ตรวจสอบว่า
I = N แล้วหรือไม่
5. ถ้า
I ไม่เท่ากับ N ให้เพิ่มค่า
I = I+1 จากนั้นกลับไปทำตามขั้นตอนที่ 3
6. ถ้า
I = N แสดงว่างานเสร็จแล้ว จบโปรแกรม
ให้สังเกตขั้นตอนที่ 5 เมื่อทำมาถึงขั้นนี้ และ I ไม่เท่ากับ
N เราต้องย้อนกลับไปทำขั้นที่ 3
เรื่อยๆเป็นการวน ( Looping ) จนกว่า I จะเท่ากับ
N เมื่อ I = N เราจะลงไปทำขั้นตอนที่
6 ซึ่งเป็นการจบงาน
สำหรับผู้ฝึกจนชำนาญแล้ว อาจเขียนผังงาน หรืออาจใช้รหัสจำลองอย่างเดียวก็ได
้แต่การมองเห็นภาพระบบงานของรหัสจำลองมีน้อยกว่า
อาจเข้าใจยากและไม่ค่อยสร้างความประทับใจเวลานำเสนอต่อมวลชน


ไม่มีความคิดเห็น:
แสดงความคิดเห็น