เทคโนโลยีซอฟต์แวร์
ฮาร์ดแวร์ที่เป็นคอมพิวเตอร์พื้นฐานที่เกี่ยวกับระบบสารสนเทศ เรียกว่า CBIS (Computer-Based Information System) ซึ่งส่วนที่เกี่ยวข้องกับซอฟต์แวร์ แบ่งออกเป็น 2 ชนิด คือ
ซอฟต์แวร์ประยุกต์ (Application Software)
ซอฟต์แวร์ระบบ (System Software)
ซอฟต์แวร์ประยุกต์ (Application Software) เป็นซอฟต์แวร์ที่นำมาจัดการกับงานประยุกต์ต่าง ๆ มี 2 ประเภทคือ
ซอฟต์แวร์ประยุกต์ที่ใช้กับงานโดยทั่วไป (General-Purpose Application Software) ส่วนใหญ่ใช้งานด้านการประมวลผลคำ (Word Processing) ด้านตารางคำนวณ (Spreadsheets) ด้านการจัดการแฟ้มข้อมูลและฐานข้อมูล (File/Database Management Programs) ได้แก่ Microsoft Office
ซอฟต์แวร์ประยุกต์ที่ใช้กับงานเฉพาะอย่าง (Special-Purpose Application Software) งานด้านระบบบัญชีธุรกิจทั่วไป (General Accounting Software) ด้านการวิเคราะห์และการตัดสินใจ (Analysis and Decision Marking) เป็นต้น
ซอฟต์แวร์ระบบ (System Software) เป็นซอฟต์แวร์ที่ทำหน้าที่จัดการด้านฮาร์ดแวร์และอำนวยความสะดวกในการใฃ้งานของผู้ใช้งาน มี 3 ประเภท คือ
ซอฟต์แวร์ที่ใช้ในการจัดการกับระบบ (System Management Programs)
ซอฟต์แวร์ที่ใช้ในการสนับสนุนระบบ (System Support Programs)
ซอฟต์แวร์ที่ใช้ในการพัฒนาระบบ (System Development Programs)
ตัวอย่างซอฟต์แวร์ประเภทต่าง ๆ
ซอฟต์แวร์ประยุกต์ (Application Software)
Word Processing - สำหรับการพิมพ์งานต่าง ๆ
Spreadsheet - ใช้ในการคำนวณ และลักษณะตาราง
File manages and database management system – ชุดโปรแกรมในการจัดการแฟ้มข้อมูล
ซอฟต์แวร์ช่วยงานด้านการประมวลผลข้อมูลรายการ (Transaction Processing) - งานทางด้านธุรกิจ
ซอฟต์แวร์ช่วยงานด้านการวิเคราะห์และการตัดสินใจ(Analysis and decision making) - สนับสนุนการตัดสินใจ
ซอฟต์แวร์ช่วยงานด้านการวางแผนและการจัดการตารางงาน (Planning,coordinating,scheduling and
organizing) - ด้านการวางแผน จัดการตาราง เช่น แผนงบประมาณ แผนการเงิน
ซอฟต์แวร์ช่วยงานด้านการผลิตรายงาน (Reporting) - สร้างรายงานประเภทต่าง ๆ
ซอฟต์แวร์ช่วยงานด้านการตรวจคำผิดของตัวอักษร (Writing) - ตัวตรวจสอบ แสดงข้อความ
ซอฟต์แวร์ช่วยงานด้านการ Presentation - การนำเสนองานในรูปต่าง ๆ
ซอฟต์แวร์ช่วยงานด้านการติดต่อสื่อสาร (Communicating) - การส่งผ่านข้อมูลถึงกัน หรือเพื่อการแลกเปลี่ยนข้อมูล
ซอฟต์แวร์ช่วยงานด้านการสอนและฝึกอบรม (Training) - ทางด้านคอมพิวเตอร์เป็นส่วนใหญ่
ซอฟต์แวร์ระบบ (System Software)
ระบบปฏิบัติการ (The Operating System) คือ โปรแกรมหลักที่ใช้ในการจัดการคำสั่งทั้งหมดในระบบคอมพิวเตอร์ มีหน้าที่หลักดังนี้
จัดการเกี่ยวกับไฟล์
จัดการเกี่ยวกับอุปกรณ์ Input/Output
จัดการเกี่ยวกับหน่วยความจำ
จัดการเกี่ยวกับซอฟต์แวร์ประยุกต์
จัดการเกี่ยวกับลำดับความสำคัญก่อนหลังในการทำงานของผู้ใช้
องค์ประกอบของระบบปฏิบัติการ (Components of the Operating System)
Supervisor - เป็นส่วนในการควบคุมกิจกรรมทุกอย่างที่ฮาร์ดแวร์ของคอมพิวเตอร์ทำ
Command-Language Translator - เป็นตัวเปลี่ยนความต้องการของผู้ใช้ให้เป็นการทำงานของ Operating System
Input/Output Control System (IOCS) - เกี่ยวโยงกับระบบฮาร์ดแวร์
Librarian - เป็นส่วนของซอฟต์แวร์ที่จัดการกับข้อมูล โปรแกรม พื้นที่ว่างในแฟ้มข้อมูล
ระบบปฏิบัติการสำหรับไมโครคอมพิวเตอร์ (Microcomputer Operating Systems)
MS-DOS - เป็นระบบปฏิบัติการที่ใช้กันในระยะแรก เป็นลักษณะคำสั่งโดยอักษร
Macintosh System - ใช้รูปภาพเป็นสื่อ (GUI: Graphic User Interface) เป็นระบบปฏิบัติการเฉพาะ
OS/2 - หรือ Operating System 2 ใช้รูปภาพเป็นสื่อ แต่เป็น OS ที่มีขนาดใหญ่และใช้หน่วยความจำมาก
Windows - เป็นระบบ GUI นิยมใช้ในปัจจุบัน สนับสนุนการใช้งานของผู้ใช้งานได้มากและสะดวก
UNIX - เป็นระบบปฏิบัติการที่ใช้งานในเครื่องหลายแบบ ใช้งานด้านวิทยาศาสตร์และวิศวกรรมศาสตร์
Operating Systems for Pen-Based Computers - เป็นการเปลี่ยนลายเส้นอักษรของผู้ใช้โดยปากกาเฉพาะ
ระบบปฏิบัติการสำหรับข่ายงาน (Network Operating Systems)
เป็นการเชื่อมโยงเครื่องแต่ละเครื่องเข้าด้วยกันเป็นระบบเครือข่าย หรือ LAN (Local Area Network) ลักษณะการใช้งานคือ
ใช้ระบบไปรษณีย์อิเล็กทรอนิกส์สื่อสารถึงกันได้
ใช้ข้อมูลร่วมกันได้
ปฏิบัติงานบางอย่างร่วมกันได้
ใช้อุปกรณ์ และทรัพยากรอื่น ๆ ร่วมกันได้
ระบบเครือข่ายจะต้องประกอบด้วยส่วนต่าง ๆ ดังนี้
มีแผ่นวงจรข่ายงาน (Network Interface Card)
มีระบบปฏิบัติการข่ายงาน (Network Operating System)
มีการจัดเชื่อมโยงคอมพิวเตอร์ให้ถูกต้องและเหมาะสม
ระบบปฏิบัติการสำหรับเครื่องขนาดใหญ่ (Operating Systems for Larger Systems)
ลักษณะโดยทั่วไปที่จะต้องพบในระบบปฏิบัติการดังกล่าว
Interleaving Techniques - การจัดการเกี่ยวกับการทำงานได้หลาย ๆ งานในเวลาเดียวกัน เช่น
Multiprogramming - เป็นขบวนการที่เครื่องคอมพิวเตอร์ สามารถทำงานพร้อมกันมากกว่า 1 งาน หรือผู้ใช้งานมากกว่า 1 คนเข้าใช้คอมพิวเตอร์
Multitasking - ความสามารถในการทำงานหลายอย่างของผู้ใช้คนเดียวในเวลาเดียวกัน
Time-Sharing - เป็นเทคนิคที่ CPU จัดสรรเวลาให้กับผู้ใช้หลายคนที่ปริมาณที่เท่าเทียมกัน
Foreground/Background Processing - เป็นการแบ่งหน่วยความจำหลักออกเป็นส่วน ๆ ที่เรียกว่า Partition ให้หลายโปรแกรมเข้าไปอยู่ในหน่วยความจำพร้อมๆ กันได้
Virtual Memory - เป็นระบบการทำงานที่ใช้หน่วยความจำสำรองทำหน้าที่เก็บโปรแกรมและข้อมูลแทนหน่วยความจำหลัก
Multiprocessing - การทำงานหลาย ๆ งานได้พร้อมกัน โดยมี CPU ตั้งแต่ 2 ตัวเชื่อมโยงการทำงาน
ซอฟต์แวร์ระบบอื่น ๆ
ตัวแปลภาษา (Language Translator) ทำหน้าที่แปลภาษาโปรแกรมที่เขียนขึ้น ให้เป็นภาษาเครื่องคอมพิวเตอร์ที่เครื่องเข้าใจ และทำงานได้
Compilers - เป็นตัวแปลงโปรแกรมภาษาคอมพิวเตอร์ให้เป็นภาษาเครื่องก่อนที่โปรแกรมนั้นจะ
ทำงานต่อ
Interpreters - เป็นการแปลโปรแกรมเป็นภาษาเครื่องในลักษณะที่แปลโปรแกรมในแต่ละบรรทัดและทำงานทันที
Assemblers - ก่อนที่เครื่องจะใช้งานภาษาแอสเซมบลีได้ จะต้องแปลภาษาแอสเซมบลีให้เป็นภาษาเครื่องก่อน ที่เรียกว่า Assemblers
โปรแกรมอรรถประโยชน์ (Utility Programs) เป็นซอฟต์แวร์ที่ใช้ในการช่วยงานต่าง ๆ เช่น การเตรียมแผ่นดิสก์เพื่อใช้งาน การสำเนาแฟ้มข้อมูล
โปรแกรมภาษาคอมพิวเตอร์ (Programming Languages)
เป็นภาษาที่เขียนเพื่อทำให้เครื่องทำงานตามที่ผู้ใช้ต้องการ
วิวัฒนาการและระดับของภาษาคอมพิวเตอร์
ยุคที่ 1 – 2 ภาษาเครื่อง และภาษาระดับต่ำ (Low-Level Languages) ผู้เขียนต้องมีความรู้เรื่องคอมพิวเตอร์เป็นอย่างดี
Machine Language เป็นภาษาในยุคแรก เป็นรหัสเลขฐาน 2 สั่งให้เครื่องทำงานทันที
Assembly Language เป็นภาษาที่ง่ายขึ้นกว่ายุคแรก จะเป็นอักษรย่อในการเขียนคำสั่ง
ยุคที่ 3 ภาษาระดับสูง (High-Level Languages) เป็นภาษาที่ใกล้เคียงกับภาษามนุษย์ ซึ่งภาษาระดับต่ำและระดับสูง จะต้องมีตัวแปลภาษา (Translator) ช่วยในการแปลภาษา เช่น Assemble Cobol BASIC Pascal
ยุคที่ 4 ภาษาระดับสูงมาก (Very-High-Level Languages) เป็นภาษาโปรแกรมที่เข้าใจง่ายและใช้คำสั่งสั้น
เช่น RPG (Report Program Generator) , 4GL (Forth – Generation Language)
ยุคที่ 5 ภาษายุคที่ 5 (Fifth Generation of Programming Language) มีลักษณะคือ
ระบบผู้เชี่ยวชาญ (Export Systems) ใช้เครื่องคอมพิวเตอร์ในการเก็บข้อมูลความรู้และประสบการณ์ของผู้เชียวชาญ
ภาษาธรรมชาติ (Natural Languages) ใช้ภาษามนุษย์ในการติดต่อสื่อสารกับเครื่องคอมพิวเตอร์ แต่มีปัญหาทางด้านการประมวลผลคำ และคำสั่งอยู่
ภาษาเชิงวัตถุ (Object- Oriented Languages) เป็นการปฏิบัติการด้านความคิดเป็นการเปลี่ยนวิธีการพิจารณาการทำงานของมนุษย์จากเดิมที่เน้นด้านกระบวนการ ไปเน้นที่ตัววัตถุที่ถูกดำเนินการแทน
ภาษาสำหรับประมวลผลแบบขนาน (Paralleled Processing Languages) ประกอบด้วยงานย่อย ๆ ซึ่งสามารถทำงานบนหน่วยประมวลผลกลาง ได้พร้อมกัน