2110506 Software-Defined Systems I
ภาพรวมวิชา วิธีวัดผล และสารบัญเนื้อหาแต่ละคาบ
วิชานี้ฝึกให้คุณอธิบายได้ว่า Software-Defined Systems (ระบบที่กำหนดโดยซอฟต์แวร์) คืออะไร ใช้งานมันเป็น และออกแบบกับดูแลมันเองได้
ข้อมูลในหน้านี้มาจากไหน
วันที่ ตัวเลข และกติกาทุกอย่างในหน้านี้มาจากประมวลรายวิชา (Syllabus) กับสไลด์ Administrivia ของวิชาเท่านั้น ส่วนคำอธิบายศัพท์สั้น ๆ เป็นความหมายทั่วไป ใส่ไว้ให้อ่านตารางเรียนรู้เรื่อง ประมวลรายวิชาไม่ได้ให้นิยามศัพท์พวกนี้ไว้ ของจริงจะอยู่ในหน้าสรุปของแต่ละคาบ
ข้อมูลวิชา
| หัวข้อ | รายละเอียด |
|---|---|
| รหัสวิชา | 2110506 |
| ชื่อวิชา | Software-Defined Systems I |
| หน่วยกิต | 3 |
| สถานภาพของวิชา | วิชาบังคับ |
| หลักสูตร | วิศวกรรมคอมพิวเตอร์และเทคโนโลยีดิจิทัล ระดับปริญญาบัณฑิต |
| คณะ / ภาควิชา | คณะวิศวกรรมศาสตร์ ภาควิชาวิศวกรรมคอมพิวเตอร์ จุฬาลงกรณ์มหาวิทยาลัย |
| ภาคการศึกษา | ภาคต้น ปีการศึกษา 2569 (First Semester 2026) |
| เวลาเรียน | Section CEDT วันพฤหัสบดี 13:00-16:00 เรียน on-site ที่อาคาร Chulapat 4 |
| ชั่วโมงสอนต่อสัปดาห์ | 3 |
| วิชาที่ต้องเรียนมาก่อน | 2110313 และ 2110471 |
| ผู้สอน | ผศ.ดร.กุลวดี ศรีพานิชกุลชัย, รศ.ดร.วีระ เหมืองสิน, ผศ.ดร.ณัฐวุฒิ หนูไพโรจน์, รศ.ดร.กุลธิดา โรจน์วิบูลย์ชัย |
| อีเมลติดต่อ | kunwadee (at) cp.eng.chula.ac.th |
สไลด์ Administrivia ระบุว่าวิชานี้อนุญาตให้เฉพาะนิสิตของภาควิชาวิศวกรรมคอมพิวเตอร์ลงทะเบียนเท่านั้น
ชื่อวิชาในสองเอกสารไม่ตรงกันเล็กน้อย ประมวลรายวิชาเขียนว่า Software-Defined Systems I ส่วนสไลด์ Administrivia เขียนว่า Software-Defined Systems ไม่มีเลข I ทั้งสองที่หมายถึงวิชา 2110506 ตัวเดียวกัน
วิชานี้เรียนอะไร
ประมวลรายวิชาระบุขอบเขตเนื้อหาไว้ 7 เรื่อง
- Software-defined architectures
- Software-defined servers
- Software-defined networks
- Software-defined storage
- Cloud and edge computing architectures
- Containers and service orchestration technology
- Infrastructure as code
สไลด์ Administrivia วางกรอบของวิชาไว้ด้วยคำสี่คำ คือ Compute (Containers), Orchestration, Compute/Storage Resources (Cloud) และ Networks/Connectivity
สมัยก่อน ถ้าจะเพิ่มเซิร์ฟเวอร์หนึ่งเครื่อง ต้องซื้อเครื่องจริง ยกไปวางในห้องเครื่อง เสียบสายไฟ เสียบสาย network แล้วตั้งค่าทีละอย่างด้วยมือ คำว่า software-defined คือการย้ายงานพวกนี้ไปอยู่ในไฟล์และคำสั่ง แล้วให้ซอฟต์แวร์ไปจัดการเครื่องกับสายให้แทน เหมือนเปลี่ยนจากการเดินไปสับรางรถไฟทีละราง มาเป็นการเขียนตารางเดินรถแล้วให้ระบบสับรางให้เอง
วัตถุประสงค์ของวิชา
ประมวลรายวิชาเขียนวัตถุประสงค์ไว้ 3 ข้อ และสไลด์ Administrivia เขียนกำกับแต่ละข้อเป็นภาษาอังกฤษไว้ด้วย
- อธิบายความหมายของระบบที่กำหนดโดยซอฟต์แวร์ได้ — What are software-defined systems
- ใช้งานระบบที่กำหนดโดยซอฟต์แวร์ได้ — Use SDS
- ออกแบบและจัดการระบบที่กำหนดโดยซอฟต์แวร์ได้ — Design and manage SDS
ศัพท์ที่จะเจอในตารางเรียน
ระบบสมัยนี้ไม่ได้มีโปรแกรมเดียวรันอยู่บนเครื่องเดียว แต่มีบริการหลายตัวกระจายอยู่บนเครื่องหลายเครื่อง ถ้าติดตั้งและตั้งค่าด้วยมือทีละเครื่อง จะช้า ผิดพลาดง่าย และสร้างของเดิมขึ้นมาใหม่ให้เหมือนเดิมไม่ได้ สามคำแรกในรายการนี้คือเครื่องมือที่แก้ปัญหานี้คนละส่วนกัน
- Container (กล่องที่ห่อโปรแกรมกับของที่โปรแกรมต้องใช้ไว้ด้วยกัน) — แก้ปัญหาโปรแกรมที่รันได้บนเครื่องเรา แต่ไปพังบนเครื่องอื่นเพราะของที่ติดตั้งไว้ไม่เหมือนกัน — สัปดาห์ 2-3
- Microservices (การแตกระบบใหญ่เป็นบริการเล็ก ๆ หลายตัว) — สัปดาห์ 4
- Service Orchestration (การสั่งการบริการหลายตัวให้ทำงานร่วมกัน) — แก้ปัญหาว่าพอมี container หลายสิบตัว ต้องมีคนคอยตัดสินว่าตัวไหนไปรันเครื่องไหน และเปิดตัวใหม่ให้เองเมื่อมีตัวตาย — สัปดาห์ 5 ตัวที่วิชานี้ใช้คือ Kubernetes
- Infrastructure as Code (การเขียนโครงสร้างพื้นฐานเป็นโค้ด แทนการคลิกตั้งค่าทีละหน้าจอ) — แก้ปัญหาว่าการตั้งค่าด้วยมือไม่เหลือหลักฐานว่าใครทำอะไรไว้ และย้อนกลับไปสร้างของเดิมขึ้นใหม่ไม่ได้ — สัปดาห์ 5-6
- DevOps (การรวมงานพัฒนากับงานดูแลระบบเข้าด้วยกัน) — สัปดาห์ 6 พูดถึงตระกูล
*-Opsทั้งหมด รวม MLOps และ AIOps - Cloud Computing (การเช่าเครื่องและบริการผ่านอินเทอร์เน็ต แทนการซื้อเครื่องเอง) — สัปดาห์ 9-11 และ 14
- Infrastructure-as-a-Service (การเช่าเครื่องเปล่าและ network จากผู้ให้บริการคลาวด์) ย่อว่า IaaS — สัปดาห์ 9
- Server Virtualization (การแบ่งเครื่องจริงหนึ่งเครื่องออกเป็นเครื่องเสมือนหลายเครื่อง) — สัปดาห์ 9
- Hybrid Cloud (การใช้คลาวด์ควบคู่กับเครื่องของตัวเอง) และ Multi-Cloud (การใช้คลาวด์หลายเจ้าพร้อมกัน) — สัปดาห์ 11
- Software-Defined Networking (การควบคุมเส้นทางของ network ด้วยซอฟต์แวร์ส่วนกลาง) ย่อว่า SDN — สัปดาห์ 12
- Edge Computing (การประมวลผลใกล้กับอุปกรณ์ แทนที่จะส่งขึ้นคลาวด์ทั้งหมด) — สัปดาห์ 13
- Data Center Network (network ภายในศูนย์ข้อมูล ที่เชื่อมเครื่องจำนวนมากเข้าด้วยกัน) — สัปดาห์ 14
ตารางเรียน
เรียนวันพฤหัสบดี 13:00-16:00 ที่อาคาร Chulapat 4 ชั้นเปลี่ยนไปตามสัปดาห์ ตามที่ระบุในคอลัมน์สุดท้าย
| สัปดาห์ | วันที่ | หัวข้อ | กิจกรรม | ผู้สอน | ชั้น |
|---|---|---|---|---|---|
| 1 | Aug 6, 2026 | Introduction to Software-Defined Systems | — | Team | 3 |
| 2 | Aug 13, 2026 | Containers and container networking | Multi-container Application | Veera | 3 |
| 3 | Aug 20, 2026 | Advanced docker and more examples | Multi-host Application | Veera | 2 |
| 4 | Aug 27, 2026 | Microservices Architecture | Orchestrating microservices containers | Natawut | 2 |
| 5 | Sep 3, 2026 | Service Orchestration and Infrastructure as Code | Kubernetes with Multiple Containers | Natawut | 3 |
| 6 | Sep 10, 2026 | *-Ops (all the Ops, DevOps, MLOps, AIOps) | DevOps and Infrastructure as Code | Natawut | 2 |
| 7 | Sep 17, 2026 | ไม่มีเรียน อ่านหนังสือเตรียมสอบกลางภาคเอง | — | — | — |
| 8 | Sep 24, 2026 | Midterm Exam | — | — | 3 |
| — | Oct 1, 2026 | Chula Graduation | — | — | — |
| 9 | Oct 8, 2026 | Cloud Computing, Infrastructure-as-a-Service, Server Virtualization | AWS Academy (EC2) | Kunwadee | 3 |
| 10 | Oct 15, 2026 | Cloud Storage Services | AWS Academy (S3) | Kunwadee | 3 |
| 11 | Oct 22, 2026 | Hybrid Clouds, Multi-Clouds | AWS Academy (Deploy Application) | Kunwadee | 3 |
| 12 | Oct 29, 2026 | Software-Defined Networking | ONOS, Wireless SDN, Mininet | Kultida | 3 |
| 13 | Nov 5, 2026 | Edge Computing for IoT | Edge Application Implementation | Kultida | 3 |
| 14 | Nov 12, 2026 | Data Center Networks | AWS Academy (VPC) | Kunwadee | 3 |
| 15 | Nov 19, 2026 | Final Exam | — | — | 3 |
แถว Oct 1, 2026 ในตารางเขียนไว้แค่ว่า Chula Graduation ไม่ได้ระบุหัวข้อ ผู้สอน หรือห้อง และไม่มีเลขสัปดาห์กำกับ
การวัดผล
| ส่วนที่คิดคะแนน | น้ำหนัก |
|---|---|
| Activity / Homework (ทุกสัปดาห์) | 60% |
| Midterm Exam | 20% |
| Final Exam | 20% |
| รวม | 100% |
เกณฑ์ตัดเกรด
| เกรด | คะแนนรวม |
|---|---|
| A | 80 ขึ้นไป |
| B+ | 76-79 |
| B | 70-75 |
| C+ | 66-69 |
| C | 60-65 |
| D+ | 56-59 |
| D | 50-55 |
| F | ต่ำกว่า 50 |
คนที่ทำงานรายสัปดาห์ได้ดี เก็บ activity/homework ได้ 48 จาก 60 สอบ midterm ได้ 13 จาก 20 สอบ final ได้ 15 จาก 20 รวมเป็น 76 คะแนน ตกในช่วง 76-79 ได้ B+
คนเดียวกันที่ทำข้อสอบได้เท่าเดิม แต่เก็บ activity ได้แค่ 40 จาก 60 จะเหลือ 68 คะแนน ตกในช่วง 66-69 ได้ C+
งานรายสัปดาห์เพียงอย่างเดียวมีน้ำหนัก 60% มากกว่าข้อสอบสองตัวรวมกัน
คะแนน activity ไม่ได้มาจากการบ้านอย่างเดียว ข้อตกลงข้อ 1 เขียนไว้ว่ามีการเช็คชื่อแบบสุ่มวัน และคะแนนเช็คชื่อถือเป็นส่วนหนึ่งของคะแนน activity การขาดเรียนจึงหักคะแนนก้อนที่ใหญ่ที่สุดของวิชา
ลองตอบดู: ส่งการบ้านช้าไป 1 ชั่วโมงเพราะเน็ตล่ม จะได้คะแนนเท่าไร
0 คะแนนสำหรับงานชิ้นนั้น ข้อตกลงข้อ 4 เขียนไว้ว่า หากไม่ส่งตามกำหนด ไม่ว่าด้วยเหตุผลใด จะได้รับคะแนน 0 ในส่วนของงานชิ้นนั้น ประมวลรายวิชาไม่ได้เขียนข้อยกเว้นไว้เลย
การสอบ
สอบทั้งหมด 2 ครั้ง ทั้งสองครั้งเป็นแบบ on-site ต้องมาสอบที่มหาวิทยาลัย
| การสอบ | วันที่ | ที่ไหน |
|---|---|---|
| Midterm Exam | Sep 24, 2026 (สัปดาห์ 8) | Chulapat 4 ชั้น 3 |
| Final Exam | Nov 19, 2026 (สัปดาห์ 15) | Chulapat 4 ชั้น 3 |
สัปดาห์ 7 (Sep 17, 2026) ไม่มีการเรียนการสอน ให้อ่านหนังสือเตรียมสอบกลางภาคเอง
การสอบต้องปฏิบัติตามประกาศจุฬาลงกรณ์มหาวิทยาลัย เรื่อง ข้อปฏิบัติในการสอบของนิสิต พ.ศ. 2564
ข้อตกลงในการเรียน
ประมวลรายวิชาและสไลด์ Administrivia เขียนข้อตกลงไว้ตรงกัน 5 ข้อ
- วิชานี้สอนแบบ on-site นิสิตต้องเข้าเรียนทุกครั้ง มีการเช็คชื่อแบบสุ่มวัน โดยคะแนนเช็คชื่อถือเป็นส่วนหนึ่งของคะแนน activity
- การจัดสอบมีทั้งหมด 2 ครั้ง เป็นแบบ on-site นิสิตต้องมาสอบที่มหาวิทยาลัยและปฏิบัติตามประกาศจุฬาลงกรณ์มหาวิทยาลัย เรื่อง ข้อปฏิบัติในการสอบของนิสิต พ.ศ. 2564
- นิสิตที่มาสายหรือขาดเรียนต้องติดตามเนื้อหาการเรียน การนัดสอบ หรือประกาศต่าง ๆ เอง จะอ้างว่ามาสายหรือขาดเรียนเป็นเหตุผลว่าไม่ทราบไม่ได้
- นิสิตต้องส่งชิ้นงานตามวันและเวลาที่กำหนดเท่านั้น หากไม่ส่งตามกำหนดไม่ว่าด้วยเหตุผลใด จะได้รับคะแนน 0 ในส่วนของงานชิ้นนั้น
- นิสิตต้องทำงานทุกชิ้นเอง หากมีการลอกงานคนอื่น ไม่ว่าในรูปแบบใด จะได้ 0 ทุกคนทุกกรณี
สองข้อที่ไม่มีข้อยกเว้น
ส่งงานช้า ได้ 0 ในงานชิ้นนั้น และลอกงาน ได้ 0 ทุกคนที่เกี่ยวข้อง ทั้งสองข้อเขียนไว้แบบไม่มีเงื่อนไขผ่อนผัน
ความซื่อสัตย์ทางวิชาการ
สไลด์ Administrivia ยกตารางของ MIT มาอธิบายว่าอะไรนับเป็นการทุจริต แบ่งเป็น 4 กลุ่ม
- Plagiarism — อย่าซื้อรายงานหรือให้คนอื่นเขียนแทน อย่าลอกไอเดีย ข้อมูล หรือถ้อยคำโดยไม่อ้างอิงแหล่งที่มา
- Unauthorized Collaboration — อย่าทำงานร่วมกับเพื่อนเกินขอบเขตที่อาจารย์อนุญาตไว้
- Cheating — อย่าลอกคำตอบเพื่อน อย่าให้เพื่อนทำงานแทน อย่าสร้างผลลัพธ์ปลอม อย่าใช้อุปกรณ์อิเล็กทรอนิกส์ระหว่างสอบ อย่าแก้ข้อสอบที่ตรวจแล้วส่งขอตรวจใหม่ และอย่าส่งงานที่เคยส่งในวิชาอื่นมาแล้ว
- Facilitating Academic Dishonesty — อย่าให้เพื่อนลอกคำตอบของเรา และอย่าสอบหรือทำงานแทนเพื่อน
ควรทำ — อ้างอิงและให้เครดิตเจ้าของงานที่เราหยิบมาใช้ ทำงานขึ้นใหม่สำหรับทุกวิชา และรับคำแก้จากอาจารย์ในฐานะส่วนหนึ่งของการเรียนรู้
สไลด์อ้างอิงคู่มือของ MIT ที่ integrity.mit.edu
ช่องทางประกาศและการติดต่อ
- ทุกคาบเรียนสด on-site (All classes will be live, on-site)
- myCourseVille ที่ www.mycourseville.com เปิดให้ลงทะเบียนเข้าห้องเรียนเอง รหัสผ่านอยู่ในสไลด์ Administrivia หน้า 4
- Discord ของวิชา ลิงก์อยู่ใน myCourseVille
- ประกาศที่แจ้งในคาบ หรือใน Discord หรือใน myCourseVille ถือว่านิสิตทุกคนรับทราบแล้ว
- TA Office Hours ยังไม่ประกาศ (TBA)
- คำถามที่ถามนอกเวลา office hour อาจไม่ได้คำตอบจนถึงรอบถัดไป จึงควรเริ่มทำการบ้านล่วงหน้า
- ห้าม DM หา TA หรืออาจารย์ เพราะไม่มีการตอบ DM ให้ถามใน Discord ของวิชาเท่านั้น จะใช้ channel หรือ forum ก็ได้
- ถ้าต้องการความเป็นส่วนตัว สร้าง private channel ของตัวเองในเซิร์ฟเวอร์ของวิชา แล้ว TA กับอาจารย์จะเป็นคนเดียวที่เห็น
- เรื่องส่วนตัว ให้อีเมลหา อ.กุลวดี ที่ kunwadee (at) cp.eng.chula.ac.th
หนังสืออ่านประกอบ
กุลวดี ศรีพานิชกุลชัย, คลาวด์คอมพิวติง Cloud Computing
- Software-Defined Systems I, 3 หน่วยกิต, วิชาบังคับ, ต้องผ่าน 2110313 และ 2110471 มาก่อน
- เรียนพฤหัสบดี 13:00-16:00 on-site ที่ Chulapat 4 ทุกคาบ มีเช็คชื่อแบบสุ่มวัน
- คะแนน: Activity/Homework รายสัปดาห์ 60%, Midterm 20%, Final 20% งานรายสัปดาห์หนักกว่าข้อสอบสองตัวรวมกัน
- เกรด A ที่ 80 ขึ้นไป และ F ที่ต่ำกว่า 50
- Midterm วันที่ Sep 24, 2026 และ Final วันที่ Nov 19, 2026 สอบ on-site ทั้งคู่
- ครึ่งแรกเป็น container, microservices, orchestration, infrastructure as code และ
*-Opsครึ่งหลังเป็น cloud, storage, SDN, edge computing และ data center network - ส่งงานช้าได้ 0 ลอกงานได้ 0 ทุกคน ไม่มีข้อยกเว้นเขียนไว้
- ต้องตามประกาศใน myCourseVille และ Discord เอง เพราะถือว่าทุกคนรับทราบแล้ว