เครื่องคอมพิวเตอร์โดยลำพังเองแล้วมันจะไม่สามารถทำงานได้ด้วยตัวเอง จำเป็นต้องมีองค์ประกอบอยู่ด้วยกัน 4 อย่างที่มีความสำคัญเท่าเทียมกันและต้องทำงานประสานกัน จึงจำทำให้ระบบคอมพิวเตอร์สามารถทำงานได้
ในบทนี้ท่านจะได้ศึกษาเกี่ยวกับองค์ประกอบของระบบคอมพิวเตอร์ว่าประกอบด้วยองค์ประกอบใดบ้าง แต่ละองค์ประกอบมีความสำคัญอย่างไร ซึ่งจะเป็นพื้นฐานสำคัญที่จะทำให้เข้าใจเกี่ยวกับคุณลักษณะและหน้าที่ของอุปกรณ์ต่าง ๆ ภายในระบบคอมพิวเตอร์รวมไปถึงการทำงานของระบบ ซึ่งพอจะสรุปถึงองค์ประกอบของระบบคอมพิวเตอร์ที่สำคัญได้ดังนี้
องค์ประกอบทางด้านฮาร์ดแวร์ (Hardware) เป็นองค์ประกอบของตัวเครื่อง ที่สามารถจับต้องได้ เช่น จอภาพ เครื่องพิมพ์ แป้นพิมพ์ ดิสก์ หรือแม้แต่วงจรไฟฟ้าในตัวเครื่อง ฯลฯ
องค์ประกอบทางด้านซอฟต์แวร์ (Software) เป็นกลุ่มของคำสั่งซึ่งเรียกว่า โปรแกรม ที่ถ่ายทอดแนวความคิดของผู้เขียนโปรแกรม เพื่อสั่งงานให้คอมพิวเตอร์ทำงาน
องค์ประกอบทางด้านข้อมูล (Data) เป็นข้อมูลที่จะนำเข้าสู่ระบบคอมพิวเตอร์พร้อมกับโปรแกรม เพื่อทำการประมวลผล
ฮาร์ดแวร์ (Hardware) หมายถึงส่วนประกอบของตัวเครื่องที่เราสามารถจับต้องได้ สามารถแบ่งส่วนประกอบของฮาร์ดแวร์ออกได้เป็น 5 หน่วยที่สำคัญ ดังนี้
1.หน่วยรับข้อมูล(Input Unit) ทำหน้าที่ในการรับโปรแกรม และข้อมูลเข้าสู่คอมพิวเตอร์ ตัวอย่างของอุปกรณ์ที่ใช้รับข้อมูลเข้าได้แก่ แป้นพิมพ์หรือคีย์บอร์ด (Keyboard) เครื่องสแกนต่าง ๆ เช่นเครื่องรูดบัตร สแกนเนอร์ ฯลฯ
2.หน่วยความจำ (Memory Unit) ทำหน้าที่เก็บโปรแกรมหรือข้อมูลที่รับมาจากหน่วยรับข้อมูล เพื่อเตรียมส่งให้หน่วยประมวลผลกลางทำการประมวลผล และรับผลลัพธ์ที่ได้จากการประมวลผล เพื่อเตรียมส่งออกหน่วยแสดงข้อมูลต่อไป
3.หน่วยประมวลผลกลาง (CPU หรือ Central Processing Unit) หน้าที่ปฏิบัติงานตามคำสั่งที่ปรากฏอยู่ในโปรแกรม หน่วยนี้จะประกอบด้วยหน่วยย่อยๆอีก 2 หน่วย ได้แก่หน่วยคำนวณเลขคณิต และตรรกวิทยา (ALU หรือ Arithmetic and Logical Unit) หน่วยควบคุม (CU หรือ Control Unit)
4.หน่วยเก็บข้อมูลสำรอง (Secondary Storage) ทำหน้าที่เก็บข้อมูลหรือโปรแกรมที่จะป้อนเข้าสู่หน่วยความจำหลักภายในเครื่องก่อนทำการประมวลผลโดยซีพียู รวมทั้งเป็นแหล่งเก็บผลลัพธ์จากการประมวลผลด้วย เพื่อการใช้งานในภายหลัง
5.หน่วยแสดงข้อมูล (Output) ทำหน้าที่แสดงผลลัพธ์จากการประมวลผล เช่น จอภาพ เครื่องพิมพ์ เป็นต้น (รายละเอียดของแต่ละหน่วยจะได้กล่าวอีกทีในบทต่อไป)
ซอฟต์แวร์(Software) หมายถึง โปรแกรมหรือชุดคำสั่งที่ถูกเขียนขึ้นเพื่อสั่งให้คอมพิวเตอร์ทำงานซอฟต์แวร์นี้จึงเปรียบเสมือนตัวเชื่อมระหว่างผู้ใช้เครื่องคอมพิวเตอร์และเครื่องคอมพิวเตอร์
ซอฟต์แวร์ สำหรับเครื่องคอมพิวเตอร์สามารถแบ่งออกได้เป็น
1. ซอฟต์แวร์ระบบ (System Software)
2. ซอฟต์แวร์ประยุกต์ (Application Software)
3. ซอฟต์แวร์สำเร็จรูป (Package)
ซอฟต์แวร์ระบบ (System Software) หมายถึง ชุดคำสั่งที่เขียนไว้เป็นคำสั่งสำเร็จรูป ซึ่งจะทำงานใกล้ชิดกับคอมพิวเตอร์มากที่สุด เพื่อคอยควบคุมการทำงานของฮาร์ดแวร์ทุกอย่างและอำนวยความสะดวกให้กับผู้ใช้ในการใช้งาน
ซอฟต์แวร์ระบบนี้ยังสามารถแบ่งออกได้ดังนี้
– ซอฟต์แวร์ควบคุมระบบปฏิบัติการ (Operating System) (OS)
– ซอฟต์แวร์จัดการอุปกรณ์ต่อพ่วง (Device Driver Software)
– ซอฟต์แวร์การสื่อสาร (Communications Software)
– ซอฟต์แวร์ช่วยพัฒนาโปรแกรม (Program Development Software)
– ซอฟต์แวร์อำนวยความสะดวก (Utility Software)
ซอฟต์แวร์ประยุกต์ (Application Software) คือ ซอฟต์แวร์หรือโปรแกรมที่ถูกเขียนขึ้นเพื่อการทำงานเฉพาะอย่างที่ต้องการ เช่นงานส่วนตัว งานทางด้านธุรกิจ หรืองานทางด้านวิทยาศาสตร์ เราอาจเรียกโปรแกรมประเภทนี้ว่า User’s Program ซอฟต์แวร์ประเภทนี้โดยส่วนใหญ่มักใช้ภาษาระดับสูงในการพัฒนา เช่น ภาษาซี
โคบอล ปาสคาล เบสิก ฯลฯ ตัวอย่างของโปรแกรมที่พัฒนาขึ้นใช้ในทางธุรกิจ เช่น โปรแกรมการทำบัญชีจ่ายเงินเดือน (payroll Program) โปรแกรมระบบเช่าซื้อ (Hire Purchase) โปรแกรมการทำสินค้าคงคลัง (Stock Program) ฯลฯ ซึ่งแต่ละโปรแกรมก็อาจมีเงื่อนไขหรือแบบฟอร์มที่แตกต่างกันไปตามความต้องการหรือกฎเกณฑ์ของแต่ละหน่วยงานที่ใช้ โปรแกรมประเภทนี้จะสามารถดัดแปลงแก้ไขเพิ่มเติม (Modifications) ในบางส่วนของโปรแกรมเองได้ เพื่อให้ตรงกับความต้องการของผู้ใช้งานโปรแกรม
ซอฟต์แวร์สำเร็จรูป (Package) เป็นซอฟต์แวร์หรือโปรแกรมประยุกต์ที่มีผู้จัดทำไว้เพื่อใช้ในการทำงานประเภทต่าง ๆ โดยผู้ใช้คนอื่น ๆ สามารถนำซอฟต์แวร์ประเภทนี้ไปใช้ กับข้อมูลของตนได้ แต่จะไม่สามารถทำการดัดแปลงหรือแก้ไขโปรแกรมได้ ผู้ใช้ไม่จำเป็นต้องเขียนโปรแกรมขึ้นมาเอง จึงเป็นการประหยัดเวลา แรงงาน และค่าใช้จ่ายในการเขียนโปรแกรม นอกจากนี้ยังไม่ต้องใช้เวลามากในการฝึกและปฎิบัติอีกด้วย ซอฟต์แวร์สำเร็จรูปนี้ มักจะมีการใช้งานในหน่วยงานที่ขาดบุคลากรที่มีความชำนาญเป็นพิเศษในการเขียนโปรแกรม ดังนั้นการใช้ซอฟต์แวร์สำเร็จรูปจึงเป็นสิ่งที่อำนวยความสำดวกและเป็นประโยชน์อย่างยิ่ง ตัวอย่างของซอฟต์แวร์สำเร็จรูป เช่น ซอฟต์แวร์ระบบจัดการฐานข้อมูลซอฟต์แวร์จัดพิมพ์รายงานหรือเวิร์ดโปรเซสเซอร์(Word Processor) ซอฟต์แวร์กระดาษทดอิเล็กทรอนิกส์หรือสเปรดซีต (Spreadsheet) เป็นต้น
ถึงแม้ระบบคอมพิวเตอร์จะประกอบด้วยองค์ประกอบทั้งทางด้านฮาร์ดแวร์และซอฟต์แวร์ แต่ระบบคอมพิวเตอร์จะไม่สามารถทำงานได้ถ้าขาดอีกองค์ประกอบหนึ่ง ซึ่งได้แก่ องค์ประกอบทางด้านบุคลากรที่จะเป็นผู้จัดการและควบคุมระบบคอมพิวเตอร์ให้สามารถปฎิบัติงานได้อย่างราบรื่น คอยแก้ไขปัญหาต่าง ๆที่เกิดขึ้นกับระบบคอมพิวเตอร์ พัฒนาโปรแกรมประยุกต์ต่าง ๆ รวมไปถึงการใช้งานโปรแกรมประยุกต์ที่ถูกพัฒนาขึ้นเราสามารถแบ่งบุคลากรที่มีหน้าที่เกี่ยวกับคอมพิวเตอร์ออกได้เป็น 5 ประเภทตามลักษณะของงานดังนี้
หัวหน้าหน่วยงานคอมพิวเตอร์ (EDP Manager หรือ Electronic Data Processing Manager) เป็นบุคลากรที่อยู่ในตำแหน่งทางบริหาร ซึ่งจะเป็นหัวหน้าของบุคลากรทางคอมพิวเตอร์ทั้งหมด จะมีหน้าที่วางแผนงาน กำหนดนโยบายของหน่วยงาน จัดทำโครงการและแผนงานการใช้ระบบคอมพิวเตอร์ จัดหาฮาร์ดแวร์และซอฟต์แวร์ที่จำเป็นที่จะต้องใช้ในองค์กร อำนวยการฝึกอบรมความรู้ให้กับบุคลากรทางคอมพิวเตอร์ เพื่อให้สามารถทำงานได้อย่างมีประสิทธิภาพ และนอกจากนี้จะต้องเป็นผู้คอยตรวจสอลบและติดตามผลงานของผู้ที่อยู่ใต้บัญคับบัญชาว่ามีความก้าวหน้าในการทำงานเป็นอย่างไรด้วย ดังนั้นบุคลากรในตำแหน่งนี้จึงต้องเป็นผู้ที่มีความรับผิดชอบสูง มีความรู้สามารถ มองเห็นการณ์ไกล และต้องหมั่นติดตามความก้าวหน้าของเทคโนโลยีอยู่เสมอ
บุคลากรทางด้านระบบ (System)ประกอบด้วยบุคลากรที่มีตำแหน่งดังต่อไปนี้
– นักวิเคราะห์ระบบ (System Analyst หรือ SA)
เป็นผู้ที่มีหน้าที่ในการวิเคราะห์และออกแบบระบบ โดยจะรวบรวมข้อมูลต่าง ๆ ที่เกี่ยวข้องกับระบบงานเดิมและความต้องการของผู้ใช้ เพื่อนำมาทำการวิเคราะห์และออกแบบระบบงานใหม่ หรือปรับปรุงระบบงานเดิม เพ่อให้การทำงานในระบบงานใหม่มีประสิทธิภาพดีขึ้นกว่าระบบงานเดิม โดยปกติ SA จะต้องเป็นผู้ที่มีความรู้เกี่ยวกับระบบคอมพิวเตอร์เป็นอย่างดี โดยเฉพาะอย่างยิ่งจะต้องเป็นผู้ที่มีประสบการณ์การทำงานมาพอสมควร และควรมีพื้นฐานการเขียนโปรแกรมมาก่อน ถึงแม้ว่า SA จะไม่ได้เป็นผู้เขียนโปรแกรมเอง แต่ SA จะต้องเป็นผู้ค้นหาวิธีการและขั้นตอนต่าง ๆ ในการเขียนโปรแกรมส่งให้กับนักเขียนโปรแกรมทำการเขียนอีกทีหนึ่ง นอกจากนี้ SA ควรจะเป็นผู้ที่มีความคิดริเริ่มสร้างสรรค์ มีมนุษย์สัมพันธ์ เพราะจะต้องมีหน้าที่ติดต่อกับคนในหลายระดับ ซึ่งในบางองค์กรอาจมีพนักงานบางคนที่ไม่เข้าใจในระบบคอมพิวเตอร์ และต่อต้านการนำระบบคอมพิวเตอร์เข้ามาช่วยในการทำงานได้
– นักเขียนโปรแกรมระบบ (System Programmer หรือ SP)
จะมีหน้าที่เขียนโปรแกรมระบบควบคุมเครื่อง จะคอยตรวจสอบและแก้ไขเมื่อระบบคอมพิวเตอร์มีปัญหาบุคลากรประเภทนี้จะต้องมีความรู้ทางด้านฮาร์ดแวร์เป็นอย่างดี เพราะต้องมีหน้าที่ในการให้คำปรึกษาต่าง ๆ เกี่ยวกับระบบคอมพิวเตอร์เมื่อระบบคอมพิวเตอร์มีปัญหา และต้องคอยพัฒนาโปรแกรมอำนวยความสะดวกต่าง ๆ ขึ้นมา เช่น โปรแกรมที่ช่วยในการสำรองข้อมูลในแต่ละวันหรือแต่ละสัปดาห์ เพื่อช่วยให้การใช้งานระบบคอมพิวเตอร์มีความสะดวกมากยิ่งขึ้น
บุคลากรทางด้านการเขียนโปรแกรม
นักเขียนโปรแกรมหรือโปรแกรมเมอร์ (Programmer) จะทำหน้าที่เขียนโปรแกรมประยุกต์ (Application Program) ทางคอมพิวเตอร์ ตามขั้นตอนวิธีที่นักวิเคราะห์ระบบได้ออกแบบไว้ เพื่อให้ผู้ใช้งานคอมพิวเตอร์สามารถใช้งานโปรแกรมประยุกต์นั้นได้ นักเขียนโปรแกรมจึงควรเป็นผู้มีความรู้เกี่ยวกับซอฟต์แวร์เป็นอย่างดี แต่อาจไม่จำเป็นต้องมีความรู้ในราบละเอียดเกี่ยวกับฮาร์ดแวร์ก็ได้ ควรเป็นคนมีความอดทนในการทำงานสูงเนื่องจากการเขียนโปรแกรมจะต้องพบกับข้อผิดพลาด(errors) ของโปรแกรมที่อาจเกิดขึ้นมากมาย ซึ่งจะต้องใช้เวลาในการแก้ไขข้อผิดพลาดที่เกิดขึ้นนั้นให้ได้ นอกจากนี้ควรมีความรอบคอบและมีความคิดริเริ่มสร้างสรรค์ หมั่นติดตามความก้าวหน้าของเทคโนโลยี หาความรู้ใหม่ ๆ เพิ่มเติมอยู่ตลอดเวลา เพื่อพัฒนาเทคนิคที่เหมาะสมในการพัฒนาโปรแกรมให้มีประสิทธิภาพยิ่งขึ้น
นักเขียนโปรแกรมยังสามารถแบ่งออกได้อีกเป็น 2 แบบ ตามลักษณะงานดังนี้
งานการสร้างโปรแกรมประยุกต์ (Application Programming) เป็นผู้ที่มีหน้าที่ในการเขียนและพัฒนาโปรแกรมประยุกต์ทั้งหมดของระบบตามที่นักวิเคราะห์ระบบเป็นผู้ออกแบบให้ ซึ่งมักเป็นระบบที่เริ่มมีการพัฒนาเป็นครั้งแรก
งานการบำรุงรักษาโปรแกรม (Maintenace Programming) ระบบอาจมีการพัฒนาเสร็จแล้ว แต่ต่อมาต้องการเปลี่ยนแปลงระบบในบางจุด เช่น อาจต้องมีการปรับปรุงให้มีความทันสมัย
ดังนั้นนักเขียนโปรแกรมทางด้านนี้จึงต้องคอยตามแก้ไขโปรแกรมเก่า ๆ ในระบบที่เขียนไว้แล้วเพื่อให้เป็นไปตามความต้องการใหม่ของระบบ
ดีบีเอ (DBA หรือ DataBase Administrator)
ซึ่ง DBA จะเป็นผู้มีหน้าที่ในการออกแบบและควบคุมการใช้งานฐานข้อมูล จะสามารถสร้างและแก้ไขเปลี่ยนแปลงโครงสร้างของฐานข้อมูลได้ ซึ่งโดยปกติผู้ใช้งานทั่วไปจะไม่สามารถเข้าไปยุ่งหรือจัดการกับฐานข้อมูล นอกจากนี้จะต้องควบคุมดูแลให้ฐานข้อมูลมีการเก็บข้อมูลที่ถูกต้อง ทันสมัยอยู่ตลอดเวลา และยังคอยแก้ปัญหาเมื่อระบบฐานข้อมูลมีปัญหาเกิดขึ้นด้วย
ผู้ปฏิบัติการ (Operator)
จะเป็นเจ้าหน้าที่คอมพิวเตอร์ ที่มีหน้าที่คอยปิดและเปิดเครื่องคอมพิวเตอร์ และคอยเฝ้าดูระบบ เมื่อมีปัญหาใด ๆ เกี่ยวกับระบบคอมพิวเตอร์ ก็จะเป็นผู้แจ้งให้กับนักเขียนโปรแกรมระบบทราบเพื่อทำการแก้ไขต่อไป และยังมีหน้าที่ส่งงานต่าง ๆ เข้าไปประมวลผลในคอมพิวเตอร์ และคอยรับรายงานการประมวลผล เพื่อแจกจ่ายให้แก่ฝ่ายที่เกี่ยวข้อง นอกจากนี้ยังต้องทำหน้าที่สำรอง (Backup) ข้อมูลจากเครื่องคอมพิวเตอร์ขึ้นไปเก็บไว้ในสื่อบันทึกข้อมูล เช่น เทป ทุกสิ้นวันหรือสิ้นเดือน เพื่อป้องกันความเสียหายที่อาจเกิดขึ้นกับข้อมูลในระบบคอมพิวเตอร์ได้ เช่น กรณีที่เครื่องคอมพิวเตอร์ขัดข้อง หรือดิสก์เกิดความเสียหาย เป็นต้น
บุคลากรทางด้านนี้ไม่จำเป็นต้องมีความรู้สูงนัก เนื่องจากลักษณะงานเป็นสิ่งที่มีการทำงานกำหนดขั้นตอนไว้ตายตัวแล้ว แต่ต้องเป็นผู้ที่มีความรับผิดชอบ และใส่ใจในการทำงาน
ผู้ใช้ (Users)
เป็นผู้ใช้ระบบคอมพิวเตอร์ ซึ่งจะมีความสำคัญต่อการออกแบบและพัฒนาระบบมาก เพราะผู้ใช้ระบบจะเป็นผู้ตัดสินใจ และระบุความต้องการลงไปว่าต้องการให้ระบบคอมพิวเตอร์ทำงานอะไรบ้าง ซึ่งบรรดานักคอมพิวเตอร์ต่าง ๆ ก็จะต้องพยายามตอบสนองความต้องการของผู้ใช้นั้น
ข้อมูลเป็นองค์ประกอบที่สำคัญอย่างหนึ่งในระบบคอมพิวเตอร์ เป็นสิ่งที่ต้องป้อนเข้าไปในคอมพิวเตอร์พร้อมกับโปรแกรมที่นักเขียนโปรแกรมเขียนขึ้น เพื่อนำไปใช้ในโปรแกรมและผลิตผลลัพธ์ที่ต้องการออกมา ดังนั้น ข้อมูลที่นำเข้าจะต้องมีความถูกต้องสมบูรณ์ จึงจะผลิตผลลัพธ์ที่ถูกต้องสมบูรณ์ออกมาได้
ข้อมูลที่จะนำเข้าระบบคอมพิวเตอร์ จะมีหน่วยของข้อมูลที่เล็กที่สุดได้แก่ “ตัวอักขระ(Character)” อันประกอบไปด้วย ตัวอักษร ตัวเลข และสัญลักษณ์ต่าง ๆ เมื่อนำตัวอักขรเหล่านี้มาประกอบกันจะทำให้ได้หน่วยข้อมูลที่ใหญ่ขึ้นเรียกว่า “ฟิลด์” (Field) และการนำฟิลด์หลาย ๆ ฟิลด์มาประกอบกันจะทำให้ได้สิ่งที่เรียกว่า “เรคอร์ด” (record) และถ้านำเรคอร์ดหลายเรคอร์ดมาประกอบกัน ก็จะได้สิ่งที่เรียกว่า “ไฟล์ข้อมูล” (data file)
ตัวอย่างของข้อมูลเช่น ข้อมูลพนักงานภายในบริษัท โดยที่ใน 1 ไฟล์ข้อมูลของพนักงาน จะประกอบด้วยเรคอร์ดของพนักงานหลายคน และเรคอร์ดของพนักงานแต่ละคนก็จะประกอบด้วยฟิลด์ 5 ฟิลด์ คือ หมายเลขประจำตัว พนักงาน ชื่อพนักงาน รหัสแผนก ตำแหน่ง และเงินเดือน เป็นต้น์