Lesson 10 Software Evolution

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
องค์ประกอบที่เกี่ยวข้องกับโครงงานอิเล็กทรอนิกส์
Advertisements

School of Business Administration BANGKOK UNIVERSITY
ส่วนที่ : 2 เรื่อง การวางแผน
การวางแผนพัฒนาระบบสำนักงาน
ประเภท โครงการต่อยอด/ขยายผลโครงการเดิม(A)
การฝึกอบรมหลักสูตร การบริหารจัดการโครงการ และการติดตามประเมินผล
ความเดิมจากตอนที่แล้ว
วงจรพัฒนาระบบ (System Development Life Cycle)
การบำรุงและปรับปรุงระบบ KKU-FMIS รายงานโครงการหมายเลข COE
บทที่ ๑ ความรู้เบื้องต้น เกี่ยวกับการวิเคราะห์ และออกแบบระบบสารสนเทศ (Introduction to Information System Analysis) 22/7/03 บทที่
ขั้นตอนการออกแบบมัลติมีเดีย Multimedia Design Step
การพัฒนาระบบประเมินผลการปฏิบัติงานของพนักงานแทนที่กา​รใช้ระบบ SAP-ESS ในส่วนของกา​รประเมินผลการปฏิบัติงานเพื่อลดค่าใช้จ่ายในเรื่องของ License.
Graduate School Khon Kaen University
โครงร่างองค์กร (Organizational Profile)
เรื่องสืบเนื่อง การวางแผนและบริหารโครงการสำหรับส่วน ราชการ
ซอฟต์แวร์.
การพัฒนาผลิตภัณฑ์ใหม่ และสาเหตุที่ทำให้ผลิตภัณฑ์ใหม่ล้มเหลว
Chapter 12 : Maintaining Information Systems
คำถามของการบริหารการค้าปลีก
การวิเคราะห์ความต้องการด้านระบบ
การจัดหา การติดตั้ง และการบำรุงรักษาระบบ
สรุปข้อดีข้อเสีย Proprietary VS Off-the-shelf Software
การพัฒนากระบวนการพัฒนาซอฟต์แวร์ (Software Process Improvement)
วิศวกรรมซอฟต์แวร์ (Software Engineering)
SCC - Suthida Chaichomchuen
Software Process Models
The General Systems Theory
Analyzing The Business Case
บทที่ 2 การพัฒนาระบบ (System Development)
การวางแผนและ การจัดทำ IT Audit
Nursery ก็ลดโลกร้อนได้
Software Quality Management
บทที่ 12 การเปลี่ยนแปลง และการพัฒนาองค์การ.
สัมมนาคอมพิวเตอร์ธุรกิจ
บทที่ 15 Start การซ่อมบำรุงระบบ (System Maintenance) Next.
บทที่ 1 ความรู้พื้นฐานในการ พัฒนาระบบ
Benchmarking.
การศึกษาความเป็นไปได้ (Problem Definition and Feasibility Study)
วิธีการทางคอมพิวเตอร์
การออกแบบฐานข้อมูลและการบริหารธุรกิจ
System Development Lift Cycle
3. การพัฒนาระบบสารสนเทศ
ความต้องการเชิงคุณภาพ (Qualitative Requirements)
Effort Estimation การประมาณการณ์บุคลากร
บทที่ 4 Plan การวางแผน.
บทนำการบริหารโครงสร้างพื้นฐานเทคโนโลยีสารสนเทศ
Definition and organization
การเพิ่มผลผลิต Productivity
II > วงจรการพัฒนาระบบ (System Development Life Cycle)
การตรวจสอบ และการควบคุมภายใน
: information security (ความมั่นคงปลอดภัยของสารสนเทศ)
การวิเคราะห์โครงการ (Project Appraisal)
บทที่ 6 การเปลี่ยนแปลงเข้าสู่การออกแบบระบบ การประเมินทางเลือกซอฟท์แวร์
Evaluation as a Strategy ; สำนักประเมินผล สำนักงบประมาณ
WATTANAPONG SUTTAPAK SOFTWARE ENGINEERING, SCHOOL OF INFORMATION COMMUNICATION TECHNOLOGY, UNIVERSITY OF PHAYAO Chapter 4 analysis of algorithm efficiency.
การติดตาม และการควบคุม (Monitoring and Control)
การควบคุมผลกาปฏิบัติงาน
INTRODUCTION SOFTWARE ARCHITECTURE AND DESIGN WATTANAPON G SUTTAPAK Software Engineering, School of Information Communication Technology, University of.
การวิจัยการบริหาร ทรัพยากรมนุษย์ ดร. สุจิตรา ธนานันท์
ADDIE Model.
ระบบงานตรวจการจ้าง รายการสิ่งก่อสร้างวิทยาเขตปัตตานี
Chapter 1 Introduction to Software Engineering – Software Engineering Chaichan Kusoljittakorn 1.
บทบาทของข้อมูลการตลาด
การพัฒนาการเรียนรู้รายวิชาการโปรแกรมคอมพิวเตอร์ด้วย e-Learning
7.Discussion การอภิปราย นายวัชรกร เดชะบุญ รหัสนิสิต
หน่วยที่1 ข้อมูลทางการตลาด
Business Intelligence (BI) ธุรกิจอัจฉริยะ
PowerPoint Introduction to Computer Information Science KANOKWATT SHIANGJEN.
Yeunyong Kantanet School of Information and Communication Technology
ใบสำเนางานนำเสนอ:

