เมื่อมหาวิทยาลัยสอนเรื่อง Software Testing

เมื่อวันอังคารที่ 16 มิถุนายน 2552  ผู้ช่วยศาสตราจารย์ ดร. สมใจ บุญศิริ จากภาควิชาคณิตศาสตร์ คณะวิทยาศาสตร์ จุฬาลงกรณ์มหาวิทยาลัย เดินทางมาเยี่ยมชมบริษัท และได้พูดคุยกันในเรื่องของ Software Testing ที่ทางท่านอาจารย์สมใจ ได้เปิดสอนมาเป็นเวลา 5 ปี ณ ปัจจุบัน ส่วนตัวดีใจที่สายงานด้าน Software Testing เริ่มมีการเรียนการสอนเกิดขึ้นในระดับมหาวิทยาลัย ซึ่งนอกจากจุฬาลงกรณ์มหาวิทยาลัยแล้วนั้น ยังมีอีกหลายๆ มหาวิทยาลัยที่ได้เปิดการเรียนการสอน Software Testing ขึ้นตั้งแต่ปี 2548 นับระยะเวลา 5 ปีที่ได้เปิดสอนด้านของ Software Testing นับว่าเป็นแนวโน้มที่ดีของสายงานด้าน Software Testing

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

ดังนั้นจึงได้เกิดการร่วมมือกันเกิดขึ้นในระหว่างทางภาควิชาคณิตศาสตร์ และบริษัทของผู้เขียน ที่จะนำประสบการณ์ในการทำงานด้าน Software Testing ไปถ่ายทอดให้กับนักศึกษาที่สนใจเรียนในวิชา Software Testing ได้เห็นถึงการทำงานจริงในภาคเอกชน

ผู้เขียนจะเป็นผู้ที่จะไปถ่ายทอดประสบกรณ์ในการทำงานด้าน Software Testing จึงได้ขอเอกสารประมวลรายวิชา (Course Syllabus) มาเพื่อเป็นข้อมูลเบื้องต้นในการเตรียมการสอน ก็เลยได้ขออนุญาติไปทางท่านอาจารย์สมใจ ในการที่จะขอนำรายละเอียดของเอกสารประมวลรายวิชา (Course Syllabus) มาเผยแพร่บน welovebug ซึ่งทางท่านอาจารย์สมใจ อนุญาติให้สามารถนำมาเผยแพร่ได้

ข้อมูลรายวิชา Software Testing

Software Testing เป็นชื่อวิชา (Course Title) ที่เปิดสอน ให้กับนักศึกษาชั้นปีที่ 4 สาขาวิทยาการคอมพิวเตอร์ คณะวิทยาศาสตร์ โดยมีรายละเอียดเบื้องต้นดังต่อไปนี้

  • จำนวนหน่วยกิต (Course Credit) 3 หน่วยกิต
  • รายวิชาที่ต้องเรียนมาก่อน วิชาใดวิชาหนึ่ง
    • วิธีการและการพัฒนาทางวิศวกรรมซอฟต์แวร์ (Software Engineering Methodology and Development)
    • วิศวกรรมซอฟต์แวร์ (Software Engineering)
  • จำนวนชัวโมงที่สอนต่อสัปดาห์ 3 ชั่วโมง
  • วิชาเลือกเฉพาะสาขา กลุ่ม Computer Science  ระดับปริญญาตรี
  • ปีการศึกษา 2552 มีนิสิตลงทะเบียนเรียน 26 คน

วัตถุประสงค์ทั่วไป และ/หรือ วัตถุประสงค์เชิงพฤติกรรม เพื่อให้นิสิตสามารถ

  • อธิบายความหมาย ความสำคัญของการทดสอบซอฟต์แวร์
  • อธิบายหลักเกณฑ์การทดสอบซอฟต์แวร์
  • อธิบายพื้นฐานของการทดสอบซอฟต์แวร์ที่เป็นระบบ
  • ประยุกต์ทฤษฎีการพัฒนาซอฟต์แวร์เพื่อใช้ในการทดสอบ
  • ประยุกต์ระเบียบวิธีในการทดสอบซอฟต์แวร์

