The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

30901-2001 E-book นายติณห์ วงศาสวัสดิ์

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by tin_wongsasawat, 2021-03-05 01:55:14

30901-2001 E-book นายติณห์ วงศาสวัสดิ์

30901-2001 E-book นายติณห์ วงศาสวัสดิ์

รายงานฉบับ E-Book

เสนอ
คณุ ครสู รายุทธ มาลา

จัดทำโดย
นายติณห์ วงศาสวัสด์ิ เลขที่ 9
นกั ศึกษาระดบั ประกาศนยี บัตรวิชาชีพช้ันสงู ช้ันปีท่ี 1
สาขาวิชาเทคโนโลยีสารสนเทศ

รายงานฉบบั น้เี ปน็ ส่วนหนง่ึ ของรายวิชาการวิเคราะหแ์ ละออกแบบเชงิ วตั ถุ
วทิ ยาลยั เทคนิคตรัง สำนกั งานคณะกรรมการการอาชวี ศกึ ษา
ภาคเรยี นท่ี 1 ปกี ารศึกษา 2563



คำนำ
รายงานฉบับนี้จัดทำขึ้นเพื่อเป็นส่วนหนึ่งของรายวิชาการวิเคราะห์และออกแบบเชิงวัตถุ รหัสวิชา
30901-2002 ระดับประกาศนียบตั รวิชาชีพชน้ั สูง ชั้นปที ี่ 1 แผนกวิชาเทคโนโลยสี ารสนเทศ เพ่อื ศกึ ษาหาความรู้ใน
เรอื่ ง การวิเคราะห์และออกแบบเชิงวตั ถุ ซ่ึงมีเนอ้ื หาประกอบไปดว้ ยดงั น้ี
การวิเคราะห์และออกแบบ System Development Life Cycle Unified Modeling Language
Unified Modeling Language II การใชภ้ าษา UML Use Case Diagram Class Diagram Interaction Diagram
State Diagram Activity Diagram Component Diagram Deployment Diagram โครงงานการวิเคราะห์และ
ออกแบบเชงิ วตั ถุ
ขอขอบคุณ คุณครูสรายุทธ มาลา อาจารย์ประจำรายวิชาที่ได้แนะนำแนวทางในการจดั รายงานฉบับน้ีเป็น
อย่างดี

ติณห์ วงศาสวัสด์ิ
ผ้จู ัดทำ



สารบญั หนา้

เร่อื ง 1
3
คำนำ 6
สารบัญ 9
บทท่ี 1 Object-Oriented Programming 11
บทท่ี 2 การวเิ คราะห์และออกแบบระบบ 14
บทที่ 3 System Development Life Cycle 16
บทท่ี 4 Unified Modeling Language 18
บทที่ 5 Unified Modeling Language II 19
บทท่ี 6 การใช้ภาษา UML 20
บทที่ 7 Use Case Diagram 21
บทท่ี 8 Class Diagram 22
บทที่ 9 Interaction Diagram 23
บทที่ 10 State Diagram 24
บทที่ 11 Activity Diagram 26
บทที 12 Component Diagram 28
บทที่ 13 Deployment Diagram
บทที่ 14 โครงงานการวเิคราะหแ์ ละออกแบบเชงิ วัตถุ 35
บทที่ 15 โครงงานการวเคิ ราะหแ์ ละออกแบบเชงิ วัตถุ 2
บทท่ี 16 โครงงานการวเิคราะหแ์ ละออกแบบเชิงวัตถุ 3
ภาคผนวก
ประวัตสิ ่วนตวั ของผู้จดั ทำ



1

บทที่ 1 Object-Oriented Programming
แบบฝกึ หดั หน่วยท่ี 1
1. เทคนิคการเขยี นโปรแกรมมีกปี่ ระเภทไดแ้ ก่อะไรบ้าง

เทคนคิ การเขียนโปรแกรมสามารถสรุปได้ 4 ประเภทดงั นี้
1.1 การเขยี นโปรแกรมแบบไมม่ ีโครงสรา้ ง ( Unstructured Programming )
1.2 การเขียนโปรแกรมแบบมีโปรแกรมยอ่ ย ( Procedural Programming )
1.3 การเขยี นโปรแกรมแบบโมดลู ( Modular Programming )
1.4 การเขียนโปรแกรมเชิงวัตถุ ( Object – Oriented Programming )
2. จงบอกแนวคดิ ในการเขียนโปรแกรมมีกแี่ นวคดิ ไดแ้ กแ่ นวคิดอะไรบา้ ง
2.1 โครงสร้างของโปรแกรม
2.2 Lifetime
2.3 การสง่ ข้อมลู บน Network
3. จงบอกเทคนคิ ต่าง ๆ ของการเขยี นโปรแกรมเชิงวัตถุ
3.1 ความสามารถในการเพ่มิ หรือขยายโปรแกรม ( Extendibility )
3.2 ความสามารถในการนำกลบั มาใช้มาใหม่ ( Resuability )
3.3 ความสามารถในการเข้ากันไดก้ ับส่วนประกอบอื่นๆ ( Compatibility )
3.4 ประสทิ ธิภาพ ( Efficiency )
3.5 ง่ายต่อการใช้งาน ( Easy to use )
3.6 ง่ายในการออกแบบ ( Esay to designs )



2

ใบงานหนว่ ยท่ี 1
3.ตวั อย่างโปรแกรม PHP กล่มุ ที่ 3
ตัวอยา่ งโปรแกรม VB.NET

ผลลัพธ์



3

บทที่ 2 การวเิ คราะห์และออกแบบระบบ
แบบฝึกหดั หน่วยที่ 2
1.จงอธบิ ายความหมายระบบ

ระบบ (System) หมายถึง กลมุ่ ขององคป์ ระกอบที่สัมพนั ธ์กนั ทำงานรว่ มกนั เพ่ือบรรลุจุกประสงค์
เดียวกนั ภายใตส้ ิง่ แวดลอ้ มเฉพาะอยา่ ง เชน่ ระบบการเรียนการสอน มจี ดุ ประสงคเ์ พ่อื ให้นักเรยี นไดร้ บั ความรู้
ในเน้ือหาวชิ าทสี่ อน
2. จงบอกองค์ประกอบระบบของการเรียนการสอน

