Page 25 - วิศวกรรมซอฟต์แวร์
P. 25
การออกแบบซอฟต์แวร์เชิงวัตถุ 7-15
1.1 ขอบเขตของปญั หา (problem domain) หรอื โดเมน (domain) คือ กรอบของความสนใจท่ีมีต่อวัตถุน้ัน
หรือระบบท่ีสนใจ เนื่องจากไม่สามารถสนใจในทุก ๆ วัตถุในโลกในเวลาเดียวกันได้และไม่สามารถให้ความสนใจกับ
ทุกความสัมพันธ์ และทุก ๆ กิจกรรมหรือการกระท�ำท่ีเกิดขึ้นได้ ในโดเมนหน่ึงสามารถมีวัตถุได้ตั้งแต่ 2 ตัวขึ้นไป
จนถึงนับไม่ถ้วน และวัตถุตัวหนึ่ง ๆ สามารถอยู่ได้ในหลาย ๆ โดเมน การก�ำหนดขอบเขตของปัญหาเป็นสิ่งที่ต้อง
พิจารณาอันดับแรกเมื่อตกลงที่จะพัฒนาซอฟต์แวร์ด้วยหลักการเชิงวัตถุ โดยสามารถก�ำหนดขอบเขตของปัญหาได้
จากการสอบถามความต้องการ (requirement) จากผู้ใช้ระบบ (end-user) ขอบเขตของปัญหาท่ีแน่ชัดมักจะยัง
ไม่สามารถหาได้ในขั้นต้นของการเร่ิมวิเคราะห์ระบบ แต่การก�ำหนดภาพรวมของขอบเขตของปัญหาน้ันต้องชัดเจน
เช่น ถ้าจะพัฒนาระบบงานให้กับฝ่ายบัญชี แสดงว่าอ็อบเจ็กต์ต่าง ๆ ต้องเป็นเร่ืองที่เกี่ยวข้องกับฝ่ายบัญชี
(ซึ่งขณะเดียวกันอาจเก่ียวข้องกับฝ่ายบุคคลก็ได้ แต่ต้องไม่มีอ็อบเจ็กต์ใด ๆ ท่ีไม่เกี่ยวข้องกับฝ่ายบัญชี) และใน
อนาคตอาจมีการรวมเอางบการเงินมาเป็นส่วนหนึ่งของขอบเขตของปัญหาก็เป็นได้
1.2 การค้นหาวัตถุในขอบเขตของปัญหา สิ่งแรกท่ีต้องท�ำเมื่อมีขอบเขตของปัญหาในภาพรวมแล้ว คือ
การพิจารณาว่า มีวัตถุอะไรบ้างภายในโดเมนน้ัน ๆ โดยยังไม่ต้องค�ำนึงถึงกิจกรรมที่เกิดขึ้นในระบบ “ค�ำนาม” ถือ
เป็นตัวบ่งช้ีท่ีดีในการหาวัตถุในขอบเขตของปัญหา แต่อย่างไรก็ตาม ค�ำนามบางค�ำอาจกลายเป็นแอตทริบิวต์ของ
วัตถกุ ็ได้เช่นเดยี วกนั ดังน้ันการค้นหาวตั ถใุ นขอบเขตของปญั หาสามารถท�ำได้จากการหาค�ำนามทัง้ หมดท่มี ีในขอบเขต
ของปัญหา แล้วจึงน�ำมาแยกแยะภายหลังว่าส่ิงใดคือวัตถุ และสิ่งใดคือแอตทริบิวต์ของวัตถุ
ตัวอย่างการค้นหาวัตถุในขอบเขตของปัญหา มีดังนี้
ตัวอย่างท่ี 7.3 ก�ำหนดขอบเขตของปัญหา ดังน้ี “หนังสือเล่มหน่ึง ปกสีเหลือง ภายในประกอบด้วยเนื้อหา
เกี่ยวกับ Object Orientation หนังสือเล่มนี้มีจ�ำนวน 250 หน้า” สามารถค้นหาวัตถุในขอบเขตของปัญหาจากคำ� นาม
ได้ดังนี้
ตารางที่ 7.1 ตวั อยา่ งการค้นหาวตั ถุจากขอบเขตของปญั หา
คำ�นาม ประเภท
หนังสือเล่มหนึ่ง วัตถุ
ปกสีเหลือง
เนื้อหาเกี่ยวกับ Object Oriented เป็นแอตทริบิวต์หนึ่งของหนังสือเล่มหนึ่ง
หน้า
เป็นแอตทริบิวต์หนึ่งของหนังสือเล่มหนึ่ง
เป็นลักษณะนามที่บอกถึงจำ�นวนหน้าของหนังสือ ถือเป็นส่วนหนึ่งของ
แอตทริบิวต์ของวัตถุหนังสือเล่มหนึ่ง
ที่มา: www.siam2dev.com/E_Learning/OOAD/Chapter03.ppt ค้นคืนวันที่ 2 กุมภาพันธ์ 2557