Author Archives: admin
ภาษาคอมพิวเตอร์ สำหรับการพัฒนาโปรแกรมให้มีคุณภาพ
ภาษาคอมพิวเตอร์ หมายถึง โปรแกรมหรือชุดคำสั่งที่มนุษย์เขียนขึ้นเพื่อสั่งงานให้คอมพิวเตอร์ทำงานตามความต้องการ ภาษาที่ใช้เขียนโปรแกรมคอมพิวเตอร์มีมากมาย แต่ละภาษาจะมีลักษณะโครงสร้างและกฎเกณฑ์ที่แตกต่างกัน โดยทั่วไปจะแบ่งภาษาคอมพิวเตอร์ได้ 3 ระดับคือ 1. ภาษาเครื่อง (Machine Language) ภาษาเครื่องเป็นภาษารหัสตัวเลข ที่เครื่องคอมพิวเตอร์สามารถรับรู้และปฏิบัติตามได้ทันที ผู้ใช้เครื่องคอมพิวเตอร์ยุคแรก ๆ ต้องเขียนโปรแกรมด้วยภาษาเครื่อง ซึ่งเป็นภาษาที่คนทำความเข้าใจยาก นอกจากนั้นเครื่องคอมพิวเตอร์แต่ละเครื่องยังใช้รหัสเลขที่ต่างกันด้วย ดังนั้นการใช้คอมพิวเตอร์ โดยใช้ภาษาเครื่องจึงเป็นเรื่องที่ยุ่งยาก และมักจะเกิดความผิดพลาดเสมอ แต่ก็เป็นภาษาที่เครื่องคอมพิวเตอร์สามารถเข้าใจและทำงานได้อย่างง่ายดาย 2. ภาษาระดับต่ำ (Low Level Language) ภาษาระดับต่ำเป็นภาษาที่ใกล้เคียงกับภาษาเครื่องมาก จึงเรียกได้ว่าเป็นภาษาอิงเครื่อง (Machine Oriented Language) เป็นภาษาที่ใช้รหัสตัวเลขประกอบกับอักขระภาษาอังกฤษด้วย เช่น ภาษาแอสเซมบลี (Assembly Language) ภาษาระดับต่ำนี้ เขียนได้ง่ายขึ้น แต่ภาษาแอสเซมบลี นี้ เครื่องคอมพิวเตอร์ไม่สามารถเข้าใจภาษาได้โดยตรง เวลาใช้งานจำเป็นต้องอาศัยโปรแกรมแปลภาษาเอสเซมเบลอ (Assembler Programme) และโปรแกรมเอสแซมเบลอที่ใช้กับคอมพิวเตอร์เครื่องหนึ่งจะใช้กับคอมพิวเตอร์เครื่องอื่น ๆ ไม่ได้ 3. ภาษาระดับสูง (High Level Language) ภาษาระดับสูงเป็นภาษาที่อำนวยความสะดวก […]
การศึกษาวิจัยด้านการสื่อสารภายในองค์กร
ปัจจุบันการสื่อสารนับเป็นเครื่องมือสำคัญในการดำรงชีวิตประจำวัน ในการสร้างความเข้าใจอันดีต่อกัน การแจ้งผู้อื่นให้รับทราบและเข้าใจถึงเจตนา ความต้องการปัญหา ความคิด ความรู้สึก ความเข้าใจ แนวคิด ท่าทีความเห็นด้วย ไม่เห็นด้วย การอธิบายในด้านภาพรวม รายละเอียด วัตถุประสงค์เหตุผลเป้าหมายและผลงาน การนัดหมาย ต่อรองทางธุรกิจ และเรื่องอื่นๆทุกเรื่อง เนื่องจากปัญหาที่เกิดขึ้นในเรื่องของการสื่อสารภายในองค์กรนั้นเป็นปัญหาที่หลายๆองค์กรพยายามที่จะแก้ไขปัญหานี้โดยอาศัยเทคโนโลยีเข้ามาช่วยเพื่อให้การสื่อสาร การเชื่อมต่อถึงกันได้ง่ายขึ้น แต่สุดท้ายก็ไม่ได้ทำให้การสื่อสารไปถึงกันได้อย่างที่คาดหวังไว้เลย เนื่องจากถ้าคนคนนั้นไม่คิดที่จะสื่อซักอย่าง จะใช้เครื่องมือทันสมัยเพียงใดก็ไม่มีประโยชน์ สิ่งสำคัญที่ช่วยให้พนักงานรู้สึกผูกพันกับองค์กรคือการสื่อสาร ซึ่งเป็นสิ่งที่หลายองค์กรกำลังเผชิญกับปัญหานี้อยู่ บริษัทส่วนใหญ่มีปัญหาน้อยมากกับการสื่อสารจากระดับบนสู่ระดับล่าง แต่การสื่อสารจากระดับล่างสู่ระดับบนนั้นเรียกได้ว่าเป็นเรื่องท้าทายเลยทีเดียว นอกจากพนักงานจะต้องการแนวทางในการปฏิบัติงานจากหัวหน้างาน พนักงานก็ยังต้องการให้หัวหน้างานรับฟังความคิดเห็นและได้รับการตอบสนองต่อความต้องการของพวกเขาในฐานะพนักงานด้วยเช่นกัน การที่พนักงานไม่แสดงออกถึงความต้องการของตนออกมา ย่อมส่งผลในเชิงลบ รวมถึงการพลาดโอกาสสำคัญทางธุรกิจ งานล่าช้า และขาดความคิดริเริ่มสร้างสรรค์ เพราะพื้นฐานที่สำคัญของการบริหารจัดการภายในองค์กรขึ้นอยู่กับการสื่อสารที่ดี อันจะมีผลให้เกิดความเข้าใจ ความร่วมมือ และการประสานงานที่ดี ด้วยแผนงานต่างๆที่จะนำไปสู่การปฏิบัติได้อย่างถูกต้อง เหมาะสม และตรงตามเป้าหมาย การสื่อสารที่ดีจึงเป็นกลยุทธ์ที่จะสามารถกระตุ้นให้เกิดการปฏิบัติที่มีประสิทธิภาพและเกิดผลสำเร็จแก่องค์กร การสื่อสารที่มีประสิทธิภาพที่สุดคือการสื่อสารที่เข้าใจง่าย ใช้วิสัยทัศน์ที่ชัดเจนในการกระตุ้นพลังในการทำงานและเพิ่มประสิทธิผลของบุคลากรในองค์กรเพื่อให้สามารถร่วมกันนำพาองค์กรไปสู่ความสำเร็จตามเป้าหมายได้อย่างสูงสุด และหากผู้บริหารไม่มีภาวะผู้นำและไม่สามารถนำกลยุทธ์การสื่อสารมาใช้อย่างชาญฉลาดและมีประสิทธิภาพแล้ว ย่อมจะนำพาองค์กรไปสู่ความล้มเหลวได้ ไม่ว่าองค์กรจะมีการเปลี่ยนแปลงไปอย่างไรและผู้บริหารขององค์กรจะใช้กลยุทธ์ใดในการบริหารจัดการก็ตาม
การพัฒนาโปรแกรมระบบปฏิบัติการของโปรแกรมที่ใช้ควบคุมและติดต่อกับอุปกรณ์ต่าง ๆ ในซอฟต์แวร์
ซอฟต์แวร์ คือ โปรแกรมหรือชุดคำสั่ง ที่จะสั่งและควบคุมให้ฮาร์ดแวร็คอมพิวเตอร์ทำงาน เราไม่สามารถจับต้อง ซอฟต์แวร์ ได้โดยตรงเหมือนกับตัวฮาร์ดแวร์ เพราะซอฟต์แวร์หรือโปรแกรมนี้จะถูกจัดเก็บอยู่ในสื่อ ที่ใช้ในการบันทึกข้อมูล เช่น แผ่นดิสก์ ซอฟต์แวร์ ที่มักติดตั้งไว้ในฮาร์ดดิสก์เพื่อทำงานทันที่ที่เปิดเครื่องคือ ซอฟต์แวร์ระบบปฏิบัติการ สรุปแล้ว ซอฟต์แวร์ คือ โปรแกรมชุดคำสั่งไว้ควบคมคอมฯให้ทำงาน ซอฟต์แวร์ระบบ คือโปรแกรมที่ใช้ในการควบคุมระบบการทำงานของเครื่องคอมพิวเตอร์ทั้งหมด เช่น การบูตเครื่อง การสำเนาข้อมูล การจัดการระบบของดิสก์ ชุดคำสั่งที่เขียนเป็นคำสั่งสำเร็จรูปโดยผู้ผลิตเครื่องคอมพิวเตอร์ และมีมาพร้อมแล้วจากโรงงานผลิต การทำงานหรือการประมวลผลของซอฟต์แวร์เหล่านี้ขึ้นกับเครื่องคอมพิวเตอร์แต่ละเครื่องระบบของซอฟต์แวร์เหล่านี้ออกแบบมาเพื่อการปฏิบัติควบคุม และมีความสามารถในการยืดหยุ่นการประมวลผลของเครื่องคอมพิวเตอร์ แบ่งออกเป็น 4 ประเภทคือ โปรแกรมระบบปฏิบัติการเป็นโปรแกรมที่ใช้ควบคุมและติดต่อกับอุปกรณ์ต่าง ๆ ของเครื่องคอมพิวเตอร์ โดยเฉพาะการจัดการระบบของดิสก์ การบริหารหน่วยความจำของระบบ กล่าวโดยสรุปคือ หากจะทำงานใดงานหนึ่งโดยใช้คอมพิวเตอร์เป็นเครื่องมือในการทำงานแล้วจะต้องติดต่อกับซอฟต์แวร์ระบบก่อน ถ้าขาดซอฟต์แวร์ชนิดนี้จะทำให้เครื่องคอมพิวเตอร์ไม่สามารถทำงานได้ ตัวอย่างของซอฟต์แวร์ประเภทนี้ได้แก่ โปรแกรมระบบปฏิบัติการ DOS Unix Windows Sun OS/2 Warp Netware และ Linux ตัวแปลภาษาจาก Source Code ให้เป็น Object Code […]
การใช้ซอฟต์แวร์ในภาคอุตสาหกรรมการศึกษา
การศึกษาก็เป็นส่วนหนึ่งที่สามารถผลิตบุคลากรได้ตรงความต้องการของภาคอุตสาหกรรมอย่างไม่เพียงพอ อาจสืบเนื่องมาจากอาจารย์ผู้สอนนั้นยังขาดประสบการณ์ในการทำงานด้านซอฟต์แวร์ในภาคอุตสาหกรรม อีกทั้งการพัฒนาซอฟต์แวร์ในอุตสาหกรรมไอทีนั้นค่อนข้างหลากหลาย อาจารย์ผู้สอนไม่สามารถให้นักศึกษามีความเชี่ยวชาญในทุกๆซอฟต์แวร์ได้ เนื่องจากเวลาที่จำกัดในกาศึกษา และจำนวนบุคลากรผู้สอน ซึ่งตัวซอฟต์แวร์ที่นักศึกษาได้เรียนรู้และมีความเชี่ยวชาญนั้น อาจไม่ตรงกับความต้องการของบริษัท อีกทั้งงานด้านซอฟต์แวร์ส่วนใหญ่นั้นมีการกระจุกตัวอยู่ในจังหวัดกรุงเทพฯและเขตปริมณฑลเป็นส่วนมาก ซึ่งบุคลากรด้านซอฟต์แวร์บางกลุ่มไม่สามารถย้ายถิ่นฐานได้ ปัจจุบันพบว่าทุกระดับการศึกษามีปัญหาเกี่ยวกับการใช้ซอฟต์แวร์อยู่ 3 ด้าน คือ งบประมาณ การพัฒนาเนื้อหา และบุคลากร ซึ่งปัญหาเหล่านี้ จะส่งผลต่อการพัฒนาระบบการศึกษาไทยในอนาคต ซึ่งภาครัฐควรเพิ่มงบประมาณที่เหมาะสมในการขับเคลื่อนการศึกษาไทย โดยใช้กลยุทธ์ที่คำนึงถึงทรัพยากรภายในประเทศ เพื่อลดงบประมาณการซื้อซอฟต์แวร์จากต่างประเทศ เช่น หน่วยงานที่เกี่ยวข้องควรสร้าง แพลตฟอร์มข้อมูล และประยุกต์ใช้ผ่านรูปแบบแอพพลิเคชั่นต่างๆ เพื่อขยายการเข้าถึงของผู้ใช้งานได้มากขึ้นภายใต้งบประมาณที่มีอยู่อย่างจำกัด การศึกษาส่วนใหญ่จะเป็นการศึกษาในภาพกว้างในเชิงมูลค่าหรือขนาดของตลาด ไม่มีการศึกษาเชิงลึกที่จะให้ข้อมูลเพียงพอต่อการวางกลยุทธ์หรือทำให้เข้าใจอุตสาหกรรมอย่างแท้จริง ส่งผลให้ความเข้าใจในตัวอุตสาหกรรมมีอย่างจำกัด ความขาดแคลนข้อมูลยังทำให้ประเทศขาดโอกาสด้านการลงทุนจากต่างชาติอีกด้วย ด้วยตระหนักถึงความจำเป็นดังกล่าวจึงได้จัดให้มีโครงการศึกษาศักยภาพของอุตสาหกรรมซอฟต์แวร์ขึ้น เพื่อให้ได้มาซึ่งข้อมูลที่สำคัญอันที่ช่วยให้เกิดความเข้าใจในอุตสาหกรรมซอฟต์แวร์ยิ่งขึ้น ซอฟต์แวร์ด้านการบริหารจัดการที่มีการใช้งานน้อยแต่มีความต้องการสูงสำหรับสถานศึกษาระดับการศึกษาขั้นพื้นฐาน ได้แก่ ระบบบัญชีและการเงิน ระบบวิชาการและหลักสูตร ระบบจัดซื้อจัดจ้าง ระบบจัดการเอกสาร ระบบบริหารงานบุคคล ระบบเงินเดือน ระบบตารางสอน และระบบงานปกครอง ระบบบริหารจัดการและบริการเซิร์ฟเวอร์ ระบบบริหารจัดการ e-learning โปรแกรมพัฒนาคอมพิวเตอร์ช่วยสอน และโปรแกรมสื่อการสอน ส่วนในระดับอาชีวะศึกษาซอฟต์แวร์ที่มีการใช้งานน้อยแต่มีความต้องการสูง ได้แก่ ระบบจัดซื้อจัดจ้าง และโปรแกรมการพัฒนาคอมพิวเตอร์ช่วยสอน สำหรับสถานศึกษาในระดับอุดมศึกษาไม่มีซอฟต์แวร์ที่มีการใช้งานน้อยแต่มีความต้องการสูงปรากฏ ดังนั้นซอฟต์แวร์กลุ่มนี้ควรมีการศึกษาเพิ่มเติมถึงปัจจัยต่างๆ ที่ไม่มีการใช้งานว่าเกิดจากสาเหตุใดในการสำรวจครั้งต่อไป
5 ปัญหาหลักในการพัฒนาซอฟต์แวร์พบบ่อยในปัจจุบัน
5 ปัญหาหลักในการพัฒนาซอฟต์แวร์ หรือจะว่าเป็น 5 ปัญหาคลาสสิกเลยก็ว่าได้ ถึงจะไม่เคยได้พัฒนาซอฟต์แวร์อย่างเต็มรูปแบบก็ตาม แต่ในช่วงเรียนปี 3 ก็พอมีอยู่บ้างเป็นโปรเจคใหญ่ที่ต้องนำมาพัฒนามีกระบวนการการทำงานต่างๆ เหมือนกับว่าเราทำงานจริงๆเลย และ อาจารย์ก็มักจะตรวจสอบความคืบหน้าของโปรเจคเราอยู่ทุกๆสัปดาห์เลย เพื่อให้อาจารย์มองเห็นปัญหาต่างๆ ในการทำงานของเรา …และในช่วงสอบ Final เทอมหนึ่งของปีที่ 3 ก็ได้มีข้อสอบของรายวิชานึงวิชานี้จะเป็นจะมีการเรียนการสอนที่คล้ายกับ Team Software Process ข้อสอบรายวิชานี้จะเป็นปัญหาต่างๆของเราในการพัฒนาโปรเจค ซึ่งก็คือปัญหาหลักๆ หรือปัญหาคลาสสิกของนักพัฒนาซอฟต์แวร์นั่นเองความต้องการจากผู้ใช้ ที่ไม่ชัดเจน คลุมเคลือขาดความสมบูรณ์ เรียบง่ายจนเกินไป จนไม่สามารถวิเคราะห์ได้ว่าต้องการอะไรและอื่นๆ อาจมีต้นเหตุมาจากความต้องการอีกมาก แผนงานโครงการไม่ดี มีลัษกณะเป็นแผนงานที่เพ้อฝัน การวางแผนไม่ได้ตั้งอยู่บนข้อมูลที่แท้จริง ทำแบบเพ้อฝันไม่คิด ขาดข้อมูลที่ได้จากการปรึกษาหารือสมาชิกในทีม ไม่ว่าจะเกิดจากสาเหตุใดๆ ก็ตาม ขาดการประสานงานย่อยที่สำคัญกับผู้ใช้หรือลูกค้า การจัดทำแผนอาศัพเพียงความรู้ความเข้าใจของตนเองเป็นหลักการทำสอบซอฟต์แวร์ไม่เพียงพอ มักจะพบปัญหาในลักษณะที่ว่าซอฟต์แวร์นี้ผ่านการทดสอบมาได้อย่างไร ปัญหามากมาย ไม่มีคุณภาพทั้งในระดับระหว่างการทำงานร่วมกันในทีม หรือหลังส่งมอบให้ลูกค้าแล้ว หรือมีการทดสอบซอฟต์แวร์ที่ขาดความรอบคอบเวลาในการทดสอบไม่เพียงพอ และอื่นๆ อีกมากมีการเปลี่ยนแปลงไม่จบสิ้น (Always Change) ในระหว่างที่พัฒนาซอฟต์แวร์ มักจะขอให้มีการเปลี่ยนแปลง Features หรือ Functions ไม่ว่าจะเพิ่มขึ้นหรือตัดออก มั้กจะสร้างปัญหาให้กับทีมพัฒนาบ่อยครั้งที่กระทบกระเทือนถึง […]
ปัจจุบันพบว่ามีเทคโนโลยีใหม่ ๆ เกิดขึ้นมากมายไม่ว่าจะเป็นเทคโนโลยีคอมพิวเตอร์
เทคโนโลยีคอมพิวเตอร์ฮาร์ดแวร์และซอฟต์แวร์ ในปัจจุบันมีการเปลี่ยนแปลงเร็วมากและเมื่อเปรียบเทียบระหว่างฮาร์ดแวร์กับซอฟต์แวร์ พบว่าฮาร์ดแวร์เปลี่ยนแปลงเร็วกว่าซอฟต์แวร์ โดยการเปลี่ยนแปลงนี้เพื่อยกระดับขีดความสามารถให้สูงขึ้น ขณะเดียวกันซอฟต์แวร์ก็จำเป็นต้องปรับเปลี่ยนตามฮาร์ดแวร์เพื่อให้สามารถทำงานร่วมกันได้และรองรับการทำงานให้สอดคล้องกับเทคโนโลยีใหม่ ๆ ของฮาร์ดแวร์ อย่างไรก็ตาม หลายท่านอาจมีความคิดว่าซอฟต์แวร์เปลี่ยนแปลงเร็วกว่าฮาร์ดแวร์ เนื่องจากได้มีซอฟต์แวร์ประยุกต์ใหม่ ๆ จำนวนมากออกวางจำหน่ายตามท้องตลาด ซึ่งบางครั้งอาจมองดูมากเกินไปจนอาจเลือกใช้งานไม่ถูก และยังมีข่าวการอัพเดท (Update) ซอฟต์แวร์ใหม่ ๆ ตามนิตยสารคอมพิวเตอร์ เว็บไซต์ หรือแม้แต่รายการโทรทัศน์บางรายการเพื่อเป็นความรู้ให้กับผู้ใช้งานทั่วไป จากข้อมูลของหลาย ๆ สื่อที่นำเสนอข้อมูลพบว่า แนวโน้มปัจจุบันของการเขียนโปรแกรมนั้น นักพัฒนาจะหันไปใช้โปรแกรมที่เป็นโอเพินซอร์ส มากขึ้น เนื่องจากช่วยลดค่าใช้จ่ายด้านลิขสิทธิ์ซอฟต์แวร์ และเลือกที่มีความสามารถของการโปรแกรมเชิงวัตถุ ซึ่งจะช่วยลดปัญหาเมื่อขนาดของโปรแกรมนั้นใหญ่ขึ้น ลดการเขียนชุดคำสั่งที่ซ้ำซ้อน และสามารถนำชุดคำสั่งเดิมกลับมาใช้งานใหม่ได้อีก ด้วยคุณลักษณะดังกล่าวนี้ภาษาเขียนโปรแกรมจาวา (Java) จึงเป็นอีกภาษาหนึ่งที่มีการกล่าวถึงอย่างกว้างขวาง บทความนี้มีวัตถุประสงค์เพื่อนำเสนอความรู้เกี่ยวกับการเลือกภาษาจาวาเป็นแนวทางสำหรับพัฒนาซอฟต์แวร์ในปัจจุบัน นำเสนอความรู้เกี่ยวกับจาวาและภาษาเขียนโปรแกรม ซึ่งนักพัฒนาสามารถใช้จาวาในการพัฒนาระบบสารสนเทศในองค์กรได้โดยเริ่มจากการศึกษาโครงสร้างและไวยากรณ์ของภาษา ตลอดจนนำเสนอความรู้เกี่ยวกับแนวทางการพัฒนาซอฟต์แวร์ เพื่อจะช่วยให้นักพัฒนาสามารถเลือกภาษาที่มีความสอดคล้องและเหมาะสมกับลักษณะงานแต่อย่างไรก็ดีภาษาจาวาก็ไม่ใช่คำตอบสุดท้ายท่านอาจเลือกศึกษาจาวาควบคู่ไปกับภาษาเขียนโปรแกรมอื่น เพื่อจะได้วิเคราะห์ด้วยตนเองว่าภาษาใดมีความสามารถเหมาะสมที่จะนำไปประยุกต์ใช้ในการพัฒนาระบบสารสนเทศในองค์กรของท่านในลำดับต่อไป ในปัจจุบันพบว่ามีเทคโนโลยีใหม่ ๆ เกิดขึ้นมากมาย ไม่ว่าจะเป็นเทคโนโลยีคอมพิวเตอร์ หรือเทคโนโลยีการสื่อสารบนอุปกรณ์ไร้สาย และเมื่อเทคโนโลยีเหล่านั้นวางสู่ท้องตลาด จากนั้นจะพบว่ามีซอฟต์แวร์ใหม่ ๆ วางจำหน่ายในลำดับถัดมา จึงอาจกล่าวได้ว่า เทคโนโลยีฮาร์ดแวร์กับซอฟต์แวร์เป็นสิ่งที่คู่กัน มักจะมีวิวัฒนาการไปพร้อม ๆ กันเสมอ เพราะซอฟต์แวร์เป็นสิ่งที่ให้ชีวิตแก่ฮาร์ดแวร์และเพิ่มคุณค่าให้กับระบบสารสนเทศในองค์กร
การพัฒนาซอฟต์แวร์สำเร็จรูปที่ใช้สร้างสรรค์งาน
การใช้งานระบบสารสนเทศด้วยคอมพิวเตอร์ จำเป็นต้องมีซอฟต์แวร์ควบคุมการทำงาน เช่น การซื้อของโดยใช้บัตรเครดิต ผู้ขายจะตรวจสอบบัตรเครดิตโดยใช้เครื่องอ่านบัตร แล้วส่งข้อมูลของบัตรเครดิตไปยังศูนย์ข้อมูลของบริษัทผู้ออกบัตร การตรวจสอบจะกระทำกับฐานข้อมูลกลาง โดยมีกลไกหรือเงื่อนไขของการตรวจสอบ จากนั้นจึงให้คำตอบว่าจะยอมรับหรือปฏิเสธบัตรเครดิตใบนั้น การดำเนินการเหล่านี้เป็นไปโดยอัตโนมัติตามคำสั่งซอฟต์แวร์ ทำนองเดียวกันเมื่อซื้อสินค้าในห้างสรรพสินค้า พนักงานเก็บเงินจะใช้เครื่องกราดตรวจอ่านรหัสแท่งบนสินค้าทำให้บนจอภาพปรากฏชื่อสินค้า รหัสสินค้า และราคา ในการดำเนินการนี้ต้องใช้ซอฟต์แวร์ซอฟต์แวร์จึงเป็นสิ่งสำคัญที่ทำให้ระบบคอมพิวเตอร์ทำงานได้ คอมพิวเตอร์เครื่องเดียวทำงานได้หลายประเภทเพราะว่ามีการพัฒนาพัฒนาโปรแกรมคอมพิวเตอร์ย่างหลากหลายและซับซ้อน หน่วยงานต่าง ๆ ใช้คอมพิวเตอร์ในการทำงาน ไม่ว่าจะเป็นด้านคำนวณ การพิมพ์เอกสาร การจัดเก็บข้อมูลประเภทต่าง ๆ ซอฟต์แวร์จึงเป็นส่วนสำคัญของ ระบบคอมพิวเตอร์ หากขาดซอฟต์แวร์คอมพิวเตอร์ก็ไม่ทำงานได้ ซอฟต์แวร์จึงเป็นสิ่งจำเป็น และมีความสำคัญมากและเป็นส่วนประกอบหนึ่ง ที่ทำให้เกิดการจัดการสารสนเทศให้เป็นไปได้ตามที่ต้องการ การที่มนุษย์พัฒนาซอฟต์แวร์ขึ้นมาได้ต้องมีภาษาเป็นสื่อกลางสำหรับการติดต่อเพื่อให้คอมพิวเตอร์รับรู้ เราเรียกสื่อกลางนี้ว่า ภาษาคอมพิวเตอร์ เนื่องจากคอมพิวเตอร์ทำงานด้วยสัญญาณทางไฟฟ้า ใช้แทนด้วยตัวเลข 0 และ 1 ได้ ผู้ออกแบบคอมพิวเตอร์ใช้ตัวเลข 0 และ 1 นี้เป็นรหัสแทนคำสั่งในการสั่งงานคอมพิวเตอร์รหัสแทนข้อมูลและคำสั่งโดยใช้ระบบเลขฐานสองนี้ คอมพิวเตอร์สามารถเข้าใจได้ เราเรียกเลขฐานสองที่ประกอบกันเป็นชุดคำสั่งและ ใช้สั่งงานคอมพิวเตอร์ว่า ภาษาเครื่อง ซอฟต์แวร์ ชุดคำสั่งที่สั่งงานคอมพิวเตอร์เป็นลำดับขั้นตอนของการทำงาน ชุดคำสั่งเหล่านี้ได้จัดเตรียมไว้ในหน่วยความจำของคอมพิวเตอร์ คอมพิวเตอร์อ่านชุดคำสั่งแล้วทำงานตาม ซอฟต์แวร์จึงเป็นสิ่งที่มนุษย์จัดทำขึ้น และคอมพิวเตอร์จะทำงานตามคุณลักษณะของซอฟต์แวร์ที่วางไว้แล้วเท่านั้น ชนิดของซอฟต์แวร์ ในบรรดาซอฟต์แวร์หรือโปรแกรมคอมพิวเตอร์ […]
การใช้งานคอมพิวเตอร์ต้องมีซอฟต์แวร์ประยุกต์
การที่เทคโนโลยีคอมพิวเตอร์ได้พัฒนาก้าวหน้าอย่างรวดเร็ว โดยเฉพาะการที่มีคอมพิวเตอร์ขนาดเล็ก ทำให้มีการใช้งานคล่องตัวขึ้น จนในปัจจุบันสามารถนำคอมพิวเตอร์ขนาดเล็ก ติดตัวไปใช้งานในที่ต่าง ๆ ได้สะดวก การใช้งานคอมพิวเตอร์ต้องมีซอฟต์แวร์ประยุกต์ ซึ่งอาจเป็นซอฟต์แวร์สำเร็จที่มีผู้พัฒนาเพื่อใช้งานทั่วไปทำให้ทำงานได้สะดวกขึ้น หรืออาจเป็นซอฟต์แวร์ใช้งานเฉพาะ ซึ่งผู้ใช้เป็นผู้พัฒนาขึ้นเองเพื่อให้เหมาะสมกับสภาพการทำงานของตน ในบรรดาซอฟต์แวร์ประยุกต์ที่มีใช้กันทั่วไป ซอฟต์แวร์สำเร็จ (package) เป็นซอฟต์แวร์ที่มีความนิยมใช้กันสูงมาก ซอฟต์แวร์สำเร็จเป็นซอฟต์แวร์ที่บริษัทพัฒนาขึ้น แล้วนำออกมาจำหน่าย เพื่อให้ผู้ใช้งานซื้อไปใช้ได้โดยตรง ไม่ต้องเสียเวลาในการพัฒนาซอฟต์แวร์อีก ซอฟต์แวร์สำเร็จที่มีจำหน่ายในท้องตลาดทั่วไป และเป็นที่นิยมของผู้ใช้มี 5 กลุ่มใหญ่ ได้แก่ ซอฟต์แวร์ประมวลคำ (word processing software) ซอฟต์แวร์ตารางทำงาน (spread sheet software) ซอฟต์แวร์จัดการฐานข้อมูล (data base management software) ซอฟต์แวร์นำเสนอ (presentation software) และซอฟต์แวร์สื่อสารข้อมูล (data communication software) 1) ซอฟต์แวร์ประมวลคำ เป็นซอฟต์แวร์ประยุกต์ใช้สำหรับการพิมพ์เอกสาร สามารถแก้ไข เพิ่ม แทรก ลบ และจัดรูปแบบเอกสารได้อย่างดี เอกสารที่พิมพ์ไว้จัดเป็นแฟ้มข้อมูล เรียกมาพิมพ์หรือแก้ไขใหม่ได้ การพิมพ์ออกทางเครื่องพิมพ์ก็มีรูปแบบตัวอักษรให้เลือกหลายรูปแบบ […]
การพัฒนาซอฟต์แวร์ให้ประสบความสำเร็จนั้นไม่ใช่เรื่องง่าย
ความจริงแล้ว การพัฒนาซอฟต์แวร์ให้ประสบความสำเร็จนั้นไม่ใช่เรื่องง่าย ประเทศไทยยังต้องปรับปรุงศักยภาพของซอฟต์แวร์อีกมากจึงจะสามารถแข่งขันในตลาดโลกได้ ปัญหาและอุปสรรคที่เห็นได้อย่างชัดเจนในปัจจุบัน ได้แก่ปัญหาด้านการตลาด ปัญหาด้านการทำวิจัยและพัฒนาเทคโนโลยี และปัญหาด้านคุณภาพ 1. ปัญหาด้านการตลาด บริษัทซอฟต์แวร์ไทยประสบปัญหาการละเมิดลิขสิทธิ์ซอฟต์แวร์ เช่นเดียวกับบริษัทซอฟต์แวร์ทั่วโลกคือ หลังจากลงทุนมหาศาลในการผลิตซอฟต์แวร์ แต่เมื่อนำออกจำหน่าย ก็ถูกลอกเลียนแบบด้วยการอัดสำเนา และจำหน่ายในราคาที่ถูกกว่าต้นแบบถึง ๑๐ เท่า ซึ่งเป็นสาเหตุที่ทำให้ต้นแบบจำหน่ายได้น้อย ผู้ผลิตจึงขาดทุน 2. ปัญหาด้านการวิจัยและพัฒนาเทคโนโลยี ซอฟต์แวร์ที่สามารถอำนวยความสะดวกให้แก่คนไทยได้อย่างแท้จริงนั้น จะต้องทำให้คอมพิวเตอร์ทำงานโดยใช้ภาษาไทยได้ เช่น อ่านออกเขียนและตรวจไวยากรณ์ได้ ฟังรู้เรื่อง พูดเป็นฯลฯ แต่การพัฒนาซอฟต์แวร์ให้สามารถทำเรื่องเหล่านี้ได้เป็นเรื่องที่ยาก จึงต้องอาศัยการทำวิจัยและพัฒนาเทคโนโลยีมาสนับสนุน นักวิจัยหลายร้อยคนต้องค้นคว้าทดลองนานนับสิบปี จึงจะสามารถพัฒนาซอฟต์แวร์ที่ฟังพูด และเขียนภาษาอังกฤษได้สำเร็จ แต่นักวิทยาศาสตร์และนักวิจัยในเรื่องเหล่านี้ของไทยมีอยู่น้อยมาก ดังนั้น จึงมีความจำเป็นอย่างมากที่จะต้องเพิ่มทรัพยากรมนุษย์ในส่วนนี้ 3. ปัญหาด้านคุณภาพ ซอฟต์แวร์ที่ได้รับการพัฒนาโดยคนไทยจะมีความแตกต่างด้านคุณภาพ ส่วนใหญ่ประเทศไทยจะประสบปัญหาในเรื่องการประเมินคุณภาพของซอฟต์แวร์ กล่าวคือ เมื่อขาดการประเมินคุณภาพที่ดี คนไทยก็จะไปนิยมซอฟต์แวร์จากต่างประเทศ เพราะไม่เชื่อถือฝีมือคนไทยด้วยกัน ทั้งที่ซอฟต์แวร์ของไทยก็มีคุณภาพดี ในทางกลับกัน เมื่อมีซอฟต์แวร์ที่ด้อยคุณภาพ ผู้พัฒนาก็ไม่ทราบจุดบกพร่อง จึงไม่ได้ปรับปรุงคุณภาพให้ดีเท่าที่ควร สาเหตุอื่นๆ ที่ทำให้ซอฟต์แวร์ของไทยขาดคุณภาพ ได้แก่ การขาดการบริหารโครงการที่ดีการขาดบุคลากรที่มีทักษะทันสมัยในด้านการพัฒนาและทดสอบซอฟต์แวร์ การขาดวิธีการกำหนดคุณลักษณะซอฟต์แวร์ที่เหมาะสม ฯลฯ หากจะมีการเพิ่มคุณภาพของซอฟต์แวร์ไทย […]
การพัฒนาโปรแกรมภาษาคอมพิวเตอร์เพื่อช่วยในการแก้ปัญหา
การให้คอมพิวเตอร์แก้ปัญหาต่างๆให้เรา เราจะต้องมีแนวทางที่แก้ไขปัญหาที่เหมาะสมให้กับคอมพิวเตอร์ เพื่อให้การทำงานเป็นไปอย่างมีประสิทธิภาพโดยกำหนดขอบเขตของปัญหา กำหนดรายละเอียดให้ชัดเจนว่าจะให้คอมพิวเตอร์ทำอะไร ตัวแปรค่าคงที่ที่ต้องใช้เป้นลักษณะใด ถ้าหากเราไม่กำหนดขอบเขตของปัญหาจะทำให้คอมพิวเตอร์ตัดสินได้ยากว่าข้อมูลต่างๆ ที่เกิดขั้นนั้นถูกหรือผิด กำหนดลักษณะของข้อมูลเข้าและออกจากระบบโดยต้องรู้ว่าข้อมูลที่จะส่งเข้าไปเป็นอย่างไร เพื่อให้โปรแกรมทำการประมวลผล และแสดงผลลัพธ์โดยคำนึงถึงผู้ใช้เป็นหลักในการออกแบบโปรแกรม กำหนดวิธีการประมวลผลโดยต้องรู้ว่าจะให้คอมพิวเตอร์ทำการประมวลผลอย่างไร จึงได้ผลลัพธ์ตามต้องการ การเขียนโปรแกรมเป็นการนำเอาผลลัพธ์ของการออกแบบโปรแกรม มาเปลี่ยนเป็นโปรแกรมภาษาคอมพิวเตอร์ภาษาใดภาษาหนึ่ง ผู้เขียนโปรแกรมจะต้องให้ความสนใจต่อรูปแบบคำสั่งและกฎเกณฑ์ของภาษาที่ใช้เพื่อให้การประมวลผลเป็นไปตามผลลัพธ์ที่ได้ออกแบบไว้ นอกจากนั้นผู้เขียนโปรแกรมควรแทรกคำอธิบายการทำงานต่างๆ ลงในโปรแกรมเพื่อให้โปรแกรมนั้นมีความกระจ่างชัดและง่ายต่อการตรวจสอบและโปรแกรมนี้ยังใช้เป็นส่วนหนึ่งของเอกสารประกอบ ซึ่งการบำรุงรักษาโปรแกรมจึงเป็นขั้นตอนที่ผู้เขียนโปรแกรมต้องคอยเฝ้าดูและหาข้อผิดพลาดของโปรแกรมในระหว่างที่ผู้ใช้ใช้งานโปรแกรม และปรับปรุงโปรแกรมเมื่อเกิดข้อผิดพลาดขึ้น การพัฒนาโปรแกรมคอมพิวเตอร์ให้กับระบบงานขนาดใหญ่ ที่มีการแบ่งงานวิเคราะห์ระบบและงานเขียนโปรแกรมออกจากกันนั้น โดยทั่วไปการมอบหมายงานให้นักเขียนโปรแกรม จะเป็นการกำหนดความต้องการของโปรแกรมในภาพรวม แต่ไม่ได้ระบุรายละเอียดขั้นเป็นรหัสลำลองหรือผังงานที่ละเอียด นักเขียนโปรแกรมจึงต้องศึกษาถึงความต้องการของงานที่ได้รับมอบหมาย ข้อมูลนำเข้า ข้อมูลส่งออก และกระบวนการในการแก้ปัญหาอย่างละเอียดเพื่อพัฒนาขึ้นเป็นขั้นตอนวิธีในการแก้ปัญหาซึ่งอยู่ในรูปแบบของผังงานอย่างละเอียด นักวิเคราะห์ระบบจะต้องรับประกันว่าโปรแกรมที่ได้มานั้นจะต้องมีข้อบกพร่องน้อยที่สุด ระหว่างแต่ละขั้นตอนของการทำงานจะต้องหาข้อบกพร่องที่อาจเกิดขึ้นได้ และกำจัดออกไปก่อนที่จะก้าวสู้ขั้นตอนถัดไป เพราะข้อบกพร่องมีอยู่ในระบบมากเท่าใด ก็จะทำให้ค่าใช้จ่าย ในการแก้ข้อบกพร่องมีมากขึ้นเท่านั้น และขึ้นอยู่กับระยะเวลาของการพัฒนาระบบด้วย ว่ามีข้อบกพร่องเกิดขึ้นนานเท่าไรแล้ว วิธีที่ถูกต้องที่สุดในการนำระบบใหม่มาใช้งานจริงคือยกเลิกระบบเก่าในทันทีแล้วใช้ระบบใหม่เข้าแทนที่ วิธีนี้เสี่ยงในกรณีที่ระบบใหม่มีปัญหา จะไม่มีระบบเก่ามาเปรียบเทียบเพื่อหาข้อผิดพลาด อีกวิธีหนึ่งในการนำมาใช้งานจริง
การพัฒนาซอฟต์แวร์และโปรแกรมอินเตอร์เน็ตให้ทันสมัยในปัจจุบัน
การพัฒนาซอฟต์แวร์ หรือโปรแกรมนั้น ๆ มีขั้นตอนกว้าง ๆ อยู่ 4 ขั้นตอน คือ การศึกษาความต้องการ สมมุติว่าเราต้องการพัฒนาโปรแกรมสำหรับช่วยคำนวณ ภาษีเงินได้บุคคลธรรมดาหรือ ภ.ง.ด. 91 เราจำเป็นจะต้องกำหนดความชัดเจนของเราก่อนว่า ต้องการให้คอมพิวเตอร์ทำอะไรได้บ้าง เช่น ต้องการให้คอมพิวเตอร์คำนวณภาษีสำหรับเจ้าของรายได้ เมื่อแยกยื่นภาษีกับผู้สมรส หรือจะให้สามารถรวมภาษีรวมได้ เราต้องการให้ซอฟต์แวร์พิมพ์ตัวเลขต่าง ๆ เกี่ยวกับภาษีออกมาให้เรานำไปเขียนกรอกในแบบฟอร์ม หรือเราต้องการให้ซอฟต์แวร์สามารถพิมพ์แบบฟอร์มได้เองโดยอัตโนมัติ รายละเอียดเหล่านี้เราต้องศึกษาให้พร้อม อนึ่ง เราต้องศึกษาขั้นตอนการคิดเงินภาษีด้วยว่ามีอะไรบ้างจะต้องทำขั้นตอนไหนก่อนหลัง แต่ละขั้นตอนมีการใช้สูตรอะไรบ้างออกแบบโปรแกรมเมื่อทราบความต้องการแล้ว ต่อมาจะต้องออกแบบโปรแกรมว่าจะ ให้แสดงข้อความอะไรบนจอภาพบ้าง รายการหลักหรือเมนูที่จะให้ปรากฏหน้าจอจะมีข้อความอย่างไร จะใช้วิธีเลือกรายการอย่างไร โปรกแกรมจะต้องมีกี่ส่วน จะต้องพิมพ์รายงานอะไรบ้าง จะเก็บข้อมูลอะไรไว้บ้าง การเขียนโปรแกรมหลังจากออกแบบเค้าโครงออกโปรแกรมแล้ว เราสามารถเลือกเขียน ภาษาคอมพิวเตอร์แบบใดแบบหนึ่ง ซึ่งเราถนัดและมีตัวแปลรักษาอยู่แล้ว ภาษาอยู่แล้วมาใช้ในการเขียนโปรแกรมทดสอบโปรแกรม เมื่อเราเขียนโปรแกรมเสร็จก็จะต้องทดสอบว่า โปรแกรมที่จะทำขึ้น นั้นสามารถทำงานได้ถูกต้องตรงกับความต้องการ วิธีทดสอบนั้นเราจะจัดเตรียมข้อมูล ทดสอบเอาไว้ล่วงหน้า โดยข้อมูลทดสอบนั้นจะเป็นข้อมูลพิเศษที่เรารู้คำตอบล่วงหน้าแล้ว เมื่อนำข้อมูลนี้ไปใช้กับโปรแกรมที่จัดทำขึ้น เราก็มุ่งหวังที่จะได้คำตอบตรงกับคำตอบที่คิดไว้แล้ว หากไม่ตรงก็อาจเป็นก็เพราะมีสิ่งที่ผิดในโปรแกรม ถ้าเป็นเช่นนั้น นักโปรแกรมก็จะพิจารณาตรวจหาสิ่งผิดพลาดในโปรแกรม เพื่อแก้ไขและนำโปรแกรมนั้นมาทดสอบอีก จนกว่าจะเห็นว่าโปรแกรมทำงานได้ถูกต้องครบถ้วน การค้นหาที่ผิดนี้นิยมเรียกเป็นภาษาอังกฤษว่า Debugging เมื่อได้จัดทำโปรแกรมขึ้นมาถึง 4 ขั้น […]
การพัฒนาระบบเทคโนโลยีสารสนเทศที่เป็นประโยชน์สูงสุด
ระบบสารสนเทศ เป็นกลุ่มข้อมูลที่ถูกจัดการตามกฎหรือถูกกำหนดความสัมพันธ์เพื่อให้ข้อมูลเหล่านั้นเกิดประโยชน์หรือมีความหมายเพิ่มมากขึ้น ประเภทของระบบสารสนเทศขึ้นอยู่กับความสัมพันธ์ระหว่างข้อมูลที่มีอยู่ เป็นขบวนการประมวลผลข่าวสารที่มีอยู่ให้อยู่ในรูปของข่าวสารที่เป็นประโยชน์สูงสุด เพื่อเป็นข้อสรุปที่ใช้สนับสนุนการตัดสินใจของบุคคลระดับบริหาร ซึ่งปัจจุบันขอบเขตการทำงานของระบบสารสนเทศขยายตัวจากการรวบรวมข้อมูลที่มาจากภายในองค์การไปสู่การเชื่อมโยงกับแหล่งข้อมูลจากสิ่งแวดล้อมภายนอก ทั้งจากภายในท้องถิ่น ประเทศ และระดับนานาชาติ ปัจจุบันธุรกิจต้องใช้เทคโนโลยีสารสนเทศที่มีศักยภาพสูงขึ้นเพื่อให้สามารถปฏิบัติหน้าที่ได้อย่างมีประสิทธิภาพ และเป็นเครื่องมือสำคัญที่ช่วยเพิ่มขีดความสามารถของธุรกิจ และขีดความสามารถในการบริหารงานของผู้บริหารในยุคปัจจุบัน การที่นำระบบคอมพิวเตอร์มาประยุกต์ในการดำเนินงานทางธุรกิจ การจัดการระบบสารสนเทศได้รับการยอมรับว่ามีความสำคัญต่อความสำเร็จในการดำเนินธุรกิจในปัจจุบัน เทคโนโลยีสารสนเทศช่วยสร้างความแข็งแกรงเชิงกลยุทธ์ โดยพัฒนาความสามารถในการแข่งขันให้กับองค์การ เทคโนโลยีสารสนเทศถูกนำมาประยุกต์ให้การปฏิบัติงานในระดับต่างๆขององค์การมีประสิทธิภาพสูงขึ้น หลายองค์การได้ให้ความสนใจในการพัฒนาระบบสารสนเทศสำหรับผู้บริหารเพื่อให้การตัดสินใจในปัญหาหรือโอกาสทางธุรกิจมีประสิทธิภาพสูงขึ้น ถูกพัฒนาขึ้นโดยเฉพาะเพื่อให้สอดคล้องกับความต้องการ ทักษะ และความสามารถในการเข้าถึงสารสนเทศสำหรับผู้บริหาร เนื่องจากผู้บริหารเป็นกลุ่มบุคคลที่ต้องการข้อมูลที่มีลักษณะเฉพาะ โดยเฉพาะด้านระยะเวลาในการเข้าถึงและทำความเข้าใจกับข้อมูล โดยเฉพาะการเปลี่ยนแปลงและการแข่งขันทางธุรกิจที่เกิดขึ้นและปรับตัวอย่างรวดเร็ว ระบบสารสนเทศทางธุรกิจ 1. ระบบสารสนเทศด้านการบัญชี (Accounting Information System) 2. ระบบสารสนเทศด้านการเงิน (Financial Information System) 3. ระบบสารสนเทศด้านการตลาด (Marketing Information System) 4. ระบบสารสนเทศด้านการผลิตและการดำเนินงาน (Production and Operations Information System) 5. ระบบสารสนเทศด้านทรัพยากรบุคคล (Human Resource Information System) การพัฒนาระบบระบบสารสนเทศ 1)กระบวนการทางธุรกิจ […]
การพัฒนาซอฟต์แวร์ เพื่อการเขียนโปรแกรมที่มีคุณภาพ
ซอฟต์แวร์ หมายถึงชุดคำสั่งหรือโปรแกรมที่ใช้สั่งงานให้คอมพิวเตอร์ทำงาน ซอฟต์แวร์จึงหมายถึงลำดับขั้นตอนการทำงานที่เขียนขึ้นด้วยคำสั่งของคอมพิวเตอร์ คำสั่งเหล่านี้เรียงกันเป็นโปรแกรมคอมพิวเตอร์ จากที่ทราบมาแล้วว่าคอมพิวเตอร์ทำงานตามคำสั่ง การทำงานพื้นฐานเป็นเพียงการกระทำกับข้อมูลที่เป็นตัวเลขฐานสอง ซึ่งใช้แทนข้อมูลที่เป็นตัวเลข ตัวอักษร รูปภาพ หรือแม้แต่เป็นเสียงพูดก็ได้ โปรแกรมคอมพิวเตอร์ที่ใช้สั่งงานคอมพิวเตอร์จึงเป็นซอฟต์แวร์ เพราะเป็นลำดับขั้นตอนการทำงานของคอมพิวเตอร์ คอมพิวเตอร์เครื่องหนึ่งทำงานแตกต่างกันได้มากมายด้วยซอฟต์แวร์ที่แตกต่างกัน ซอฟต์แวร์จึงหมายรวมถึงโปรแกรมคอมพิวเตอร์ทุกประเภทที่ทำให้คอมพิวเตอร์ทำงานได้ การที่เราเห็นคอมพิวเตอร์ทำงานให้กับเราได้มากมาย เพราะว่ามีผู้พัฒนาโปรแกรมคอมพิวเตอร์มาให้เราสั่งงานคอมพิวเตอร์ ร้านค้าอาจใช้คอมพิวเตอร์ทำบัญชีที่ยุ่งยากซับซ้อน บริษัทขายตั๋วใช้คอมพิวเตอร์ช่วยในระบบการจองตั๋ว คอมพิวเตอร์ช่วยในเรื่องกิจการงานธนาคารที่มีข้อมูลต่าง ๆ มากมาย คอมพิวเตอร์ช่วยงานพิมพ์เอกสารให้สวยงาม เป็นต้น การที่คอมพิวเตอร์ดำเนินการให้ประโยชน์ได้มากมายมหาศาลจะอยู่ที่ซอฟต์แวร์ ซอฟต์แวร์จึงเป็นส่วนสำคัญของระบบคอมพิวเตอร์ หากขาดซอฟต์แวร์คอมพิวเตอร์ก็ไม่สามารถทำงานได้ ซอฟต์แวร์จึงเป็นสิ่งที่จำเป็น และมีความสำคัญมาก และเป็นส่วนประกอบหนึ่งที่ทำให้ระบบสารสนเทศเป็นไปได้ตามที่ต้องการ คอมพิวเตอร์จะมีประโยชน์สำหรับเราก็ต่อเมื่อมีซอฟต์แวร์ที่สั่งให้คอมพิวเตอร์ทำงานคอมพิวเตอร์ที่ไม่มีซอฟต์แวร์เปรียบเสมือนคนที่ไม่มีวิญญาณ ดังนั้น ซอฟต์แวร์จึงเป็นสิ่งที่มีคุณค่ามาก แต่ขณะที่คอมพิวเตอร์ในปัจจุบันมีประสิทธิภาพสูงขึ้น และมีขนาดเล็กลงเรื่อย ๆ ซอฟต์แวร์ที่ต้องใช้กับเครื่องเหล่านี้ก็ยิ่งซับซ้อนมากขึ้น และมีขนาดใหญ่ขึ้นมาก จากเดิมที่มีชุดคำสั่งเพียง ๑๐๐-๒๐๐ บรรทัด ก็จะเพิ่มเป็นชุดคำสั่งหลายล้านบรรทัด ดังนั้น ค่าใช้จ่ายและเวลาที่ต้องใช้ในการพัฒนาซอฟต์แวร์จึงมากขึ้นตามไปด้วย การเขียนโปรแกรม เป็นขั้นตอนการเขียน ทดสอบ และดูแลซอร์สโค้ดของโปรแกรมคอมพิวเตอร์ ซึ่งซอร์สโค้ดนั้นจะเขียนด้วยภาษาโปรแกรม ขั้นตอนการเขียนโปรแกรมต้องการความรู้ในหลายด้านด้วยกัน เกี่ยวกับโปรแกรมที่ต้องการจะเขียน และขั้นตอนวิธีที่จะใช้ ซึ่งในวิศวกรรมซอฟต์แวร์นั้น การเขียนโปรแกรมถือเป็นเพียงขั้นหนึ่งในวงจรชีวิตของการพัฒนาซอฟต์แวร์ การเขียนโปรแกรมจะได้มาซึ่งซอร์สโค้ดของโปรแกรมนั้นๆ โดยปกติแล้วจะอยู่ในรูปแบบของ […]
การพัฒนาระบบและซอฟต์แวร์ในการใช้งานในด้านต่างๆ
การผลิตผลิตภัณฑ์ที่จะต้องใช้วิธีการพัฒนาทางวิศวกรรม ไม่ว่าจะเป็นรถยนต์ซึ่งเป็นวิศวกรรมเครื่องกล เครื่องโทรทัศน์ซึ่งเป็นวิศวกรรไฟฟ้า ตลอดไปจนถึงงานการก่อสร้างสะพานหรืออาคารสูงซึ่งเป็นวิศวกรรมโยธา ล้วนต้องมีกระบวนการหรือขั้นตอนพัฒนาและบำรุงรักษาที่ประกอบด้วยวิธีการต่าง ๆ มากมาย ในงานพัฒนาระบบซอฟต์แวร์ขนาดใหญ่ก็เช่นเดียวกัน จำเป็นต้องมีกระบวนการเชิงวิศวกรรมที่เรียกว่า วิศวกรรมซอฟต์แวร์ ในการพัฒนาและบำรุงรักษาซอฟต์แวร์อย่างเป็นขั้นตอน เพื่อให้งานสำเร็จลุล่วงตามเวลาและบรรลุเป้าหมายที่ต้องการ การพัฒนาระบบซอฟต์แวร์ขนาดใหญ่ ๆ เช่น ระบบสินค้าคงคลังในงานธุรกิจ ระบบการลงทะเบียนเรียนในมหาวิทยาลัย หรือระบบบัญชีลูกหนี้เจ้าหนี้ของบริษัทร้านค้า นับเป็นงานที่ค่อนข้างซับซ้อน มีขอบเขตเกิดกว่าที่สมองของมนุษย์จะจดจำได้อย่างครบถ้วนไม่ใช่งานเล็ก ๆ หรือโปรแกรมเล็กๆ สำหรับผู้พัฒนาเพียงคนเดียว จำเป็นต้องอาศัยผู้ร่วมพัฒนาหลายคนทำงานร่วมกันในช่วงเวลาที่ยาวพอสมควร เพราะในระหว่างการพัฒนาอาจมีปัญหาอุปสรรคเกิดขึ้ได้เสมอ เช่น เป้าหมายของระบบอาจมีการปรับเปลี่ยนให้เหมาะสมขึ้น หรือ ปัญหาด้านบุคลากรที่ร่วมโครงการอาจมีการสับเปลี่ยนเนื่องจากการเปลี่ยนตำแหน่ง หรือ ย้ายงานใหม่ เป็นต้น วิศวกรรมซอฟต์แวร์ ไม่ใช่เป็นเรื่องที่เกี่ยวข้องเฉพาะกับปัญหาเทคนิคของกระบวนการพัฒนาเท่านั้น ยังจะรวมไปถึงปัญหาด้านบุคลากรและการควบคุมติดตามโครงการ ซึ่งในที่นี้จะกล่าวเฉพาะกระบวนการพัฒนาซอฟต์แวร์ และระบบซอฟต์แวร์ที่มีการหมุนเวียนใช้งานเป็นวัฎจักรซอฟต์แวร์ ซอฟต์แวร์ที่พัฒนามาแล้ว จะเข้าสู่วัฎจักรของการนำไปใช้งานแล้วนำมาปรับปรุงแก้ไข และย้อนกลับนำมาใช้งานใหม่ ตลอดระยะเวลาการใช้งานซอฟต์แวร์นั้น จนกว่าจะมีซอฟต์แวร์ใหม่มาแทนที่ ผลิตภัณฑ์อุตสาหกรรมต่าง ๆ มีวัฎจักรเช่นเดียวกัน เพียงแต่ว่า วัฎจักรของผลิตภัณฑ์ ไม่ใช่การปรับปรุงแก้ไข แต่จะเป็นการซ่อมบำรุงให้ใช้งานต่อไปได้ ซอฟต์แวร์ต่างกับผลิตภัณฑ์ตรงที่ไม่มีส่วนสึกหรอ การปรับปรุงแก้ไขซอฟต์แวร์ อาจเกิดขึ้นจากข้อผิดพลาดของซอฟต์แวร์ ที่ยังหลงค้างอยู่ หรือจากข้อกำหนดของเงื่อนไขภายในซอฟต์แวร์ที่มีการเปลี่ยนแปลง เช่น […]