SlideShare a Scribd company logo
1 of 14
Download to read offline
สวนที่ 3                                                         Chapter 9
      System Analysis                                                    Data Modeling
      การวิเคราะหระบบ                                                   แบบจําลองขอมูล




System Development Life Cycle : SDLC                         Learning Objectives
                     กิจกรรมในขั้นตอนนี้ไดแก
                     1. การกําหนดความตองการของระบบ                อธิบายความหมายโดยยอของคําหลัก ๆ ที่ใชในตัวแบบขอมูล
                     2. การวิเคราะหความตองการของระบบใหม         (Data Modeling)
                         2.1 แบบจําลองขันตอนการทํางานของ
                                          ้
                     ระบบ
                         2.2 คําอธิบายขันตอนการทํางาน
                                        ้
                                                                   สามารถวาดแผนภาพความสัมพันธระหวางเอนทิตี (E-R
                         2.3 แบบจําลองขอมูล                       Diagram)
                                                                   อธิบายบทบาทของตัวแบบขอมูลเชิงมโนภาพ (Conceptual
                                                                   Data Modeling) ในการวิเคราะหและออกแบบระบบขอมูล
                                                                   สารสนเทศโดยทัวไปได
                                                                                ่




9.2                                                          9.3
Topics                                                                         แนะนําแผนภาพแสดงความสัมพันธ
                                                                               ระหวางขอมูล
      แนะนําแผนภาพแสดงความสัมพันธระหวางขอมูล

      สัญลักษณที่ใชใน E-R Diagram
                                                                               แบบจําลองขอมูล (Data Model) หมายถึง แบบจําลองทีแสดงให
                                                                                                                               ่
                                                                               เห็นขอมูลและ ความสัมพันธระหวางขอมูลที่เกิดขึ้นทั้งหมดในระบบ
      องคประกอบของ E-R Diagram                                                โดยใช “แผนภาพแสดงความสัมพันธระหวาง ขอมูล (Entity
                                                                               Relationship Diagram: E-R Diagram)”
      วิธีการสราง E-R Diagram




9.4                                                                            9.5




สัญลักษณที่ใชใน E-R Diagram                                                  สัญลักษณที่ใชใน E-R Diagram
                                                                                     Chen Model     Crow’s Foot Model             ความหมาย
       Chen Model     Crow’s Foot Model                ความหมาย
                                                                                                                        Attribute ใชแสดง Attribute ของ
                                                                                                        Entity Name
                                          ใชแสดง Entity                                                                Entity
                         Entity Name                                                                     Attribute 1
                                                                                                         Attribute 2
                                                                                                         …..



                                          Relationship Line เสนเชื่อม                                                  ใชแสดงคียหลัก (Identifier)
                                                                                                                                  
                                                                                                        Entity Name
                                          ความสัมพันธระหวาง Entity
                                                                                       Identifier       Identifier
                                                                                                        Attribute 1
                                                                                                        …..


                                          Relationship ใชแสดงความสัมพันธ
                                          ระหวาง Entity สําหรับ Crow’s Foot                                            Associative Entity
                                                                                        Entity
                                          Model ใชตัวอักษรเขียนแสดง
                                                                                        name
                              -           ความสัมพันธ

                                                                                                                        Weak Entity


9.6                                                                            9.7
สัญลักษณที่ใชใน E-R Diagram                                                 สัญลักษณที่ใชใน E-R Diagram
 ตัวอยาง E-R Diagram ของรูปแบบ Chen Model                                     ตัวอยาง E-R Diagram ของรูปแบบ Crow’s Foot Model


                                                    POS_NO          POS_DES
          EMP_NAME        EMP_SEX
                                                                                                EMPLOYEE                            POSITION

                                                                                             EMP_ID              WORK_AS         POS_NO
                                    M           1                                            EMP_NAME                            POS_DES
                     EMPLOYEE           WORK_            POSITION
                                                                                             EMP_SEX
                                        AS

          EMP_ID




9.8                                                                           9.9




องคประกอบของ E-R Diagram                                                     องคประกอบของ E-R Diagram
                                                                                 Entities คือ คน สถานที่ วัตถุ เหตุการณ หรือแนวความคิดที่แวดลอมผูใชระบบที่
       Entities
                                                                              ตองการพัฒนา
       Properties
       Relationships                                                          หมวดบุคคล (Person): EMPLOYEE,STUDENT,PATIENT,CUSTOMER,
                                                                                                   DEPARTMENT,DIVISION
                                                                              หมวดสถานที่ (Place): REGION,COUNTRY,BRANCH,BUILDING,ROOM,
                                                                                                    CAMPUS
                                                                              หมวดเหตุการณ (Event): SALE,REGISTRATION,RENEWAL,ORDER,INVOICE,
                                                                                                      FLIGHT,CANCELLATION
                                                                              สิ่งของ (Object): PRODUCT, BOOK , RAW MATERIAL, BUILDING
                                                                              หมวดของแนวคิด (Concept) : COURSE,SUBJECT,EXPENSE




9.10                                                                          9.11
องคประกอบของ E-R Diagram                                              องคประกอบของ E-R Diagram
       Entities                                                            Entities
         E-R Diagram สามารถจําแนก Entity ได 2 ประเภท ดังนี้             2. Weak Entity
                                                                             คือ Entity ทีตองขึ้นอยูกับ Entity อืน ไมมี Property ที่เปน
                                                                                          ่                        ่
  1. Regular Entity                                                       เอกลักษณในการจําแนกความแตกตางระหวางสมาชิก จึง
     หรือบางครั้งเรียกวา Strong Entity เปน Entity ทีประกอบดวย
                                                      ่                   ตองการศัยเอกลักษณหรือ Property จาก Entity อืนเปน  ่
   สมาชิกที่มคุณสมบัติ ซึ่งบงบอกถึงเอกลักษณของแตละสมาชิกนัน
              ี                                                  ้        สวนประกอบในการจําแนกความแตกตางดังกลาว
   ได เชน Entity ประชากร (POPULATION) สําหรับสัญลักษณที่ใช
   แทน Entity ประเภทนี้ คือรูปเหลียมผืนผา โดยมีชื่อของ Entity นัน
                                   ่                               ้
   อยูภายใน
                                                                                                         Order_Detail
                          POPULATION


9.12                                                                   9.13




องคประกอบของ E-R Diagram                                              องคประกอบของ E-R Diagram
      Properties                                                              Attributes
      Properties (Attributes/Element/Field) หมายถึงคุณสมบัติ                  1. Simple Attribute คือ Attribute ที่คาภายใน Attribute นั้นไมสามารถ
                                                                        แบงยอยไดอีก เชน เพศ, เงินเดือน, อายุ, จังหวัด เปนตน SexSalaryName
 หรือลักษณะที่ใชอธิบายรายละเอียดของ Entity หรือ Relationship
                                                                        สําหรับสัญลักษณที่ใชแทน Attribute ประเภทนี้ ไดแก วงรีที่มีเสนเชื่อมตอไปยัง
 ที่สนใจ                                                                Entity ที่เปนเจาของ Attribute นั้น โดยมีชื่อของ Attribute นั้นอยูภายใน เชน
                                                                        Attribute “EmpID”,”NAME”,”SEX” และ “SALARY” ของ Entity “EMPLOYEE”

                                                                                                   Name
                                                                                                                      Sex             Salary
                        Attribute Name
                                                                                 EmpID


                                                                                                          EMPLOYEE