เนื้อหารายวิชาต่อสัปดาห์

การเรียนการสอนจะแบ่งออกเป็นทั้งหมด 15 สัปดาห์ ดังต่อไปนี้

สัปดาห์ที่ 1  Introduction to Software Testing Concepts

  • Purposes, Activities, Processes, and Context
  • Questions about Testing
  • Software Tester

สัปดาห์ที่ 2  Overview of Testing Techniques

  • Black-Box Testing (Functional)
  • White-Box Testing (Structural)
  • Gray-Box Testing (Functional and Structural)
  • Taxonomy of Software Testing Technique

สัปดาห์ที่ 3 – 5  Black-Box Testing Techniques

  • Equivalence Class Testing
  • Boundary Value Testing
  • Decision Table Testing
  • Pairwise Testing
  • State-Transition Testing
  • Domain Analysis Testing
  • Use Case Testing

สัปดาห์ที่ 6 – 7  White-Box Testing

  • Basis Path Testing
  • Loop Testing
  • Control Flow Testing
  • Data Flow Testing

สัปดาห์ที่ 8  สอบกลางภาค

สัปดาห์ที่ 9  Levels of Testing

  • Acceptance Testing
  • System Testing
  • Integration Testing
  • Unit Testing

สัปดาห์ที่ 10  Software Inspection

  • Basic Concepts and Generic Process
  • Fagan inspection
  • Other Inspections and Related Activities

สัปดาห์ที่ 11  Defect Classification and Analysis

  • General Types of Defect Analyses
  • Defect Classification and ODC
  • Defect Analysis for Classified Data

สัปดาห์ที่ 12  Test Planning

  • Build  a Test Plan
  • Define the Metric Objectives
  • Review/Approve the Plan

สัปดาห์ที่ 13  Test Implementation

  • Test Environment
  • What Should be Automated?
  • Avoiding Testing Tool Traps

สัปดาห์ที่ 14 – 15  Class Presentation

ส่งท้าย

ผู้เขียนหยิบส่วนหลัก 3 ส่วนจากเอกสารประมวลรายวิชา (Course Syllabus) มาให้เพื่อนพ้องน้องพี่ได้เห็นถึงรายละเอียดคราวๆ ของการเรียนการสอน Software Testing ของสาขาวิทยาการคอมพิวเตอร์ ภาควิชาคณิตศาสตร์ คณะวิทยาศาสตร์ จุฬาลงกรณ์มหาวิทยาลัย ซึ่งเป็นจุดเริ่มต้นที่ดีมากมาก (ความคิดเห็นส่วนตัวของผู้เขียน)

จากการพูดคุยตลอด 3 ชั่วโมงกับท่านอาจารย์สมใจ ก็ได้เสนอแนะให้เพิ่มเติม และแก้ไข เรื่องที่สอนในแต่ละสัปดาห์ จากประสบการณ์ในการทำงานด้าน Software Testing เพื่อให้นิสิตได้เห็นภาพได้ชัดเจนขึ้น ซึ่งผู้เขียนจะมาเล่าให้ฟังอีกทีในครั้งต่อไป

ทั้งนี้ยินดีที่จะรับความคิดเห็น และข้อเสนอแนะต่างๆ ของเพื่อนพ้องน้องพี่ welovebug เพื่อที่จะนำส่งไปยังท่านอาจารย์สมใจ ในการนำไปประกอบในการปรับปรุงเนื้อหาให้ดียิ่งขึ้นในปีการศึกษาต่อๆ ไป ครับ


