Page 14 - วิศวกรรมซอฟต์แวร์
P. 14

7-4 วิศวกรรมซอฟต์แวร์

ตอนที่ 7.1
แนวคิดในการออกแบบซอฟต์แวรเ์ ชิงวตั ถุ

โปรดอ่านหัวเรื่อง แนวคิด และวัตถุประสงค์ของตอนที่ 7.1 แล้วจึงศึกษารายละเอียดต่อไป

  หวั เรือ่ ง

         7.1.1 แนวทางการพัฒนาซอฟต์แวร์เชิงวัตถุ
         7.1.2 วัตถุ คลาสและองค์ประกอบของคลาส
         7.1.3 ความสัมพันธ์ระหว่างคลาส

  แนวคิด

         1. 	แ นวทางการพัฒนาซอฟต์แวร์มี 2 แนวทาง คือ แนวทางการพัฒนาซอฟต์แวร์เชิงโครงสร้าง และ
            แนวทางการพัฒนาซอฟต์แวร์เชิงวัตถุ ซ่ึงมีความแตกต่างกัน การพัฒนาซอฟต์แวร์เชิงโครงสร้าง
            เป็นแนวคิดในการพัฒนาซอฟต์แวร์โดยการมองปัญหาในรูปของกระบวนการท�ำงานแล้วแตก
            กระบวนการออกเป็นฟังก์ช่ันและสร้างการเช่ือมโยงการท�ำงานระหว่างฟังก์ชั่น ส่วนการพัฒนา
            ซอฟต์แวร์เชิงวัตถุ เป็นการพัฒนาซอฟต์แวร์โดยการมองสิ่งต่าง ๆ เป็นวัตถุหรืออ็อบเจ็กต์ และ
            นำ� กลมุ่ ออ็ บเจก็ ตเ์ หลา่ นนั้ มารวมใหอ้ ยใู่ นกลมุ่ เดยี วกนั ได้ เรยี กวา่ คลาส โดยพจิ ารณาจากคณุ สมบตั ิ
            และการทำ� งานเฉพาะตวั ของแตล่ ะออ็ บเจก็ ตแ์ ลว้ คอ่ ยเรม่ิ พจิ ารณาถงึ ความสมั พนั ธร์ ะหวา่ งออ็ บเจก็ ต์
            ในแต่ละคลาส

         2. 	ว ตั ถุ คือ หน่วยสนใจของระบบทที่ ำ� ใหเ้ กิดเหตุการณ์บางอย่าง และคลาสเป็นการจัดกลุ่มให้แกว่ ัตถุ
            ที่มีคุณสมบัติหรือพฤติกรรมบางอย่างท่ีเหมือนกัน ดังน้ัน เม่ือมีการก�ำหนดขอบเขตของระบบแล้ว
            นักวิเคราะห์และออกแบบระบบจ�ำเป็นต้องมีการค้นหาวัตถุเพ่ือให้ได้วัตถุท่ีเก่ียวข้องกับระบบ
            เท่าน้ัน การพิจารณาค�ำนามถือเป็นตัวบ่งช้ีที่ดีในการค้นหาวัตถุ ส�ำหรับองค์ประกอบของคลาส
            ประกอบด้วยแอตทริบิวต์ที่ใช้บอกคุณสมบัติของคลาส และเมธอดหรือโอเปอเรชั่นที่ใช้บอกหน้าท่ี
            การท�ำงานของคลาส

         3. 	ความสมั พนั ธร์ ะหวา่ งคลาสมดี ว้ ยกนั 4 รปู แบบ ไดแ้ ก่ การสบื ทอดคณุ สมบตั ิ การเปน็ สว่ นหนงึ่ ของ
            การเป็นองค์ประกอบของ และความเก่ียวข้องกัน

  วตั ถปุ ระสงค์

         เม่ือศึกษาตอนที่ 7.1 จบแล้ว นักศึกษาสามารถ
         1. 	อธิบายแนวทางการพัฒนาซอฟต์แวร์ได้
         2. 	อธิบายความแตกต่างระหว่างแนวทางการพัฒนาซอฟต์แวร์เชิงโครงสร้างกับเชิงวัตถุได้
         3. 	อธิบายลักษณะของแนวทางการพัฒนาซอฟต์แวร์เชิงวัตถุได้
         4. 	จ�ำแนกคลาสกับวัตถุจากขอบเขตของปัญหาได้
         5. 	อธิบายองค์ประกอบของคลาสได้
         6. 	อธิบายรูปแบบความสัมพันธ์ระหว่างคลาสได้
         7.	 ระบุแนวทางการสร้างความสัมพันธ์ระหว่างคลาสในรูปแบบต่าง ๆ ได้
   9   10   11   12   13   14   15   16   17   18   19