9.14                                                                   9.15
องคประกอบของ E-R Diagram                                                            องคประกอบของ E-R Diagram
       Attributes                                                                           Attributes
       2. Composite Attribute คือ Attribute ที่คาภายใน Attribute นั้น สามารถ               3. Identifier หรือ Key คือ Attribute หรือกลุมของ Attribute ที่มีคาในแต
 แยกเปน Attribute ยอยไดอก ซึ่งมีลักษณะตรงขามกับ Simple Attribute
                              ี                                                       ละ Attribute ของ Entity ไมซ้ํากันเลย ซึ่งถูกนํามาใชกําหนดความเปนเอกลักษณ
 ตัวอยางที่ 1 Attribute “ชือ” ที่สามารถแบงยอยออกเปน “คํานําหนาชื่อ”, “ชือ”
                            ่                                                ่        ใหกับแตละ Attribute ใน Entity ตัวอยาง Attribute “EmpID” ของ Entity
                                                                                      “Employee” ที่ใชแทนรหัสประจําตัวพนักงาน Identifier/Key สามารถจําแนกได
 และ “นามสกุล”
                                                                                      3 ประเภทดังนี้
                     FNAME
       Composite                                                                      1.       Candidates Keys
       Attribute                       NAME              Sex
                                                                                      2.       Primary Key
                     SNAME
                                                                                      3.       Foreign Key
                                                                      Salar
                                              EMPLOYEE                  y
                    Emp_ID



9.16                                                                                 9.17




องคประกอบของ E-R Diagram                                                            องคประกอบของ E-R Diagram
 1.      Candidate Keys คือ Attribute ใดๆ หรือ Attribute ที่รวมกันแลวทําใหคา                                                                                   Primary Key
         ของ Attribute ของ Entity นั้นไมซ้ํากันเลย

 2.      Primary Key คือ Candidate Key ที่ถูกเลือกใหเปน Key หลักที่มีคาของ              Candidate Key                   Foreign Key
                                                                                                             Emp_Name                                                   Position_Des
         สมาชิกใน Attribute ไมซ้ํากันเลย การที่เลือก Key ที่มีคาไมซํ้ากันเลยมา                                                                   Position_No               c
         เปน Primary Key เพื่อจะให Primary Key นี้สามารถไประบุคาในอีก                                                      Position_No
                                                                                                Emp_Lastna
         Attribute อื่นเพื่อประโยชนในการคนหาขอมูลไดโดยไมเกิดขอมูลซ้ําซอนกัน                 me
                                                                                                                        EMPLOYEE
 3.      Foreign Key คือ Primary Key ของ Entity หนึ่งที่สามารถระบุคาสมาชิกของ              Primary Key                                     WORK_           POSITION
                                                                                                                                            AS
         อีก Entity หนึ่งที่มีความสัมพันธกันได
                                                                                                  Emp_ID




9.18                                                                                 9.19
องคประกอบของ E-R Diagram                                                          องคประกอบของ E-R Diagram
        Attributes
        4. Single-Valued Attribute คือ Attribute ที่มีคาของขอมูลภายใต
 Attribute ใด Attribute หนึ่งเพียงคาเดียวเชน Attribute “Salary” ซึ่งที่ใชเก็บ
 เงินเดือนของพนักงานและพนักงานแตละคนจะมีเงินเดือนเพียงคาเดียว                                                     Emp_Sex               Emp_Salary
                                                                                              Emp_Name

        5. Muti-Valued Attribute คือ Attribute ที่มีคาของขอมูลไดหลายคา
 ภายใตคาของ Attribute ใด Attribute หนึ่งเชน Attribute “DEGREE” ที่ใชระบุ
 ระดับการศึกษาของพนักงานแตละคน ซึ่งพนักงานแตละคน จะมีระดับการศึกษาได                                               EMPLOYEE
                                                                                              Emp_ID                                              Emp_Degree
 หลายระดับ สําหรับสัญลักษณที่ใชแทน Attribute ประเภทนี้ จะใชเสน 2 เสน
 เชื่อมระหวางรูปภาพของ Attribute กับ Entity




9.20                                                                               9.21




องคประกอบของ E-R Diagram                                                          องคประกอบของ E-R Diagram
      Attributes
                                                                                          Relationship
      6. Derived Attribute คือ Attribute ที่คาของขอมูลไดมาจากการนําเอาคา              Relationship คือ ความสัมพันธระหวาง Entity 2 Entity ที่มีการเชื่อมโยง
ของ Attribute อื่นมาทําการคํานวณ ซึ่งคาของ Attribute ประเภทนี้จะตอง               ขอมูลซึ่งกันและกัน
เปลี่ยนแปลงทุกครั้ง เมื่อมีการเปลี่ยนแปลงคาของ Attribute ที่ถูกนําคามาคํานวณ
เชน Attriute “TOT_SAL” ของ Entity “Employee” ที่ใชเก็บเงินเดือนทั้งหมด                สัญลักษณจะใชรูปสี่เหลี่ยมขาวหลามตัดที่มีชื่อของRelationship นั้นอยู
ของพนักงานแตละคนของพนักงานแตละคนเพื่อนําไปคํานวณภาษี ซึ่งไดมาจาก                 ภายในสัญลักษณจะตองเชือมระหวาง Entity เสมอ
                                                                                                           ่
ผลรวมของคาใน Attribute “INCOME” ของ Entity
                                                                                           ประเภทของ Relationship สามารถจําแนกได 3 ประการดังนี้
                               Emp_Sex             Emp_Salary
            Emp_Name                                                                      1. One-to-One Relationship
                                                                                          2. One-to-Many Relationship
                                                                                          3. Many-to-Many Relationship
             Emp_ID             EMPLOYEE                  Emp_Degree


                                                Emp_TOT_SAL
9.22                                                                               9.23
องคประกอบของ E-R Diagram                                                     องคประกอบของ E-R Diagram
       ความสัมพันธระหวาง Entity (Relationship)                                    ความสัมพันธระหวาง Entity (Relationship)
       1. One-to-One Relationship : เปนRelationship ที่แตละ Participant           2. One-to-Many Relationship : เปน Relationship ที่แตละ Participant
 ของ Entityหนึ่งจะมีความสัมพันธกับอีก Participant ของอีก Entity หนึ่งเพียง    ของ Entity หนึ่งมีความสัมพันธกับ Participant ของอีก Entity หนึ่ง
 Participant เดียวเชน กรณีลูกคาสามารถมีบัญชีเงินฝากไดเพียงบัญชีเดียว และ    มากกวา 1Participant เชน กรณีลูกคาสามารถมีบัญชีเงินฝากไดมากกวา 1 บัญชี
 แตละบัญชีเงินฝากจะมีเจาของบัญชีไดเพียงคนเดียว ดังรูป                       และแตละบัญชีเงินฝากจะตองมีเจาของบัญชีเพียงคนเดียว ดังรูป



                          1        Belong_to       1     ACCOUNT                                      1           Belong_to    M       ACCOUNT
        CUSTOMER                                                                      CUSTOMER




9.24                                                                          9.25




องคประกอบของ E-R Diagram                                                     องคประกอบของ E-R Diagram
       ความสัมพันธระหวาง Entity (Relationship)                                     ระดับความสัมพันธระหวาง Entity(Degree of Relationship)
       3. Many-to-Many Relationship : เปน Relationship ที่ Participant              Entity คือสิ่งที่สนใจในระบบ ซึ่งอาจจะเปนขอมูล สิ่งของ แผนก หรือ
 มากกวา 1 Participant ของ Entity หนึ่ง มีความสัมพันธกบ Participant ของอีก
                                                       ั                       สถานที่ ซึ่งจะตองมีความสัมพันธกับอีก Entity หนึ่งเพื่อใหระบบเกิดการ
 Entity หนึ่งมากกวา 1 Participant เชน กรณีลูกคาสามารถมีบัญชีเงินฝากได      ทํางานเปนตามขั้นตอน ดังนั้นจึงตองมีสิ่งที่ใชวัดความเขมขนของความสัมพันธ
 มากกวา 1 บัญชี และแตละบัญชีเงินฝากสามารถมีเจาของบัญชีไดมากกวา 1 คน       ระหวาง Entity วามีความสัมพันธกันลักษณะอยางไรหรือมีความสัมพันธที่ซับซอน
                                                                               เพียงใด ซึ่งการวัดจํานวน Entity ที่มีความสัมพันธกนนั่นเอง ที่เรียกวา Degree of a
                                                                                                                                   ั
                                                                                Relationship คือ ขนาดของความสัมพันธระหวาง Entity สามารถจําแนกไดเปน
                                                                                3 ประเภท
                      M          Belong_to     M       ACCOUNT
       CUSTOMER
                                                                                     Unary Relationship/Recursive Relationship
                                                                                     Binary Relationship
                                                                                     Ternary Relationship



