SA Chapter 6

20,963 views

Published on

SA Chapter 6

Published in: Education
2 Comments
15 Likes
Statistics
Notes
No Downloads
Views
Total views
20,963
On SlideShare
0
From Embeds
0
Number of Embeds
36
Actions
Shares
0
Downloads
0
Comments
2
Likes
15
Embeds 0
No embeds

No notes for slide

SA Chapter 6

  1. 1. Phase 2 : Systems analysis-Analyzing Requirements บทที่ 6
  2. 2. Process Modeling involves graphically representing the functions, or processes, which capture, manipulate, store and distribute data between a system and its environment and between components within a system.
  3. 3. Process Model <ul><li>ใช้อธิบายได้ทั้งระบบเดิม และระบบใหม่ </li></ul><ul><li>ในขั้นตอนการวิเคราะห์นี้จะเป็น Logical Process Model </li></ul><ul><li>ประกอบด้วย </li></ul><ul><li>แผนภาพแสดงการไหลของข้อมูล (Data Flow Diagram : DFD) </li></ul><ul><li>( แผนภาพการไหลของข้อมูล / แผนภาพกระแสข้อมูล ) </li></ul><ul><ul><ul><li>แผนภาพบริบท (System Context Diagram) </li></ul></ul></ul><ul><ul><ul><li>แผนภาพระดับต่างๆ </li></ul></ul></ul><ul><li>พจนานุกรมข้อมูล (Data Dictionary ) </li></ul>
  4. 4. <ul><li>สัญลักษณ์ของ DFDs มีอยู่ 4 รูป คือ </li></ul><ul><ul><li>Process </li></ul></ul><ul><ul><li>Data flow </li></ul></ul><ul><ul><li>Data store </li></ul></ul><ul><ul><li>External entity </li></ul></ul><ul><li>มีสองรูปแบบของสัญลักษณ์ DFDs ที่ได้รับความนิยม </li></ul><ul><ul><li>Gane and Sarson </li></ul></ul><ul><ul><li>DeMarco and Yourdon </li></ul></ul>สัญลักษณ์ใน Data Flow Diagram
  5. 6. บทที่ 4 Phase 2 :Systems Analysis – Analyzing Requirement t
  6. 7. สัญลักษณ์ใน Data Flow Diagram-Process เช่น ค้นหาข้อมูลคนไข้ , พิมพ์ใบเสร็จรับเงินฯลฯ ชื่อ 1. <ul><li>หมายเลข </li></ul><ul><li>ชื่อ ( เป็นกริยา ) </li></ul><ul><li>ต้องมี Dataflow ที่เป็น Output อย่างน้อย 1 อัน </li></ul><ul><li>มี Dataflow ที่เป็น Input อย่างน้อย 1 อัน </li></ul><ul><li>ผลลัพธ์ที่ออกมาจาก process จะต้องมีความแตกต่างของข้อมูลที่รับเข้ามาใน process เดียวกัน </li></ul><ul><li>กระบวนการ </li></ul><ul><li>(Process) เป็นกิจกรรม หรือขึ้นตอนที่จะต้องทำ </li></ul>
  7. 8. <ul><li>Process ( เพิ่มเติม ) : </li></ul><ul><li>A. No process can have only outputs. </li></ul><ul><li>(if an object has only outputs, then it must be a source.) </li></ul><ul><li>B. No process can have only inputs - a black hole. (If an object has only inputs, then it must be a sink.) </li></ul><ul><li>C. The inputs to a process must be sufficient to produce the outputs. </li></ul>
  8. 9. สัญลักษณ์ใน Data Flow Diagram-Data flow เช่น ชื่อคนไข้ , ใบเสร็จรับเงิน ฯลฯ ชื่อ <ul><li>ชื่อ ( เป็นคำนาม ) </li></ul><ul><li>มีการติดต่อกับกระบวนการอย่างน้อย 1 อัน </li></ul><ul><li>กระแสข้อมูล </li></ul><ul><li>(Data Flow) คือ ชิ้นของข้อมูล </li></ul>
  9. 10. <ul><li>Data Flow : </li></ul><ul><li>A data flow has only one direction of flow between symbols. </li></ul><ul><li>A data flow cannot go directly back to the same process it leaves. There must be at least one other process that handles the data flow. </li></ul><ul><li>A data flow has a noun phrase label. More than one data flow noun phrase can appear on a single arrow as long as all of the flows on the same arrow move together as one package. </li></ul>
  10. 11. ลักษณะของ Data flow symbol ที่ถูกต้อง
  11. 12. ลักษณะของ Data flow symbol ที่ไม่ถูกต้อง
  12. 13. สัญลักษณ์ใน Data Flow Diagram-Data Store เช่น ประวัติคนไข้ ฯลฯ 1. ชื่อ <ul><li>หมายเลข </li></ul><ul><li>ชื่อ ( เป็นคำนาม ) </li></ul><ul><li>ต้องมี Dataflow ที่เป็น Input อย่างน้อย 1 อัน </li></ul><ul><li>โดยมากมี Dataflow ที่เป็น Output อย่างน้อย 1 อัน </li></ul><ul><li>ที่เก็บข้อมูล </li></ul><ul><li>(Data Store) คือที่ข้อมูลถูกเก็บไว้ </li></ul>
  13. 14. <ul><li>Data Store : </li></ul><ul><li>A. Data cannot move directly from one data store to another data store. Data must be moved by a process. </li></ul><ul><li>B. Data cannot move directly from an outside source to a data store. Data must be moved by a process that received data from the source and places the data into data store. </li></ul><ul><li>C. Data cannot move directly to an outside sink from a data store. Data must be moved by a process. </li></ul><ul><li>D. To avoid having data flow line cross each other, data stores or sources/sinks may be repeated. Use additional symbol e.g. double line on the middle vertical line of a data store, or a diagonal line in the corner of a source/sink square. </li></ul>
  14. 15. ลักษณะของ Data Store symbol ที่ถูกต้อง
  15. 16. ลักษณะของ Data Store symbol ที่ไม่ถูกต้อง
  16. 17. สัญลักษณ์ใน Data Flow Diagram-External Entity ชื่อ เช่น คนไข้ นักศึกษา ฯลฯ <ul><li>ชื่อ ( เป็นคำนาม ) </li></ul><ul><li>Data cannot move directly from a source to a sink. It must be moved by a process if the data are of any concern to our system. Otherwise, the data flow is not shown on the DFD. </li></ul><ul><li>เอนทิตี้ภายนอก (External Entity) </li></ul><ul><li>คน องค์กร หรือระบบ ภายนอกทิ่เกี่ยวข้อง </li></ul><ul><li>บางครั้งอาจ จ ะเรียกเป็ น terminators หรือ source หรือ sink </li></ul>
  17. 18. ลักษณะของ External symbol ที่ถูกต้อง
  18. 19. ลักษณะของ External symbol ที่ไม่ถูกต้อง
  19. 21. การเขียน DFD <ul><li>ส่วนมากระบบจะเป็นกระบวนการที่ซับซ้อน </li></ul><ul><li>นิยมเขียนแบบ Top-Down </li></ul><ul><li>แผนภาพระดับบนสุดเรียกว่าแผนภาพบริบท ( Context Diagram ) จะสนใจเพียงว่ามีอะไรติดต่อกับระบบบ้าง </li></ul><ul><li>มีการรับข้อมูลอะไรเข้ามาบ้าง ส่งข้อมูลอะไรออกบ้าง </li></ul><ul><li>DFD มุมมองบนสุด ( กว้างสุด ) เรียกว่าระดับ 0 และเมื่อมองละเอียดลงมาเรื่อยๆ ว่าระดับ 1, 2, 3 .. ตามลำดับ </li></ul>
  20. 22. <ul><li>เขียนแผนภาพบริบท (Context Diagram) </li></ul><ul><li>เขียนแผนภาพระดับ 0 (Level-0 Diagram) </li></ul><ul><li>แตกแผนภาพเป็นระดับย่อย (Decomposition of DFD) </li></ul><ul><li>ตรวจสอบความสมดุลของ DFD (Balancing DFD) </li></ul>ขั้นตอนการเขียน DFD
  21. 23. แผนภาพบริบท (Context Diagram) ข้อควรระวังในการคิดถึง DFD ขั้นที่ละเอียดลงไปคือจะต้องสมดุล Entity A Entity B X Y Z ระบบ 0 ระบบ ......
  22. 24. แผนภาพบริบทแบบขยาย (Extended Context Diagram) B A Entity A Entity B X ระบบ 1 Process T 3 Process V 2 Process U Y Z Entity A Entity B X ระบบ 1 Process T 3 Process V 2 Process U Y Z
  23. 25. Data Flow Diagram Level 0 Entity A X Y B A Entity B Z 1 Process T 2 Process U 3 Process V
  24. 26. Data Flow Diagram Level 1 B J H G M N A Y 1 3 Entity A Entity B Z 2.1 Process D 2.2 Process E 2.3 Process F Data Store MN D1
  25. 27. Data Flow Diagram Level 2 Q R H S G 2.1 2.3 2.2.1 Process K 2.2.2 Process L 2.2.3 Process M
  26. 28. <ul><li>Context diagram </li></ul><ul><li>Level – 0 diagram (process 1.0,2.0…) </li></ul><ul><li>Level – 1 diagram (process 1.1,1.2… </li></ul><ul><li>process 2.1,2.2,2.3… process 3.1,3.2…) </li></ul><ul><li>Level – n diagram </li></ul>
  27. 29. <ul><li>Context diagrams </li></ul><ul><ul><li>แผนภาพระดับแรกของ DFDs แสดงภาพรวมของระบบ โดยแสดงขอบเขตของระบบ (scope), หน่วยภายนอกที่เกี่ยวข้องและ data flow ระหว่าง entity และ ระบบ </li></ul></ul><ul><ul><li>จะประกอบด้วย 1 process เท่านั้น และ process ดังกล่าวนี้จะมีชื่อเป็นชื่อของระบบและมีหมายเลขประจำ process เป็นหมายเลข 0 </li></ul></ul><ul><ul><li>context diagram จะมีเพียงสามสัญลักษณ์ คือ external, process (1 process) และ data flow ( จะไม่เขียน data store ในระดับนี้ ) </li></ul></ul><ul><ul><li>แต่ละ context diagram ควร อยู่ภายในหนึ่งหน้ากระดาษ </li></ul></ul><ul><ul><li>ชื่อของ process ใน context diagram จะเป็นชื่อของระบบงาน </li></ul></ul>
  28. 30. ตัวอย่างของ context diagram
  29. 31. Diagram 0 <ul><li>แสดงรายละเอียดของระบบมากกว่า context diagram </li></ul><ul><li>แสดง process หลักของระบบ , data flows, external และ data stores </li></ul><ul><li>เป็นส่วนที่แสดงรายละเอียดต่อจาก context diagram (exploded หรือ partitioned or decomposed) </li></ul><ul><li>บางครั้งอาจจะเรียกว่า overview หรือ level 0 diagram </li></ul>
  30. 32. ตัวอย่าง Data Flow Diagram-Level 0 คนไข้ ชื่อคนไข้ ชื่อคนไข้ ข้อมูลคนไข้ ข้อมูลคนไข้ แพทย์ รายงาน ประวัติ คนไข้ กระบวนการค้นหา และพิมพ์ข้อมูลคนไข้เมื่อคนไข้มาติดต่อที่แผนกทะเบียนของโรงพยาบาล 1. หาข้อมูลคนไข้ 2. พิมพ์ประวัติคนไข้ D1 ประวัติคนไข้
  31. 33. * การตรวจสอบ DFD <ul><li>ผิดหลักการ (Syntax Error) </li></ul><ul><ul><li>ในภาพเดียวกัน ( ความถูกต้องตามกฎของ Object ต่างๆ ) </li></ul></ul><ul><ul><li>ระหว่างภาพ ( สมดุล / การแตกย่อย / กฎการคงอยู่ของข้อมูล ) </li></ul></ul><ul><li>ผิดความหมาย (Semantic Error) </li></ul><ul><ul><li>คือ DFD ที่ไม่สามารถทำงานได้ไม่จริง </li></ul></ul><ul><ul><li>ให้ผู้ใช้ระบบเป็นผู้ตรวจสอบความถูกต้อง </li></ul></ul><ul><ul><li>การแตกกระบวนการมีความคงที่ </li></ul></ul><ul><ul><li>ความคงที่ในการใช้คำศัพท์ </li></ul></ul>
  32. 34. Class Activity : Errors A very quick activity to demonstrate why we need to look at the big picture to get the correct solution to a problem Find four errors from the following statement : Their is four erors in this statement. มี่ที่ผิด สี่ แห่งไนประโยขนี้
  33. 35. DFD ต่อไปนี้ผิดที่ใด เพราะอะไร A B ก ค ง ข จ 1.0 Process A 2.0 Process B D1 DataStore1 D2 DataStore2
  34. 36. Exercise 1
  35. 37. Exercise 1
  36. 38. Exercise 2
  37. 39. Exercise 2 1 . Data store D1 should not appear in context diagram 2. Change D2 in level-0 diagram to D1 since it is the same data store
  38. 40. Data Dictionary
  39. 41. พจนานุกรมข้อมูล (Data Dictionary) –Data Flow ข้อมูลผู้ป่วย - เป็นข้อมูลของผู้ป่วยที่มาทำบัตรใหม่ ทุกครั้งที่มีผู้ป่วยใหม่ Name + Surname + Address1 + Address2 + Province + zipcode + Telephone + Birthdate - ชื่อ ชือย่อ / ชื่ออื่น คำอธิบาย ระยะเวลา เนื้อหา ข้อจำกัด ชื่อกระแสข้อมูล อาจจะเป็นชื่ออื่น หรือชื่อภาษาอังกฤษ บรรยายเกี่ยวกับข้อมูลโดยคร่าวๆ บรรยายว่าเป็นข้อมูลที่เกิดขึ้นทุกวัน ทุกสัปดาห์ หรือทุกครั้งที่มีอะไรเกิดขึ้น ข้อมูลย่อยๆ (Field) บรรยายเกี่ยวกับข้อจำกัดของข้อมูล ชื่อ ชือย่อ / ชื่ออื่น คำอธิบาย ระยะเวลา เนื้อหา ข้อจำกัด
  40. 42. พจนานุกรมข้อมูล (Data Dictionary) –Data Store ข้อมูลผู้ป่วย Patient File เป็นข้อมูลของผู้ป่วยทั้งหมด ทุกครั้งที่มีผู้ป่วยใหม่ Patient_ID (PK,Text,8)+Patient_Name (Text,15)+ Patient_Surname (Text,15)+ Address1 (Text,20) + Address2 (Text,20)+ Province (Text,15)+ zipcode (Text,5)+ Telephone (Text,20)+ Birthdate (Date,8) ชื่อ ชือย่อ / ชื่ออื่น คำอธิบาย Data Field ชื่อที่เก็บข้อมูล อาจจะเป็นชื่ออื่น หรือชื่อภาษาอังกฤษ บรรยายเกี่ยวกับที่เก็บข้อมูลโดยคร่าวๆ ประกอบด้วยฟิลด์อะไรบ้าง Primary Key Foreign key ความยาวของแต่ละฟิลด์ ชนิดของแต่ละฟิลด์ ชื่อ ชือย่อ / ชื่ออื่น คำอธิบาย Data Field
  41. 43. พจนานุกรมข้อมูล (Data Dictionary) – External Entity ผู้ป่วย คนไข้ เป็นผู้ป่วยภายใน หรือภายนอกของโรงพยาบาล นัดหมายแพทย์ พบแพทย์ รับยา จ่ายเงิน - ชื่อ ชือย่อ / ชื่ออื่น คำอธิบาย ความสัมพันธ์กับระบบ ผู้ติดต่อ ชื่อเอ็นทิตี้ อาจจะเป็นชื่ออื่น หรือชื่อภาษาอังกฤษ บรรยายเกี่ยวกับเอ็นทิตี้โดยคร่าวๆ อธิบายว่ามีความสัมพันธ์กับกระบวนการใด ชื่อคนที่ติดต่อด้วย ในกรณีที่เอ็นทิตี้เป็นองค์กร ชื่อ ชือย่อ / ชื่ออื่น คำอธิบาย ความสัมพันธ์กับระบบ ผู้ติดต่อ
  42. 44. พจนานุกรมข้อมูล (Data Dictionary) -Process นัดหมายแพทย์ 1 เมื่อผู้ป่วยนัดหมายแพทย์ทางโทรศัพท์ หรือหน้าเคาน์เตอร์ พนักงานจะบันทึกข้อมูลลงในระบบ - ชื่อ หมายเลขกระบวนการ คำอธิบาย ข้อจำกัด ชื่อกระบวนการ หมายเลขกระบวนการ บรรยายเกี่ยวกับกระบวนการโดยคร่าวๆ หรืออาจจะใช้เป็นที่ใส่ Pseudo Code เพื่ออธิบายขั้นตอนโดยละเอียดของกระบวนการ บรรยายเกี่ยวกับข้อจำกัดของกระบวนการ เช่นในระบบบนเว็บอาจจะมีข้อจำกัดว่าผู้ใช้จะต้องไม่ทิ้งหน้าจอไว้โดยไม่ทำอะไรเลยไม่เกิน 2 นาที ถ้ามากกว่านั้นจะต้อง Login ใหม่ ชื่อ หมายเลข คำอธิบาย ข้อจำกัด
  43. 45. ขั้นตอนการสร้าง <ul><li>ศึกษาขั้นตอนและลักษณะการทำงานเพื่อวิเคราะห์ Use Case </li></ul><ul><li>เขียน Context Diagram </li></ul><ul><li>เขียน DFD Level 0 </li></ul><ul><li>เขียน DFD Level 1 </li></ul><ul><li>… . </li></ul>Example : ระบบร้านขายหนังสือ Online
  44. 46. พิจารณาลักษณะการทำงาน เพื่อวิเคราะห์ Use Case <ul><li>ระบบร้านขายหนังสือ Online </li></ul><ul><li>จากเดิมที่มีลูกค้ามาเลือกซื้อหนังสือที่ร้าน จ่ายเงิน และนำหนังสือกลับไป ร้านเดิมมีฐานข้อมูลหนังสือแล้ว </li></ul><ul><li>ถ้าเปลี่ยนมาเป็นร้านขายหนังสือ Online จะต้องปรับปรุงอย่างไร ??? </li></ul>
  45. 47. ศึกษาลักษณะการทำงานเพื่อวิเคราะห์ Use Case <ul><li>การเลือกซื้อสินค้า -> มีฟังก์ชันให้ผู้ซื้อเข้ามาค้นหาได้แทนการเดินดู หรือถามพนักงานในร้าน และควรจะมีข้อมูลประกอบอื่นๆ เช่นรายละเอียดของหนังสือ รูปหน้าปกหนังสือ Comment จากผู้อ่านไว้ประกอบการเลือกซื้อเพราะผู้ซื้อไม่สามารถเปิดดูหนังสือจริงๆ ได้ </li></ul><ul><li>การจ่ายเงินซื้อสินค้า -> ให้จ่ายผ่านทางบัตรเครดิต โดยที่ลูกค้าจะต้องสมัครเป็นสมาชิก ( กรอกข้อมูลส่วนตัว และข้อมูลด้านการเงิน ) ก่อนที่จะซื้อได้ </li></ul><ul><li>การส่งสินค้า -> จะส่งไปให้ฝ่ายส่งของทำการจัดส่ง </li></ul><ul><li>จะต้องติดต่อกับฐานข้อมูลระบบเดิมได้ </li></ul>
  46. 48. ดังนั้นอาจสรุป Use Case ได้ดังนี้ <ul><li>Use Case กลุ่มของงานที่เกี่ยวข้องกัน </li></ul><ul><li>การจัดการข้อมูลพื้นฐานเกี่ยวกับหนังสือ </li></ul><ul><li>การจัดการข้อมูลทางด้านการตลาดเพื่อส่งเสริมการขาย </li></ul><ul><li>การรับข้อมูลการซื้อจากอินเทอร์เน็ตผ่านเว็บเพจของร้าน </li></ul><ul><li>การจัดการเรื่องการจัดส่งหนังสือ </li></ul>
  47. 49. สร้าง Context Diagram <ul><li>วิเคราะห์ Use Case แต่ละอันว่ามี ข้อมูล อะไรบ้าง มีข้อมูลใดบ้างที่รับ / ส่งระหว่างระบบกับ เอ็นทิตี้ภายนอก </li></ul>
  48. 50. Context Diagram ของระบบร้านหนังสือ Online 0 แก้ไขสัญลักษณ์ process ระบบการซื้อหนังสือทางอินเทอร์เน็ต ผู้จัดการ ระบบเก่า ข้อมูลทั่วไปของหนังสือ รายงานข้อมูลทั่วไปของหนังสือ ข้อมูลทั่วไปของหนังสือ บริษัทผู้ขายหนังสือ ข้อมูลส่งเสริมการขาย ข้อมูลส่งเสริมการขาย รายงานข้อมูลส่งเสริมการขาย ลูกค้า เงื่อนไขหนังสือที่ต้องการค้นหา ผลของการค้นหา หนังสือที่ต้องการดูรายละเอียด รายละเอียดหนังสือที่ต้องการ ข้อมูลส่งเสริมการขาย หนังสือที่ต้องการซื้อ หนังสือที่ต้องการซื้อ ข้อมูลเกี่ยวกับลูกค้า ตอบรับยืนยันการสั่งหนังสือ แจ้งข้อผิดพลาดในการสั่งหนังสือ ศูนย์บัตรเครดิต รายละเอียดการขออนุมัติวงเงิน อนุมัติ ไม่อนุมัติ ข้อมูลการสั่งหนังสือ สถานะการจัดส่ง สถานะการจัดส่ง รายงานสถานะการจัดส่ง
  49. 51. สร้าง Extended Context Diagram <ul><li>เริ่มคิดว่ามีกระบวนการย่อย ( มาจาก Use Case) อะไรบ้าง </li></ul><ul><li>แต่ละกระบวนการย่อยมีการรับส่งข้อมูลเข้า / ออกจากระบบบ้าง </li></ul>
  50. 52. Extended Context Diagram 3 รับข้อมูลการซื้อจากอินเทอร์เน็ตผ่านเว็บเพจ ลูกค้า เงื่อนไขหนังสือที่ต้องการค้นหา ผลของการค้นหา หนังสือที่ต้องการดูรายละเอียด รายละเอียดหนังสือที่ต้องการ ข้อมูลส่งเสริมการขาย หนังสือที่ต้องการซื้อ หนังสือที่ต้องการซื้อ ข้อมูลเกี่ยวกับลูกค้า ตอบรับยืนยันการสั่งหนังสือ แจ้งข้อผิดพลาดในการสั่งหนังสือ ศูนย์บัตรเครดิต รายละเอียดการขออนุมัติวงเงิน อนุมัติ ไม่อนุมัติ 1 การจัดการข้อมูลพื้นฐานเกี่ยวกับหนังสือ ระบบเก่า ข้อมูลทั่วไปของหนังสือ รายงานข้อมูลทั่วไปของหนังสือ ข้อมูลทั่วไปของหนังสือ ผู้จัดการ 2 จัดการข้อมูลการตลาดเพื่อส่งเสริมการขาย ข้อมูลส่งเสริมการขาย รายงานข้อมูลส่งเสริมการขาย บริษัทผู้ขายหนังสือ ข้อมูลส่งเสริมการขาย 4 จัดการเรื่องการส่งหนังสือ สถานะการจัดส่งหนังสือ ข้อมูลการสั่งหนังสือ ข้อมูลการจัดส่งหนังสือ
  51. 53. DFD Level 0 ของ Process 1 ( จัดการข้อมูลพื้นฐานเกี่ยวกับหนังสือ ) 1 จัดการข้อมูลพื้นฐานเกี่ยวกับหนังสือ ผู้จัดการ ระบบเก่า ข้อมูลทั่วไปของหนังสือ รายงานข้อมูลทั่วไปของหนังสือ ข้อมูลทั่วไปของหนังสือ Book D1 ข้อมูลทั่วไปของหนังสือ ข้อมูลทั่วไปของหนังสือ
  52. 54. DFD Level 0 ของ Process 2 ( จัดการข้อมูลการตลาดเพื่อส่งเสริมการขาย ) บริษัทผู้ขายหนังสือ 2 จัดการข้อมูลการตลาดเพื่อส่งเสริมการขาย ผู้จัดการ ข้อมูลส่งเสริมการขาย ข้อมูลส่งเสริมการขาย รายงานข้อมูลส่งเสริมการขาย Marketing Material D2 ข้อมูลส่งเสริมการขาย ข้อมูลส่งเสริมการขาย
  53. 55. DFD Level 0 ของ Process 3 ( รับข้อมูลการซื้อจากอินเทอร์เน็ตผ่านเว็บเพจร้าน ) 3 รับข้อมูลการซื้อจากอินเทอร์เน็ตผ่านเว็บเพจร้าน ลูกค้า เงื่อนไขหนังสือที่ต้องการค้นหา ผลของการค้นหา หนังสือที่ต้องการดูรายละเอียด รายละเอียดหนังสือที่ต้องการ ข้อมูลส่งเสริมการขาย หนังสือที่ต้องการซื้อ หนังสือที่ต้องการซื้อ ข้อมูลเกี่ยวกับลูกค้า ตอบรับยืนยันการสั่งหนังสือ แจ้งข้อผิดพลาดในการสั่งหนังสือ ศูนย์บัตรเครดิต รายละเอียดการขออนุมัติวงเงิน อนุมัติ ไม่อนุมัติ Marketing Material D2 ข้อมูลส่งเสริมการขาย Book D1 ข้อมูลทั่วไปของหนังสือ Order D3 รายการสั่งหนังสือ
  54. 56. 3.2 แสดงข้อมูลหนังสือ เงื่อนไขหนังสือที่ต้องการค้นหา ผลของการค้นหา หนังสือที่ต้องการดูรายละเอียด รายละเอียดหนังสือที่ต้องการ ข้อมูลส่งเสริมการขาย หนังสือที่ต้องการซื้อ หนังสือที่ต้องการซื้อ ข้อมูลเกี่ยวกับลูกค้า ข้อผิดพลาดในการสั่งหนังสือ 3.1 หาหนังสือ ข้อมูลหนังสือ ข้อมูลหนังสือ ข้อมูลส่งเสริมการขาย หนังสือที่ต้องการซื้อ รายละเอียดการขออนุมัติวงเงิน ข้อมูลเกี่ยวกับลูกค้า ราคารวม หนังสือที่ต้องการซื้อ เอกสารอนุมัติ เอกสารไม่อนุมัติ รายการสั่งหนังสือ ธนาคาร ลูกค้า DFD Level 1 ของ Process 3 Book D1 Marketing Material D2 3.3 เก็บข้อมูลหนังสือที่ลูกค้าเลือก 3.4 เช็คเอาท์ 3.5 ยืนยันการสั่งหนังสือ Order D3 3.6 แจ้งข้อผิดพลาดในการสั่งหนังสือ
  55. 57. DFD Level 0 ของ Process 3 ( จัดการเรื่องการจัดส่งหนังสือ ) 4 จัดการเรื่องการจัดส่งหนังสือ ผู้จัดการ ระบบเก่า รายงานสถานะการจัดส่ง ลูกค้า สถานะการจัดส่ง ข้อมูลการสั่งหนังสือ สถานะการจัดส่ง Order D3 สถานะการจัดส่ง ข้อมูลการสั่งหนังสือ
  56. 58. เขียน Data Dictionary <ul><li>เพื่อเก็บข้อมูลรายละเอียดของส่วนประกอบต่างๆ ใน Dataflow Diagram </li></ul><ul><li>เพื่อให้ผู้ใช้เข้าใจระบบดีขึ้น </li></ul><ul><li>เพื่อให้โปรแกรมเมอร์ใช้เป็นแนวทางในการพัฒนาระบบ </li></ul><ul><li>เราจะต้องแก้ไขให้ถูกต้อง และละเอียดยิ่งขึ้นเมื่อเริ่มขั้นตอนการออกแบบระบบ หรือมีการเปลี่ยนแปลงขณะพัฒนาระบบ </li></ul><ul><li>จะต้องเขียนทุกๆ ส่วนประกอบที่สำคัญ </li></ul>
  57. 59. ตัวอย่าง Data Dictionary - External Entity - ผู้ติดต่อ ค้นหา ดูรายละเอียด และสั่งซื้อหนังสือ ความสัมพันธ์กับระบบ ผู้ที่เข้ามาซื้อหนังสือผ่านทาง Web Site ของร้าน คำอธิบาย Customer ชือย่อ / ชื่ออื่น ลูกค้า ชื่อ
  58. 60. ตัวอย่าง Data Dictionary - Process - ข้อจำกัด เป็นการเพิ่ม ลบ แก้ไขข้อมูลพื้นฐานของหนังสือ ( เช่นชื่อหนังสือ ชื่อผู้แต่ง ราคา เป็นต้น ) ซึ่งข้อมูลพื้นฐานเกี่ยวกับหนังสือนี้จะมาจากระบบฐานข้อมูลเดิมของร้านหนังสือ คำอธิบาย 1.0 หมายเลข จัดการข้อมูลพื้นฐานเกี่ยวกับหนังสือ ชื่อ
  59. 61. ตัวอย่าง Data Dictionary - Data Flow - ข้อจำกัด ID+Name+Author+ISBN+Price เนื้อหา ทุกครั้งที่มีหนังสือใหม่ ระยะเวลา เป็นรายละเอียดทั่วไปของหนังสือ เช่นชื่อหนังสือ ชื่อผู้แต่ง ราคา คำอธิบาย - ชื่อย่อ / ชื่ออื่น ข้อมูลทั่วไปของหนังสือ ชื่อ
  60. 62. ตัวอย่าง Data Dictionary - Data Storage CoverPageImage+ContentPage+ RedersComment+Promotion Data Field เป็นข้อมูลเพิ่มเติมเกี่ยวกับหนังสือเพื่อให้ลูกค้าสามารถเลือกซื้อหนังสือได้ดีขึ้น คำอธิบาย ข้อมูลส่งเสริมการขาย ชื่อย่อ / ชื่ออื่น Marketing Material ชื่อ
  61. 63. <ul><li>Exercise 3 - class exercise </li></ul><ul><li>บริษัทขายคล่องจำกัดเปิดขายสินค้าระบบเงินเชื่อโดยมีขั้นตอนการขายดังนี้ </li></ul><ul><li>เมื่อแผนกขายได้รับใบสั่งซื้อจากลูกค้าจะทำการตรวจสอบวงเงินเครดิตของลูกค้าโดยใช้ข้อมูลจากใบสั่งซื้อและข้อมูล ประวัติการซื้อสินค้า จากแฟ้มลูกค้า ถ้ามูลค่าของสินค้าเกินวงเงินเครดิต ใบสั่งซื้อที่ถูกปฏิเสธการสั่งซื้อจะคืนให้ลูกค้า ถ้ามูลค่าสินค้าไม่เกินวงเงิน ระบบ จะจัดทำใบเบิกสินค้ าทั้งชุด ( มี 2 ใบรวมต้นฉบับ ) โดยใช้ข้อมูลจากใบสั่งซื้อที่ตรวจสอบวงเงินเครดิตแล้วและข้อมูล รายละเอียดสินค้า จากแฟ้มสินค้า ต้นฉบับใบเบิกสินค้า และใบสั่งซื้อ ที่จัดทำใบเบิก แล้ว เก็บไว้ที่แผนกขาย </li></ul><ul><li>สำเนาใบเบิกสินค้าจะถูกส่งไป จัดทำ ใบส่งสินค้ าทั้งชุด ( มี 4 ใบรวมต้นฉบับ ) ต้นฉบับใบส่งสินค้า ส่งให้ลูกค้า สำเนาที่ 1 และ สำเนาใบเบิกสินค้ าที่จัดทำใบส่งสินค้าแล้ว เก็บไว้ที่คลังสินค้า สำเนาที่ 2 ส่งที่แผนกขาย สำเนาที่ 3 ใช้จัดทำใบแจ้งหนี้ ( มี 2 ใบรวมต้นฉบับ ) ส่งให้ลูกค้าเพื่อรอการชำระเงินค่าสินค้าโดยส่งต้นฉบับใบแจ้งหนี้ให้กับลูกค้าและส่งสำเนาเก็บที่แผนกบัญชี </li></ul>
  62. 64. <ul><li>Process : </li></ul><ul><li>ตรวจสอบวงเงินเครดิต </li></ul><ul><li>Input – ใบสั่งซื้อ , ประวัติการซื้อสินค้า </li></ul><ul><li>Output - ใบสั่งซื้อที่ยกเลิก </li></ul><ul><li>จัดทำใบเบิกสินค้า </li></ul><ul><li>Input – ใบสั่งซื้อที่ตรวจสอบวงเงินเครดิตแล้ว , รายละเอียดสินค้า </li></ul><ul><li>Output – ใบสั่งซื้อที่จัดทำใบเบิกแล้ว , ต้นฉบับใบเบิกสินค้า , </li></ul><ul><li> สำเนาใบเบิกสินค้า </li></ul><ul><li>จัดทำใบส่งสินค้า </li></ul><ul><li>Input – สำเนาใบเบิกสินค้า </li></ul><ul><li>Output – ต้นฉบับใบส่งสินค้า , ใบส่งสินค้าสำเนาที่ 1 , ใบส่งสินค้าสำเนาที่ 2 , ใบส่งสินค้าสำเนาที่ 3 , สำเนาใบเบิกสินค้าที่ทำใบส่งสินค้าแล้ว </li></ul><ul><li>จัดทำใบแจ้งหนี้ </li></ul><ul><li>Input – ใบส่งสินค้าสำเนาที่ 3 </li></ul><ul><li>Output – ต้นฉบับใบแจ้งหนี้ , สำเนาใบแจ้งหนี้ </li></ul>
  63. 65. <ul><li>External Entity : </li></ul><ul><li>แผนกขาย </li></ul><ul><li>ลูกค้า </li></ul><ul><li>คลังสินค้า </li></ul><ul><li>แผนกบัญชี </li></ul><ul><li>Data Store : </li></ul><ul><li>แฟ้มลูกค้า </li></ul><ul><li>แฟ้มสินค้า </li></ul>
  64. 66. <ul><li>Data Flow : </li></ul><ul><li>ใบสั่งซื้อ </li></ul><ul><li>ประวัติการซื้อสินค้า </li></ul><ul><li>ใบสั่งซื้อที่ยกเลิก </li></ul><ul><li>ใบสั่งซื้อที่ตรวจสอบวงเงินเครดิตแล้ว </li></ul><ul><li>รายละเอียดสินค้า </li></ul><ul><li>ใบสั่งซื้อที่จัดทำใบเบิกแล้ว </li></ul><ul><li>ต้นฉบับใบเบิกสินค้า </li></ul><ul><li>สำเนาใบเบิกสินค้า </li></ul><ul><li>ต้นฉบับใบส่งสินค้า </li></ul><ul><li>ใบส่งสินค้าสำเนาที่ 1 </li></ul><ul><li>ใบส่งสินค้าสำเนาที่ 2 </li></ul><ul><li>ใบส่งสินค้าสำเนาที่ 3 </li></ul><ul><li>สำเนาใบเบิกสินค้าที่ทำใบส่งสินค้าแล้ว </li></ul><ul><li>ต้นฉบับใบแจ้งหนี้ </li></ul><ul><li>สำเนาใบแจ้งหนี้ </li></ul>
  65. 67. ระบบการขาย ใบสั่งซื้อ ใบสั่งซื้อที่ยกเลิก คลังสินค้า ต้นฉบับใบส่งสินค้า ใบส่งสินค้าสำเนาที่ 1 สำเนา ใบแจ้งหนี้ ใบส่งสินค้าสำเนาที่ 2 ต้นฉบับใบแจ้งหนี้ ต้นฉบับใบเบิกสินค้า สำเนาใบเบิกสินค้าที่ทำ ใบส่งสินค้าแล้ว ใบสั่งซื้อสินค้าที่จัดทำใบเบิกแล้ว 0 ลูกค้า แผนกขาย แผนกบัญชี
  66. 68. ใบสั่งซื้อ ตรวจสอบ วงเงินเครดิต ใบสั่งซื้อที่ยกเลิก ใบแจ้งยกเลิกการสั่งซื้อ D1 ประวัติการซื้อสินค้า ใบสั่งซื้อที่ตรวจสอบวงเงินเครดิตแล้ว จัดทำใบเบิกสินค้า ต้นฉบับใบเบิกสินค้า สำเนาใบเบิกสินค้า สำเนาใบเบิกสินค้าที่ทำใบส่งสินค้าแล้ว จัดทำใบส่งสินค้า ใบส่งสินค้าสำเนาที่ 1 ใบส่งสินค้าสำเนาที่ 2 ต้นฉบับใบส่งสินค้า ใบส่งสินค้าสำเนาที่ 3 จัดทำใบแจ้งหนี้ ต้นฉบับใบแจ้งหนี้ สำเนา ใบแจ้งหนี้ รายละเอียดสินค้า ใบสั่งซื้อที่จัดทำใบเบิกแล้ว 1 2 3 ลูกค้า 4 สินค้า D2

×