Systems Analysis and Design การวิเคราะห์และออกแบบ Introduction Chapter 1 เนือ ้ หา Overview System Development Life Cycle Evolution of System Development Methodologies Team players in system development project Information สารสนเทศ คือ ทรัพยากรขององค์กรทีต ่ ้องจัดการอย่าง ระมัดระวังเหมือนทรัพยากรอืน ่ ั พันธ์กบ ค่าใชจ่้ ายมีความสม ั การจัดการสารสนเทศ ิ ธิภาพ การจัดการสารสนเทศต ้องทาอย่างเต็มประสท Information Systems Transaction processing systems (TPS) Office automation systems (OAS) Management information systems (MIS) Decision support systems (DDS) Expert system (ES) Information Systems ระบบการประมวลผลข้อมูล (Transaction Processing System : TPS) ่ เป็ นระบบทีเ่ กีย ่ วข ้องกับการดาเนินงานประจาทีต ่ ้องทาในองค์กร เชน ิ ค ้าในแต่ละวัน จะ การบันทึกยอดขายแต่ละวัน การบันทึกการสงั่ สน เป็ นการปฏิบต ั งิ านทีซ ่ ้าๆ กันทุกวัน Information Systems ระบบสารสนเทศเพือ ่ สาน ักงาน (Office Automation System : OAS) ้ เป็ นระบบสารสนเทศในสานักงานทีใ่ ชเทคโนโลยี คอมพิวเตอร์ ื่ สารและเครือข่ายรวมถึงการใชซอฟต์ ้ เทคโนโลยีด ้านการสอ แวร์ ้ านักงาน ต่างๆ ทีเ่ กีย ่ วกับงานออฟฟิ ศมาใชในส Information Systems ระบบสารสนเทศเพือ ่ การจ ัดการ (Management Information System : MIS) ้ เป็ นระบบสารสนเทศทีต ่ อบสนองความต ้องการของผู ้ใชงานด ้วยการ ิ ใจทีเ่ กีย จัดทารายงานทีช ่ ว่ ยในการตัดสน ่ วข ้องกับการบริหาร ซงึ่ ข ้อมูลในรายงานจะเป็ นในลักษณะของการสรุปผลทีไ่ ด ้จากข ้อมูล ต่างๆทีถ ่ ก ู จัดเก็บใน TPS Information Systems ่ สาหรับรายงานทีร่ ะบบสารสนเทศเพือ ่ การจัดการสามารถจัดเตรียมไว ้เชน 1. รายงานตามกาหนดการ (Scheduled Reports) เป็ นรายงานทีม ่ ก ี ารกาหนด ไว ้แล ้วตามแผนการดาเนินงานของธุรกิจว่าจะต ้องมีการนาเสนอเป็ นใน ชว่ งเวลาใดเวลาหนึง่ 2. รายงานตามความต ้องการ (Demand Report) เป็ นรายงานทีถ ่ ก ู สร ้างขึน ้ เมือ ่ ้ ่ การจัดเตรียมสารสนเทศทีเ่ ป็ นยอดคงเหลือของวัตถุดบ ต ้องการใชงาน เชน ิ คง คลัง 3. รายงานกรณีเฉพาะ (Exception Report) เป็ นรายงานทีจ ่ ัดทาขึน ้ ในกรณีพเิ ศษ ่ ในกรณีมก ทีไ่ ม่มป ี รากฏในแผนงาน เชน ี ารหยุดงานของพนักงานมากผิดปกติจน ทาให ้กาลังการผลิตลดลง ผู ้บริหารอาจจะต ้องการดูรายงานการลาหยุดของ พนักงาน 4. รายงานพยากรณ์ (Prediction Report) เป็ นรายงานทีเ่ กิดจากการประมาณ คาดคะเน หรือพยากรณ์เหตุการณ์ลว่ งหน ้า Information Systems ิ ใจ ระบบสน ับสนุนการต ัดสน (Decision Support System : DSS) ิ ใจทีต เป็ นระบบทีช ่ ว่ ยสนับสนุนการตัดสน ่ อบสนองความต ้องการของ ้ ิ ใจของ ผู ้บริหาร ด ้วยการจัดทารายงานเพือ ่ ใชประโยชน์ ตอ ่ การตัดสน ผู ้บริหารในระดับต่างๆ Information Systems ี่ วชาญ ระบบผูเ้ ชย (Expert System : ES) ี่ วชาญเฉพาะด ้านต่างๆ เข ้า เป็ นระบบทีร่ วบรวมความรู ้ความเชย ด ้วยกัน รวมทัง้ ปั จจัยต่างๆ ทีเ่ กีย ่ วข ้องสามารถนาเหตุการณ์ตา่ งๆ มา ประมวลผลเป็ นภาพรวมเพือ ่ ให ้คาตอบแก่ผู ้ใช ้ เพือ ่ เสนอเพียง ิ ใจเอง ทางเลือกทีด ่ แ ี ละให ้ผู ้ใชตั้ ดสน Key Ideas Many failed systems were abandoned because analyst tried to build wonderful systems without understanding the organization เป้ าหมายหลักคือการสร ้างมูลค่าให ้กับองค์กร Nature of Analysis and Design นักวิเคราะห์ระบบ (System Analyst) คือ บุคคลหลักที่ วิเคราะห์ธรุ กิจ แล ้วเห็นโอกาสในการพัฒนาระบบ นาไปสู่ ้ ้ และการออกแบบ ติดตัง้ ใชการใช งานระบบใหม่ การวิเคราะห์และออกแบบระบบ คือ การกาหนดปั ญหา, การ สร ้างโอกาสและจุดประสงค์ในการพัฒนาระบบ; วิเคราะห์ การไหลข ้อมูลขององค์กร; และออกแบบระบบคอมพิวเตอร์ เพือ ่ แก ้ปั ญหา information ของระบบปั จจุบน ั System Development Life Cycle (SDLC) คุณลักษณะของวงจรชวี ต ิ (Lifecycle) โครงงาน (Project) - แบ่งการทางานออกเป็ นเฟส โดยทีแ ่ ต่ละเฟสมีชด ุ ของเอาท์พท ุ ทีเ่ ป็ นมาตราฐาน - สร ้างผลลัพธ์ project deliverables - นา project deliverables ไปทาการติดตัง้ ้ - ผลลัพธ์ของโครงงานคือ ระบบสารสนเทศทีใ่ ชงานจริ ง - ปรับปรุงระบบให ้ดีขน ึ้ Project Phases วางแผน (Planning) - Why build the system ? วิเคราะห์ (Analysis) - Who, what, when, where will the system be ? ออกแบบ (Design) - How will the system work ? ติดตัง้ (Implementation) - System delivery วางแผน (Planning) วิเคราะห์ความคุ ้มค่าทางธุรกิจ - ความต ้องการระบบ (System request) วางแผน (Planning) วิเคราะห์ความคุ ้มค่าทางธุรกิจ วิเคราะห์ความเป็ นไปได ้ - ความเป็ นไปได ้ทางเทคนิค - ความเป็ นไปได ้ทางเศรษฐศาสตร์ - ความเป็ นไปได ้ขององค์กร วางแผน (Planning) วิเคราะห์ความคุ ้มค่าทางธุรกิจ วิเคราะห์ความเป็ นไปได ้ วางแผนการทางาน - กาหนดงานทีต ่ ้องทา - ประมาณระยะเวลาทีต ่ ้องทา วางแผน (Planning) วิเคราะห์ความคุ ้มค่าทางธุรกิจ วิเคราะห์ความเป็ นไปได ้ วางแผนการทางาน กาหนดคนทางานในโครงการ วางแผน (Planning) วิเคราะห์ความคุ ้มค่าทางธุรกิจ วิเคราะห์ความเป็ นไปได ้ วางแผนและควบคุมกิจกรรม กาหนดคนทางานในโครงการ ควบคุมและสงั่ งาน Project Plan วิเคราะห์ (Analysis) วิเคราะห์ - ระบบงานปั จจุบน ั - ระบบงานใหม่ วิเคราะห์ (Analysis) วิเคราะห์ รวบรวมข ้อมูล ั ภาษณ์ - สม - เอกสาร ระบบ / ปฎิบต ั ก ิ าร - แบบสอบถาม - สงั เกตุระบบและบุคคล วิเคราะห์ (Analysis) วิเคราะห์ รวบรวมข ้อมูล System concept Analysis modeling System Proposal ออกแบบ (Design) Design Strategy Architectural design Interface design Database and file design Program design System Specification การนาไปใช ้ (Implementation) การสร ้างระบบ - สร ้าง - ทดสอบ การติดตัง้ ระบบ - เปลีย ่ นระบบ ทันที, ขนาน, เฟส อบรม New System + Maintenance Plan Processes and Deliverables Process Product Planning Project Plan Analysis Design Implementation System Proposal System Specification New System and Maintenance Plan SDLC Remark There are many variations on SDLC Not all organizations follow the exactly same SDLC SDLC is a process of gradual refinement The Evolution of systems development methodologies What Is a Methodology ? A formalized approach or series of steps to implementing the SDLC. Writing code without a well-thought out system request may work for small programs, but rarely works for large ones. Waterfall Development Methodology Waterfall Development Methodology SDLC แบบ Waterfall มีหลักการเปรียบเสมือนกับน้ าตก ซงึ่ ไหล จากทีส ่ งู ลงทีต ่ า่ และไม่สามารถย ้อนกลับได ้ การพัฒนาระบบงานด ้วยหลักการนี้ จาเป็ นจะต ้องมีการวางแผนทีด ่ ี เพือ ่ ป้ องกันการผิดพลาดให ้ได ้มากทีส ่ ด ุ ซงึ่ ทาได ้ยาก ยกเว ้นกรณีท ี่ ระบบนัน ้ มีรป ู แบบการพัฒนาระบบทีด ่ อ ี ยูแ ่ ล ้ว จุดอ่อนของระบบนีค ้ อ ื หากมีข ้อผิดพลาดเกิดขึน ้ ทีข ่ น ั ้ ตอนก่อนหน ้านี้ แล ้ว ไม่สามารถย ้อนกลับไปแก ้ไขได ้ ี ของ Waterfall ข ้อดีและข ้อเสย ข้อดี สามารถกาหนดความ ต ้องการของระบบได ้นาน ก่อนทีจ ่ ะเริม ่ การเขียน โปรแกรม ี ข้อเสย การออกแบบต ้องกาหนด บนกระดาษก่อนทีจ ่ ะเริม ่ เขียนโปรแกรม ้ ใชระยะเวลานานระหว่ าง System proposal และ การไปสูร่ ะบบใหม่ Rapid Application Development (RAD) เปลีย ่ นแปลงขัน ้ ตอนของ SDLC ใช ้ Tools และ เทคนิค ชว่ ย ทาให ้แต่ขน ั ้ ตอนของ SDLC เร็ว ขึน ้ เพิม ่ ความเร็วและคุณภาพของการพัฒนาระบบ Rapid Application Development (RAD) เครือ ่ งมือทีส ่ นับสนุนการพัฒนาระบบ - Case tools - JAD sessions - Fourth generation/visualization programming languages - Code generators RAD Categories Phase development - A series of versions Prototyping - System prototyping Throw-away prototyping - Design prototyping Phased Development Methodology Insert Figure 1-4 here Phased Development ั่ แล ้วทดลองใช ้ ทาระบบออกมาเป็ นเวอร์ชน ั่ ก่อนหน ้ามาปรับปรุงไปเรือ แล ้วนาเวอร์ชน ่ ยๆจนได ้ระบบที่ สมบูรณ์ ข ้อดี - สามารถสง่ มอบระบบได ้เร็ว ี - ข ้อเสย ้ ั่ แรกอาจ - ยูสเซอร์เริม ่ ใชระบบที ไ่ ม่สมบูรณ์ ทาให ้ในเวอร์ชน ขาดคุณสมบัตท ิ ส ี่ าคัญได ้ How Prototyping Works ี ของPrototyping ข ้อดีและข ้อเสย Methodology ข้อดี ยูสเซอร์ทางานกับ Prototype ได ้อย่าง ่ าร รวดเร็วและนาไปสูก ปรับปรุงได ้เร็วขึน ้ ยูสเซอร์สามารถ เปลีย ่ นแปลงความต ้องการ ให ้ตรงกับความต ้องการ จริงได ้ ี ข้อเสย ต ้องระวังในการวิเคราะห์ การออกแบบ ในชว่ งเริม ่ ต ้น อาจจะไม่ด ี Throw-Away Prototyping Throw-Away Prototyping ข ้อดี: การใช ้ prototypes ชว่ ยให ้ปรับปรุงระบบให ้ตรงตาม ความต ้องการ ก่อนจะสร ้างระบบจริง ทาให ้ได ้ระบบทีค ่ งที่ ื่ ถือได ้ และเชอ ี : ใชเวลานานกว่ ้ ข ้อเสย าจะได ้ระบบงานจริง Project Team Roles and Skills Project Team Project/IS Manager - ควบคุมโครงการให ้เสร็จในเวลาทีก ่ าหนด - จัดสรรทรัพยากร - ประสานงานหน่วยงานภายในและภายนอก Project Team นักวิเคราะห์ (System Analyst) ึ ษาถึงปั ญหาของระบบ พร ้อมทัง้ ระบุ คือบุคคลทีศ ่ ก ้ บปรุงระบบ ปั ญหา อย่างมีหลักเกณฑ์ เพือ ่ ใชปรั หน ้าทีข ่ องนักวิเคราะห์ ึ ษาโครงสร ้างของระบบเก่า ศก ึ ษาโครงสร ้างขององค์กร ศก ึ ษาโครงสร ้างของข ้อมูล การไหลของข ้อมูล ศก ึ ษาขบวนการ(Process) ทาการวิเคราะห์ปัญหา ศก วางแผนแก ้ไขระบบเก่า หรือ ระบบใหม่ Project Team คุณสมบัตข ิ องนักวิเคราะห์ มีความรู ้ทางภาษาคอมพิวเตอร์ อย่างน ้อย 1 ภาษา ิ ใจเกีย สามารถตัดสน ่ วกับการออกแบบ สามารถให ้คาแนะนาด ้านเทคนิค แก่ ผู ้เกีย ่ วข ้อง ึ ษา และ ต ้องเข ้าใจระบบ และบุคคลในระบบทีศ ่ ก กาลังพัฒนา ้ เป็ นตัวกลางระหว่างผู ้ใชระบบ และ ผู ้พัฒนาระบบ เป็ นผู ้ติดตัง ้ ระบบ ตรวจสอบระบบว่าตรงตาม วัตถุประสงค์ ั พันธ์ทด มีมนุษย์สม ี่ ี มีประสพการณ์ Project Team Developers - เปลีย ่ น specification ให ้อยูใ่ นรูปแบบคาสงั่ ทีค ่ อมพิวเตอร์ เข ้าใจ - จัดทาเอกสารและทดสอบระบบ Business Manager - จัดสรรงบประมาณและทรัพยากรให ้กับโครงการ - กาหนดความต ้องการทัว่ ไปและเงือ ่ นไขโครงการ อืน ่ ๆ -Database Admin,NW and telecomm expert Project Team คุณสมบัตข ิ องทีมทีจ ่ ะประสบความสาเร็จ - มีความคิดเห็นทีห ่ ลากหลาย ื่ สารกันในทีมต ้องมีความชด ั เจนและสมบูรณ์ - การสอ - มีความเคารพซงึ่ กันและกัน Reference Book and Text Book ตาราอ้างอิง การวิเคราะห์และออกแบบระบบ โอภาส เอีย ่ มสริ วิ าศ ์ Systems Analysis & Design An Object-Oriented Approach With UML: Alan Dennis, Barbara Haley Wixom, David Tegarden Project แบ่งกลุม ่ ละ 5 คน ทาโครงงานพัฒนาระบบมา 1 ระบบ ั ดาห์ทส สง่ หัวข ้อระบบงานทีจ ่ ะพัฒนา สป ี่ ามของการเรียน - อธิบายรายละเอียดของระบบงานปั จจุบน ั - เหตุผลในการพัฒนาระบบ - อธิบายรายละเอียดระบบงานในอนาคต ั ดาห์สด นาเสนอโครงงานสป ุ ท ้ายของการเรียน Project รายละเอียดโครงงานทีต ่ ้องทา - System request - Feasibility study - Cash Flow - Dataflow diagram - ER diagram - Data dictionary - Computer architecture - User interface design End