9.26                                                                          9.27
องคประกอบของ E-R Diagram                                                            องคประกอบของ E-R Diagram
  1. Unary Relationship/Recursive                                                    2. Binary Relationship : คือ Relationship ที่เกิดขึ้นระหวาง 2 Entity กรณีเชนนี้
   Relationship : เปนความสัมพันธที่เกิดขึ้นระหวางสมาชิกภายใน Entity ของ           เรียกไดวามี Degree ของความสัมพันธเทากับ 2 เนื่องจากเปนความสัมพันธระหวาง
  ตัวเองซึ่งเกิดในกรณีท่ี Attribute ของ Entity นั้น สามารถสรางความสัมพันธกับ       Entity 2 จํานวน
  อีก Attribute หนึ่งภายใน Entity เดียวกัน
                                                                                     ตัวอยาง ความสัมพันธแบบ One-to-One Relationship ซึ่งพนักงานหนึ่งคนจะ
                                                                                     สามารถมีที่จอดรถ (Parking Place) ได 1 ที่เทานั้นและที่จอดรถ 1 ที่เปนของ
  ตัวอยาง ความสัมพันธเปนแบบ One-to-Many ซึ่งจะเห็นไดวา Employee หนึ่ง
       คนสามารถจะบริหารงาน Employee คนอื่นๆได เชนหัวหนางาน ดังรูป                 พนักงานหนึ่งคนดังรูป


                                     M                                                        EMPLOYEE            1       IS ASSIGNED          1      PARKING PLASCE


                         Employee                    Manage
                                      1




9.28                                                                                 9.29




องคประกอบของ E-R Diagram                                                            องคประกอบของ E-R Diagram
ตัวอยาง แบบ One-to-Many ในหนึ่งสายผลิตภัณฑ (Product Line) จะประกอบ                   3.Ternary Relationship : คือ Relationship ที่เกิดขึนระหวาง Entity มากกวา 2 Entity
                                                                                                                                          ้
                                                                                       ขึนไป
                                                                                         ้
ไปดวย (Contains) สินคาไดตั้งแต 1 ผลิตภัณฑ (Product) ขึ้นไป และสินคาตั้งแต
                                                                                       ตัวอยาง Entity ความสัมพันธกัน 3 Entity ดวยกันไดแก PART,VENDOR และ
1 ผลิตภัณฑขึ้นไปจะตองอยูในสายการผลิตเพียง 1 สายเทานั้น ดังรูป
                                                                                       WAREHOUSE ซึ่งมีความสัมพันธในสวนของการสงสินคา ผูจัดจําหนาย (VENDOR)
                                                                                       สามารถสงชินสวนสินคา (PART) ไดตั้งแต 1 ชินสวนขึนไป เพื่อไป เก็บไวในคลังสินคา
                                                                                                  ้                                 ้       ้
          PRODUCT LINE           1   CONTAINS                 M   PRODUCT              (WAREHOUSE) ไดตั้งแต 1 คลังสินคาขึ้นไป ดังรูป
                                                                                                                                 PART
 ตัวอยาง แบบ Many-to-Many คือ นักศึกษา (Student) ตังแต 1 คนขึนไป
                                                         ้          ้
 สามารถลงทะเบียน (Register for) เรียนในรายวิชา (Course) ไดตั้งแต 1 รายวิชา                                                        M
 ขึ้นไป และในรายวิชาตั้งแต 1 รายวิชาขึ้นไปนี้นักศึกษาลงทะเบียนเรียนไดมากกวา
 1 คน ดังรูปดานลาง                                                                                     VENDOR       M       SHIPS        M       WAREHOUSE

       STUDENT               M       REGISTERS FOR            M             COURSE


                                                                                                                            QUANTITY
9.30                                                                                 9.31
องคประกอบของ E-R Diagram                                                         องคประกอบของ E-R Diagram
       Cardinalities ใน Relationship                                                     Associative Entities
       Cardinality หมายถึง จํานวนสมาชิกที่เปนไปไดใน Entity หนึงที่มี
                                                                    ่                    Associative Entity หมายถึง Relationship ที่มี Attribute เกิดขึ้นใหม โดยที่
 ความสัมพันธกับสมาชิกของอีก Entity หนึงตัวอยาง หากมี Entity “ภาพยนตร
                                           ่                                       Attribute นั้นเกิดจากความสัมพันธระหวาง Entity ตั้งแต 2 Entity ขึ้นไป ใน
                                                                                   สัญลักษณสี่เหลี่ยมขาวหลามตัดที่ลอมรอบดวยสี่เหลี่ยมผืนผา
 (MOVIE)” และ”มวนวิดีโอ(VIDEO TAPE)” ซึ่งมีความสัมพันธกนคือ ภาพยนตรจะถูก
                                                                ั
 บันทึกไวในมวนวิดีโอ(SAVE AS) โดยมีเงื่อนไขคือ ภาพยนตรหนึงเรื่องสามารถบันทึก
                                                                  ่                ตัวอยาง ความสัมพันธระหวาง Employee และ Course กลาวคือ Employee 1 คน
 ไวในมวนวิดีโอไดอยางนอยที่สุด 1 มวน สวนมวนวิดีโอ 1 มวน สามารถบันทึก       สามารถสําเร็จหลักสูตรฝกอบรมไดหลาย Course และ Course 1 Course จะมี
 ภาพยนตรไดสูงสุด 1 เรื่องหรือไมบันทึกเลยได แสดงไดดังรูปแสดงแบบ One-to-        Employee เขาฝกไดหลายคน (จะไมมีพนักงานสําเร็จหลักสูตรไดและ หลักสูตรจะ
 Many                                                                              ไมมีพนักงานเขาอบรมเลยได) ดังนั้น Attribute “DATE_COMPLETE” จะสามารถ
                                                                                   บอกใหทราบไดวา “EMPLOYEE” คนใดสําเร็จหลักสูตร (Course) ใด และสําเร็จ
            MOVIE           1          SAVE AS     M           VIDEO TAPE          เทาใด ดังนั้นเพื่อให E-R Diagram สมบูรณคือสามารถมองเห็น Entity ที่แอบแฝง
                                                                                   มากับ Relationship ได จึงทําการแปลง Relationship นั้นใหเปน Relationship ที่
                                                                                   เรียกวา Associative Entity ดังรูป
 แสดงแบบกําหนดจํานวนสมาชิกของทั้งสอง Entity

          MOVIE           (1,n)         SAVE AS        (0,1)        VIDEO TAPE
9.32                                                                              9.33




องคประกอบของ E-R Diagram                                                         องคประกอบของ E-R Diagram
                                                                                          Generalization Hierachy
                                                                                          Generalization Hierarchy เปนการแสดงถึงการจัดลําดับของ Entity ที่มี
                                  DATE_COMPLETED                                    ความสัมพันธกันหรือ Relationship ที่มีความสัมพันธกันไดถูกนํามาใชกับ E-R
                                                                                    Diagram เพือแสดงถึง Entity หรือ Relationship ซึ่งมีสมาชิกที่สามารถแยก
                                                                                                  ่
                                                                                    ออกเปนกลุมยอยๆ ภายใต Entity หรือ Relationship นั้น ดังนั้น Entity หรือ
                                                                                    Relation นี้จึงเรียกวา “Supertype Entity” ตัวอยาง Entity “EMPLOYEE” ที่มี
                                                                                    Attribute “EMP_ID”, “SEX” และ MILITARY_STATUS” ดังรูป

       EMPLOYEE     (M)                                (M)           COURSE
                                      CERTIFICA
                                      TE




