คุณภาพของ ซอฟต์แวร์และ...

35
คุณภาพของ ซอฟต์แวร์และ กระบวนการพัฒนา

Transcript of คุณภาพของ ซอฟต์แวร์และ...

Page 1: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

คณภาพของซอฟตแวรและ

กระบวนการพฒนา

Page 2: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

คณภาพของซอฟตแวรคออะไร• มาตรฐานคณภาพซอฟตแวรนานาชาต ISO/IEC 9126 ไดก าหนดคณสมบตเชงคณภาพไวดงน

1. ประโยชนใชสอย

2. ความนาเชอถอ

3. การใชงาน

4. ประสทธภาพ

5. การบ ารงรกษา

6. การโอนยายระบบ

Page 3: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

มาตรฐานคณภาพซอฟตแวรนานาชาตคณสมบตเชงคณภาพ คณสมบตรอง

1. ประโยชนใชสอย ตรงความตองการ ความถกตอง ความตอเนอง ตรงตามมาตรฐาน ความปลอดภย

2. ความนาเชอถอ ความสมบรณ ระดบปญหทยอมรบได การฟนฟ

3. การใชงาน ความเขาใจ การเรยนร การใชระบบ

4. ประสทธภาพ ประสทธภาพในการ execute โปรแกรม ประสทธภาพในการใชทรพยากร

5. การบ ารงรกษา การวเคราะห การเปลยนแปลง การทดสอบ เสถยรภาพ

6. การโอนยายระบบ ความเขากบสงแวดลอม งานโอนยายระบบ ความสอดคลองกบมาตรฐาน

Page 4: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

คณภาพของซอฟตแวร• ประโยชนใชสอย หมายถง ซอฟตแวรตองมประโยชน ตรงตามความตองการของลกคา

• เชน ซอฟตแวรตองประมวลผลออกมาถกตอง มความปลอดภย

• การท าใหซอฟตแวรมประโยชนใชสอยทด ตองเรมจากการหาใหไดวาลกคาตองการอะไร

Page 5: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

คณภาพของซอฟตแวร• ความนาเชอถอ หมายถง ลดคาสามารถใชงานซอฟตแวรไดอยางสบายใจ

• โดยทวไป ซอฟตแวรทผานการใชงานมากเทาไร ซอฟตแวรนนกจะผานการปรบปรงแกไขใหสมบรณมากขนเทานน เพราะเมอใชงานไปความผดพลาดทฝงอยในตอนพฒนาซอฟตแวร หรอ ปญหาทคาดไมถงจะปรากฎขนมา

Page 6: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

คณภาพของซอฟตแวร• การใชงาน หมายถง ซอฟตแวรใชงานงาย เขาใจงาย จ างาย

• ประสทธภาพ มตววดหลายอยาง เชน Throughput , Response Time , Turnaround Time ฯลฯ

Page 7: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

คณภาพของซอฟตแวร• การบ ารงรกษา เปนคณสมบตทส าคญมากในซอฟตแวรทใชวงการธรกจ เพราะจะถกน าไปใชหลายป เมอมความจ าเปนตองปรบปรงซอฟตแวร กสามารถวเคราะหการท างานของซอฟตแวรนน แลวน าไปปรบปรงทดสอบไดโดยงาย

Page 8: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

คณภาพของซอฟตแวร• การโอนยายระบบ เปนคณสมบตทส าคญเมอจ าเปนตองโอนยายระบบตามเทคโนโลยใหม เชน การเปลยนไปใชระบบเวบเบส(Web-Based)

• ซอฟตแวรทด ควรโอนยายระบบงายโดยไมตองเขยนซอฟตแวรใหม

Page 9: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

ดชนวดประสทธภาพ• Throughput

• Response Time

• Turnaround Time

Page 10: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

Throughput• หมายถง ปรมาณงานทสามารถประมวลผลไดในหนงหนวยเวลา เชน ใน 1 นาท

• เปนดชนทเหมาะสมส าหรบงานแบบ Batch Processing(ประมวลผลเปนชดใหญ ๆ ตอเนองกน)

