วันพฤหัสบดีที่ 4 กรกฎาคม พ.ศ. 2556

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

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

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

การที่คอมพิวเตอร์ดำเนินการได้อย่างไร และก่อให้เกิดประโยชน์ได้มากน้อยเพียงใด นั้นจึงขึ้นอยู่กับซอฟต์แวร์ 
ซอฟต์แวร์จึงเป็นส่วนสำคัญของระบบคอมพิวเตอร์ หากขาดซอฟต์แวร์คอมพิวเตอร์ก็ไม่สามารถทำงานได้ 
ซอฟต์แวร์จึงเป็นสิ่งที่จำเป็นและสำคัญมาก ซอฟต์แวร์เป็นส่วนประกอบหนึ่ง ที่ทำให้ระบบสารสนเทศเป็นไปได้ตามที่ต้องการ 
·         1. การพัฒนา Software 237311 BASIC PRINCIPLES FOR EDUCATIONAL SOFTWARE DEVELOPMENT
·         2. SDLC คือ วัฏจักรการพัฒนาระบบงาน ( System development Life Cycle : SDLC ) หมายถึง ขั้นตอนหรือกระบวนการในการพัฒนาระบบงาน ซึ่งมีจุดเริ่มต้นในการทํางานและจุดสิ้นสุดของการปฏิบัติงาน
·         3. ขั้นตอนที่ใช้ศึกษาขบวนการวิเคราะห์และออกแบบระบบ ประกอบด้วย วิเคราะห์ ( Analysis) ออกแบบ ( Design) สร้างหรือพัฒนาระบบ ( Construction) การปรับเปลี่ยน ( Conversion) SDLC เข้าใจปัญหา ( Problem Recognition) บำรุงรักษา ( Maintenance) ศึกษาความเป็นไปได้ ( Feasibility Study)
·         4. ตัวอย่าง SDLC
·         5. เครื่องมือที่ใช้ในการพัฒนาระบบ (Tools) คือ ซอฟต์แวร์ที่ช่วยสร้างหรือวาดแบบจำลองชนิดต่าง ๆ ตรวจสอบความถูกต้องของแบบจำลอง ช่วยสร้างรายงานและแบบฟอร์ม รวมทั้งช่วยสร้างโค้ดโปรแกรมให้อัตโนมัติ
·         6. ตัวอย่างเครื่องมือที่ใช้ในการพัฒนาระบบ (Tools) www.themegallery.com Company Logo Title 1 Title 2 Title 3
·         7. ตัวอย่างเครื่องมือที่ใช้ในการพัฒนาระบบ (Tools)
·         8. ตัวอย่างเครื่องมือที่ใช้ในการพัฒนาระบบ (Tools)
·         9. ตัวอย่างเครื่องมือที่ใช้ในการพัฒนาระบบ (Tools)
·         10. แบบจำลองที่ใช้ในการพัฒนาระบบ (Model) แบบจำลอง ( Model) คือ สัญลักษณ์ที่ใช้ในการจำลองข้อเท็จจริงต่าง ๆ ที่เกิดขึ้นในระบบ ไม่ว่าจะเป็นแบบจำลองข้อมูล ( Data Model) หรือขั้นตอนการทำงานของระบบ ( Process Model)
·         11. ตัวอย่างแบบจำลองที่ใช้ในการพัฒนาระบบ (Model) Flow Chart Data Flow Diagram (DFD) Structure Chart
·         12. ตัวอย่างแบบจำลองที่ใช้ในการพัฒนาระบบ (Model) Entity Relationship Diagram (ERD) Use Case Diagram Class Diagram
·         13. ตัวอย่างแบบจำลองที่ใช้ในการพัฒนาระบบ (Model) Sequence Diagram PERT Chart Organization Hierarchy Chart
·         14. ตัวอย่างแบบจำลองที่ใช้ในการพัฒนาระบบ (Model) Gantt Chart Financial Analysis Model – NPV, ROI
·         15. ตารางเปรียบเทียบข้อดี ข้อเสียของ SSADM , RAD และ OOD&D เปรียบเทียบ SSADM RAD OOD&D ข้อดี - สามารถรวบรวมความต้องการจากผู้ใช้ได้ - การเปลี่ยนแปลงความต้องการมีน้อย - ผู้ใช้สามารถใช้งานระบบในส่วนที่ต้องการ และจำเป็นได้เร็วกว่า SSADM - Maintain ง่ายเพราะว่าแต่ละ object แยกออกมาเด่นชัด - Reuseable เอาไปใช้ใหม่ได้ง่าย เนื่องจาก Object มีการกำหนดคุณสมบัติของตัวเองชัดเจน สามารถออกแบบ Object ให้ไปใช้ได้ในหลายกรณี ข้อเสีย - ใช้เวลานานมากในการวิเคราะห์และออกแบบระบบ - ระบบที่นำมาใช้อาจจะยังทำงานได้ไม่ครอบคลุมระบบทั้งหมด แบบจำลองที่เป็นแผนภาพแตกต่างกันไป ทำให้แผนภาพไม่เป็นมาตรฐาน - ไม่ Self contained หมายความว่า การอ้างอิงถึง Object ใดๆเดี่ยวๆไม่ได้
·         16. ตารางเปรียบเทียบข้อดี ข้อเสียของ SSADM , RAD และ OOD&D เปรียบเทียบ SSADM RAD OOD&D ข้อดี - ข้อมูลที่วิเคราะห์และออกแบบจะตรงกับความ - ต้องการของผู้ใช้และเจ้าของระบบมากที่สุด - ใช้เวลาน้อยในการพัฒนา เพราะเป็นการสร้างต้นแบบของงานก่อน เหมาะกับระบบงานที่มีขนาดเล็ก - สะท้อนความเป็นจริงไดดีกว่าการออกแบบในลักษณะทั่วๆไปที่เราออก แบบกันไม่ Self contained หมายความว่า การอ้างอิงถึง Object ใดๆเดี่ยวๆไม่ได้ เราต้องรู้จัก Super class ทุกตัวด้วย ไม่เช่นนั้นคุณสมบัติจะมาไม่หมด ข้อเสีย - ขาดความรอบคอบในการพิจารณาถึงปัญหาที่จะเกิดตามมายากต่อการเรียนรู้ - การที่ Sub class ถูก Inherit จาก Super class
·         17. UML คือ UML (Unified Modeling Language) คือ สัญลักษณ์มาตรฐานที่ใช้ในวิธีการออกแบบการพัฒนาเชิงวัตถุ ( Object-oriented Design Methodology) ซึ่งสัญลักษณ์ที่ใช้นั้นจะได้มาจากการรวมเอาวิธีการในการออกแบบและวิเคราะห์ แบบ Object-oriented 3 แบบคือ 1. Booch Method ของ Grady Booch 2. Object-Modeling Technique(OMT) ของ James Rumbaugh 3. Use case methodology ของ Ivar Jacobson
·         18. CASE TOOL คือ CASE Tools หมายถึง ซอฟแวร์ที่เป็นเครื่องมือที่มีส่วนประกอบช่วยสนับสนุนการทางานในกิจกรรมต่างๆ ของงานวิศวกรรมซอฟแวร์ไม่ว่าจะเป็น ความต้องการ การออกแบบ การเขียนโปรแกรม และการทดสอบโปรแกรม และ CASE ถือเป็นเทคโนโลยีชนิดหนึ่ง ที่เพิ่มความสามารถให้กับซอฟแวร์จนกลายเป็นเครื่องมือช่วยแบ่งเบาภาระของนักพัฒนาระบบ
·         19. ตัวอย่างโปรแกรมที่ใช้เป็นเครื่องมือของ Upper-CASE และ Lower-CASE - Rational Rose : ใช้สำหรับวาด UML  Design  for  OO(Object Oriented)  และ   generate code - Visible Analyst:  ใช้สำหรับวาด Context Diagram และ Data flow diagram - Visual Studio : ทำออกแบบและสร้าง   web - Oracle   Enterprise   Development Suite - Paradigm   Plus - Logic Works Suite - AxiomSys and AxiomDsn - V32 & X32
·         20. ตัวอย่างโปรแกรมที่ใช้เป็นเครื่องมือของ Upper-CASE และ Lower-CASE www.themegallery.com Company Logo - Business process engineering tools tool ที่ช่วยในการออกแบบกระบวนการทางด้านธุรกิจ - Process modeling and management tools tool ที่ช่วยในการออกแบบและการจัดการกระบวนการทั่วไป - Project planning tools tool ที่ช่วยในการวางแผนการทำ Project - Risk analysis tools tool ที่ช่วยในการวิเคราะห์ความเสี่ยงที่จะเกิดขึ้นกับ Project - Project management tools tool ที่ช่วยในการจัดการและบริหาร Project - Requirements tracing tools tool ที่ช่วยในการติดตามการกำหนด requirement ต่างๆ ของ Project
·         21. ตัวอย่างโปรแกรมที่ใช้เป็นเครื่องมือของ Upper-CASE และ Lower-CASE - Metrics and management tools tool ที่ช่วยในการจัดการและการสร้าง Metric - Documentation tools tool ที่ช่วยในการจัดทำเอกสารของ Project - System software tools tool ที่ช่วยสนับสนุนการทำงานกับซอฟแวร์ระบบ - Quality assurance tools tool ที่ช่วยในการทำ Quality assurance - Database management tools tool ที่ช่วยในการบริหารและจัดการฐานข้อมูล - Software configuration management tools tool ที่ช่วยในการจัดการการทำ Software configuration
·         22. ตัวอย่างโปรแกรมที่ใช้เป็นเครื่องมือของ Upper-CASE และ Lower-CASE - Analysis and design tools tool ที่ช่วยในการทำงานในวิเคราะห์และออกแบบระบบ - PRO / SIM tools tool ที่ช่วยในการทำ prototype และจำลองการทำงาน ( Prototyping and Simulation ) ของระบบ - Interface design and development tools tool ที่ช่วยในการออกแบบและพัฒนา Interface ของระบบ - Prototyping tools tool ที่ช่วยในการทำ Prototype ต่างๆ - Programming tools tool ที่ช่วยในการเขียนโปรแกรม คือจะรวมเอา compiler, editor และ debugger ไว้ด้วยกัน - Web development tools tool ที่ช่วยในการพัฒนา website
·         23. ตัวอย่างโปรแกรมที่ใช้เป็นเครื่องมือของ Upper-CASE และ Lower-CASE Integration and testing tools tool ที่ช่วยในการทำ Integration และการทดสอบการทำงานของระบบ - Static analysis tools tool ที่ช่วยในการทดสอบการวิเคราะห์ตางๆ - Dynamic analysis tools tool ที่ช่วยในการวิเคราะห์และทดสอบ ระบบแบบ Dynamic - Test management tools tool ที่ช่วยในการจัดการการทดสอบระบบ - Client / server testing tools tool ที่ช่วยในการทดสอบการทำงานของระบบที่เป็นแบบ Client / server - Reengineering tools tool ที่ช่วยในการทำ Software reengineering ระบบเก่า
·         24. จากที่ศึกษา CASE มาท่านจะเลือกใช้ Tool โปรแกรมใดที่จะช่วยพัฒนาระบบ โปรแกรม Analysis and design tools tool ที่ช่วยในการทำงานในวิเคราะห์และออกแบบระบบ
·         25. โปรแกรม Analysis and design tools tool นอกจากการสร้างระบบสารสนเทศใหม่แล้ว การวิเคราะห์ระบบ จะช่วยในการแก้ไขระบบสารสนเทศเดิมที่มีอยู่แล้วให้ดีขึ้นด้วย ดังนั้น  ความรู้ในการวิเคราะห์และออกแบบระบบจึงมีความสำคัญ เพราะเป็นปัจจัยในการสร้างและพัฒนาระบบสารสนเทศ การวิเคราะห์ระบบเป็นเรื่องที่น่าสนใจ เพราะนักวิเคราะห์ระบบต้องติดต่อกับคนหลายคน ได้รู้ถึงการจัดการและการทำงานในองค์การ ทำให้เรามีความรู้เกี่ยวกับระบบคอมพิวเตอร์หลายแบบมากขึ้น