9.34                                                                              9.35
องคประกอบของ E-R Diagram                                                              องคประกอบของ E-R Diagram
                                                                                        ตัวอยาง Generalization Hierarchy สามารถใชกับ Relationship ได
                                                                MILITARY_ST
                                                                                        Relationship “IS_A_HOLIDAY” ที่สามารถแยกออกเปน 2 Relationship ยอย คือ
                EMP_ID                   SEX                    ATUS
                                                                                        Relationship “OFFICIAL_HOLIDAY” ซึ่งเปนวันหยุดประจําป และ
                                                                                        “PROPER_HOLIDAY” ซึ่งเปนวันหยุดเฉพาะของบริษัท แสดงดังรูป
                                        EMPLOYEE               SuperType                                                                   MONTH

                                                                              EMP_ID
         SEX
                                                                                                                         Supertype
                                 MALE                      FEMALE                                DAY                                                                      YEAR
                                                                                                                                       IS_A_HOLIDAY
       EMP_ID

                                                                              SEX
        MILITARY_ST
        ATUS
                                                     Subtype                                           OFFICIAL_HOLIDA                                   PROPER_HOLIDAY
                                                                                                       Y


9.36                                                                                   9.37                                     Subtype




องคประกอบของ E-R Diagram                                                              องคประกอบของ E-R Diagram
       Aggregation
                                                                                                                                     JOB
       Aggreation คือ การทําให Relationship และEntity ที่ทําใหเกิด
 Relationship นั้นอยูในภาวะรวมกลุมกันเสมือนเปนอีก Entity หนึงเพื่อใหสามารถ
                                                               ่
 นําไปใชสรางความสัมพันธกับ Entity อื่นไดตัวอยาง Entity “Employee” “JOB”
                                                                                                  EMPLOYEE                                            BRANCH
 และ “BRANCH” ซึ่งเปน Ternary Relationship มีความสัมพันธกันคือ พนักงาน                                                       Work_ON
 (Employee) ทํางาน (Work_on) ที่ไดรับมอบหมายงาน (Job) ในแตละสาขา
 (Branch) ของสํานักงานดังรูป

                                                                                                                                 Manage
                                               JOB


                      EMPLOYEE                                    BRANCH
                                           Work_ON                                                                               Manager


9.38                                                                                   9.39
องคประกอบของ E-R Diagram                                                         องคประกอบของ E-R Diagram
 ใชวิธี Aggregation เพื่อทําใหเขียน E-R Diagram ไดงายขึ้นมีหลักเกณฑดังนี้
 1. ใหสมมติ Relationship ที่เกิดจากกลุม Entity นั้นเปนเสมือน Entity 1 Entity                                         JOB
 โดยการวาดกรอบสี่เหลี่ยมลอมรอบ Relationship และกลุม Entity เขาไวดวยกัน
 2. ลากเสนตรงเชื่อมความสัมพันธระหวาง Relationship ที่ Aggregation แลวกับ
 Relationship ที่เกิดจากความสัมพันธของอีก Entity หนึ่ง
 3. กลุม Entity และ Relationship ที่ถูกรวมเขาไวดวยกันมีคาเทากับ 1 Entity                EMPLOYEE                                        BRANCH
                                                                                                                      Work_ON
 ดังนั้น ความสัมพันธที่ใชวิธี Aggregation แลวสามารถอานไดดังนี้
 1. พนักงานทํางานที่ไดรับมอบหมายตามสาขาที่กําหนดไว
 2. การทํางานที่ไดรับมอบหมายของพนักงานในแตละสาขาถูกบริหารจัดการโดย
 ผูจัดการ                                                                                                              Manage


                                                                                                                       Manager


9.40                                                                              9.41




วิธีการสราง E-R Diagram                                                          วิธีการสราง E-R Diagram
 วิธีสราง E-R Diagram มีขั้นตอนดังตอไปนี้                                              1. กําหนด Entity ทั้งหมดในระบบ ไดดังนี้
 1.      กําหนด Entity ทั้งหมดของระบบ                                                       1.1. คณะ (Faculty)
 2.      สราง Relationship ระหวาง Entity                                                  1.2. รายวิชา (Course)
 3.      กําหนดเงื่อนไข (Contraints) ของความสัมพันธระหวาง Entity ตางๆ                    1.3. อาจารย (Teacher)
 4.      กําหนด Attribute ใหกับแตละ Entity พรอมทั้งกําหนด Primary Key
                                                                                            1.4. นักเรียน (Student)
                                                                                            1.5. หองเรียน (Room)
 ตัวอยาง การเก็บรวบรวมขอมูลสมมติของมหาวิทยาลัยแหงหนึ่ง เปดสอน
 หลักสูตรปริญญาตรีหลายคณะแตละคณะเปดสอนหลายรายวิชา ซึ่งทําการสอน
 โดยอาจารยที่มีคณภาพ แตละรายวิชาจะสามารถเปดสอนไดตอเมื่อมีนักศึกษามา
                 ุ
 ลงทะเบียนในรายวิชานั้นอยางนอย 20 คน อาจารย 1 ทานสามารถสอนไดหลาย                            Faculty     Course       Student   Teacher
 วิชา และหองเรียนแตละหองสามารถใชสอนวิชาตางๆ ไดหลายวิชา จากขอมูลนี้
                                                                                                  Room
 สามารถสราง E-R Diagram



9.42                                                                              9.43
วิธีการสราง E-R Diagram                                                 วิธีการสราง E-R Diagram
 2. สราง Relationship ระหวาง Entityไดดังตอไปนี้                       2.2 แตละรายวิชา (Course) จะตองมีอาจารย (Teacher) เปนผูทําการสอน
    2.1 ทางคณะ (Faculty) จะตองเสนอเรื่อง (Offer) เพื่อขอเปดวิชาเรียน    (Teach)
 (Course)

                                    Faculty                                                    Faculty


                                                                                                OFFER
                                  OFFER
                                                                                                Course         TEACH       Teacher


                                     Course



9.44                                                                     9.45




วิธีการสราง E-R Diagram                                                 วิธีการสราง E-R Diagram
 2.3 หองเรียน (Room) เปด (Open) ทําการเรียนการสอนทุกรายวิชา (Course)    2.4 รายวิชาใดๆ (Course) จะสามารถเปดสอนไดตองมี (Have) นักเรียน
                                                                                                                     
                                                                          (Student) ลงทะเบียนเรียนอยางนอย 20 คน

                                 Faculty                                                                  Faculty


                                                                                                          OFFER
                                 OFFER


                                                                                  Room         OPEN        Course       TEACH           Teacher
          Room                    Course       TEACH          Teacher
                      OPEN

                                                                                                           HAVE


                                                                                                          Student
9.46                                                                     9.47
วิธีการสราง E-R Diagram                                                      วิธีการสราง E-R Diagram
 3. กําหนดเงือนไขของความสัมพันธระหวาง Entity สามารถกําหนดไดดังนี้
             ่
    3.1 แตละคณะสามารถเสนออธิบดีเพื่อขอเปดสอนไดหลายรายวิชา แตรายวิชา                                                          Faculty
 1 รายวิชา จะตองอยูในคณะเดียวเทานั้น กลาวคือ ชื่อรายวิชาจะซ้ํากับคณะอืน
                                                                          ่                                                                  1
 ไมได
                                                                                                                                 OFFER
    3.2 อาจารย 1 ทาน สามารถสอนไดหลายวิชา และ 1 รายวิชาสามารถมี
 อาจารยสอนไดหลายทานเชนกัน                                                                                                                M
    3.3 หองเรียน 1 หองสามารถเปดทําการเรียนการสอนไดหลายรายวิชา และ 1                                M                   M         Course              M                 M      Teacher
                                                                                            Room               OPEN                                             TEACH
 รายวิชาสามารถใชหองเรียนหลายหองเพื่อทําการเรียนการสอนไดเชนเดียวกัน
                                                                                                                                                 M
    3.4 รายวิชา 1 รายวิชาจะสามารถเปดได จะตองมีนักเรียนลงทะเบียนอยางนอย
 20 คน และนักเรียน 1 คนสามารถมีวิชาเรียนไดหลายวิชา แสดงไดดังรูป                                                                    HAVE

                                                                                                                                      M
                                                                                                                                 Student