1. บุคลากร ได้เเก่ เจ้าหนา้ ที่ ครู และนักเรยี น2. เครื่องมอื ไดเ้ เก่ ชอล์ก กระดานดำ3. พัสดุ ได้แก่
โต๊ะ เก้าอี้4. วธิ กี าร ไดเ้ เก่ เขียนบนกระดาน5. การจดั การ ได้เเก่ โรงเรยี นจดั ตารางเรยี น เกบ็ ค่าเล่าเรยี น จา่ ย
ค่าสอนให้แกค่ รู เป็นตน้
3. จงบอกองค์ประกอบของระบบทใี่ ช้คอมพิวเตอรเ์ ปน็ พื้นฐาน

1.บคุ ลากร (Person) เป็นองคป์ ระกอบทีส่ ำคญั ของระบบ บคุ ลากรจะนำสารสนเทศตา่ งๆทไ่ี ดผ้ ลติ ขึน้
ภายในระบบไปใช้ โดยใชข้ ้อมูลในการตัดสนิ ใจ2.อปุ กรณ์ (equipment) จะใชเ้ ป็นทเ่ี ก็บข้อมูล หรือนำข้อมูลไป
ยงั จุดต่างๆ ภายในองค์กร และทำการประมวลผล3.กระบวนการ (procedures) ท่ีสามารถมั่นใจไดว้ า่ บุคลากร
ทีเ่ กีย่ วข้องจะไดร้ ับข้อมูลที่ถูกต้องทันเวลา โดยกระบวนการจะเปน็ การตดั สนิ ใจวา่ จะทำอะไรกับข้อมลู ทผ่ี ่าน
เข้ามาในระบบ
4. จงอธบิ ายระบบธรุ กจิ (Business System)

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

1. What คอื วตั ถปุ ระสงคข์ องระบบคืออะไร มีแผนงานข้นั ตอนอยา่ งไรเพอื่ นำไปสู่ความสำเร็จ2. How
คือ มวี ธิ กี ารทำงานอย่างไร ต้องใชเ้ คร่ืองมือใดเพ่ือใหง้ านสำเรจ็ ไดร้ วดเรว็ 3. When คอื การเร่ิมดำเนนิ งานและ
ผลสำเรจ็ ของงานจะสำเร็จลลุ ว่ งได้เม่ือไร ควรมีการจัดตารางการทำงานอยา่ งมรี ะบบ4. Who คอื บุคคลใดหรือ
คณะใดทร่ี ับผิดชอบ หมายถึง การมบี ุคคลใดที่ทำหนา้ ทีร่ ับผิดชอบในขอบเขตงานของตนทีแ่ น่นอน รวมท้ง
ความสามารถในการรบั มอบหมายงานหรือสานงานตอ่



4

6. จงอธิบายวงจรสารสนเทศ(Information Cycle)
ระบบสารสนเทศ หมายถึง การรวบรวมองค์ประกอบตา่ ง ๆ (Data) เพ่ือนำเข้า ( Input) สรู่ ะบบใด ๆ

แล้วนำมาผ่านกระบวนการ (Process) ทอี่ าจใชค้ อมพิวเตอร์เพื่อเรยี บเรียง เปลย่ี นแปลง เปน็ สารสนเทศ
(Information) และจัดเก็บเพื่อให้ได้ผลลัพธ์ (Output) ท่ีสามารถใช้กบั ธุรกจิ ได้
7. จงอธบิ ายระบบเชิงกายภาพและระบบเชิงตรรกะ

ระบบเชงิ กายภาพ (physical systems) ประกอบด้วย องคป์ ระกอบท่ีเป็นรปู ธรรมหรือสามารถจับ
ต้องได้ ตวั อย่างระบบเชิงกายภาพทม่ี องเห็นไดช้ ดั เจนไดแ้ก่ องคกร์ ตา่ งๆ ทัง้ องคข์ องรฐั และเอกชน ซึง่
ประกอบด้วย องคป์ ระกอบต่างๆ เป็นจำนวนมากระบบเชงิ ตรรกะ (logical systems) หรืออีกนยั หนึ่งก็คอื
ระบบที่ไม่ปรากฏลกั ษณะทางกายภาพระบบเชงิ ตรรกะจะแทนระบบเชงิ กายภาพ ตวั อยา่ งเช่น ในระบบสินค้า
คงคลงั ข้อมูล่สารสนเทศต่าง ๆ จะมกี ารนำไปเกบ็ ในหนว่ ยเกบ็ ข้อมลู ของเคร่ืองคอมพวิเตอรเ์ พ่ือแทนลักษณะ
ทางกายภาพของสินค้าในคลังสนิ ค้า ระบบสนิ คา้ คงคลังสามารถพมิ พร์ายงาน หรือแสดงรายงานเพื่ออธบิ าย
รายละเอียดเกี่ยวกับสนิ คา้ ทเ่ี ก็บอยู่ในคลงั สินคา้ ได้
8. จงอธบิ ายการวิเคราะหร์ ะบบ(System Analysis)

การวิเคราะห์ระบบ ( System Analysis) คอื การหาความตอง้ การของระบบว่าคืออะไร ตอ้ งการอะไร
เข้ามาสู่ในระบบ ศึกษาระบบทเ่ี ป็นอยู่ว่ามีขอ้ ดีข้อเสียประการใด เพื่อจะได้ทำการปรบั ปรุงแก้ไขให้ระบบการ
ทำงานเป็นในทศิ ทางท่ีดีขนึ้ การเปลยี่ นแปลงงานใดงานหนึง่ หรือการเพ่ิมงานใดงานหนึ่งเข้าไปใหม่ ย่อมมี
ผลกระทบกับงานอืน่ ๆ ของระบบหลงั จากไดศ้ ึกษาและเข้าใจการทำงานของระบบดแี ลว้ กส็ ามารถจะ
เปลย่ี นแปลงการทำงานของระบบเพื่อปรับปรุงระบบให้ดีขึ้นไดโ้ ดยไม่มผี ลกระทบกบั ส่วนอืน่ ๆ ทไ่ี ม่ไดป้ รบั ปรุง
9. จงอธบิ ายการออกแบบระบบ (System Design)

การออกแบบระบบ (System Design) คอื การนำเอาความตอ้ งการของระบบมาเป็นแบบแผนหรือ
เรียกว่าพมิ พเ์ ขยี วในการสร้างระบบสารสนเทศให้ใชง้ านได้จริง เช่น ระบบการขาย ความต้องการของระบบคือ
สามารถตดิ ตามยอดขายได้เป็นระบบ เพื่อใหฝ้ ่ายบริหารสามารถปรบั ปรุงการขายได้ทันท่วงที
10. จงอธิบายความหมายนักวิเคราะห์ระบบ (System Analyst หรือ SA)