• เชน ค านวณคาบรการตอนสนเดอน• Throughput หมายถง ใน 1 ชวโมง ค านวณคาบรการลกคาไดกราย

Page 11: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

Response Time• หมายถง ระยะเวลานบตงแตอนพตขอมลลงไปในหนาจอ จนถงหนาจอแสดงเอาตพตออกมา

• เปนดชนทเหมาะสมส าหรบการประมวลผลแบบออนไลน

• เชน เมอกดต ATM เพอสอบถามยอดเงนคงเหลอในบญช ใชเวลานานเทาไรจงเหนยอดเงน

Page 12: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

Turnaround Time• หมายถง เวลาทงหมดนบตงแตสงอนพตจนไดเอาทพตออกมา ดชนเหมาะสมส าหรบการท างานแบบรอบ เชน สาขายอยรองขอใหบรษทแมพมพรายงานในสนเดอน Turnaround Time จะนบเวลาทงหมดตงแตทสาขารองขอนจนถงไดรายงาน ซงกรวมเวลาทบรษทแมรอจนถงสนเดอน เวลาในการประมวลผล และเวลาในการสงรายงาน

Page 13: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

ไดอยางกตองเสยอยางรถยนตทคณภาพดตองมคณสมบตหลายอยาง เชน ปลอดภย อตราเรงด ประหยดน ามน มศนยบรการมาก กวางขวาง นงสบาย

แตในความเปนจรง แมวาเราทกคนอยากไดรถยนตทมคณภาพด แตเราตองเลอกรถยนตทมคณสมบตบางอยาง

ปลอดภย

อตราเรงดประหยดน ามน

มศนยบรการมาก

กวางขวาง , นงสบาย

Page 14: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

นยามของซอฟตแวรทมคณภาพด• “คณภาพของซอฟตแวร กคอ ระดบการตอบสนองความตองการของลกคา”

• ดงนนตววดคณภาพของซอฟตแวรทแทจรงคอ “ความตองการของลกคา” แตละราย

ลกคาไมไดตองการซอฟตแวรทมคณภาพดทกอยาง แตตองการซอฟตแวรท

ตอบสนองความตองการในการใชงาน

Page 15: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

ระดบการตอบสนองความตองการของลกคา

ประโยชนใชสอย

การใชง

าน

การบ ารงรกษาความนาเชอถอ

ประโยชนใชสอย

การใชง

าน

การบ ารงรกษา

ความนาเชอถอ

ลกคาตองการแบบน

เรานาจะพฒนาแบบน

Page 16: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

ขอบกพรองของซอฟตแวรเปนสงทเหนไดยาก

นยามความตองการ เขยนโปรแกรมออกแบบ ทดสอบ

ซอฟตแวรสวนใหญจะไมรวามขอบกพรอง จนกวาจะไดทดสอบหรอใช

งานจรง

Page 17: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

วธในการทบทวนการออกแบบ ในกระบวนการออกแบบตองมการทบทวนการออกแบบโดยการเขยนผลการออกแบบลงในเอกสาร แลวใหผอนชวยตรวจทานให การทบทวนการออกแบบม 3 วธใหญ ๆ ดงน

• Inspection

• Work Through

• Round Robin

Page 18: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

Inspection• เปาหมายหลกคอ การคนหาขอบกพรองใหพบ

• วธการกคอ การทบทวนในลกษณะของการประชม โดยมผทเรยกวา Modulator เปนผจดการประชม และเพอใหการทบทวนมประสทธผล ตองมการก าหนดขอบเขตทจะทบทวน และทบทวนอยางเขมขนในเวลาอนสน

Page 19: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

เกณฑในการทบทวนแบบ Inspection• ม Modulator ควบคมการประชมแตละครง

• มเลขานการบนทกการประชม

• ใหเวลาในการเตรยมตวทเหมาะสมกอนการประชมแตละครง

• มการควบคมการบนทกขอบกพรองทคนพบ

• ไมน าขอบกพรองทคนพบไปใชในการประเมนผลการท างานหรอลงโทษคนทเกยวของ