วันพุธที่ 3 กรกฎาคม พ.ศ. 2556

                                                                            

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

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

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

คอมพิวเตอร์ประกอบด้วย หน่วยรับเข้า หน่วยส่งออก หน่วยความจำ และหน่วยประมวลผล ในการทำงานของคอมพิวเตอร์จำเป็นต้องมีการดำเนินงานกับอุปกรณ์พื้นฐานที่จำเป็น ดังนั้นจึงต้องมีซอฟต์แวร์ระบบเพื่อใช้ในการจัดการระบบ หน้าที่หลักของซอฟต์แวร์ระบบประกอบด้วย
1.            ใช้ในการจัดการหน่วยรับเข้าและหน่วยส่งออก เช่น รับการกดแป้นต่าง ๆ บนแผงแป้นอักขระ ส่งรหัสตัวอักษรออกทางจอภาพหรือเครื่องพิมพ์ ติดต่อกับอุปกรณ์รับเข้า และส่งออกอื่น ๆ เช่น เมาส์ อุปกรณ์สังเคราะห์เสียง
2.            ใช้ในการจัดการหน่วยความจำ เพื่อนำข้อมูลจากแผ่นบันทึกมาบรรจุยังหน่วยความจำหลัก หรือในทำนองกลับกัน คือนำข้อมูลจากหน่วยความจำหลักมาเก็บไว้ในแผ่นบันทึก
3.            ใช้เป็นตัวเชื่อมต่อระหว่างผู้ใช้งานกับคอมพิวเตอร์ สามารถใช้งานได้ง่ายขึ้น เช่น การขอดูรายการสารบบในแผ่นบันทึก การทำสำเนาแฟ้มข้อมูล
ซอฟต์แวร์ระบบพื้นฐานที่เห็นกันทั่วไป แบ่งออกเป็นระบบปฏิบัติการ และตัวแปลภาษา ซอฟต์แวร์ทั่งสองประเภทนี้ทำให้เกิดพัฒนาการประยุกต์ใช้งานได้ง่ายขึ้น
·         ระบบปฏิบัติการ
ระบบปฏิบัติการ หรือที่เรียกย่อ ๆ ว่า โอเอส (Operating System : OS) เป็นซอฟต์แวร์ใช้ในการดูแลระบบคอมพิวเตอร์ เครื่องคอมพิวเตอร์ทุกเครื่องจะต้องมีซอฟต์แวร์ระบบปฏิบัติการนี้ ระบบปฏิบัติการที่นิยมใช้กันมากและเป็นที่รู้จักกันดีเช่นดอส (Disk Operating System : DOS) วินโดวส์ (Windows) โอเอสทู (OS/2) ยูนิกซ์ (UNIX)
1) ดอส เป็นซอฟต์แวร์จัดระบบงานที่พัฒนามานานแล้ว การใช้งานจึงใช้คำสั่งเป็นตัวอักษร ดอสเป็นซอฟต์แวร์ที่รู้จักกันดีในหมู่ผู้ใช้ไมโครคอมพิวเตอร์
2) วินโดวส์ เป็นระบบปฏิบัติการที่พัฒนาต่อจากดอส เพื่อเน้นการใช้งานที่ง่ายขึ้น สามารถทำงานหลายงานพร้อมกันได้ โดยงานแต่ละงานจะอยู่ในกรอบช่องหน้าต่างที่แสดงผลบนจอภาพ การใช้งานเน้นรูปแบบกราฟิก ผู้ใช้งานสามารถใช้เมาส์เลื่อนตัวชี้ตำแหน่งเพื่อเลือกตำแหน่งที่ปรากฏบนจอภาพ ทำให้ใช้งานคอมพิวเตอร์ได้ง่าย วินโดวส์จึงได้รับความนิยมในปัจจุบัน
3) โอเอสทู เป็นระบบปฏิบัติการแบบเดียวกับวินโดว์ส แต่บริษัทผู้พัฒนาคือ บริษัทไอบีเอ็ม เป็นระบบปฏิบัติการที่ให้ผู้ใช้สามารถใช้ทำงานได้หลายงานพร้อมกัน และการใช้งานก็เป็นแบบกราฟิกเช่นเดียวกับวินโดวส์
4) ยูนิกซ์ เป็นระบบปฏิบัติการที่พัฒนามาตั้งแต่ครั้งใช้กับเครื่องมินิคอมพิวเตอร์ ระบบปฎิบัติการยูนิกซ์เป็นระบบปฏิบัติการที่สามารถใช้งานได้หลายงานพร้อมกัน และทำงานได้หลาย ๆ งานในเวลาเดียวกัน ยูนิกซ์จึงใช้ได้กับเครื่องที่เชื่อมโยงและต่อกับเครื่อปลายทางได้หลายเครื่องพร้อมกัน
ระบบปฏิบัติการยังมีอีกมาก โดยเฉพาะระบบปฏิบัติการที่ใช้ในเครือข่ายคอมพิวเตอร์ เพื่อให้คอมพิวเตอร์ทำงานร่วมกันเป็นระบบ เช่น ระบบปฏิบัติการเน็ตแวร์ วินโดว์สเอ็นที
·         ตัวแปลภาษา
ในการพัฒนาซอฟต์แวร์จำเป็นต้องมีซอฟต์แวร์ที่ใช้ในการแปลภาษาระดับสูง เพื่อแปลภาษาระดับสูงให้เป็นภาษาเครื่อง ภาษาระดับสูงมีหลายภาษา ภาษาระดับสูงเหล่านี้สร้างขึ้นเพื่อให้ผู้เขียนโปรแกรมเขียนชุดคำสั่งได้ง่าย เข้าใจได้ ตลอดจนถึงสามารถปรับปรุงแก้ไขซอฟต์แวร์ในภายหลังได้
ภาษาระดับสูงที่พัฒนาขึ้นมาทุกภาษาจะต้องมีตัวแปลภาษาสำหรับแปลภาษา ภาษาระดับสูงซึ่งเป็นที่รู้จักและนิยมกันมากในปัจจุบัน เช่น ภาษาปาสคาล ภาษาเบสิก ภาษาซี และภาษาโลโก
1) ภาษาปาสคาล เป็นภาษาสั่งงานคอมพิวเตอร์ที่มีรูปแบบเป็นโครงสร้าง เขียนสั่งงานคอมพิวเตอร์เป็นกระบวนความ ผู้เขียนสามารถแบ่งแยกงานออกเป็นชิ้นเล็ก ๆ แล้วมารวมกันเป็นโปรแกรมขนาดใหญ่ได้
2) ภาษาเบสิก เป็นภาษาที่มีรูปแบบคำสั่งไม่ยุ่งยาก สามารถเรียนรู้และเข้าใจได้ง่าย มีรูปแบบคำสั่งพื้นฐานที่สามารถนำมาเขียนเรียงต่อกันเป็นโปรแกรมได้
3) ภาษาซี เป็นภาษาที่เหมาะสำหรับใช้ในการพัฒนาซอฟต์แวร์อื่น ๆ ภาษาซีเป็นภาษาที่มีโครงสร้างคล่องตัวสำหรับการเขียนโปรแกรมหรือให้คอมพิวเตอร์ติดต่อกับอุปกรณ์ต่าง ๆ
4) ภาษาโลโก เป็นภาษาที่เหมาะสำหรับการเรียนรู้และเข้าใจหลักการโปรแกรมภาษาโลโกได้รับการพัฒนาสำหรับเด็ก
นอกจากภาษาที่กล่าวถึงแล้ว ยังมีภาษาคอมพิวเตอร์ที่ใช้กันอยู่ในปัจจุบันอีกมากมายหลายภาษา เช่น ภาษาฟอร์แทรน ภาษาโคบอล ภาษาอาร์พีจี