นักวิเคราะหร์ ะบบ คือผู้ทท่ี ำงานเปน็ ศูนยก์ ลางของการพัฒนาระบบ ศกึ ษาปญั หา รวบรวมขอ้ มลู ความ
ตอ้ งการขององคก์ร รวมถึงข้อมลู ทเี่ กี่ยวข้องทงั้ หมดแล้วนำมาวางแผนในการพัฒนาระบบงานใหม่ ซึง่ งาน
ดงั กล่าวน้ีเปน็ งานที่คอ่ นขา้ งยาก เน่อื งจากจะต้องแก้ไขปญั หา หรือข้อขดั แย้งของบคุ ลากรที่เก่ยี วขอ้ งเป็น
จำนวนมาก ดงั นั้น นักวเิ คราะห์ระบบต้องทำหนา้ ที่หลายอย่างดว้ ยกัน
11. จงบอกหน้าทีข่ องนกั วิเคราะห์ระบบ

1.ชว่ ยแกป้ ญั หาใหก้ ับบุคลากร2.คน้ หารายละเอยี ดตา่ งๆของระบบ3.ใชค้ วามคดิ รเิ รมิ่



5

12. จงบอกคณุ สมบตั ิของนักวิเคราะหร์ ะบบ
1) ความรทู้ างด้านคอมพิวเตอร์
2)ควรมีความรู้ในการเขียนโปรแกรม
3)ความรู้พื้นฐานทางด้านระบบธุรกจิ 4
)ความรู้ดา้ นทฤษฎีของระบบ
5) ความรู้ทางด้านสารสนเทศท่ีใช้ในการแกป้ ญั หา
6) ในกระบวนการพัฒนาระบบ
7) มจี รยิ ธรรม

ใบงานท่ี 2

Data Warehouse



6

บทท่ี 3 System Development Life Cycle
แบบฝกึ หัดหน่วยที่ 3
1.อธบิ ายจดุ เรม่ิ ตน้ ของการพฒั นาระบบงานได้

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

1. การกำหนดปัญหา (Problem Definition)
2. การศกึ ษาความเปน็ ไปได้ (Feasibility Study)
3. การวเิ คราะหร์ ะบบ (System Analysis)
4. การออกแบบระบบ (System Design)
5. การสรา้ งระบบหรือพัฒนาระบบ (System Construction)
6. การติดต้ังระบบ (System Implementation)
7. การประเมินผลและบำรุงรักษาระบบ (Maintenance)
3. อธิบายวงจรการพัฒนาระบบได้
วงจรการพัฒนาระบบหรอื ทน่ี ิยมเรยี กยอ่ ๆ ว่า SDLC เป็นวิธีการท่ีนักวเิ คราะหร์ ะบบใชใ้ นการพฒั นา
ระบบงาน เพ่ือทีจ่ ะใชเ้ รียงลำดับเหตุการณห์ รือกิจกรรม ที่จะตอง้ กระทำ ก่อนหรอื กระทำในภายหลงั เพอื่ ทจ่ี ะ
ชว่ ยใหก้ ารพัฒนาระบบงานทำได้ง่ายข้นึ ซงึ่ นักวิเคราะห์ระบบจะตอ้ งทำความเข้าใจให้ชัดเจน ถกู ต้องว่าในแต่
ละข้ันตอนนนั้ จะต้องทำอะไรทำอยา่ งไรเพ่ือให้ไดผ้ ลลัพธ์ตามที่ต้องการโดยทัว่ ไปวงจรการพฒั นาระบบจะมีการ
ทำงานเปน็ ขนั้ ตอนต่าง ๆ ในแต่ละขัน้ ตอนจะประกอบดว้ ยรายละเอยี ดของการทำงานหลายอยา่ งรวมทงั้
กำหนดเปา้ หมายของการทำงานของแตล่ ะขนั้ ตอน และจะต้องแสดงความก้าวหน้าของโครงการท่ีได้กระทำใน
แตล่ ะขัน้ ตอนดว้ ย โดยจะต้องมกี ารทำรายงานเพ่ือแสดงผลการทา งานในแต่ละขน้ั ตอน เพ่อื เสนอใหผ้ บู้ ริหาร
พิจารณาตดั สินใจว่า จะดำเนินการในข้นั ตอนต่อไปของการพฒั นาระบบ หรือเปลีย่ นทศิ ทางของการทำ
โครงการนั้นหรอื ไม่หรือหากข้ันตอนการพัฒนาระบบในข้นั ตอนใดยงั ไม่ชดั เจนเพยี งพอท่ีจะทำใหผ้ ู้บรหิ าร
ตดั สินใจได้ก็อาจจะต้องให้นักวิเคราะห์ระบบกลบั ไปศึกษารายละเอียดของการทำงานในขัน้ ตอนก่อนหนา้ น้ัน
อีกจนกวา่ ผู้บรหิ ารจะสามารถตัดสนิ ใจได้



7

ใบงานท่ี 3
การพัฒนาระบบ SDLC ในโครงงาน

1. ความเปน็ มาและความสำคัญของปญั หา
ในปัจจุบนั ส่ือมลั ตมิ เี ดียในรูปแบบของ Animation เปน็ ทยี่ อมรับและแพร่หลายมากขนึ้ และ บวกกบั

การทA่ี dobe Flash เป็นหน่ึงในโปรแกรมใชส้ รา้ งส่อื มลั ตมิ ีเดยี ในรปู แบบของ Flash พัฒนาและ เผยแพรโ่ ดย
อะโดบซี ิสเต็มสซ์ ่ึงเป็นโปรแกรมทส่ี ามารถแสดงผลผา่ น Browser ได้อีกดว้ ย จากที่กลา่ วมาขา้ งต้นทางผจู้ ัดทำ
จงึ ไดส้ ร้าง Animation อนเิ มชน่ั ขน้ึ โดยใชโ้ ดยใชค้ วามรทู้ ีไ่ ด้เรยี นมาปรับใช้กบั การปฏิบัตงิ านจริง
2. วตั ถปุ ระสงคข์ องการวิจยั

