software development methodologyinstructor.ru.ac.th/urai/int3103/int3103_1.pdf · 2014. 7. 9. ·...
TRANSCRIPT
![Page 1: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/1.jpg)
Software Development Methodology
โดย ผศ.ดร.อไร ทองหวไผ
![Page 2: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/2.jpg)
เนอหา
วศวกรรมซอฟตแวร
การวางแผนโครงงาน
การวเคราะหความตองการ
การออกแบบระบบ
การออกแบบโปรแกรม
![Page 3: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/3.jpg)
เนอหา
การพฒนาโปรแกรม
การทดสอบโปรแกรม
การทดสอบระบบ
การสงมอบระบบ
การบ ารงรกษาระบบ
ความผดพลาดในการพฒนาระบบ
![Page 4: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/4.jpg)
ครงท 1
วศวกรรมซอฟตแวรคออะไร?
![Page 5: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/5.jpg)
วศวกรรมซอฟตแวรคออะไร การพฒนาระบบงานทประสบผลส าเรจโดยใชความรทางดานคอมพวเตอรและการประมวลผล ซงตองเขาใจถงธรรมชาตของปญหา และเลอกใชเทคโนโลย เชนเครองมอ (tools)ทเหมาะสม รวมทงเทคนคตางๆ เพอชวยในการแกปญหา
![Page 6: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/6.jpg)
วศวกรรมซอฟตแวร คอกระบวนการสรางสรรคโปรแกรมโดยใชหลกทางวศวกรรมเขามาชวยในการด าเนนการสราง
อ.สมหมาย สขค า
Software Engineering Definition
![Page 7: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/7.jpg)
Software Engineering Definition
“Software Engineering is systematic approach to the development operation , maintenance , retirement of software”
“การน าเอาหลกการทางวศวกรรมมาใชในการพฒนาซอฟตแวรใหเปนไปอยางมระบบ”
IEEE 83
![Page 8: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/8.jpg)
Software Engineering Definition
การพฒนาซอฟทแวรใหไดผลลพธใกลเคยงเปาหมาย หรอ บรรลเปาหมายของการพฒนาอนไดแก
@ ซอฟทแวรทมคณภาพ
@ สามารถสงมอบไดตรงเวลา
@ อยภายใตงบประมาณทคาดการณ
@ มคณสมบตตรงตามความตองการของผใช
ผศ.ดร.สมนก ครโต
![Page 9: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/9.jpg)
Software Engineering Definition
“วชาการวาดวยการออกแบบโปรแกรมคอมพวเตอร ตลอดจนการบรหารงานการพฒนาเพอทจะไดมาซง ผลตผลซอฟตแวรทมคณภาพสง ราคาถก และภายในเวลาทก าหนดให”
สชาย ธนวเสถยร
จากหนงสอ Software Project Development
![Page 10: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/10.jpg)
ลกษณะของวศวกรรมซอฟตแวร
1. เกยวของกบการสรางโปรแกรมขนาดใหญ
2. สามารถจดการเกยวกบความซ าซอนได
3. เนนการท างานรวมกนของบคลากร
4. สามารถเปลยนแปลงไดงายเมอจ าเปน
5. เนนการพฒนาใหมประสทธภาพ
6. สนองความตองการของผใช
![Page 11: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/11.jpg)
การแกปญหา
โปรเซสทมการแบงโครงสรางขนาดใหญใหเปนสวนยอยๆ
![Page 12: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/12.jpg)
การแกปญหา
การน าปญหายอยๆมารวมเขาดวยกนเปนโครงสรางทใหญ
![Page 13: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/13.jpg)
วธการแกปญหา
เครองมอ(tools)
เครองพมพดด เครองคอมพวเตอร แกปญหาซงใหความสะดวก ความ
รวดเรว มคณภาพสง และเพมผลผลตไดมากขน
เทคนค(techniques)
ประสบการณในการท างานหรอเปนพรสวรรคของแตละบคคล
แมครว procedure or method
![Page 14: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/14.jpg)
ขนตอนการพฒนาซอฟตแวรทมคณภาพ
Need Requirement Design Software
Correctness
Verification
Validation
Verification คอ การตรวจสอบความถกตองหลงจากการยอมรบในรายละเอยด (Specification)
Validation คอ การตรวจสอบความถกตองโดยการพจารณาจากความตองการของผใชงาน
![Page 15: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/15.jpg)
![Page 16: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/16.jpg)
![Page 17: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/17.jpg)
คณสมบตของซอฟตแวรทมคณภาพ มความถกตอง (Correctness) มความนาเชอถอ (Reliability) ใชงานงาย (User Friendliness) มความงายตอการปรบเปลยน (Adaptability) สามารถน ากลบมาใชงานใหมได (Reusability) มความเขากนไดกบระบบทแตกตาง (Interoperability) มประสทธภาพ (Efficiency) มความสะดวกในการเคลอนยาย (Portability) มความปลอดภย (Security)
![Page 18: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/18.jpg)
ซอฟตแวรทมคณภาพ
สามารถท างานตามทผใชตองการใหกระท าไดอยางถกตอง
ใชทรพยากรคอมพวเตอรอยางถกตองและมประสทธภาพ
งายตอการเรยนร และใชงาน ผพฒนาซอฟตแวร สามารถออกแบบ ถอดรหส
ทดสอบ และ บ ารงรกษาระบบไดงาย
![Page 19: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/19.jpg)
การผลตซอฟตแวรทมคณภาพ
![Page 20: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/20.jpg)
งานและความรบผดชอบ การพฒนาโครงงานซอฟตแวร
![Page 21: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/21.jpg)
ระบบประกอบดวย กจกรรม(activities) หมายถง
เหตการณตางๆทเกดขนในระบบ อาจเปนกจกรรมการเคลอนยายขอมล
(move)จากทหนงไปอกทหนง
กจกรรมหนงๆนนประกอบดวยสมาชกทเกยวพนธกน เรยกวา ออฟเจก(objects) หรอ เอนตต(entities) เชนกจกรรมการพมพระเบยนนกศกษาทเกรดเฉลยนอยกวา 2.0
ขอบเขต(boundary)ของระบบ
![Page 22: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/22.jpg)
![Page 23: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/23.jpg)
ระบบ Paycheck
ระบบนเรมตนดวยการรบอนพตซงเปนเอนตต PAY INFORMATION เขาสระบบตอจากนนมกจกรรมการตรวจสอบวนท ตอดวย กจกรรมการค านวณ และกจกรรมการพมพ ซงความสมพนธของแตละเอนตตและกจกรรมเปนการท างานตามล าดบ จดจบหรอผลลพธของระบบคอPAYCHECKS ทสงไปยง mail
room
![Page 24: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/24.jpg)
Water Monitoring System
แสดงถงการแบงระดบของ Water
Monitoring System ซงในแตละระดบระบหนาทการท างานของระบบอยางชดเจน โดยสเหลยมแตละอนจะแทนขอบเขตของการท างานของระบบนน ในทนสเหลยมทอยในสดจะเปนระบบทเลกทสด ออฟเจกหรอกจกรรมของสวนนมความสมพนธกบสเหลยมในระดบนอก และมความสมพนธกนเกยวโยงกนเปนล าดบ จนไดผลลพธทตองการ
![Page 25: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/25.jpg)
ผใชทไมมความรทางดานคอมพวเตอร ตอตานไมยอมรบระบบใหม
การเปลยนระบบ A ไปเปนระบบ B ซงการพฒนาจะคอยๆเปลยนแปลงจาก A
เปน A’ และ เปน B
ตามล าดบ
![Page 26: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/26.jpg)
ขนตอนการพฒนาซอฟตแวรประกอบดวย
การก าหนดและวเคราะหความตองการ
การออกแบบระบบ การออกแบบโปรแกรม การเขยนโปรแกรม
การทดสอบโมดล การทดสอบรวม การทดสอบระบบ การสงมอบระบบ การบ ารงรกษาระบบ
![Page 27: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/27.jpg)
![Page 28: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/28.jpg)
ทมงานในการพฒนาระบบ
![Page 29: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/29.jpg)
ปญหาในการพฒนาซอฟตแวร Changing Constraints and Requirement
Phased Development System
Interaction with Other Systems
The Nature of Computer System Themselves
![Page 30: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/30.jpg)
Phased Development System
![Page 31: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/31.jpg)
![Page 32: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/32.jpg)
ชนดของโครงงานซอฟตแวร
![Page 33: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/33.jpg)
![Page 34: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/34.jpg)
![Page 35: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/35.jpg)
![Page 36: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/36.jpg)
![Page 37: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/37.jpg)
ระดบความยากงายของโครงงานนโดยเปรยบเทยบกบขอมล
![Page 38: Software Development Methodologyinstructor.ru.ac.th/urai/int3103/INT3103_1.pdf · 2014. 7. 9. · Software Engineering Definition “Software Engineering is systematic approach to](https://reader033.vdocuments.net/reader033/viewer/2022051902/5ff1f8fe96c90376d613d082/html5/thumbnails/38.jpg)
สรป
คาของความซบซอนอยใน ระดบต า(L) 5 คณลกษณะ ระดบกลาง(M) 11 คณลกษณะ ระดบสง(H) 5 คณลกษณะ
สามารถสรปไดวาโครงงานนระดบความยากงาย ในระดบปานกลาง