การที่เทคโนโลยีคอมพิวเตอร์ได้พัฒนาก้าวหน้าอย่างรวดเร็ว โดยเฉพาะการที่มีคอมพิวเตอร์ขนาดเล็ก ทำให้มีการใช้งานคล่องตัวขึ้น จนในปัจจุบันสามารถนำคอมพิวเตอร์ขนาดเล็ก ติดตัวไปใช้งานในที่ต่าง ๆ ได้สะดวก
การใช้งานคอมพิวเตอร์ต้องมีซอฟตืแวร์ประยุกต์ ซึ่งอาจเป็นซอฟต์แวร์สำเร็จที่มีผู้พัฒนาเพื่อใช้งานทั่วไปทำให้ทำงานได้สะดวกขึ้น หรืออาจเป็นซอฟต์แวร์ใช้งานเฉพาะ ซึ่งผู้ใช้เป็นผู้พัฒนาขึ้นเองเพื่อให้เหมาะสมกับสภาพการทำงานของตน
·         ซอฟต์แวร์สำเร็จ
ในบรรดาซอฟต์แวร์ประยุกต์ที่มีใช้กันทั่วไป ซอฟต์แวร์สำเร็จ (package) เป็นซอฟต์แวร์ที่มีความนิยมใช้กันสูงมาก ซอฟต์แวร์สำเร็จเป็นซอฟต์แวร์ที่บริษัทพัฒนาขึ้น แล้วนำออกมาจำหน่าย เพื่อให้ผู้ใช้งานซื้อไปใช้ได้โดยตรง ไม่ต้องเสียเวลาในการพัฒนาซอฟต์แวร์อีก ซอฟต์แวร์สำเร็จที่มีจำหน่ายในท้องตลาดทั่วไป และเป็นที่นิยมของผู้ใช้มี 5 กลุ่มใหญ่ ได้แก่ ซอฟต์แวร์ประมวลคำ (word processing software) ซอฟต์แวร์ตารางทำงาน (spread sheet software) ซอฟต์แวร์จัดการฐานข้อมูล (data base management software) ซอฟต์แวร์นำเสนอ (presentation software) และซอฟต์แวร์สื่อสารข้อมูล (data communication software)
1) ซอฟต์แวร์ประมวลคำ เป็นซอฟต์แวร์ประยุกต์ใช้สำหรับการพิมพ์เอกสาร สามารถแก้ไข เพิ่ม แทรก ลบ และจัดรูปแบบเอกสารได้อย่างดี เอกสารที่พิมพ์ไว้จัดเป็นแฟ้มข้อมูล เรียกมาพิมพ์หรือแก้ไขใหม่ได้ การพิมพ์ออกทางเครื่องพิมพ์ก็มีรูปแบบตัวอักษรให้เลือกหลายรูปแบบ เอกสารจึงดูเรียบร้อยสวยงาม ปัจจุบันมีการเพิ่มขีดความสามารถของซอฟต์แวร์ประมวลคำอีกมากมาย ซอฟต์แวร์ประมวลคำที่นิยมอยู่ในปัจจุบัน เช่น วินส์เวิร์ด จุฬาจารึก โลตัสเอมิโปร
2) ซอฟต์แวร์ตารางทำงาน เป็นซอฟต์แวร์ที่ช่วยในการคิดคำนวณ การทำงานของซอฟต์แวร์ตารางทำงาน ใช้หลักการเสมือนมีโต๊ะทำงานที่มีกระดาษขนาดใหญ่วางไว้ มีเครื่องมือคล้ายปากกา ยางลบ และเครื่องคำนวณเตรียมไว้ให้เสร็จ บนกระดาษมีช่องให้ใส่ตัวเลข ข้อความหรือสูตร สามารถสั่งให้คำนวณตามสูตรหรือเงื่อนไขที่กำหนด ผู้ใช้ซอฟต์แวร์ตารางทำงานสามารถประยุกต์ใช้งานประมวลผลตัวเลขอื่น ๆ ได้กว้างขวาง ซอฟต์แวร์ตารางทำงานที่นิยมใช้ เช่น เอกเซล โลตัส
3) ซอฟต์แวร์จัดการฐานข้อมูล การใช้คอมพิวเตอร์อย่างหนึ่งคือการใช้เก็บข้อมูล และจัดการกับข้อมูลที่จัดเก็บในคอมพิวเตอร์ จึงจำเป็นต้องมีซอฟต์แวร์จัดการข้อมูล การรวบรวมข้อมูลหลาย ๆ เรื่องที่เกี่ยวข้องกันไว้ในคอมพิวเตอร์ เราก็เรียกว่าฐานข้อมูล ซอฟต์แวร์จัดการฐานข้อมูลจึงหมายถึงซอฟต์แวร์ที่ช่วยในการเก็บ การเรียกค้นมาใช้งาน การทำรายงาน การสรุปผลจากข้อมูล ซอฟต์แวร์จัดการฐานข้อมูลที่นิยมใช้ เช่น เอกเซส ดีเบส พาราด็อก ฟ๊อกเบส
4) ซอฟต์แวร์นำเสนอ เป็นซอฟต์แวร์ที่ใช้สำหรับนำเสนอข้อมูล การแสดงผลต้องสามารถดึงดูดความสนใจ ซอฟต์แวร์เหล่านี้จึงเป็นซอฟต์แวร์ที่นอกจากสามารถแสดงข้อความในลักษณะที่จะสื่อความหมายได้ง่ายแล้วจะต้องสร้างแผนภูมิ กราฟ และรูปภาพได้ ตัวอย่างของซอฟต์แวร์นำเสนอ เช่น เพาเวอร์พอยต์ โลตัสฟรีแลนซ์ ฮาร์วาร์ดกราฟิก
5) ซอฟต์แวร์สื่อสารข้อมูล ซอฟต์แวร์สื่อสารข้อมูลนี้หมายถึงซอฟต์แวร์ที่จะช่วยให้ไมโครคอมพิวเตอร์ติดต่อสื่อสารกับเครื่องคอมพิวเตอร์อื่นในที่ห่างไกล โดยผ่านทางสายโทรศัพท์ ซอฟต์แวร์สื่อสารใช้เชื่อมโยงต่อเข้ากับระบบเครือข่ายคอมพิวเตอร์ เช่น อินเทอร์เน็ต ทำให้สามารถใช้บริการอื่น ๆ เพิ่มเติมได้ สามารถใช้รับส่งไปรษณีย์อิเล็กทรอนิกส์ ใช้โอนย้ายแฟ้มข้อมูล ใช้แลกเปลี่ยนข้อมูล อ่านข่าวสาร นอกจากนี้ยังใช้ในการเชื่อมเข้าหามินิคอมพิวเตอร์หรือเมนเฟรม เพื่อเรียกใช้งานจากเครื่องเหล่านั้นได้ ซอฟต์แวร์สื่อสารข้อมูลที่นิยมมีมากมายหลายซอฟต์แวร์ เช่น โปรคอม ครอสทอล์ค เทลิก
·         ซอฟต์แวร์ใช้งานเฉพาะ
การประยุกต์ใช้งานด้วยซอฟต์แวร์สำเร็จมักจะเน้นการใช้งานทั่วไป แต่อาจจะนำมาประยุกต์โดยตรงกับงานทางธุรกิจบางอย่างไม่ได้ เช่นในกิจการธนาคาร มีการฝากถอนเงิน งานทางด้านบัญชี หรือในห้างสรรพสินค้าก็มีงานการขายสินค้า การออกใบเสร็จรับเงิน การควบคุมสินค้าคงคลัง ดังนั้นจึงต้องมีการพัฒนาซอฟต์แวร์ใช้งานเฉพาะสำหรับงานแต่ละประเภทให้ตรงกับความต้องการของผู้ใช้แต่ละราย
ซอฟต์แวร์ใช้งานเฉพาะมักเป็นซอฟต์แวร์ที่ผู้พัฒนาต้องเข้าไปศึกษารูปแบบการทำงานหรือความต้องการของธุรกิจนั้น ๆ แล้วจัดทำขึ้น โดยทั่วไปจะเป็นซอฟต์แวร์ที่มีหลายส่วนรวมกันเพื่อร่วมกันทำงาน ซอฟต์แวร์ใช้งานเฉพาะที่ใช้กันในทางธุรกิจ เช่น ระบบงานทางด้านบัญชี ระบบงานจัดจำหน่าย ระบบงานในโรงงานอุตสาหกรรม บริหารการเงิน และการเช่าซื้อ
ความต้องการของการใช้คอมพิวเตอร์ในงานทางธุรกิจยังมีอีกมาก ดังนั้นจึงต้องมีความต้องการผู้พัฒนาซอฟต์แวร์เพื่อพัฒนาซอฟต์แวร์ใช้งานเฉพาะต่าง ๆ อีกมากมาย