2.1 เพอื่ ให้ผู้ทส่ี นใจในการผลิตส่อื อนเิ มชน่ั
2.2 เพื่อสร้าง Animation ที่เปน็ แนวทางในการผลติ ส่ืออนเิ มช่ันให้กบั คนท่คี ดิ จะทำอนเิ มช่ัน
3.สมมุติฐานการวิจัย
คนทส่ี นใจในสอ่ื มัลตมิ ีเดียในรปู แบบของ Animation จะได้พฒั นาและเขา้ ใจในรูปแบบการสร้าง
Animationมากย่ิงข้นึ
4.ขอบเขตการวจิ ัย
4.1 ขอบเขตด้านเนื้อหา

เนื้อหาท่ีใชใ้ นการทำโครงงานนี้เปน็ เนื้อหาท่ีศึกษาและคน้ คว้ามาจากการเรยี นในชน้ั ประกาศ
ณยี บตั รวิชาชีพชนั้ สูงช้นั ปที 1่ี
4.2 ขอบเขตด้านสถานที่

วิทยาลยั เทคนคิ ตรงั
4.3 ขอบเขตด้านระยะเวลา

1 ธนั วาคม 2563 – 26 มนี าคม 2564
4.4 ขอบเขตด้านประชากร/ผู้เช่ียวชาญ

4.4.1 ผ้เู ชีย่ วชาญ ได้แก่
- อาจารยท์ ป่ี รกึ ษา

4.4.2 ประชากร ไดแ้ ก่
- ผู้ทไ่ี ด้รบั ชมอนเิ มชัน่ ชดุ นี้



8

4.5 ขอบเขตดา้ นตัวแปร
4.5.1 ตวั แปรต้น
- ความรูท้ ี่จะไดร้ บั จากอนเิ มช่ัน
4.5.2 ตวั แปรตาม
- ผลการประเมนิ ประสิทธภิ าพ
- ผลการประเมนิ ความพึงพอใจ

5. นิยามศพั ทเ์ ฉพาะ
แอนิเมชนั (Animation) หมายถงึ กระบวนการทเี่ ฟรมแต่ละเฟรมของภาพยนตร์ ถูกผลิตขึ้น ต่างหาก

จาก กนั ทีละเฟรม แล้วนำมาร้อยเรยี งเขา้ ด้วยกนั โดยการฉายต่อเนื่องกัน ไมว่ า่ จากวธิ กี าร ใช้ คอมพวิ เตอร์
กราฟิก ถา่ ยภาพรปู วาด หรือ หรอื รูปถา่ ยแต่ละขณะของหุ่นจำลองที่ค่อย ๆ ขยบั เม่ือน า ภาพดงั กลา่ วมาฉาย
ด้วยความเรว็ ต้ังแต่ 16 เฟรมต่อวินาที ขึน้ ไป เราจะเห็นเหมือนว่าภาพดงั กล่าว เคลือ่ นไหวได้ตอ่ เน่ืองกนั ท้ังน้ี
เน่อื งจาก การเห็นภาพตดิ ตาในทาง คอมพิวเตอร์ การจดั เก็บภาพแบบอนิ เมชันทใ่ี ช้กนั อย่างแพร่หลายใน
อินเทอร์เน็ต ได้แก่เกบ็ ในรปู แบบ GIF MNG SVG และ Flash ค าว่า แอนเิ มชน่ั (animation) รวมท้ังคำว่า
animate และ animator มากจากรากศัพท์ ละติน"animare" ซ่งึ มคี วามหมายว่า ท าให้มชี ีวิต ภาพยนตรแ์ แอ
นิเมชน่ั จงึ หมายถึงการสร้างสรรค์ ลายเส้นและรูปทรงที่ไม่มีชีวิต ใหเ้ คลอื่ นไหวเกิดมีชวี ติ ขนึ้ มาได้
6. ประโยชน์ทีค่ าดว่าจะได้รบั

6.1 เพอ่ื การใชค้ วามรู้ทีไ่ ดเ้ รียนมาๆสรา้ งเปน็ ผลงาน
6.2 เพือ่ เปน็ การสร้างผลงานให้กับผทู้ ส่ี นใจ



9

บทท่ี 4 Unified Modeling Language
แบบฝกึ หัดหน่วยที่ 4
1.จงอธบิ ายการพัฒนาโปรแกรม

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