Lesson 10 Software Evolution www.ict.up.ac.th/uthais/ KANOKWATT SHIANGJEN

บทนำ ภายหลังจากที่มีการติดตั้งและใช้งานระบบแล้ว ย่อมต้องพลวัตในการพัฒนา ปรับปรุง ดูแลรักษาให้ระบบสามารถใช้งานได้อย่างมีประสิทธิภาพ และประสิทธิผล ต่อไป โดยที่ 90% ของค่าใช้จ่ายเกี่ยวกับซอฟต์แวร์ จะถูกใช้ไปกับการ ปรับปรุง ดูแลรักษาซอฟต์แวร์ School of Information and Communication Technology., University of Phayao

วัตถุประสงค์ เพื่อให้นิสิตเข้าใจเกี่ยวกับการเปลี่ยนแปลง ซึ่งเป็นสิ่งที่แน่นอน และต้องเกิดขึ้น การทำให้โปรแกรมมีวิวัฒนาการเหมือนมนุษย์ และสิ่งมีชีวิตอื่นๆ เพื่อให้นิสิตเข้าใจถึงวิธีการดูแลรักษาระบบ และปัจจัยที่มีผลกระทบต่อค่าใช้จ่ายในการดูแลรักษาระบบ เพื่อให้นิสิตสามารถประเมินว่าควรจะเลิกใช้, ดูแลรักษา หรือต้องมีการรื้อเพื่อปรับปรุงระบบ School of Information and Communication Technology., University of Phayao

เนื้อหา พลวัตวิวัฒนาการของโปรแกรม (Program Evolution Dynamics) การบำรุงรักษาซอฟต์แวร์ (Software Maintenance) กระบวนการวิวัฒนาการ (Evolution Processes) วิวัฒนาการระบบเดิม (Legacy System Evolution) School of Information and Communication Technology., University of Phayao

A Spiral Model of Development and Evolution School of Information and Communication Technology., University of Phayao

พลวัตวิวัฒนาการของโปรแกรม (Program Evolution Dynamics) (1/3) เป็นการศึกษาเกี่ยวกับความเปลี่ยนแปลงที่เกิดขึ้นกับระบบ โดย Lehman และ Belady ประกอบด้วยกฎ 5 ข้อ คือ ข้อที่ 1 กระบวนการดูแลรักษาระบบ (System Maintenance) เป็นสิ่งที่ต้องเกิดขึ้นอย่างแน่นอน สาเหตุเนื่องจาก สิ่งแวดล้อมของระบบเปลี่ยน ความต้องเปลี่ยน เป็นต้น ข้อที่ 2 เมื่อระบบเกิดการเปลี่ยนแปลง ทำให้โครงสร้างเปลี่ยนแปลง ซึ่งมีวิธีการป้องกันอย่างเดียว คือ ลงทุนในการดูแลรักษาระบบ โดยไม่ต้องเพิ่มฟังก์ชันใหม่เข้าไป School of Information and Communication Technology., University of Phayao

พลวัตวิวัฒนาการของโปรแกรม (Program Evolution Dynamics) (2/3) ข้อที่ 3 ในระบบขนาดใหญ่หากมี พลวัตในตัวเองตั้งแต่เริ่มสร้างแล้ว จะทำให้เห็นแนวทางในกระบวนการดูแลรักษาระบบได้ ข้อที่ 4 ในโครงการพัฒนาซอฟต์แวร์ขนาดใหญ่ การเปลี่ยนแปลง พนักงาน หรือทีมงาน จะมีผลกระทบ ที่มองไม่เห็นในระยะยาว เนื่องจากจะมี Overhead ในการติดต่อประสานระหว่างทีมงาน School of Information and Communication Technology., University of Phayao

พลวัตวิวัฒนาการของโปรแกรม (Program Evolution Dynamics) (3/3) ข้อที่ 5 การเปลี่ยนแปลงเกิดขึ้นตลอดเวลา ตั้งแต่เรามีการ Release ซอฟต์แวร์ออกไป เพื่อแก้ไขข้อผิดพลาด (Fault) โดยการเพิ่มฟังก์ชันใหม่เข้าไป ย่อมต้องส่งผลให้มีโอกาสเกิดข้อผิดพลาดเพิ่มขึ้นอีก ดังนั้น เราไม่ควรเตรียมงบประมาณเฉพาะ การเพิ่มฟังก์ชันใหม่เข้าไป แต่เราควรเตรียมไว้สำหรับข้อผิดพลาดที่จะเพิ่มขึ้นมาในอนาคตด้วย School of Information and Communication Technology., University of Phayao