9.48                                                                          9.49




วิธีการสราง E-R Diagram                                                      วิธีการสราง E-R Diagram
 4. กําหนด Attribute และ Primary Key ใหกับแตละ Entity ดังตอไปนี้                                               FAC_ID                         FAC_NAME


 Faculty (FAC_ID,FAC_NAME) โดยที่ FAC_ID เปน Primary Key                                                                  Faculty
 Course (Course_ID,Course_Name)โดยที่ Course_ID เปน Primary Key
 Teacher(Teacher_ID, Teacher_Name)โดยที่ Teacher_ID เปน Primary Key                                                                 1
                                                                                                                                                             Course_Name
 Student(STD_ID,STD_SEX,STD_NAME)โดยที่ STD_ID เปน Primary Key                      Room_No           Course_ID               OFFER                                             Teacher_ID
 Room(Room_No) โดยที่ Room_No เปน Primary Key                                                                                       M
 แสดงไดดังรูป                                                                                     N                  M    Course                    M        TEACH        N   Teacher
                                                                                     Room                  OPEN
                                                                                                                                         M
                                                                                                                               HAVE                                            Teacher_Name

                                                                                                                                         N
                                                                                                                           Student


                                                                                                           STD_ID                                               STD_NAME
                                                                                                                                STD_SEX
9.50                                                                          9.51
Reference Book and Text Book
 ตําราอางอิง

       คัมภีรการวิเคราะหและออกแบบระบบ กิตติ ภักดีวฒนกุล และ
                                                  ั

                                                                      Q&A
       พนิดา พานิชกุล
       Modern Systems Analysis & Design : Jeffrey A. Hoffer,
       Joey F.George, Joseph S. Valacich




9.52                                                           9.53

More Related Content

More from TaiMe Sakdisri (20)

4563456
45634564563456
4563456
 
56785774
5678577456785774
56785774
 
Unit07
Unit07Unit07
Unit07
 
6784678467
67846784676784678467
6784678467
 
4678467846
46784678464678467846
4678467846
 
Unit04
Unit04Unit04
Unit04
 
Unit03
Unit03Unit03
Unit03
 
Unit02
Unit02Unit02
Unit02
 
Unit01
Unit01Unit01
Unit01
 
Thai hci
Thai hciThai hci
Thai hci
 
Original 02 hci_principles
Original 02 hci_principlesOriginal 02 hci_principles
Original 02 hci_principles
 
Original 01 hci_principles
Original 01 hci_principlesOriginal 01 hci_principles
Original 01 hci_principles
 
Email system
Email systemEmail system
Email system
 
D1 overview
D1 overviewD1 overview
D1 overview
 
Chapter008
Chapter008Chapter008
Chapter008
 
Chapter006 (1)
Chapter006 (1)Chapter006 (1)
Chapter006 (1)
 
Chapter006
Chapter006Chapter006
Chapter006
 
Chapter004
Chapter004Chapter004
Chapter004
 
Chapter003
Chapter003Chapter003
Chapter003
 
56456456
5645645656456456
56456456
 