1. ความซบั ซ้อนอนั เน่ืองมาจากขอบเขตของตัวงาน
2. ความยุง่ ยากในการจดัการเกี่ยวกบั กระบวนการพฒั นาโปรแกรม
3. ความยืดหยนุ่ ของโปรแกรม
4. ปัญหาอนั เกิดจากพฤตกิ รรมของระบบโปรแกรมในสว่ นต่าง ๆ
2. จงอธบิ ายกลวธิ ใี นการพฒั นาโปรแกรม
กลวิธพี ฒั นาโปรแกรมมีอยู่หลากหลายวธิ ิีในท่ีน้ีเราจะพิจารณาเพยี ง 2 วธิ ีทิ ่เี ปน็ ทนี่ ิยมเท่าน้นั ๆ ไดแ้ ก่
1. วิธีการเชิงฟงั กช์ นั่ (Functional)
2. วธิ กี ารเชิงวตั ถุ (Object Orientedวิธกี ารเชงิ ฟงั กช์ ั่น (หรอื บางครั้งเรยี กวา่ Procedural) ถอื กำเนิด
จากงานอุตสาหกรรม โดยมีหลักการวา่ ใหม้ องปญั หาในรปู ของกระบวนการทา งาน จากนั้นแตกกระบวนการ
ทำงานดังกลา่ วออกเปน็ ส่วนย่อย ๆ เรียกวา่ “ฟังก์ช่นั ”แล้วค่อยนำ ฟังกช์ ่ันท้ังหลายมาเช่อื มโยงการทำงานเขา้
ด้วยกนั ในภายหลังวธิ ีการเชิงวัตถุเปน็ การคดิ และสร้างระบบงานในลกษั ณะโลกของความเปน็ จริงโดยมองส่ิง
ต่างๆ เปน็ วตั ถหุ รอื ออปเจ็กต์ซึ่งวัตถตุ ่าง ๆ จะมคี วามเปน็ อิสระไม่ขึน้ ตอ่ กันแต่มีการทำงานรว่ มกนั ตวั อยา่ ง
ภาษาคอมพิวเตอรท์ ี่ใชว้ ิธีการเชงิ วัตถุเช่น ภาษาจาวา, C++, Smalltalk เปน็ ตน้
3.จงอธบิ ายคณุ ลกั ษณะวตั ถุ
วัตถหุ รือออปเจ็กต์คือส่งิ ใด ๆ ทเี่ ราสนใจอาจจะเป็นสิง่ ท่จี บั ตอ้ งไดเ้ ชน่ สินคา้ ลูกค้า หรืออาจเปน็ สงิ่ ท่ี
จบั ตอ้ งไม่ได้เช่น บริษัท ฝ่ายต่าง ๆ เปน็ ตน้ โดยท่ีวัตถุหรอื ออปเจ็กตต์ ่าง ๆ จะสามารถตดิ ต่อส่ือสารกันได้ดว้ ย
การส่งเมสเสจ (message) ถึงกนั วตั ถุ 1 วัตถุ
4.จงอธิบายลกั ษณะของคลาส
คลาส (Class) ซึ่งเป็นการจดักลุ่มให้แก่วัตถุต่าง ๆ ที่มีคุณสมบัติหรือพฤติกรรมบางอย่างเหมือนกัน
เมื่อเวลาที่เราจะใช้งาน เราจะไม่ใช้งานคลาสโดยตรง ๆ แต่เราจะสร้างสิ่งที่เรียกว่า “อินสแตนซ์” (Instance)
ของคลาสขึ้นมาใช้งานแทน กลไกดังกล่าวทำให้ราสามารถใช้เพียงคลาส ๆ เดียวแต่สร้างอินสแตนซ์ซึ่ง
อินสแตนซ์ของคลาสก็คือวัตถุนั่นเอง เราจึงกล่าวว่าวัตถุหนึ่ง ๆ เป็นอินสแตนซ์ของคลาสหนึ่ง เปรียบเทียบ
ง่ายๆ เสมือนว่า เรามีแปลนบ้านอยู่แปลนหนึ่ง เราก็สามารถนำแปลนบ้านนี้ไปสร้างเป็นบ้านกี่หลังก็ได้ตาม
ความต้องการของเรา



10

5.จงอธบิ ายคณุ ลกั ษณะของวิธีการเชงิ วตั ถุ
วิธีการเชิงวัตถุเป็นการคิดและสร้างระบบงานในลกัษณะโลกของความเป็นจริงโดยมองสิ่งต่างๆ เป็น

วัตถุหรือออปเจ็กต์ซึ่งวัตถุต่าง ๆ จะมีความเป็นอิสระไม่ขึ้นต่อกันแต่มีการทำงานร่วมกันตัวอย่าง
ภาษาคอมพิวเตอร์ที่ใช้วิธีการเชิงวัตถุเช่น ภาษาจาวา, C++, Smalltalk เป็นต้นวิธีการเชิงวัตถุจะสมบูรณ์ได้
ต้องประกอบด้วยองค์ประกอบ 4 อย่างได้แก่1) มุมมองของวัตถุ (Abstraction)2) คุณค่าภายในวัตถุ
(Encapsulation)3) ลำดับช้ันของวตั ถุ (Hierarchy)4) การตอบสนองต่อเมสเสจ Polymorphism
6. จงอธบิ ายความสัมพันธร์ ะหว่างวัตถุ

ความสมั พนธั ร์ ะหวา่ งวตัถุมอี ยู่2แบบ คอื
1) Links
2) Aggregation
ลงิ ค(์ Links)
ลงิ ค์(Links) เปน็ ความสัมพันธ์ในลักษณะทว่ี ตั ถหุ นง่ึ ขอใช้บริการบางอย่างจากอีกวัตถุหนึง่ โดยในการลิงคน์ น้ั
วตั ถจุ ะมีการส่งเมสเสจถึงกนั ดว้ ยโดยปกตแิ ล้วการลงิ ค์ของวตั ถจุ ะเปน็ ในทิศทางเดียว (Unidirectional) แต่กม็ ี
บางกรณีที่เปน็ การลิงค์แบบสองทาง (bidirectional)ยกตวั อย่าง เช่น เครอ่ื งคิดเลขในส่วนของปุ่มตัวเลข
(Keypad) จะมีลิงคไ์ ปยังสว่ นแสดงการคำนวณ (Display Panel) ด้วยการสง่ เมสเสจไปใหส้ ว่ นแสดงการ
คำนวณนัน้ แสดงตัวเลข (Display) ตามทเี่ รากดปุม่ ไป ในส่วนของปมุ่ ตวั เลขจะมีลงิ ค์ไปยังชิป (Chip) และส่ง
เมสเสจไปให้ชปิ เพ่ือให้ชปิ คำนวณ (Calculate) ผลลพั ธจ์ ากตวั เลขเครื่องหมายท่ีกดปุ่มไป ในขณะเดียวกนั ชปิ
เองก็มลี งิ ค์กบั ส่วนแสดงผลโดยส่งเมสเสจไปให้ว่าเม่ือชิปคำ นวณผลลัพธเ์ สร็จแล้วให้ส่วนแสดงผลนำผลลัพธ์ไป
แสดงดว้ ยความสัมพันธแ์ บบ
AggregationAggregation คือความสัมพนั ธใ์ นลกั ษณะท่ีวัตถหุ นง่ึ เป็นสว่ นหนง่ึ ของอีกวตั ถหุ นง่ึ จากตัวอยา่ ง
ขา้ งตน้ ปมุ่ ตัวเลข, สว่ นแสดงผลและ ชปิ ต่างก็เป็นสว่ นหนง่ึ ของวตั ถเุ ครื่องคิดเลขเปน็ ต้น
7. จงอธิบายความสัมพนั ธ์ระหว่างคลาส

ความสัมพนั ธร์ ะหวา่ งคลาสมีอยู่ 2 แบบ คือ
1) Inheritance
2) Utilization

การสืบทอด (Inheritance)Inheritance เป็นความสัมพันธ์ระหว่างคลาสในลักษณะของคลาสๆ หน่ึง
เป็น “ชนิดหรือประเภทหน่ึง”ของอีกคลาสหนึ่งยกตวอั ย่าง เช่น เราจะมองว่า สิ่งมีชีวิตแบ่งเปน็ พชื และสตั ว์ซงึ่
เรากล่าวว่า คลาสพืชและคลาสสัตว์นั้นเป็นประเภทหนึ่งของคลาสสิ่งมีชีวิตนนั่นเองการใช้งํานร่วมกัน
(Utilization)Utilization เป็นความสัมพันธ์ระหว่างคลาสคือการที่คลาสหนึ่งมีการขอให้วตั ถุจากอีกคลาสหน่ึง
ยกตัวอย่าง เชน่ คลาสของนักเรียนใชว้ ัตถุดนิ สอของคลาสเครอื่ งเขยี น เป็นต้น



11

