ประเภทของซอฟต์แวร์

ใน บรรดาซอฟต์แวร์หรือโปรแกรมคอมพิวเตอร์ที่มีผู้พัฒนาขึ้นเพื่อใช้งานกับ คอมพิวเตอร์มีมากมาย ซอฟต์แวร์เหล่านี้อาจได้รับการพัฒนาโดยผู้ใช้งานเอง หรือผู้พัฒนาระบบ หรือผู้ผลิตจำหน่าย หากแบ่งแยกชนิดของซอฟต์แวร์ตามสภาพการทำงาน โดยทั่วไปแล้วซอฟต์แวร์แบ่งได้ 3 ประเภทใหญ่ๆ คือ ซอฟต์แวร์ระบบ (System Software) ซอฟต์แวร์ประยุกต์ (Application Software) โดยมีรายละเอียดของซอฟต์แวร์แต่ละประเภทดังนี้
1. ซอฟต์แวร์ระบบ (System Software)
ซอฟท์แวร์ ระบบเป็นโปรแกรมที่บริษัทผู้ผลิตสร้างขึ้นมาเพื่อใช้จัดการกับระบบ หน้าที่การทำงานของซอฟต์แวร์ระบบ คือ ดำเนินงานพื้นฐานต่าง ๆ ของระบบคอมพิวเตอร์ เช่น รับข้อมูลจากแผงแป้นอักขระแล้วแปลความหมายให้คอมพิวเตอร์เข้าใจ นำข้อมูลไปแสดงผลบนจอภาพหรือนำออกไปยังเครื่องพิมพ์ จัดการข้อมูลในระบบแฟ้มข้อมูลบนหน่วยความจำรอง
เมื่อ เราเปิดเครื่องคอมพิวเตอร์ ทันทีที่มีการจ่ายกระแสไฟฟ้าให้กับคอมพิวเตอร์ คอมพิวเตอร์จะทำงานตามโปรแกรมทันที โปรแกรมแรกที่สั่งคอมพิวเตอร์ทำงานนี้เป็นซอฟต์แวร์ระบบ ซอฟต์แวร์ระบบอาจเก็บไว้ในรอม หรือในแผ่นจานแม่เหล็ก หากไม่มีซอฟต์แวร์ระบบ คอมพิวเตอร์จะทำงานไม่ได้ นอกจากนี้ซอฟต์แวร์ระบบยังใช้เป็นเครื่องมือในการพัฒนาซอฟต์แวร์อื่น ๆ และยังรวมไปถึงซอฟต์แวร์ที่ใช้ในการแปลภาษาต่าง ๆ
ซอฟท์แวร์ระบบจึงทำหน้าที่เป็นตัวกลางเชื่อมต่อระหว่างฮาร์ดแวร์และโปรแกรมประยุกต์  ใช้ในการควบคุมดูแลการทำงานทั้งหมดของระบบคอมพิวเตอร์  ขณะ ที่เรากำลังใช้โปรแกรมประยุกต์อยู่ซอฟต์แวร์ระบบจะควบคุมการทำงานของอุปกรณ์ คอมพิวเตอร์ทั้งหมดอย่างต่อเนื่อง ซึ่งซอฟท์แวร์ระบบมีลักษณะแตกต่างกันดังนี้ 
1.1 ระบบปฏิบัติการ (Operating Software หรือ OS) เป็นซอฟต์แวร์ที่ควบคุมกิจกรรม
ทั้งหมดของคอมพิวเตอร์  เพื่อให้มั่นใจว่าอุปกรณ์ที่เป็นฮาร์ดแวร์ทุกส่วนของระบบคอมพิวเตอร์ทำงานร่วมกันได้อย่างราบรื่นและมีประสิทธิภาพซอฟท์แวร์ระบบปฏิบัติการใช้ในการบริหารจัดการข้อมูลและทำแฟ้มข้อมูลภายในเครื่องคอมพิวเตอร์  เช่น  การสำเนาข้อมูล (copy)  การเรียงลำดับ (sort)  การลบ (delete) และอื่น ๆ นอกจากนั้นยังใช้ในการดำเนินงานของโปรแกรมประยุกต์ด้วย  โปรแกรมที่พัฒนาจากระบบปฏิบัติการที่ต่างกันจะนำมาใช้ร่วมกันไม่ได้
ระบบปฏิบัติการที่นิยมใช้มากที่สุดในขณะนี้ คือ
                    1)  ระบบปฏิบัติการดอส(DOS
                    2) ระบบ ปฏิบัติการแบบวินโดวส์
                    3)  ระบบปฏิบัติการยูนิกส์ (UNIX)                     4)  ระบบปฏิบัติการแมค (MAC OS)   
                   1.2  ตัวแปลภาษาในการพัฒนาซอฟต์แวร์จำเป็นต้องมีซอฟต์แวร์ที่ใช้ในการแปลภาษาระดับสูง เพื่อแปลภาษาระดับสูงให้เป็นภาษาเครื่อง ภาษาระดับสูงมีหลายภาษา ภาษาระดับสูงเหล่านี้สร้างขึ้นเพื่อให้ผู้เขียนโปรแกรมเขียนชุดคำสั่งได้ง่าย เข้าใจได้ ตลอดจนถึงสามารถปรับปรุงแก้ไขซอฟต์แวร์ในภายหลังได้
                    ภาษาระดับสูงที่พัฒนาขึ้นมาทุกภาษาจะต้องมีตัวแปลภาษาสำหรับแปลภาษา ภาษาระดับสูงซึ่งเป็นที่รู้จักและนิยมกันมากในปัจจุบัน เช่น ภาษาปาสคาล ภาษาเบสิก ภาษาซี และภาษาโลโก 
                    1) ภาษาปาสคาล เป็นภาษาสั่งงานคอมพิวเตอร์ที่มีรูปแบบเป็นโครงสร้าง เขียน
