Upload
others
View
10
Download
0
Embed Size (px)
Citation preview
ระบบจดการสอดจตอลออนไลนดวยซลเวอรไลท DIGITAL MEDIA MANAGEMENT SYSTEM WITH SILVERLIGHT
นายบญเกด แสงค ากล นายวราช พงบางกรวย นางสาวสรยา ศรสวาง
ปรญญานพนธนเปนสวนหนงของการศกษาตามหลกสตรวศวกรรมศาสตรบณฑต ภาควชาวศวกรรมคอมพวเตอร คณะวศวกรรมศาสตร
มหาวทยาลยเทคโนโลยราชมงคลธญบร พ.ศ. 2555
ระบบจดการสอดจตอลออนไลนดวยซลเวอรไลท
นายบญเกด แสงค ากล นายวราช พงบางกรวย นางสาวสรยา ศรสวาง
ปรญญานพนธนเปนสวนหนงของการศกษาตามหลกสตรวศวกรรมศาสตรบณฑต ภาควชาวศวกรรมคอมพวเตอร คณะวศวกรรมศาสตร
มหาวทยาลยเทคโนโลยราชมงคลธญบร พ.ศ. 2555
DIGITAL MEDIA MANAGEMENT SYSTEM WITH SILVERLIGHT
MR. BOONKERD SANGKAMKUL MR. WIRAT PHUNGBANGKRUAY MISS. SIRAYA SRISAWANG
THIS PROJECT SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS
FOR THE BACHELOR DEGREE OF ENGINEERING DEPARTMENT OF COMPUTER ENGINEERING
FACULTY OF ENGINEERING RAJAMANGALA UNIVERSITY OF TECHNOLOGY THANYABURI
YEAR 2012
หวขอปรญญานพนธ ระบบจดการสอดจตอลออนไลนดวยซลเวอรไลท นกศกษา นายบญเกด แสงค ากล นายวราช พงบางกรวย นางสาวสรยา ศรสวาง อาจารยทปรกษา อาจารยวระ คมปรยารตน
ภาควชาวศวกรรมคอมพวเตอร คณะวศวกรรมศาสตร มหาวทยาลยเทคโนโลยราชมงคล
ธญบร อนมตใหปรญญานพนธนเปนสวนหนงของการศกษาตามหลกสตรวศวกรรมศาสตรบณฑต
……………………………………....…….หวหนาภาควชาฯ (อาจารยมาโนช ประชา)
คณะกรรมการสอบปรญญานพนธ
………………………………………...…..ประธานกรรมการ (ดร.กตตวณณ นมเกดผล)
……………………………………….........กรรมการ (อาจารยมาโนช ประชา)
………………………………..……....…...กรรมการ (อาจารยวระชย แยมวจ)
……………………………………….....…กรรมการและอาจารยทปรกษา (อาจารยวระ คมปรยารตน)
ลขสทธของภาควชาวศวกรรมคอมพวเตอร คณะวศวกรรมศาสตร มหาวทยาลยเทคโนโลยราชมงคลธญบร
ง
หวขอปรญญานพนธ ระบบจดการสอดจตอลออนไลนดวยซลเวอรไลท นกศกษา นายบญเกด แสงค ากล รหส 115110462023-2 นายวราช พงบางกรวย รหส 115110462044-8 นางสาวสรยา ศรสวาง รหส 115110462051-3 อาจารยทปรกษา อาจารยวระ คมปรยารตน ปการศกษา 2554
บทคดยอ
โครงงานนเปนการจดท าระบบจดการสอดจตอลออนไลนดวยซลเวอรไลทในรปแบบ ของเวบแอพพลเคชน โดยระบบนมสอทงหมด 3 ประเภท คอ ภาพ วดโอ และเสยง ซงระบบสามารถท าการคนหา รบชม อพโหลด ดาวนโหลด ลบ และโหวตใหคะแนนกบสอ อกทงยง มระบบเวบบอรด เพอถามตอบเกยวกบปญหาของระบบ และใชในการประชาสมพนธ ขาวสารรวมถงยงมระบบจดการก าหนดสทธการเขาใชระบบ
ผลทไดจากการออกแบบและการจดท าระบบจดการสอดจตอลออนไลน คอ ใหบรการผานเครอขายอนเตอรเนต ซงชวยอ านวยความสะดวกในการคนหา รบชม อพโหลด ดาวนโหลด และลบสอ ค าส าคญ สอดจตอล เวบบอรด ระบบจดการสอดจตอล ซลเวอรไลท
จ
กตตกรรมประกาศ
โครงงาน “ระบบจดการสอดจตอลออนไลนดวยซลเวอรไลท” นส าเรจขนมาไดเพราะสมาชกทกคนใหความรวมมอท างานเปนอยางดรวมทงทานอาจารยทกทาน ในภาควชาวศวกรรมคอมพวเตอรทคอยสนบสนนและคอยชแนะแนวทางในการด า เนนงาน โดยเฉพาะทาน อาจารยวระ คมปรยารตน อาจารยทปรกษา ทไดสละเวลาใหค าปรกษา และชวยชแนะแนวทางรวมทงขอผดพลาดในการท างาน ขอกราบขอบพระคณทานอาจารยทกทานทชวยใหโครงงานนส าเรจลลวงไปดวยด
นอกจากนขอกราบขอบพระคณ คณพอและคณแม ผเปนทรก ผใหก าลงใจและใหโอกาสการศกษาอนมคายง ขอใหคณความดสงผลถงผมพระคณทกทาน หากโครงงานนมจดบกพรองหรอขอผดพลาดประการใด คณะผจดท าขอนอมรบดวยความเคารพยงเพอน าไปปรบปรงแกไขในโอกาสตอไป และหวงเปนอยางยงวาโครงงานนจะอ านวยความสะดวกและเปนประโยชนตอผทสนใจไดเปนอยางด คณะผจดท า
ฉ
สารบญ หนา บทคดยอ กตตกรรมประกาศ
ง จ
สารบญ สารบญตาราง สารบญรป
ฉ ซ
ฌ บทท 1 บทน า 1 1.1 ทมาของปญหา 1 1.2 วตถประสงค 1 1.3 ขอบเขตของโครงงาน 1 1.4 ผลทคาดวาจะไดรบ 2 บทท 2 ทฤษฎทเกยวของ 3 2.1 บทน า 3 2.2 งานวจยทเกยวของ 3 2.3 วศวกรรมซอฟตแวร (Software Engineering) 7 2.4 ระบบการจดการฐานขอมล (Database Management System : DBMS) 12 2.5 การวเคราะหและการออกแบบระบบ (System Analysis And Design) 19 2.6 การเขยนโปรแกรมเชงวตถ (Object Oriented Programming : OOP) 21 2.7 การพฒนาระบบเชงวตถ (Unified Modeling Language : UML) 24 2.8 ไมโครซอฟทซลเวอรไลท (Microsoft Silverlight) 38 บทท 3 วธการด าเนนงาน 42 3.1 แผนการด าเนนงาน 42 3.2 แบบจ าลองระบบจดการสอดจตอลออนไลน 43 3.3 การวเคราะหระบบงาน (Use Case Diagram) 44 3.4 วเคราะหพฤตกรรมของระบบ (Sequence Diagram) 51 3.5 ล าดบกจกรรมของการท างาน (Activity Diagram) 56 3.6 คลาสไดอะแกรม (Class Diagram) 62
ช
สารบญ (ตอ)
หนา 3.7 แผนภาพแสดงความสมพนธระหวางขอมล (E-R Diagram) 63 3.8 ความสมพนธขอมล (Data Relation) 64 3.9 พจนานกรมขอมล (Data Dictionary) 65 3.10 การใชงาน Method ของ Web Service 68 บทท 4 ผลการด าเนนงาน 70 4.1 ผลการด าเนนงานของระบบ 70 4.2 การทดสอบการใชงานระบบ 71 4.3 สรปผลการด าเนนงาน 82 บทท 5 สรปและขอเสนอแนะ 83 5.1 สรปผลโครงงาน 83 5.2 ขอเสนอแนะ 83 5.3 อปสรรคในการท างาน 83 บรรณานกรม 84 ภาคผนวก ก 85 ขนตอนการตดตงโปรแกรม 86 ภาคผนวก ข 105 คมอการใชงาน 106 ประวตผจดท าปรญญานพนธ 120
ซ
สารบญตาราง
ตารางท หนา 2.1 แสดงสญลกษณของ E-R Diagram 18 2.2 ระบสถานภาพปจจบนส าหรบเบราวเซอรและระบบปฏบตการทรองรบ 40 3.1 ระยะเวลาการด าเนนงาน 42 3.2 โครงสรางตาราง Media แสดงรายละเอยดของไฟลทอพโหลด 65 3.3 โครงสรางตาราง User แสดงรายละเอยดการเกบขอมลของสมาชก 65 3.4 โครงสรางตาราง MediaType แสดงรายละเอยดประเภทไฟล 66 3.5 โครงสรางตาราง QPosts แสดงรายละเอยดการถามกระท 66 3.6 โครงสรางตาราง AnswerMessage แสดงรายละเอยดการตอบกระท 66 3.7 โครงสรางตาราง Vote แสดงรายละเอยดการโหวต 67 3.8 โครงสรางตาราง Group แสดงรายละเอยดการสรางกลม 67 3.9 โครงสรางตาราง GroupUser แสดงรายละเอยดของกลมสทธสมาชก 67 3.10 โครงสรางตาราง GroupMedia แสดงรายละเอยดของกลมสทธสอ 67 3.11 การใชงาน Method ของ Web Service 68 4.1 ตารางแสดงสทธการเขาใชระบบของผใชงานแตละระดบ 70
ฌ
สารบญรป รปท หนา 2.1 วงจรการพฒนาระบบแบบ Adapted Waterfall 10 2.2 แสดงสญลกษณของ Entity 15 2.3 แสดงสญลกษณของ Property 16 2.4 แสดงสญลกษณของ Relationship 16 2.5 แสดงความสมพนธแบบหนงตอหนง 16 2.6 แสดงความสมพนธแบบหนงตอกลม 17 2.7 แสดงความสมพนธแบบกลมตอกลม 17 2.8 แสดงสญลกษณทใชแทน Actor และ Use Case 24 2.9 แสดงลกษณะการเขยน Use Case Diagram 25 2.10 แสดงขนตอนการท างานของ Use Case Diagram 26 2.11 แสดงการเกด Use Case Diagram 27 2.12 สญลกษณการใช Inclusion และ Extension ความสมพนธระหวาง Use Case 27 2.13 แสดงองคประกอบทงหมดเปนสญลกษณ 29 2.14 สญลกษณแสดงรปแบบการตดตงทง 3 แบบของ Message 29 2.15 แสดงลกษณะของการแสดงเวลาของ Sequence Diagram 30 2.16 แสดงสญลกษณของ Activity Diagram 31 2.17 แสดง Activity Diagram แบบมทางเลอกตดสนใจ 31 2.18 แสดง Activity Diagram แบบมการท างานพรอมกน 32 2.19 แสดง Activity Diagram แบบแบงสวน 33 2.20 แสดงสญลกษณการก าหนด Class 34 2.21 แสดงสญลกษณ Component Diagram 37 2.22 ตวอยาง Component Diagram ของระบบเรยกดขอมลจาก Web Site 37 2.23 แสดงมมมองสถาปตยกรรมของซลเวอรไลท 39 3.1 แสดงการท างานของระบบ 43 3.2 แสดงสญลกษณแทนผใชระบบ 44 3.3 แสดงสญลกษณแทนผอพไฟล 44 3.4 Use Case Diagram ระบบการลอกอนเขาสระบบ 45
ญ
สารบญรป (ตอ) รปท หนา 3.5 Use Case Diagram ระบบการสมครสมาชก 46 3.6 Use Case Diagram ระบบการจดการไฟล 47 3.7 Use Case Diagram ระบบการจดการสทธใหแกไฟล 48 3.8 Use Case Diagram ระบบประชาสมพนธขอมล 49 3.9 Use Case Diagram ระบบกระทถาม-ตอบ 50 3.10 Sequence Diagram ระบบการลอกอนเขาสระบบ 51 3.11 Sequence Diagram ระบบการสมครสมาชก 51 3.12 Sequence Diagram ระบบการจดการไฟล 52 3.13 Sequence Diagram ระบบประชาสมพนธขอมล 54 3.14 Sequence Diagram ระบบกระทถาม-ตอบ 55 3.15 Activity Diagram ระบบการลอกอนเขาสระบบ 56 3.16 Activity Diagram ระบบสมครสมาชก 57 3.17 Activity Diagram ระบบการจดการไฟล 58 3.18 Activity Diagram ระบบการจดการสทธใหแกไฟล 59 3.19 Activity Diagram ระบบประชาสมพนธขอมล 60 3.20 Activity Diagram ระบบกระทถาม-ตอบ 61 3.21 Class Diagram ความสมพนธของขอมล 62 3.22 E-R Diagram 63 3.23 ความสมพนธของระบบจดการสอดจตอลออนไลน 64 4.1 แสดงหนาโฮมเพจของระบบสอดจตอลออนไลน 71 4.2 แสดงหนาตางการสมครสมาชกของระบบ 72 4.3 แสดงหนาตางการลอกอนเขาสระบบ 73 4.4 แสดงการอพโหลดสอดจตอล 73 4.5 แสดงการเลอกไฟลในการอพโหลด 74 4.6 แสดงการอพโหลดไฟลหลายประเภท 74 4.7 แสดงการอพโหลดไฟล 75 4.8 แสดงสวนของแกลเลอรรปภาพ 75
ฎ
สารบญรป (ตอ) รปท หนา 4.9 แสดงสวนการแกไขขอมลไฟล 76 4.10 แสดงสไลดโชวแกลเลอร 77 4.11 แสดงสวนของวดโอ 78 4.12 แสดงสวนของเสยง 78 4.13 แสดงสวนการแกไขขอมลสมาชก 79 4.14 แสดงสวนการตงกลมและก าหนดสทธการเขาถงของไฟล 80 4.15 แสดงหนาเวบบอรด 80 4.16 แสดงหนาตางการตงกระทขอความบนเวบบอรด 81 4.17 แสดงรายการไฟลทถกการแจงลบ 82
บทท 1 บทน า
1.1 ทมาของปญหา เนองจากปจจบนระบบอพโหลดสอออนไลน มมากมายหลายแขนงแตเปนเพยงการฝากไฟลเอาไวแลวเปน Link สงกลบมาเพอให ดาวนโหลด ซงความตองการของผใชมความตองการเพมเตมเกยวกบการฝากไฟล ทงในรปแบบภาพ วดโอ และเสยง โดยทสามารถเขาไปดไดในเวบโดยตรงสามารถคนหาไฟลตางๆผานสวนกลางไดเพอเปนการเปดโลกทศนไปในตวอกดวย ปจจบนแอพพลเคชนทสามารถอพโหลด แลวสามารถดไดนน มแตไมครอบคลมทงหมด ผจดท าจงตองการแกไขปญหาโดยการน าสอทงสามมารวมกนเพอสรางความสะดวกสบายแกผใช และน าเสนอววฒนาการของการเขยน แอพพลเคชนในปจจบนใหไดใชประโยชนมากทสดเทาทจะท าได 1.2 วตถประสงค
การจดท าระบบจดการสอดจตอลออนไลนขนมาเพอใหผใชงานคนหาหรอรบชมภาพ วดโอ และเสยงอกทงยงสามารถมสทธในการอพโหลด ดาวนโหลดภาพ วดโอ และเสยงได ท าใหผใชงานไมตองยงยากในการเปดเวบไซตหลายๆเวบไซต และสะดวก รวดเรวตอการใชงาน โดยภาพ วดโอ และเสยงจะถกจดเกบแยกไวอยางเปนระบบ เพองายตอการคนหา 1.3 ขอบเขตของโครงงาน จดท าระบบในรปแบบของเวบแอพพลเคชน โดยแสดงสอประเภท ภาพ วดโอ และเสยง ผานเวบแอพพลเคชน ซงระบบมความสามารถ คอ
1.3.1 สามารถสมครสมาชกเพอเขาใชระบบได 1.3.2 มระบบสมาชกของผใช 3 ระดบ ดงน
1) ผดแลระบบ 2) สมาชก 3) บคคลทวไป
โดยสามารถก าหนดสทธการใชงานของสมาชกไดดงตอไปน ผดแลระบบและสมาชกสามารถอพโหลด ดาวนโหลด ภาพ วดโอ และเสยงได สมาชกสามารถก าหนดสทธการเขาถงภาพ วดโอ และเสยงได ผดแลระบบสามารถลบภาพ วดโอและเสยงทไมเหมาะสมในระบบได
2
สมาชกสามารถแกไข การจดการขอมลสมาชกของตนเองได ผดแลระบบสามารถแกไข ลบ จดการระบบเวบบอรดไดทงหมด ผดแลระบบ สมาชก และบคคลทวไปสามารถคนหา และรบชมภาพ วดโอและ
เสยงทมอยในระบบทงหมดได สมาชก และบคคลทวไปสามารถแจงภาพ วดโอ และเสยงทไมเหมาะสมใหกบ
ผดแลระบบ 1.3.3 สามารถก าหนดการเขาถง ภาพ วดโอ และเสยง
1) ทกคนสามารถเขาถงได 2) เฉพาะกลมสมาชกทสรางขน 3) ความเปนสวนตว
1.3.4 ระบบรองรบรปแบบไฟลของซลเวอรไลท ดงน 1) ภาพ ไดแก JPG, JPEG, PNG 2) วดโอ ไดแก WMV, MP4 3) เสยง ไดแก MP3, WMA
1.3.5 การแสดงผล 1) ภาพ สามารถแสดงในรปแบบสไลดโชวได 2) วดโอทถกเลอกแสดงภาพและเสยงแตวดโอทไมไดถกเลอกแสดงแคภาพ
1.3.6 ระบบเวบบอรด 1) จดท าส าหรบ ถาม-ตอบ เกยวกบปญหาของระบบ 2) จดท าส าหรบเขยนขอความส าหรบประชาสมพนธ
1.3.7 ระบบสามารถใหคะแนนสอ และเกบสถตการเขาชมของไฟล ภาพ วดโอ เสยง 1.4 ผลทคาดวาจะไดรบ ไดเวบแอพพลเคชน ทสามารถท าการคนหา รบชม อพโหลด และดาวนโหลดสอ ผานเครอขายอนเตอรเนตได
บทท 2 ทฤษฎทเกยวของ
2.1 บทน า ระบบงานในรปแบบเวบแอพพลเคชน (Web Applications) ซงจะท าการพฒนาโดยใชโปรแกรมภาษา Visual C# รวมกบ SQL (Structured Query Language) ซงใชในการจดการเกยวกบระบบฐานขอมล โดยเนอหาทเกยวของกบโครงงานในเรองตางๆมรายละเอยดตามหวขอ คอ
2.1.1 งานวจยทเกยวของ 2.1.2 วศวกรรมซอฟตแวร (Software Engineering) 2.1.3 ระบบการจดการฐานขอมล (Database Management System : DBMS) 2.1.4 การวเคราะหและการออกแบบระบบ (System Analysis And Design) 2.1.5 การเขยนโปรแกรมเชงวตถ (Object Oriented Programming : OOP) 2.1.6 การพฒนาระบบเชงวตถ (Unified Modeling Language : UML) 2.1.7 ไมโครซอฟทซลเวอรไลท (Microsoft Silverlight)
2.2 งานวจยทเกยวของ
2.2.1 Streaming Media Technology ปจจบนนสอผสม (Multimedia) ไดมการน ามาใชในงานน าเสนอในหลายรปแบบ
เนองจากจะสามารถท าใหผรบชมสามารถเขาใจไดดกวาการใชสออกษร ภาพ หรอเสยง อยางใดอยางหนงเพยงอยางเดยว โดยระบบเครอขายไดถกน ามาใชในการน าเสนอขอมลเชนเดยวกน เนองจากประสทธภาพการเขาถงผรบชมจ านวนมากไดในการน าเสนอเพยงครงเดยว และการ ใชสอผสม ประเภท Video เพอใชในการน าเสนอผาน Web Browser ในระบบ Intranet และ Internet ซงเปนระบบ Network ทมการน ามาประยกตใชมากทสดอยางหนงในปจจบน
ส าหรบวธการสงขอมล Audio และ Video ผาน Web Browser มอย 2 ประเภทใหญๆคอ การใช Web Server ในการน าขอมลสงไปยง โปรแกรมทใชน าเสนอสอนนๆ และอกวธหนงคอการใช Streaming Media Server ซงจะใช Server โดยเฉพาะในการใหบรการขอมล Audio/Video ถาเปนเมอกอน การน าเสนอสอ Audio/Video บน Web จะใชการ Download และ Play ซงการทจะชมสอนนๆได จะตองท าการ Download ขอมลทงหมดมากอนจงจะสามารถเลนได ซงถงแมจะเปนสอขนาดเลกเพยง 30 วนาทกตาม อาจจะตองใชเวลา Download ถง 20 นาทกอนทจะสามารถน ามาใชในการฟง/ชมได แตปจจบนการชม Audio/Video จาก Streaming Media Server จะแตกตาง
4
ออกไป โดยท Streaming Media File จะเรมเกอบจะในทนททเลน ระหวางทขอมลก าลงถกสง ผชมสามารถรบฟง/ชม สอนนๆไดทนท โดยไมจ าเปนตองรอให Download ขอมลทงหมดกอน ไมวาสอนนๆจะมขนาด 30 วนาท หรอ 30 นาทกตาม โดยม Buffer เปนตวชวย ในขณะทการน าเสนอขอมล Audio/Video ผานระบบ Internet ก าลงเปนทนยม วธการน าเสนอจงไดถกน ามาพฒนา โดยวธการสงแบบแรกคอการใช Web Server ในการใหบรการ และวธการทสองคอการใช Streaming Media Server ในการใหบรการนนเอง ซงในแตละวธกจะมขอดขอเสยแตกตางกนไป จงตองมการพจารณาเลอกใชวธทเหมาะสมและมประสทธภาพสงสดกบการใชงานทตองการ
1) Streaming With Web Server การใชงาน Multimedia File บน Web Server เรมจากท าการแปลง Audio/Video
ใหอยในรปแบบสอทเหมาะสมส าหรบการสงขอมลบน Internet โดยพจารณาจาก Bandwidth เชน 28.8, 33.6, 56.6 Kbps ส าหรบ Modem ทวไปท าการ Upload แฟมมลตมเดยไปยง Web Server และสรางเวบเพจทระบ URL ของแฟมมลตมเดยนนๆ เมอมการเรยกใชงานแฟมมลตมเดย Client-Side Player จะท างานและเรม Download แฟมมลตมเดย เมอแฟมทงหมด Download เสรจสนแลวจงท าการ Play ไฟลนนๆ
จดเดนของการใช Web Server คอการทสามารถใชทรพยากรทมอยแลวในการน าเสนอไดทนท แตงานทเพมใหแก Web Server อาจท าใหบรการของ Web Server ทมอยเดม ท างานไดประสทธภาพต าลง
การสงขอมล Web Server ใชการตดตอผาน Hypertext Transport Protocol (HTTP) ในการตดตอระหวาง Server และ Client ซง HTTP จะควบคม Transmission Control Protocol (TCP) ซงจะจดการเกยวกบการสงขอมลทงหมด เปาหมายของ TCP คอการเพมระดบการสงขอมลใหอยในระดบสงสดโดยทยงมความถกตองในขอมลนนๆ โดยใช Algorithm ทเรยกวา Slow Start โดยในตอนตน TCP จะท าการสงขอมลจ านวนนอยๆ และคอยๆเพมขนจนปลายทางแจงมาวา Packet มการสญหาย TCP จะถอวาปรมาณการสงขอมลทสมบรณกอน Packet Loss คอคาการสงขอมลสงสด และจะใชคานนในการสงขอมลตอไป
2) Streaming With Streaming Media Server การใชงาน ขนตอนเบองตนของการเตรยมแฟมมลตมเดย จะเหมอนกบการเตรยม
ส าหรบใชบน Web Server แตจะแตกตางตรงทวาแฟมทไดจะ Upload ไปยง Streaming Media Server ซง Streaming Media Server และ Web Server อาจจะอยบน Server Machine ทใหบรการตวเดยวกนกไดเมอแฟมมลตมเดยถกเรยกใชงาน Web Browser จะสงไฟลขนาดเลกทเรยกวา Metafile ไปยง Client Player ซงใน Metafile นจะระบปลายทางไปยง Streaming Media Server
5
หลงจากนน Client Player จะตดตอกบ Streaming Media Server โดยตรงโดยไมผาน Web Browser อกครง จดเดนของการใช Streaming Media Server เปนผใหบรการ
ใช Protocol ซงเหมาะสมกบการน าเสนอ Real Time Audio/Video ซงกคอ UDP
ถกออกแบบเพอใหบรการแกผใชจ านวนมาก สามารถเพมบรการพเศษตางๆไดเชน Pay-Per-View หรอการตดโฆษณา สามารถปรบเปลยน การสงขอมลใหเหมาะสมส าหรบ Client แตละรายไดด สามารถควบคมการน าเสนอได เชนควบคมใหดไดเฉพาะกลม หรอชวงเวลา การสงขอมล ถงแมวา Streaming Media Server สามารถทจะใช HTTP/TCP
เหมอนกบ Web Server ได แตกสามารถใช Protocol อนๆ เพอเพมประสทธภาพได เชน User Datagram Protocol (UDP) ซงมจดเดนทความเรว ขนาดเลก และไมมการท างานเกยวกบการสงขอมลซ าหรอค านวณอตราการสงขอมล ซงจะเหมาะกบการสงขอมลแบบ Real Time ซงขอมลทสญหายบางสวนหรอขอมลทเกด Delay จะถกละความสนใจไป นอกจากน อาจมการใชงาน Protocol เฉพาะส าหรบการ Streaming Media เลยกได เชน Real Time Streaming Protocol (RTSP) [1]
2.2.2 แนวคดตวอยางทน ามาพฒนา ยทบ (YouTube) คอเวบไซตประเภท Social Media VDO Sharing ซงเปนเวบไซตทรวบรวมผ คนมากมายหลากหลายประเภทเขามาดวยว ตถประสงคตางๆโดยผ ใชจะเปนผ Upload VDO ขนไปเพอ Share กบ User ทานอน เพอเปนการแลกเปลยน ความบนเทง ขาวสาร และกจกรรมตางๆ การท างานของเวบไซตแสดงผลวดโอผานทางในลกษณะ Adobe Flash ซงเนอหามหลากหลายรวมถง รายการโทรทศน มวสควดโอ วดโอจากทางบาน งานโฆษณาทางโทรทศน และบางสวนจากภาพยนตร และผใชสามารถน าวดโอไปใสไวในบลอกหรอเวบไซตสวนตวได ผานทางค าสงทก าหนดใหของยทบ ยทบถอไดวาเปนหนงในเวบ 2.0 ชนน าของอนดบตนๆ ของโลก ยทบมนโยบายไมใหอพโหลดคลปทมภาพโปเปลอยและคลปทมลขสทธนอกเสยจากเจาของลขสทธไดอพโหลดเอง โดยผใชสามารถท าการแจงลบได
1) รปแบบวดโอของยทบ ยทบใชงานโดยแสดงผลภาพวดโอในลกษณะของ Macromedia’s Flash Player 7 และใชการถอดรหสแบบ Sorenson Spark H.263 แฟลชเปนโปรแกรมเสรมทตองตดต ง เพมส าหรบเวบเบราวเซอรทวไป โดยแสดงผลทขนาดความกวางและ
6
สง 320 และ 240 พกเซล ท 25 เฟรมตอวนาท โดยมการสงขอมลสงสดท 300 กโลบตตอวนาท ซงการแสดงผลสามารถดไดทขนาดปกต หรอขนาดทแสดงผลเตมจอ
2) รปแบบเสยง ไฟลในยทบเกบในลกษณะสตรมไฟล MP3 ยทบสามารถเกบไฟลเสยงในลกษณะสเตอรโอไดหากมการแปลงเปน ไฟล FLV กอนทท าการอพโหลด
3) การแสดงผลของยทบ วดโอในยทบสามารถดไดผานเวบไซตยทบโดยตรงผานซอฟตแวรแฟลชทกลาวมา ดไดผานแอปเปลทว ไอโฟน ทมการเชอมตออนเทอรเนตได ซงนอกจากนยทบสามารถดไดจากเวบไซตทวไปทมการน ารหสไปใสเชอมโยงกลบมาทเวบยทบเอง เหนไดตามเวบบอรด นอกจากนสามารถเซฟไฟลยทบเกบไวในเครองของตนเองไดโดยใชงานซอฟตแวรของบรษทอน ยทบแปลงไฟลวดโอเปนไฟลในลกษณะแฟลชวดโอ ในนามสกล FLV ภายหลงจากผใชไดอพโหลดเขาไป ไฟลวดโอตอไปนเปนรปแบบทใชงานไดบนยทบรปแบบวดโอบางอยางสามารถท างานไดดและเขากนไดกบคอมพวเตอร ซอฟตแวร หรออปกรณบางประเภท
WMV (Windows Media Video) 3GP (โทรศพทมอถอ) AVI (Windows) MOV (Mac) MP4 (iPod/PSP) MPEG FLV (Adobe Flash) MKV (H.264)
4) การละเมดลขสทธของ YouTube ยทบเคารพในสทธของเจาของลขสทธและ ผเผยแพร และก าหนดใหผใชทงหมดตองยนยนวาตนเปนเจาของลขสทธหรอไดรบอนญาตจากเจาของลขสทธใหอพโหลดเนอหา ปฏบตตาม Digital Millennium Copyright Act (DMCA) และกฎหมายลขสทธอนๆ ทเกยวของ และจะรบน าเนอหาออกทนทเมอไดรบแจงอยางเหมาะสม วดโอของผทละเมดลขสทธซ าจะถกน าออกและบญชของบคคลเหลานจะถกยตการใชงานและปดกนไมใหใชงาน YouTube อยางถาวร [2]
5) ขอก าหนดของยทบ ในการดวดโอบนยทบนนจะตองมขอก าหนดของระบบดงตอไปน
ปลกอน Macromedia Flash Player 7.0 ขนไป Windows 2000 หรอสงกวาทมการตดตงการอพเดตลาสด Mac OS X 10.3 หรอสงกวา
7
Firefox 1.1, Internet Explorer 5.0 หรอ Safari 1.0 ขนไป การเชอมตอบรอดแบนดทมความเรว 500 Kbps ขนไป
2.3 วศวกรรมซอฟตแวร (Software Engineering)
2.3.1 การออกแบบซอฟตแวร การออกแบบระบบ (System Design) หรอกลาวในแงของวศวกรรมซอฟตแวรนนไดก าหนดถงสงทซอฟตแวรตองท าเพยงคราวๆเทานน ไมไดระบรายละเอยดการท างานภายในและลกษณะอนๆ ของซอฟตแวรไวในรปแบบทโปรแกรมเมอรสามารถน าไปเขยนโปรแกรมได ดงนนในขนตอนการออกแบบ ทมงานจะตองก าหนดรายละเอยดในแตละสวนประกอบซอฟตแวร เพอเตรยมพรอมไวส าหรบการเขยนและทดสอบโปรแกรมในระยะการสรางซอฟตแวรตอไป แตกอนทจะกลาวถงการออกแบบสวนตางๆ ของซอฟตแวรในบทตอไป เนอหาในบทนจะกลาวถงแนวคดส าคญของการออกแบบซอฟตแวรโดยใชวศวกรรมซอฟตแวรกอน เพอความเขาใจอนดในแนวคดดงกลาว
2.3.2 ความหมายของการออกแบบซอฟตแวร กอนทจะกลาวถงความหมายของการออกแบบซอฟตแวร ในทนขอกลาวถงความหมายโดยรวมของ “การออกแบบระบบ” ซงเปนการน าความตองการของผใชมาแปลงให อยในรปของแบบ (เปรยบไดกบพมพเขยว) กอนน าไปสรางเปนผลตภณฑทแลวเสรจ สงทไดจากการออกแบบ คอ “ ขอก าหนดเฉพาะของการออกแบบ (Design Specification Document)” ทประกอบไปดวยแบบจ าลองของสวนประกอบทจะรวมเขาเปนระบบบนสถาปตยกรรม ทเหมาะสม ดงนน สงจ าเปนทสดทจะน ามาใชในการออกแบบ กคอขอก าหนดความตองการของผใชและแบบจ าลองทไดจากการวเคราะห เพอน ามาสรางเปนแบบจ าลองของการออกแบบทมรายละเอยดทางเทคนคมากพอทจะเปนประโยชนในการเขยนโปรแกรมได แตส าหรบงานดานวศวกรรมซอฟตแวรทมงเนนการผลตซอฟตแวรเปนหลก จะถอวางานออกแบบซอฟตแวรเปนหวใจของกระบวนการผลตโดย IEEE 610.12 ไดใหค าจ ากดความของค าวา “การออกแบบซอฟตแวร” ไวดงน การออกแบบซอฟตแวร (Software Design) คอ กระบวนการก าหนดสถาปตยกรรม สวนประกอบ สวนประสานและลกษณะอนๆ ของระบบหรอสวนประกอบของระบบ
2.3.3 กระบวนการออกแบบซอฟตแวร จะมลกษณะการท างานแบบซ าๆ เนองจากตองน าความตองการของระบบทผาน การวเคราะหแลวในแตละดาน ทงดานขอมล ฟงกชนงานและสวนประสาน มาแปลงเปนขอก าหนด
8
ของการออกแบบระบบ ดงนน ขอก าหนดการออกแบบจงสอดคลองกบขอก าหนด ความตองการและสามารถใชสอสารกบโปรแกรมเมอรได ส าหรบกระบวนการออกแบบซอฟตแวรน น ในทนไมขอกลาวถงขนตอนอยางละเอยด เนองจากขนตอนในการออกแบบดงกลาว ขนอยกบแนวทางและระเบยบวธททมงานเลอกใชระดบบน กลาวคอ เปนการแสดงใหเหนสวนประกอบตางๆของซอฟตแวรภายใตโครงสรางสถาปตยกรรมรปแบบใดๆ
2.3.4 หลกการออกแบบซอฟตแวร เนองจากการออกแบบซอฟตแวรตองค านงถงคณภาพของซอฟตแวรทจะผลตดวย ดงนน ทมงานจงควรใชแนวทางการออกแบบบางประการ เพอน าไปสการออกแบบทด ดงน 1) การออกแบบควรแสดงใหเหนถงรปแบบสถาปตยกรรมทเลอกใชอยางชดเจนและมแบบแผน ตองเกดจากการออกแบบคอมโพเนนทหรอสวนประกอบอนๆทด และตองน าไปพฒนาแบบ Evolutionary ได ดงนนจงตองออกแบบใหพฒนาและทดสอบไดงาย 2) การออกแบบควรมลกษณะเปน Module กลาวคอ ควรมการแบงระบบใหญออกเปนระบบยอย 3) การออกแบบควรน า เสนอดานขอมลสถาปตยกรรม สวนประสาน และ คอมโพเนนททชดเจน ควรออกแบบคอมโพเนนทใหมอสระตอกน ควรออกแบบใหสวนประสานระหวางคอมโพเนนทกบสภาพแวดลอมภายนอก มความซบซอนนอยทสด การออกแบบควรน าขอมลมาจากการวเคราะหระบบและใชระเบยบปฏบตเดยวกน สญลกษณทใชในการออกแบบควรสอความหมายไดชดเจนและเปนมาตรฐาน งานออกแบบควรมโครงสรางทดเพอการแกไขทงายและใชตนทนนอย การออกแบบในระดบคอมโพเนนท ท มลกษณะเปนแบบ Functional Independence คอ ฟงกชนงานมความเปนอสระไมขนตอกน คอมโพเนนทของซอฟตแวรจะตองมลกษณะการขนตอกนนอยทสด (Loosely Coupled)
2.3.5 การเขยนโปรแกรม เมอจบขนตอนการออกแบบ วศวกรซอฟตแวรและทมงานจะมรายละเอยดในดานตางๆของซอฟตแวร แสดงเปนแผนภาพชนดตางๆ ประกอบกบค าอธบายรวมอยในเอกสารประกอบการออกแบบ หนาทตอไปของทมงานคอ การน ารายละเอยดดงกลาวมาสรางเปนผลตภณฑซอฟตแวรดวย “การเขยนโปรแกรม (Program Writing)” ซงเปนขนตอนทคอนขางยาก เนองจากบางครงทมงานออกแบบไมไดก าหนดลกษณะเฉพาะของแพลตฟอรมและสภาพแวดลอมตางๆ ของการเขยนโปรแกรมมาใหดวย จงท าใหโปรแกรมเมอรตองก าหนดลกษณะเฉพาะดงกลาวเพมเตม นอกจากนในการเขยนโปรแกรมนอกจากทมโปรแกรมเมอรจะตองเขยนโปรแกรมทอาน
9
เขาใจงายเมอตองกลบมาทดสอบและแกไขโปรแกรมแลว ทมโปรแกรมเมอรยงตองจดท าเอกสารโปรแกรมทอานเขาใจงายส าหรบบคคลอนทเกยวของ อกทงยงตองค านงถงโครงสรางของโปรแกรมโครงสรางขอมล และแนวทางการเขยนโปรแกรมแบบ Reuse อกดวย
2.3.6 กระบวนการเขยนโปรแกรม โปรแกรมทมคณภาพ ไมไดมาจากการออกแบบทมคณภาพเพยงปจจยเดยว หากแตมปจจยอนเขามาเกยวของดวยนนคอ ทกษะ ประสบการณ และความเฉลยวฉลาดทเกดจากการมจนตนาการและกระบวนการแกปญหาทดของโปรแกรมเมอร ดงนน กระบวนการเขยนโปรแกรมจงมความเกยวของกบกระบวนการแกปญหาของโปรแกรมเมอร ในทนจงขอท าความเขาใจกบกระบวนการแกไขปญหา ทเชอมโยงกบกระบวนการเขยนโปรแกรม โดยแบงเปน 4 ขนตอน ดงน 1) ท าความเขาใจปญหา เปนการแบงปญหาออกเปนสวนยอย แลววเคราะหในแตละสวน เพอใหเกดความเขาใจในสงทเกดขนอะไรคอสงทเกยวของกบปญหา อะไรไมควรเกยวของและควรตดออกเชนเดยวกบการวเคราะหระบบเพอหาสงแวดลอมภายนอกทเกยวของกบระบบ แตสงทส าคญในการวเคราะหปญหา คอ การท าความเขาใจเงอนไขทเปนขอจ ากดในการแกไขปญหา 2) ส าหรบโปรแกรมเมอรแลว การท าความเขาปญหากคอ การวเคราะหงานนนเอง โดยสวนใหญโปรแกรมเมอรจะใชแผนผง (Flow Chart) หรอแผนภาพชนดอนๆ เปนเครองมอในการจ าลองล าดบขนตอนของงาน ซงนอกจากจะชวยใหเขาใจปญหาไดดแลว แผนภาพยงชวยใหโปรแกรมเมอรไดพจารณาถงเงอนไขในแตละสวนอยางถถวน และชวยแบงปญหาออกเปนสวนยอย เพอใหท างานไดงายขนดวย 3) วางแผนแกไขปญหา เปนการออกแบบวธแกไขปญหาทผานการวเคราะหมาแลว โดยอาจพจารณาหาสวนทเกยวของกบปญหา เชน ขอมล อลกอรทม ไลบราร หรอระเบยบวธปฏบต เพอน ามาปรบใชหรออาจใชวธการคนหาวธแกปญหาชนดเดยวกนจากแหลงขอมลอนๆ ซงในทางการเขยนโปรแกรมเชงวตถ จะเรยกวธดงกลาววา “Design Pattern” นอกจากนยงสามารถใชวธการทดสอบทกขอสมมตฐานทตงขน เพอหาผลลพธจากขอสมมตฐานทดทสด 4) ด าเนนตามแผน เมอวางแผนแกไขปญหาเรยบรอยแลว ขนตอนตอมาคอการด าเนนงานตามแผนทก าหนดไว ซงในเนอหาของบทนกคอ “ลงมอเขยนโคดโปรแกรม” นนเอง ทบทวนเปนการยอนกลบไปพจารณาถงสงทด าเนนการแกไขปญหาไปในแตละสวน ในขณะเดยวกนจะตองประเมนวธแกไขปญหานนดวยวาเหมาะสมหรอถกตองทสดหรอไมหากเปนวธทดทสดแลว จะสามารถน าไปใชซ าไดหรอไม หรอสามารถใชงานเปน Pattern ไดหรอไม
10
2.3.7 วงจรการพฒนาระบบ (The System Development Life Cycle : SDLC)
รปท 2.1 วงจรการพฒนาระบบแบบ Adapted Waterfall
วงจรการพฒนาระบบแบบ Adapted Waterfall เปนรปแบบในการพฒนาระบบงาน ทปรบปรงมาจากแบบ Waterfall โดยในแตละขนตอนเมอด าเนนงานอย สามารถยอนกลบมายงขนตอนกอนหนาเพอแกไขขอผดพลาดหรอสามารถยอนกลบขามขน โดยไมจ าเปนตองเปนขนตอนทตดกนได มการอธบายของแตละขนตอน ดงน
1) ความตองการ (Requirements) การก าหนดความตองการ เปนขนตอนของการก าหนดขอบเขตของปญหาสาเหตของปญหาจากการด าเนนงานในปจจบน ความเปนไปไดกบการสรางระบบใหม การก าหนดความตองการระหวางนกวเคราะหระบบกบผใชงาน โดยขอมลเหลานไดจากการสมภาษณ การรวบรวมขอมล จากการด าเนนงานตางๆ เพอท าการสรปเปนขอก าหนด (Requirements Specification ) ทชดเจน ในขนตอนนหากเปนโครงการทขนาดใหญอาจเรยกวา ขนตอนของการศกษาความเปนไปได (Feasibility Study)
Requirements
Analysis
Design
Implement
Maintenance
11
2) วเคราะห (Analysis) การวเคราะหเปนขนตอนของการด าเนนการวเคราะหของระบบปจจบน โดยการน า Requirement Specification ทไดมาจากขนตอนแรกมาวเคราะหในรายละเอยด เพอท าการพฒนาเปนรปแบบจ าลองลอจคล (Logical Model ข ) อมล ซงประกอบดวยแผนภาพกระแสขอมล (Data Flow Diagram) ค าอธบายการประมวลผลขอมล ( Process Description) และแบบจ าลองขอมล (Data Model ) ในรปแบบของ E-R Diagram ท าใหทราบถงรายละเอยดขนตอนการด าเนนงานในระบบวาประกอบดวยอะไรบาง มความเกยวของมความสมพนธกบสงใด 3) ออกแบบ (Design) การออกแบบเปนขนตอนของการน าผลลพธทไดจากการวเคราะหทางลอจคล มาพฒนาเปน Physical Model ใหสอดคลองกน โดยการออกแบบจะเรมจากสวนของอปกรณเทคโนโลย ตางๆ และโปรแกรมคอมพวเตอร ทน ามาพฒนาการออกแบบจ าลองขอมล (Data Design) และการออกแบบจอภาพในการตดตอกบผใชงาน (User Interface) การจดท าพจนานกรมขอมล (Data Dictionary) 4) การพฒนาและน าไปใช (Implementation)
การพฒนาและน าไปใช จะท าใหระบบเกดผลขนมาดวยการสรางระบบ ทดสอบระบบ และการตดตงระบบโดยวตถประสงคหลกไมใชเพยงแคความนาเชอถอของระบบ หรอระบบตองสามารถท างานไดดเพยงเทานน แตตองมนใจวาผใชระบบตองไดรบการฝกอบรมเพอใชงานระบบ และความคาดหวงในองคกรทตองการผลตอบแทนในดานดกบการใชระบบใหม ล าดบกจกรรมตางๆ ทกกจกรรมจะตองเขามาด าเนนการรวมกนในระยะนเพอใหระบบการปฏบตงาน ลงเอยถงทสด 5) บ ารงรกษา (Maintenance) เปนขนตอนของการปรบปรงแกไขระบบหลงจากทไดมการตดตงระบบและ ใชงานแลว ในขนตอนนอาจเกดปญหาของโปรแกรม (Bug) ซงโปรแกรมเมอรจะตองแกไขใหถกตอง หรอเกดจากความตองการของผใชงานทตองการเพมโมดลในการท างานอนๆ ซงทงนกจะเกยวกบขอก าหนดความตองการทเคยตกลงกนไวกอนหนาดวย ดงนนในสวนงานนจะคดคาใชจายเพมหรออยางไร เปนเรองของรายละเอยดทผพฒนาหรอนกวเคราะหระบบจะตองด าเนนการกบผวาจางตอไป
12
2.4 ระบบการจดการฐานขอมล (Database Management System : DBMS) 2.4.1 ระบบจดการฐานขอมล (Database Management System : DBMS)
คอ ซอฟตแวรโปรแกรม หรอกลมของซอฟตแวรโปรแกรมทท าหนาทเขาถงและจดการกบขอมลจ านวนมากทมความสมพนธกน เปรยบเสมอนตวกลางระหวางผใชงานกบฐานขอมลและระบบปฏบตการของเครองคอมพวเตอร ระบบจดการฐานขอมล เปนองคประกอบทส าคญของระบบสารสนเทศเพอการจดการทใชคอมพวเตอร (Computer-Based Information System : CBIS) ซงเปนแนวคดรวบรวมขอมลและโปรแกรมประยกตตางๆ มาท างานรวมกนไดโดยมเทคนคการดงและจดเกบขอมลทซบซอนและสามารถแสดงความสมพนธของระเบยนตางๆ ภายใตแฟมขอมลได ทงนยงท าหนาทจดระเบยบแฟมทางกายภาพ ควบคมการเขาถงขอมลในรปแบบตางๆ การบ ารงรกษาฐานขอมลใหอสระจากโปรแกรม ปลอดภยและการกแฟมขอมลดวย
2.4.2 สวนประกอบของระบบจดการฐานขอมล (Components Of DBMS Environment) สวนประกอบแวดลอมของระบบจดการฐานขอมลประกอบดวย 5 สวนทส าคญ ตอไปน
1) ฮารดแวร (Hardware) เครองคอมพวเตอรและจ านวนพนทส าหรบเกบขอมล ซงมหลายระดบการใชงานใหเลอกใช ขนอยกบลกษณะงานขององคกรและผลตภณฑระบบจดการฐานขอมลตองมประสทธภาพในการจดเกบขอมลสงทงดานความเรวและความจขอมล ตองมการ ปรบปรงอยเสมอ เพอใหการใชงานมประสทธภาพมากขน
2) ซอฟตแวร (Software) ประกอบดวยฐานขอมลระบบปฏบตการคอมพวเตอรซอฟตแวรทเกยวกบการสอสารขอมลในกรณทมการเชอมโยงเครอขาย และโปรแกรมประยกตหรออาจจะเปนภาษาสบคนขอมลทเรยกวา Query Language กได นอกจากนยงมเครองมอทใช ชวยในการพฒนาโปรแกรมประยกตไดรวดเรวในลกษณะทเปนวธทางขอความ (Text Mode) หรอวธทางรปภาพ (Graphic Mode)
3) ขอมล (Data) เปนสวนประกอบทส าคญทสดส าหรบผใชงานโดยเปนสวนทเชอมตอระหวางคนและระบบขอมลในฐานขอมล ทงตวขอมลและโครงสรางของขอมล นยามโครงสรางของฐานขอมล เรยกวา Schema จะขนอยกบตวแบบขอมล (Data Model) ซงโครงสรางของฐานขอมลเหลานจะถกเกบไวในพจนานกรม (System Catalog)
4) วธการด าเนนงาน (Procedure) คอค าสงหรอกฎเกณฑในการออกแบบและใช ฐานขอมลในการประมวลผล ฐานขอมลจะมเอกสารทแจกแจงรายละเอยดใหผใชงานหรอผดแลระบบฐานขอมลทราบถงขนตอนการด าเนนงาน
13
5) บคลากร (People) แบงเปน 4 ประเภท ตามหนาทและบทบาท ไดแก พนกงานดแลและบรหารขอมล นกออกแบบฐานขอมล นกออกแบบและพฒนาโปรแกรมประยกต และผใชบรการฐานขอมล
2.4.3 นยามและค าศพทพนฐานเกยวกบระบบฐานขอมล 1) บต (Bit) หมายถง หนวยของขอมลทมขนาดเลกทสด 2) ไบท (Byte) หมายถง หนวยของขอมลทเกดจากการน าบตมารวมกนเปนตวอกขระ 3) เขตขอมล (Field) หนวยของขอมลทประกอบขนจากตวอกขระตงแตหนงตวขน
ไปมารวมกนแลวไดความหมายของสงใดสงหนง 4) ระเบยน (Record) หมายถง หนวยของขอมลทเกดจากการน าเอา Field หลายๆ Field เพอเกดเปนขอมลเรองใดเรองหนง เชน ขอมลของนกเรยน 1 คน 5) แฟมขอมล (File) หมายถง หนวยของขอมลทเกดจากการน า Record มารวมเปนเรองเดยวกน เชน แฟมขอมลนกเรยน 6) เอนทต (Entity) หมายถง ชอของสงใดสงหนง ไดแก คน สตว สงของ การกระท าจงตองการจดเกบขอมลไว เชน เอนทตนกเรยน 7) แอททรบวต (Attribute) หมายถง รายละเอยดของขอมลทแสดงลกษณะและคณสมบตของเอนทตหนงๆ เชน เอนทตนกเรยน ประกอบดวย แอทรบวตรหสนกเรยน แอทรบวตชอนกเรยน 8) ความสมพนธ (Relationship) หมายถง ความสมพนธระหวางเอนทต เชน ความสมพนธระหวางเอนทตนกเรยนกบเอนทตหองเรยน
2.4.4 ความสมพนธระหวางเอนทต 1) ความสมพนธแบบหนงตอหนง (One-to-One Relationship) เปนการแสดงความสมพนธของขอมลในเอนทตหนงทมความสมพนธกบขอมลอกเอนทตหนง (1 : 1) 2) ความสมพนธแบบหนงตอกลม (One-to-Many Relationship) เปนการแสดงขอมลในเอนทตทมความสมพนธกบขอมลหลายๆขอมลในอกเอนทตหนง ในลกษณะ (1 : M) 3) ความสมพนธแบบกลมตอกลม (Many-to-Many Relationship) เปนการแสดงความสมพนธของขอมลสองเอนทตในลกษณะกลมตอกลม (M : M)
2.4.5 ความส าคญของการประมวลผลแบบระบบฐานขอมล 1) สามารถลดความซ าซอนของขอมลได การเกบขอมลชนดเดยวกนไวหลายๆทท าใหเกดความซ าซอน (Redundancy) ดงนนการน าขอมลมารวมเกบไวในฐานขอมลจะชวยลดปญหาการเกดความซ าซอนของขอมลได โดยระบบจดการฐานขอมล (Relational Database Management
14
System : RDBMS) จะชวยลดการซ าซอนของขอมลได เนองจากระบบจดการฐานขอมลนนจะทราบไดตลอดเวลาวามขอมลซ าซอนกนทใดบาง 2) หลกเลยงความขดแยงของขอมลได หากมการเกบขอมลชนดเดยวกนไวหลายๆทและมการปรบปรงขอมลเดยวกนน แตปรบปรงไมครบทกททมขอมลอยกจะท าใหเกดปญหาขอมลชนดเดยวกน อาจมคาไมเหมอนกนในแตละททเกบขอมลชนดเดยวกนจงเกดการขดแยงของขอมลเกดขน (Inconsistency) 3) สามารถใชขอมลรวมกนได ฐานขอมลจะเปนการเกบขอมลรวมไวดวยกน ดงนนหากผใชตองการใชขอมลในฐานขอมลทมาจากแฟมตางๆกจะท าไดโดยงาย 4) สามารถรกษาความถกตอง เชอถอไดของขอมล บางครงพบวาการจดเกบขอมลในฐานขอมลอาจมขอผดพลาดเกดขน เชน จากการทผปอนขอมลปอนขอมลผดพลาด โดยเฉพาะในกรณทมผ ใชงานหลายคนหากมผ ใดปอนขอมลทผดผ ใชงานผ อนกจะไดรบผลกระทบดวย ในระบบ (RDBMS) จะสามารถก าหนดกฎเกณฑเพอปองกนความผดพลาดได 5) สามารถก าหนดความเปนมาตรฐานเดยวกนของขอมลได การเกบขอมลไวรวมกนจะท าใหสามารถก าหนดมาตรฐานของขอมลได ในการจดเกบขอมลใหเปนไปในลกษณะเดยวกนได เชน การก าหนดรปแบบการเขยนวนท ทงนผก าหนดมาตรฐานนเราเรยกวา ผบรหารฐานขอมล (Database Administrator : DBA) เปนผก าหนด 6) สามารถก าหนดระบบความปลอดภยของขอมลได ระบบความปลอดภยนจะเปนระบบทปองกนใหผใชทไมมสทธมาใชงานหรอมาดขอมลในฐานขอมลโดย DBA จะสามารถก าหนดระดบการเขาถงขอมลไดตามความเหมาะสม 7) เกดความเปนอสระของขอมล ในระบบฐานขอมลจะมตวจดการฐานขอมลทท าหนาทเชอมโยงกบฐานขอมล โปรแกรมตางๆอาจไมจ าเปนตองมโครงสรางขอมลทกครง ดงนนการแกไขขอมลบางครง จงอาจกระท าเฉพาะกบโปรแกรมทเรยกใชขอมลทเปลยนแปลงเทานน สวนโปรแกรมอนกจะเปนอสระตอการเปลยนแปลง
2.4.6 รปแบบของระบบฐานขอมล 1) ฐานขอมลเชงสมพนธ (Relational Database)
เปนการเกบขอมลในรปแบบของตาราง (Table) หรอเรยกวา รเลชน (Relation) มลกษณะ 2 มตคอเปนแถว (Row) และคอลมน (Column) การเชอมโยงระหวางตารางจะใช แอทรบวต (Attribute) หรอคอลมนทเหมอนกนทง 2 ตารางเปนตวเชอมโยงขอมล
15
2) ฐานขอมลแบบเครอขาย (Network Database) ฐานขอมลแบบเครอขาย เปนการรวมเอาระเบยนตางๆ และความสมพนธ ระหวางระเบยน แตจะตางกบฐานขอมลแบบสมพนธ คอ ในฐานขอมลแบบสมพนธจะแฝงความสมพนธเอาไว โดยระเบยนทมความสมพนธกนจะตองมคาของขอมลในแอททรบวตใดแอททรบวตหนงเหมอนกน แตฐานขอมลแบบเครอขายจะแสดงความสมพนธอยางชดเจน 3) ฐานขอมลแบบล าดบชน (Hierarchical Database)
ฐานขอมลแบบล าดบชน เปนโครงสรางทจดเกบขอมลในลกษณะความสมพนธแบบพอ-ลก (Parent-Child Relationship) หรอเปนโครงสรางแบบตนไม (Tree) ขอมลทจดเกบในทนคอ ระเบยน (Record) ซงประกอบดวยคาของขอบเขต (Field) ของเอนทตหนงๆ ฐานขอมล แบบล าดบชนนจะคลายคลงกบฐานขอมลแบบเครอขาย แตตางกนทฐานขอมลแบบล าดบชนมกฎเพมขนมาอกประการหนง คอ ในแตละกรอบจะมหวลกศรเขาหาไดไมเกน 1 หวลกศร
2.4.7 แผนภาพแสดงความสมพนธระหวางขอมล (E-R Diagram) เปนเครองมอส าหรบจ าลองขอมล ซงประกอบดวยองคประกอบพนฐาน ดงน
1) เอนทต (Entity) หมายถง สงทสนใจ สามารถระบไดในความเปนจรง และตองการเกบขอมล เชน บคคล สถานท วตถสงของ หรอเหตการณ
รปท 2.2 แสดงสญลกษณของ Entity
2) พรอพเพอรต (Property) หมายถง ขอมลทแสดงคณสมบตของ Entity หรอความสมพนธ เชน Property ของนกศกษา ประกอบดวย รหสประจ าตว ชอ-สกล เพศ รหสคณะ เปนตน
16
รปท 2.3 แสดงสญลกษณของ Property
3) ความสมพนธ (Relationship) หมายถงความสมพนธระหวางเอนทตทม Property รวมกน แตละความสมพนธ จะมชออธบายถงความสมพนธนน
รปท 2.4 แสดงสญลกษณของ Relationship
ความสมพนธระหวาง Entity แบงเปน 3 ชนด 1) ความสมพนธแบบหนงตอหนง (One-to-One Relationship) เปนการแสดง
ความสมพนธของขอมลของเอนทตหนง วามความสมพนธกบขอมลอยางมากหนงขอมลกบอกเอนทตหนงในลกษณะทเปนหนงตอหนง
รปท 2.5 แสดงความสมพนธแบบหนงตอหนง
17
2) ความสมพนธแบบหนงตอกลม (One-to-Many Relationship) เปนการแสดง
ความสมพนธของขอมลของเอนทตหนง วามความสมพนธกบขอมลหลายขอมลกบอกเอนทตหนง
รปท 2.6 แสดงความสมพนธแบบหนงตอกลม
3) ความสมพนธแบบกลมตอกลม (Many-to-Many Relationship) เปนการแสดงความสมพนธของขอมลของสองเอนทตในลกษณะแบบกลมตอกลม
รปท 2.7 แสดงความสมพนธแบบกลมตอกลม
18
ตารางท 2.1 แสดงสญลกษณของ E-R Diagram
19
ตารางท 2.1 แสดงสญลกษณของ E-R Diagram ( ตอ)
2.5 การวเคราะหและการออกแบบระบบ (System Analysis And Design)
2.5.1 ความหมายการวเคราะหระบบ ระบบ คอ กลมขององคการตางๆทท างานรวมกนเพอจดประสงคอนเดยวกน ระบบอาจจะประกอบดวยบคลากร เครองมอ เครองใช พสด วธการ ซงทงหมดนจะตองมระบบจดการอนหนงเพอใหบรรลจดประสงคอนเดยวกน ตวอยางเชน ในรางกายคนเราจะมระบบในตว คอมความสมพนธตดตอกนระหวางสมอง เสนประสาท เซลลรบรความรสก เพอบรรลเปาหมายในการรบรความรสกรอนหนาว เปนตน เมอเราศกษาระบบใดระบบหนง เราควรจะตองเขาใจการท างานของระบบนนใหดโดย การถามตวเองตลอดเวลาดวยค าถามเหลาน
1) ระบบท าอะไร (What) 2) ท าโดยใคร (Who) 3) ท าเมอไร (When) 4) ท าอยางไร (How)
2.5.2 การวเคราะหระบบและการออกแบบ (System Analysis And Design) การวเคราะหและออกแบบระบบ คอ วธการทใชในการสรางระบบสารสนเทศขนมาใหมในธรกจใดธรกจหนง หรอระบบยอยของธรกจ นอกจากการสรางระบบสารสนเทศใหมแลว การวเคราะหระบบชวยในการแกไขระบบสารสนเทศเดมทมอยแลวใหดขนดวยกได การวเคราะหระบบ คอ การหาความตองการ (Requirements) ของระบบสารสนเทศวาคออะไร หรอตองการเพมเตมอะไรเขามาในระบบ และการออกแบบกคอ การน าเอาความตองการของระบบมาเปนแบบแผนหรอเรยกวาพมพเขยวในการสรางระบบสารสนเทศนนใหใชในงานไดจรง ผทท าหนานกคอ นกวเคราะหและออกแบบระบบ (System Analysis : SA )
20
2.5.3 ความหมายของนกวเคราะหระบบ คอมพวเตอรเปนเพยงเครองมอทใชส าหรบเกบรวบรวมและประมวลผลใหกบผใชโดยใหประโยชนตอผใชคอ ความรวดเรวและความถกตองของขอมล ซงเปนหวใจส าคญตอการบรหารของธรกจในปจจบนทมการแขงขนสง ผใช (Users) จงเปนผก าหนดปญหาและแนวทางของระบบงานทน ามาแกไข แตผใชเองไมทราบวธจะน าเอาคอมพวเตอรมาใชแกปญหา หรอชวยเหลอในการบรหาร ในทางตรงกนขามโปรแกรมเมอร (Programmers) และชางเทคนค (Technicians) เปนผทสามารถจะใชเทคโนโลยของคอมพวเตอรและปอนค าสงใหคอมพวเตอรท างานไดตามตองการ แตโปรแกรมเมอรหรอชางเทคนคมกจะไมเขาใจถงระบบธรกจมากนก ดงนน ชองวางระหวางนกธรกจหรอระบบงานในหนวยงานตางๆ กบโปรแกรมเมอรหรอกบชางเทคนคจงอาจเกดขนได นกวเคราะหระบบจงท าหนาทเปนผสมานชองวางน นกวเคราะหระบบเปนผทเกยวของโดยตรงทจะน าเอาความเขาใจและเทคโนโลยของคอมพวเตอรมาใชในการพฒนาระบบงานขอมลเพอชวยแกปญหาใหกบงานในหนวยงานตางๆ
2.5.4 บทบาทของนกวเคราะหระบบ นกวเคราะหระบบจะเปนผ ท ศกษาถงปญหาและความตองการของนกธรกจ โดยน าเอาปจจย 3 ประการ คอ คน (People) วธการ (Method) และคอมพวเตอรเทคโนโลย (Computer Technology) ใชในการปรบปรงหรอแกปญหาใหกบนกธรกจ เมอไดมการน าเอาพฒนาการทางเทคโนโลยของคอมพวเตอรมาใช นกวเคราะหระบบจะตองรบผดชอบถงการก าหนดลกษณะของขอมลทจะจดเกบเขาสระบบงานคอมพวเตอร การหมนเวยน การเปลยนแปลงของขอมลและระยะเวลาเพอใหเกดประโยชนสงสดตอผใชหรอธรกจ (Business Users) นกวเคราะหระบบไมไดเพยงวเคราะหหรอดไซนระบบงานเทาน น หากแตยงขายบรการทางดานระบบงานขอมล โดยน าเอาประโยชนจากเทคโนโลยลาสดมาใชควบคกนไปดวย จากบทบาทของนกวเคราะหระบบทกลาวมาแลวขางตน ท าใหนกวเคราะหระบบจะตองมความรทงทางภาคธรกจหรอการด าเนนงานในหนวยงานตางๆ และคอมพวเตอรควบคกนนกวเคราะหระบบโดยสวนใหญสามารถทจะดไซนระบบงานและเขยนโปรแกรมขนไดดวยตวเองสวนนเองกลบท าใหบคคลภายนอกเกดความสบสนระหวางโปรแกรมเมอรกบนกวเคราะหระบบ
2.5.5 ความแตกตางระหวางโปรแกรมเมอรและนกวเคราะหระบบ โปรแกรมเมอร (Programmer) หมายถงบคคลทรบผดชอบในดานการเขยนโปรแกรมสงทเขาจะเชอมโยงนน ไดแก อปกรณคอมพวเตอร ระบบปฏบต (Operating System : OS) หรอแมกระทงภาษาทใชในการเขยน เชน Cobol Basic และ C++ งานของโปรแกรมเมอรจะเปนไปในลกษณะทมขอบเขตทแนนอนคอ โปรแกรมทเขยนขนนนถกตองตามจดประสงคหรอไม กจกรรม
21
งานของโปรแกรมจะเกยวของกบคนจ านวนนอย เชน กบโปรแกรมเมอรดวยกนเอง หรอกบนกวเคราะหระบบทเปนผวางแนวทางของระบบให นกวเคราะหระบบ หรอทเรยกกนวา System Analysis นน นอกจากจะตองรบผดชอบตอโปรแกรมคอมพวเตอรแลว ยงจะตองรบผดชอบงานในสวนทเกยวกบการจดหาอปกรณตางๆ เกยวกบคอมพวเตอร ผทจะใชระบบแฟมหรอฐานขอมลตางๆ รวมทงขอมลดบทจะปอนเขาระบบงานของนกวเคราะหระบบไมไดอยในลกษณะทแนนอนแบบโปรแกรมเมอรไมมค าตอบทแนนอนจากระบบทเขาวางไมวาผดหรอถก งานของเขาเกดจากการประนประนอมและผสมผสานของปจจยตางๆ ทเกยวของกบระบบงาน คอ ผใช วธการ เทคโนโลยและอปกรณจนไดผลลพธ ทเหมาะสมออกมาเปนระบบงาน (Application System) งานของนกวเคราะหระบบจงมกจะตองเกยวของกบคนหลายระดบตงแตลกคาหรอผใช นกธรกจ โปรแกรมเมอร ผตรวจสอบบญชหรอแมกระทงเซลลแมนทขายระบบงานขอมล แมวางานของนกวเคราะหระบบจะดเปนงานทยากและซบซอน แตงานในลกษณะน กเปนงานททาทายใหกบบคคลทมความคดสรางสรรคและกวางไกลเขามาอยเสมอ ความรสกภาคภมใจทไดวางระบบงานออกมาเปนรปรางและสามารถใชปฏบตไดจรง จะฝงอยในส านกของเขาตลอดเวลา ความรสกอนนคงจะถายทอดออกมาเปนตวหนงสอไมได แตจะทราบกนเองในหมของนกวเคราะหระบบดวยกน [3] 2.6 การเขยนโปรแกรมเชงวตถ (Object Oriented Programming : OOP) ส าหรบโปรแกรมทมขนาดใหญมาก คอมขนาดมากกวาหนงแสนบรรทดขนไป จะท าใหความซบซอนของโปรแกรมมมาก ซงเปนทมาของการคดคนวธการใหม เพอใหสามารถด าเนนการกบโปรแกรมทมขนาดใหญไดอยางมประสทธภาพ วธการดงกลาวเรยกวา การเขยนโปรแกรม เชงวตถ (Object Oriented Programming : OOP) 2.6.1 Object Oriented Programming คอ หนงในรปแบบการเขยนโปรแกรมคอมพวเตอร ทใหความส าคญกบวตถ ซงสามารถน ามาประกอบกนและน ามาท างานรวมกนได โดยการแลกเปลยนขาวสารเพอน ามาประมวลผล และสงขาวสารทไดไปใหวตถอนๆทเกยวของเพอใหท างานตอไป แนวคดการเขยนโปรแกรมแบบดงเดมมกนยมใช การเขยนโปรแกรมเชงกระบวนการ(Procedural Programming) ซงใหความส าคญกบขนตอน กระบวนการทท า โดยแบงโปรแกรมออกเปนสวนๆ ตามล าดบขนตอนการท างาน แตแนวคดการเขยนโปรแกรมเชงวตถนนจะใหความส าคญกบขอมล (Data) และพฤตกรรม (Behavior) ของวตถและความสมพนธกนระหวางวตถมากกวาในการเขยนโปรแกรมแบบเดมทเรยกวา Procedure เชน C, Pascal (Academic Language)
22
นน เมอโปรแกรมใหญขน ความซบซอนกจะเพมขนตาม คอเมอท าค าสงหนงเสรจ กจะท าค าสงถดไปเรอย ๆ บางค าสงอาจจะไปเรยกอกฟงกชนทอยอกทหนง ซงกอใหเกดลกษณะทเรยกวา Spaghetti Code คอ เมอตองการแกไขปรบปรงบางสวนจะตองตามไปแกไขทกสวนทเกยวของกบ สวนทเราจะแกไขปรบปรง เพราะแตละสวนสมพนธกนหมด ซงบางสวนอาจจะอยอกไฟลหนง และเราอาจลมสวนนไปแลวกได นอกจากนผทพฒนาโปรแกรมตอจากเราตองใชเวลามากในการท าความเขาใจของเดม จากปญหาดงกลาว จงท าให Object Oriented Programming ถกน ามาใชในการพฒนาโปรแกรมแทนวธแบบเดม 2.6.2 คณสมบตของ Object Oriented Programming มอย 3 ประการ ดงน 1) การรวมขอมลเขากบฟงกชน (Encapsulation) คอ รากฐานอยางหนงของแนวความคดในเชง Object-Oriented ซงขอดของ Encapsulation คอการปองกน Attribute (Data) ของ Object จากความเสยหาย เพราะถาสวนของโปรแกรมทงหมดอนญาตใหมการเขาถง Attribute ไดตามทตองการแลวนน จะสงผลให Attribute นนงายตอการถกใชอยางผดๆ ท าใหคา Attributeเปลยนแปลงไป ซงกอใหเกดความเสยหายตามมา และยงท าหนาทปองกนมให Object อนทอยภายนอกเขาถง Object หนงๆ ไดอยางอสระ จะมเฉพาะ Method ทอยใน Object เทานนจะสามารถตดตอกบ Attribute ทอยใน Object เดยวกนได เรยกไดวาการ Encapsulation มคณสมบตของ Information Hiding ซง Information Hiding คอการจ ากดการมองเหนขอมลภายใน Object เชนการก าหนดคณลกษณะเปน Public เพอใหสามารถเชอมตอกบ Object ภายนอกได และก าหนดเปน Private เพอจ ากด Attribute ใหอยภายใน Object เทานน และ Encapsulation ยงเปนการหอหม Attributes และ Method เขาไวดวยกนอกดวย 2) การสบทอดคณสมบต (Inheritance) คอ คณสมบตท Class หนงสามารถสบลกษณะ ของ Attribute และ Method ของอก Class หนงได การท าเชนนท าใหสามารถ Create Class ใหมขนโดยน าสาระส าคญทเหมอนกนของ Attribute และ Behavior (Method) จาก Class อนมาใชได การสบทอดคณสมบต (Inheritance) มขอดดงน
ท าใหมโครงสรางทเปนระบบ ระเบยบ ปรบเปลยนไดงาย ลดเวลาในการพฒนาระบบ ลดคาใชจายในการพฒนา
การสบทอดโดยอาศยคณสมบตของออบเจกตทมอยแลวใสลงในออบเจกตตวใหม หลกของการสบทอดคณสมบตเปนล าดบชน จะท าใหความสมพนธระหวางออบเจกตมความชดเจนยงขน
23
3) หนงรปหลายพฤตกรรม (Polymorphism) เปนวธการทน าแนวคดของ OOP มาใช โดยมการออกแบบ Code ใหสามารถจดการกบวตถไดงาย โดยทวตถนนจะตองมแหลงก าเนดมาจากคลาสเดยวกน แตมรายละเอยดบางประการทอาจแตกตางกน หากน าเอา Polymorphism มาใชกจะสามารถจดการวตถไดงาย โดยไมตองสรางพฤตกรรมใหกบวตถเปนจ านวนมาก หลกส าคญของ Polymorphism คอ
วตถทสรางขนจะไมสามารถเปลยนเปนวตถของคลาสอนได คณสมบต (Property) และ พฤตกรรม (Method) ของวตถทสรางขนกยงคงม ความสมพนธกบคลาสทเปนตวสรางขน (Base Class)
2.6.3 Class และ Object มความสมพนธกนอยางไร Class คอ แบบพมพเขยว (Blueprint) ทางซอฟตแวรหรอถาหากจะเปรยบเทยบใหเขาใจงายขนกคอ แบบหลอ ทชางหลอท าเตรยมไวส าหรบหลอสงตางๆ เชน ตกตา พระพทธรป เปนตน แตในทางซอฟตแวรจะเรยกวา พมพเขยวหรอตนแบบ โดยท Class จะประกอบดวย 3 สวนหลกๆ ดงน 1) ชอของ Class ชอพารามเตอรและประเภทของพารามเตอร สงเหลานรวมเรยกวาSignature 2) คณสมบต (Attribute) หรอบางครงเรยกวา Property กไดจะใชแสดงถงรายละเอยดหรอบงบอกลกษณะทวไปของ Class 3) วธการท างาน (Method) หรอบางครงเรยกวาฟงกชนกได จะใชแสดงพฤตกรรม (Behavior) ของ Object ทเกดขน สวน Object เปนสงทถกสรางขนมา หรอเกดขนจากตว Class ถาเปรยบเทยบ ใหงาย ขอยกตวอยางกอนหนานทบอกวา หากแบบหลอนนเปน Class แลวสงทเกดจากการหลอ จะเรยกวาเปน Object หรอ Instance ของแบบหลอ เชน แบบหลอตกตา หากเราหลอตกตาสงทไดจากการหลอกคอ ตกตานนเอง ดงนนผลลพธทไดไมวาจะเปนคณลกษณะตางๆ กจะเหมอนกบแบบหลอทกประการ ในแงของซอฟตแวรแลว หากเราสราง Object หรอ Instance ขนมาสงเหลานกจะไดรบหรอถกถายทอดคณลกษณะและพฤตกรรมเหมอนกบ Class ทกประการ เหมอนกบการ Cloning สตวตางๆ เพยงแตวาตว Object หรอ Instance จะถกก าหนดสถานะใหตางกน เชน หากมการสราง Object คนไขขนมาเรากอาจได Object คนไขทชอสมศกด บญมากมาย กบ Object บก ดทบ นนคอมสถานะชอและนามสกลตางๆ เปนตน
24
2.7 การพฒนาระบบเชงวตถ (Unified Modeling Language : UML) UML ยอมาจาก The Unified Modeling Language เปนอกภาษาเพอใชอธบายโมเดลตางๆ ถาพดถงภาษาเราจะนกถงเทกซ (Text) ทมไวยากรณตางๆ แตภาษาอกรปแบบหนงทเราอาจจะไมคนเคยกน กคอภาษาทมลกษณะของ Map Language กลาวคอ UML เปน Map Language หรอภาษาทใชกราฟกเปนสญลกษณ โดยภาษาในลกษณะนจะกบคนเฉพาะบางกลม เชน นกออกแบบ(Designer) หรอนกพฒนาระบบคอมพวเตอร (Developer) เปนตน เนองจาก UML เปนภาษาทมการใชกราฟกเปนสญลกษณจงอาจมผเขาใจสบสนวา UML เปนการสรางไดอะแกรม เปนเพยงการใชสญลกษณสรางไดอะแกรมเพออธบายระบบงานเทานน แตทจรงแลว UML มลกษณะของเมตาโมเดล (Metamodel) คอเปนโมเดลทเอาไวเพออธบาย โมเดลอนๆอกท UML เปนภาษามาตรฐานส าหรบสรางแบบพมพเขยว (Blueprint) ใหแกระบบงาน เราสามารถใช UML ในการสรางมมมอง ก าหนดรายละเอยด สรางระบบงาน และจดท าเอกสารอางองใหแกระบบงานได UML เปนภาษาทเหมาะส าหรบระบบงานระดบกจการ ระบบงานแอพพลเคชนบนเวบ (Web-Based Application) ไปจนถงระบบงานแบบเรยลไทม (Real Time System) [4]
2.7.1 Use Case Diagram Use Case Diagram จะแสดงถงการใชงานระบบ โดยมองคประกอบ 2 สวน คอ Actor และ Use Case โดยท Use Case จะแสดงถงขอบเขตงานทก าลงสนใจ และ Actor คอ สงทอยนอกระบบ แตเปนผใหอะไรบางอยางแกระบบ อกทงเปนผทรบผลลพธจากระบบดวยสญลกษณ ทใชแทน Actor และ Use Case ใน Use Case Diagram มลกษณะดงรปท 2.8
รปท 2.8 แสดงสญลกษณทใชแทน Actor และ Use Case
ในภาพรวมแลว Use Case Diagram จะใชเพอ 1) แสดงความสมพนธระหวาง Actor ทใชระบบ 2) แสดงความสมพนธของ Use Case ท Actor ใช
25
3) แสดงความสมพนธระหวาง Use Case การสราง Use Case Diagram จะพจารณาถงรปแบบการใชงานระบบทสามารถเกดขนได โดยอธบายเปนล าดบของเหตการณ เชน ถาระบบเปนตขายน าอดลมกระปองแลวสามารถใชงานระบบนนไดอยางไรบาง (หยอดเหรยญ เลอกชนดน าอดลม กดปม ฯลฯ) เหตการณตางๆทจะเกดขนม “ผกระท า” ซงผทกระท าดงกลาวอาจเปนคน ระบบ ฮารดแวร หรออะไรกตาม โดยจะเรยกผทกระท าใหเกดเหตการณวา “Actor” และผลลพธท Actor กระท าเหตการณอยางใดอยางหนงขนมากจะถก Actor เดมหรอ Actor อนๆน าไปใชตอ ลกษณะของการเขยน Use Case Diagram เพออธบายเหตการณจะมลกษณะดงรปท 2.9
รปท 2.9 แสดงลกษณะการเขยน Use Case Diagram
นอกจากน การก าหนดบทบาทของ Actor กเปนเรองส าคญอยางยง คนๆ หนงสามารถเปน Actor ไดหลายอยางและในขณะเดยวกน Actor หนงๆ กอาจมคนเขามามบทบาทไดหลายคน ดงนนการก าหนด Actor จงตองท าอยางระมดระวงและชดเจนทสด ขอดอยางหนงของการใช Use Case Diagram คอ จะเหนไดอยางชดเจนวาขอบเขตของระบบทก าลงสนใจอยวามอยแคไหน โดยทสวนของ Use Case คอตวระบบทก าลงสนใจอย สวน Actor จะเปนสวนทอยนอกระบบและเมอมการใช Actor รวมกบ Use Case กจะกลายเปน Use Case Model หรอ Use Case Diagram
1) การใช Use Case Diagram การใชงาน Use Case Diagram นน ผเขยนจ าเปนตองท าการก าหนดกอนวาใครเปนผใชระบบ โดยลกษณะของการใช Use Case Diagram จะมเงอนไขหรอสภาพทตองค านงถงอย 2 อยางดงรปท 2.10 ไดแก
Pre Condition Post Condition
Use Case Actor 2 Actor 1
26
รปท 2.10 แสดงขนตอนการท างานของ Use Case Diagram
Pre Condition คอ สภาพกอนระบบทก าลงสนใจ (Use Case) จะท างานสวน Post Condition คอ สภาพหลงจากทระบบทก าลงสนใจไดท างานไปแลว 2) การสราง Use Case Diagram ใน Use Case Diagram หนงๆ จะม Actor เปนตวท าใหเกด Use Case ขน โดย Actor อาจจะเปนบคคลเดยวกนหรอหลายคน อาจจะเปนระบบงานอะไรอยางหนงกไดสวน Use Case กคอระบบงานทก าลงใหความสนใจและระบบงานทก าลงสนใจอยนนจะใหผลลพธบางอยางออกมาเพอให Actor รบงานไปใชตอไป ซง Actor ทไดรบผลลพธจาก Use Case อาจจะเปน Actor เดยวกบ Actor ทเปนผท าใหเกด Use Case หรอจะเปน Actor คนละตวกได นนคอ ขนตอนของการเกด Use Case Diagram หนงๆ นนมอย 5 ขนตอนหลกๆ ไดแก
Actor หนงท าใหเกด Use Case หนงขน เกด Pre Condition ส าหรบ Use Case Use Case มการท างานบางอยาง เกด Post Condition เมอ Use Case ท างานเสรจสน ม Actor หนงไดรบผลลพธจากการท างานของ Use Case
การวาด Use Case Diagram จะให Actor ทเปนผท าใหเกดการท างานบางอยางอยทางดานซายมอ ม Use Case อยถดมาและม Actor ทเปนผรบผลลพธจาก Use Case อยทางดานขวาโดย ททง 3 สวนใน Use Case Diagram จะมเสนเชอมโยงถงกนอย ดงรปท 2.11
Use Case Post Condition Pre Condition
27
รปท 2.11 แสดงการเกด Use Case Diagram
3) การน า Use Case กลบมาใชใหม วธการน า Use Case กลบมาใชใหม (Reuse) มอย 2 วธ คอ
Inclusion คอ การน าขนตอนการท างานทซบซอนกนมาสรางเปน Use Case แยกตางหากเพอให Use Case อนไดเรยกใชเปนลกษณะเดยวกนกบเวลาทเขยนโปรแกรมเปน Module ยอยๆ เพอให Module อนๆเรยกใช กลาวคอ ในการใช Use Case Diagram ส าหรบระบบซอฟตแวรหนงๆ จะพบวาจ านวนของ Use Case นนมมากมาย ทงนเพราะตองน าเสนอการปฏสมพนธกนของสงทอยภายในระบบกบสงทอยภายนอกระบบในหลายมมมองและเมอจ านวนของ Use Case เพมขนเรอยๆ จะพบวามบาง Use Case ทมขนตอนการท างานเหมอนๆกนหรอซ ากน ดงนน จงอาจสราง Use Case ส าหรบการเรยกใชในขนตอนทเหมอนกน
Extension คอ การทน า เอา Use Case เ ดมมาเพมการท างานบางอยาง แสดงดงรปท 2.12
รปท 2.12 สญลกษณการใช Inclusion และ Extension ความสมพนธระหวาง Use Case
Use Case <<Extend>> <<Include>> Use Case
28
ความสมพนธระหวาง Use Case มอย 4 แบบ คอ Inclusion Extension Generalization Grouping
ความสมพนธ 2 แบบแรกนนไดกลาวไปแลว คอ Inclusion เปนการน าเอาขนตอนการท างานทซ าๆกน มาสรางเปน Use Case เพอให Use Case อนเรยกใชและ Extension คอ การน าเอา Use Case เดมทมอยแลวมาเพมเตมการท างานบางอยางเขาไป Generalization เปนการถายทอดคณสมบตหรอพฤตกรรมบางอยางจาก Use Case หนงไปยงอก Use Case หนง หรอจาก Actor หนงไปยงอก Actor หนง โดย Use Case ทเปนผถายทอดพฤตกรรมจะเรยกวา “Parent Use Case” ซง Use Case ทรบการถายทอดพฤตกรรมมาจะเรยกวา “Child Use Case” ซง Child Use Case จะมการเพมเตมพฤตกรรมบางอยางของตนเองเขาไปดวย Grouping คอ ในบางครง Use Case Diagram ทสรางขนมาอาจมจ านวนของ Use Case มากมาย ท าใหไมสะดวกตอการอานหรอการน าไปใชงาน ดงนนจงอาจมการจบกลมหรอหมวดหมใหแก Use Case เหลานนโดยใชความสมพนธแบบ Grouping โดยเมอปกตอยในขนตอนของการหาความตองการของระบบ โดยการไปสมภาษณเกบรวบรวมจากผใชนน จะมการสรางเปน Use Case ตางๆ เปนสวนๆ แยกออกจากกน จากนนจงคอยมาท า Grouping กบ Use Case เหลานนอกท 2.7.2 Sequence Diagram Sequence Diagram จะแสดงใหเหนวาออบเจกตตางๆ ในระบบงานหนงมการตดตอสอสารกนอยางไร ณ เวลาๆหนง โดย Sequence Diagram จะมองคประกอบอย 3 สวน คอ ออบเจกต (Object) เมสเสจ (Message) และไทมหรอชวงเวลา (Time) 1) ออบเจกต (Object) จะประกอบดวย 3 สวน คอ
Object Name Lifeline Activation
ซงองคประกอบทง 3 สามารถแสดงเปนสญลกษณไดดงรปท 2.13
29
รปท 2.13 แสดงองคประกอบทงหมดเปนสญลกษณ
โดยท Name จะเปนสวนทบอกถงชอของออบเจกตวาเปนออบเจกตอะไร โดยเรยงจากซายไปขวาตามล าดบการท างานของระบบ กลาวคอ ออบเจกตทอยทางซายมอจะท างานกอนออบเจกตทอยทางขวามอ สวนทเปนเสนประทลากในแนวดงจากออบเจกตจะเรยกวา Lifeline และสเหลยมเลกๆทอยบนเสน Lifeline จะเรยกวา Activation ซง Activation จะแทนการท างานตางๆ ทออบเจกตของ Activation นนตองกระท านอกจากนความยาวของรปทใชแทน Activation ยงบงบอกถงระยะเวลาของการท างานของออบเจกตดวย 2) แมสเสจ (Message) เปนการตดตอทสงจากออบเจกตหนงไปยงอกออบเจกตหนงหรออาจจะสงกลบมาหาตวเองกได โดยทจะแบงการตดตอออกเปน 3 แบบ คอ
Synchronous Asynchronous Return
สญลกษณทใชแทน Message ทง 3 แบบ แสดงดงรปท 2.14
รปท 2.14 สญลกษณแสดงรปแบบการตดตงทง 3 แบบของ Message
Name
Activation
Lifeline
Name
30
3) ไทมหรอชวงเวลา (Time) ลกษณะของไทมหรอการแสดงเวลาของ Sequence Diagram นนจะเปนลกษณะแนวตง คอจากบนลงลาง Message ทอยดานบนจะเปนสวนทเกดขนกอน Message ทอยดานลาง ลกษณะของการแสดงเวลาของ Sequence Diagram จะมลกษณะดงรป จะเปนการแสดงล าดบของเหตการณทจะเกดขน เมอ Actor ท างาน (Activation) กบ ออบเจกต Name1 ออบเจกต Name1 จะมการท างานโดยสง Message ไปยงออบเจกต Name2 และออบเจกต Name2 สง Message กลบมายงออบเจกต Name1 หลงจากนนเมอ Message ทออบเจกต Name1 จะถกสงกลบมายงออบเจกต Name1 จะเปนการสนสดการท างานของไดอะแกรมตวอยางน แสดงดงรปท 2.15
รปท 2.15 แสดงลกษณะของการแสดงเวลาของ Sequence Diagram
2.7.3 Activity Diagram Activity Diagram คอ แผนภาพทแสดงใหเหนล าดบการด าเนนกจกรรม จากกจกรรมหนงไปยงกจกรรมหนงทเกดจากการท างานของออบเจกตภายในระบบ ลกษณะของแผนภาพจะคลายกบ Flow Chart
1) รปแบบของ Activity Diagram Activity Diagram ม 3 รปแบบ ไดแก แบบทางเลอกตดสนใจ แบบมการท างานพรอมกน และแบบแบงสวนดงน
แบบทางเลอกตดสนใจ การเขยน Activity Diagram แบบทางเลอกตดสนใจ สามารถเขยนได โดยลากลกศรผานสญลกษณขาวหลามตดกอนแลวจงลากไปยงแตละทางเลอก ดงรปท 2.17 เปนล าดบขนตอน “การสงซอสนคาทางอนเตอรเนต”
Name1 Name2
Actor
Message1 Message2
Message3
31
รปท 2.16 แสดงสญลกษณของ Activity Diagram
รปท 2.17 แสดง Activity Diagram แบบมทางเลอกตดสนใจ
จากรปท 2.17 เปนล าดบขนตอนการสงซอสนคา เมอลกคาลอกอนเขาสระบบจะตองมการตดสนใจเกดขน นนคอ หากลกคามชอและรหสสมาชกแลว ระบบจะอนญาตใหลกคาคนหาสนคาทตองการ แตหากยงไมม ระบบจะใหลกคาลงทะเบยนกอนจงจะสามารถคนหาสนคาทตองการได
32
แบบมการท างานพรอมกน ส าหรบลกษณะการท างานพรอมกนเรยกวา “Transition Fork” ซงหมายถงจดเปลยนแยก โดยจะตองลากเสนตรงใน แนวนอนกอนแยกสกจกรรมทตองการกระท าพรอมกน เมอเสรจสนกลากเสน ตรงขวางแนวนอนกอนแลวจงลากลกศรรวมมายงกจกรรมอนตอไป ลกษณะ รวมนเรยกวา “Transition Join” ซงหมายถงจดเปลยนรวม ดงรปท 2.18 เปน ล าดบขนตอน “การผลตสนคาตามค าสง” Activity Diagram ในลกษณะน สามารถม Decision ไดดวย [5]
รปท 2.18 แสดง Activity Diagram แบบมการท างานพรอมกน
แบบแบงสวน เรยกอกอยางหนงวา "Swimlanes” เปนการแบงสวนการท างาน
ออกเปนหลายๆ สวนทเกยวของกนใน 3 กจกรรม ดงรปท 2.19 โดยจะแบงเปนแนวตงคลายกบลในสระวายน า และแตละล คอแตละสวน (ซงอาจเปนไดทงบคคล หนวยงาน แผนก หรอสถานท) เปนการแบงสวนการท างาน 3 สวน ไดแก ลกคา (Customer) งานขาย (Sales) และสนคา (Warehouse) ทมการท างานเกยวของกนในกจกรรม “การขายสนคา” โดยจากรปกจกรรมเรมตนท “การสงซอสนคา (Place an Order)” ซงเกดขนทสวนของลกคา (Customer) จากนน เมอฝายขาย (Sales) ไดรบค าสงซอจงด าเนนการงานขาย (Process Order) สงเรองตอไปยงฝายงานคลง (Warehouse) เพอจดท าสนคาทลกคาตองการ แลวสงสนคาไปยงลกคา (Ship Product) พรอมกบทฝายขายแนบเอกสาร
33
การเกบเงน (Bill Customer) ไปดวย เมอลกคาไดรบสนคา (Receive Product) แลวกท าการช าระเงนตามระยะเวลาทตกลงกนไว (Pay Bill) ฝายขายกสามารถปดใบสงซอรายได (Close Order) ส าหรบ Activity Diagram ในรปแบบนสามารถม Decision ได
รปท 2.19 แสดง Activity Diagram แบบแบงสวน 2) วธสราง Activity Diagram
ส าหรบวธการสราง Activity Diagram นนมขนตอนงายๆ ดงน เลอกกจกรรมการกระท า หรอ Operation/Method ทตองการอธบายดวย
Activity Diagram หรอสราง Activity Diagram ส าหรบทกๆ Use Case เขยนล าดบกจกรรม วาดแผนภาพตามล าดบกจกรรม
34
2.7.4 Class Diagram ลกษณะทวไปของ Class Diagram คลาส (Class) เปนองคประกอบทส าคญอยางยงส าหรบระบบงานเชงวตถ (Object-Oriented System) คลาสเปนการน าเอากลมของออบเจกตมาอธบายความหมาย ออบเจกตซงถกจดใหอยในคลาสเดยวกนจะมแอตทรบวต โอเปอรเรชน ความสมพนธและความหมายบางอยางเหมอนกน โดยการจดกลมกนนสามารถท าไดทงออบเจกตทเปนซอฟตแวรและฮารดแวร การสรางโมเดลใหแกระบบๆ หนงจะเปนการอธบายถงสงตางๆ ในมมมองทสนใจ โดยสงทจะอธบายนนจะมการสราง Vocabulary ของระบบขนมา ยกตวอยางเชน ถาจะสรางตกสกหลง สงทจะตองอธบายอาจจะเปน ก าแพง ประต หนาตาง เปนตน ซงสงของดงกลาวบางอยางอาจอยรวมกนเปนหมวดหมเดยวกนกไดและบางชนกอยแยกออกไปตางหาก การก าหนดคลาสจะแทนดวยสญลกษณสเหลยมผนผา โดยแบงเปน 3 สวน คอ สวนชอของคลาส แอตทรบวต และโอเปอรเรชน ดงรปท 2.20
รปท 2.20 แสดงสญลกษณการก าหนด Class
การจะจดออบเจกตใดใหอยในคลาสเดยวกนนน ขนอยกบผออกแบบระบบวาจะมองทคณสมบต คอ แอตทรบวตหรอพฤตกรรมใดเปนหลก เชน ถามองวาก าแพงและประตมคณสมบตคอ ความกวาง ความสงและเปนวตถทแขงเหมอนกน กอาจจะจดก าแพงและประตไวในคลาสเดยวกน แตถามองถงลกษณะของการใชงานวาประตและหนาตางสามารถ เปด-ปด ได กอาจจะจดประตและหนาตางเอาไวในคลาสเดยวกน
Class_1 - -
Attribute_1 Attribute_2
: int : int
+ + +
Operation_1 () Operation_2 () Operation_3 ()
: int : int : int
ชอคลาส
แอตทรบวท
โอเปอรเรชน
35
เมอจดออบเจกตตางๆ ใหอยในคลาสๆ หนงแลว กลไกการใชงานจรงๆ จะมการสรางอนสแตนซ (Instance) ขนมาเปนตวแทนของคลาส ไมไดเรยกใชออบเจกตหรอคลาสนนตรงๆ เชน ถาตองการจะจดการอะไรบางอยางกบก าแพง จะตองมการสรางอนสแตนซของก าแพงขน อาท “ก าแพงทอยทางทศใตของบาน” จากนนจงจดการกบอนสแตนซนนตอไปตามความตองการ
1) ชอคลาส (Name) Simple Name เปนการตงชอโดยใชสตรงเปนค าๆ เดยวหรอตงชอเปนวล เชน
Customer Wall Light System เปนตน Path Name เปนการตงชอคลาสโดยมชอแพกเกจของคลาสนนเปน Prefix หรอ
ค าน าหนา 2) แอตทรบวต (Attributes) เปนการบอกถงคณสมบตของคลาส คลาสๆหนงอาจจะมแอตทรบวตไดตงแต 1 คาขนไป หรออาจเปนคลาสทไมมแอตทรบวตเลยกได แอตทรบวตจะแสดงถงคณสมบตทออบเจกตซงอยในคลาสเดยวกนมรวมกนหรอใชงานรวมกน เชน คลาสของพนกงาน (Customer) จะมแอตทรบวตเปน Id, Name, Position, Department, PhoneNumber เปนตน 3) โอเปอรเรชน (Operations) คอ พฤตกรรมทสามารถกระท ากบออบเจกตได โดยทออบเจกตทงหมดอยในคลาสเดยวกนจะมการใชโอเปอรเรชนของคลาสของตวเองรวมกน คลาสหนงๆ สามารถมโอเปอรเรชนไดมากกวา 1 โอเปอรเรชนหรออาจไมมโอเปอรเรชนเลยกได โดยปกตแลวการเรยกใชโอเปอรเรชนกบออบเจกตหนงๆ จะท าใหขอมลหรอสถานะของออบเจกตเปลยนแปลงไป ในการวาดภาพคลาสจะเขยนสวนของโอเปอรเรชนถดจากสวนของแอตทรบวต การต งชอใหแกโอเปอรเรชนจะท าในลกษณะเดยวกนกบชอของคลาสหรอของแอตทรบวต แตในทางปฏบตนยมต ง ชอใหแกโอเปอรเรชนโดยใชค ากรยา ซงอาจเปนค าๆเดยว เชน Add, Grow, Move เปนตน หรอถากรณชอของโอเปอรเรชนมมากกวา 1 ค า ตงแตค าทสองขนไปจะใหตวอกษรตวแรกของค าเปนตวพมพใหญ ในการสรางคลาส ไมจ าเปนตองมแอตทรบวตและโอเปอรเรชนทงหมดในคลาสเดยวกนได เพราะวาในทางปฏบตแลว คลาสหนงๆ มกมแอตทรบวตและโอเปอรเรชนเปนจ านวนมาก นนคอ สามารถเลอกไดวาจะแสดงแอตทรบวตและโอเปอรเรชนเพยงบางตวเทานนหรอวาเลอกทจะไมแสดงเลยกได ดงนน การทรปของคลาสใดไมมชอของแอตทรบวตหรอโอเปอรเรชนแสดงอยกไมไดหมายความวาไมมชอดงกลาวอยในคลาสนน แตอาจละไวไมแสดงใหเหนได [6] อยางไรกตาม จ าเปนตองมการก าหนดสญลกษณเพอใหทราบวามการละไมแสดงชอของแอตทรบวตหรอโอเปอรเรชนบางอยางเอาไว ทงนเพอไมใหสบสนกบการทคลาสไมมชอของ
36
แอตทรบวตหรอโอเปอรเรชนบางอยาง โดยจะใชเครองหมาย “…” เปนการบอกวามการละไมแสดงชอของแอตทรบวตหรอโอเปอรเรชนทยาวมากๆ สามารถเลอกทจะจดกลมใหแก แอตทรบวตหรอโอเปอรเรชนเหลานนได โดยจะเรยกการจดกลมนนวา “Stereotype” 4) การสรางขอบงคบใหแกคลาส จะท าใหคลาสมความชดเจนมากขน ซงจะใชกลไกทชอวา Constrains มาอธบายคลาสใหมความชดเจนยงขน การใช Constrains จะเขยนอยภายในเครองหมายวงเลบปกกา 5) การเขยนหมายเหตใหแกคลาส Attached Notes หรอ Note เปนกลไกของภาษา UML ทใชในการใหค าอธบายแกคลาสในลกษณะขอมลเพมเตมหรอโนตยอ เปนเพยงขอมลเสรมไมใชขอมลทจ าเปนจรงๆ จะใสหรอไมใสกได 2.7.5 Component Diagram Component Diagram เปนไดอะแกรมแสดงโครงสรางทางกายภาพ และความสมพนธระหวางองคประกอบตางๆ ของซอฟตแวร ซงองคประกอบดงกลาวอาจเปนชดค าสง (Source Code) โปรแกรมทสามารถเอกซควตไดตวเอง (Executable Program) โปรแกรมแบบไบนาร (Binary) รวมถงขอความ (Text) และยสเซอรอนเตอรเฟซ
สญลกษณ Component Diagram ตางๆ มดงน 1) โปรแกรมทสามารถน าไปประมวลผลได (Executable Program) 2) ไฟล หรอ Source Code 3) ฐานขอมล (Database) 4) ชดขอมลในฐานขอมล (เชน Table ใน Relational Database)
37
รปท 2.21 แสดงสญลกษณ Component Diagram
รปท 2.22 ตวอยาง Component Diagram ของระบบเรยกดขอมลจาก Web Site
DB
Program.exe
Page1.html
Executable Program
Page or File
Database
Table
38
Web Browsing System สามารถแสดงดวย Component Diagram ดงรปท 2.22 ซงระบบจะประกอบไปดวย Web Site ชอ www.test.com ซงประกอบดวย Web Page จ านวน 3 หนาคอ Page1.html, Page2.html และ Page3.html ซง Component ทงสนนจดเปน File ซงจะตองอานดวย Internet Explorer ซงจดเปน Executable Program 2.8 ไมโครซอฟทซลเวอรไลท (Microsoft Silverlight) Silverlight คอ ปลกอนทชวยใหนกออกแบบและนกพฒนาสามารถพฒนาแอพพลเคชนประเภทมลตมเดยสมบรณแบบส าหรบเบราวเซอรไดในหลายๆเบราวเซอร และสามารถรนไดบนหลายแพลตฟอรม นนหมายถงวาเราสามารถรนแอพพลเคชนทท าดวย Silverlight ไดท งบน Firefox, Safari และ IE นอกจากน Silverlight สามารถรนไดทงบนวนโดว และ แมคอนทอชดวย Silverlight จะมขนาดใหญเตมทไมเกน 4 MB (ในปจจบนอยทประมาณ 1.38 MB) ซงสามารถ ดาวนโหลดไดภายในระยะเวลาประมาณ 20 วนาทดวยอนเทอรเนตความเรวสงโดยเราสามารถดาวนโหลดไดฟรจากเวบ http://www.silverlight.net หรอนกพฒนาอาจฝงโคดมากบแอพพลเคชนทสรางได เชนเดยวกนกบ Adobe Flash ฟเจอรส าคญม Built-In Codec ทสนบสนนการเลนไฟลวดโอแบบ VC-1, WMV และไฟลเสยงแบบ MP3, WMA ภายในเบราวเซอร VC-1 Codec เปน กาวกระโดดส าคญในการยกระดบประสบการณมลตมเดยบนเวบ สามารถท าใหเลนไฟลวดโอไดในระดบความละเอยดเทยบเทา HD DVD หรอ Blu-Ray DVD สามารถน าไฟลวดโอทมอยแลวมาใชกบ Silverlight ไดทนท นอกจากนยงสามารถเลนสอเหลานบนเบราวเซอรสวนใหญได โดยไมตองลงซอฟตแวรใดๆเพมเตม หากใชควบคกบ Windows Media Server จะสามารถเลนไฟลวดโอ ทเปน Streaming ไดดวย ผใชสามารถสรางสวนตดตอผใช (User Interface) และแอนเมชนไดอยางอสระ เชอมตอกบจาวาสครปตเพอตอบสนองตอการกระท าของผใชไดดและงาย แอนเมชน เปนแบบ Time-Based ซงเปนแบบเดยวกนกบใน WPF ท าใหความคลาดเคลอนของเวลาในการแสดงผลต ากวาแบบ Frame-Based ใน Adobe Flash นอกจากนเรายงสามารถใชพนทแบบ Full Screen ไดโดยการขยาย Full Screen นไมใชแคการขยายวนโดวแบบเตมจอ แตเปน Native Full Screen ฟเจอรเดนในรนตอมาม Built-In CLR Engine ทท าใหการท างานในเบราวเซอรมประสทธภาพสงขนมาก เนองจากเปน Core CLR ตวเดยวกนทมากบ .NET Framework ทกวนน กเลยมระบบการจดการเดยวกน ไมวาจะเปนเรองของ Type, Garbage Collector (GC) หรอแมแต JIT Engine ท าใหคณสามารถเขยนโคดครงเดยวแลวสามารถรนไดกบทง Silverlight, ASP.NET, WinForm และ WPF Application และยงหมายถงความเรวทมากขนอกดวยประมาณ 250 เทาของโคดทเขยนดวยจาวาสครปต [7]
39
รปท 2.23 แสดงมมมองสถาปตยกรรมของซลเวอรไลท
40
ตารางท 2.2 ระบสถานภาพปจจบนส าหรบเบราวเซอรและระบบปฏบตการทรองรบ
OPERATING SYSTEM BROWSER SUPPORTED Windows Vista Windows Internet Explorer 7, 8 Windows Server 2008 Firefox 2, 3
Google Chrome Windows 7 Windows Internet Explorer 8
Firefox 2, 3 Google Chrome
Windows Server 2008 R2 Windows Internet Explorer 8 Google Chrome
Windows XP SP2, SP3 Windows Internet Explorer 6, 7, 8 Firefox 2, 3 Google Chrome
Windows Server 2003 (excluding IA-64)
Windows Internet Explorer 6, 7, 8 Firefox 2, 3 Google Chrome
Mac OS 10.4.8+ Firefox 2, 3 Safari 3, 4
2.8.1 การสรางแอพพลเคชนของซลเวอรไลท
เมอตดตงซลเวอรไลทและรวธการใชเครองมอของ Visual Studio ใหแมแบบโครงสราง โดยสามารถเรมสรางแอพพลเคชนของซลเวอรไลท ซงมหลายวธ ดงน
1) แมแบบโครงสรางซลเวอรไลท Visual Studio 2010 ประกอบดวย แอพพลเคชนของซลเวอรไลท แอพพลเคชนน าทางของซลเวอรไลท และ Class Library ของซลเวอรไลท ตลอดจนแอพพลเคชนทางธรกจของซลเวอรไลท
2) Expresstion Blend 3 หรอ Expresstion Blend 4 เครองมอในชด Expresstion ของผลตภณฑจาก Microsoft ใหแมแบบโครงสราง ส าหรบสรางซลเวอรไลท และโครงสราง WPF มสวนชวยสรางกราฟกแบบเวกเตอรส าหรบผใชซลเวอรไลท ตลอดจนการสรางแบบหนาจอดวยลกษณะ Sketch Flow
41
3) Eclipse ใชปลกอน Eclipse ส าหรบวนโดวทใชทงสอง และระบบปฏบตการ Apple Macintosh ทใช [8]
2.8.2 การตดตอฐานขอมลของซลเวอรไลท การตดตอดาตาเบสของ Silverlight กอนอนตองอธบายการท างานของ Silverlight
ถงแมวา Silverlight จะท าการตดต งทเวบเซรฟเวอร แตการท างาน เวลาทผ ใชงานเขามา ใชงานเวบไซตของเรากจะท าการดาวนโหลดลงมาท าการประมวลผลทฝงของเครองผใชงาน ดงนนแลวเครองทจะสามารถเขามาใชงานเวบไซตของเราไดตองท าการตดตง Silverlight Runtime ซงถาเครองไหนไมไดลงไวกจะขนใหดาวนโหลดอตโนมต การทเราจะท าการตดตอดาตาเบสทเครองเซรฟเวอรไดนนตองผานเซอรวส เปน WCF (Windows Communication Foundation) ซงตวนถกพฒนาตอมาจาก Web Service หรออกตวหนงซงเปนตวใหม ซงพฒนาใชงานกบ Silverlight เลยไดนนกคอ WCF Ria Service
Silverlight Support การสอสารกบ Service แบบ Asynchronous เทานน และการสอสารแบบ Asynchronous ท าใหหนาจอ Silverlight ไมคาง เพอรอการตอบกลบจาก Service ท าใหหนาจอโปรแกรม Silverlight ตอบสนองตอผใช ไดใกลเคยงกบ WinApp
บทท 3 วธการด าเนนงาน
3.1 แผนการด าเนนงาน
วธการด าเนนงานจะแสดงถงรายละเอยดในการปฏบตงานตามโครงงาน ตงแตเรมตนจนถงการปฏบตงานในขนตอนสดทายวามกจกรรมใดทตองท าบาง โดยการใชแผนภมแกนต (Gantt Chart) ประกอบการเสนอกจกรรมทเกดขน มการก าหนดแผนการด าเนนงานตามขนตอน ดงตารางตอไปน ตารางท 3.1 ระยะเวลาการด าเนนงาน
กจกรรม
ระยะเวลาการด าเนนงาน
2553 2554 2555
พ.ย.
ธ.ค.
ม.ค.
ก.พ.
ม.ค.
เม.ย.
พ.ค. ม.ย.
ก.ค.
ส.ค. ก.ย
. ต.ค
. พ.ย.
ธ.ค.
ม.ค.
ก.พ.
ม.ค.
ศกษารายละเอยดงานเครองมอทใช
ออกแบบและวเคราะหการท างานของระบบ
ออกแบบโครงสรางฐานขอมลของระบบ
ศกษาขอมลการสรางระบบ
ท าการสรางระบบ ทดสอบระบบ แกไขขอผดพลาด ของระบบ
ตรวจสอบการท างานของระบบ
สรปผล
43 ตารางท 3.1 ระยะเวลาการด าเนนงาน (ตอ)
แสดงแผนการด าเนนงาน แสดงการด าเนนงานจรง 3.2 แบบจ าลองระบบจดการสอดจตอลออนไลน
รปท 3.1 แสดงการท างานของระบบ
จดพมพเอกสาร ปรญญานพนธ
เขาพบอาจารยทปรกษา
44 3.3 การวเคราะหระบบงาน (Use Case Diagram)
3.3.1 การจ าแนกผใชงานในระบบ (Actors) 1) ผใชระบบ ประกอบดวย ผดแลระบบ สมาชก บคคลทวไป แทนดวยสญลกษณ
ดงรปท 3.2
รปท 3.2 แสดงสญลกษณแทนผใชระบบ
2) ผอพไฟล ประกอบดวย ผดแลระบบและสมาชก แทนดวยสญลกษณ ดงรปท 3.3
รปท 3.3 แสดงสญลกษณแทนผอพไฟล
45 3.3.2 ระบบการลอกอนเขาสระบบ ประกอบดวย
1) Actors ผใชระบบ
2) Use Case ใส Username และ Password ตรวจสอบ Username และ Password จากฐานขอมล แสดงหนาทการใชงานตามสทธของผใชระบบแตละคน
รปท 3.4 Use Case Diagram ระบบการลอกอนเขาสระบบ
จากรปท 3.4 Use Case Diagram ระบบลอกอนเขาสระบบ แสดงถงการเขาใชระบบ โดยผใชระบบจะตองท าการกรอกชอผใชและรหสผาน จากนนระบบจะท าการตรวจสอบหากขอมลทไดรบตรงกบในฐานขอมล ระบบจะแสดงหนาจอการใชงานตามสทธของผใชระบบ 3.3.3 ระบบการสมครสมาชก ประกอบดวย
1) Actors บคคลทวไป
2) Use Case ระบบสมครสมาชก ตรวจสอบขอมล
46
รปท 3.5 Use Case Diagram ระบบการสมครสมาชก
จากรปท 3.5 Use Case Diagram แสดงถงขนตอนการเขาสมครสมาชก โดยบคคลทวไปท าการสมครสมาชก จากนนระบบท าการตรวจสอบขอมลวาถกตองตามความตองการขอระบบหรอไม 3.3.4 ระบบการจดการไฟล ประกอบดวย
1) Actors ผใชระบบ
2) Use Case จดการไฟล ลอกอนเขาระบบ เลอกไฟล สทธการอพโหลด สทธการแกไข สทธการลบ สทธการดาวนโหลด คนหาไฟล
47
รปท 3.6 Use Case Diagram ระบบการจดการไฟล
จากรปท 3.6 Use Case Diagram ระบบการจดการไฟล แสดงถงความสามารถในการจดการไฟลของผใชระบบ โดยผใชระบบสามารถจดการไฟลไดตามสทธทมในการเขาถงระบบ คอ ถาผใชระบบท าการลอกอน และมสถานะเปนผดแลระบบจะมสทธในการจดการไฟลไดทงหมดของระบบ ถาผใชระบบท าการลอกอนและมสถานะเปนสมาชกจะมสทธในการจดการไฟลไดตามสทธทสามารถกระท าได ถาผใชระบบมสถานะเปนบคคลทวไปจะมสทธในการจดการไฟลไดเฉพาะระบบคนหาเทานน 3.3.5 ระบบการจดการสทธใหแกไฟล ประกอบดวย
1) Actors ผอพไฟล
2) Use Case ลอกอน เลอกไฟล ก าหนดสทธ ระดบสทธ
48
รปท 3.7 Use Case Diagram ระบบการจดการสทธใหแกไฟล
จากรปท 3.7 Use Case Diagram ระบบการจดการสทธใหแกไฟล แสดงถงขนตอนในการจดการสทธใหแกไฟล โดยผอพโหลดไฟลตองท าการลอกอน แลวท าการเลอกไฟลจากเครองผใช หลงจากทอพโหลดไฟลแลวจะตองท าการก าหนดสทธ โดยเลอกจากระดบสทธ ของไฟล
3.3.6 ระบบประชาสมพนธขอมล ประกอบดวย 1) Actors ผดแลระบบ สมาชก บคคลทวไป
2) Use Case ตงกระท ลอกอน แกไข ลบ อาน ระบบจดเกบขอมล
49
รปท 3.8 Use Case Diagram ระบบประชาสมพนธขอมล
จากรปท 3.8 Use Case Diagram ระบบประชาสมพนธขอมล แสดงถงการใชงาน ในระบบประชาสมพนธขอมล โดยผดแลระบบสามารถท าการตงกระท แกไข และลบกระท แลวระบบจะท าการจดเกบขอมลทงหมดลงสฐานขอมล แลวน าไปแสดงผล เพอใหผใชระบบสามารถเขามาตดตามขอมลในระบบการจดการประชาสมพนธ 3.3.7 ระบบกระทถาม-ตอบ ประกอบดวย
1) Actors ผใชระบบ
2) Use Case ระบบจดเกบขอมล ตงกระท สทธการใช แกไข ลบ อาน
50
รปท 3.9 Use Case Diagram ระบบกระทถาม-ตอบ
จากรปท 3.9 Use Case Diagram ระบบกระทถาม-ตอบ แสดงถงการใชงานในระบบกระทถาม-ตอบ โดยผใชระบบสามารถตงกระท แกไข และลบขอมลไดตามสทธทมของผใชระบบแตละคน ระบบจะท าการจดเกบขอมลทงหมดลงสฐานขอมล แลวน าไปแสดงผล เพอใหผใชระบบสามารถเขามาตดตามขอมลในระบบกระทถาม-ตอบ
51 3.4 วเคราะหพฤตกรรมของระบบ (Sequence Diagram) 3.4.1 ระบบลอกอนเขาสระบบ
รปท 3.10 Sequence Diagram ระบบการลอกอนเขาสระบบ
จากรปท 3.10 Sequence Diagram ระบบลอกอนเขาสระบบ แสดงถงขนตอนการลอกอนเขาสระบบ โดยสมาชกและผดแลระบบตองท าการกรอกชอผใช และรหสผานแลว ระบบจะท าการตรวจสอบชอผใช และรหสผาน ถาขอมลตรงกบฐานขอมล ระบบจะอนญาตใหเขาระบบได แตถาขอมลไมตรงกบฐานขอมลระบบจะแจงเตอน 3.4.2 ระบบสมครสมาชก
รปท 3.11 Sequence Diagram ระบบการสมครสมาชก
52 จากรปท 3.11 Sequence Diagram ระบบการสมครสมาชก บคคลทวไปตองท าการกรอกขอมลการสมครสมาชก จากนนระบบจะตรวจสอบความถกตองของขอมล ถามการกรอกขอมลผดพลาดระบบจะท าการแจงเตอนความผดพลาดผานหนาจอ เพอใหผสมครสมาชกแกไขสวนทไมถกตอง แตถากรอกขอมลถกตองระบบจะท าการสงขอมลไปยงฐานขอมล แลวแสดงขอมลการสมครสมาชกผานหนาจอ 3.4.3 ระบบการจดการไฟล
รปท 3.12 Sequence Diagram ระบบการจดการไฟล
53 จากรปท 3.12 Sequence Diagram ระบบการจดการไฟล ผใชระบบตองท าการลอกอนเขาสระบบจงจะสามารถใชงานตามสทธทตนไดรบ ดงน การอพโหลดไฟล ระบบจะสอบถามทอยของไฟลจากเครองผอพโหลดไฟล เมอท าการอพโหลดไฟลเขาสระบบแลว ระบบจะท าการบนทกขอมลลงฐานขอมล ถาบนทกขอมลส าเรจระบบจะแจงวาอพโหลดส าเรจ แตถาบนทกขอมลไมส าเรจระบบจะแจงเตอนวาอพโหลดไมส าเรจ การคนหาขอมล ระบบจะท าการตรวจสอบสทธตามทผใชมในระบบ เมอท าการคนหาสอส าเรจ ระบบจะสงขอมลไปแสดงผลทหนาจอเพอใหผใชเลอกสอชนดนนและแสดงรายละเอยดตามการจดการของผใช การลบไฟล หลงจากท าการคนหาไฟลแลวผใชตองการลบไฟลนนๆ ระบบจะท าการตรวจสอบสทธของผใช ถาผใชมสทธในการลบขอมลระบบกท าการลบไฟล ถาผใชไมมสทธในการลบไฟลระบบจะท าการแจงเตอนทหนาจอ การแกไขสทธ หลงจากท าการคนหาไฟล แลวผใชตองการแกไขไฟล ระบบจะท าการตรวจสอบสทธของผใชกอน ถาผใชมสทธในการแกไขขอมลระบบกจะอนญาตใหท าการแกไขไฟล หากผใชไมมสทธในการแกไขไฟลระบบจะท าการแจงเตอนผานหนาจอ การดาวนโหลด หลงจากท าการคนหาไฟลแลวผใชตองการดาวนโหลดไฟล ระบบจะท าการตรวจสอบสทธของผ ใช ถาผใชมสทธในการดาวนโหลดไฟล ระบบกจะอนญาตให ดาวนโหลดไฟล ถาผใชไมมสทธในการดาวนโหลดไฟลระบบจะท าการแจงเตอนหนาจอ
54 3.4.4 ระบบประชาสมพนธขอมล
รปท 3.13 Sequence Diagram ระบบประชาสมพนธขอมล
จากรปท 3.13 Sequence Diagram ระบบประชาสมพนธขอมล ผดแลระบบจะตองท าการลอกอนเขาสระบบจงจะสามารถท าการตงกระทการประชาสมพนธขอมลได โดยผดแลระบบเขาไปตงกระททระบบเวบบอรดแลวท าการบนทกลงฐานขอมล และสามารถคนหาขอมลประชาสมพนธไดโดยเขาไปทระบบเวบบอรด ระบบจะท าการคนหาขอมลจากฐานขอมลแลวท าการแสดงผลผานหนาจอ ถาผดแลระบบตองการท าการแกไขขอมลประชาสมพนธกสามารถ กระท าได เมอท าการแกไขแลวระบบจะท าการบนทกขอมลลงฐานขอมล สวนสมาชกและบคคลทวไปสามารถเขาดขอมลการประชาสมพนธของระบบไดโดยไมจ าเปนตองท าการลอกอนเขาสระบบ
55 3.4.5 ระบบกระทถาม-ตอบ
รปท 3.14 Sequence Diagram ระบบกระทถาม-ตอบ จากรปท 3.14 Sequence Diagram ระบบกระทถาม-ตอบ เมอผใชระบบท าการตงกระทเสรจแลวระบบจะท าการบนทกขอมลลงฐานขอมล เมอผใชท าการเขาดกระท ถาม -ตอบ ระบบจะท าการคนหาขอมลแลวแสดงผานทางจอแสดงผล ผดแลระบบและเจาของกระทเทานนทมสทธสามารถแกไขกระทได
56 3.5 ล าดบกจกรรมของการท างาน (Activity Diagram) 3.5.1 ระบบการลอกอนเขาสระบบ
รปท 3.15 Activity Diagram ระบบการลอกอนเขาสระบบ จากรปท 3.15 Activity Diagram ระบบการลอกอนเขาสระบบ ผใชระบบจะตองท าการกรอกชอผใชและรหสผาน แลวระบบจะท าการตรวจสอบขอมลจากฐานขอมล ถาขอมลไมถกตอง ระบบจะท าการแจงเตอนและตองกลบไปกรอกชอผ ใชและรหสผานใหมอกครง ถาขอมลถกตองระบบจะอนญาตใหเขาสระบบได
57 3.5.2 ระบบสมครสมาชก
รปท 3.16 Activity Diagram ระบบการสมครสมาชก จากรปท 3.16 Activity Diagram ระบบการสมครสมาชก บคคลทวไปเลอกลงทะเบยนการสมครสมาชก ระบบจะแสดงแบบฟอรมการสมครสมาชกเพอใหบคคลทวไปกรอกขอมล หลงจากทกรอกขอมลเสรจเรยบรอยแลวตองท าการยนยนการสมคร จากนนระบบจะท าการตรวจสอบขอมลทท าการสมคร ถาขอมลทกรอกไมถกตอง ระบบจะยอนกลบไปใหท าการกรอกขอมลใหมอกครง ถาขอมลทกรอกถกตองแลว ระบบจะท าการจดเกบลงสฐานขอมล
58 3.5.3 ระบบการจดการไฟล
รปท 3.17 Activity Diagram ระบบการจดการไฟล จากรปท 3.17 Activity Diagram ระบบการจดการไฟล ผใชระบบตองลอกอนเขาสระบบ แลวระบบจะท าการตรวจสอบสทธของผใช ผใชทมสทธจะสามารถจดการไฟลได โดยสามารถท าการอพโหลดไฟลเขาสระบบ และมสทธในการคนหา ดาวนโหลด และมสทธในการลบไฟลขอมลไดตามสทธทสามารถท าไดในระบบ
59 3.5.4 ระบบการจดการสทธใหแกไฟล
รปท 3.18 Activity Diagram ระบบการจดการสทธใหแกไฟล จากรปท 3.18 Activity Diagram ระบบการจดการสทธใหแกไฟล ผอพไฟลจะตองท าการลอกอนเขาสระบบ เพอเขาสหนาจอการท างานตามสทธในการเขาถงระบบ ผใชระบบสามารถเลอกสทธในการอพโหลดไฟลหรอเปลยนแปลงสทธ โดยหลงจากการอพโหลดไฟลแลวระบบจะท าการจดเกบขอมลและก าหนดสทธใหกบไฟลเปนสวนตว ผใชระบบสามารถท าการเปลยนแปลงสทธการเขาถงไฟลไดคอ ความเปนสวนตว เฉพาะกลม หรอทกคนเขาถงได
60 3.5.5 ระบบประชาสมพนธขอมล
รปท 3.19 Activity Diagram ระบบประชาสมพนธขอมล
จากรปท 3.19 Activity Diagram ระบบประชาสมพนธขอมล ผดแลระบบท าการลอกอนเขาสระบบ โดยผดแลระบบสามารถท าการตงกระทเพอประชาสมพนธ และแกไขขอมลประชาสมพนธได สวนบคคลทวไปและสมาชกของระบบจะสามารถตดตามการประชาสมพนธขอมลได โดยการเรยกขอมลจากฐานขอมล แลวมาแสดงผล ซงสามารถเขาดไดโดยไมตองท าการลอกอนเขาสระบบ
61 3.5.6 ระบบกระทถาม-ตอบ
รปท 3.20 Activity Diagram ระบบกระทถาม-ตอบ
จากรปท 3.20 Activity Diagram ระบบกระทถาม-ตอบ ผใชระบบสามารถท าตงกระทถาม-ตอบได โดยผใชระบบสามารถท าการตงกระทและผดแลระบบสามารถท าการลบกระท และแกไขกระทได
62 3.6 คลาสไดอะแกรม (Class Diagram)
รปท 3.21 Class Diagram ความสมพนธของขอมล
63 3.7 แผนภาพแสดงความสมพนธระหวางขอมล (E-R Diagram)
รปท 3.22 E-R Diagram
64 3.8 ความสมพนธขอมล (Data Relation)
รปท 3.23 ความสมพนธของระบบจดการสอดจตอลออนไลน
65 3.9 พจนานกรมขอมล (Data Dictionary) ตารางท 3.2 โครงสรางตาราง Media แสดงรายละเอยดของไฟลทอพโหลด
FIELD TYPE KEY DESCRIPTION
MediaID int PK รหสของไฟล
UserID int FK รหสของประเภทไฟล
FileIncID bit FK ไฟลทรบแจงวามปญหา
MediaTypeID int FK รหสของประเภทไฟล
FileName nvarchar(256) ชอไฟล
MediaDayUp datetime วนทอพโหลด
MediaPath nvarchar(1000) ต าแหนงของไฟล
FileIncCheck bit ไฟลแจงทตรวจสอบแลว
FileNameDisplay nvarchar(256) ชอใหมของไฟล
MediaView bigint จ านวนครงทเขาชม
ตารางท 3.3 โครงสรางตาราง User แสดงรายละเอยดการเกบขอมลของสมาชก
FIELD TYPE KEY DESCRIPTION
UserID int PK รหสของผใชระบบ UserName nvarchar(50) ชอผใชระบบ
FirstName nvarchar(50) ชอจรงของผใชงาน
Password nvarchar(50) รหสผานในการเขาใชระบบ
LastName nvarchar(50) ชอสกล
Mail nvarchar(50) E-mail
UserType int ระดบสมาชก
UserImage nvarchar(255) รปโปรไฟล
66 ตารางท 3.4 โครงสรางตาราง MediaType แสดงรายละเอยดประเภทไฟล
FIELD TYPE KEY DESCRIPTION MediaTypeID Int PK รหสของประเภทไฟล Media nvarchar(15) ชนดไฟล Type nvarchar(50) สกลของไฟลทรองรบ
ตารางท 3.5 โครงสรางตาราง QPosts แสดงรายละเอยดการถามกระท
FIELD TYPE KEY DESCRIPTION PostID Int PK ล าดบตงกระท UserID Int ID ผใชทตงกระท Title Text หวขอกระท Message nvarchar(MAX) ขอความกระท DateTime Datetime วนทตงกระท Mail nvarchar(50) E-mail ผต งกระท PostType Int ชนดของการตงการท
ตารางท 3.6 โครงสรางตาราง AnswerMessage แสดงรายละเอยดการตอบกระท
FIELD TYPE KEY DESCRIPTION
AnswerID int PK ล าดบการตอบกระท PostID int PK ล าดบของกระท UserID int FK ID ผใชทตอบกระท Message nvarchar(MAX) ขอความตอบกระท DateTime datetime วนทตอบกระท
67 ตารางท 3.7 โครงสรางตาราง Vote แสดงรายละเอยดการโหวต
FIELD TYPE KEY DESCRIPTION
MediaID int PK ล าดบโหวต
Vote Int ผลโหวด
Datetime Datetime PK วนทโหวต
UserID Int FK ID ผใชทใหคะแนนสอ
ตารางท 3.8 โครงสรางตาราง Group แสดงรายละเอยดการสรางกลม
FIELD TYPE KEY DESCRIPTION IDGroup Int PK รหสกลม GroupName nvarchar(256) ชอกลม UserID Int PK ID ของผต งกลม
ตารางท 3.9 โครงสรางตาราง GroupUser แสดงรายละเอยดของกลมสทธสมาชก
FIELD TYPE KEY DESCRIPTION
IDGroupUser int PK ล าดบกลมของผใช
UserID Int PK ID ของผต งกลม
UserIDRef Datetime PK ID ของผใชทมสทธเขาถงสอ
ตารางท 3.10 โครงสรางตาราง GroupMedia แสดงรายละเอยดของกลมสทธสอ
FIELD TYPE KEY DESCRIPTION
IDGroupMedia int PK ล าดบกลมของสอ
MediaID int PK ID ของสอ
UserIDRef datetime PK ID ของผใชทมสทธเขาถงสอ
68 3.10 การใชงาน Method ของ Web Service ตารางท 3.11 การใชงาน Method ของ Web Service
เมธอด การใชงาน CheckLogin ตรวจสอบการเขาสระบบ CheckUser ตรวจสอบวา User ทกใชงานหรอยง DeleteMedia ลบไฟล GetMediaBy_Result เกบขอมลการอพโหลดไฟล GetMediaSearch_Result คนหาไฟลตาม User ผใช GetMediaVote_Result ใหคะแนนกบไฟล GroupMediaByUserIDMediaID สรางกลมสมาชกในการเขาถงไฟล UpdMedia หา URL ของไฟลทคลก UpdMediaFileIncorect รบคาและตรวจสอบไฟลทแจงลบ UpdUser แกไขประวตของ User UpdateUserImage เปลยนรปโปรไฟลของ User Url_AbsolutePath ทอยของไฟล Url_AbsoluteUri ระบแหลงทอยของไฟลของรปโปรไฟล Url_Authority ระบบต าแหนงการอพโหลดไฟล _SetMediaIncFile แจงลบไฟล _SetUser สมครสมาชก _delGroupRole ลบกลมและสมาชกของกลม _delGroupUMedia ลบกลมและสทธไฟลทเขาถง _delGroupUser ลบกลม, ผสรางกลม, สมาชก _deleteQPost ลบกระท _getAnswerMessage1 รบขอมลการตงกระท _getGroup สรางกลมสมาชก _getGroupMediaInRole ขอมลไฟลตามกลมสทธ _getGroupUserInRole ขอมลผใชตามกลมสทธ
69 ตารางท 3.11 การใชงาน Method ของ Web Service (ตอ)
_getHeaderPost ขอมลชอโพสต _getMediaRoleByUser ขอมลไฟลในตามผใชทมสทธ _getMediaall รบคาขอมลทงหมดของไฟล _getMediabyuserid คนหาขอมลตาม User _getMediabyuseridmediatype รบขอมลไฟล และ User _getPostAnswer รบคาขอมลกระทและค าตอบกระท _getQPostAll รบคาขอมลกระท _getUser รบคาขอมลสมาชก _selectMediatype รบคาชนดของไฟลขอมลจากฐานขอมล _setAnswerMessage1 เซตคากระท ตอบกระท ผสรางกระท เวลาตงกระท _setGroupMedia เซตการตงกลม สมาชกของกลม ผสรางกลม _setGroupUser เซตกลม _setMediaUpload เซตขอมลการอพโหลดไฟล _setQPost เซตขอมลกระท _setVoteMedia ใหคะแนนสอ _updateAnswerMessage แกไขรายการตอบกระท _updateQPost แกไขรายการกระท
บทท 4 ผลการด าเนนงานและการวเคราะห
การทดสอบการใชงานเปนสวนส าคญในกระบวนการพฒนาระบบจดการสอดจตอลออนไลน เพราะเมอมการทดสอบแลว กจะสามารถวเคราะห และสามารถสรปผลการใชงานของระบบวามความประสบผลส าเรจหรอตองปรบปรงแกไขอยางไรบางใหมความเหมาะสม ซงในการจดการสอดจตอลออนไลน มผลการด าเนนงานดงน 4.1 ผลการด าเนนงานของระบบ ระบบสอดจตอลออนไลน มผลการท างานแบงออกเปนการท างานของระดบผใชงานในระบบ แบงออกเปน 3 ระดบ ซงในแตละระดบมการก าหนดสทธการท างานในสวนตางๆไว คอ ผดแลระบบ สมาชก และผใชท วไป มการท างานทงหมดแบงออกเปนสวนยอยๆ โดยในการใชงานนนผใชงานระบบจะสามารถเขาใชงานไดตามสทธการท างานของตนตามทไดก าหนดไวในระบบ ในสวนตางๆ ดงน ตารางท 4.1 ตารางแสดงสทธการเขาใชระบบของผใชงานแตละระดบ
สทธการเขาใชระบบ ผใชงานระบบ
ผดแลระบบ สมาชก บคคลทวไป 1. สวนของการจดการผใช การสมครสมาชก - - แกไข/เพมขอมลสวนตว - - 2. สวนของการจดการ สอ(อพโหลด,ดาวนโหลด,ลบ) - สอ(ก าหนดสทธ) - - สอ(แจงเตอนความไมเหมาะสม) - สอ(โหวต) สอ(แกไขขอมล) - สอการรบชม
71
ตารางท 4.1 ตารางแสดงสทธการเขาใชระบบของผใชงานแตละระดบ(ตอ)
3. สวนของเวบบอรด ประชาสมพนธ - - เพม,แกไข กระทถาม-ตอบ - ลบ กระทถาม-ตอบ - - เขาดขาวสาร 4. การแสดงสอ ทวไป เฉพาะกลมตามสทธ - -
4.2 การทดสอบการใชงานระบบ การทดสอบการใชงานของระบบสอดจตอลออนไลน ในแตละสวนซงแบงออกเปน ดงน
4.2.1 สวนโฮมเพจของระบบ
รปท 4.1 แสดงหนาโฮมเพจของระบบสอดจตอลออนไลน
72
จากรปท 4.1 แสดงหนาโฮมเพจของระบบสอดจตอลออนไลน เปนหนาแรกทแสดงใหผเขาใชงานระบบสอดจตอลออนไลนทกระดบไดเหน ซงในสวนนผใชทกคนสามารถจะเหนวดโอ ภาพ และเสยงทไดรบการอนญาตเทานน สวนผใชงานทตองการเขาใชระบบในสวนอนจะตองท าการลอกอนเขาสระบบเพอเขาสหนาตางการท างานของตน
4.2.2 สวนหนาตางการสมครสมาชกของระบบ
รปท 4.2 แสดงหนาตางการสมครสมาชกของระบบ
จากรปท 4.2 สวนนเปนสวนทผใชระบบทตองการสมครสมาชก เพอใหไดรบสทธในการเขาใชงานของระบบทมากขนจ าเปนตองกรอกขอมลทกชองใหครบ
73
4.2.3 สวนหนาตางการลอกอนเขาสระบบ
รปท 4.3 แสดงหนาตางการลอกอนเขาสระบบ
จากรปท 4.3 เปนสวนทสมาชกจะตองท าการกรอกขอมล Username และ Password ของตน เพอเขาใชงานในระบบ และเขาใชระบบในสทธทตนไดรบ
4.2.4 สวนการอพโหลดสอดจตอล
รปท 4.4 แสดงการอพโหลดสอดจตอล
จากรปท 4.4 เปนสวนทสมาชก สามารถท าการอพโหลดภาพ วดโอ และเสยง
74
4.2.5 สวนการเลอกไฟลในการอพโหลด
รปท 4.5 แสดงการเลอกไฟลในการอพโหลด
จากรปท 4.5 เปนสวนทสมาชกทตองการอพโหลดไฟล ท าการเลอกไฟลทตองการอพโหลด โดยสามารถเลอกไดครงละหลายไฟล
4.2.6 สวนการอพโหลดไฟลหลายประเภท
รปท 4.6 แสดงการอพโหลดไฟลหลายประเภท
75
จากรปท 4.6 เปนสวนทแสดงการอพโหลดไฟล โดยระบบสามารถท าการอพโหลดไฟลไดหลายประเภทพรอมกน ทง .mp3, .wma, .wmv, .mp4, .png, jpeg และ .jpg
4.2.7 สวนการอพโหลดไฟล
รปท 4.7 แสดงการอพโหลดไฟล
จากรปท 4.7 เปนสวนการอพโหลดของไฟล โดยจะแสดงชอไฟล ขนาดของแตละไฟล ขนาดของไฟลทงหมด ความเรวในการอพโหลด และเปอรเซนตในขณะอพโหลดไฟล 4.2.8 สวนของแกลเลอรสอ
รปท 4.8 แสดงสวนของแกลเลอรรปภาพ
76
จากรปท 4.8 เปนสวนทแสดงแกลเลอรของไฟลแตละประเภท จะแสดงเฉพาะไฟลของตนเองทไดท าการอพโหลด โดยแบงเปนสามประเภท คอ รปภาพ วดโอ และเสยง โดยจะแสดงตวอยางของไฟล และชอไฟล
4.2.9 สวนการแกไขขอมลสอ
รปท 4.9 แสดงสวนการแกไขขอมลไฟล
จากรปท 4.9 เปนสวนทสมาชก สามารถท าการแกไขชอไฟล รวมทงการก าหนดสทธการเขาถงของไฟลนนกบผใชระบบ และเลอกลบไฟลทตองการลบออกไป โดยจะตองเปนไฟลทตนอพโหลดไวเทานน
77
4.2.10 สวนการแสดงสไลดโชวแกลเลอรรปภาพ
รปท 4.10 แสดงสไลดโชวแกลเลอร
จากรปท 4.10 เปนสวนการแสดงรปภาพในรปแบบสไลดโชว ซงสามารถท าได 2 รปแบบ คอ แบบกดปมลกศร เพอเลอนดรปภาพทละรป และแบบกดปมแสดงอตโนมต เพอแสดงรปภาพใหเลอนแบบอตโนมต สามารถปรบความเรวในการแสดงรปได และสามารถแสดงรปภาพแบบเตมจอ นอกจากนผใชระบบยงสามารถท าการใหคะแนนรปภาพ โดยมระดบความพอใจ 5 ระดบ คอ 0–4 และยงมสวนการแสดงผลโหวต และจ านวนผเขาชมไฟลนนๆอกดวย
78
4.2.11 สวนการแสดงสอวดโอ
รปท 4.11 แสดงสวนของวดโอ
จากรปท 4.11 เปนสวนการแสดงวดโอ โดยผใชระบบสามารถท าการรบชมวดโอแบบเตมจอ หยดการแสดงวดโอชวคราว การเพมและลดระดบเสยง นอกจากนผใชระบบยงสามารถท าการใหคะแนนวดโอ โดยมระดบความพอใจ 5 ระดบ คอ 0-4 และยงมสวนของการแสดงผลโหวต และจ านวนผเขาชมไฟลนนๆอกดวย 4.2.12 สวนการแสดงเสยง
รปท 4.12 แสดงสวนของเสยง
79
จากรปท 4.12 เปนสวนการแสดงเสยง โดยผใชระบบสามารถท าการหยดการเลนเสยงชวคราว เพมและลดระดบเสยง นอกจากนผใชยงสามารถท าการใหคะแนนกบสอประเภทเสยง โดยมระดบความพอใจ 5 ระดบ คอ 0–4 และยงมสวนของการแสดงผลโหวตและจ านวนผเขาชมไฟลนนๆอกดวย 4.2.13 สวนการแกไขขอมลสมาชก
รปท 4.13 แสดงสวนการแกไขขอมลสมาชก
จากรปท 4.13 เปนสวนทสมาชก สามารถเขาไปท าการแกไขขอมลสมาชกโดยสามารถท าการแกไขไดทงรปประจ าตว, Firstname, Lastname, Password และ E-mail
80
4.2.14 สวนการตงกลมและก าหนดสทธการเขาถงของสอ
รปท 4.14 แสดงสวนการตงกลมและก าหนดสทธการเขาถงของไฟล
จากรปท 4.14 เปนสวนทสมาชก สามารถท าการสรางกลมสทธ และสามารถท าการเพมสมาชกในกลมสทธ 4.2.15 สวนการแสดงหนาเวบบอรด
รปท 4.15 แสดงหนาเวบบอรด
81
จากรปท 4.15 แสดงหนาเวบบอรด โดยในหนาเวบบอรดจะแบงออกเปน 2 กระท คอ กระทท วไป ซงผใชสามารถท าการตงกระท ตอบกระทได สวนขาวประชาสมพนธ ผดแลระบบเทานนทจะสามารถท าการประกาศขาวประชาสมพนธเพอใหผใชระบบตดตามขาวสารของระบบได 4.2.16 สวนของการตงกระทขอความบนเวบบอรด
รปท 4.16 แสดงหนาตางการตงกระทขอความบนเวบบอรด
จากรปท 4.16 เปนสวนทผใชระบบ สามารถท าการตงกระท เพอแสดงบนเวบบอรดโดยจะตองท าการกรอกชอเรอง และเนอหา
82
4.2.17 สวนแสดงรายการไฟลทถกการแจงลบ
รปท 4.17 แสดงรายการไฟลทถกการแจงลบ
จากรปท 4.17 เปนสวนทแสดงรายการไฟลทถกการแจงลบ โดยผดแลระบบเทานนทจะสามารถทราบไดวา มไฟลอะไรบางทถกการแจงลบ และสามารถท าการลบไฟลนนไดทนท หากไฟลนนเปนไฟลทไมเหมาะสม 4.3 สรปผลการด าเนนงาน จากขนตอนการวเคราะห ออกแบบ และพฒนาโครงงานจนไดด าเนนการจดท าเปน Web Application จนแลวเสรจทผานการทดสอบและทดลองใชงานแลว ผลปรากฏวาการท างานของระบบเปนไปตามทไดก าหนดขอบเขตและออกแบบไว และมสวนประกอบบางสวนทไมไดก าหนดขอบเขตไว แ ต เ มอไดด า เ นนการจดท าแลวไดน า เขามา เ ปนสวนประกอบใน Web Application ดวย เพอเพมความนาสนใจกบผใชระบบอกทางหนง
บทท 5 สรปและขอเสนอแนะ
จากการทดลองด าเนนการทดสอบระบบจดการสอดจตอลออนไลนดวยซลเวอรไลท
ในสวนนจะกลาวถงการสรปตลอดจนปญหาและอปสรรคของการท าโครงงานน รวมท งขอเสนอแนะในการน าเอาโครงงานไปพฒนาตอเพอใชเปนแนวทางส าหรบผทสนใจ 5.1 สรปผลโครงงาน ผลทไดจากโครงงานน ไดเวบแอพพลเคชนทสามารถสมครสมาชก แกไขขอมลสวนตวของผใช ระบบรองรบการอพโหลดชนดไฟลภาพ ไดแก JPG, JPEG, PNG ไฟลวดโอ ไดแก WMV, MP4 และไฟลเสยง ไดแก MP3, WMA สามารถดาวนโหลด/คนหา/รบชมสอตามสทธทผใชสามารถเขาถงสอนนได การแจงลบสอทไมเหมาะสม การใหคะแนนสอ ผใชสามารถสรางและก าหนดกลมสทธการเขาถงสอได ระบบสามารถแสดงผลของสอในรปแบบของสไลดโชว และมระบบเวบบอรดส าหรบถาม-ตอบเกยวกบปญหาของระบบและส าหรบประชาสมพนธได 5.2 ขอเสนอแนะ 5.2.1 ไฟลทระบบสามารถรองรบในการอพโหลดได ควรมมากกวาน 5.2.2 ในระบบควรมการสนทนาออนไลน และการสนทนาผานวดโอ 5.3 อปสรรคในการท างาน
เนองจากซลเวอรไลทไมสามารถตดตอกบฐานขอมลโดยตรงตองอาศยเซอรวสตางๆ เชน Web Service, WCF อนๆ เขาชวยท าใหหากมการเปลยนแปลงฐานขอมลจะตองท าการอพเดทเซอรวสตางๆดวย ซงขนตอนในการอพเดทคอนขางซบซอนและไมสะดวก
บรรณานกรม
[1] ชชวาล ศรสละ. 2551. Streaming Media. กรณศกษาเทคโนโลยการสงภาพและเสยงบนอนเทอรเนต. จฬาลงกรณมหาวทยาลย.
[2] วกพเดย สารานกรมเสร. ยทบ. (ออนไลน). แหลงทมา : http://th.wikipedia.org/wiki/ยทบ. ๒ กมภาพนธ ๒๕๕๔.
[3] โอภาส เอยมสรวงศ. 2548. การวเคราะหและออกแบบระบบ. กรงเทพฯ : ซเอดยเคชน. [4] กตต ภกดวฒนะกล, และกตตพงษ กลมกลอม. 2544. UML วเคราะหและออกแบบระบบ
เชงวตถ. กรงเทพฯ : เคทพ คอมพ แอนด คอนซลท. [5] กตต ภกดวฒนะกล, และพนดา พานชกล. 2548. คมภรการพฒนาระบบเชงวตถดวย UML
และ JAVA. กรงเทพฯ : เคทพ. [6] ชาล วรกลพพฒน, และเทพฤทธ บณฑตวฒนาวงศเ. 2544. UML ภาษามาตรฐานเพอผพฒนา
ซอฟแวร. กรงเทพฯ : ซเอดยเคชน. [7] Ashish Ghoda. 2010. Introducing Silverlight 4. United States of America : Springer
Science+Business Media, LLC [8] Jason Beres, Bill Evjen, Devin Rader. 2010. Professional Silverlight 4. Canada : Wiley
Publishing.
ภาคผนวก ก ขนตอนการตดตงโปรแกรม
86
ขนตอนการตดตงโปรแกรม
ความตองการของระบบในการตดตงเวบแอพพลเคชน 1. Microsoft SQL Server 2008 R2 2. Microsoft .NET Framework 4
ขนตอนการตดตง 1. Restore Database
1.1 เปดโปรแกรม SQL Server Management Studio แลวท าการลอกอนดงรปท ก.1
รปท ก.1 แสดงการลอกอน SQL Server Management Studio
87
1.2 คลกขวาท Databases แลวเลอกเมน Restore Database… ตอจากนนท าการตงชอ To database เปน testPro
รปท ก.2 แสดงขนตอนการ Restore Database
88
1.3 ถดมาท าการเลอกท From device คลกทปม Browse แลวท าการเลอกไฟลชอtestPro.bak จากโฟลเดอร DigitalMediaLibrary ในแผน CD ตอจากนนท าเครองหมายถกดงรป
รปท ก.3 แสดงขนตอนการ Restore Database
คลกปม Browse เพอ เลอกไฟล testPro.bak
89
1.4 ตอจากนนท าการคลกท Option แลวท าเครองหมายถกท Overwrite the existing database (WITH REPLACE) จากนนท าการคลกทปม OK เมอ Restore Database เสรจจะแสดงขอความดงรปท ก.4
รปท ก.4 แสดงการ Restore Database ส าเรจ
90
1.5 ท าการ Disconnect Database ตอจากนนท าการคลก Connect Object Explorer แลวท าการลอกอน เพอท าการ Connect Database อกครง จะได Database ชอ testPro ดงรปท ก.5
รปท ก.5 แสดง Database ทท าการ Restore ส าเรจ
Connect Object Explorer Disconnect Database
91
2. การตดตง .NET Framework 4 ใหกบ IIS 2.1 คลกท Start > All Programs > Accessories แลวคลกขวา Command Prompt > Run as administrator
รปท ก.6 แสดงหนาตาง Command
92
2.2 พมพ %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis -i ลงใน Command Prompt แลวกด Enter เมอท าการตดตงเสรจ Command Prompt จะแสดงขอความดงรปท ก.7
รปท ก.7 แสดงการตดตง .NET Framework 4 ให IIS
3. ขนตอนการตดตง IIS7 (Internet Information Server) 3.1 ท าการตดตง IIS7 บน Windows 7 กอนโดยเรมจาก Start/Control Panel /Program and Feature 3.2 จากนนเลอก Program ทางดานซายมอ ตอจากนนเลอก Turn Windows features on or off
รปท ก.8 แสดงขนตอนการเขาไปตดตง IIS
93
3.3 จากหนาตาง Windows Features จะเหนหวขอ Internet Information Services ใหเลอกตดตงเทาทจ าเปนจากนนกด OK
รปท ก.9 แสดงขนตอนการตดตง IIS
94
3.4 ระบบจะท าการตดตง IIS ตอจากนกรอจนกวาโปรแกรมจะตดตงเสรจสมบรณ ดงรปท ก.10
รปท ก.10 แสดงขณะตดตง IIS
95
4. ตดตง Web บน IIS7 4.1 จาก Start/All program/Administrative/Internet Information Services (IIS) Manager
รปท ก.11 แสดงการเขา Internet Information Services (IIS) Manager
4.2 หนาจอ ของ Internet Information Services (IIS) Manager
รปท ก.12 แสดงหนา Internet Information Services (IIS) Manager
96
4.3 ท าการคดลอกโฟลเดอร DigitalMediaLibrary จากแผน CD มายง C:\
รปท ก.13 แสดงการเพมโฟลเดอร
97
4.4 จากหนา Desktop คลกขวาท My Computer คลกเลอก Manage จะไดหนาตาง Computer Management แลวเลอก Internet Information Services > คลกขวาท Sites > Add Web Site
รปท ก.14 หนาขนตอนการ Add Web Site
98
4.5 กรอกขอมล Site name และ Physical path ดงรปท ก.15 และกด OK
รปท ก.15 หนาตางแสดงการ Add Web Site
ชอเวบไซต
ทอยของไฟล
99
4.6 จากนนท าการคลกท Default Web Site แลวคลก Stop ตอจากนนท าการคลกเลอก DigitalMediaLibrary แลวคลก Start
รปท ก.16 แสดงการ Start เวบไซตทท าการเพมขน
คลก Stop
คลก Start
100
4.7 จากนนยอนกลบมาทหนาตาง Internet Information Services > แลวเลอก Application Pools > ดบเบลคลกท DigitalMediaLibrary แลวท าการเลอก .NET Framework Version เปน .NET Framework v4.0.30319
รปท ก.17 หนาตางแสดงการตงคา Application Pool
101
4.8 ท าการตรวจสอบ MIME Type ใน IIS ดงน .xap, .xaml, .xbap หากใน IIS ยงไมม MIME Type ตามทกลาวมาใหท าการเพม MIME Type ดงรปท ก.11 โดยท าการคลกท DigitalMediaLibrary ทางดานซาย ตอจากนนคลก MIME Type แลวคลก Add ตอจากนนท าการเพม MIME Type ดงน
.xap application/x-silverlight-app .xaml application/xaml+xml .xbap application/x-ms-xbap
XAP เปนไฟลทเกดจากการคอมไพลโปรเจคทบรรจคอนโทรล Silverlight ซงภายในจะบรรจสวนทเปน User Interface ทมาจากไฟล .xaml สวนไฟล Code Behind (นามสกล .cs หรอ .vb ขนอยกบ Project Types ทเลอก) ทผกเขากบไฟล .xaml XAML ยอมาจาก Xtensible Application Markup Language ใชส าหรบก าหนดสวนตดตอผใช หรอ User Interface และใชส าหรบก าหนดวตถ คณลกษณะ ความสมพนธ และการโตตอบของวตถ XBAP ยอมาจาก XAML Browser Application แอพพลเคชนรปแบบใหมคอท าใหสามารถพฒนาวนโดวแอพพลเคชนทตดตอกบเวบเซรฟเวอรได โดยผใชสามารถเขา URL และรนโปรแกรมทเสมอนมหนาตาง IE อยดวยได (IE Sandbox)
102
รปท ก.18 แสดงการเพม MIME Type ของซลเวอรไลท
103
4.9 ท าการ Enable Directory Browsing โดยดบเบลคลกท Directory Browsing ตอจากนนคลกท Enable
รปท ก.19 แสดงการ Enable Directory Browsing
104
4.10 ตอจากนนท าการ Restart IIS ใหม
รปท ก.20 แสดงการ Restart IIS ใหม
4.11 หลงจากนนเขา Web Browser พมพ http://localhost แลวกด Enter กจะสามารถเขาสหนาเวบไดดงรปท ก.21
รปท ก.21 หนาตางการเขาใชงานระบบจดการสอดจตอลออนไลนดวยซลเวอรไลท
ภาคผนวก ข คมอการใชงาน
106
คมอการใชงาน คมอการใชงานระบบจดการสอดจตอลออนไลนดวยซลเวอรไลท การใชงานของระบบ มดงน 1. หนาหลกของระบบ
รปท ข.1 แสดงหนาหลกของระบบ
จากรปท ข.1 แสดงหนาหลกของระบบ จะแสดงสอประเภทตางๆ สามารถเลอกชมไดทงภาพ วดโอ และเสยง โดยแตละไฟลจะแสดงชอไฟล วนเวลาทอพโหลด และจ านวนครงในการรบชม
จ านวนครงในการรบชมรบชม
วนเวลาทอพโหลด
ชอไฟล
107
2. หนาตางแสดงการสมครสมาชก
รปท ข.2 แสดงหนาตางการสมครสมาชก จากรปท ข.2 แสดงหนาตางการสมครสมาชก ซงการสมครสมาชกนนจะตองท าการกรอกขอมลใหครบทกชองกอน ซงขอมลทงหมดทตองกรอกไดแก Username, Firstname, Lastname, E-mail, Confirm E-mail, Password และ Confirm Password แลวท าการกดปม Register จะมหนาตางยนยนการสมครสมาชกขนมา แลวกด OK เพอท าการยนยนการสมครสมาชก
108
3. หนาตางแสดงการเขาสระบบ
รปท ข.3 แสดงหนาตางการเขาสระบบ
จากรปท ข.3 แสดงหนาตางการเขาสระบบ การเขาสระบบนนจะตองกรอก Username และ Password จากนนกดปม OK เพอท าการลอกอนเขา สระบบ ถายงไมไดเปนสมาชกใหกดปม Register เพอท าการสมครสมาชก 4. การแกไขขอมลสมาชก
รปท ข.4 แสดงหนาตางการแกไขขอมลสมาชก
109
จากรปท ข.4 แสดงการแกไขขอมลสมาชก สามารถท าการแกไขไดทงรปประจ าตว Firstname, Lastname, Password และ E-mail เมอกดปม OK ระบบจะท าการบนทกขอมล 5. การอพโหลดไฟล
รปท ข.5 แสดงการอพโหลดไฟล
จากรปท ข.5 แสดงหนาตางการอพโหลดไฟล โดยจะตองท าการกดปม Upload แลวท าการคลกในกรอบเสนประ 6. สวนการเลอกไฟลในการอพโหลด
รปท ข.6 แสดงการเลอกไฟลในการอพโหลด
110
จากรปท ข.6 สวนนเปนสวนทสมาชกทตองการอพโหลดไฟล ท าการเลอกไฟลทตองการอพโหลด โดยสามารถเลอกไดครงละหลายไฟล 7. สวนการอพโหลดไฟลหลายประเภท
รปท ข.7 แสดงการอพโหลดไฟลหลายประเภท
จากรปท ข.7 สวนนเปนสวนทแสดงการอพโหลดไฟล โดยระบบสามารถท าการ อพโหลดไฟลไดหลายประเภทพรอมกนทง .mp3, .wma, .wmv, .mp4, .png, .jpeg และ.jpg 8. สวนการอพโหลดไฟล
รปท ข.8 แสดงการอพโหลดไฟล
จากรปท ข.8 สวนนเปนสวนการอพโหลดของไฟล โดยจะแสดงชอไฟล ขนาดของแตละไฟล ขนาดของไฟลทงหมด ความเรวในการอพโหลด และเปอรเซนตในขณะอพโหลดไฟล
111
9. การคนหาไฟล
รปท ข.9 แสดงการคนหาไฟล
จากรปท ข.9 แสดงการคนหา โดยท าการพมพชอไฟลทตองการคนหาลงในชอง แลวคลกทรปแวนขยาย ระบบจะท าการแสดงไฟลทตรงกบชอไฟลทคนหา 10. การแกไขขอมลสอ
รปท ข.10 แสดงหนาตางการแกไขขอมลสอ
จากรปท ข.10 แสดงหนาการแกไขขอมลของไฟล โดยท าการแกไขชอไฟล สามารถเลอกก าหนดสทธใหกบไฟลนน และลบดวยการเลอกทชองลบ ซงสามารถท าการลบไฟลไดครงละหลายไฟลพรอมๆกน
112
11. สไลดโชวรปภาพ
รปท ข.11 แสดงหนาตางสไลดโชวรปภาพ
จากรปท ข.11 แสดงรปภาพในรปแบบสไลดโชว สามารถท าการแสดงรปภาพได 2 แบบ คอ กดปมลกศร เพอเลอนดรปทละรป และกดปมแสดงอตโนมต เพอแสดงรปภาพใหเลอนทละรปแบบอตโนมต และสามารถเลอกระดบความเรวของเวลาในการเลอนรปได
ระดบความเรวของเวลาในการเลอนรปแบบอตโนมต
113
12. โชววดโอ
รปท ข.12 แสดงหนาตางการโชววดโอ
จากรปท ข.12 แสดงวดโอ สามารถท าการรบชมวดโอแบบเตมจอ โดยกดปม Full หยดการเลนวดโอชวคราว เพมลดระดบของเสยง เลอนเวลาของวดโอ และสามารถคลกปมลกศรเพอรบชมวดโอถดไป
แถบเลอนเวลา
114
13. โชวเสยง
รปท ข.13 แสดงหนาตางการโชวเสยง จากรปท ข.13 แสดงเสยง สามารถท าการเลน หยดการเลนเสยงชวคราว สามารถท าการเพมลดระดบของเสยง และเลอนเวลาของเสยงได 14. โหวต
รปท ข.14 แสดงการโหวต จากรปท ข.14 แสดงการโหวต ท าการใหคะแนนไฟล โดยคลกทปมลกศรเลอนลง ซงมระดบคะแนนใหเลอก 5 ระดบ คอ 0 – 4
แถบเลอนเวลา
115
15. แจงลบ
รปท ข.15 แสดงการแจงลบ จากรปท ข.15 แสดงการแจงลบ ท าการแจงลบไฟลทไมเหมาะสม โดยคลกทแจงลบ แลวระบบจะท าการสงไฟลไปยงรายการไฟลทไดรบการแจงลบ เพอใหผดแลระบบทราบ 16. ผลโหวตและจ านวนผเขาชม
รปท ข.16 แสดงผลโหวตและจ านวนผเขาชมสอ จากรปท ข.16 แสดงผลโหวตและจ านวนผเขาชม ระบบจะท าการแสดงผลโหวต และจ านวนผเขาชม โดยท าการนบจ านวนครงของการเขาชม เมอมผใชระบบคลกเขาชมไฟลนน
116
17. การตงกลมและการก าหนดสทธการเขาถงของสอ
รปท ข.17 แสดงหนาตางการตงกลมและการก าหนดสทธการเขาถงของสอ
จากรปท ข.17 แสดงหนาการตงกลมและการก าหนดสทธการเขาถงของสอ สามารถท าการเพมชอกลม โดยพมพชอกลมทชองเพมชอกลมแลวคลกทปมเพม และยงท าการก าหนดสทธในการเขาถงของสอใหกบสมาชกแตละคนได โดยพมพ Firstname หรอ Lastname ในชองเพมสมาชกระบบจะคนหารายชอจากฐานขอมล เมอพบสมาชกทตองการแลวกคลกทปมเพม 18. เวบบอรด
รปท ข.18 แสดงหนาเวบบอรด
ชองเพมสมาชก
ชองเพมชอกลม
117
จากรปท ข.18 แสดงเวบบอรด โดยในหนาเวบบอรดจะแบงออกเปน 2 กระท คอ กระท ทวไป ซงสมาชกสามารถท าการตงกระท ตอบกระทได สวนขาวประชาสมพนธ ผดแลระบบเทานนทจะสามารถท าการประกาศขาวประชาสมพนธเพอใหผใชระบบตดตามขาวสารของระบบได 19. การจดการกระทในเวบบอรด
รปท ข.19 แสดงการจดการกระทในเวบบอรด
จากรปท ข.19 แสดงการจดการกระทในเวบบอรด ในการตงกระท จะตองกรอกขอความ ทเรอง และเนอหา แลวคลกทปม OK
118
20. แกไขกระท
รปท ข.20 แสดงการแกไขกระท
จากรปท ข.20 แสดงการแกไขกระท ผทมสทธในการแกไขกระทตองเปนผต งกระทและผดแลระบบเทานน โดยคลกทรปดนสอแลวจะมหนาตางขนมาใหท าการแกไขขอความในกระทนนๆ เมอท าการแกไขขอความเรยบรอยแลวท าการคลกทปม OK ระบบจะท าการบนทกขอมลการเปลยนแปลงของกระท
119
21. ดาวนโหลด
รปท ข.21 แสดงการดาวนโหลดไฟล จากรปท ข.21 แสดงการดาวนโหลดสอ ท าการดาวนโหลดไฟล โดยคลกท Download ทแสดงบนสอ จากนนผใชจงท าการ Save ขอมลได
ประวตผจดท าปรญญานพนธ
121
ประวตผจดท าปรญญานพนธ
ชอ นายบญเกด แสงค ากล รหสประจ าตว 115110462023-2
สาขาวชา/ภาควชา วศวกรรมคอมพวเตอร
วน-เดอน-ป เกด วนท 13 พฤศจกายน พ.ศ. 2531
สถานทเกด จงหวดนาน
ทอย 82 ม.6 ต.ผาตอ อ.ทาวงผา จ.นาน 55140
ประวตการศกษา มธยมศกษาตอนปลาย (ม.6) โรงเรยนทาวงผาพทยาคม ปการศกษา 2550
122
ประวตผจดท าปรญญานพนธ
ชอ นายวราช พงบางกรวย รหสประจ าตว 115110462044-8
สาขาวชา/ภาควชา วศวกรรมคอมพวเตอร
วน-เดอน-ป เกด วนท 12 กนยายน พ.ศ.2532
สถานทเกด จงหวดปทมธาน
ทอย 29 ม.5 ต.คลองหก อ.คลองหลวง จ.ปทมธาน 12120
ประวตการศกษา มธยมศกษาตอนปลาย (ม.6) โรงเรยน มธยมวดหตถสารเกษตร
ปการศกษา 2550
123
ประวตผจดท าปรญญานพนธ
ชอ นางสาวสรยา ศรสวาง รหสประจ าตว 115110462051-3
สาขาวชา/ภาควชา วศวกรรมคอมพวเตอร
วน-เดอน-ป เกด วนท 11 พฤศจกายน พ.ศ. 2532
สถานทเกด จงหวดกาญจนบร
ทอย 69/7 ม.1 ต.วงขนาย อ.ทามวง จ.กาญจนบร 71110
ประวตการศกษา มธยมศกษาตอนปลาย (ม.6) โรงเรยนวสทธรงษ ปการศกษา 2550