บทที่ 5 Unified Modeling Language II
แบบฝกึ หดั หน่วยที่ 5
1.จงอธิบายการพัฒนาระบบงานด้วยการสร้างโมเดล

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

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

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

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



12

ท่ีสามารถใช้งานจรงิ ได้4. ไมม่ โี มเดลใดโมเดลหน่ึงท่สี ามารถอธิบายระบบงานใหไ้ ด้มุมมองต่าง ๆ อย่างครบถ้วน
จำเป็นจะตอ้ งใชห้ ลายๆ โมเดลเข้ามาอธิบายร่วมกัน
5.จงอธิบายยทุ ธวธิ ขี อง UML

จะมีบุคลากรอยู่ 3-4 ท่านที่มีบทบาทในการก าหนดไดอะแกรมเชิงวัตถุ (Object-Oriented
Diagram) นั่น คือGrady Booch : Booch ใช้ไดอะแกรมร่วมกับเทคนิคในการออกแบบที่เรียกว่า Booch
Method หรือบางทีเรียกว่า Booch Method & Booch Diagram เน้นที่การออกแบบ, การสร้างคลาส และ
การนาวิธีการแก้ไขปัญหาที่ได้ไปใช้งานกับระบบจริงJames Rambaugh : 1991 ใช้วิธีการที่เรียกว่า Object
Modeling Technique (OMT) รว่ มกบั การท างานของระบบ โดยเน้นและใหค้ วามส าคญั กบั ข้อมูลดิบเป็นต้น
Var Jacobson : 1994 ใช้วิธี OOSE & Objectory Process เน้นในเรื่องการหาความต้องการระบบ
(Requirement) ที่เรียกว่า Use case โดยเน้นที่ความต้องการของระบบเพียงอย่างเดียว ไม่สนใจอย่างอื่นHP
(Hewlett Packard) : ใช้วธิ กี าร Fusion Method คือใชค้ ลาสไดอะแกรมเน้นท่ีการน าวิธีการแก้ไขปัญหาที่ได้
ไปใช้งานกับระบบจริงCoad and Yoardon : ใช้วิธี OOA/OOD เป็ นการเขียน Data Flow Diagram (DFD)
เน้นทกี่ ารวเิ คราะห์และออกแบบ แทบจะไมม่ ีในส่วนของการน าระบบไปใช้งานจริง
6. จงบอกความหมายของ UML

UML ย่อมาจาก The Unified Modeling Language เป็นภาษาเพื่อใช้อธิบายโมเดลต่าง ๆ ถ้าพูดถึง
ภาษาเราจะนึกถึงเท็กซ์ (text) ที่มีไวยากรณ์ตา่ ง ๆ แต่ภาษาอีกรูปแบบหนึ่งท่ีเราอาจจะไม่ค่อยคุ้นเคยกันก็คอื
ภาษาที่มีลักษณะของ map language กล่าวคือ UML เป็ น map language หรือภาษาที่ใช้กราฟิกเป็น
สัญลกั ษณ์โดยภาษาในลักษณะน้ีจะใช้กับคนเฉพาะบางกลมุ่ เช่น นกั ออกแบบ (designer) หรือนกั พฒั นาระบบ
คอมพวิ เตอร์ (development)
7.จงอธิบายเหตผุ ลว่าทำไมเราจึงใช้ UML

UML ได้รวมขอ้ ดีของโมเดลต่าง ๆ เอาไวเ้ ป็นภาษาทีเ่ ปน็ มาตรฐานเปดิ (Open standard)ภาษา UML
ครอบคลมุ ทกุ ส่วนในวงจรชวี ิต (Life cycle)เปน็ ภาษาทม่ี ีความสมดลุ ในแง่ของความเรียบงา่ ยและความซับซ้อน
มบี รษิ ัทช้ันนำและอตุ สาหกรรมตา่ ง ๆ ให้การยอมรบั และใหก้ ารสนับสนุน
8.จงอธิบายประวัตกิ ารสรา้ ง UML

ภาษาที่ใชในการสร้างโมเดลเชิงวตถั ุเริ่มมีการพูดถึงอย่างจริงจังเปน็ คร้ังแรกในช่วงยุคกลางปี1970ถงึ
ปลายยคุ 1980 ซึ่งเกิดขึ้นมาพร้อม ๆกนัแนวความคิดของการเขียนโปรแกรมเชิงวัตถุในช่วงระยะเวลาการถือ
กำเนิดของวิธีการเชงิ วัตถุนักวเิ คราะห์และนักออกแบบระบบได้คดิ ค้นวิธีการเชิงวัตถุของตนเองออกมาเรื่อย ๆ
แมว้ า่ โดยภาพรวมจะมคี วามใกล้เคียงกันแตก่ ็มีรายละเอยี ดท่ีแตกตา่ งกนั ไป จึงยงั ไม่มีมาตรฐานทีแ่ น่นอนในช่วง
นั้นในยุคแรกๆ มีผู้คิดค้นวิธีการเชิงวัตถุขึ้นมาอยู่ไม่เกิน 10 วิธีจากนั้นในช่วงปีค.ศ. 1989ถึง 1994ก็มีจำนวน
เพ่มิ มากข้นึ มากกวา่ 50 วธิ ีซ่ึงผใู้ ช้วธิ ีเชงิ วตั ถุเหลา่ นั้นต่างกป็ ระสพปัญหาในการหาภาษาท่ีจะสร้างโมเดลได้ตรง
ตามความต้องการอย่างครบถ้วน และกเ็ ป็นทมี่ าของคำว่า “สมรภมู ิยุทธวธิ ี” (Method War)



13

9.จงอธิบายการพฒั นาระบบงานดว้ ยภาษา UML
แนวความคิดของ UML จะมลี ักษณะเดียวกับการกอ่ สร้างอาคารนนั่ คือจะตอ้ งมีการร่างแบบพิมพ์เขียว

(blueprint) ของอาคารที่จะสร้างเสียก่อน ซึ่งแบบพิมพ์เขียวของอาคารหนึ่งๆ จะมีหลายแบบสำหรับหลาย ๆ
มุมมอง เช่น แบบพิมพเ์ ขียวของระบบโครงสร้าง ระบบไฟฟ้า ระบบนา้ ประปา ระบบปรบั อากาศเป็นตน้ ในการ
สร้างอาคารเราจำเป็นต้องมีแบบพิมพ์เขียวหลายแบบก็เพราะเราไม่สามารถเอาทุก ๆ อย่างใส่ลงไปในแบบ
พมิ พ์เขยี วแบบเดียวได้ทง้ั น้ีแบบพิมพ์เขียวแตล่ ะแบบกจ็ ะมมี ุมมองและผู้รบั ผดิ ชอบในแต่ละแบบไป