สั่งงานคอมพิวเตอร์เป็นกระบวนความ ผู้เขียนสามารถแบ่งแยกงานออกเป็นชิ้นเล็ก ๆ แล้วมารวมกันเป็นโปรแกรมขนาดใหญ่ได้
                    2) ภาษาเบสิก เป็นภาษาที่มีรูปแบบคำสั่งไม่ยุ่งยาก สามารถเรียนรู้และเข้าใจได้ง่ายมีรูปแบบคำสั่งพื้นฐานที่สามารถนำมาเขียนเรียงต่อกันเป็นโปรแกรมได้                    
                    3) ภาษาซี เป็นภาษาที่เหมาะสำหรับใช้ในการพัฒนาซอฟต์แวร์อื่น ๆ ภาษาซีเป็นภาษาที่มีโครงสร้างคล่องตัวสำหรับการเขียนโปรแกรมหรือให้คอมพิวเตอร์ติดต่อกับอุปกรณ์ต่าง ๆ
                     4) ภาษาโลโก เป็นภาษาที่เหมาะสำหรับการเรียนรู้และเข้าใจหลักการโปรแกรมภาษาโลโกได้รับการพัฒนาสำหรับเด็ก 
                     นอกจากภาษาที่กล่าวถึงแล้ว ยังมีภาษาคอมพิวเตอร์ที่ใช้กันอยู่ในปัจจุบันอีกมากมายหลายภาษา เช่น ภาษาฟอร์แทรน ภาษาโคบอล ภาษาอาร์พีจี
                     2ซอฟต์แวร์ประยุกต์ (Application Software)   
                    ซอฟต์แวร์ประยุกต์เป็นโปรแกรมที่ออกแบบมาเพื่อการใช้งานเฉพาะเรื่องตามที่เราต้องการ  เช่น  งานพิมพ์เอกสาร  งานพิมพ์รายงาน  วาดภาพ  เล่นเกม  หรือโปรแกรมระบบบัญชี  รายรับรายจ่าย  และเงินเดือน  โปรแกรมอินเทอร์เน็ตเอ็กซ์พลอเรอร์  ใช้เพื่อการสืบค้นข้อมูลและเชื่อมโยง  กับระบบอินเทอร์เน็ตก็ได้  เน้นการใช้งานสะดวก
                     2.1  ซอฟต์แวร์สำเร็จ ในบรรดาซอฟต์แวร์ประยุกต์ที่มีใช้กันทั่วไป ซอฟต์แวร์สำเร็จ (package) เป็นซอฟต์แวร์ที่มีความนิยมใช้กันสูงมาก ซอฟต์แวร์สำเร็จเป็นซอฟต์แวร์ที่บริษัทพัฒนาขึ้น แล้วนำออกมาจำหน่าย เพื่อให้ผู้ใช้งานซื้อไปใช้ได้โดยตรง ไม่ต้องเสียเวลาในการพัฒนาซอฟต์แวร์อีก


                     2.2 ซอฟต์แวร์ใช้งานเฉพาะ เป็นโปรแกรมที่ทำหน้าที่ช่วยในการทำงานของระบบคอมพิวเตอร์ในหน้าที่เฉพาะด้านบางอย่าง เช่น การตรวจหาและกำจัดไวรัสคอมพิวเตอร์ การจัด เรียงข้อมูลในฮาร์ดดิสก์ เป็นต้น


การประยุกต์ใช้งานด้วยซอฟต์แวร์สำเร็จมักจะเน้นการใช้งานทั่วไป แต่อาจจะนำมาประยุกต์โดยตรงกับงานทางธุรกิจบางอย่างไม่ได้ เช่นในกิจการธนาคาร มีการฝากถอนเงิน งานทางด้านบัญชี หรือในห้างสรรพสินค้าก็มีงานการขายสินค้า การออกใบเสร็จรับเงิน การควบคุมสินค้าคงคลัง ดังนั้นจึงต้องมีการพัฒนาซอฟต์แวร์ใช้งานเฉพาะสำหรับงานแต่ละประเภท ให้ตรงกับความต้องการของผู้ใช้แต่ละราย ซอฟต์แวร์ใช้งานเฉพาะมักเป็นซอฟต์แวร์ที่ผู้พัฒนาต้องเข้าไปศึกษารูปแบบการทำงานหรือความต้องการของธุรกิจนั้น ๆ แล้วจัดทำขึ้น โดยทั่วไปจะเป็นซอฟต์แวร์ที่มีหลายส่วนรวมกันเพื่อร่วมกันทำงาน ซอฟต์แวร์ใช้งานเฉพาะที่ใช้กันในทางธุรกิจ เช่น ระบบงานทางด้านบัญชี ระบบงานจัดจำหน่าย ระบบงานในโรงงานอุตสาหกรรม บริหารการเงิน และการเช่าซื้อ   ความต้องการของการใช้คอมพิวเตอร์ในงานทางธุรกิจยังมีอีกมาก ดังนั้นจึงต้องมีความต้องการผู้พัฒนาซอฟต์แวร์เพื่อพัฒนาซอฟต์แวร์ใช้งานเฉพาะต่าง ๆ อีกมากมาย