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

การออกแบบซอฟต์แวร์เชิงวัตถุ 7-7

                              Object-Oriented Development =

                            Object-Oriented
                             Analysis (OOA)

                                          Object-Oriented
                                           Design (OOD)

                                                       Object-Oriented
                                                     Programming (OOP)

                ภาพท่ี 7.1 การพฒั นาซอฟต์แวร์เชงิ วัตถุตามแนวทางวศิ วกรรมซอฟตแ์ วร์เชงิ วตั ถุ

ทม่ี า: 	http://www.daydev.com/2011/object-oriented-analysis-and-design-ooad-1.html ค้นคืนวันท่ี 25 มกราคม 2557

       จากภาพท่ี 7.1 แสดงใหเ้ หน็ ถงึ เทคนคิ ทเี่ ปลย่ี นแปลงไปในกระบวนการพฒั นาซอฟตแ์ วรใ์ นแนวทางการพฒั นา
ซอฟตแ์ วรเ์ ชงิ วตั ถตุ ามแนวทางของวศิ วกรรมซอฟตแ์ วรเ์ ชงิ วตั ถุ ซง่ึ หากนกั พฒั นาซอฟตแ์ วรเ์ ลอื กใชแ้ นวทางการพฒั นา
ซอฟต์แวร์เชิงวัตถุแล้วน้ัน ในขั้นตอนของการวิเคราะห์ ออกแบบ และพัฒนาโปรแกรมจะต้องมีการปรับเปล่ียนไปใช้
เทคนคิ และเครอ่ื งมอื เชงิ วตั ถมุ ารว่ มในการพฒั นาซอฟตแ์ วร์ จงึ ทำ� ใหก้ ระบวนการพฒั นาซอฟตแ์ วรเ์ ชงิ วตั ถปุ ระกอบดว้ ย
การวิเคราะห์เชิงวัตถุ การออกแบบเชิงวัตถุ และการพัฒนาโปรแกรมเชิงวัตถุ

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

            1)		ความแขง็ แกรง่ ของคลาส (class cohesion)  เปน็ การวดั ระดบั ความแขง็ แกรง่ ของคลาสหรอื ออ็ บเจก็ ต์
กล่าวคือคลาสหรืออ็อบเจ็กต์นั้นจะต้องมีการท�ำงานเพียงเพื่อหน้าที่ใดหน้าท่ีหนึ่งเท่าน้ัน (high cohesion) จึงจะ
เปน็ การออกแบบเชงิ วตั ถทุ ด่ี ที ส่ี ดุ ถอื เปน็ คลาสทมี่ คี วามแขง็ แกรง่ สงู แตถ่ า้ มหี ลายหนา้ ทจี่ ะทำ� ใหค้ ลาสมคี วามแขง็ แกรง่
น้อย ซ่ึงจะท�ำให้มีการบ�ำรุงรักษายากข้ึนตามไปด้วย

            2)		ความสมั พนั ธร์ ะหวา่ งคลาส (class coupling) คอื กรณที คี่ ลาสหนงึ่ มกี ารทำ� งานรว่ มกบั อกี คลาสหนงึ่
โดยการที่คลาสดังกล่าวสามารถมองเห็นหรือติดต่อสื่อสารกับอีกคลาสหน่ึง หากสามารถมองเห็นแอตทริบิวต์ท่ี
อ้างถึงกันมาก ย่อมแสดงให้เห็นว่าระบบน้ันมีความซับซ้อนสูง ส่งผลให้การบ�ำรุงรักษาระบบท�ำได้ยากตามไปด้วย
   12   13   14   15   16   17   18   19   20   21   22