14
บทท่ี 6 การใช้ภาษา UML
แบบฝึกหัดหน่วยที่ 6
1.จงอธบิ ายองค์ประกอบหลัก 3 ส่วนของภาษา UML
ภาษา UML จะประกอบด้วย 3 ส่วนหลัก ได้แก่1. Things เป็นรูปแบบที่เล็กที่สุดของโมเดล2.
Relationships เป็นสิ่งท่ีใช้แสดงความสัมพันธร์ ะหว่าง Things3. Diagram การรวมคณุ สมบัติบางประการของ
Things ให้อย่ใู นกลุ่มเดียวกนั
2. จงบอกคำนามของภาษา UML แบง่ ยอ่ ยเปน็ 2 ประเภทได้แกอ่ ะไรบา้ ง
structural things แบ่งย่อยออกเป็น 2 ประเภท ได้แก่1. Logical Things เป็น things ที่สามารถจับ
ตอ้ งไมไ่ ด2้ . Physical Things เป็น things ท่ีสามารถจบั ต้องได้
3. จงเขียนสัญลักษณ์ของสิ่งต่อไปนี้ a. Class b. Interface c. Collaboration d. Use case e. Active
class f. Component

a. Class

b. Interface



15

c. Collaboration
d. Use case
e. Active class
f. Component
g. Node



16

บทที่ 7 Use Case Diagram

แบบฝกึ หดั หน่วยท่ี 7
1.จงอธิบายความหมายของ Use Case Diagram

ในอดีตการสร้างโมเดลจะมองระบบ 2 รปู แบบ คือมุมมองของระบบในแง่ทม่ี ลี ักษณะคงท่ีไม่
เปลีย่ นแปลง(Static View) และมุมมองของระบบในแง่ท่ีมีลกั ษณะไมค่ งที่สามารถเปล่ียนแปลงได(้ Dynamic
View) ซึ่งยังขาดมุมมองที่สำคัญอีกมุมมองหน่งึ น่ันกค็ ือ “มุมมองของผู้ใช้ระบบ” (User’s View) และการ
สร้างโมเดลจากมุมมองของผู้ใช้ระบบก็คืองานของ Use Case DiagramUse Case คอื การสร้างโมเดลที่จะช่วย
ใหน้ กั วเิ คราะห์ระบบกบั ผูใ้ ช้ระบบสามารถส่ือสารเข้าใจตรงกันวา่ ผใู้ ชร้ ะบบจะนำระบบงานทีเ่ สรจ็ แล้วไปใช้งาน
อะไร โดย Use Case Diagram จะให้ภาพของการใช้งานระบบอย่างครบถว้ นว่า ระบบน้นั ผใู้ ช้จะสามารถ
นำไปใช้ทำอะไรไดบ้ า้ ง
2. จงบอกความสำคญั ของ Use Case Diagram

เราใช้ Use Case Diagram เป็นเคร่อื งมอื ในการกระตุ้นให้ผูใ้ ช้ระบบสามารถส่ือสารใหผ้ ู้ออกแบบ
ระบบไดร้ บั รูว้ า่ ผู้ใชต้ ้องการใช้ระบบในลกั ษณะไหน ซงึ่ การสอบถามผู้ใชถ้ ึงอินพตุ และเอาพตุ ต์ จากผ้ใู ช้เท่านน้ั
เปน็ มุมมองท่ีแคบเกินไป ท้ังยังอาจทำให้ระบบทำงานไดไ้ ม่ครบถ้วนตามที่ผู้ใชร้ ะบบต้องการ ดังนน้ั
แนวความคิดของการใช้ Use Case Diagram ก็คือการให้ผู้ใชร้ ะบบไดเ้ ข้ามามสี ่วนร่วมในการวิเคราะห์และ
ออกแบบระบบต้งั แต่เฟสแรก ๆ ของการพัฒนาระบบ
3. จงอธิบายการใช้ Use Case Diagram

ลักษณะของการใช้ Use Case Diagram จะมเี งื่อนไขหรือสภาพทเ่ี ราต้องคำนึงถึงอยู่2 อยา่ ง ได้แก1่ .
Precondition2. Postcondition
4. จงอธิบายการสรา้ ง Use Case Diagram

ขน้ั ตอนของการเกิด Use Case Diagram หนงึ่ ๆ นั้น มอี ยู5่ ขั้น ตอนหลักๆ ไดแ้ ก่1. actor หนึ่งทำให้
เกิด use case หน่ึงข้นึ 2. เกดิ Precondition สำหรบั use case3. use case มีการทำงานบางอย่าง4. เกิด
Postcondition เมือ่ use case ทำงานเสรจ็ สิ้น5. มี actor หน่งึ ไดร้ ับผลลพั ธจ์ ากการทำงานของ use case

5. จงอธบิ ายความสัมพันธร์ ะหวา่ ง Use Case Diagram

ความสัมพันธ์ระหว่าง use cases มีอยู่4แบบ คือ1. Inclusion2. Extension3. Generalization4.
Grouping



17

6. จงอธิบายการใช้ Use Case Diagram ในกระบวนการวเิ คราะหร์ ะบบ
กระบวนการวิเคราะห์ระบบ (Analysis Process) จะเริ่มต้นจากการที่เราต้องไปสัมภาษณ์ผู้ใช้งาน

ระบบเพื่อ หาว่าผู้ใช้ต้องการให้ระบบออกมาในลักษณะอย่างไร การสัมภาษณ์ควรเน้นไปที่ภาพโดยรวมของ
ระบบมากกว่าทจ่ี ะลงในรายละเอียด และในระหว่างการสัมภาษณเ์ ราจะได้ Use Case Diagram ออกมาหลาย
ไดอะแกรม จากน้ันนำไดอะแกรมเหล่านั้นไปวิเคราะห์ต่อซึ่งผลลัพธ์ที่เราจะได้จากขั้น ตอนนี้คือ Class
Diagram ตา่ ง ๆ ทเี่ ปน็ พน้ื ฐานของ ระบบ ซ่งึ เปน็ ขอบเขตโดยรวมเทา่ นั้นลำดับต่อไปเราจึงสัมภาษณ์เจาะลงไป
ในรายละเอียดของระบบ ซึ่งเราจะค้นพบว่า เราอาจมีการสร้าง Use Case Diagram เพ่ิมเติมหรอื อาจนำ use
case ที่มีอยู่แล้วมาสร้างความสัมพันธ์แบบ inclusion และ extension ได้ ในขั้นตอนของการวิเคราะห์ระบบ
สิ่งที่สำคัญที่สุด คือความเข้าใจถึงขอบเขตของระบบอย่างแท้จริง เราต้องแน่ใจว่าสิ่งที่เราหามาได้เป็นสิ่งท่ี
จำเป็นต่อระบบจรงิ ๆ ไมเ่ ช่นนั้นเราจะไดu้ se case ต่าง ๆ มากมายที่อาจเป็นสว่ นเกิน ของระบบ