Chapter009

  • 1. สวนที่ 3 Chapter 9 System Analysis Data Modeling การวิเคราะหระบบ แบบจําลองขอมูล System Development Life Cycle : SDLC Learning Objectives กิจกรรมในขั้นตอนนี้ไดแก 1. การกําหนดความตองการของระบบ อธิบายความหมายโดยยอของคําหลัก ๆ ที่ใชในตัวแบบขอมูล 2. การวิเคราะหความตองการของระบบใหม (Data Modeling) 2.1 แบบจําลองขันตอนการทํางานของ ้ ระบบ 2.2 คําอธิบายขันตอนการทํางาน ้ สามารถวาดแผนภาพความสัมพันธระหวางเอนทิตี (E-R 2.3 แบบจําลองขอมูล Diagram) อธิบายบทบาทของตัวแบบขอมูลเชิงมโนภาพ (Conceptual Data Modeling) ในการวิเคราะหและออกแบบระบบขอมูล สารสนเทศโดยทัวไปได ่ 9.2 9.3
  • 2. Topics แนะนําแผนภาพแสดงความสัมพันธ ระหวางขอมูล แนะนําแผนภาพแสดงความสัมพันธระหวางขอมูล สัญลักษณที่ใชใน E-R Diagram แบบจําลองขอมูล (Data Model) หมายถึง แบบจําลองทีแสดงให ่ เห็นขอมูลและ ความสัมพันธระหวางขอมูลที่เกิดขึ้นทั้งหมดในระบบ องคประกอบของ E-R Diagram โดยใช “แผนภาพแสดงความสัมพันธระหวาง ขอมูล (Entity Relationship Diagram: E-R Diagram)” วิธีการสราง E-R Diagram 9.4 9.5 สัญลักษณที่ใชใน E-R Diagram สัญลักษณที่ใชใน E-R Diagram Chen Model Crow’s Foot Model ความหมาย Chen Model Crow’s Foot Model ความหมาย Attribute ใชแสดง Attribute ของ Entity Name ใชแสดง Entity Entity Entity Name Attribute 1 Attribute 2 ….. Relationship Line เสนเชื่อม ใชแสดงคียหลัก (Identifier)  Entity Name ความสัมพันธระหวาง Entity Identifier Identifier Attribute 1 ….. Relationship ใชแสดงความสัมพันธ ระหวาง Entity สําหรับ Crow’s Foot Associative Entity Entity Model ใชตัวอักษรเขียนแสดง name - ความสัมพันธ Weak Entity 9.6 9.7
  • 3. สัญลักษณที่ใชใน E-R Diagram สัญลักษณที่ใชใน E-R Diagram ตัวอยาง E-R Diagram ของรูปแบบ Chen Model ตัวอยาง E-R Diagram ของรูปแบบ Crow’s Foot Model POS_NO POS_DES EMP_NAME EMP_SEX EMPLOYEE POSITION EMP_ID WORK_AS POS_NO M 1 EMP_NAME POS_DES EMPLOYEE WORK_ POSITION EMP_SEX AS EMP_ID 9.8 9.9 องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram Entities คือ คน สถานที่ วัตถุ เหตุการณ หรือแนวความคิดที่แวดลอมผูใชระบบที่ Entities ตองการพัฒนา Properties Relationships หมวดบุคคล (Person): EMPLOYEE,STUDENT,PATIENT,CUSTOMER, DEPARTMENT,DIVISION หมวดสถานที่ (Place): REGION,COUNTRY,BRANCH,BUILDING,ROOM, CAMPUS หมวดเหตุการณ (Event): SALE,REGISTRATION,RENEWAL,ORDER,INVOICE, FLIGHT,CANCELLATION สิ่งของ (Object): PRODUCT, BOOK , RAW MATERIAL, BUILDING หมวดของแนวคิด (Concept) : COURSE,SUBJECT,EXPENSE 9.10 9.11
  • 4. องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram Entities Entities E-R Diagram สามารถจําแนก Entity ได 2 ประเภท ดังนี้ 2. Weak Entity คือ Entity ทีตองขึ้นอยูกับ Entity อืน ไมมี Property ที่เปน ่ ่ 1. Regular Entity เอกลักษณในการจําแนกความแตกตางระหวางสมาชิก จึง หรือบางครั้งเรียกวา Strong Entity เปน Entity ทีประกอบดวย ่ ตองการศัยเอกลักษณหรือ Property จาก Entity อืนเปน ่ สมาชิกที่มคุณสมบัติ ซึ่งบงบอกถึงเอกลักษณของแตละสมาชิกนัน ี ้ สวนประกอบในการจําแนกความแตกตางดังกลาว ได เชน Entity ประชากร (POPULATION) สําหรับสัญลักษณที่ใช แทน Entity ประเภทนี้ คือรูปเหลียมผืนผา โดยมีชื่อของ Entity นัน ่ ้ อยูภายใน Order_Detail POPULATION 9.12 9.13 องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram Properties Attributes Properties (Attributes/Element/Field) หมายถึงคุณสมบัติ 1. Simple Attribute คือ Attribute ที่คาภายใน Attribute นั้นไมสามารถ แบงยอยไดอีก เชน เพศ, เงินเดือน, อายุ, จังหวัด เปนตน SexSalaryName หรือลักษณะที่ใชอธิบายรายละเอียดของ Entity หรือ Relationship สําหรับสัญลักษณที่ใชแทน Attribute ประเภทนี้ ไดแก วงรีที่มีเสนเชื่อมตอไปยัง ที่สนใจ Entity ที่เปนเจาของ Attribute นั้น โดยมีชื่อของ Attribute นั้นอยูภายใน เชน Attribute “EmpID”,”NAME”,”SEX” และ “SALARY” ของ Entity “EMPLOYEE” Name Sex Salary Attribute Name EmpID EMPLOYEE 9.14 9.15
  • 5. องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram Attributes Attributes 2. Composite Attribute คือ Attribute ที่คาภายใน Attribute นั้น สามารถ 3. Identifier หรือ Key คือ Attribute หรือกลุมของ Attribute ที่มีคาในแต แยกเปน Attribute ยอยไดอก ซึ่งมีลักษณะตรงขามกับ Simple Attribute ี ละ Attribute ของ Entity ไมซ้ํากันเลย ซึ่งถูกนํามาใชกําหนดความเปนเอกลักษณ ตัวอยางที่ 1 Attribute “ชือ” ที่สามารถแบงยอยออกเปน “คํานําหนาชื่อ”, “ชือ” ่ ่ ใหกับแตละ Attribute ใน Entity ตัวอยาง Attribute “EmpID” ของ Entity “Employee” ที่ใชแทนรหัสประจําตัวพนักงาน Identifier/Key สามารถจําแนกได และ “นามสกุล” 3 ประเภทดังนี้ FNAME Composite 1. Candidates Keys Attribute NAME Sex 2. Primary Key SNAME 3. Foreign Key Salar EMPLOYEE y Emp_ID 9.16 9.17 องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram 1. Candidate Keys คือ Attribute ใดๆ หรือ Attribute ที่รวมกันแลวทําใหคา Primary Key ของ Attribute ของ Entity นั้นไมซ้ํากันเลย 2. Primary Key คือ Candidate Key ที่ถูกเลือกใหเปน Key หลักที่มีคาของ Candidate Key Foreign Key Emp_Name Position_Des สมาชิกใน Attribute ไมซ้ํากันเลย การที่เลือก Key ที่มีคาไมซํ้ากันเลยมา Position_No c เปน Primary Key เพื่อจะให Primary Key นี้สามารถไประบุคาในอีก Position_No Emp_Lastna Attribute อื่นเพื่อประโยชนในการคนหาขอมูลไดโดยไมเกิดขอมูลซ้ําซอนกัน me EMPLOYEE 3. Foreign Key คือ Primary Key ของ Entity หนึ่งที่สามารถระบุคาสมาชิกของ Primary Key WORK_ POSITION AS อีก Entity หนึ่งที่มีความสัมพันธกันได Emp_ID 9.18 9.19
  • 6. องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram Attributes 4. Single-Valued Attribute คือ Attribute ที่มีคาของขอมูลภายใต Attribute ใด Attribute หนึ่งเพียงคาเดียวเชน Attribute “Salary” ซึ่งที่ใชเก็บ เงินเดือนของพนักงานและพนักงานแตละคนจะมีเงินเดือนเพียงคาเดียว Emp_Sex Emp_Salary Emp_Name 5. Muti-Valued Attribute คือ Attribute ที่มีคาของขอมูลไดหลายคา ภายใตคาของ Attribute ใด Attribute หนึ่งเชน Attribute “DEGREE” ที่ใชระบุ ระดับการศึกษาของพนักงานแตละคน ซึ่งพนักงานแตละคน จะมีระดับการศึกษาได EMPLOYEE Emp_ID Emp_Degree หลายระดับ สําหรับสัญลักษณที่ใชแทน Attribute ประเภทนี้ จะใชเสน 2 เสน เชื่อมระหวางรูปภาพของ Attribute กับ Entity 9.20 9.21 องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram Attributes Relationship 6. Derived Attribute คือ Attribute ที่คาของขอมูลไดมาจากการนําเอาคา Relationship คือ ความสัมพันธระหวาง Entity 2 Entity ที่มีการเชื่อมโยง ของ Attribute อื่นมาทําการคํานวณ ซึ่งคาของ Attribute ประเภทนี้จะตอง ขอมูลซึ่งกันและกัน เปลี่ยนแปลงทุกครั้ง เมื่อมีการเปลี่ยนแปลงคาของ Attribute ที่ถูกนําคามาคํานวณ เชน Attriute “TOT_SAL” ของ Entity “Employee” ที่ใชเก็บเงินเดือนทั้งหมด สัญลักษณจะใชรูปสี่เหลี่ยมขาวหลามตัดที่มีชื่อของRelationship นั้นอยู ของพนักงานแตละคนของพนักงานแตละคนเพื่อนําไปคํานวณภาษี ซึ่งไดมาจาก ภายในสัญลักษณจะตองเชือมระหวาง Entity เสมอ ่ ผลรวมของคาใน Attribute “INCOME” ของ Entity ประเภทของ Relationship สามารถจําแนกได 3 ประการดังนี้ Emp_Sex Emp_Salary Emp_Name 1. One-to-One Relationship 2. One-to-Many Relationship 3. Many-to-Many Relationship Emp_ID EMPLOYEE Emp_Degree Emp_TOT_SAL 9.22 9.23
  • 7. องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram ความสัมพันธระหวาง Entity (Relationship) ความสัมพันธระหวาง Entity (Relationship) 1. One-to-One Relationship : เปนRelationship ที่แตละ Participant 2. One-to-Many Relationship : เปน Relationship ที่แตละ Participant ของ Entityหนึ่งจะมีความสัมพันธกับอีก Participant ของอีก Entity หนึ่งเพียง ของ Entity หนึ่งมีความสัมพันธกับ Participant ของอีก Entity หนึ่ง Participant เดียวเชน กรณีลูกคาสามารถมีบัญชีเงินฝากไดเพียงบัญชีเดียว และ มากกวา 1Participant เชน กรณีลูกคาสามารถมีบัญชีเงินฝากไดมากกวา 1 บัญชี แตละบัญชีเงินฝากจะมีเจาของบัญชีไดเพียงคนเดียว ดังรูป และแตละบัญชีเงินฝากจะตองมีเจาของบัญชีเพียงคนเดียว ดังรูป 1 Belong_to 1 ACCOUNT 1 Belong_to M ACCOUNT CUSTOMER CUSTOMER 9.24 9.25 องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram ความสัมพันธระหวาง Entity (Relationship) ระดับความสัมพันธระหวาง Entity(Degree of Relationship) 3. Many-to-Many Relationship : เปน Relationship ที่ Participant Entity คือสิ่งที่สนใจในระบบ ซึ่งอาจจะเปนขอมูล สิ่งของ แผนก หรือ มากกวา 1 Participant ของ Entity หนึ่ง มีความสัมพันธกบ Participant ของอีก ั สถานที่ ซึ่งจะตองมีความสัมพันธกับอีก Entity หนึ่งเพื่อใหระบบเกิดการ Entity หนึ่งมากกวา 1 Participant เชน กรณีลูกคาสามารถมีบัญชีเงินฝากได ทํางานเปนตามขั้นตอน ดังนั้นจึงตองมีสิ่งที่ใชวัดความเขมขนของความสัมพันธ มากกวา 1 บัญชี และแตละบัญชีเงินฝากสามารถมีเจาของบัญชีไดมากกวา 1 คน ระหวาง Entity วามีความสัมพันธกันลักษณะอยางไรหรือมีความสัมพันธที่ซับซอน เพียงใด ซึ่งการวัดจํานวน Entity ที่มีความสัมพันธกนนั่นเอง ที่เรียกวา Degree of a ั Relationship คือ ขนาดของความสัมพันธระหวาง Entity สามารถจําแนกไดเปน 3 ประเภท M Belong_to M ACCOUNT CUSTOMER Unary Relationship/Recursive Relationship Binary Relationship Ternary Relationship 9.26 9.27
  • 8. องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram 1. Unary Relationship/Recursive 2. Binary Relationship : คือ Relationship ที่เกิดขึ้นระหวาง 2 Entity กรณีเชนนี้ Relationship : เปนความสัมพันธที่เกิดขึ้นระหวางสมาชิกภายใน Entity ของ เรียกไดวามี Degree ของความสัมพันธเทากับ 2 เนื่องจากเปนความสัมพันธระหวาง ตัวเองซึ่งเกิดในกรณีท่ี Attribute ของ Entity นั้น สามารถสรางความสัมพันธกับ Entity 2 จํานวน อีก Attribute หนึ่งภายใน Entity เดียวกัน ตัวอยาง ความสัมพันธแบบ One-to-One Relationship ซึ่งพนักงานหนึ่งคนจะ สามารถมีที่จอดรถ (Parking Place) ได 1 ที่เทานั้นและที่จอดรถ 1 ที่เปนของ ตัวอยาง ความสัมพันธเปนแบบ One-to-Many ซึ่งจะเห็นไดวา Employee หนึ่ง คนสามารถจะบริหารงาน Employee คนอื่นๆได เชนหัวหนางาน ดังรูป พนักงานหนึ่งคนดังรูป M EMPLOYEE 1 IS ASSIGNED 1 PARKING PLASCE Employee Manage 1 9.28 9.29 องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram ตัวอยาง แบบ One-to-Many ในหนึ่งสายผลิตภัณฑ (Product Line) จะประกอบ 3.Ternary Relationship : คือ Relationship ที่เกิดขึนระหวาง Entity มากกวา 2 Entity ้ ขึนไป ้ ไปดวย (Contains) สินคาไดตั้งแต 1 ผลิตภัณฑ (Product) ขึ้นไป และสินคาตั้งแต ตัวอยาง Entity ความสัมพันธกัน 3 Entity ดวยกันไดแก PART,VENDOR และ 1 ผลิตภัณฑขึ้นไปจะตองอยูในสายการผลิตเพียง 1 สายเทานั้น ดังรูป WAREHOUSE ซึ่งมีความสัมพันธในสวนของการสงสินคา ผูจัดจําหนาย (VENDOR) สามารถสงชินสวนสินคา (PART) ไดตั้งแต 1 ชินสวนขึนไป เพื่อไป เก็บไวในคลังสินคา ้ ้ ้ PRODUCT LINE 1 CONTAINS M PRODUCT (WAREHOUSE) ไดตั้งแต 1 คลังสินคาขึ้นไป ดังรูป PART ตัวอยาง แบบ Many-to-Many คือ นักศึกษา (Student) ตังแต 1 คนขึนไป ้ ้ สามารถลงทะเบียน (Register for) เรียนในรายวิชา (Course) ไดตั้งแต 1 รายวิชา M ขึ้นไป และในรายวิชาตั้งแต 1 รายวิชาขึ้นไปนี้นักศึกษาลงทะเบียนเรียนไดมากกวา 1 คน ดังรูปดานลาง VENDOR M SHIPS M WAREHOUSE STUDENT M REGISTERS FOR M COURSE QUANTITY 9.30 9.31
  • 9. องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram Cardinalities ใน Relationship Associative Entities Cardinality หมายถึง จํานวนสมาชิกที่เปนไปไดใน Entity หนึงที่มี ่ Associative Entity หมายถึง Relationship ที่มี Attribute เกิดขึ้นใหม โดยที่ ความสัมพันธกับสมาชิกของอีก Entity หนึงตัวอยาง หากมี Entity “ภาพยนตร ่ Attribute นั้นเกิดจากความสัมพันธระหวาง Entity ตั้งแต 2 Entity ขึ้นไป ใน สัญลักษณสี่เหลี่ยมขาวหลามตัดที่ลอมรอบดวยสี่เหลี่ยมผืนผา (MOVIE)” และ”มวนวิดีโอ(VIDEO TAPE)” ซึ่งมีความสัมพันธกนคือ ภาพยนตรจะถูก ั บันทึกไวในมวนวิดีโอ(SAVE AS) โดยมีเงื่อนไขคือ ภาพยนตรหนึงเรื่องสามารถบันทึก ่ ตัวอยาง ความสัมพันธระหวาง Employee และ Course กลาวคือ Employee 1 คน ไวในมวนวิดีโอไดอยางนอยที่สุด 1 มวน สวนมวนวิดีโอ 1 มวน สามารถบันทึก สามารถสําเร็จหลักสูตรฝกอบรมไดหลาย Course และ Course 1 Course จะมี ภาพยนตรไดสูงสุด 1 เรื่องหรือไมบันทึกเลยได แสดงไดดังรูปแสดงแบบ One-to- Employee เขาฝกไดหลายคน (จะไมมีพนักงานสําเร็จหลักสูตรไดและ หลักสูตรจะ Many ไมมีพนักงานเขาอบรมเลยได) ดังนั้น Attribute “DATE_COMPLETE” จะสามารถ บอกใหทราบไดวา “EMPLOYEE” คนใดสําเร็จหลักสูตร (Course) ใด และสําเร็จ MOVIE 1 SAVE AS M VIDEO TAPE เทาใด ดังนั้นเพื่อให E-R Diagram สมบูรณคือสามารถมองเห็น Entity ที่แอบแฝง มากับ Relationship ได จึงทําการแปลง Relationship นั้นใหเปน Relationship ที่ เรียกวา Associative Entity ดังรูป แสดงแบบกําหนดจํานวนสมาชิกของทั้งสอง Entity MOVIE (1,n) SAVE AS (0,1) VIDEO TAPE 9.32 9.33 องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram Generalization Hierachy Generalization Hierarchy เปนการแสดงถึงการจัดลําดับของ Entity ที่มี DATE_COMPLETED ความสัมพันธกันหรือ Relationship ที่มีความสัมพันธกันไดถูกนํามาใชกับ E-R Diagram เพือแสดงถึง Entity หรือ Relationship ซึ่งมีสมาชิกที่สามารถแยก ่ ออกเปนกลุมยอยๆ ภายใต Entity หรือ Relationship นั้น ดังนั้น Entity หรือ Relation นี้จึงเรียกวา “Supertype Entity” ตัวอยาง Entity “EMPLOYEE” ที่มี Attribute “EMP_ID”, “SEX” และ MILITARY_STATUS” ดังรูป EMPLOYEE (M) (M) COURSE CERTIFICA TE 9.34 9.35
  • 10. องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram ตัวอยาง Generalization Hierarchy สามารถใชกับ Relationship ได MILITARY_ST Relationship “IS_A_HOLIDAY” ที่สามารถแยกออกเปน 2 Relationship ยอย คือ EMP_ID SEX ATUS Relationship “OFFICIAL_HOLIDAY” ซึ่งเปนวันหยุดประจําป และ “PROPER_HOLIDAY” ซึ่งเปนวันหยุดเฉพาะของบริษัท แสดงดังรูป EMPLOYEE SuperType MONTH EMP_ID SEX Supertype MALE FEMALE DAY YEAR IS_A_HOLIDAY EMP_ID SEX MILITARY_ST ATUS Subtype OFFICIAL_HOLIDA PROPER_HOLIDAY Y 9.36 9.37 Subtype องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram Aggregation JOB Aggreation คือ การทําให Relationship และEntity ที่ทําใหเกิด Relationship นั้นอยูในภาวะรวมกลุมกันเสมือนเปนอีก Entity หนึงเพื่อใหสามารถ ่ นําไปใชสรางความสัมพันธกับ Entity อื่นไดตัวอยาง Entity “Employee” “JOB” EMPLOYEE BRANCH และ “BRANCH” ซึ่งเปน Ternary Relationship มีความสัมพันธกันคือ พนักงาน Work_ON (Employee) ทํางาน (Work_on) ที่ไดรับมอบหมายงาน (Job) ในแตละสาขา (Branch) ของสํานักงานดังรูป Manage JOB EMPLOYEE BRANCH Work_ON Manager 9.38 9.39
  • 11. องคประกอบของ E-R Diagram องคประกอบของ E-R Diagram ใชวิธี Aggregation เพื่อทําใหเขียน E-R Diagram ไดงายขึ้นมีหลักเกณฑดังนี้ 1. ใหสมมติ Relationship ที่เกิดจากกลุม Entity นั้นเปนเสมือน Entity 1 Entity JOB โดยการวาดกรอบสี่เหลี่ยมลอมรอบ Relationship และกลุม Entity เขาไวดวยกัน 2. ลากเสนตรงเชื่อมความสัมพันธระหวาง Relationship ที่ Aggregation แลวกับ Relationship ที่เกิดจากความสัมพันธของอีก Entity หนึ่ง 3. กลุม Entity และ Relationship ที่ถูกรวมเขาไวดวยกันมีคาเทากับ 1 Entity EMPLOYEE BRANCH Work_ON ดังนั้น ความสัมพันธที่ใชวิธี Aggregation แลวสามารถอานไดดังนี้ 1. พนักงานทํางานที่ไดรับมอบหมายตามสาขาที่กําหนดไว 2. การทํางานที่ไดรับมอบหมายของพนักงานในแตละสาขาถูกบริหารจัดการโดย ผูจัดการ Manage Manager 9.40 9.41 วิธีการสราง E-R Diagram วิธีการสราง E-R Diagram วิธีสราง E-R Diagram มีขั้นตอนดังตอไปนี้ 1. กําหนด Entity ทั้งหมดในระบบ ไดดังนี้ 1. กําหนด Entity ทั้งหมดของระบบ 1.1. คณะ (Faculty) 2. สราง Relationship ระหวาง Entity 1.2. รายวิชา (Course) 3. กําหนดเงื่อนไข (Contraints) ของความสัมพันธระหวาง Entity ตางๆ 1.3. อาจารย (Teacher) 4. กําหนด Attribute ใหกับแตละ Entity พรอมทั้งกําหนด Primary Key 1.4. นักเรียน (Student) 1.5. หองเรียน (Room) ตัวอยาง การเก็บรวบรวมขอมูลสมมติของมหาวิทยาลัยแหงหนึ่ง เปดสอน หลักสูตรปริญญาตรีหลายคณะแตละคณะเปดสอนหลายรายวิชา ซึ่งทําการสอน โดยอาจารยที่มีคณภาพ แตละรายวิชาจะสามารถเปดสอนไดตอเมื่อมีนักศึกษามา ุ ลงทะเบียนในรายวิชานั้นอยางนอย 20 คน อาจารย 1 ทานสามารถสอนไดหลาย Faculty Course Student Teacher วิชา และหองเรียนแตละหองสามารถใชสอนวิชาตางๆ ไดหลายวิชา จากขอมูลนี้ Room สามารถสราง E-R Diagram 9.42 9.43
  • 12. วิธีการสราง E-R Diagram วิธีการสราง E-R Diagram 2. สราง Relationship ระหวาง Entityไดดังตอไปนี้ 2.2 แตละรายวิชา (Course) จะตองมีอาจารย (Teacher) เปนผูทําการสอน 2.1 ทางคณะ (Faculty) จะตองเสนอเรื่อง (Offer) เพื่อขอเปดวิชาเรียน (Teach) (Course) Faculty Faculty OFFER OFFER Course TEACH Teacher Course 9.44 9.45 วิธีการสราง E-R Diagram วิธีการสราง E-R Diagram 2.3 หองเรียน (Room) เปด (Open) ทําการเรียนการสอนทุกรายวิชา (Course) 2.4 รายวิชาใดๆ (Course) จะสามารถเปดสอนไดตองมี (Have) นักเรียน  (Student) ลงทะเบียนเรียนอยางนอย 20 คน Faculty Faculty OFFER OFFER Room OPEN Course TEACH Teacher Room Course TEACH Teacher OPEN HAVE Student 9.46 9.47
  • 13. วิธีการสราง E-R Diagram วิธีการสราง E-R Diagram 3. กําหนดเงือนไขของความสัมพันธระหวาง Entity สามารถกําหนดไดดังนี้ ่ 3.1 แตละคณะสามารถเสนออธิบดีเพื่อขอเปดสอนไดหลายรายวิชา แตรายวิชา Faculty 1 รายวิชา จะตองอยูในคณะเดียวเทานั้น กลาวคือ ชื่อรายวิชาจะซ้ํากับคณะอืน ่ 1 ไมได OFFER 3.2 อาจารย 1 ทาน สามารถสอนไดหลายวิชา และ 1 รายวิชาสามารถมี อาจารยสอนไดหลายทานเชนกัน M 3.3 หองเรียน 1 หองสามารถเปดทําการเรียนการสอนไดหลายรายวิชา และ 1 M M Course M M Teacher Room OPEN TEACH รายวิชาสามารถใชหองเรียนหลายหองเพื่อทําการเรียนการสอนไดเชนเดียวกัน M 3.4 รายวิชา 1 รายวิชาจะสามารถเปดได จะตองมีนักเรียนลงทะเบียนอยางนอย 20 คน และนักเรียน 1 คนสามารถมีวิชาเรียนไดหลายวิชา แสดงไดดังรูป HAVE M Student 9.48 9.49 วิธีการสราง E-R Diagram วิธีการสราง E-R Diagram 4. กําหนด Attribute และ Primary Key ใหกับแตละ Entity ดังตอไปนี้ FAC_ID FAC_NAME Faculty (FAC_ID,FAC_NAME) โดยที่ FAC_ID เปน Primary Key Faculty Course (Course_ID,Course_Name)โดยที่ Course_ID เปน Primary Key Teacher(Teacher_ID, Teacher_Name)โดยที่ Teacher_ID เปน Primary Key 1 Course_Name Student(STD_ID,STD_SEX,STD_NAME)โดยที่ STD_ID เปน Primary Key Room_No Course_ID OFFER Teacher_ID Room(Room_No) โดยที่ Room_No เปน Primary Key M แสดงไดดังรูป N M Course M TEACH N Teacher Room OPEN M HAVE Teacher_Name N Student STD_ID STD_NAME STD_SEX 9.50 9.51
  • 14. Reference Book and Text Book ตําราอางอิง คัมภีรการวิเคราะหและออกแบบระบบ กิตติ ภักดีวฒนกุล และ  ั Q&A พนิดา พานิชกุล Modern Systems Analysis & Design : Jeffrey A. Hoffer, Joey F.George, Joseph S. Valacich 9.52 9.53