12 Responses to เมื่อมหาวิทยาลัยสอนเรื่อง Software Testing

  1. GTO Nick says:

    เห็นด้วยครับว่า การเรียน ทฤษฎี เท่านั้นทำให้เห็นภาพยาก มาก ว่าจะ Apply ยังไง

    ในปัจจุบันนี้ เรามี Tester เยอะ แต่ ประสบการณ์ ในการบริหารจัดการ ที่เรียกว่า Test Management ยังน้อยครับ

    ปัจจุบันเราอิมพอรต์ resource มาเยอะมาก ๆ ในเมืองไทย

    ส่งเสริม สถาบัน เพิ่มพูน การศึกษา ทางด้านนี้ครับผม

  2. Zyracuze Zyracuze says:

    ได้รับข้อมูล Course Outline ของวิชา Quality Assurance ของ มหาวิทยาลัยเทคโนโลยีมหานคร จากคุณ aunakub00

    Chapter 1 Process Assurance
    Chapter 2 product Assurance
    Chapter 3 Software Quality Assurance
    Chapter 4 Software Quality Standards
    Chapter 5 Overview of Test Cycles
    Chapter 6 Test Planning
    Chapter 7 Software Quality Assurance Reviews
    Chapter 8 Basic Concepts of Measurements
    Chapter 9 Process Improvement Road Map
    Chapter 10 CMM : Capability Maturity Model

    ขอบคุณ คุณ aunakub00 ครับ :)

  3. Zyracuze Zyracuze says:

    ด้วยความยินดีครับน้องๆ นิสิตจุฬา :)

  4. น้องนิสิตที่จุฬา says:

    ขอบคุณพี่ Zyracuze มากครับ

    ได้ประโยชน์เป็นอย่างมากเลยครับพี่ ^^

    หวังว่าคงมีโอกาสได้ไปเห็นการทำงานจริงๆนะครับ

  5. Zyracuze Zyracuze says:

    ด้วยความยินดีครับ หวังว่าความรู้ และประสบการณ์ที่มี จะเป็นประโยชน์ไม่มากก็น้อยกับน้องๆ นิสิตครับอาจารย์สมใจ :)

  6. สมใจ says:

    คุณ Zyracuze
    ที่แจ้งว่าเกิด error ตอน post comment นั้น แต่ที่จริงก็ขึ้นให้นะคะ
    วันนี้ต้องขอบคุณ คุณ Zyracuze เป็นอย่างมาก รวมทั้ง Sanook.com ที่อนุญาตให้บุคลากร กรุณามาเล่าประสบการณ์ให้น้องๆที่จุฬา ได้รู้ว่าการทำงานด้าน Software Testing เป็นอย่างไร เป็นการเสริม ส่วนที่เรียนทฤษฎี ซึ่งสถาบันการศึกษาทุกแห่งย่อมต้องการผลิตบุคลากรที่เป็นที่มีคุณภาพให้แก่หน่วยงานต่างๆ ทั้งสิ้น

  7. Zyracuze Zyracuze says:

    ดำเนินการแก้ไขให้เรียบร้อยครับ อาจารย์สมใจ ต้องขอโทษดด้วยครับ :)

  8. สมใจ บุญศิริ says:

    ขอแก้ไขข้อมูลนิดนึงค่ะ สอนวิชานี้ตั้งแต่ปีการศึกษา 2548 เข้าปีที่ 5 แล้วค่า

  9. aunakub00 says:

    มหาวิทยาลัยเทคโนโลยีมหานคร ก็เปิดสอนครับ วิชา Quality Assurance อะครับ

  10. Zyracuze Zyracuze says:

    คุณ dinobenz,

    ยินดีมากครับที่ได้รับทราบเพิ่มเติมว่าทาง มหาวิทยาลัยวลัยลักษณ์ เปิดสอนหลักสูตรของ Software Testing มานานแล้ว อยากรบกวนนิดนึงว่าพอจะมีรายละเอียดของหลักสูตรไหมครับ จะได้มาเผยแพร่ให้ทางเพื่อนพ้องน้องพี่ได้รับทราบกันครับ

  11. dinobenz says:

    มหาวิทยาลัยวลัยลักษณ์ เปิดสอนวิชานี้มา 3 ปีแล้ว
    แต่ไม่ดังเท่าจุฬาลงกรณ์มั้ง

  12. americus says:

    จบจากสาขานี้มาเหมือนกัน
    แต่ตอนนั้น ทางมหา’ลัย ไม่ได้บรรจุวิชานี้เอาไว้ รู้สึกเสียดายหน่อยๆ

Leave a Reply

Your email address will not be published. Required fields are marked *

*


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>