18

บทท่ี 8 Class Diagram
แบบฝกึ หดั หน่วยที่ 8
1.จงอธิบายลกั ษณะทั่วไปของ Class Diagram

คลาส(Class)เปน็ องคป์ ระกอบทสี่ ำคญั อยา่ งยิ่งสำหรบั ระบบงานเชงิ วัตถ(ุ Object – Oriented
System)คลาสเปน็ การนำเอากลมุ่ ของวัตถมุ าอธิบายความหมายวัตถุซ่งึ ถูกจดั ให้อยใู่ นคลาสเดียวกันจะมแี อ
ตทรบิ วิ ต์,โอเปอรเ์ รช่นั ,ความสัมพนั ธ์และความหมายบางอย่างเหมอื นกันโดยการจดั กลมุ่ กันนเ้ี ราสามารถทำได้
ท้งั วตั ถุทเี่ ปน็ ซอฟต์แวร์และฮารด์ แวร์
2. จงอธบิ ายองค์ประกอบของคลาส

คลาสเป็นการอธบิ ายถึงกลุ่มของวัตถทุ ่ีมแี อตทรบิ วิ ต์,โอเปอเรช่ัน,ความสมั พันธแ์ ละความหมาย
บางอย่างเหมอื นกนั หรอื ร่วมกันสญั ลักษณท์ ี่ใช้แทนคลาสคอื รปู สเ่ี หลีย่ มผนื ผา้ โดยแบง่ เป็น 3 ส่วน ไดแ้ กช่ ื่อ
คลาส (name)แอตทริบวิ ต์, (attribute) และโอเปอเรชัน่ (operation)
3. จงบอกหนา้ ที่ของคลาส

ในภาษา UML เราสามารถจะกำหนดภาระหนา้ ท่ีของคลาสได้ด้วยการใชก้ ลไกทีช่ อ่ื ว่า
“responsibility” โดยที่ responsibility จะเปน็ การบ่งบอกถึงภาระหนา้ ทขี่ องคลาส เช่น คลาส Wall มีหนา้ ท่ี
จะต้องบอกถงึ ความสงู ความกวา้ งและความหนาของกำแพง,คลาส FraudAgent เมอื่ นำไปใชก้ บั แอพพลเิ คชั่น
เกีย่ วกับบัตรเครดิต จะมีหนา้ ท่ใี นการประมวลผลขอ้มลู วา่ บัตรดงั กลา่ วถกู ต้องตามกฎหมายอยู่ในเกณฑ์น่า
สงสยั หรอื เป็นบัตรปลอม เป็นต้น
4. จงอธบิ ายการสร้างข้อบงั คับให้แก่คลาส

การสร้างขอ้บงัคบั เพมิ่ เติมให้แก่คลาสจะทำให้คลาสมคี วามชัดจนมากขนึ้ ซึ่งในภาษา UML เราจะใช้
กลไกทีช่ อ่ื ว่า Constrains มาอธิบายคลาสใหม่ความชดั เจนยงิ่ ข้นึ การใช้ constrains จะมรี ปู แบบง่ายๆโดย
เขียนอยู่ภายในเครื่องหมายวงเลบ็ ปกี กา
5. จงอธบิ ายการเขียนหมายเหตุใหแ้ ก่คลาส

Attached Notes หรือ Note เป็นกลไกของภาษา UML ท่ใี ชใ้ นการให้คำอธบิ ายแกค่ ลาสในลกั ษณะ
ขอ้ มูลเพม่ิ เติมหรือโนต้ ย่อเป็นเพยี งขอ้มลู เสรมิ ไม่ใช่ข้อมลู ท่ีจำเป็นจริง ๆ จะใส่หรอื ไมใ่ ส่กไ็ ดย้ กตัวอย่างเช่น
จากคลาสcustomer เราอาจมกี ารใช้ Attached Note
6. จงอธบิ ายการสรา้ งตวั แทนของคลาสด้วย Object Diagram

ตามนยิ ามของหลักการเชงิ วัตถุ (Object-Oriented Principles) แล้ววตั ถุเป็นอนิ สแตนซ์ (instance)
ของคลาสท้ังนีเ้ น่ืองจากเมือ่ เรากำหนดคลาสขึ้นมา เราจะไม่สามารถนำคลาส น้ันไปใช้ได้โดยตรงแต่จะต้อง
สร้างอินสแตนซ์ของคลาสขน้ึ มาซึ่งการสรา้ งอินสแตนซข์ องคลาสกค็ ือการสร้างวัตถนุ นั่ เอง



19

บทท่ี 9 Interaction Diagram

แบบฝกึ หัดหน่วยที่ 9
1.จงเขยี น Sequence Diagram

2.จงเขียน Collaboration Diagram



20

บทที่ 10 State Diagram
แบบฝึกหดั หน่วยท่ี 10
จงเขยี น State Diagram จากโจทย์ท่กี ำหนดใหต้ ่อไปนี้



21

บทท่ี 11 Activity Diagram
แบบฝึกหดั หน่วยที่ 11
จงเขียน Activity Diagram จากโจทยท์ ี่กำหนดให้ต่อไปนี้



22

บทที่ 12 Component Diagram
แบบฝกึ หดั หน่วยท่ี 12
จงเขยี น Component Diagram ของการทำงานของเครอื่ ง ATM หนา้ วิทยาลัยเทคนิคตรงั ต่อเชอ่ื มกับ
สำนกั งานใหญ่ของธนาคาร (MS WORD)

ATM

แสดงข้อความ จ่ายเงิน
ใสร่ หสั ผา่ น ป้อนจำนวนเงนิ
กดปมุ่ ตกลง แสดงรายการให้เลือกถอนเงนิ
ตรวจสอบรหสั ผ่าน


Click to View FlipBook Version