410 likes | 533 Views
Software Technology. download at http://bcd.boxchart.com. เนื้อหา. บทนำ ซอฟต์แวร์ระบบ ซอฟต์แวร์ประยุกต์ การพัฒนาซอฟต์แวร์ การจัดซื้อซอฟต์แวร์ กฎหมายลิขสิทธิ์ของซอฟต์แวร์. ซอฟต์แวร์คืออะไร ?.
E N D
Software Technology download at http://bcd.boxchart.com Seminar in Business Computer
เนื้อหา • บทนำ • ซอฟต์แวร์ระบบ • ซอฟต์แวร์ประยุกต์ • การพัฒนาซอฟต์แวร์ • การจัดซื้อซอฟต์แวร์ • กฎหมายลิขสิทธิ์ของซอฟต์แวร์ Seminar in Business Computer
ซอฟต์แวร์คืออะไร? • ซอฟต์แวร์ (Software) หมายถึง ชุดคำสั่ง หรือโปรแกรมที่บอกให้ส่วนต่าง ๆ ของคอมพิวเตอร์ทำงาน (Telling the machine what to do) • ซอฟต์แวร์ หมายความรวมไปถึงการควบคุมการทำงานของอุปกรณ์แวดล้อมต่างๆ เช่น Modem, CD ROM, Drive เป็นต้น • ซอฟต์แวร์ เป็นสิ่งที่มองไม่เห็นจับต้องไม่ได้ แต่รับรู้การทำงานของมันได้ ซึ่งต่างกับ ฮาร์ดแวร์ (Hardware) ที่สามารถจับต้องได้ Seminar in Business Computer
ซอฟต์แวร์คืออะไร? • ซอฟต์แวร์เป็นศัพท์ที่มีความหมายกว้างขวางมาก • บางครั้งอาจรวมถึง ผลลัพธ์ต่างๆ เช่น ผลการพิมพ์ที่ได้จากเครื่องคอมพิวเตอร์ เอกสารการพัฒนาซอฟต์แวร์ ตลอดจนคู่มือการใช้ ในการสั่งงานใดๆ ให้เครื่องคอมพิวเตอร์ทำงานตามที่เราต้องการนั้นต้องอาศัยซอฟต์แวร์เป็นตัวเชื่อมระหว่างคน หรือผู้ใช้เครื่องคอมพิวเตอร์กับเครื่องคอมพิวเตอร์ Seminar in Business Computer
Software ความหมายของซอฟต์แวร์ • เป็นส่วนสำคัญของระบบคอมพิวเตอร์ คอมพิวเตอร์จะทำอะไรไม่ได้เลยถ้าขาดชุดคำสั่ง เพราะคอมพิวเตอร์เป็นเพียงอุปกรณ์ชิ้นหนึ่งที่จะไม่มีการตัดสินใจ ไม่มีการคำนวณ หรือจัดการงานใด ๆ Seminar in Business Computer
วิวัฒนาการของซอฟต์แวร์วิวัฒนาการของซอฟต์แวร์ • ยุคแรก (ค.ศ.1950-1965) • เสียบสายไฟฟ้าลงในแผงควบคุม • บันทึกคำสั่งลงในเทปกระดาษและบัตรเจาะรู • ใช้คำสั่งที่เป็นภาษาเครื่อง • ไม่เน้นเรื่องหลักเกณฑ์และเทคนิคการเขียนโปรแกรม • เริ่มคิดจัดทำภาษาสัญญลักษณ์และภาษาชั้นสูง • ต้นยุคเป็น Batch processing และพัฒนาไปเป็น Online processing Seminar in Business Computer
Batch / Online Processing • Batch processing • Transactions accumulated and stored until processing • On-line processing • Transactions are entered directly into computer and processed immediately Seminar in Business Computer
Batch / Online Processing Seminar in Business Computer
วิวัฒนาการของซอฟต์แวร์วิวัฒนาการของซอฟต์แวร์ • ยุคที่สอง (ค.ศ.1960-1975) • มีการพัฒนาการทำงานแบบ Online อย่างกว้างขวาง • ผู้ขายคอมพิวเตอร์เริ่มเปลี่ยนจากการให้ซอฟต์แวร์ฟรีมาเป็นการเช่า มีการลงทุนตั้งบริษัทซอฟต์แวร์เพิ่มมากขึ้น • เริ่มมองปัญหาการพัฒนาซอฟต์แวร์ที่ไม่เป็นระบบและไม่มีหลักการที่ดีมากขึ้น • มีงานพัฒนาซอฟต์แวร์ที่คั่งค้างไม่ทันกับความต้องการของผู้ใช้ Seminar in Business Computer
วิวัฒนาการของซอฟต์แวร์วิวัฒนาการของซอฟต์แวร์ • ยุคที่สาม (ค.ศ.1975-1985) • ฮาร์ดแวร์เป็นระบบเครือข่าย การประมวลผลแบบกระจาย • มีการพัฒนาไมโครโพรเซสเซอร์ • มีการเผยแพร่คิดหลักการโปรแกรมและเทคนิคโครงสร้าง • ไมโครคอมพิวเตอร์ทำให้ขายซอฟต์แวร์ได้กว้างขวาง • งบประมาณทางด้านซอฟต์แวร์เพิ่มมากขึ้น Seminar in Business Computer
Client / Server Computing Seminar in Business Computer
วิวัฒนาการของซอฟต์แวร์วิวัฒนาการของซอฟต์แวร์ • ยุคที่สี่ (ค.ศ.1985-ปัจจุบัน) • เกิดแนวคิดเรื่องภาษายุคที่ 4 (4th Generation Language) • พัฒนาโปรแกรม Editor ให้ใช้แก้ไขคำสั่งในโปรแกรมได้ดีขึ้น • Logic Programming เช่น Prolog • Object-oriented Programming เช่น Smalltalk • Functional Programming เช่น Lisp Seminar in Business Computer
Applications Software ผู้ใช้ (User) System Software Hardware ประเภทซอฟต์แวร์ • ซอฟต์แวร์ระบบ (System Software) • ซอฟต์แวร์ประยุกต์ (Application Software) Seminar in Business Computer
โปรแกรมระบบ (System Software) • ชุดคำสั่งที่เขียนไว้เป็นคำสั่งสำเร็จรูปโดยผู้ผลิตเครื่องคอมพิวเตอร์ และมีมา พร้อมแล้วจากโรงงานผลิต เพื่อการปฏิบัติควบคุม และมีความยืดหยุ่นในการประมวลผลของเครื่องคอมพิวเตอร์ ซึ่งหน้าที่ที่สำคัญ • ควบคุมคอมพิวเตอร์ • เป็นตัวกลางการทำงานระหว่างคอมพิวเตอร์และโปรแกรมประยุกต์ Seminar in Business Computer
System Software แบบต่าง ๆ • System Management Programs • ระบบปฏิบัติการ (Operating System) • ระบบการจัดการฐานข้อมูล (DataBase Management System) • System Development Programs • Programming Language Translators • Computer Aided Software Engineering • System Support Programs • System Utilities, Performance Monitor and Security Monitor Seminar in Business Computer
ระบบปฏิบัติการ (Operating System) • Supervisory Programs หรือ Monitors Programs นับว่าเป็นซอฟต์แวร์ที่มีความสลับซับซ้อนมาก ทำหน้าที่เป็นตัวกลางเชื่อมระหว่างซอฟต์แวร์กับฮาร์ดแวร์ ระบบปฏิบัติการอยู่เบื้องหลังการทำงานของโปรแกรมระบบงานต่างๆ ให้ติดต่อกับฮาร์ดแวร์ และผู้ใช้เครื่องคอมพิวเตอร์อย่างมีประสิทธิภาพ • ควบคุมและดูแลตรวจตราทุกๆ การทำงานของฮาร์ดแวร์ในระบบคอมพิวเตอร์ นับตั้งแต่เปิดเครื่องคอมพิวเตอร์ จนกระทั่งปิดเครื่องคอมพิวเตอร์ Seminar in Business Computer
หน้าที่ของระบบปฏิบัติการหน้าที่ของระบบปฏิบัติการ • กำหนดลำดับการทำงานแต่ละงาน • ควบคุมการทำงาน แบบ Multi-programming • ควบคุมการรับข้อมูล และแสดงผลลัพธ์โดยผ่านอุปกรณ์ต่างๆ • ควบคุมการโยกย้ายข้อมูล • จัดสรรที่สำหรับเก็บบันทึกข้อมูลของหน่วยความจำหลัก • จัดสรรเวลาในหน่วย CPU • ทำหน้าที่เป็นซอฟต์แวร์ ที่ควบคุมซอฟต์แวร์อื่นๆ Seminar in Business Computer
Single-program Execute and Multiprograming Seminar in Business Computer
Multitasking and Virtual Storage Multitasking • Multiprogramming capability of single-user operating systems Virtual Storage • Handles programs more efficiently by dividing the programs into small fixed or variable length Seminar in Business Computer
Virtual Storage Seminar in Business Computer
ระบบปฏิบัติการ • ส่วนติดต่อกับผู้ใช้ (user interface) เป็นส่วนที่อำนวยความสะดวกในการติดต่อกับคอมพิวเตอร์ มี 2 แบบ • Text-based หรือ Command Line Interface (CLI) โดยใช้พิมพ์ข้อความเป็นคำสั่ง • Graphic-based user interface (GUI) • ใช้เมาส์ • มีรายการคำสั่ง (menu command) • มีหน้าต่าง ไอคอน และ เครื่องมือทางกราฟฟิกอื่น ๆ • ตัวอย่าง MS-DOS, Windows, OS/2, UNIX etc. Seminar in Business Computer
ภาษาคอมพิวเตอร์ • เราใช้ภาษาไทย ภาษาอังกฤษ ภาษาจีน และภาษาอื่นๆ อีกมากเพื่อสื่อสารระหว่างมนุษย์ ภาษามนุษย์ที่ใช้กันก็มีกฎเกณฑ์ของภาษามีโครงสร้างที่แน่นอน ผู้คิดค้นคอมพิวเตอร์ได้นำความรู้ด้านภาษาที่มนุษย์ใช้มาคิดค้นใช้กับคอมพิวเตอร์ จึงเกิดภาษาคอมพิวเตอร์ (Computer Language) ซึ่งถือว่าเป็นภาษาประดิษฐ์ (Artificial Language) ที่รวบรวมคำสั่งเฉพาะสำหรับการประมวลผลของคอมพิวเตอร์ Seminar in Business Computer
ภาษาเครื่องและล่ามแปลภาษาภาษาเครื่องและล่ามแปลภาษา • ภาษาเครื่อง (Machine Language) คือภาษาที่เครื่องคอมพิวเตอร์เข้าใจ โดยมีโครงสร้าง พื้นฐาน เป็นเลขฐานสอง • แต่การสื่อสารระหว่างมนุษย์และเครื่องคอมพิวเตอร์โดยตรงจึงเป็นไปได้ด้วยความยากลำบาก • มนุษย์จึงพยายามสร้างเครื่องมือที่จะมาช่วยในการแปลภาษาที่มนุษย์เข้าใจให้คอมพิวเตอร์เข้าใจด้วย • เครื่องมือดังกล่าวเรียกว่าล่ามแปลภาษา (Language Translator) Seminar in Business Computer
ล่ามแปลภาษา (Language Translator) • คำสั่งที่มนุษย์สร้างขึ้นหรือเขียนขึ้นมา จะเรียกว่า (Source Code) • เมื่อนำ Source Code มาผ่านกระบวนการแปลภาษาของล่ามแปลภาษา ก็จะได้เป็น Object Code • และผ่านขั้นตอนอีกเล็กน้อยก็จะได้เป็นภาษาเครื่อง (Machine Language) Source Code Lang Translator Object Code Seminar in Business Computer
การทำงาน/ประเภทของล่ามแปลภาษาการทำงาน/ประเภทของล่ามแปลภาษา Source Code Lang Translator Object Code Link Compiler Interpreter .EXE .COM ใช้ Runtime ไม่ใช้ Runtime Seminar in Business Computer
ภาษาคอมพิวเตอร์ • ภาษารุ่นที่ 1 • ภาษาเครื่อง (Machine Language) ใช้อักขระ 0 และ 1 • ภาษาสัญลักษณ์และภาษาแอสแซมลี (Symbolic and Assembly) • ผู้พัฒนาโปรแกรมต้องทราบขั้นตอนการทำงานภายในตัวประมวลผลโดยละเอียด • ภาษาที่ใช้มีมากเท่ากับจำนวนตัวประมวลผลที่มีชุดของคำสั่ง (Instruction set) Seminar in Business Computer
ภาษาคอมพิวเตอร์ • ภาษารุ่นที่ 2 • การพัฒนาภาษาเขียนโปรแกรม (Programming Language) • จอห์น เบคัส (1954) ภาษาFORTRAN • CODASYL (1962) ภาษาCOBOL • ซูริค (1958-60) ภาษาALGOL • จอห์น เคมเมนี และ ธอมัส เดิรตส์ ม.ดาร์ทเมิร์ท ภาษาBASIC Seminar in Business Computer
ภาษาคอมพิวเตอร์ • ภาษารุ่นที่ 3 • เป็นการปรับปรุงโครงสร้างขีดความสามารถของภาษารุ่นที่ 2 • ภาษาระดับสูงใช้งานทั่วไป มีต้นแบบมาจาก ALGOL ได้แก่ PL/I, Pascal, Modula-2, C, Ada ใช้กว้างขวางในงานทางวิทยาศาสตร์ ธุรกิจ และระบบงาน • ภาษาสำหรับงานพิเศษ มีรูปแบบแปลกเหมาะกับงานเฉพาะเรื่อง ได้แก่ Lisp, Prolog, Smalltalk, APL, FORTH • ภาษารุ่นที่ 1-3 ผู้ใช้ต้องทราบลำดับขั้นตอนในการทำงาน (Procedural language) Seminar in Business Computer
ภาษาคอมพิวเตอร์ • ภาษารุ่นที่ 4 • ภาษารุ่นที่ 4 เป็นการระบุผลลัพธ์ที่ผู้ใช้ต้องการ ไม่ได้ระบุขั้นตอน (Non-procedural language) • ภาษาสอบถาม (Query Language) ออกแบบสำหรับใช้ในการสืบค้นข้อมูล เช่น SQL (Structure Query Language) โดย อี. เอฟ. คอดด์ • ตัวสร้างโปรแกรม (Program Generator) ใช้สร้างโปรแกรมภาษาเป็นภาษารุ่นที่ 3 จากคำสั่งง่าย ๆ มักทำงานร่วมกับโปรแกรมจัดการฐานข้อมูลและมีส่วนที่กำหนดลักษณะจอภาพด้วย Seminar in Business Computer
การเขียนคำสั่งแบบต่าง ๆ • ถ้าพิจารณาลักษณะการสั่งงานคอมพิวเตอร์ โดยอาศัยการเขียนคำสั่งเป็นหลัก ก็อาจจำแนกการสั่งงานคอมพิวเตอร์ได้ออกเป็นกลุ่มๆ ดังนี้ • คอมไพเลอร์ (Compiler) • SQL • JCL, script, Batch Command • MACRO Language Seminar in Business Computer
CASE • Computer Aided Software Engineering เครื่องมือที่เป็นทั้งชนิดอัตโนมัติและกึ่งอัตโนมัติที่ช่วยสนับสนุนวิธีการต่าง ๆ ทางวิศวกรรมซอฟต์แวร์ • โปรแกรมบรรณาธิการ (Editor Program) • โปรแกรมสร้างแผนภาพและผังงาน • พจนานุกรมข้อมูล เป็นต้น • เครื่องมือพวกนี้นำมารวมกันทำงานเป็นระบบได้ Seminar in Business Computer
Database Management System • ซอฟต์แวร์ที่ทำหน้าที่จัดการข้อมูล ระเบียนข้อมูล และแฟ้มข้อมูลต่าง ๆในระบบคอมพิวเตอร์ เพื่อให้ผู้ใช้สะดวกในการค้นหาข้อมูล • การจัดการระเบียนข้อมูล เชื่อมโยงระเบียนข้อมูล • การคุ้มครอง ป้องกันระเบียนข้อมูล • การจัดทำดัชนีของระเบียน Seminar in Business Computer
Application Software • ซอฟต์แวร์ประยุกต์ คือ ซอฟต์แวร์หรือโปรแกรมซึ่งเขียนขึ้นเพื่อการทำงานเฉพาะอย่างที่เราต้องการ อาจแบ่งได้เป็นซอฟต์แวร์สำหรับงานทั่วไป และซอฟต์แวร์สำหรับงานเฉพาะด้าน เช่น โปรแกรมการทำบัญชีจ่ายเงินเดือน (Payroll Program) ของแต่ละบริษัท การคำนวณดอกเบี้ยเงินฝากหรือเงินกู้สำหรับงานธนาคาร (Interest Computation) การทำสินค้าคงคลัง (Stock) Seminar in Business Computer
ประเภทของ Application Software • เป็นโปรแกรมที่ใช้ทำงานเฉพาะงานใดงานหนึ่ง • แบบทั่วไป (General purpose application programs) • แบบเฉพาะกิจ (Special purpose application programs) Seminar in Business Computer
Generalized Application Software • นำไปใช้ประโยชน์ได้กว้างขวางกับงานชนิดต่าง ๆ • Word processor (MS word Cuword etc.) • Spreadsheet (MS excel Lotus etc.) • Data manager (dBASE MS Access SPSS) • Graphics and presentation (Director MS power point Paint) • Communications (Dialup Networking Telnet ) Seminar in Business Computer
Specialized Application Software • ใช้ทำงานเฉพาะอย่าง ไม่สามารถเปลี่ยนหรือตั้งโปรแกรมให้ทำงานอย่างอื่น ได้ • Business-oriented ซอฟต์แวร์ทางบัญชี การเงิน หรือ การลงทุน • Engineering and Scientific เช่น Computer Aided Design • Education เช่น Computer Assisted Instruction • Entertainment เช่น โปรแกรมเกมส์ต่าง ๆ Seminar in Business Computer
End-user Computing Software • ซอฟต์แวร์เพิ่มผลผลิตของบุคคล (Personal Productivity S/W) • ซอฟต์แวร์เพิ่มผลผลิตของกลุ่มงาน (Workgroup Productivity S/W) • ซอฟต์แวร์เพิ่มผลผลิตขององค์กร (Enterprise Productivity S/W) Seminar in Business Computer
Word Processing Vs Desktop Publishing Seminar in Business Computer