หน่วยที่ 4 โมเดลที่ใช้ออกแบบเชิงวัตถุ (แบบจำ ลองเชิงวัตถุ)
โมเดลที่ใช้ออกแบบเชิงวัตถุ เป็นเครื่องมือใหม่ที่ได้รับการยอมรับเพิ่มขึ้นตลอดเวลา เริ่มประยุกต์ ใช้กับระบบงานมากขึ้น เพราะเป็นเครื่องมือที่มีความหลากหลายใน การแสดงแบบซอฟต์แวร์ เป็นโมเดลมาตรฐานที่ใช้หลักการออกแบบ OOP รูปแบบของภาษามี NOTATION เป็นสัญลักษณ์สำ ณ์ สำหรับสื่อความ หมาย มีกฎระเบียบที่มีความหมายต่อการเขียนโปรแกรม
ออกแบบเชิงวัตถุด้วย UML การออกแบบระบบโดยใช้ UML เราจะวาครูปองค์ประกอบของ ซอฟแวร์ให้อยู่ในไดอะแกรม เปรียบเสมือนการร่างแบบที่สถาปนิกใช้ ในการออกแบบสิ่งก่อสร้างซึ่งไดอะแกรมที่ใช้กันมีอยู่ 9 ชนิด คือ USE CASE DIAGRAM ใช้เพื่ออธิบายชุคของการกระทำ ว่าระบบควรหรือ สามารถทำ งานร่วมกับผู้ใช้ภายนอกของระบบ ช่วยให้ทีมพัฒนา ทราบถึงความสามารถของระบบได้ง่าย CLASS DIAGRAM คือ แผนภาพที่ใช้แสดง CLASS และความสัมพันธ์ระหว่างคราสของระบบ ที่เราสนใจ
USE CASE DIAGRAM เป็นแผนภาพที่ใช้แสคงให้ทราบว่าระบบทำ งานหรือมีหน้า น้ ที่ใดบ้าง โดยมีสัญลักษณ์รู ณ์ รู ปวงรีแทน USE CASE และสัญลักษณ์รู ณ์ รู ปคน [STICK MAN ICON) แทน ACTOR สำ หรับชื่อ USE CASE นั้นให้ใช้คำ กริยา หรือกริยาวลี (คำ กริยามีกรรมมารองรับ) เช่น ลงทะเบียนเรียน, ตรวจสอบรายวิชา, บันทึกการชำ ระเงิน, GENERATE REPORT, ENTER SALES DATA, COMPUTE COMMISSION เป็นต้น
USE CASE DIAGRAM ส่วนการมีปฏิสัมพันธ์ระหว่าง USE CASE และ ACTOR จะใช้เส้นตรง ลากเชื่อมต่อกัน หรือจะใช้เส้นตรงมีหัวลูกศรก็ได้ ในที่นี้เลือกใช้เส้น ตรงไม่มีหัวลูกศร ส่วนเส้นแบ่งขอบเขตระหว่าง ACTOR กับ USE CASE จะใช้เส้นกรอบสี่เหลี่ยม เรียกว่า "SYSTEM BOUNDARY" และ สิ่งสำ คัญส่วนสุดท้ายก็คือ "ชื่อของระบบ (SYSTEM NAME)" ให้ แสดงไว้ด้านบนสุดของแผนภาพ
CLASS DIAGRAM CLASS DIAGRAM คือ แผนภาพที่ใช้ แสดง CLASร และความสัมพันธ์ ระหว่างคลาสของระบบที่เรา สนใจ โดยมีองประค์กอบดังนี้ 1.CLASS NAME คือ ชื่อของ CLASS 2.ATTRIBUTES คือ คุณลักษณะของ CLASS 3.0PERATIONS หรือ METHODS คือ กิจกรรมที่สามารถ กระทำ กับ OBJECT นั้นๆได้
CLASS DIAGRAM 4.CARDINALITY RATIO ใช้แสดงถึงอัตราส่วนของความ สัมพันธ์ใช้ แสดงถึงอัตราส่วนของความสัมพันธ์ แทนที่ด้วย ตัวเลข 1,MและN โดย 1 : 1 แทนความสัมพันธ์ แทนความ สัมพันธ์แบบ1 : N แทนความ สัมพันธ์แบบหนึ่งต่อหลาย M : N แทนความสัมพันธ์แบบหลายต่อ หลาย
STATIC & DYNAMIC โดยทั่วไปแบบ DYNAMIC \ไดนามิก) หมายถึง พลัง ความสามารถ ใน การดำ เนินการ และ / หรือ การเปลี่ยนแปลงหรือมีแรงในขณะที่ STATIC (สถิต) หมายถึงความคงที่หรือยึคติด ในศัพท์คอมพิวเตอร์ DYNAMIC มักจะหมายถึงความสามารถในการดำ เนินการ และ/หรือ การเปลี่ยนแปลง ในขณะที่ STATIC หมายถึงคงที่ ศัพท์ทั้งสอง สามารถนำ ไปใช้ชนิดที่แตกต่างกันของสิ่งต่างๆ จำ นวนมาก เช่น การ เขียนโปรแกรมภาษา (หรือส่วนประกอบของภาษาโปรแกรม), เอ็บเพจ และโปรแกรม
หน่วยที่5 UML MODELING
UML MODELING ความหมายของยูเอ็มแอล (UML : UNIFIED MODELING LANGUAGE ) เป็นสัญลักษณ์อั ณ์ อั นเป็นหนึ่งเดียวกันที่ใช้อธิบาย แสดงรายละเอียด จำ ลองการสร้าง และจัดการกับเอกสารต่างๆในระบบการทำ งาน จริง เพื่อให้การออกแบบซอฟต์แวร์ที่แทนระบบการทำ งานจริงนั้น ทำ ได้โดยง่าย และปรับปรุงวิธีการทำ งานที่มีอยู่เดิมให้ดียิ่งขึ้น
ประวัติความเป็นมาของยูเอ็มแอล UML ได้ถือกำ เนิดขึ้นมาในแวดวงอุตสาหกรรม ซอฟแวร์ เมื่อปี คศ.1994 โดย JIM RUMBAUGH และทีมวิจัย จาก บริษัท GENERAL ELECTRIC พัฒนาแนวคิดเรื่อง OBJECT MODELING TECHNIQUE (OMT) และไอวาร์ จาคอบสัน (IVAR JACOBSON ) จากบริษัท ERICSรON ได้นำ เสนอแนวความคิดในเรื่องของ USE CASE เป็นคน แรก ซึ่งช่วงนั้นมีระเบียบวิธีที่มีลักษณะคล้ายคลึงกัน ดังกล่าวเกิดขึ้น มากมาย และในขณะเดียวกันก็มีรายละเอียดปลีกย่อย ที่แตกต่างกัน ออกไป
ประวัติความเป็นมาของยูเอ็มแอล ต่อมามีการประชุม OOPSLA ในปี 1994 โดยมีการประกาศว่า งเM RUMBUAGHได้ร่วมกับ GRADY BOOCHที่ RATIONAL SOFTWARE เพื่อร่วมกันพัฒนาระเบียบวิธีของที่ต่างคนต่างคิดขึ้น ด้วยกัน ในการ ประชุม OOPSLA ปี คศ.1997 โดย บริษัท RATIONAL SOFTWARE COOPERATION โดยได้พัฒนาซอฟแวร์ เป็นงานศิลปะประเภทหนึ่ง ที่ มีความละเอียดอ่อน ต้องการความ พิถีพิถันในทุกขั้นตอน
ส่วนประกอบหลักของยูเอ็มแอล UML ประกอบด้วย 3 ส่วนหลักคือ THINGS, RELATIONSHIPS และ DIAGRAMS - ส่วน THINGS แบ่ง4 ประเภท คือ STRUCTURAL THINGS, BE HAVVIORAL THINGS, GROUP THINGS, ANNOTATIONAL THINGS - ส่วน RELATIONSHIPS แบ่ง 3 ประเภท คือ MEANING, STUCTURAL, GENERALIZED/SPECIALIZED - ส่วน DIAGRAMS แบ่ง 6 ประเภท คือ USE CASE, STATIC STUCURE, INTERACTION, STATE, ACTIVITY, IMPLEMENTATION
ประโยชน์ข น์ องยูเอ็มแอล 1.วงจรการพัฒนาที่สั้นที่สุด (SHORTEST DEVELOPMENT LIFE CYCLE) 2.เพิ่มผลผลิต (INCREASE PRODUCTIVITY) 3.ปรับปรุงคุณภาพซอฟแวร์ (IMPROVE SOFTWARE QUALITY) 4.สนับสนุน นุ ระบบสืบทอดมรดก (SUPPORT LEGACY SYSTEM) ร.ปรับปรุง การเชื่อมต่อทีมงาน (IMPROVE TEAM CONNECTIVITY)
หน้า น้ ที่ของยูเอ็มแอล - เป็น MODELING LANGUAGE ในการสร้างแบบจำ ลองของระบบให้ เข้าใจถึงระบบ องค์ประกอบ และ สิ่งที่เกี่ยวข้อง - UML ใช้แผนภาพ ในการอธิบายระบบ ทำ ให้เราสามารถมองเห็นภาพ การทำ งานของระบบก่อนที่จะสร้างจริง - UML ใช้สร้าง SPECIFITION ของระบบ บอกความต้องการของ ระบบ(วิเคราะห์)และออกแบบระบบ UML ใช้เป็นเอกสารของระบบเก็บ ความรู้เกี่ยวกับระบบทุกขั้นตอน
กลไกของยูเอ็มแอล ในการวิเคราะห์ และออกแบบ ระบบ โดยใช้ UML เป้น ป้ เครื่องมือ ในการ ดำ เนินโครงการ มีกลไก ของ MODEL มาตราฐาน (STANDART MODEL) เพื่อเป็นเครื่องมือในการวิเคราะห์และออกแบบ ดังนี้ 1.USE CASE DIAGRAM แสดงการใช้งานระบบ จากมุมมอง ของ USER 2. SEQUENCE DIAGRAM แสดงลำ ดับขั้นตอน การทำ งานภายใน ของ USE CASE DIAGRAM 3.CLASS DIAGRAM แสดงถึง CLASS และความสัมพันธ์ ของข้อมูล และ กิจกรรมที่มีผลกับข้อมูลในแต่ละ CLASS 4. ACTIVITY DIAGRAM แสดงถึง กระเส การไหล ของการทำ งานใน ระบบ
กลไกของยูเอ็มแอล 5. COLLABORATION DIAGRAM แสดงถึง การติดต่อสื่อสารแล้ค วาม สัมพันธ์ ระหว่าง OBJECT 6. COMPONENT DIAGRAM แสดงถึง โครงสร้างทางกายภาพของ COMPONENT ต่างๆในระบบ 7.DEPLOYMENT DIAGRAM แสดงถึง สถาปัตยกรรมของระบบ HARDWARE/SOFTWARE 8. OBJECT DIAGRAM แสดงถึง ความสัมพันธ์ และ INSTANCE ของ CLASS และ OBJECT 9. STATE DIAGRAM แสดงถึง สถานภาพ และ พฤติกรรมของ OBJECT