Page 20: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

Inspection• การทบทวนแบบ Inspection เปนการทบทวนแบบทวไป จงสามารถใชในการพฒนาซอฟตแวรใดกได และใชในขนตอนไหนกได

• รวมทงในขนตอนการเขยนโปรแกรมและทดสอบโปรแกรมดวย Inspection มาตรฐานมประสทธภาพในการปองกนขอบกพรองสงมาก

• ถอเปนเครองมอทดทสดอนหนงในการปรบปรงคณภาพ

Page 21: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

Work Through• หมายถง การจนตนาการการท างานของโปรแกรม พรอมกบการคนหาขอบกพรองโดยการดสเปกหรอตวโปรแกรมไปดวย

• ซงเหมอนกบ “การดบกเปนกลมโดยการอานซอสดโคด แตไมไดรนโปรแกรมจรง”

Page 22: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

Inspection• โดยมาก Work Through จะเปนการทบทวนแบบไมเปนทางการ โดยมโปรแกรมเมอรทรบผดชอบเปนผเรยกประชมเมอมโอกาส

• เปนวธการทเหมาะสมส าหรบการทบทวน Procedure หรอ การไหล เชน การไหลของการควบคม การไหลของขอมล และเหมาะสมกบการทบทวนชนงานขนสดทายกอนเปนสนคาจรง

Page 23: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

Round Robin• เปนการแบงงานออกเปนสวนยอยๆ เทาๆ กน ตามจ านวนผเขารวมทบทวน แลวกระจายใหผเขารวมทบทวนแตละคนน าเสนอตามล าดบ แลวชวยกนพจารณา

• วธการนมประสทธภาพดในแงของการมสวนรวมของทกคน มการแลกเปลยนความคดเหนซงกนและกน ท าใหทกคนมความสามารถสงขน จงนยมใชเพอการอบรมมากกวาการทบทวนทมประสทธภาพ

Page 24: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

ตวอยางเปาหมายในการทบทวน1 ทบทวนนยามความ

ตองการหลงลมความตองการของลกคาหรอไม เขาใจความตองการของลกคาผดหรอไม

เนน Why และ What แตยงไมเนน How

2 ทบทวนการออกแบบภายนอก

น าความตองการไปเปนฟงกชนไดอยางเหมาะสมหรอไม

3 ทบทวนการออกแบบภายใน

ตรรกะทสรางฟงกชนเหมาะสมหรอไม

โครงสราโปรแกรมดหรอไม แตกฟงกชนเหมานะสมหรอไม

4 ทบทวนการเขยนโปรแกรม

ซอสดโคดเหมาะสมหรอไม อานซอสดโคดรเรองหรอไม

เขยนโปรแกรมตามเกณฑหรอมาตรฐานหรอไม

5 ทบทวนการทดสอบ ขนตอนและเนอหารในการทดสอบเหมาะสมหรอไม

กรณททดสอบครอบคลมเพยงพอหรอไม

Page 25: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

กระบวนการทดสอบ• “การทดสอบเปนสวนหนงของการพฒนาโปรแกรม โดยมขนเพอคนหาขอผดพลาดของโปรแกรม”

• กระบวนการทดสอบชวยใหเกดความชดเจนวา ซอฟตแวรจะมคณภาพดหรอมขอบกพรองอะไรบาง

• กระบวนการทดสอบจะใชเวลามากหรอนอยขนกบวามขอบกพรองมากนอยเพยงไร

Page 26: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

การทดสอบโมดล(Module Test)• เปนการทดสอบทละโมดล โดยใหโมดลนนท างานอยางอสระ แลวตรวจสอบตรรกะภายในโมดล

• มชอเรยกอกอยางหนงวา Unit Test• ปกตโปรแกรมเมอรจะเปนผท าหนาททดสอบ• การทดสอบท าโดยการอานซอสดโคด สรางกรณทดสอบ(Test Case) แลวลองใหโมดลท างานดวาไดผลออกมาตามความคาดหมายหรอไม

