คำอธิบายรายวิชาในหลักสูตร SKE
วิกินี้รวบรวมคำอธิบายรายวิชาที่เปิดใหม่ในหลักสูตร SKE ฉบับแก้ไขปี 2555
เนื้อหา
- 1 01219111 การโปรแกรมเชิงวัตถุ I (Object-Oriented Programming I)
- 2 01219112 การโปรแกรมเชิงวัตถุ II (Object-Oriented Programming II)
- 3 01219245 กระบวนการพัฒนาซอฟต์แวร์เชิงบุคคล (Individual Software Development Process)
- 4 01219246 ปฏิบัติการกระบวนการพัฒนาซอฟต์แวร์เชิงบุคคล (Individual Software Development Process Laboratory)
- 5 01219212 ปฏิบัติการชนิดข้อมูลนามธรรม (Abstract Data Types Laboratory)
- 6 01219221 องค์กรและสถาปัตยกรรมคอมพิวเตอร์ (Computer Organization and Architecture)
- 7 01219323 ความน่าจะเป็นและสถิติสำหรับวิศวกรซอฟต์แวร์และความรู้ (Probability and Statistics for Software and Knowledge Engineers)
- 8 01219291 ทักษะการสื่อสารสำหรับวิศวกรซอฟต์แวร์และความรู้ (Communication Skills for Software and Knowledge Engineers)
- 9 01219211 ค่ายฝึกพัฒนาซอฟต์แวร์ (Software Development Training Camp)
- 10 01219311 ระบบปฏิบัติการสำหรับวิศวกรซอฟต์แวร์และความรู้ (Operating Systems for Software and Knowledge Engineer)
- 11 012192xx ปฏิบัติการระบบคอมพิวเตอร์ (Computer System Laboratory)
- 12 01219243 ข้อกำหนดและการออกแบบซอฟต์แวร์ (Software Specification and Design)
- 13 01219244 ปฏิบัติการข้อกำหนดและการออกแบบซอฟต์แวร์ (Software Specification and Design Laboratory)
- 14 01219271 วิศวกรรมความรู้และการจัดการความรู้ (Knowledge Engineering and Knowledge Management)
- 15 01219363 การแทนความรู้ (Knowledge Representation)
- 16 01219321 การสื่อสารข้อมูลและการโปรแกรมคอมพิวเตอร์เครือข่าย (Data Communication and Computers Networks Programming)
- 17 01219347 กระบวนการพัฒนาซอฟต์แวร์เชิงกลุ่มงาน (Workgroup Software Development Process)
- 18 01219348 ปฏิบัติการกระบวนการพัฒนาซอฟต์แวร์เชิงกลุ่มงาน (Workgroup Software Development Process Laboratory)
- 19 01219391 พลวัติเชิงกลุ่มและจิตวิทยา (Group Dynamics and Psychology)
- 20 01219449 แบบรูปและสถาปัตยกรรมซอฟต์แวร์ (Software Patterns and Architecture)
01219111 การโปรแกรมเชิงวัตถุ I (Object-Oriented Programming I)
หน่วยกิต: 3 (2-3-6)
การทำงานของโปรแกรมบนเครื่องคอมพิวเตอร์ พื้นฐานของภาษาเชิงวัตถุและระบบแวดล้อม ชนิดของข้อมูล การกำหนดค่าปริมาณข้อมูล;เงื่อนไขและลูป ข้อมูลแบบแอเรย์ อินพุทและเอาท์พุท ฟังก์ชั่น การเปรียบเทียบแบบแผนเชิงโพรซีดูรอลกับแบบแผนเชิงวัตถุ
Program execution on a computer; Introduction to object-oriented language and environments; data types; assignments; conditionals and loops; arrays; input and outputs; functions; comparison of procedural and object-oriented paradigms
01219112 การโปรแกรมเชิงวัตถุ II (Object-Oriented Programming II)
หน่วยกิต: 3 (2-3-6)
พื้นฐาน: 01219111
การสร้างและการออกแบบชนิดของข้อมูล การเรียกเมทอดแบบพลวัตร การทำเอนแคปซูเลชั่น การทำอินเฮอริแตนท์ การทำชนิดข้อมูลให้เป็นได้หลายรูปแบบ อินเตอร์เฟส การจัดการกับสภาวะยกเว้น เจเนริค รีเฟลคชั่น
Creating and designing data types; dynamic dispatching; encapsulation; inheritance; polymorphism; interfaces; exception handling; generics; reflections.
01219245 กระบวนการพัฒนาซอฟต์แวร์เชิงบุคคล (Individual Software Development Process)
หน่วยกิต: 3 (3-0-6)
พื้นฐาน: 01219111
กระบวนการพัฒนาซอฟต์แวร์ การจัดการเวลา การติดตามเวลา ช่วงเวลาในการวางแผนการผลิต การวางแผนการผลิต การจัดการเวลาส่วนบุคคล คำสัญญา และตารางนัดหมาย แผนงานโครงการ การค้นหาข้อผิดพลาด รายการตรวจสอบรหัส การคาดคะเนข้อบกพร่อง เศรษฐศาสตร์ของการกำจัดข้อบกพร่อง ข้อบกพร่องจากการออกแบบ คุณภาพผลิตภัณฑ์และกระบวนการ คำสัญญาเชิงบุคคลที่มีต่อคุณภาพ
Software development process, time management, tracking time, period and production planning, managing personal time, commitments and schedules, project plan, finding defects, code review checklist, projecting defects, economics of defect removal, design defects, product quality, process and personal commitment to quality.
01219246 ปฏิบัติการกระบวนการพัฒนาซอฟต์แวร์เชิงบุคคล (Individual Software Development Process Laboratory)
หน่วยกิต: 1 (0-1-2)
พื้นฐาน : 01219245 หรือพร้อมกัน
ปฏิบัติการสำหรับวิชา 01219245 กระบวนการพัฒนาซอฟต์แวร์เชิงบุคคล
Laboratory for 01219245 Individual Software Development Process.
01219212 ปฏิบัติการชนิดข้อมูลนามธรรม (Abstract Data Types Laboratory)
หน่วยกิต: 1 (0-1-2)
พื้นฐาน : 01204212 หรือพร้อมกัน
ปฏิบัติการสำหรับวิชา 01204212 ชนิดข้อมูลนามธรรมและการแก้ปัญหา
Laboratory for 01204212 Abstract Data Types and Problem Solving
01219221 องค์กรและสถาปัตยกรรมคอมพิวเตอร์ (Computer Organization and Architecture)
หน่วยกิต: 3 (3-0-6)
องค์กรและสถาปัตยกรรมคอมพิวเตอร์เบื้องต้น เรจิสเตอร์ หน่วยคำนวณและตรรกะ หน่วยควบคุม การแทนข้อมูลและคำสั่งในเครื่อง ภาษาเครื่อง ภาษาแอสเซมบลี ระบบรับเข้า/ส่งออก วิวัฒนาการคอมพิวเตอร์ สถาปัตยกรรมซีพียู ชุดคำสั่ง การออกแบบเอแอลยู การควบคุมแบบฮาร์ดไวร์และโปรแกรมจุลภาค ลำดับชั้นของหน่วยความจำ หน่วยความจำเสมือน หน่วยความจำแคช
Basic computer organization and architecture, registers, arithmetic-logic unit, control unit, machine representation of data and instructions, machine language, assembly language, input/output system, computer evolution, CPU architecture, instruction sets, ALU design, hardwired and microprogrammed control, memory hierarchies, virtual memory, cache memory.
01219323 ความน่าจะเป็นและสถิติสำหรับวิศวกรซอฟต์แวร์และความรู้ (Probability and Statistics for Software and Knowledge Engineers)
หน่วยกิต: 3 (3-0-6)
01219291 ทักษะการสื่อสารสำหรับวิศวกรซอฟต์แวร์และความรู้ (Communication Skills for Software and Knowledge Engineers)
หน่วยกิต: 3 (3-0-6)
หลักการทั่วไปของการสื่อสาร การสื่อสารภายในทีมพัฒนาซอฟต์แวร์ การสื่อสารกับลูกค้า การจัดการและดำเนินการประชุมรูปแบบต่าง ๆ เช่น การประชุมกับฝ่ายธุรกิจ การประชุมเพื่อวางแผน การประชุมแจ้งสถานะ และการประชุมเพื่อทบทวน เป็นต้น การฝึกปฏิบัติการในสถานการณ์ต่าง ๆ ที่เกี่ยวข้องกับรายวิชา
Concepts of communication. Communication within the teams. Communication with customers. Meeting management and handling for various types of meetings, including business meetings, planning meetings, status meetings, and retrospective meetings. Practices in various situations related to topics in the course.
01219211 ค่ายฝึกพัฒนาซอฟต์แวร์ (Software Development Training Camp)
หน่วยกิต: 1 (0-3-2)
ค่ายเพิ่มพูนทักษะการพัฒนาโปรแกรมไม่ต่ำกว่า 48 ชั่วโมง
Program development skill enhancement camp, at least 48 person-hours.
01219311 ระบบปฏิบัติการสำหรับวิศวกรซอฟต์แวร์และความรู้ (Operating Systems for Software and Knowledge Engineer)
หน่วยกิต: 3 (3-0-6)
พื้นฐาน : 01219221
แนวคิดพื้นฐานของการต่อประสานซอฟต์แวร์ขนาดใหญ่กับระบบปฏิบัติการการต่อประสานระหว่างซอฟต์แวร์และฮาร์ดแวร์ การจัดการและการจัดกำหนดการกระบวนการ การจัดการรับเข้า/ส่งออก การจัดการหน่วยความจำระบบแฟ้ม ความมั่นคงของระบบคอมพิวเตอร์
Basic concepts of interfacing between large-scale software and operating systems, software and hardware interfacting, process management and scheduling, input/output management, memory management, file systems, computer system security.
012192xx ปฏิบัติการระบบคอมพิวเตอร์ (Computer System Laboratory)
หน่วยกิต: 3 (3-0-6)
พื้นฐาน : 01219311 หรือพร้อมกัน
01219243 ข้อกำหนดและการออกแบบซอฟต์แวร์ (Software Specification and Design)
หน่วยกิต: 3 (3-0-6)
การพัฒนาข้อกำหนดซอฟต์แวร์ สถาปัตยกรรมและการออกแบบการวิเคระห์ซอฟต์แวร์ สถาปัตยกรรมซอฟต์แวร์ แบบรูป การออกแบบ การออกแบบเชิงสถาปัตยกรรมและการออกแบบละเอียด
Development of software specifications; architecture and desing of software analysis; architecture; design patterns; architecture design and detailed design.
01219244 ปฏิบัติการข้อกำหนดและการออกแบบซอฟต์แวร์ (Software Specification and Design Laboratory)
หน่วยกิต: 1 (0-1-2)
พื้นฐาน : 219243 หรือพร้อมกัน
ปฏิบัติการสำหรับวิชา 01219243 ข้อกำหนดและการออกแบบซอฟต์แวร์
Laboratory for 01219243 Software Specification and Design.
01219271 วิศวกรรมความรู้และการจัดการความรู้ (Knowledge Engineering and Knowledge Management)
หน่วยกิต: 3 (3-0-6)
พื้นฐาน: 01204351
ลักษณะเฉพาะของความรู้ แนวคิดและกระบวนการเก็บเกี่ยวความรู้ แหล่งความรู้ สถาปัตยกรรมของระบบอิงความรู้ เครื่องมือสำหรับวิศวกรรมความรู้ การเรียนรู้และสมรรถนะในเศรษฐกิจความรู้ วัฏจักรของความรู้ ความหลากหลายของงานด้านความรู้ โอกาสในการจัดการความรู้ในองค์กรขนาดใหญ่ กลศาสตร์การจัดการความรู้ ความสัมพันธ์ระหว่างวัฒนธรรมองค์กรกับการจัดการความรู้
Knowledge characteristics, concept, and process of knowledge acquisition, knowledge sources architecture of knowledge-based system, knowledge engineering tools, learning and performance in the knowledge economy, knowledge cycle, varieties of knowledge work, knowledge management opportunities in large enterprise, mechanics of knowledge management, relations between organizational culture and knowledge management.
01219363 การแทนความรู้ (Knowledge Representation)
หน่วยกิต: 3 (3-0-6)
การแทนความรู้และการหาเหตุผล หลักการพื้นฐานในการแทนความรู้ ข้อได้เปรียบและข้อจำกัดของระบบฐานความรู้แบบกฎเกณฑ์ แบบเฟรมและแบบตรรกศาสตร์ การคำนวณเชิงเพรดิเคต โครงข่ายความหมาย การแทนความรู้โดยใช้ภววิทยา การแทนความรู้แบบคลุมเครือ
Knowledge representation and its reasoning tasks, basic principles of knowledge representation, advantage and limitations of rule-based systems, frame-based systems and logic-based systems; predicate calculus; semantic networks; ontology of knowledge representation; fuzzy representation.
01219321 การสื่อสารข้อมูลและการโปรแกรมคอมพิวเตอร์เครือข่าย (Data Communication and Computers Networks Programming)
หน่วยกิต: 3 (3-0-6)
เครือข่ายการสื่อสารข้อมูล การส่งข้อมูล การควบคุมเส้นทางเชื่อมโยงข้อมูล เครือข่ายคอมพิวเตอร์เฉพาะที่และบริเวณกว้าง สถาปัตยกรรมการสื่อสารและโพรโตคอล การเชื่อมโยงระหว่างงานประยุกต์ในเครือข่าย การโปรแกรมเชิงบริการ
Data communication network; data transmission; data link controls; local area network and wide area network; communication architecture and protocols; service-oriented programming.
01219347 กระบวนการพัฒนาซอฟต์แวร์เชิงกลุ่มงาน (Workgroup Software Development Process)
หน่วยกิต: 3 (3-0-6)
แนวคิดของกลุ่มงาน ตรรกะของกระบวนการซอฟต์แวร์เชิงกลุ่มงาน กลยุทธ์การพัฒนา แผนการพัฒนา การนิยามความต้องการ การออกแบบ การทำให้เกิดผลและการทดสอบ ระบบโดยกลุ่มงาน บทบาทของผู้นำบทบาทของผู้จัดการพัฒนา ผู้จัดการแผนงาน ผู้จัดการด้านคุณภาพและกระบวนการและผู้จัดการฝ่ายสนับสนุน
Concept of workgroup, logic of workgroup software process, development strategy, development plan, defining the requirements, role of reader, development manager, design, implementation and system testing by workgroup, Leader role of team development manager role, planning manager role, quality and process manager, and support manager role.
01219348 ปฏิบัติการกระบวนการพัฒนาซอฟต์แวร์เชิงกลุ่มงาน (Workgroup Software Development Process Laboratory)
หน่วยกิต: 1 (0-1-2)
พื้นฐาน : 01219347 หรือพร้อมกัน
ปฏิบัติการสำหรับวิชา 01219347 กระบวนการพัฒนาซอฟต์แวร์เชิงกลุ่มงาน
Laboratory for 01219347 Workgroup Software Development Process.
01219391 พลวัติเชิงกลุ่มและจิตวิทยา (Group Dynamics and Psychology)
หน่วยกิต: 3 (2-3-6)
พฤติกรรมของบุคคล การรู้คิดในระดับปัจเจก ความซับซ้อนของปัญหาในเชิงการรู้คิด พลวัติของการทำงานเป็นกลุ่ม การจูงใจ ภาวะผู้นำ การบริหารความขัดแย้ง การปฏิสัมพันธ์กับผู้มีส่วนได้เสีย ความไม่แน่นอนและความกำกวมในการพัฒนาซอฟต์แวร์ การจัดการกับความไม่แน่นอนและความกำกวม การฝึกปฏิบัติการในสถานการณ์ต่าง ๆ ที่เกี่ยวข้องกับรายวิชา
Individual behavior. Individual cognition. Cognitive problem complexity. Team dynamics. Motivation. Leadership. Conflict management. Interacting with stakeholders. Uncertainty and ambiguity in software development. Dealing with uncertainty and ambiguity. Practices in various situations related to topics in the course.
01219449 แบบรูปและสถาปัตยกรรมซอฟต์แวร์ (Software Patterns and Architecture)
หน่วยกิต: 3 (3-0-6)
กระบวนการสถาปัตยกรรมซอฟต์แวร์ ลักษณะประจำเชิงคุณภาพของซอฟต์แวร์ การเขียนเอกสารสถาปัตยกรรมซอฟต์แวร์ สถาปัตยกรรมที่ขับเคลื่อนด้วยแบบจำลอง สถาปัตยกรรมเชิงการบริการ แบบรูปการออกแบบเชิงสถาปัตยกรรม แบบรูปสำหรับวัตถุแบบเครือข่ายที่ทำงานจวบกัน แบบรูปสำหรับระบบองค์ แบบรูปสำหรับระบบอิง อินเทอร์เน็ต
Software architecture process, software quality attributes, software architecture documentation, model-driven architecture, service-oriented architecture, architectural design patterns, concurrent and networked object patterns, enterprise system patterns, internet-based system patterns.