การบำรุงรักษาซอฟต์แวร์ (Software Maintenance) การบำรุงรักษาซอฟต์แวร์ เป็นกระบวนการทั่วไปที่ต้องเกิดขึ้นภายหลังจากการส่งมอบซอฟต์แวร์ แบ่งได้ 3 ประเภท คือ เพื่อแก้ไขข้อบกพร่องของซอฟต์แวร์ (Corrective Maintenance) เมื่อสิ่งแวดล้อมในการดำเนินการเปลี่ยนแปลงไป (Adaptive Maintenance) เมื่อมีการเพิ่ม หรือแก้ไขฟังก์ชันการทำงานของระบบ (Perfective /Enhancement Maintenance) School of Information and Communication Technology., University of Phayao

Maintenance Cost COCOMO 2 Model of Cost Estimation สามารถใช้ในการประมาณการ แรงงานที่ต้องใช้ในการบำรุงรักษาซอฟต์แวร์ School of Information and Communication Technology., University of Phayao

กระบวนการวิวัฒนาการ (Evolution Processes) กระบวนการวิวัฒนาการซอฟต์แวร์ ขึ้นอยู่กับปัจจัยหลายด้าน เช่น ประเภทของซอฟต์แวร์ กระบวนการในการพัฒนาซอฟต์แวร์ กลุ่มบุคคลที่เกี่ยวข้องในการพัฒนาซอฟต์แวร์ School of Information and Communication Technology., University of Phayao

Evolution Processes School of Information and Communication Technology., University of Phayao

System Evolution Process School of Information and Communication Technology., University of Phayao

Change Implementation The Emergency Repair Process School of Information and Communication Technology., University of Phayao

Software Re-Engineering Forward Engineering Software Re-Engineering School of Information and Communication Technology., University of Phayao

The Re-Engineering Process School of Information and Communication Technology., University of Phayao

Re-Engineering Approaches School of Information and Communication Technology., University of Phayao

วิวัฒนาการระบบเดิม (Legacy System Evolution) ในองค์กรที่มีงบประมาณจำกัด สำหรับการดูแลรักษาระบบเดิมให้ทันสมัย มีทั้งหมด 4 กลยุทธ์ในการวิวัฒนาการ ทิ้งระบบเดิม ไม่เปลี่ยนแปลงระบบ แต่ดูแลรักษาอย่างต่อเนื่อง ปรับปรุงระบบ (Re-Engineering) แทนที่ด้วยระบบงานใหม่บางส่วน หรือทั้งหมด School of Information and Communication Technology., University of Phayao

System Quality VS. Business Value Low ต้นทุนสูง แต่ได้ผลตอบแทนต่ำ ควรยกเลิกใช้งาน High ต้นทุนสูง และผลตอบแทนสูง ควร Re-Engineering เพื่อเพิ่มคุณภาพให้สูงขึ้น ต้นทุนต่ำ และผลตอบแทนต่ำ อาจดูแลรักษาตามปกติ หรือถ้าไม่คุ้ม ก็ยกเลิกการใช้งาน ต้นทุนต่ำ แต่ผลตอบแทนสูง ควรทำการดูแลรักษาอย่างต่อเนื่อง School of Information and Communication Technology., University of Phayao

สรุป การดูแลรักษา ระบบ เกิดขึ้นภายหลังจากที่เราได้ทำการส่งมอบซอฟต์แวร์ให้กับลูกค้า สิ่งที่เกิดขึ้นก็คือ ความเปลี่ยนแปลง เนื่องจากเหตุผล 3 ประการ คือ แก้ไขข้อบกพร่อง (Corrective) ปรับให้เข้ากับสิ่งแวดล้อมใหม่ (Adaptive) การเพิ่ม/แก้ไขฟังก์ชันการทำงาน (Perfective/Enhancement) ค่าใช้จ่ายเกี่ยวกับวิวัฒนาการซอฟต์แวร์นั้น มีอัตราส่วนประมาณ 90% ของค่าใช้จ่ายทั้งหมด การพิจารณาว่าคุ้มค่าหรือไม่ในการดูแลรักษา คือ Business Value School of Information and Communication Technology., University of Phayao

References Ian Sommerville. Software Engineering 8th Edition. Addison Wesley Publishers., 2007 Watts S Humphrey. A Self Improvement Process for Software Engineers. Addison Wesley Professional., 2005 Software Engineering Institute | Carnegie Mellon. [online] http://www.sei.cmu.edu/., 2010 School of Information and Communication Technology., University of Phayao