• ขอผดพลาดหลกๆทคนพบในขนตอนนไดแก ขอผดพลาดในการเขยนโปรแกรม เรยกวา “บก”

Page 27: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

การทดสอบการเชอมตอโมดล• เปนการน าโมดลมาเชอมตอกน แลวลองใหท างานด เปนการทดสอบวาการท างานโดยรวมถกตองหรอไม แตโมดลทน ามาเชอมตอกนตองผานการทดสอบโมดลในขนตอนแรกกอน

• ความผดพลาดทคนพบในขนตอนนคอ อนเทอรเฟสทไมสมบรณระหวางโมดล เชน จ านวนหรอล าดบของขอมลทรบสงระหวางโมดลไมถกตอง ลมตงคาเรมตนของตวแปรทจะสงขามโมดล หรอลมค านวณบางอยาง เปนตน

Page 28: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

การทดสอบการเชอมตอโมดลโมดล A

B C

E F

G

D

G

Page 29: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

การทดสอบการเชอมตอโมดลแบบบนลงลาง

โมดล A

Stub b Stub c

Stub d Stub e

โมดล A

B C

Stub f

Page 30: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

การทดสอบการเชอมตอโมดลแบบลางขนบน

G

Test Driver

G(ทดสอบเสรจ)

D

Test Driver

E

Test Driver

G(ทดสอบเสรจ)

F

Test Driver

Page 31: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

เปรยบเทยบการทดสอบแบบบนลงลางและลางขนบนการทดสอบ ขอด ขอเสย

แบบบนลงลาง •คนพบขอผดพลาดทส าคญไดเรว เชน อนเทอรเฟสผดพลาด

•โมดลบนทมความส าคญลงจะผานการทดสอบหลายรอบ ท าใหความนาเชอถอโดยรวมสง

•ไมตองมทล Test Driver

•ยากในการแบงงานใหท าพรอมกนหลายคน

•ตองสราง Stub

แบบลางขนบน •สามารถแบงงานเปนสวนๆแลวท าการทดสอบพรอมๆกนไปได จงทดสอบโมดลจ านวนมากไดรวดเรว

•สามารถเลอกทดสอบโมดลทใชงานรวมกอน เพราะมผลกระทบมากหากเกดขอผดพลาด

•ไมตองสราง Stub

•ไมคอยเหนขอมลผดพลาดทส าคญในระยะแรก ๆของการทดสอบ

•ตอมทล Test Driver

Page 32: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

การทดสอบระบบ• เปนการตรวจสอบประสทธภาพและการท างานของระบบโดยรวม

• ตองพยายามทดสอบภายใตสงแวดลอมทใกลเคยงกบการท างานจรงมากทสด

Page 33: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

เทคนคการทดสอบ• White Box Test : เปนการทดสอบทค านงถงโครงสรางภายในระบบ หรออาจเรยกวา Program-Based Test เพราะเปนการสราง Test Case ตามตรรกะของโปรแกรม

• Black Box Test : เปนการทดสอบทไมค านงถงโครงสรางภายในระบบ หรออาจเรยกวา Specification-Based Case เพราะเปนการสราง Test Case ตาม Function Specification

Page 34: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

White Box Testing• เปนการทดสอบเพอดโครงสรางของโปรแกรม หรอทางเดนในโปรแกรม

• ตองสรางชดทดสอบเฉพาะส าหรบการทดสอบในเงอนไขตาง ๆ

• ชดทดสอบจะตองประกอบดวยชดทสามารถประมวลผลอยางปกตและไมปกต

Page 35: คุณภาพของ ซอฟต์แวร์และ ...bls.buu.ac.th/~se888351/2557/12NOV18/SWQ2.pdf · 2014-11-17 · มาตรฐานคุณภาพซอฟต์แวร์นานาชาติ

Black Box Testing• เปนการทดสอบโดยไมค านงถงค าสงภายในโปรแกรม

• เปนการทดสอบ Function ตาง ๆ ของโปรแกรมตาม Requirements ทม

• เปนการทดสอบโดยดคา Output จาก Input ทใหกบโปรแกรมตองมความสอดคลองกน