Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
บทท 2 ทฤษฎและวรรณกรรมทเกยวของ
2.1 ทฤษฏทเกยวของ 2.1.1 นยาม/ความหมาย 2.1.1.1 “ระบบ”การนาปจจยตางๆ อนไดแก คน (People) ทรพยากร (Resource) แนวคด (Concept) และกระบวนการ (Process) มาผสมผสานการทางานรวมกนเพอใหบรรลเปาหมายอยางใดอยางหนงตามทไดวางแผนไว โดยภายในระบบอาจประกอบไปดวยระบบยอย (Subsystem) ตางๆ ทตองทางานรวมกนเพอใหบรรลวตถประสงคเดยวกน
2.1.1.2 “เจาหนาท” คอ บคคลททาหนาทบรหารจดการนาประปาเทศบาลตาบลไคส และรวมถงผททาหนาทเกบคานาหมบานดวย
2.1.1.3 “ผใชนา” คอ ประชาชนทอยในเขตเทศบาลตาบลไคส และขอใชนาประปา
2.1.1.4 “พนกงานตดตง” คอ บคคลททาหนาทตดตงมเตอรใหกบผใชนา
2.1.2 ประวตความเปนมานาประปาในประเทศไทย
สมยกรงศรอยธยา กอนสรางเมองลพบร สมเดจพระนารายณมหาราช โปรดเกลาฯ ใหบาทหลวงชาวอตาล 2 คน ทชานาญงานระบบระบายนาคอ ฮอมส วาลกวเนรา และดาโกล พฒนานาในทะเลชบศร เชนสรางเขอนกน วางทอสงนาไปใชตามพระทนงทกแหง บานหลวงรบราชทต วดพทธศาสนาและศาสตรสถานของครสตศาสนา บานเรอนขนนาง นอกจากนาจากทะเลชบศรแลว ยงไดตอทอนานาจากซบเหลกทไหลซมออกมาจากซอกเขาหางจากตวเมองลพบร ไปทางตะวนออกเฉยงเหนอ ประมาณ 12 กโลเมตร
กาเนดคาวา “ ประปา ” พระบาทสมเดจพระจลจอมเกลาเจาอยหว เสดจประพาสยโรป 2 ครง ทรงพระราชดารวา กรงเทพฯ นาจะมนาสะอาดสาหรบดมและใช เมอวนท 16 พฤศจกายน 2440 จงทรงพระกรณาโปรดเกลาฯ ใหตราพระราชกาหนดสขาภบาลขนและจดตงกรมสขาภบาลดวย และไดวาจางชางผชานาญการประปาจากฝรงเศส ชอ นายเดอลาม โฮเตยร มาจดทาแผนงานเรองวธการทานาประปากระทรวงเกษตรธการ ซงมหนาทจดการทดนาเพอการเพาะปลก
7
และตอมานานาดบทไดดาเนนการผานขบวนการกรองสะอาดแลวกโปรดเกลาฯใหเรยก Water Supply วา “ ประปา “ จากคาภาษาสนสกฤต
แผนงานของกรมสขาภบาลเมอป 2452 ไดวางแผนวาประการแรกตองทาทขงนาทคลองเชยงราก แขวงเมองปทมธาน อนเปนบรเวณทนาทะเลหรอนาเคมขนไมถงตามฤดกาล ประการทสอง ขดคลองจากทขงนาเปนทางลงมาถงคลองสามเสน ดานทศเหนอตามแนวทางรถไฟ ตอมาเราเรยกคลองสงนา ประการทสาม ใหตงโรงสบนาดบตรงทขงนานน ซงในปจจบนเรยกวาโรงสบนาดบสาแล มความยาวจากสาแลจนถงสามเสน ประมาณ 30 กโลเมตร การดแลคลองสงนาดบ ไดจดเจาหนาทไว 7 แหงคอทสาแล, เชยงราก, รงสต, สกน, บางซอ, บางเขนและสามเสนตอมาไดตราพระราชบญญตรกษาคลอง พ.ศ.2457 ขนเปนเครองมอในการรกษาคลองสงนาตลอดจนกระทงบดนหลงจากขดคลองแลวเสรจในเดอนตลาคม พ.ศ. 2456 กจการประปาเดมดาเนนการแบบเปนระบบราชการสงกดกระทรวงมหาดไทยตอมาไดปรบปรงโดยการจดตงเปนรฐวสาหกจในเขตกรงเทพฯและปรมณฑลไดแกจงหวดสมทรปราการและนนทบรในป พ.ศ. 2510 เรยกวาการประปานครหลวง (กปน.)สวนในตางจงหวดรฐบาลไดจดตงเปนการประปาสวนภมภาค (กปภ.) เมอวนท 28 กมภาพนธ 2522 นอกจากนยงมการประปาขององคกรปกครองสวนทองถนเชนเทศบาลอบต. หมบานและประปาเอกชนมหนาทและรบผดชอบในการหานาดบมาผลตเปนนาประปาและสงจายนาประปาแกประชาชน
2.1.3 การประปาเทศบาลตาบลไคส ปจจบนการประปาของเทศบาลไคส มหมบานทใชนาประปาแหงนอย 3 หมบาน ไดแก บานคาหมน บานคาแสน และบานทาสะอาด ซงในแตละหมบานไดมอบอานาจการบรหารจดการใหเทศบาลเปนผรบผดชอบ โดยเทศบาลตาบลไคส ไดทาการแตงตงเจาหนาทประปาประจาหมบานขนมา เพอจดการในสวนของการจดบนทกเลขมาตราวดจากมเตอรนา การเกบคานาประปาในแตละเดอน จากนนจะทาการสงยอดการเกบคานาประปาประจาเดอน โดยจะทาการจดบนทกเลขมาตราวดจากมเตอรทกวนท 24-25 ของทกเดอน จากนนจะทาการคานวณคานาประปาในวนท 26-28 ของทกเดอน และจะทาการเกบเงนทกวนท 1-2 ของทกเดอน โดยจะทาการสงเงนใหเทศบาลตาบลไคสภายในวนท 3 ของทกเดอน เพอนาไปเปนคาใชจายในการผลตนาประปาของเดอนนน ๆ ผทตองการใชนาประปาตองทาการขออนมตจากทางเทศบาลตาบลไคส และเสยคาธรรมเนยมตามทเทศบาลไดกาหนดไว เนองจากประปาของเทศบาลตาบลไคสยงไมมการนาคอมพวเตอรเขามาชวยในการทางาน แตจะใชบคลากรในการจดบนทกขอมลลงในเอกสาร ปญหากคอ มการจดเกบขอมลไวในรปแบบของเอกสารทงหมดไมวาจะเปน ขอมลการขอตดตงมเตอรนา ขอมลผใชนาประปา การรบชาระเงน และขอมลการตดนาประปา ขอมลเหลานลวนแตเปนเอกสารทสาคญและจาเปนตองมการ
8
จดเกบทปลอดภย อกทงการดาเนนของทางประปาของเทศบาลตาบลไคสเปนการดาเนนงานอยางตอเนองทาใหการดาเนนงานของคณะกรรมการมความลาชาเกดปญหาของขอมลทซาซอนกนและบางครงกกอใหเกดความผดพลาดขน เนองจากไมสามารถทจะคนหาขอมลเกาได ทาใหการดาเนนงานเกดขอผดพลาดไดงาย อกทงยงเสยงตอการสญหายของขอมล เพราะเอกสารอาจมการชารดและสญหายได ดงนนผจดทาจงไดมองเหนความสาคญของการนาระบบบรหารจดการ นาประปาเทศบาลตาบลไคส อ.เมองบงกาฬ จ.บงกาฬ เขามาชวยในการจดการจดเกบขอมลตางๆ ทงน กเพอใหเกดความสะดวกในการดาเนนงาน และเพอความถกตองรวดเรวของขอมลพรอมทงยงสามารถตรวจสอบขอมลยอนหลงไดอกดวย ซงจะชวยลดความเสยงตอการสญเสยขอมลและชวยใหการดาเนนงานเปนไปอยางมประสทธภาพ และเปนไปดวยความถกตอง
2.2 ทฤษฏการวเคราะหและออกแบบ
การวเคราะหและออกแบบคอวธทใชในการสรางระบบสารสนเทศขนมาใหมในธรกจใดธรกจหนงหรอระบบยอยธรกจนอกจากการสรางระบบสารสนเทศใหมแลวการวเคราะหระบบชวยในการแกไขระบบใหดขนกไดการวเคราะหระบบกคอการหาความตองการ(Requirement) ของระบบสารสนเทศวาคออะไรหรอตองการเพมเตมอะไรเขาระบบและการออกแบบระบบกคอการนาเอาความตองการของระบบมาเปนแบบแผนหรอเรยกวาพมพเขยวในการสรางระบบนนใหใชงานไดจรงตวอยางของระบบสารสนเทศเชนระบบขายความตองการของระบบกคอความสามารถตดตามยอดขายไดเปนระยะเผอฝายบรหารสามารถปรบปรงการขายไดทนทวงจรการพฒนาระบบ(System Development Life Cycle) เปนวงจรทแสดงถงกจกรรมตางๆในแตละขนตอนตงแตเรมจนกระทงสาเรจการพฒนาระบบมอย7 ขนตอนดวยกนคอ
2.2.1 กาหนดปญหา (Problem Definition) การกาหนดปญหาเปนขนตอนของการกาหนดขอบเขตของปญหาสาเหตของปญหาจากการดาเนนงานในปจจบนความเปนไปไดกบการสรางระบบใหมการกาหนดความตองการ(Requirement) ระหวางนกวเคราะหระบบกบผใชงานโดยขอมลเหลานไดจากการสมภาษณการรวบรวมขอมลจากการดาเนนงานตางๆเพอทาการสรปเปนขอกาหนด (Requirement Specification)ทชดเจนในขนตอนนหากเปนโครงการทมขนาดใหญอาจเรยกขนตอนนวาขนตอนของการศกษาความเปนไปได
9
2.2.1.1 สรปขนตอนของการกาหนดปญหาคอ 1) รบรสภาพปญหาทเกดขนจากการดาเนนงาน 2) สรปหาสาเหตของปญหาและสรปผลยนแกผบรหารเพอพจารณา 3) ทาการศกษาความเปนไปไดในแงมมตางๆเชนดานตนทนและทรพยากร 4) รวบรวมความตองการ (Requirements) จากผทเกยวของดวยวธการตางเชนการรวบรวมเอกสารการสมภาษณการสงเกตและแบบสอบถาม 5) สรปขอกาหนดตางๆใหมความชดเจนถกตองและเปนทยอมรบทง 2 ฝาย 2.2.1.2 การศกษาความเปนไปได(Feasibility Study) หลงจากมการรวบรวมและสามารถสรปปญหาในประเดนตางๆขนตอนตอไปคอการศกษาความเปนไปไดของระบบเพอทาการตดสนใจถงความเปนไปไดของโครงการวาจะสาเรจตามเปาหมายทตองการหรอไมระบบทจะตดสนใจพฒนานควรอธบายเปนรปธรรมไดมใชเปนระบบทเพอฝนซงการพจารณาความเปนไปไดจะพจารณาในดานตางๆดงนคอ 1) ความเปนไปไดทางเทคนค(Technical Feasibility) คอความเปนไปไดของการสรางระบบใหมดวยการนาเทคโนโลยทมอยในปจจบนมาใชงานหรอการอพเกรดเครองคอมพวเตอรทมอยเดมใหมประสทธภาพสงขนหรอตดสนใจใชเทคโนโลยใหมทงหมด 2) ความเปนไปไดในการปฏบตงาน(Operational Feasibility) คอความเปนไปไดของระบบใหมทจะใหสารสนเทศทถกตองตรงตามความตองการของผใชงานการคานงถงทศนคตของผใชงานรวมทงทกษะของผใชงานกบระบบงานใหมทมการเปลยนโครงสรางการทางานใหมวาเปนทยอมรบหรอไม 3) ความเปนไปไดในเชงเศรษฐศาสตร (Economical Feasibility) คอความเปนไปไดในเชงเศรษฐศาสตรดวยการคานงถงตนทนคาใชจายในการพฒนาระบบความคมคาของระบบดวยเปรยบเทยบผลลพธทไดจากระบบกบคาใชจายทตองลงทน 2.2.1.3 การกาหนดความเปนไปได(Requirement) การกาหนดความตองการคอการรวบรวมรายละเอยดตางๆเพอจดประสงคในการหาขอสรปทชดเจนในดานความตองการ(Requirement) ระหวางผพฒนากบผใชเพอใชในขนตอนของกระบวนการการวเคราะหและออกแบบตอไป 2.2.1.4 การเกบรวบรวมขอมล ในขนตอนกอนนาไปสการวเคราะหระบบนกวเคราะหระบบจะตองรวบรวมขอมลความเปนจรงตางๆในระบบใหมากทสดเพอนามาวเคราะหระบบงานใหตรงตามวตถประสงค
10
และความตองการของผใชมากทสดมการเจาะลกในรายละเอยดซงวธการเกบรวบรวมขอมลนสามารถคนหาจากแหลงขอมลตางๆไดดงน 1) เอกสาร(Documentation) 2) แบบสอบถาม(Questionnaires) 3) การสมภาษณ(Interview) 4) การสงเกต(Observation) 2.2.2 วเคราะห (Analysis) การวเคราะหเปนขนตอนของการวเคราะหการดาเนนงานของระบบปจจบนโดยการนา Requirements Specification ทไดมาจากขนตอนแรกมาวเคราะหในรายละเอยดโดยใชอาศยการเขยนผงงานระบบ(Flowchart) เพอใหแสดงขนตอนการทางานของระบบอยางกวางๆและวเคราะหและออกแบบระบบเชงวตถ(Object-Oriented analysis and design) โดยอาศยเครองมอในการวเคราะหและออกแบบตามมาตรฐานของภาษาUML (Unified Modeling Language) โดยใชแผนผงกรณ(Use Case Diagram) แผนภาพความสมพนธระหวางคลาส(Class Diagram) แผนภาพแสดงปฏสมพนธของระบบ(Sequence Diagram) และสรางแบบจาลองความสมพนธของระบบ (ER-Diagram) เพอทราบถงรายละเอยดขนตอนการดาเนนงานในระบบวาประกอบดวยอะไรบางมความเกยวของหรอมความสมพนธกบสงใดสรปขนตอนการวเคราะห 2.2.2.1 วเคราะหระบบงานเดม 2.2.2.2 กาหนดความตองการของระบบงานใหม 2.2.2.3 สรางแบบจาลองFlowchart, Use Case Diagram, Class Diagram, Sequence DiagramและER-Diagram 2.2.2.4 สรางพจนานกรมขอมลData Dictionary 1) Flowchart คอผงงานทแสดงขนตอนการทางานในระบบโดยใชรปภาพ (Image) หรอสญลกษณ (Symbol) ทใชเขยนแทนขนตอนคาอธบายขอความหรอคาพดทใชในอลกอรทม(Algorithm) เพราะการนาเสนอขนตอนของงานใหเขาใจตรงกนระหวางผเกยวของ 2) Use Case Diagram คอแผนผงกรณทชวยทาใหเหนภาพชดเจนของปฏกรยาระหวางผใชระบบงานกบระบบสารสนเทศ 3) Class Diagram คอแผนผงแสดงความสมพนธระหวางคลาสโดยใชรปแบบความสมพนธแบบ Association, Aggregation, Composition และ Generalization 4) Sequence Diagram คอแผนผงลาดบเหตการณแสดงการกาหนดเวลาของการทารายการทเกดขนระหวางวตถหนงกบอกวตถหนง
11
5) ER-Diagram (Entity-Relationship Diagram) คอแผนผงแสดงความสมพนธระวางEntity หรอกลมขอมลซงจะแสดงชนดของความสมพนธวาเปนชนดหนงตอหนง (One to One), หนงตอหลายสง (One to Many), หรอหลายสงตอหลายสง (Many to Many)
2.2.3 ออกแบบ (Design) การออกแบบเปนขนตอนของการนาผลลพธทไดจากการวเคราะหมาสรางแบบพมพเขยวของระบบใหมตามความตองการในเอกสารความตองการของระบบกาหนดสงทจาเปนเชน InputOutput User Interfaceหรอสวนตอประสานผใชและการประมวลผลโดยการออกแบบจะเรมจากสวนของอปกรณและเทคโนโลยตางๆและโปรแกรมคอมพวเตอรทนามาพฒนาสรปขนตอนการออกแบบคอ 2.2.3.1 การออกแบบจอภาพ Input Design 2.2.3.2 การออกแบบรายงาน Output Design 2.2.3.3 การออกแบบขอมลนาเขาและรปแบบการรบขอมล 2.2.3.4 การออกแบบฐานขอมล Databases Design
2.2.4 พฒนา (Development) การพฒนาเปนขนตอนของการพฒนาโปรแกรมดวยการสรางชดคาสงหรอเขยนโปรแกรมตามทไดออกแบบไวเพอสรางระบบงานโดยโปรแกรมทใชในการพฒนาจะตองพจารณาถงความเหมาะสมกบเทคโนโลยทใชงานอยอาจใชภาษาขนสงเชน COBOL, Java, Visual Basic หรอภาษาในยคท 4 ทเรยกวา 4GL (Fourth Generation Language) ซงตดมากบ DBMS ในการสรางโปรแกรมประยกตโปรแกรมทนามาใชในการพฒนากคอ Visual Studio 2008 ซงมเครองมอทหลากหลายทกอประโยชนมากมายแกนกพฒนาอสระใหเรยนรทกษะใหมๆไดอยางรวดเรวสรปในขนตอนการพฒนาคอ 2.2.4.1 พฒนาโปรแกรมจากทไดทาการวเคราะหและออกแบบไว 2.2.4.2 เลอกภาษทเหมาะสมและพฒนาตอไดงาย 2.2.4.3 สรางเอกสารโปรแกรม
2.2.5 ทดสอบ (Testing) การทดสอบระบบเปนขนตอนของการทดสอบระบบกอนทจะนาไปปฏบตการใชงานจรงทมงานจะทาการทดสอบขอมลเบองตนกอนดวยการสรางขอมลจาลองเพอตรวจสอบการทางานของระบบหากมขอผดพลาดเกดขนกจะยอนกลบไปในขนตอนของการพฒนาโปรแกรมใหมโดยการทดสอบระบบนจะมการตรวจสอบอย 2 สวนดวยกนคอการตรวจสอบรปแบบการเขยนSyntaxและการตรวจสอบวตถประสงคงานตรงกบความตองการหรอไม
12
2.2.6 ตดตง(Implementation) ขนตอนตอมาหลงจากทไดทาการทดสอบจนมความมนใจแลววาระบบสามารถทางานไดจรงและตรงกบความตองการของผใชระบบจากนนจงดาเนนการตดตงระบบเพอใชงานจรงตอไปสรปขนตอนการตดตงคอ 2.2.6.1 กอนทาการตดตงระบบควรทาการศกษาสภาพแวดลอมของพนททจะตดตง 2.2.6.2 เตรยมอปกรณฮารดแวรและอปกรณการสอสารและเครอขายใหพรอม 2.2.6.3 ขนตอนนอาจจาเปนตองใชผเชยวชาญระบบเชนSystem EngineeringหรอทมงานทางดานTechnical Support 2.2.6.4 ลงโปรแกรมระบบปฏบตการและแอปพลเคชนโปรแกรมใหครบถวน 2.2.6.5 ดาเนนการใชงานระบบงานใหม 2.2.6.6 จดทาคมอการใชงาน
2.2.7 บารงรกษา(Maintenance) เปนขนตอนการปรบปรงแกไขระบบหลงจากทไดมการตดตงและใชงานแลวในขนตอนนอาจเกดจากปญหาของโปรแกรมBug ซงโปรแกรมเมอรจะตองรบแกไขใหถกตองหรอเกดจากความตองการของผใชงานทตองการเพมโมดลในการทางานอนๆซงทงนกจะเกยวของกบRequirement Specification ทเคยตกลงกนกอนหนาดวยดงนนในสวนงานนจะคดคาใชจายเพมหรออยางไรเปนเรองของรายละเอยดทผพฒนาหรอนกวเคราะหระบบจะตองดาเนนการกบผวาจางสรปขนตอนการบารงรกษาคอ 2.2.7.1 อาจมขอผดพลาดบางอยางทเพงคนพบตองรบแกไขโปรแกรมใหถกตองโดยดวน 2.2.7.2 ในบางครงอาจมการเพมโมดลหรออปกรณบางอยาง 2.2.7.3 การบารงรกษาหมายความรวมถงการบารงรกษาทงดานซอฟแวรและฮารดแวร (โอภาสเอยมสรวงศ.2545:40)
2.3 ทฤษฏระบบฐานขอมล
ฐานขอมล (Database) หมายถงกลมของขอมลทมความสมพนธกนนามาเกบรวบรวมเขาไวดวยกนอยางมระบบและขอมลทประกอบกนเปนฐานขอมลนนตองตรงตามวตถประสงคการใชงานขององคกรดวยเชนกนเชนในสานกงานกรวบรวมขอมลตงแตหมายเลขโทรศพทของผทมาตดตอจนถงการเกบเอกสารทกอยางของสานกงานซงขอมลสวนนจะมสวนทสมพนธกนและเปนทตองการนาออกมาใชประโยชนตอไปภายหลงขอมลนนอาจจะเกยวกบบคคลสงของสถานทหรอเหตการณใดๆกได
13
ทเราสนใจศกษาหรออาจไดมาจากการสงเกตการนบหรอการวดกเปนไดรวมทงขอมลทเปนตวเลขขอความและรปภาพตางๆกสามารถนามาจดเกบเปนฐานขอมลไดและทสาคญขอมลทกอยางตองมความสมพนธกนเพราะเราตองการนามาใชประโยชนตอไปในอนาคต
2.3.1 องคประกอบของระบบฐานขอมล ระบบฐานขอมลเปนเพยงวธคดในการประมวลผลรปแบบหนงเทานนแตการใช
ฐานขอมลจะตองประกอบไปดวยองคประกอบหลกดงตอไปน 2.3.1.1 แอพพลเคชนฐานขอมล เปนแอพพลเคชนทสรางไวใหผใชงานสามารถตดตอกบฐานขอมลไดอยาง
สะดวกซงมรปแบบการตดตอกบฐานขอมลแบบเมนหรอกราฟกโดยผใชไมจาเปนตองมความรเกยวกบฐานขอมลเลยกสามารถเรยกใชงานฐานขอมลไดเชนบรการเงนสด ATM
2.3.1.2 ระบบจดการฐานขอมล ระบบจดการฐานขอมลหมายถงกลมโปรแกรมหรอซอฟตแวรชนดหนงท
สรางขนมาเพอทาหนาทบรหารฐานขอมลโดยตรงใหมประสทธภาพมากทสดเปนเครองมอทชวยอานวยความสะดวกใหผใชสามารถเขาถงขอมลไดโดยทผใชไมจาเปนตองรบรเกยวกบรายละเอยดภายในโครงสรางฐานขอมลพดงายๆกคอ DBMS นเปนตวกลางในการเชอมโยงระหวางผใชและโปรแกรมตางๆทเกยวของกบระบบฐานขอมลตวอยางของ DBMS ทนยมใชในปจจบนไดแกMicrosoft Access, FoxPro, SQL Server, Oracle, Informix, DB2 เปนตน
1) ชวยกาหนดและเกบโครงสรางฐานขอมล (Define and Store Database Structure)
2) การเรยกใชขอมลจากฐานขอมล (Load Database) 3) เกบและดแลขอมล (Store and Maintain Data) 4) ประสานกบระบบปฏบตการ (Operation System) 5) ควบคมความปลอดภย (Security Control) 6) จดทาขอมลสารองและการก (Backup and Recovery) 7) ควบคมการใชขอมลพรอมกนได (Concurrency Control) 8) จดทาพจนานกรมขอมล (Data Dictionary) 2.3.1.3 ดาตาเบสเซรฟเวอร เปนคอมพวเตอรทคอยใหบรการการจดการฐานขอมลซงกคอเครอง
คอมพวเตอรทระบบจดการฐานขอมลทางานอยนนเองเพราะฉะนนควรเปนคอมพวเตอรทมความรวดเรวในการทางานสงกวาคอมพวเตอรทใชงานโดยทวไป
14
2.3.1.4 ขอมล คอเนอหาของขอมลทเราใชงานซงจะถกเกบในหนวยความจาของดาตาเบส
เซรฟเวอรโดยจะถกเรยกมาใชงานจากระบบจดการฐานขอมล 2.3.1.5 ผบรหารฐานขอมล คอกลมบคคลททาหนาทดแลขอมลผานระบบจดการฐานขอมลซงจะ
ควบคมใหการทางานเปนไปอยางราบรนนอกจากนยงทาหนาทกาหนดสทธการใชงานขอมลกาหนดในเรองความปลอดภยของการใชงานพรอมทงดแลดาตาเบสเซรฟเวอรใหทางานอยางปกตดวย
2.3.2 รปแบบของฐานขอมล ฐานขอมลตางๆทใชกนอยในปจจบนมหลายรปแบบขนอยกบระบบจดการฐานขอมล
นนๆวาไดถกออกแบบใหสามารถกาหนดโครงสรางฐานขอมลใหอยในรปแบบใดเชน DB2 หรอ ORACLE เปนระบบจดการฐานขอมลสาหรบฐานขอมลเชงสมพนธในขณะทระบบจดการฐานขอมล IMS (Information Management System) จะถกนามาใชกบฐานขอมลแบบลาดบขนเปนตนเพอใหเขาใจถงรปแบบฐานขอมลซงแบงไดเปน 3 ประเภทคอฐานขอมลเชงสมพนธแบบลาดบขนและแบบขายงาน
2.3.2.1 ลกษณะทดของฐานขอมล 1) นาเสนอและตอบสนองตอความตองการของผใชระบบในหลายรปแบบ
ตรงตามความตองการของผใชหลายระดบ 2) ผใชสามารถเรยกขอมลขนมาใชไดหลายวธตามความเหมาะสมของแตละ
หนวยงาน 3) มการควบคมการทางานของหนวยเกบรกษาขอมลภายในระบบทงหมด 4) ขอมลและโปรแกรมมความเปนอสระตอกน 5) มความสมบรณเชอถอไดของขอมลทเกบอยในแฟมขอมลตางๆในระบบ
ฐานขอมล 2.3.2.2 นยามและคาศพทพนฐานเกยวกบระบบฐานขอมล 1) บต (Bit) หมายถงหนวยของขอมลทมขนาดเลกทสด 2) ไบท (Byte) หมายถงหนวยของขอมลทเกดจากการนาบตมารวมกนเปน
ตวอกขระ (Character) 3) เขตขอมล (Field) หมายถงหนวยของขอมลทประกอบขนจากตว
อกขระตงแตหนงตวขนไปมารวมกนแลวไดความหมายของสงใดสงหนงเชนชอทอยเปนตน
15
4) ระเบยน (Record) หมายถงหนวยของขอมลทเกดจากการนาเอาเขตขอมลหลายๆเขตขอมลมารวมกนเพอเกดเปนขอมลเรองใดเรองหนงเชนขอมลของนกศกษา 1 ระเบยน (1 คน) จะประกอบดวย
5) แฟมขอมล (File) หมายถงหนวยของขอมลทเกดจากการนาขอมลหลายๆระเบยนทเปนเรองเดยวกนมารวมกนเชนแฟมขอมลนกศกษาแฟมขอมลลกคาแฟมขอมลพนกงาน
2.3.2.3 ระบบฐานขอมลมคาศพทตางๆทเกยวของดงน 1) เอนทต (Entity)หมายถงชอของสงใดสงหนงไดแกคนสถานทสงของ
การกระทาซงตองการจดเกบขอมลไวเชนเอนทตลกคาเอนทตพนกงาน 2) แอททรบวต (Attribute) หมายถงรายละเอยดขอมลทแสดงลกษณะ
และคณสมบตของเอนทตหนงๆเชนเอนทตนกศกษาประกอบดวย - แอททรบวทรหสนกศกษา - แอททรบวทชอนกศกษา - แอททรบวททอยนกศกษา 2.3.2.4 ความสมพนธระหวางเอนทตแบงออกเปน 3 ประเภทคอ
1) ความสมพนธแบบหนงตอหนง (One-to-one Relationships) เปนการแสดงความสมพนธของขอมลในเอนทตหนงทม
ความสมพนธกบขอมลในอกเอนทตหนงในลกษณะหนงตอหนง (1: 1) 2) ความสมพนธแบบหนงตอกลม (One-to-many Relationships) เปนการแสดงความสมพนธของขอมลในเอนทตหนงทม
ความสมพนธกบขอมลหลายๆขอมลในอกเอนทตหนงในลกษณะ (1: m) 3) ความสมพนธแบบกลมตอกลม (Many-to-many Relationships) เปนการแสดงความสมพนธของขอมลสองเอนทตในลกษณะกลม
ตอกลม (m:m) จากคาศพทตางๆทเกยวของกบระบบฐานขอมลทไดกลาวมาแลวขางตนจง
อาจใหนยามของฐานขอมลในอกลกษณะไดวา “ฐานขอมล” อาจหมายถงโครงสรางสารสนเทศทประกอบดวยหลายๆเอนทตทมความสมพนธกน
2.3.2.5 ความสาคญของการประมวลผลแบบระบบฐานขอมล จากการจดเกบขอมลรวมเปนฐานขอมลจะกอใหเกดประโยชนดงน
1) สามารถลดความซาซอนของขอมลไดการเกบขอมลชนดเดยวกนไวหลายๆททาใหเกดความซาซอน (Redundancy) ดงนนการนาขอมลมารวมเกบไวในฐานขอมลจะชวย
16
ลดปญหาการเกดความซาซอนของขอมลไดโดยระบบจดการฐานขอมล (Database Management System: DBMS) จะชวยควบคมความซาซอนไดเนองจากระบบจดการฐานขอมลจะทราบไดตลอดเวลาวามขอมลซาซอนกนอยทใดบาง
2) หลกเลยงความขดแยงของขอมลไดหากมการเกบขอมลชนดเดยวกนไวหลายๆทและมการปรบปรงขอมลเดยวกนนแตปรบปรงไมครบทกททมขอมลเกบอยกจะทาใหเกดปญหาขอมลชนดเดยวกนอาจมคาไมเหมอนกนในแตละททเกบขอมลอยจงกอใหเกดความขดแยงของขอมลขน (Inconsistency)
3) สามารถใชขอมลรวมกนไดฐานขอมลจะเปนการจดเกบขอมลรวมไวดวยกนดงนนหากผใชตองการใชขอมลในฐานขอมลทมาจากแฟมขอมลตางๆกจะทาไดโดยงาย 4) สามารถรกษาความถกตองเชอถอไดของขอมลบางครงพบวาการจดเกบขอมลในฐานขอมลอาจมขอผดพลาดเกดขนเชนจากการทผปอนขอมลปอนขอมลผดพลาดคอปอนจากตวเลขหนงไปเปนอกตวเลขหนงโดยเฉพาะกรณมผใชหลายคนตองใชขอมลจากฐานขอมลรวมกนหากผใชคนใดคนหนงแกไขขอมลผดพลาดกทาใหผอนไดรบผลกระทบตามไปดวยในระบบจดการฐานขอมล (DBMS) จะสามารถใสกฎเกณฑเพอควบคมความผดพลาดทเกดขน 5) สามารถกาหนดความเปนมาตรฐานเดยวกนของขอมลไดการเกบขอมลรวมกนไวในฐานขอมลจะทาใหสามารถกาหนดมาตรฐานของขอมลไดรวมทงมาตรฐานตางๆในการจดเกบขอมลใหเปนไปในลกษณะเดยวกนไดเชนการกาหนดรปแบบการเขยนวนทในลกษณะวน/เดอน/ปหรอป/เดอน/วนทงนจะมผทคอยบรหารฐานขอมลทเราเรยกวาผบรหารฐานขอมล (Database Administrator: DBA) เปนผกาหนดมาตรฐานตางๆ
6) สามารถกาหนดระบบความปลอดภยของขอมลไดระบบความปลอดภยในทนเปนการปองกนไมใหผใชทไมมสทธมาใชหรอมาเหนขอมลบางอยางในระบบผบรหารฐานขอมลจะสามารถกาหนดระดบการเรยกใชขอมลของผใชแตละคนไดตามความเหมาะสม
7) เกดความเปนอสระของขอมลในระบบฐานขอมลจะมตวจดการฐานขอมลททาหนาทเปนตวเชอมโยงกบฐานขอมลโปรแกรมตางๆอาจไมจาเปนตองมโครงสรางขอมลทกครงดงนนการแกไขขอมลบางครงจงอาจกระทาเฉพาะกบโปรแกรมทเรยกใชขอมลทเปลยนแปลงเทานนสวนโปรแกรมทไมไดเรยกใชขอมลดงกลาวกจะเปนอสระจากการเปลยนแปลง
17
2.3.3 Normalization
ในการออกแบบฐานขอมลจะเหนวาขนตอนแรกนนผออกแบบตองเกบรวบรวมขอมลทงหมดทจะนามาใชในฐานขอมลขอมลเหลานอาจอยในรปเอกสารตางๆทเกบรายละเอยดทงหมดไวดวยกนซงบางครงอาจมขอมลทซบซอนหรอซาซอนมากเกนไปจงเปนรปแบบทไมเหมาะตอการนามาใชงานในระบบฐานขอมลเชงสมพนธซงมโครงสรางขอมลแบบเทเบลจงไดเกดทฤษฎการทาNormalization เพอปรบโครงสรางขอมลใหอยในรปแบบปกต (Normal Form) ทงายตอการนาไปใชงานและมปญหานอยทสดไมวาจะเปนปญหาการซาซอนของขอมลหรอปญหาความผด-ปกตทอาจเกดขนเมอมการเปลยนแปลงแกไขขอมล (Update anomaly) ประโยชนของการ Normalization - เปนเครองมอทชวยในการออกแบบฐานขอมลเชงสมพนธ - ทาใหทราบวารเลชนทออกแบบมานน กอใหเกดปญหาหรอไมและดานใดบาง - ถารเลชนทออกแบบมานนกอใหเกดปญหาจะมวธแกไขอยางไร - เมอแกไขแลวอาจรบประกนไดวารเลชนนนจะไมมปญหาอกหรอถามกลดนอยลง 2.3.3.1 การเขยนผงงาน (Flowchart) ผงงานคอแผนภาพทมการใชสญลกษณรปภาพและลกศรทแสดงถงขนตอนการทางานของโปรแกรมหรอระบบทละขนตอนรวมไปถงทศทางการไหลของขอมลตงแตแรกจนไดผลลพธตามทตองการ 1) ประโยชนของผงงาน 1.1) ชวยลาดบขนตอนการทางานของโปรแกรมและสามารถนาไปเขยนโปรแกรมไดโดยไมสบสน 1.2) ชวยในการตรวจสอบและแกไขโปรแกรมไดงายเมอเกดขอผดพลาด 1.3) ชวยใหการดดแปลงแกไขทาไดอยางสะดวกและรวดเรว 1.4) ชวยใหผอนสามารถศกษาการทางานของโปรแกรมไดอยางงายและรวดเรวมากขน 2) วธการเขยนผงงานทด 1.1) ใชสญลกษณตามทกาหนดไว 1.2) ใชลกศรแสดงทศทางการไหลของขอมลจากบนลงลางหรอจากซายไปขวาคาอธบายในภาพควรสนกะทดรดและเขาใจงาย 1.3) ทกแผนภาพตองมลกศรแสดงทศทางเขา – ออก
18
1.4) ไมควรโยงเสนเชอมผงงานทอยไกลมากๆควรใชสญลกษณจดเชอมตอแทน 1.5) ผงงานควรมการทดสอบความถกตองของการทางานกอนนาไปเขยนโปรแกรม
2.4 ทฤษฏฐานขอมล
ระบบฐานขอมล (Database System) หมายถง โครงสรางสารสนเทศทประกอบดวยรายละเอยดของขอมลทเกยวของกนทจะนามาใชในระบบตางๆรวมกนระบบฐานขอมลจงนบวาเปนการจดเกบขอมลอยางเปนระบบซงผใชสามารถจดการกบขอมลไดในลกษณะตางๆทงการเพม การแกไขการลบ ตลอดจนการเรยกดขอมล ซงสวนใหญจะเปนการประยกตนาเอาระบบคอมพวเตอรเขามาชวยในการจดการฐานขอมล การจดเกบฐานขอมล เปนการนาเอาฐานขอมลมาจดเกบรวมกนภายใตฐานขอมลเดยวกน ซงสามารถใชขอมลและสามารถแกไขปญหาทเกดขนในระบบแฟมขอมลไดขอมลตางๆ ทถกจดเกบฐานขอมลจะเปนฐานขอมลทสมพนธกนและเปนขอมลทสนบสนนการดาเนนงานขององคกร จงกลาวไดวา ฐานขอมลแตละฐานจะเทยบเทากบแฟมขอมล 1 ระบบและจะเรยกฐานขอมลททาขนเพอสนบสนนการดาเนนงานอยางใดอยางหนงนนวา “ระบบฐานขอมล” (Database System)
2.4.1 ฮารดแวร ในคอมพวเตอรหลายขนาดตงแตระดบพซมนคอมพวเตอรจนถงเครองระดบเมนเฟรมนอกจากนขนาดของหนวยความจาซพยระบบเนตเวรกกมสวนสมพนธกบความเรวในการทางานของฐานขอมลดวย
2.4.2 ซอฟแวร ทเกยวของกบฐานขอมลม 3 ประเภทคอ 2.4.2.1 ซอฟแวรOS (Operating System Software) OS ทสามารถตดตงฐานขอมลไดใน Microsoft Windows 2010 เชนWindowsXP, WindowsNT, Windows 7หรอ OS แบบ UNIXเปนตน 2.4.2.2 ซอฟแวรของระบบจดการฐานขอมล (DBMS Software) คอซอฟแวรทจดการเกยวกบฐานขอมลทผลตจากบรษทตางๆไดแก Oracle, SQL Server เปนตน 2.4.2.3 ซอฟตแวรทชวยในการพฒนาโปรแกรมซงใชขอมลจากฐานขอมล ไดแก Delphi, Visual Basic เปนตนโดยซอฟตแวรเหลานจะจดการกบขอมลไดและทาใหเกดความคลองตวในการทางานยงขน เพราะผพฒนาสามารถออกแบบโปรแกรมเพอสรางหนาจอสาหรบนา
19
ขอมลเขาสามารถใสเงอนไขทซบซอนในการคานวณรวมทงการจดรปแบบรายงานทสวยงามตามตองการได
2.4.3 บคลากร สามารถแบงบคลากรททาหนาทเกยวกบฐานขอมลและเรยกใชขอมลไดดงน (สมจตรอาจอนทร,งามนจอาจอนทร, 2549) 2.4.3.1 ผใชงาน (User) เปนบคคลทนาสารสนเทศ (information) ทไดจาก ระบบฐานขอมลไปใช เพอการวางแผนหรอการตดสนใจในธรกจขององคกรหรอ เพอการทางานอยางใดอยางหนง ซงผใชงานนอาจเปนผไมมความรเกยวกบระบบคอมพวเตอรมากนกกได แตสามารถทราบขนตอนการคนหาขอมลจากฐานขอมลและการสามารถใชโปรแกรมประยกตทนกเขยนโปรแกรมเขยนขนเพอแกไขขอมลหรอดขอมลบางสวนได 2.4.3.2 ผพฒนาฐานขอมล (Developer) เปนผทมหนาทความรบผดชอบในการออกแบบและเขยนโปรแกรมจดการกบฐานขอมลรวมไปถงการบารงรกษาระบบฐานขอมลใหสามารถใชงานไดอยางราบรนไมมปญหาบคคลทดแลดานนไดแก 2.4.3.3 ผบรหารและจดการฐานขอมล (Database Administrators หรอ DBA) คอ บคคลททาหนาทบรหารและควบคมการบรหารงานของระบบฐานขอมลทงหมดเปนผทจะตองตดสนใจวาจะรวบรวมขอมลอะไรเขาสระบบจดเกบโดยวธใดเทคนคการเรยกใชขอมลกาหนดระบบการรกษาความปลอดภยของขอมลการสรางระบบขอมลสารองการกและประสานงานกบผใชวาตองการใชขอมลอยางไรรวมถงนกวเคราะหและออกแบบระบบและโปรแกรมเมอรประยกตใชงานเพอใหการบรหารการใชงานเปนไปอยางมประสทธภาพ 2.4.3.4 นกเขยนโปรแกรม (Programmer) คอเปนผทาหนาทเขยนโปรแกรมประยกตใชงานตางๆเพอใหการจดเกบการเรยกใชขอมลเปนไปตามความตองการของผใช 2.4.3.5 นกวเคราะหและออกแบบระบบ (System Analyst) เปนบคลากรททาหนาทวเคราะหระบบฐานขอมลและออกแบบระบบงานทจะนามาใช 2.4.3.6 ผปฏบตการ (Operator) คอเปนผปฏบตการดานการประมวลผลการปอนขอมลลงเครองคอมพวเตอร
2.4.4 กระบวนการ (Process) ไดแก การกาหนดมาตรการและกฎระเบยบตางๆ ในการใชงานฐานขอมล ทงนเพอปองกนความผดพลาดอนจะเกดขนไดจากการหลงลม เชน กระบวนการในการแบคอพควรจะกาหนดวนเวลาและระบบทตองทาการแบคอพวาจะทาอยางไรเมอไรความถในการแบคอพเปนอยางไร เปนตน หรอในดานการตรวจสอบและตดตามความถกตองของขอมลรวมถง อนฟอรเมชนทไดจากฐานขอมลควรมการตดตามและตรวจสอบเปนระยะเพอปองกนความผดพลาดของขอมล
20
2.4.5 ขอมล (Data) ไดแกขอมลรวมทงวธการในการรวบรวมและจดเกบขอมลลงฐานขอมลซงการจดเกบรวบรวมขอมลนเพอใหเปนศนยกลางขอมลอยางเปนระบบซงขอมลเหลานสามารถใชรวมกนไดผใชขอมลในระบบฐานขอมลจะมองภาพขอมลในลกษณะทแตกตางกนเชนผใชบางคนมองภาพของขอมลทถกจดเกบไวในสอเกบขอมลจรง (Physical Level) ในขณะทผใชบางคนมองภาพขอมลจากการใชงานของผใช( External Level ) ระบบการจดการฐานขอมล หรอมกเรยกยอๆวา DBMS คอ โปรแกรมทใชเปนเครองมอในการจดการฐานขอมล ซงประกอบดวยฟงกชนหนาทตางๆ ในการจดเกบขอมล รวมทงภาษาทใชทางานกบขอมล โดยมกจะใชภาษาSQLในการโตตอบระหวางกนกบผใช เพอใหสามารถทาการกาหนดการสราง การเรยกด การบารงรกษาฐานขอมล รวมทงการจดการควบคม การเขาถงฐานขอมล ซงถอเปนการปองกนความปลอดภยในฐานขอมลเพอปองกนมใหผทไมมสทธการใชงานเขามาละเมดขอมลทเปนศนยกลางไดนอกจากน DBMS ยงมหนาทในการรกษาความมนคงและความปลอดภยของขอมล การสารองขอมลและการเรยกคนขอมลในกรณทขอมลเกดความเสยหาย
2.4.6 สวนประกอบของ DBMS 2.4.6.1 ภาษา SQL (Structured Query Language) เปนภาษาทรปแบบเปนภาษาองกฤษงายตอการเรยนรและการเขยนโปรแกรมซงเปนภาษาทมอยใน DBMS หลายตวมความสามารถใชนยามโครงสรางตารางภายในฐานขอมลการจดการขอมลรวมไปถงการควบคมสทธการใชงานฐานขอมล SQL จะประกอบดวยภาษา 3 รปแบบดวยกนแตละแบบกจะมหนาทเฉพาะแตกตางกนไปดงตอไปน
ภาพท 2-1 แสดงโครงสรางของภาษา SQL
ภาษา SQL (Structured Query Language)
ภาษานยามขอมล (DDL) CREATE ALTER DROP
ภาษาจดการขอมล (DML) SELECT
UPDATE
INSERT
DELETE
ภาษาควบคม (CL) GRANT REVOKE
21
2.4.6.2 ภาษาสาหรบนยามขอมล(Data Definition Language – DDL) เปนภาษาทใชนยามโครงสรางของฐานขอมลเพอทาการสรางเปลยนแปลงหรอยกเลกโครงสรางของฐานขอมล ตามทไดออกแบบไวซงโครงสรางของฐานขอมลนจะสามารถเรยกไดอกอยางวาสคมา (Schema) ดงนน DLL จงเปนภาษาทใชในการสรางสคมานนเองตวอยางเชน จะเปนการกาหนดวาฐานขอมลทสรางมชอวาอะไรมโครงสรางทประกอบดวยตารางทชออะไรบางแตละตารางประกอบดวยเขตขอมลใดบางเขตขอมลแตละตวมประเภทของขอมลเปนอะไรมความกวางของขอมลเทาใดแตละตารางมการอนเดกซ (INDEX) ชวยในการคนหาขอมลหรอไมถามจะใชเขตขอมลใดบางทเปนคยเปนตน ตวอยางของภาษา DDL เชน 1) คาสงการสราง (CREATE) ไดแก การสรางตารางและการสรางดชน 2) คาสงเปลยนโครงสรางตาราง (ALTER) 3) คาสงยกเลก (DROP) ไดแกการยกเลกโครงสรางตาราง การยกเลกโครงสรางดชน 2.4.6.3 ภาษาสาหรบการจดการขอมล(Data Manipulation Language-DML) องคประกอบของภาษาในรปแบบท 2 ของภาษา SQL ซง DML เปนภาษาทใชจดการขอมลภายในตารางของฐานขอมล ตวอยางของภาษา DML เชน 1) คาสงการเรยกคนระเบยนขอมล (SELECT) 2) คาสงการเพมระเบยนขอมล (INSERT) 3) คาสงการเปลยนแปลงระเบยนขอมล (UPDATE) 4) คาสงลบระเบยนขอมล (DELETE) 2.4.6.4 ภาษาสาหรบการควบคมขอมล (Data Control Language-DCL) เปนสวนของภาษาทใชควบคมความถกตองของขอมลและควบคมความปลอดภยของขอมลทาการปองกนการเกดเหตการณท User หลายคนเรยกใชขอมลพรอมกนโดยจะทาหนาทควบคมความถกตองของการใชขอมลและทาลาดบการใชขอมลของ User แตละคนและตรวจสอบสทธในการใชขอมลนนๆ 1) GRANT คอ การใหสทธในการเขาถงขอมล 2) REVOKE คอ การยกเลกสทธในการเขาถงขอมล
2.4.7 หนาทของ DBMS 2.4.7.1 ทาหนาทแปลงคาสงทใชจดการเกยวกบขอมลภายในฐานขอมลใหอยในรปแบบทฐานขอมลเขาใจ
22
2.4.7.2 ทาหนาทในการนาคาสงตางๆซงไดรบการแปลแลวไปสงใหฐานขอมลทางานเชนการเรยกใชขอมลการจดเกบขอมลการลบขอมลการเพมขอมล เปนตน 2.4.7.3 ทาหนาทปองกนความเสยหายทจะเกดขนกบขอมลภายในฐานขอมล โดยจะตรวจสอบวาคาสงใดทสามารถทางานไดและคาสงใดทไมสามารถทางานได 2.4.7.4 ทาหนาทรกษาความสมพนธของขอมลภายในฐานขอมลใหมความถกตองอยเสมอ 2.4.7.5 ทาหนาทเกบรายละเอยดตางๆทเกยวของกบขอมลภายในฐานขอมล 2.4.7.6 ทาหนาทควบคมใหฐานขอมลทางานไดอยางถกตองและมประสทธภาพ
2.4.8 ประโยชนของฐานขอมล 2.4.8.1 สามารถลดความซาซอนของขอมลโดยไมจาเปนตองจดเกบขอมลทซาซอนกนไวในระบบแฟมขอมลของแตละหนวยงานเหมอนเชนเดมแตสามารถนาขอมลมาใชรวมกนได 2.4.8.2 สามารถหลกเลยงความขดแยงของขอมลเนองจากไมตองจดเกบขอมลทซาซอนกนในหลายแฟมขอมลดงนนการแกไขขอมลในแตละชดจะไมกอใหเกดคาทแตกตางกนได 2.4.8.3 แตละหนวยงานในองคกรสามารถใชขอมลรวมกนได 2.4.8.4 สามารถกาหนดใหขอมลมรปแบบทเปนมาตรฐานเดยวกนไดเพอใหผใชขอมลในฐานขอมลชดเดยวกนสามารถเขาใจและสอสารถงความหมายเดยวกน 2.4.8.5 สามารถกาหนดระบบความปลอดภยใหกบขอมลไดโดยกาหนดระดบความสามารถในการเรยกใชฐานขอมลของผใชแตละคนใหแตกตางกนตามความรบผดชอบ 2.4.8.6 สามารถรกษาความถกตองของขอมลไดโดยระบกฎเกณฑในการควบคมความผดพลาด ทอาจเกดขนจากการปองขอมลผด 2.4.8.7 สามารถตอบสนองตอความตองการใชขอมลในหลายรปแบบ 2.4.8.8 ทาใหขอมลเปนอสระจากโปรแกรมทใชงานขอมลนนซงสงผลใหผพฒนาโปรแกรมสามารถแกไขโครงสรางของขอมลโดยไมกระทบตอโปรแกรมทเรยกใชงานขอมลนน
2.5 ทฤษฎเกยวกบการเขยนแผนภาพแสดงการทางานของระบบ
2.5.1 ผงงาน (Flowchart) คอแผนภาพซงแสดงลาดบขนตอนของการทางานโดยแตละขนตอนจะถกแสดงโดยใชสญลกษณซงมความหมายบงบอกวาขนตอนนนๆมลกษณะการทางานแบบใดและแตละขนตอนจะถกเชอมโยงกนดวยลกศรเพอแสดงลาดบการทางานทาใหงายตอการทาความเขาใจวาในการทางานนนๆมขนตอนอะไรบางและมลาดบอยางไร
23
2.5.1.1 Flowchartหรอผงงานโครงสราง คอเครองมอทใชแสดงขนตอนการทางาน (Algorithm) ของระบบงานใดๆในงานคอมพวเตอรมหลายอยางและเครองมอทนยมใชกนมากกคอผงงานโครงสราง(Structured Flowchart) และคาสงเทยม (Pseudo Code) ซงเครองมอทใชเหลานผพฒนาระบบงานสามารถนาไปแปลงเปนชดคาสงตามรปแบบไวยากรณ (Syntax) ของภาษาคอมพวเตอร 2.5.1.2 ประเภทของผงงาน ผงงานทางคอมพวเตอรม 2 ประเภทคอผงงานระบบ(System Flowchart) และผงงานโปรแกรม(Program Flowchart) 1) ผงงานระบบ(System Flowchart) ผงงานระบบจะเปนการแสดงใหเราเหนวาในระบบหนงๆนนมขนตอนในการทางานอยางไรซงจะมองเหนในลกษณะภาพกวางๆของระบบแตจะไมเจาะลกลงไปวาในระบบวาในแตละงานนนมการทางานอยางไรคอจะใหเหนวาจดเรมตนของงานเรมจากสวนใดเปนขอมลแบบใดมการประมวลผลอยางไรและจะไดผลลพธเปนอยางไรและเกบอยทใด 2) ผงงานโปรแกรม (Program Flowchart) ผงงานโปรแกรมหรอเรยกสนๆวาผงงานจะเปนผงงานทแสดงใหเหนถงลาดบขนตอนในการทางานของโปรแกรมตงแตการรบขอมลการประมวลผลตลอดจนผลลพธทไดจะทาใหเขยนโปรแกรมไดสะดวกขนซงผงงานชนดนอาจสรางมาจากผงงานระบบโดยดงเอาจดทเกยวของกบคอมพวเตอรมาวเคราะหวาจะใชทางานสวนใดเพอทจะใหไดมาซงผลลพธทตองการ 2.5.1.3 ประโยชนของผงงาน 1) ทาใหมองเหนรปแบบของงานไดทงหมดโดยใชเวลาไมมาก 2) การเขยนผงงานเปนสากลสามารถนาไปเขยนโปรแกรมไดทกภาษา 3) สามารถตรวจสอบขอผดพลาดของโปรแกรมไดอยางรวดเรว 4) หากมการพฒนาระบบงานในลาดบตอไปสามารถทาไดอยางรวดเรวโดยศกษาจากผงงานจะสามารถศกษาไดอยางรวดเรวและเขาใจงายกวาการศกษาจากโปรแกรม
2.5.2 ผงงานโครงสราง (Structured Flowchart) จะเปนเครองมอ (Tools) ทใชอธบายรายละเอยดการทางานตามขนตอนการทางาน (Algorithm)โดยใชสญลกษณ(Symbol)แทนคาสงใชขอความ(Statement)ในสญลกษณแทนตวแปรและตวดาเนนการทางการคานวณและการเปรยบเทยบอกทงยงแสดงความสมพนธของการทางานตางๆอยางเปนลาดบขนตอนโดยสามารถแบงลกษณะของความสมพนธเปนรปแบบตางๆไดแกการทางานแบบมลาดบการทางานแบบใหเลอกทาและการทางานแบบทาซาในเงอนไขตางๆโดยทสามารถสรปรายละเอยดของสญลกษณทสาคญและทนยมใชงานบอยๆไดดงน
24
ตารางท 2-1 แสดงสญลกษณในการเขยนผงงานโปรแกรม
สญลกษณ ความหมาย การทางาน
แสดงการเรมตนหรอ การสนสดของผงงาน
เรมผงงานและจบผงงาน
รบหรอแสดงขอมลโดย ไมระบชนดของอปกรณ
รบคา a โดยไมระบอปกรณ และแสดงคา a โดยไมระบอปกรณ
ปอนขอมลดวยคยบอรด
ปอนคา a ทางคยบอรด
แสดงผลลพธทางจอภาพ
แสดงคา a ทางจอภาพ
การคานวณหรอ การกาหนดคา
1.คานวณคา B+C แลว เกบผลลพธไวท A 2. กาหนดคา Num = 5
แสดงขอมลหรอผลลพธ ทางเครองพมพลงบน กระดาษ
พมพคา a ทางกระดาษ
การเปรยบเทยบ การตดสนใจ
เปรยบเทยบ X > 5 หรอไม
เสนแสดงทศทางการทางาน
ประมวลผลแลว ตอดวยการแสดงผล
25
2.5.3 Use Case Diagram หรอแผนผงกรณ เปนแผนภาพทมจดประสงคเพออธบายเรองราวหรอกระบวนการดาเนนงานของระบบภายใน Problem Domain ทเราสนใจวามกจกรรมการดาเนนงานภายในระบบอะไรบางและมความสมพนธเกยวของกบผใชงานหรอสงเกยวของภายนอกอะไรบางเชนระบบการแจงหน มความเกยวของกนกบพนกงานและสมาชกโดยพนกงานทาหนาทแจงหนไปยงสมาชกเปนตน
ภาพท 2-2 แสดงแผนภาพ Use Case Diagram
2.5.3.1 องคประกอบของ Use Case Diagram 1) Use Case เปนสญลกษณแทนขนตอนหรอกจกรรมการทางานตางๆภายในระบบงานทเราสนใจศกษาซงอาจจะเปนการทาหนาททางธรกจอยางใดอยางหนงหรอการประมวลผลธรกจใดธรกจหนงเชนระบบขายตวภาพยนตรประกอบไปดวยกจกรรมยอยคอการจองตวและการขายตวฉะนน Use Case ของระบบขายตวกคอ Use Case จองตวและ Use Case ขายตวนนเอง 1.1) หลกการสราง Use Case 1.1.1) สญลกษณของ Use Case แทนดวยรปวงรเขยนชอ Use Case ภายในวงรหรอดานลางวงรกได 1.1.2) ชอ Use Case ตองเปนคากรยาเทานนและควรใชชอทสนและกะทดรดไดใจความเชนตรวจสอบสมาชก,ขายสนคาหรอเชาหนงสอซงเปนชอกจกรรมหามมคาวา”การ” นาหนาเดดขาด
ภาพท 2-3 สญลกษณ Uce Case
Actor1 UseCase1 Actor2
UseCase2
<<include>>
UseCase1
26
2) ผแสดง (Actor) เปนสงทอยนอกขอบเขตของระบบแตมความสมพนธกบระบบและมอทธพลตอระบบในรปแบบหนงActor อาจจะหมายถงคนหนวยงานเครองจกรอปกรณหรอผคนทอยในองคกรกได 2.2) หลกการสราง Actor 2.2.1) สญลกษณของ Actor แทนดวยรปคนเขยนชอแทน Actor ไวใตภาพ 2.2.2) ชอ Actor ตองเขยนเปนคานามตามสทธของผใชงานเชนลกคา, พนกงาน, ตเอทเอมเปนตน
ภาพท 2-4 สญลกษณ Actor
3) เสนเชอมความสมพนธ (Communication Flow)เปนเสนตรงทใชอธบายความสมพนธระหวาง Actorและ Use Case มอย 5 แบบคอ 3.1) Association
AssociationเปนเสนตรงแสดงความสมพนธแบบเกยวของกนหรอมปฏกรยาระหวางกนของActor และ Use Case สญลกษณแทนความสมพนธแบบ Association คอเสนตรงแบบมหวลกศรและไมมหวลกศร
ภาพท 2-5 เสนตรง Association แบบมหวลกศร
ภาพท 2-6 เสนตรง Association แบบไมมหวลกศร 3.2) Generalization/Specification เราใช Generalization/Specification ในการแสดงความสมพนธในเชงจาแนกแยกแยะประเภทของ Use Case
Actor1
27
ตวอยาง Use Case และความสมพนธระหวางUse Caseทจาลองเหตการณ “การตรวจสอบความถกตองของผใชระบบสามารถกระทาไดหลายๆวธไดแกการตรวจสอบจาก Password และการตรวจสอบจากลายนวมอ
ภาพท 2-7 แสดงความสมพนธของยสเคสแบบ Generalization 3.3) Include เปนรปแบบความสมพนธระหวางUse Caseสอง Use Caseโดย Use Caseททาหนาทเปนกจกรรมหลกของระบบเรยกวา Base Use Caseและ Use Caseททาหนาทเปนกจกรรมเสรมทนอกเหนอจากสงทกจกรรมหลกตองทาเรยกวา Include Use Case
ภาพท 2-8 แสดงความสมพนธของยสเคสแบบ Include Use Case
IncludeUse Case เปนกจกรรมเสรมทจาเปนตอการทางานของกจกรรมของกจกรรมหลกถาไมทาIncludeUse Caseแลว Base Use Caseจะไมสามารถดาเนนงานไดสญลกษณทแสดงความสมพนธแบบ Include คอเสนตรงเปนเสนประมหวลกศรชไปหาIncludeUse Case ดานบนเสนตรงเขยนคากากบดวยคาวา<<Include>>
UseCase1
UseCase2 UseCase3
UseCase1
UseCase2
<<Include>>
28
3.4) Extend เปนรปแบบความสมพนธกรณท Use Caseดาเนนกจกรรมของตนเองไปตามปกตแตอาจจะมเงอนไขหรอสงกระตนบางอยางทสงผลใหกจกรรมตามปกตของ Use Case นนถกรบกวนจนเบยงเบนไป Use Caseทถกรบกวนหรอกระตนวา “Base Use Case” และUse Caseทเปนตวรบกวนหรอกระตนเรยกวา Base Use Case“Extending Use Case”
ภาพท 2-9 แสดงความสมพนธของยสเคสแบบ Extend Use Case
3.5) Realization RealizationเปนความสมพนธระหวางUse Case กบ Collaboration จดประสงคของ Realization คอแสดงความเฉพาะเจาะจงหรออธบายรายละเอยดสญลกษณทใชแทนคอเสนตรงมหวลกศรและม Stereotype เปน<<Realize>>ลากจาก Collaborationไปยง Class สญลกษณแทน Collaboration คอวงรเสนขอบเปนเสนประ
ภาพท 2-10 แสดงความสมพนธของยสเคสแบบ Realization
Extension Point
UseCase1
<<Extend>>
UseCase1
UseCase4
<<Realize>>
29
2.5.3.2 หลกการสราง Use Case Diagram - ในการสรางยสเคสใหเรมตนโดยการพจารณาจากขอมลตางๆทเกบรวบรวมในชวงของการสรางแบบจาลองความตองการจดมงหมายคอการกาหนดตวแสดงและกาหนดกจกรรมยอยๆทเกดในระบบงานทเราสนใจศกษา - การกาหนดผแสดงหรอ Actor นนจะตองพจารณาดวยวา Actor ใดทสามารถทาการจาแนกประเภทโดยใชความสมพนธแบบGeneralization ไดบาง - กาหนด Use Caseของระบบงานทเราศกษาอยไมควรจะมากจนเกนไปควรเขยนใหไดพอดกบหนงหนากระดาษและกจกรรมเสรมไมวาจะเปน Include Use Case และ Extending Use Case กไมควรมากเกนไปเชนกน - ทก Use Case จะตองมเสนเชอมโยงความสมพนธระหวาง Use Case กบ Actor เสมอและความสมพนธระหวาง Use Case2Use Case ตองเปนแบบ Include หรอ Extending หรอ Realization และ Generalization เทานน 2.5.3.3 การวางตาแหนงแผนภาพ Use Case Diagram - Actor ผกระตนใหเกดกจกรรมหลกจะตองวางไวดานซายของแผนภาพและActor ผตอบสนองตอกจกรรมหลกนนตองวางดานขวามอของแผนภาพ - Use Caseทเปนกจกรรมหลกใหวางไวตรงกลางของแผนภาพในแนวตงตามลาดบการทางานของกจกรรมในระบบ - Use Caseทเปนกจกรรมเสรมใหวางไวดานขวาของ Use Caseทเปนกจกรรมหลก - การวาง Use Case อยาวางใหซบซอนและดวนวาย 2.5.4 คาอธบายยสเคสไดอะแกรม (Use Case Documentation) คอการเขยนอธบายการทางานในแตละ Use Case อยางละเอยดเพอใหเปนตวกลางในการสอสารกนระหวางผวเคราะหระบบกบผพฒนาโปรแกรม 2.5.4.1. Use Case ID คอหมายเลขลาดบของกจกรรม 2.5.4.2. Use Case Name ชอของยสเคส 2.5.4.3. Actor คอชอของผแสดงทมความสมพนธในยสเคสทถกอธบาย 2.5.4.4. Purpose คอจดประสงคของการทาแตละยสเคส 2.5.4.5. Level คอประเภทของยสเคสม 3 ประเภทคอ Base Use Case, Include Use Case,Extend Use Case 2.5.4.6. Pre Conditions คอเงอนไขหรอสงทจะตองทากอนทจะเกดยสเคส 2.5.4.7. Post Conditions คอสงทเกดขนหลงจากทายสเคสเสรจสนแลว
30
2.5.4.8. Main Flows คอขนตอนการทางานของยสเคส 2.5.4.9. Alternate Condition คอเหตการณทอาจเกดขนไดแลวสงผลให Use Case นไมสามารถดาเนนกจกรรมตอไปได ตารางท 2-2 แสดงตวอยาง Use Case Documentation
Use Case ID 1 Use Case Name สมครสมาชก Actor ประชาชน , เจาหนาท Purpose เพอทาการสมครสมาชกใหแกประชาชน Level Base Use Case Pre Conditions หลกฐานประกอบการสมครครบถวน Post Conditions ประชาชนไดรบบตรสมาชก Main Flows 1. ประชาชนแจงความตองการสมครสมาชก
2. เจาหนาทตรวจสอบการเปนสมาชก 2.1 หากเคยเปนสมาชกแลวแตบตรสมาชกหมดอาย เจาหนาทจะตออายบตรให 2.2 หากตรวจสอบแลวไมเคยเปนสมาชกจะทาการสมครสมาชกใหหลกฐานการสมครตองครบถวน 3. ประชาชนไดรบบตรสมาชก
Alternate Condition หลกฐานประกอบการสมครไมครบถวน
2.5.5 Class Diagram หรอแผนภาพแสดงความสมพนธของคลาส เปนแผนภาพทใชแสดงคลาสและความสมพนธระหวางคลาสในแงตางๆสวนประกอบภายในคลาสประกอบดวยชอคลาส แอททบวท (Attributes) และเมทธอด (Methods)
ภาพท 2-11 แสดงสญลกษณของคลาส
ชอคลาส
Attribute
Method
31
ภาพท 2-12 ตวอยางคลาสไดอะแกรม
2.5.5.1 รปแบบความสมพนธระหวางคลาสม 4 รปแบบดงน
1) ความสมพนธแบบ Generalization
ภาพท 2-13 แสดงความสมพนธของคลาสแบบ Generalization
2) ความสมพนธแบบ Aggregation
ภาพท 2-14 แสดงความสมพนธของคลาสแบบ Aggregation
Class2
Class1
Class3
Class2
Class1
Class3
Staff
-No : integer -Name : String
+getName() : String
32
3) ความสมพนธแบบ Composition
ภาพท 2-15 แสดงความสมพนธของคลาสแบบ Composition
4) ความสมพนธแบบ Association
ภาพท 2-16 แสดงความสมพนธของคลาสแบบ Association
2.5.6 Sequence Diagram หรอซเควนไดอะแกรม เปนแผนภาพทแสดงใหเหนถงการมปฏสมพนธกนระหวางออบเจคของคลาสทอยในคลาสไดอะแกรมโดยเนนการสงขาวสาร (Massage) ระหวางออบเจคตามลาดบเหตการณทเกดขนในระบบองคประกอบของซเควนไดอะแกรม 2.5.6.1. Actor คอผทเกยวของกบระบบในแตละกจกรรม 2.5.6.2. ออบเจค คอออบเจคทตองตอบสนองตอ Actor ในแตละกจกรรม 2.5.6.3. Lifeline คอเสนแสดงชวตหรออายขยของแตละออบเจค 2.5.6.4. Activation คอการทางานตางๆทออบเจคตองการกระทา 2.5.6.5. Message คอขาวสารหรอคาสงทออบเจคหนงสงไปใหอกออบเจคหนงกระทาการบางอยางตามทไดรบ Massage ซงอาจจะมการสง Massage กลบหรอไมกได
Class2
Class1
Class1 Class2
33
ภาพท 2-17 แสดงซเควนไดอะแกรม
2.5.6.6 Messageทใชในซเควนไดอะแกรมม 6 ประเภทดงน 1) Call Message เปน Message ทออบเจคผสงเรยกใชเมทธอดของออบเจคผรบใชสญลกษณเสนตรงมหวลกศร 2) Return Message เปน Message ทใชสงขอมลหรอผลลพธทถกรองขอจากออบเจคผรบกลบไปยงออบเจคผสงใชสญลกษณเสนประมหวลกศร 3) Send Message เปนการสงสญญาณเพอบอกหรอกระตนออบเจคอนแตไมใชการเรยกใชเหมอน Call Message ใชสญลกษณเปนเสนตรงมหวลกศร 4) Create Message เปน Message ทสงออกไปโดยมจดประสงคเพอใหเกดการสรางออบเจคใหมใหกบคลาสทเปนผรบ Message ใชสญลกษณเปนเสนประมหวลกศรมคาวา<<create>>กากบบนเสน 5) Destroy Message เปน Message ทสงออกไปโดยมจดประสงค เพอใหออบเจคทไดรบ Message นทาลายตวเอง ใชสญลกษณเปนเสนตรงมหวลกศรมคาวา<< Destroy >>กากบบนเสน 6) Self Message คอMessage ทมการประมวลผลหรอการคนคาทไดภายในออบเจคการขายเปนตนใชสญลกษณเปนเสนตรงหวลกศรยอนกลบเขาหาเสน Lifeline ของตวเอง
34
2.6 ทฤษฏเครองมอ/โปรแกรม
2.6.1 โปรแกรม Microsoft SQL Server 2008 Microsoft SQL Server 2008เปนระบบการจดการดาตาเบสแบบรเลชนแนล (Relational Database Management System มชอยอวา RDMS) สามารถทาการตดตงไดกบระบบปฏบตการ Windows 95/98 , Windows NT 4.0 และ Windows 2000 โดย SQL Server นออกแบบมาเพอใหทางานในลกษณะทเปน Client – Server Database จงสามารถรองรบการทวนจากเครองไคลเอนทไดเปนจานวนมากทตอผานทางเครอขายเนตเวรคเขามานอกจากน MS SQL Server ยงแบบมาเพอใหใชงานทเปนแบบ Stand –Alone Database ไดดวยโดยการทาการตดตงลงเครองทใชระบบปฏบตการ Windows 98/95 และอกทงนอกเหนอจากความสามารถในดานการจดการทางดานฐานขอมลแลว Microsoft SQL Server ยงมภาษาใหดขอมลแกไขลบขอมลจากดาตาเบสเรยกวา Transact – SQL ยงมคาสงทชวยในการทางานเพมเตมจากสวนทเปนมาตรฐานเพอชวยใหการทางานคลองตวมากขนการท SQL Server เปนระบบการจดการดาตาเบสแบบ Client - Server Relational Database ทาใหชวยเพมประสทธภาพในการทางานและยงมระบบจดการเปนแบบควบคมจากศนยกลาง (Centralized Management) ระบบรกษาความปลอดภยระบบจดสรรการทางานและใชขอมลจากหลายๆงานพรอมกนไดสาหรบ SQL Server ประกอบดวยสวนตางๆดงน (จรณตแกวกงวล: 2538) Server เปนเครองทตดตงโปรแกรมการทางานของ SQL Server โดย SQL Server ทางฝงททาหนาทจดเกบรวบรวมคนหาเรยงลาดบเรยกดและจดการกบขอมลนอกจากท SQL Server เปน Client Server Relational Database สวนทเปนระบบจดการดาตาเบสและไฟลตางๆทเกยวของกบดาตาเบสทงหมดกถกเกบอยบนเครองทเปนเซรฟเวอรดวย Client เปนเครองทตดตงโปรแกรมใชงานทพฒนาดวยภาษาตางๆเชน Visual Basic,Delphiและเชอมตอกบ SQL Server ทางฝงเซรฟเวอรไดทงนเครองทเปนไคลเอนทอาจเปนแพลทฟอรม (Platform) ใดกไดโปรแกรมทางฝงไคลเอนทนจะทาหนาทสงและรบขอมลจากดาตาเบสและมโปรแกรมสาหรบเรยกดและจดการขอมลโดยจะตองมสทธในการเรยกใชขอมลบนเซรฟเวอรนอกจากนระบบงานทถกพฒนาซอฟตแวรประเภทอนยงสามารถตดตอมาท SQL Server ได(โอภาสเอยมสรวงศ, 2545:53) ขายการสอสารหรอเนตเวรคการตดตอระหวางเซรฟเวอรและไคลเอนทจะอาศยผานขายการสอสาร (Communication Network) ซงมบทบาทสาคญในการทาใหเซรฟเวอรและไคลเอนทสามารถทาการแลกเปลยนขอมลการรบหรอสงคาสงระหวางกนได
35
2.6.2 Microsoft Visual Studio 2008 จดเปนชดเครองมอแบบครบวงจรซงนามาชวยเรงความเรวการแปลงวสยทศนของนกพฒนาใหกลายเปนความจรงขนมา Visual Studio 2008 Professional Edition ไดถกปรบแตงมาใหรองรบโครงการพฒนาแอพพลเคชนสาหรบเวบ (อาทเชน ASP .NET AJAX), Windows Vista, Windows Server 2008, Microsoft Office System 2007, SQL Server 2008 และอปกรณ Windows Mobile โดยทจานวนของแพลตฟอรมทนกพฒนาสามารถนาไปใชพฒนาแอพพลเคชนเพอสนองตอบตอความตองการทางธรกจทมจานวนเพมขนอยางรวดเรว Visual Studio 2008 Professional Edition จดเปนชดเครองมอแบบครบวงจรทสามารถสนองตอบตอความตองการทกรปแบบไดผานทางฟงกชนชนยอดทไมมอยใน Visual Studio 2008 Standard Edition ปจจบนนกพฒนาจาเปนตองเผชญกบความทาทายของการทมแพลตฟอรมใหเลอกหลากหลายและความจาเปนทตองพฒนาแอพพลเคชนขนมาเพอสรางคณคาตอธรกจอยางรวดเรวใหไดคณสมบตในเรองของการออกแบบและภาษาทรวมกนอยอยางเบดเสรจใน Visual Studio จะชวยใหนกพฒนาสรางแอพพลเคชนเพอรองรบการเชอมตอซงบรษทในปจจบนตองการไดแถมยงใชประโยชนจาก .NET Framework 3.5 เพอลดเวลาในการพฒนาไดอกดวยพฒนาแอพพลเคชนประสทธภาพสงเชอมตอไปยงขอมลทคณตองการไมวาขอมลเหลานนจะอยทไหนกตามรวมทงพฒนาแอพพลเคชนทเนนการใชขอมลโดยใชรปแบบการเขยนโปรแกรมแบบใหมทเรยกวา Language Integrated Query (LINQ) ไดสรางไคลเอนตแอพพลเคชนชนยอดสรางโซลชนชนยอดทชวยใหรปแบบการทางานของผใชดขนแถมยงใชประโยชนจากคณสมบตตางๆทมอยใน Microsoft Office System 2007 และ Windows Vista ไดดวยสรางเวบแอพพลเคชนประสทธภาพสงสรางอนเทอรแอคทฟแอพพลเคชนซงเนนการใชสอขอมลชนดตางๆโดยใชอนเทอรแอคทฟเวบอนเทอรเฟซทชอ ASP .NET AJAX 2.6.2.1 คณสมบตใหมทมอยใน Visual Studio 2008 1) สรางแอพพลเคชนทใชประโยชนจากเวบเทคโนโลยรนลาสดแถมยงปรบปรงการทางานรวมกบ AJAX, Web Controls และ Microsoft AJAX Library ใหดขน 2) สรางเวบแอพพลเคชนไดงายขนโดยใชหนาจอออกแบบและการทางานรวมกบมาตรฐานตางๆทไดรบการปรบปรงใหดขน 3) ใชประโยชนขอมลจากแหลงขอมลตางๆไดอยางลนไหลมากขนโดยใช LINQ ซงเปนโครงสรางภาษาใหมสาหรบภาษา Visual Basic และ Visual C# 4) บรหารและสรางแอพพลเคชนเฉพาะสาหรบ .NET Framework แตละเวอรชนไดโดยครงนถอเปนครงแรกซงคณสามารถใชเครองมอเพยงชนดเดยวทางานกบแอพพลเคชนทใชงานกบ .NET Framework เวอรชน 2.0, 3.0 และ 3.5 ได
36
5) ตรวจสอบความถกตองของแอพพลเคชนไดงายขนดวย Unit Testing ท Visual Studio ชวยสรางขนโดยอตโนมต 6) ใชศกยภาพของ .NET Framework 3.5 ใหไดอยางเตมทโดยใชเครองมอแบบเบดเสรจทชวยสรางรปแบบการทางานชนยอดและระบบเชอมตอไดโดยงาย 7) สรางประสบการณชนยอดใหกบผใชโดยใชเครองมอออกแบบครบวงจรสาหรบ Windows Presentation Foundation (WPF) ทสามารถผสานการทางานกบ Windows Forms ไดอยางกลมกลน 8) สรางแอพพลเคชนสาหรบการเชอมตอโดยใชเครองมอออกแบบวชวนชนดใหมสาหรบ Windows Communication Foundation และ Windows Workflow Foundation 9) ใชสภาพแวดลอมในการพฒนาแบบมออาชพของ Visual Studio เพอสรางโซลชนสาหรบ Microsoft Office โดยเปนแอพพลเคชนทมเสถยรภาพขยายระบบไดและงายตอการดแล (มอยใน Visual Studio 2008 professional Edition เทานน) 10) ชวยใหนกออกแบบและนกพฒนาทางานรวมกนไดดขนเพอสรางแอพพลเคชนทใหประสบการณชนยอดแกผใช 2.6.2.2 คณสมบตเดน 1) สรางแอพพลเคชนสาหรบ Windows, เวบ, Microsoft Office System, .NET Framework, SQL Server และอปกรณ Windows Mobile โดยใชเครองมอออกแบบลกษณะลากแลวปลอยครบวงจร 2) Visual Studio มภาษา Visual Basic, Visual C# และ Visual C++ ซงรองรบสไตลในการพฒนาทหลากหลายได 3) คณสมบตตางๆใน Editor อาทเชน Edit and Continue และ Microsoft IntelliSense จะชวยใหวงจรการออกแบบการพฒนาและการดบกแอพพลเคชนทาไดงายขน 4) ตดตงไคลเอนตแอพพลเคชนไดโดยงายโดยใชคณสมบตทชอClickOnceซงจะชวยใหนกพฒนาและผเชยวชาญดานไอทตดตงแอพพลเคชนและองคประกอบทจาเปนไดรวมทงยงมนใจวาแอพพลเคชนจะมสภาพทอพเดตอยเสมออกดวย 5) สรางแอพพลเคชนทเนนการทางานรวมกน .NET Framework ลดเวลาในการพฒนาลงโดยลดความจาเปนของการเขยนโคดระบบโครงสรางพนฐานและชวยใหแอพพลเคชนมความปลอดภยยงขนใช ASP.NET เพอเรงความเรวในการสรางเวบแอพพลเคชนและเวบเซอรวส
37
แบบอนเทอรแอคทฟทโดดเดนคณสมบตของ Master Pages จะชวยใหนกพฒนาบรหารไซตเลยเอาททคงเสนคงวาโดยการจดเกบเลยเอาทเอาไวในทเดยว 2.6.2.3 สถาปตยกรรม C# C# (ออกเสยงวา C-sharp) เปนภาษา object-oriented programming จาก Microsoft ทมจดมงหมายในการวมความสามารถการคานวณของ C++ ดวยการโปรแกรมงายกวาของ Visual Basic โดย C# มพนฐานจาก C++ และเกบสวนการทางานคลายกบ Java C# ไดรบการออกแบบใหทางานกบ .NET platform ของ Microsoft จดมงหมายคออานวยความสะดวกในการแลกเปลยนสารสนเทศและบรการผานเวบและทาใหผพฒนาสรางโปรแกรมประยกตในขนาดกะทดรด C# ทาใหโปรแกรมงายขนผานการใช Extensible Markup Language (XML) และ Simple Object Access Protocol (SOAP) ซงยอมใหเขาถงออบเจคของโปรแกรมหรอเมธอดโดยปราศจากความตองการใหผเขยนโปรแกรมเขยนคาสงเพมในแตละขนตอนเนองจากผเขยนโปรแกรมสามารถสรางบนคาสงทมอยแทนทการคดลอกซา C# ไดรบการคาดวาทาใหเรวขนและตนทนตาในทาผลตภณฑและบรการเขาสตลาด Microsoft รวมมอกบ ECMA องคกรดานมาตรฐานระหวางประเทศในการสรางมาตรฐานสาหรบ C# การยอมรบของ International Standards Organization (ISO) สาหรบ C# จะกระตนใหบรษทอนพฒนาภาษานในเวอรชนของตวเองบรษททไดใชภาษา C# รวมถง Apex Software, Bunka Orient, Component Source, devSoft, FarPoint Technologies, LEAD Technologies, ProtoViewและ Seagate Software(http://www.com5dow.com)
2.6.3 โปรแกรม Crystal Reports 8.0 โปรแกรม Crystal Reports เปนโปรแกรมสาหรบเสนอรายการตางๆ ทเกดจากฐานขอมลหรอจะเปนหนารายงานธรรมดาเชนเดยวกบโปรแกรม Word เพอแสดงในหนาจอหรอแสดงในหนากระดาษเดมทโปรแกรม Crystal Reports เปนเครองมอหนงทอยในโปรแกรมพฒนา Visual Basic ตงแตรนท 3 ซงตอมาเมอมาถง Visual Basic 5 บรษท Seagate Software ทเปนบรษทสรางฮารดดสกทเรารจกกนด ไดเปนผพฒนารปแบบการทางานของ Crystal Reports จะเรมจากโปรแกรม Crystal Reports Designer ทเปนโปรแกรมหลกสาหรบสรางรายงานโดยจะมเครองตางๆหรอโปรแกรมทเราออกแบบเอง เมอเราสรางรายงานไดแลวเราจะแสดงบนหนาจอคอมพวเตอรของเราไดหรอพมพเปนรายงานออกทางเครองพมพกไดหากเราตองการบนทกกสามารถบนทกลงในไฟลทมนามสกล .rpt หากเราตองการพมพรายงานอกกสามารถนาไฟลนขนมาใชงานได นอกจากนยงมเครองมอ Crystal Reports Component ทใชสาหรบนาไฟลนามสกล .rptทสรางจากโปรแกรม Crystal reports Designer มาแสดงรายงานดวยการเขยนโปรแกรม Visual Basicไดอกดวย ถาเราตองการสรางรายงานทตดตอฐานขอมลบางเราจะตองมาเลอกรายการ UsingReports Expert ดงเชน
38
การสรางรายงานทเราจะสราง แตสาหรบในรายงานวางเปลาทเราจะสรางนเราตองเลอกรายการ As a blank Reports แลวใหคลกปม OK โดยสวนประกอบของหนารายงานมดงตอไปน 2.6.3.1 Report Header จากบรเวณพนทสขาวนสวนทอยดานบนสดเปนสวนของ Report Header ซงเปนสวนแรกของรายงานและจะแสดงเพยงหนงครงเทานนในรายงานหนงๆ ตามปกตแลวมกจะใช Report Header สาหรบทาเปนหนาปกแรกของรายงานหรอเปนหวขอหลกของรายงานชดน 2.6.3.2 Page Header บรเวณถดลงมาเปนสวนของ Page Header ททาหนาทอยดานบนของทกหนารายงาน ยกเวนแตหนาทเปน Report Header ซงตามปกตแลวเราจะเหน Page Header ทหนารายงานเสมอเชนสวนทแสดงเลขทหนาหรอแสดงหวขอรายงาน 2.6.3.3 Details ถดมาเปนสวนของ Details ซงเปนสวนสาคญสาหรบแสดงรายงานถาหากมรายงานมากหรอมขอมลมากกจะแสดงหลายๆ หนาและเมอการแสดงรายงานในแตละหนาแลวจะนาสวนของ Page Footer มาแสดงทดานลางของรายงานทกๆหนา 2.6.3.4 Report Footer ตอจาก Details กเปน Report Footer ซงเปนสวนททางานเพยงครงเดยวเทานนโดยจะแสดงทสวนทายของ Detail ดงนนการแสดง Report Footer จงไมจาเปนตองแสดงทตอนลางเหมอนอยาง Page Footer คอสนสดรายงานทตรงไหนกแสดงทตรงนนสนสดตรงกลางหนากระดาษกแสดงทตรงกลางหนากระดาษดงนนจงมกนามาใชแสดงยอดรวมของรายงานเสมอ 2.6.3.5 Page Footer เปนรายงานสวนสดทายทแสดงทดานลางของรายงานทเกดจาก Detail และแสดงทกหนาทเปนรายงานเรามกพบเหนในรายงานหรอในหนงสอทวๆ ไปซง คอ เลขหนา 2.6.4 โปรแกรม Microsoft Office Visio 2007 Microsoft Office Visio 2007 เปนโปรแกรมทถกสรางขนมาเพอชวยในการสราง Flow Chart หรอ Diagram ของงานในสาขาตางๆใหทาไดงายลกษณะทสาคญอยางหนงของการสราง Flow Chart บน Visio คอมรปไดอะแกรมพนฐานตางๆจดเตรยมไวใหซอฟตแวร Microsoft Office Visio 2007 เปนซอฟตแวรทชวยสรางกราฟกและแผนภมไดงายดายอยางมประสทธภาพ เพออานวยความสะดวกใหกบองคกรทตองใชกราฟกแผนภมแผนผงและตารางตางๆในการนาเสนองาน รวมทงการสรางบนเวบไซต Microsoft Office Visio 2007 เปนเครองมอทเสรมการทางานของ Microsoft Office ในการชวยใหสรางแผนภมแผนผงตารางแสดงโครงสรางองคกรแผนภมทางการตลาดตารางเวลาและอนๆไดอยางงายดายรวมทงชวยเพมประสทธภาพในการสอสารโดยชวยใหแตละแผนกสามารถดแผนภมหรอตารางในรปแบบไฟลทแตกตางกนตามตองการไดเชนไฟลทสงทางอ-เมล, ระบบอนทราเนตและอนเทอรเนตเปนตนและยงชวยใหผจดทาเอกสารสรางภาพกราฟกใหมๆ
39
เพอเพมสสนความชดเจนใหกบขอมลตางๆไดเปนอยางดและทสาคญคอ Microsoft Office Visio 2007 ชวยประหยดเวลาในการสรางเอกสารขอดของโปรแกรม Microsoft Office Visio 2007 คอเปนโปรแกรมทถกสรางใหสนบสนนการทางานกบโปรแกรมออฟฟศอนๆไดเปนอยางดโดยเฉพาะ Microsoft Office 5 ซอฟตแวรดงกลาวแบงเปน 4 ประเภทหลกคอ Visio Standard Edition สาหรบผใชและองคกรทวไป, Visio Professional Edition สาหรบองคกรททางานบนระบบเครอขายคอมพวเตอร ทไมซบซอนมากนก Visio Enterprise Edition สาหรบองคกรขนาดใหญทมระบบเครอขายซบซอนหรอผพฒนาซอฟตแวร, และ Visio Technical Edition สาหรบองคกรทดาเนนธรกจดานวศวกรรมหรอการผลตโดยเฉพาะ Visio 200 Microsoft Office Visio 2007 เปนแพลตฟอรมททรงพลงคมคา ทอานวยใหผใชสามารถนาแผนภมภาพและกราฟกทดงายนาใชมาทางานในการสอสารดวยงานเอกสารงานนาเสนอในองคกรและระหวางองคกรไดทกวนดงนนการใช Visio ทสามารถใชงานรวมกบโครงสรางพนฐานของไอทในองคกรเดมไดเปนอปกรณนาเสนอมาตรฐานขององคกรนนจงจะทาใหองคกรจะมคาใชจายโดยรวมลดลงดงภาพท 2.1
ภาพท 2.18 การแสดงตวอยางการออกแบบ Flow chart ทมา : http://technic.npu.ac.th/project/file_pro/pdp_cov%20(6).pdf
2.6.5 โปรแกรมIBM Rational Rose Enterprise 7.0 IBM Rational Rose Enterprise 7.0 เปนเครองมอสรางไดอะแกรม UML ปจจบน IBM Rational Roseมใหเลอกใชงานถง 7 แบบ รวมถงแบบใหมลาสดคอ XDE (eXtended Development Environment) ดวย ซงเปนแบบทถกรวมเขากบ Microsoft Visual Studio.NET
40
และ IBM WebSphere Studio Application Developer การใชงาน IBM Rational Roseนนสามารถทาไดในหลายรปแบบ คอ เราอาจจะวาดโมเดล UML ใหเสรจเรยบรอย จากนนกใช IBM Rational Roseสรางโครงสรางโปรแกรมของเราให ดงโครงสรางทวานจะเปนกรอบการเขยนโปรแกรม เปนกรอบของฟงกชน ซงโปรแกรมจะสามารถไปเตมโคดสวนทอยตรงกลางไดทนท วธการนเรยกวา Forward Engineering กบอกวธคอ Reverse Engineering คอ เอาโปรแกรมมาให IBM Rational Rose อาน จากนน IBM Rational Roseกจะสราง UML ไดอะแกรมทเกยวของให จากการทดสอบ IBM Rational Roseสามารถทางานไดดทงสองแบบ แมกบโปรแกรมภาษาเฉพาะกจทไมคอยจะเปนออบเจกตเตมตวอยางVisual Basic กทางานไดด IBM Rational Roseสามารถทางานไดกบหลายภาษาอาทเชน XML และ DTD ดงภาพท 2.2
ภาพท 2.19 การแสดงตวอยางโปรแกรม IBM Rational Rose Enterprise 7.0 ทมา : http://www.arip.co.th/articles.php?id=405768&page=2
41
2.7 วรรณกรรมทเกยวของ
นายเฉลมรตน จารนย และนายธระ คตอนทร (2555 : ) ระบบบรหารการประปา ตาบลบอแกว อาเภอวงหน จงหวดศรสะเกษ วตถประสงคของโครงงานเทคโนโลยสารสนเทศธรกจฉบบน เพอพฒนาระบบบรหารจดการ การประปา ตาบลบอแกว อาเภอวงหอม จงหวดศรสะเกษ เพอทาใหมการทางานอยางเปนระบบ สามารถจดการขอมลพนฐาน ขอมลการเกบคานาทสามารถเพมลบ แกไขขอมลและคนหาขอมลเพอแสดงรายงานไดอยางถกตอง ไดพฒนาขนโดยใชsql server 2005 เปนการจดการดานฐานขอมล และใชโปรแกรม VisualStudio2008 ในการออกแบบหนาจอและเขยนโปรแกรม ในสวนของผใชระบบเพอใหเกดความสะดวกในการใชขอมลของผใชงานระบบ
นางสาววนดา ชาวดร และนายประยทธ เคาเลศ (2555 : ) ระบบบรหารจดการประปาหมบานบานหนองแคน หมท 2 บานหนองแคน ตาบลขะยง อาเภออทมพรพสย จงหวดศรสะเกษ วตถประสงคของโครงงานเทคโนโลยสารสนเทศธรกจฉบบนเพอพฒนาระบบบรหารจดการประปาหมบานบานหนองแคน หมท 2 บานหนองแคน ตาบลขะยง อาเภออทมพรพสย จงหวดศรสะเกษ เพอทาใหเปนระบบสามารถจดการขอมลพนฐาน ขอมลการเกบคานา ทสามารถเพมลบ แกไขและคนหา ขอมลเพอแสดงรายงานไดอยางถกตอง ไดพฒนาขนโดยใชsql server 2005 เปนการจดการฐานขอมล และใชโปรแกรม Visual Studio 2005 ในการออกแบบหนาจอ และเขยนโปรแกรม ในสวนของผใชระบบเพอใหเกดความสะดวกในการใชขอมลของผใชงานระบบ สามารถทาการสมครสมาชกยนคารองขอตดตงมเตอรนา บนทกการตดตงคานวณคานา ประปารบชาระเงนคานา ระงบการจายนา และยนคารองขอใชนาตอได
นางสาววรรณดา สทธชย และนายวฒนศกด บตมะ (2555 : ) ระบบบรหารจดการประปาหมบานโคกทมตาบลโคกยาง อาเภอปราสาท จงหวดสรนทร วตถประสงคของโครงงานเทคโนโลยสารสนเทศธรกจนเพอการศกษาพฒนาระบบบรหารจดการประปาหมบานโคกทมตาบลโคกยาง อาเภอปราสาท จงหวดสรนทรใหเกดความสะดวกรวดเรวในการทางานและมประสทธภาพมากขน โดยนาเอาเทคโนโลยสารสนเทศเขาไปชวยในการบรหารจดการฐานขอมลพนฐานของระบบประปาหมบานอกทงยงสามารถออกรายงานตางๆ ไดระบบบรหารจดการประปาหมบานโคกทม ต.โคกยางอ.ปราสาท จ.สรนทร ไดพฒนาขนโดยใชโปรแกรม Microsoft Visual Studio 2008 ในการออกแบบหนาจอผใชระบบและเขยนโปรแกรมรวมกบ Microsoft SQL Server 2005เปนฐานขอมลและโปรแกรม Crystal Report9.0 สรางรายงานทงนเพอสนบสนนงานดานฐานขอมล มงเนนความรวดเรวของการประมวลผลการจดการรายงานพรอมทงสามารถกาหนดลกษณะไดตรงตามความตองการของผใชเปนหลก
42
นางสาวปาลรตน ทพทะมาตย และนางสาววลาวรรณ สถตชย (2555 : ) ระบบบรหารจดการประปา หมบานขามเรยง ตาบลขามเรยง อาเภอกนทรวชย จงหวดมหาสารคาม วตถประสงคของโครงงานเทคโนโลยสารสนเทศธรกจนเพอพฒนาระบบบรหารจดการประปาหมบานขามเรยง ตาบลขามเรยง อาเภอกนทรวชย จงหวดมหาสารคาม ใหมประสทธภาพมากยงขน ใหเกดความสะดวกรวดเรวในการทางานและมประสทธภาพมากขน โดยนาเอาเทคโนโลยสารสนเทศเขาไปชวยในการบรหารจดการฐานขอมลพนฐานของระบบประปาหมบานอกทงยงสามารถออกรายงานตางๆ ไดระบบบรหารจดการประปาหมบานขามเรยง ตาบลขามเรยง อาเภอกนทรวชย จงหวดมหาสารคาม ไดพฒนาขนโดยใชโปรแกรม Microsoft Visual Studio 2008 ในการออกแบบหนาจอผใชระบบและเขยนโปรแกรมรวมกบ Microsoft SQL Server 2005เปนฐานขอมลและโปรแกรม Crystal Report9.0 สรางรายงานทงนเพอสนบสนนงานดานฐานขอมล มงเนนความรวดเรวของการประมวลผลการจดการรายงานพรอมทงสามารถกาหนดลกษณะไดตรงตามความตองการของผใชเปนหลก
นายทศนย ทพสร และนาย พทกษ หลาอย (2554 : ) ระบบพสดครภณฑออนไลนองคการบรหารสวน ตาบลหวนาคา อาเภอกระนวน จงหวดขอนแกน วตถประสงคของโครงงานเทคโนโลยสารสนเทศธรกจฉบบนเปนวเคราะหและออกแบบระบบพสดครภณฑ และจดการขอมลผานเวบไซตขององคการบรหารสวนตาบลหวนาคา อาเภอกระนวน จงหวดขอนแกน โดยใชโปรแกรมภาษา PHP และโปรแกรมอนในการพฒนารปแบบการทางานของระบบตาง ๆ ทสามารถใชงานบนอนเตอรเนต โดยใช Apache เปนเวบ Server ในสวนของฐานขอมลใช MySQL ซงเปนระบบในการจดเกบฐานขอมลผานทางอนเตอรเนต สามารถทาการตดตอสอสาร เพมขอมลแกไขขอมล และลบขอมลได ในสวนทเกยวของกบการพฒนาระบบฐานขอมล และเจาหนาทเกยวของสามารถใชงานระบบพสดครภณฑผานเวบไซตขององคการบรหารสวนตาบลหวนาคา อาเภอกระนวน จงหวดขอนแกน ได