¡ÒÃàµÃÕÂÁ¤ÇÒÁ¾ÃŒÍÁÊíÒËÃѺ¡ÒûÃÐàÁÔ¹¼Å … PPT.pdf3. ม สมรรถนะในการแข งข นเพ ยงใด เม อเท
บทที่ 3elearning.psru.ac.th/courses/66/document/บทที่... · Web viewค อ ส...
Transcript of บทที่ 3elearning.psru.ac.th/courses/66/document/บทที่... · Web viewค อ ส...
บทท 3แบบจำลองระบบ
o ควมสำคญของแบบจำลองo แบบจำลองตมแนวทงเชงโครงสรงo แบบจำลองตมแนวทงเชงวตถ
จากเนอหาในบททผานมา จะเหนวาในระหวางการวเคราะหความตองการนน ทมงานจำาเปนตองสรางแบบจำาลองความตองการขนมา เพอใชสอสารกบบคคลอนไมวาจะเปนผใชระบบ ลกคา หรอระหวางทมงานดวยกนเองใหเกดความเขาใจทถกตองตรงกนแทนการสอสารดวยขอความหรอคำาพด ซงอาจทำาใหเกดความเขาใจทผดพลาดได โดยแบบจำาลองทใชนน มหลายชนดแตกตางกน แตละชนดใชจำาลองระบบในดานตางๆ และเนองจากปจจบน มแนวทางวเคราะหและออกแบบระบบทไดรบความนยมหลายแนวทาง ทำาใหมการจำาแนกกลมของแบบจำาลองแตกตางกนออกไปตามแนวทางทเลอกใช ดงนน ในทนจงขอจำาแนกแบบจำาลองตามแนวทางดงกลาว 2 แนวทาง นนคอ แนวทางเชงโครงสราง และแนวทางเชงวตถ
นอกจากแบบจำาลองจะเปนเครองมอทชวยใหการสอสารระหวางกลมบคคลมความถกตองตรงกนแลว แบบจำาลองทสรางขนในระหวางการวเคราะหความตองการนน ยงนบวาเปนขอมลสำาคญทจะนำาไปใชในการออกแบบระบบดวย เนองจากความตองการการทำางานของระบบในดานตางๆ ถกนำาเสนอแทนดวยแบบจำาลอง ซงถกรวมไวในเอกสารขอกำาหนดความตองการของระบบ และเมอถงขนตอนการออกแบบ ซงเปนขนตอนททมงานตองกำาหนดราย
ละเอยดทางดานเทคนคตางๆ เพงเตมใหกบแตละฟงกชน จงจำาเปนอยางยงทจะตองนำาเอกสารดงกลาวมาใช
3.1 ควมสำคญของแบบจำลองแบบจำลอง (Model) คอ สญลกษณทใชจำาลองขอเทจ
จรงตางๆ ทเกดขนในระบบ แบบจำาลองจงประกอบไปดวยแผนภาพชนดตางๆ เพอแสดงใหเหนแตมมมองของระบบ
ตามทกลาวไวตอนตนวา แบบจำาลองเปนเครองมอสำาคญทชวยใหสอสารระหวางบคคลทกฝายมความถกตองตรงกนมากขน เนองจากแบบจำาลองประกอบไปดวยรปภาพลกษณตางๆ มากมายทจะเปนตวแทนแสดงใหเหนการทำางานของระบบ หรอแสดงใหเหนหนาทของระบบ รวมถงโครงสราง และสวนประกอบตางๆ แบบจำาลองเปนสงทไดจากการวเคราะหความตองการของผใชทงในดานระบบและซอฟตแวร สะทอนใหเหนหนาทการทำางานของระบบในดานตางๆ ไดอยางชดเจนวาระบบทำาหนาท อะไร“ ” และ อยางไร“ ” เนองจากในระยะการวเคราะหความตองการ เปนระยะแรกทมการสรางแบบจำาลอง ดงนน แบบจำาลองทไดจงเปนจดเรมตนของการสรางแบบจำาลองในระยะอนๆ ตอไป เมอเขาสระยะการสรางแบบจำาลอง ดงนน แบบจำาลองทไดจงเปนจดเรมตนของการสรางแบบจำาลองในระยะอนๆ ตอไป เมอสระยะการออกแบบ ทมงานจงตองนำาแบบจำาลองจากระยะการวเคราะหไปใชเพอกำาหนดรายละเอยดทางดานเทคนคเพมเตมใหเอออำานวยตอการออกแบบ คอ แบบจำาลอง“ของการออกแบบ” นนเอง และเนองจากเอกสารขอกำาหนดความตองการเปนเครองมอทผใชหรอลกคานำามาประเมนระบบหรอซอฟตแวรเพอพจารณายอมรบใหนำาใชงานได ดงนน ขอกำาหนดความตองการหรอรายเอยดของระบบ แบบจำาลองของการวเคราะห
32
และแบบจำาลองของการออกแบบ จงมความสมพนธกนอยางตอเนองเปนลกโซ ดงรปตอไปน
รป 3.1 แสดงควมสมพนธระหวงแบบจำลองของกรวเคระหและออกแบบ
ดงนน จงไมไดมการแบงขอบเขตการใชงานแบบจำาลองตางๆ ระหวางการวเคราะหและการออกแบบ เนองจากในระยะการออกแบบ ทมงานสามารถสรางแบบจำาลองชนดเดยวกนกบระยะการวเคราะห เพอเพมเตมรายละเอยดทางดานเทคนคมากขน อนจะเปนประโยชนตอไปโปรแกรมเมอรในการเขยนโปรแกรมได โดยใชแบบจำาลองชนดเดยวกบทไดจากระยะการวเคราะหเปนรากฐาน
3.2 แบบจำลองตมแนวทงเชงโครงสรงสำาหรบแนวทางเชงโครงสรางนน จะพจารณากระบวนการ
ทำางานกบขอมลของระบบแยกออกจากกน ดงนน แบบจำาลองทตองสราง จงแบงออกเปน 2 ชนด ไดแก แบบจำาลองการะบวนการ (Process Model) และแบบจำาลองขอมล (Data Model)
1. แบบจำาลองกระบวนการ (Process Model) ใชจำาลองขนตอนการทำางานของระบบ แผนภาพทใชคอ แผนภาพ“กระแสขอมล (Data Flow Diagram : DFD)”
33
System
Description
Analysis
Model Design
Model
2. แบบจำาลองขอมล (Data Model) ใชจำาลองโครงสรางขอมลทงหมดในระบบ แผนภาพทใชคอ แผนภาพแสดง“ความสมพนธระหวางขอมล (Entity Relationship Diagram : ERD)”
ในทนจะกลาวถงแผนภาพ DFD และ EFD ดงตอไปน
แผนภพกระแสขอมล (Data Flow Diagram: DFD)แผนภาพกระแสขอมล หมายถง แผนภาพทแสดงใหเหนถง
ทศทางการไหลของขอมลทมอยในระบบ จากกระบวนการทำางานหนงไปยงอกกระบวนการหนง หรอไปยงสวนอนทเกยวของไมวาจะเปนแหลงจดเกบขอมล(Data Store) หรอผเกยวของทอยนอกระบบ (External Agent) ดงนน จงสามารถนำา DFD ไปใชออกแบบฐานขอมลได แผนภาพกระแสขอมลแบงเปน 2 ประเภท ไดแก
1. แผนภาพกระแสขอมลในระดบตรรกะ (Logical DFD) เปน DFD ทแสดงกระบวนการของระบบในระดบแนวคดเทานน กลาวคอ แสดงใหเหนถงการไหลของขอมลพอสงเขป ไมลงลกถงรายละเอยดและไมไดใชคำาศพททางเทคนคมากนก และมกใชในขนตอนการวเคราะหความตองการ
2. แผนภาพกระแสขอมลในระดบภาพ (Physical DFD) เปน DFD ทแสดงใหเหนรายละเอยดภายในกระบวนการ เชน ชอกระบวนการ วธการทำางาน แหลงกำาเนด และปลายทาง เปนตน โดยมการใชศพทเทคนคเพอใหสอสารกบโปรแกรมไดงายขน แผนภาพชนดนใชในขนตอนการออกแบบระบบ
แสดงตวอยาง DFD ดงรปตอไปน
34
รป 3.2 แสดงตวอยง DFDจากรปภาพขางตน แสดงตวอยาง DFD ของกระบวนการ
“Compute and Printing Invoice” หรอกระบวนการคำานวณและสงพมพใบกำากบสนคา ขอมลเขาส Process 4.1 “Compute” คอ หมายเลขใบสงสนคา (Deliver Note) และขอมลใบสงขาย (Sale Order Data) และ Process 4.1 คำานวณจำานวนเงนทงหมดแลว จะสงเปนขอมลสำาหรบสงพมพใบกำากบสนคา (Invoice Data) ไปยง Process 4.2 “Printing Invoice” เพอสงพมพใบกำากบสนคาและสงไปพรอมกบสนคาใหแกลกคา (Customer) จากตวอยาง สรปสญลกษณของ DFD ไดดงตอไปน
รป 3.3 แสดงสญลกษณของ DFD
หลกการสราง DFD คอ การแบงการทำางานจากกระบวนการหลกทอยระดบบน ลงไปสกระบวนการยอยทอยระดบลางบางตำาราจงกำาหนดไววา DFD ระดบบนสดเรยกวา “Context Diagram” เพอแสดงใหเหนภาพรวมของระบบ ดงนน เพอแสดงใหเหนภาพรวมของระบบ ดงนน หากตองการเรมตนสราง DFD จงเรมตนจาก Context Diagram Context Diagram คอ แผนภาพกระแสขอมลระดบบนสดทแสดงภาพรวมการทำางานของระบบทมความสมพนธกบสภาพ
35
แวดลอมภาพนอกระบบ Context Diagram จงชวยกำาหนดขอบเขตของระบบทพฒนาได แสดงตวอยาง Context Diagram ของระบบงานขาย ดงรปตอไปน
รป 3.4 แสดงตวอยง Context Diagram ของระบบงนขย (Sales System)
จากรป จะเหนวาระบบงานขายนนตองปฏสมพนธกบบคคลอนทอยนอกระบบทงหมด 4 กลม ไดแก ระบบประมาณผลใบสงซอ (Order Processing) ฝายบรการงานขาย (Sale Management) ฝายผลตและคลงสนคา (Manufacturing and Store) และลกคา (Customer) เมอเหนภาพรวมของระบบงานขายแลว ทมงานจะตองสราง DFD ระดบถดมา คอ 0 เพอแสดงใหเหนกระบวนการทำางานภายในของระบบ และนำาแตละกระบวนการมาแตกเปนกระบวนการยอยในระดด 1,2 ตอไปเรอยๆ จนกวาจะไมสามารถแบงยอยกระบวนการไดอก อยางไรกตาม กระบวนการทสามารถแบงยอยตอไปไดอก จะตองกระบวนการยอยอยภายในอยางนอย 2 กระบวนการ แสดงตวอยาง DFD Level 0,1 ดงรปตอตอไป (a) และ (b)
36
รป 3.5 แสดง DFD Level 0 ของระบบงนขย
รป 3.6 DFD Level 1 ของ Process 4.0 “Compute and Printing Invoice”
37
แผนภพแสดงควมสมพนธระหวงขอมล (Entity Relationship Diagram : ERD)
แผนภาพแสดงความสมพนธระหวางขอมล (ERD) หมายถง แผนภาพทใชเปนเครองมอสำาหรบจำาลองขอมล ซงจะประกอบไปดวย Entity (แทนกลมของขอมลทเปนเรองเดยวกน/เกยวของกน) ความสมพนธระหวางขอมล (Relationship) ทเกดขนทงหมดในระดบ นอกจากน ทกๆ Entity จะม Attribute เปนตวบงบอกถงลกษณะหรอคณสมบตของ Entity นนดวย
จากตวอยางระบบงานขาย ยกตวอยาง Entity ในระบบ 3 Entity ไดแก Customer, Order และ Sale Order ซงม Attribute และ Primary Key ดงน
Customer (Customer ID, Name , Address)Order (Order ID, Product)Sale Order (Sale ID, Order ID, Customer ID)
แสดงความสมพนธระหวาง Entity ทง 3 ไดดวย ERD ดงรป
รป 3.7 แสดงตวอยง ERD ของ Entity “Customer”, “Order” และ “Sale Order”
3.3 แบบจำลองตมแนวทงเชงวตถจากแนวทางเชงโครงสราง จะเหนวาทมงานตองพจารณา
กระบวนการทำางานและขอมลของระบบแยกสวนกน ทำาใหอาจเกด
38
ความสบวนไดวาควรพจารณาสงใดกอนจงจะดทสดแลว จะพจารณาทกๆสงในระบบทสนใจเปนวตถ ซงประกอบไปดวยขอมล (คณลกษณะ) และกระบวนการทำางาน (พฤตกรรม) รวมอยดวยกน จงเปนการพจารณาทงขอมลและกระบวนการทำางานไปพรอมๆกน
ดงนน ในระบบใดๆ จงประกอบไปดวยออบเจกตจำานวนมากทสมพนธกนเพอทำางานรวมกน ใหเกดเปนการทำางานของระบบ โดยทหากออบเจกตใดทมคณลกษณะและพฤตกรรมเหมอนกนจะถกจดใหอยใน คลาส“ (Class)” เดยวกน เชน ออบเจกต พยาบาล “(Nurse) ” กบ ผบรหาร “ (Manager)” มลกษณะห ตา หรอแขน ขา เหมอนกน จงจดใหอยในคลาสเดยวกน คอ คน “ (Person)” เปนตน ดงนน จงสามารถกลาวในทางกลบกนวา คลาสเปนเสมอน“แมพมพทใชสรางออบเจกตของคลาสนน” ดงจะไดจากการเขยนโปรแกรมเชงวตถ ทตองมการสรางคลาสไวกอนการสรางออบเจกต แสดงภาพของคลาส ไดดงน
รป 3.8 แสดงภพจำลองของคลสแบบจำาลองของระบบทสรางตามแนวทางเชงวตถนน มหลาก
หลายชนดตามระเบยบวธปฏบตทบคคลหรอองคกรระบบแตกตางๆ กำาหนดขน แบบจำาลองแผนภาพแตละชนดใชสญลกษณแทนออบเจกตและคลาส รวมถงองคประกอบอนของระบบแตกตางกนออกไป ทำาใหผเชยวชาญดานการวเคราะหและออกแบบเชงวตถไดรวมตวกนเพอกำาหนดภาษารปภาพ เพอใชสรางแบบจำาลองเชงวตถ
39
เรยกวา UML โดยไดรบการยอมรบจากองคกร OMG ใหเปนภาษารปภาพทใชแบบจำาลองเชงวตถมาตรฐาน
สำาหรบแผนภาพทจะใชจำาลองระบบเชงวตถของภาษา UML น ถกแบงออกเปน 2 กลม รวมทงหมด 9 แผนภาพ ดงน
1. Structural Diagram เปนกลมแผนภาพทแสดงใหเหนโครงสรางสถต ของระบบ คอ โครงสรางในสวนทไมมการเปลยนแปลงหรอเคลอนไหวแมมเหตการณใดๆ เกดขน แบงออกเปนแผนภาพชนดตางๆ ดงน - Class Diagram- Object Diagram- Component Diagram- Deployment Diagram
2. Behavioral Diagram เปนกลมแผนภาพทแสดงใหเหนภาพเชงกจกรรมของระบบ คอ แสดงใหเหนพฤตกรรมแงระบบทมการเปลยนแปลงไปเมอมเหตการณใดๆ เกดขน และแสดงใหเหนถงความสามารถของระบบทดำาเนนการในหนาทบางอยางได แบงออกเปนแผนภาพชนดตางๆ ดงน- Use Case Diagram- Sequence Diagram- Collaboration Diagram- Statechart Diagram- Activity Diagram
สรปเนอหาในบทนกลาวถงแบบจำาลองของระบบทจำาเปนตองสราง
ขนในระหวางการวเคราะหความตองการ ขอมลความตองการทรวบรวมมาไดจะประกอบไปดวยรายละเอยดการทำางานของระบบหลายดาน ทมงานจำาเปนตองจำาแนกขอมลความตองการเหลานน
40
แลวจดหมวดหมไวใหชดเจน เพอใชในการสอสารระหวางลกคา ผใช หรอระหวางทมงานดวยกนเองแตการสอสารดวยคำาพดหรอขอความ บางครงอาจทำาใหเกดความเขาใจทคลาดเคลอนได ดงนน ทมงานจงตองสรางเปนแบบจำาลองชนดตางๆ ขนมา เพอชวยใหดารสอสารดงกลาวมความถกตองตรงกนมากขน เนองจาก แบบจำาลอง “(Model)” จะประกอบไปดวยรปภาพสญลกษณ เพอใชอธบายแทนสงตางๆ ในระบบ ทำาใหเขาใจงายขน ซงเมอเขาสระยะการออกแบบแลว ทมงานจะตองนำาแบบจำาลองทไดจากระยะการวเคราะหมาใช เพอกำาหนดรายละเอยดตางๆ ดานเทคนคเพมเตม ใหสามารถสอสารกบโปรแกรมเมอรตอไปไดงายขน ในทนไดกลาวถงแบบจำาลองตามแนวทางการวเคราะหและออกแบบระบบ 2 แนวทาง ไดแก แนวทางเชงโครงสราง และแนวทางเชงวตถ
แนวทางเชงโครงสรางจะพจารณาขนตอนการทำางานของระบบแยกสวนจากขอมลของระบบ ดงนนแบบจำาลองทไดจงม 2 ประเภท คอ แบบจำาลองกระบวนการทำางานของระบบ และแบบจำาลองขอมล โดยทแบบจำาลองกระบวนการทำางานของระบบ จะแสดงใหเหนขนตอนการทำางานทงหมดของระบบ แผนภาพทใชคอ “แผนภาพกระแสขอมล ” สวนแบบจำาลองขอมล ใชแสดงขอมลและความสมพนธระหวางขอมลทงหมดแผนภาพทใชคอ แผนภาพ“แสดงความสมพนธระหวางขอมล ” ทมงานสามารถสรางแบบจำาลองชนดใดกอนกได แตเมอเขาสระยะการออกแบบแลว ทมงานสามารถนำา DFD และ ERD จากระยะการวเคราะหไปกำาหนดรายละเอยดทางเทคนคเพมเตมได เฉพาะกรณของ DFD ทสรางในระยะการออกแบบ จะเรยนวา “DFD ระดบกายภาพ”
แนวทางเชงวตถ จะพจารณาสงตางๆ ในระบบเปนวตถ หรอ ออบเจกต แตละออบเจกตจะประกอบดวยขอมลและขนตอนการทำางานรวมอยดวย ดงนน แนวทางเชงวตถ จงชวยใหทมงาน
41
วเคราะหความตองการไดรวดเรวขน สำาหรบแบบจำาลองทใชตามแนวทางดงกลาว คอ แบบจำาลองเชงวตถ“ ” ทจะตองสะทอนใหเหนมมมองดานตางๆ ของออบเจกตในระบบได ภาษาทใชแบบจำาลองเชงวตถทนยมใชคอ UML แบงแผนภาพออกเปน 2 กลม ไดแก 1) Structural Diagram ใชแสดงโครงสรางของระบบ เปนโครงสรางทไมมการเปลยนแปลง แผนภาพในกลมน คอ Class Diagram, Object Diagram, Component Diagram, Deployment Diagram และ 2) Behavioral Diagram ใชแสดงพฤตกรรมของระบบทมการเปลยนแปลงตามเหตการณ แผนภาพในกลมน คอ Use Case Diagram, Sequence Diagram, Collaboration Diagram, Statechart Diagram และ Activity Diagram
42