รูปแบบวงจรพัฒนาระบบ

Download Report

Transcript รูปแบบวงจรพัฒนาระบบ

รู ปแบบวงจรพัฒนาระบบ
Content
• แนวทางการพัฒนาระบบ
• รู ปแบบการพัฒนาระบบ
• Methodologies: แนวทางการปฏิบตั ิ
แนวทางการพัฒนาระบบ
• การสร้างระบบงานใหม่หรื อปรับเปลี่ยนระบบงานเดิมที่มี
อยูแ่ ล้วให้สามารถทางานเพื่อแก้ปัญหาการดาเนินงานทาง
ธุรกิจได้ตามความต้องการของผูใ้ ช้งาน
• โดยอาจนาคอมพิวเตอร์มาช่วยในการนาข้อมูลเข้าสู่ ระบบ
เพื่อประมวลผล เรี ยบเรี ยง เปลี่ยนแปลงและจัดเก็บทาให้
ได้ผลลัพธ์ตามต้องการ
แนวทางการพัฒนาระบบ
• System development คือกิจกรรมที่ผลิตระบบ
สารสนเทศ เพื่อแก้ปัญหาขององค์กร
แนวทางการพัฒนาระบบงาน (ต่ อ)
• กระบวนการทางความคิด (Logic Process) ในการ
พัฒนาระบบสารสนเทศ เพื่อแก้ปัญหาทางธุรกิจและตอบสนอ
ความต้องการของผูใ้ ช้ได้
• โดยภายในวงจรนั้นจะแบ่งกระบวนการพัฒนาออกเป็ นระยะ
โดยแต่ละระยะจะประกอบไปด้วยขั้นตอนต่าง ๆ ซึ่งแต่ละ
โครงการพัฒนาระบบจะมีการแบ่งระยะขั้นตอนในแต่ละระยะ
แตกต่างกัน
วงจรการพัฒนาระบบงาน
• System Analysis
– Feasibility Study
– Requirement Analysis
• System Design
– Logical Design
– Physical Design
• Programming/Construction & Testing
• Installation/Conversion
• System Operation and Maintenance
Systems Development Life
Cycle
Systems Development Life
Cycle
รูปแบบของวงจรพัฒนา
-SDLC
-SDLC
-SDLC
-SDLC
-SDLC
แบบ Waterfall
แบบ Adapted waterfall
แบบ Evolutionary
แบบ Incremental
แบบ Spiral
SDLC แบบ WaterfallPlanning
• หลักการเปรี ยบเสมือนกับน้ าตก ซึ่ งไหลจากที่สูงลงสู่ ที่ต่า และไม่
สามารถไหลย้อนกลับมาในทางตรงกันข้ามได้อีก
• เมื่อทาขั้นตอนหนึ่งแล้วจะไม่สามารถย้อนกลับมาที่ข้ นั ตอนก่อน
หน้าได้อีก
• จุดอ่อนของรู ปแบบนี้คือ หากมีขอ้ ผิดพลาดเกิดขึ้นที่ข้ นั ตอนก่อน
หน้านี้ จะไม่สามารถย้อนกลับมาแก้ไขได้ซ่ ึ งทาได้ยาก ยกเว้นว่า
ระบบงานนั้นมีรูปแบบการพัฒนาที่ดีและตายตัวอยูแ่ ล้ว
SDLC แบบ WaterfallPlanning
SDLC แบบ WaterfallPlanning
SDLCแบบ Adapted Waterfall
• รู ปแบบในการพัฒนาระบบงานที่ปรับปรุ งมาจากแบบ
Waterfall โดยในแต่ละขั้นตอน เมื่อดาเนินงานอยู่
สามารถย้อนกลับมายังขั้นตอนก่อนหน้าเพื่อแก้ไข ข้อผิดพลาดหรื อ
สามารถย้อนกลับข้ามขั้น โดยไม่จาเป็ นต้องเป็ นขั้นตอนที่ติดกันได้
SDLCแบบ Adapted Waterfall
SDLC แบบ Evolutionary
• แนวคิดที่เกิดมาจากทฤษฎีวิวฒั นาการ โดยจะพัฒนาระบบงานจน
เสร็ จสิ้ นใน Version แรกก่อน จากนั้นจึงพิจารณาระบบ ใน
Version แรก ที่ได้พฒั นาผ่านมาถึงข้อดีและข้อเสี ยแล้ว จึงเริ่ ม
กระบวนการพัฒนาระบบงานใหม่จนได้ระบบงานใน Version ที่
2 ต่อ ๆ ไปจนกว่าจะได้ระบบงานที่สมบูรณ์ที่สุด
SDLC แบบ Evolutionary
SDLC ในรู ปแบบ Incremental
• มีลกั ษณะคล้ายคลึงกับแบบ Evolutionary แต่มีขอ้
แตกต่างกันตรงที่ ตัว Product เนื่องจาก Product ที่เกิดขึ้น
ในการพัฒนาขั้นแรกนั้นจะยังไม่ใช่ Product ที่สมบูรณ์ แต่เป็ น
Product ส่ วนแรกเท่านั้น
SDLC ในรู ปแบบ Incremental
SDLC ในรู ปแบบ Spiral
• ลักษณะเป็ นวงจรวิเคราะห์ – ออกแบบ – พัฒนา – ทดสอบ
(Analysis – Design – Implementation Testing) และจะวนกลับมา ในแนวทางเดิม เช่นนี้เรื่ อยไป
จนกระทัง่ ได้ Product ที่สมบูรณ์
• การพัฒนาระบบงานด้วย SDLC ในรู แบบนี้มีความยืดหยุน่ มาก
ที่สุด
SDLC ในรู ปแบบ Spiral
Methodologies : แนวทางการปฏิบตั ิ
หมายถึงวิธีการหรือแนวทางที่จะนากระบวนการทางความคิด
ของวงจรการพัฒนาระบบมาปฏิบัตจิ ริงจนกลายเป็ นระบบที่สามารถ
ใช้ งานได้
เครื่องมือในการพัฒนาระบบ (Tools)
คือซอฟต์ แวร์ ที่ช่วยสร้ างหรือวาดแบบจาลองชนิดต่ าง ๆ ตรวจสอบ
ความถูกต้ องของแบบจาลอง ช่ วยสร้ างรายงานและแบบฟอร์ มรวมทั้งสร้ าง
โค้ ดโปรแกรมให้ อตั โนมัติ
ตัวอย่ างเครื่องมือ
•
•
•
•
•
Project Management Application Drawing
Graphics Application
Word Processor
Text Editor
Computer-Aided System Engineering
(CASE) Tools
• Code Generator Tool
• Database Management Tool
แบบจาลอง
คือสัญลักษณ์ที่ใช้ในการจาลองข้อเท็จจริ งต่าง ๆ ที่เกิดขึ้นในระบบ ไม่วา่ จะ
เป็ นแบบจาลองระบบหรื อแบบจาลองข้อมูล
• ตัวอย่าง
–
–
–
–
–
–
–
Flow chart
Data Flow Diagram
Entity Relationship Diagram
Structure Chart
Class Diagram
PERT Chart
Gantt Chart
เทคนิค
คือวิธีการที่เป็ นแนวทางเพื่อช่วยให้นกั พัฒนาระบบสามารถดาเนิน
กิจกรรมในขั้นตอนต่าง ๆ ของการพัฒนาระบบได้อย่างมีประสิ ทธิภาพ
• ตัวอย่าง
–
–
–
–
Strategic Planning Techniques
Project Management Techniques
User Interviewing Techniques
Relational Database Design Techniqu
3 Methodologies ที่นาไปใช้กนั
• SSADM (Structured System Analysis and
Design
Methodology
• RAD (Rapid Application Development-base
Methodology)
– Phase Development-based Methodology
– Prototyping-based Methodology
– Throw-away Prototyping-based Methodology
• Object-Oriented Analysis and Design
Methodology
SSADM (Structured System
Analysis and Design Methodology)
เป็ นการปฏิบัตแิ บบลาดับขั้นตอนจากขั้นตอนหนึ่งไปสู่ ข้ันตอนต่ อไป และ
มีการใช้ แบบจาลองทีเ่ ป็ นแผนภาพ เพือ่ อธิบายขั้นตอนการทางานและ
ข้ อมูลทั้งหมดของระบบงานทีจ่ ะพัฒนามีต้นแบบมาจาก waterfall
และสามารถประยุกต์ ใช้ กบั Adaptive waterfall ได้ การใช้
แผนภาพเพือ่ จาลองขั้นตอนการทางานเรียกว่ า Process-center
approach และเรียกการใช้ แผนภาพเพือ่ จาลองข้ อมูลว่ า Datacenter approach
SSADM (Structured System
Analysis and Design Methodology)
SSADM (Structured System
Analysis and Design Methodology)
ข้ อดีของ SSADM
- สามารถรวบรวมความต้ องการจากผู้ใช้ ได้
- การเปลีย่ นแปลงความต้ องการมีน้อย
- ข้ อมูลทีว่ เิ คราะห์ และออกแบบจะตรงกับความ
- ต้ องการของผู้ใช้ และเจ้ าของระบบมากทีส่ ุ ด
ข้ อเสี ยของ SSADM
- ใช้ เวลานานมากในการวิเคราะห์ และออกแบบระบบ
RAD (Rapid Application
Development-base Methodology)
ถูกพัฒนาขึน้ เพือ่ แก้ ไขจุดอ่ อนของ SSADM โดยมีการ
ปรับระยะในวงจรการพัฒนาระบบ ให้ มีข้นั ตอนที่รวบรั ดมาก
ขึน้ และมีการนาเทคนิคและเครื่องมือชนิดต่ าง ๆ เข้ ามา
สนับสนุน เช่ น CASE Tools และโปรแกรมภาษาที่
ช่ วยสร้ างโค้ ดโปรแกรม ช่ วยออกแบบหน้ าจอ เป็ นต้ น
RAD (Rapid Application
Development-base Methodology)
RAD ยังมีการพัฒนาออกเป็ นรูปแบบย่ อย ๆ ได้ หลายแบบ เช่ น
- Phase development-based
methodology
- Prototyping-based methodology
- Throw-away prototyping-based
methodology
Phase development-based
methodology
Phase development-based
methodology
ข้ อดีของ Phased development-based
– ผูใ้ ช้สามารถใช้งานระบบในส่ วนที่ตอ้ งการ และจาเป็ นได้เร็ วกว่า
SSADM
ข้ อเสี ยของ Phased development-based
– ระบบที่นามาใช้อาจจะยังทางานได้ไม่ครอบคลุมระบบทั้งหมด
Prototyping-based methodology
Prototyping-based methodology
ข้ อดีของ Prototype-based
– ใช้เวลาน้อยในการพัฒนา เพราะเป็ นการสร้างต้นแบบของงานก่อน
เหมาะกับระบบงานที่มีขนาดเล็ก
ข้ อเสี ยของ Prototype-based
– ขาดความรอบคอบในการพิจารณาถึงปั ญหาที่จะเกิดตามมาเมื่อใช้
งานระบบทั้งหมด เพราะยากต่อการเรี ยนรู ้
Throw-away prototypingbased methodology
Throw-away prototypingbased methodology
ข้ อดีของ Throw-away Prototyping-based
– ช่วยให้นกั พัฒนามัน่ ใจว่าระบบที่ออกแบบตรงกับความต้องการของผูใ้ ช้
– ลดความเสี่ ยงในการเกิดความผิดพลาด
– มีความน่าเชื่อถือ
ข้ อเสี ยของ Throw-away Prototyping-based
– ใช้ระยะเวลาในการสร้างระบบจริ งนานกว่าแบบ เพราะไม่ได้ใช้ตน้ แบบ
มาทาระบบงาน
Object-Oriented Analysis
and Design Methodology
เป็ นการมองปัญหาในรูปของวัตถุทปี่ ระกอบด้ วยขั้นตอนการ
ทางานรวมกับข้ อมูล ซึ่งปัจจุบันใช้ มาตรฐานของแผนภาพสาหรับ
การวิเคราะห์ และออกแบบคือ
UML (Unified Modeling Language)
หลักการพัฒนาระบบ
1)คานึงถึงเจ้ าของระบบและผู้ใช้
2)พยายามเข้ าถึงปัญหาให้ ตรงจุด
3)กาหนดขั้นตอนการทางานหรือกิจกรรม
4)จัดทาเอกสารประกอบทุกขั้นตอน
5)พิจารณาความคุ้มค่ าของการลงทุน
6)แตกระบบใหญ่ ให้ เป็ นระบบย่อย
7)ออกแบบระบบเพือ่ รองรับการเติบโตและการเปลีย่ นแปลงในอนาคต
การพัฒนาระบบมัลติมีเดีย
• การพัฒนายังอาศัยหลักการของ SDLC เพราะมีความ
ใกล้เคียงกันต่างกันแต่เพียงวิธีปฏิบตั ิ
(Methodology)
– การพัฒนาที่มุ่งเน้นด้านการนาเสนอปฏิสมั พันธ์
– การพัฒนาที่มุ่งเน้นด้านการสอน
• แนวทางการพัฒนายังมุ่งเน้นวัตถุประสงค์และวิธีที่จะนามา
ประยุกต์ใช้ให้ได้
การพัฒนาทีม่ ่ ุงเน้ นด้ านการนาเสนอปฏิสัมพันธ์
การพัฒนาทีม่ ่ ุงเน้ นด้ านการนาเสนอปฏิสัมพันธ์
การพัฒนาทีม่ ่ ุงเน้ นด้ านการนาเสนอปฏิสัมพันธ์
การพัฒนาทีม่ ่ ุงเน้ นด้ านการนาเสนอปฏิสัมพันธ์
การพัฒนาทีม่ ่ ุงเน้ นด้ านการนาเสนอปฏิสัมพันธ์