Weitere ähnliche Inhalte
Ähnlich wie การพัฒนาซอฟแวร์ (20)
การพัฒนาซอฟแวร์
- 1. เสนอ อาจารย์ดร . จารุณี ซามาตย์ การพัฒนา Software วิชา 237311 PRINCIPLES FOR EDUCATIONAL SOFTWARE DEVELOPMENT
- 2. 1.SDLC คืออะไร พร้อมยกตัวอย่างที่สามารถอธิบายให้เข้าใจได้ ตอบ วงจรการพัฒนาระบบ (System Development Life Cycle) คือ กระบวนการพัฒนาซอฟแวร์ เพื่อแก้ปัญหาและตอบสนองความต้องการ ของผู้ใช้โดยในกระบวนการพัฒนาจะแบ่งออกเป็นกลุ่มงานหลัก ดังนี้ ด้านการวางแผน (Planning Phase) ด้านการวิเคราะห์ (Analysis Phase) ด้านการออกแบบ (Design Phase) ด้านการสร้างและพัฒนา (Implementation Phase)
- 3. มีหลายรูปแบบเช่น Water fall คือ ขั้นตอนการพัฒนาซอฟแวร์เป็นลำดับขั้นลักษณะเหมือนน้ำตก แต่ละขั้นจะถูกกำหนดหน้าที่อย่างชัดเจน Product ส่วนใหญ่จะเป็น Document ข้อดี - แบ่งงานให้เป็นงานที่เล็กง่ายต่อกาจัดการ ข้อเสีย - ถ้าค้นพบข้อผิดพลาดของขั้นที่เสร็จสิ้นแล้ว ไม่สามารถแก้ไขได้ การแก้ไขจำเป็นต้องเริ่มใหม่ - ลูกค้าเห็นและทดลองใช้ Software ก็ต่อเมื่อถึงขั้นตอนสุดท้ายถ้าต้องการแก้ไขต้องเสียเวลาและค่าใช้จ่ายมากขึ้น
- 4. Prototypes มี 2 แบบ คือ 1. Throw – away prototypes ที่ทำให้ user มองเห็นภาพของระบบ ไม่สามารถใช้ได้จริง 2.Evalutionary Prototypes โปรแกรมอาจเสร็จทีละส่วน แล้วให้ user ทดสอบโดยไม่ต้องรอให้เสร็จทั้งหมด
- 5. The Spiral Model คือเป็น model ที่ใช้ความเสี่ยงเป็นเครื่องตัดสินใจ ว่าจะกระทำอะไรต่อไปเพื่อพัฒนาระบบตามความต้องการของลูกค้า ข้อดี - ในแต่ละ Cycle มีขั้นตอนประมวลผลที่สิ้นสุดภายใน Cycle เดียว - แก้ไขข้อผิดพลาดที่จะเกิดขึ้นตั้งแต่เนิ่น ๆ - มีความเป็นอิสระต่อกันทางด้านการพัฒนาและการแก้ไข ข้อเสีย - ถ้าการวิเคราะห์เกิดผิดพลาด จะทำให้ Software Produce ที่ออกมาผิดพลาดทำให้เกิดค่าใช้จ่ายที่เพิ่มขึ้น
- 6. V-Model คือ เป็น Methodology ที่ไว้สำหรับตรวจสอบคุณภาพของระบบ ซึ่งจะมี Stage ต่างๆ ของการ Test คอย validate & verify ตั้งแต่เริ่มต้น Requirement จนถึง phase สุดท้ายของการพัฒนาระบบ
- 7. The Reuse Model คือ การนำองค์ประกอบซอฟต์แวร์ (Components) ที่มีอยู่มาทำการประกอบกันเป็นระบบ โดยให้ระบบสามารถทำงานตรงกับความต้องการที่กำหนด
- 9. ตอบ มีการแบ่ง CASE tool ออกเป็น 2 แบบ คือ -Upper CASE tool จะใช้ในการสร้างแบบจำลองการประมวลผลและ การออกแบบระบบสารสนเทศในเชิงตรรกะ -Lower CASE tool จะช่วยให้กระบวนการพัฒนาเร็วยิ่งขึ้นโดยการทำ รหัสต้นฉบับ (Source code) จากแบบจำลองตรรกะ แต่ CASE tool ที่นิยมใช้ในปัจจุบันมักจะรวมคุณสมบัติทั้งสองกลุ่มเข้าเป็นผลิตภัณฑ์เดียวกันบาง CASE tool ช่วยสร้างต้นแบบและสร้างโค้ดโมดูล (Code Module) ให้ด้วย จึงช่วยให้การติดตั้งระบบกระทำได้อย่างรวดเร็วขึ้น 2. เครื่องมือที่ใช้ในการพัฒนาระบบ ( TOOL ) คืออะไร พร้อมยกตัวอย่างและภาพประกอบมาให้มากที่สุด ( ต่อ )
- 10. CASE tool ในปัจจุบัน จะสามารถจัดแบ่งประเภทได้เป็นดังนี้ CASE tool ความสามารถ Business process engineering tools ช่วยในการออกแบบกระบวนการทางด้านธุรกิจ Process modeling and management tools ช่วยในการออกแบบและการจัดการกระบวนการทั่วไป Project planning tools ช่วยในการวางแผนการทำ Project Risk analysis tools ช่วยในการวิเคราะห์ความเสี่ยงที่จะเกิดขึ้นกับ Project Project management tools ช่วยในการจัดการและบริหาร Project Requirements tracing tools ช่วยในการติดตามการกำหนด requirement ต่างๆ ของ Project Metrics and management tools ช่วยในการจัดการและการสร้าง Metric Documentation tools ช่วยในการจัดทำเอกสารของ Project System software tools ช่วยสนับสนุนการทำงานกับซอฟแวร์ระบบ Quality assurance tools ช่วยในการทำ Quality assurance Database management tools ช่วยในการบริหารและจัดการฐานข้อมูล Software configuration management tools ช่วยในการจัดการการทำ Software configuration Analysis and design tools ช่วยในการทำงานในวิเคราะห์และออกแบบระบบ
- 11. CASE tool ในปัจจุบัน จะสามารถจัดแบ่งประเภทได้เป็นดังนี้ ( ต่อ ) CASE tool ความสามารถ PRO/SIM tools ช่วยในการทำ prototype และจำลองการทำงาน ( Prototyping and Simulation) ของระบบ Interface design and development tools ช่วยในการออกแบบและพัฒนา Interface ของระบบ Prototyping tools ช่วยในการทำ Prototype ต่างๆ Programming tools ช่วยในการเขียนโปรแกรม คือจะรวมเอา compiler, editor และ debugger ไว้ด้วยกัน Web development tools ช่วยในการพัฒนา website Integration and testing tools ช่วยในการทำ Integration และการทดสอบการทำงานของระบบ Static analysis tools ช่วยในการทดสอบการวิเคราะห์ต่างๆ Dynamic analysis tools ช่วยในการวิเคราะห์และทดสอบระบบแบบ Dynamic Test management tools ช่วยในการจัดการการทดสอบระบบ Client/server testing tools ช่วยในการทดสอบการทำงานของระบบที่เป็นแบบ Client/server Reengineering tools ช่วยในการทำ Software reengineering ระบบเก่า
- 12. 3. แบบจำลองที่ใช้ในการพัฒนาระบบ (Model) คืออะไร พร้อมยกตัวอย่าง และภาพประกอบมาให้มากที่สุด ตอบ - Flow Chart - Data Flow Diagram (DFD) -Entity Relationship Diagram (ERD) - Structure Chart - Use Case Diagram - Class Diagram - Sequence Diagram - PERT Chart - Gantt Chart -Organization Hierarchy Chart
- 13. ตัวอย่าง Flow Chart เป็นตัวแทนในการแสดงกระบวนต่างๆ โดยใช้กล่องหลายรูแบบแสดงแทนขั้นตอนต่างๆ และใช้เครื่องหมายลูกศรเป็นตัวเชื่อมใช้ในการวิเคราะห์ , ออกแบบ , ทำเอกสารประกอบ , จัดการกระบวนการหรือโปรแกรม
- 18. 5.UML คืออะไร และ CASE TOOL คืออะไร CASE (Computer-Aided Software Engineering) คือ การนำเอาแบบแผนหรือวิธีการทางด้านคอมพิวเตอร์เข้ามาช่วยในการจัดระเบียบและควบคุมการพัฒนาซอฟแวร์โดยเฉพาะซอฟแวร์ที่มีขนาดใหญ่และความซับซ้อนสูงที่ต้องมีส่วนประกอบของซอฟแวร์และคนพัฒนาจำนวนมากๆ UML (Unified Modeling Language) คือ สัญลักษณ์มาตรฐานที่ใช้ในวิธีการออกแบบการพัฒนาเชิงวัตถุ ( Object-oriented Design Methodology) ซึ่งสัญลักษณ์ที่ใช้นั้นจะได้มาจากการรวมเอาวิธีการในการออกแบบและวิเคราะห์แบบ Object-oriented
- 21. 7. จากที่ศึกษา CASE มาท่านจะเลือกใช้ Tool โปรแกรมใดที่จะช่วยพัฒนาระบบเพราะเหตุใด ตอบ Process modeling and management tools เพราะช่วยในการออกแบบและ การจัดการกระบวนการทั่วไป จะช่วยคุณเพิ่มประสิทธิภาพ ในการทำงาน พร้อมทั้งช่วยให้ งานของสำเร็จได้ง่าย ขึ้น
- 23. web.nkc.kku.ac.th/322371/ RAD .ppt http://hlinzaii.50webs.com/se5_1.html http://fbla.nan.rmutl.ac.th/wp-content/uploads/2009/10/%E0%B8%9A%E0%B8%97%E0%B8%97%E0%B8%B5%E0%B9%88-3-%E0%B9%80%E0%B8%84%E0%B8%A3%E0%B8%B7%E0%B9%88%E0%B8%AD%E0%B8%87%E0%B8%A1%E0%B8%B7%E0%B8%AD%E0%B9%83%E0%B8%99%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%9E%E0%B8%B1%E0%B8%92%E0%B8%99%E0%B8%B2%E0%B8%A3%E0%B8%B0%E0%B8%9A%E0%B8%9A%E0%B8%87%E0%B8%B2%E0%B8%99.pdf classroom.hu.ac.th/courseware/SA/ppt/ch3.ppt http://www.narisa.com/forums/index.php?showtopic=894 home.npru.ac.th/noppadon/4142502/slide/05_ ObjectOrientedDesign .ppt http://hlinzaii.50webs.com/se5.html http://don-jai.com/iq-%E0%B9%80%E0%B8%84%E0%B8%A3%E0%B8%B7%E0%B9%88%E0%B8%AD%E0%B8%87%E0%B8%A1%E0%B8%B7%E0%B8%AD%E0%B8%84%E0%B8%B8%E0%B8%93%E0%B8%A0%E0%B8%B2%E0%B8%9E-quality-tools/ http://downloads.zdnet.com/abstract.aspx?docid=2508211
- 24. ผู้จัดทำ นางสาววาทินี พอกทรัพย์ 523050254-7 นาย อภินันท์ กินรี 523050481-6 สาขาคอมพิวเตอร์ศึกษา คณะศึกษาศาสตร์ มหาวิทยาลัยขอนแก่น ปีการศึกษา 2553