1-cmm

Page 1

การบริหารโครงการซอฟตแวรและCMM

ดร. ครรชิต มาลัยวงศ ศูนยบริ บริการสารสนเทศทางเทคโนโลยี สํานักงานพัฒนาวิทยาศาสตรและเทคโนโลยีแหงชาติ 11 กุมภาพันธ 2543

1


เนื้อหาคําบรรยาย Q สถานภาพงานพัฒนาซอฟตแวรไทย Q การบริหารงานโครงการซอฟตแวร Q ภาพรวมของ CMM Q การรับรองระดับ CMM Q ไทยกับ CMM Q สรุป

2


โลกของซอฟตแวร Q โลกยุคปจจุบันถูกควบคุมดวยซอฟตแวรนานาประเภท Q ซอฟตแวรระบบ Q ภาษาคอมพิวเตอร Q ซอฟตแวรประยุกต Q ซอฟตแวรระบบฝงตัว Q ซอฟตแวรเหลานี้คือจุดเริ่มตนของความเสี่ยง

3


วิวัฒนาการของซอฟตแวร การพัฒนาซอฟตแวรผานกระบวนการเรียนรูมามาก Q ใครใครเขียนเขียน Q ใครใครคิดคิด Q สับสนและวิกฤติ Q แสวงหาโครงสราง Q พัฒนาแนวทางและกระบวนการ

4


จุดวิกฤติในงานซอฟตแวร การพัฒนาซอฟตแวรมีประเด็นที่เปนจุดวิกฤติหลายดาน อาทิ Q คุณภาพและความนาเชื่อถือ Q สมรรถนะและความยืดหยุน Q ความสรางสรรคและการเปดเผย Q โครงสรางและการปรับเปลี่ยน Q ผลลัพธและกระบวนการ 5


กระบวนการซอฟตแวร กระบวนการ หมายถึง ลําดับของขั้นตอนตาง ๆ ในการดําเนิน งานใหบรรลุเปาหมาย กระบวนการซอฟตแวร หมายถึงกลุมของกิจกรรม วิธีการ วิธการ ี การปฏิบัต และการเปลี่ยนแปลงที่ใชในการพัฒนาและ บํารุงรักษา ซอฟตแวร ตลอดจนผลิตภัณฑที่เกี่ยวเนื่อง กระบวนการซอฟตแวรประกอบดวย คน วิธีการ และ เครื่องมือ 6


คุณภาพซอฟตแวรไทย Q อยูในตัวซอฟตแวรเอง

– Interface – Processing – Results – Robustness Q อยูในกระบวนการสรางซอฟตแวร Q และอยูในกระบวนการบํารุงรักษาซอฟตแวร

7


การบริหารงานโครงการซอฟตแวร

8


การบริหารงานโครงการ Q โครงการ

หมายถึง งานที่มีวัตถุประสงคแนชัด มีจุด เริ่มตน และ จุดสิ้นสุดที่ชัดเจน มีทรั ทรัพยากรที่ชัดเจน Q การบริหารงานโครงการมักจะมอบหมายใหมีผูจัดการ โครงการ ทําหนาที่ควบคุมทรัพยากร และ จัดสรรงาน ตาง ๆ ใหแกผูรวมทีม พรอมกับดูแลใหงานดําเนินไป ตามกําหนดการที่วางไว 9


ซอฟตแวรก็เปนงานโครงการ Q การพัฒนาซอฟตแวรจัดเปนงานโครงการได Q นั่นคือมี เนื้องานและวัตถุประสงคชัดเจน

มี ทรัพยากร งบประมาณ และกําหนดเวลาชัดเจน Q การบํารุงรักษา และ แกไขซอฟตแวรไมจัดวาเปนงาน โครงการ เพราะไมมีกําหนดเวลาสิ้นสุดที่ชัดเจน 10


หลักการบริหารโครงการซอฟตแวร Q ตองเขาใจตัวแปรของโครงการ

– ปริมาณงานที่ตองพัฒนา – กําหนดเวลาดําเนินการ – กําลังคนที่ตองใช – งบประมาณ – วิธีการและเครื่องมือ 11


หลักการบริหารโครงการซอฟตแวร Q ตองมีทีมงานที่มี มความสามารถ คี วามสามารถ

ทั้งตัวผูบริ  บริหารโครง การ ผูรวมทีม และผูประสานงานฝายผูใช Q ตองใชวิธีการพัฒนาที่เปนมาตรฐาน Q ตองบันทึกเหตุการณตาง ๆ ระหวางการดําเนินการไว เปนสถิติเพื่อปรับปรุงในอนาคต Q ตองมีการควบคุมและประเมินโครงการตลอดเวลา 12


หลักการบริหารโครงการซอฟตแวร Q ตองตั้งเปาหมายในการพัฒนาซอฟตแวรที่มีคุณภาพ

– ตรงกับความตองการของผูใช – มีความยื ความยืดหยุน ดูแล แกไข และ ปรับปรุงไดงาย – มีประสิทธิภาพในการทํางาน – มีความถู ความถูกตองนาเชื่อถือ – ใชงาย 13


หลักการบริหารโครงการซอฟตแวร Q ตองวางแผน Q กําหนด Work Breakdown ของโครงการ Q มอบหมายใหลูกทึมทํางานตามภาระงานที่ตนเองมี

ประสบการณ Q ควบคุมการทํางานอยางใกลชิด พรอมชวยแกปญหา และ หาทางแกไขหากมีปญหา 14


กระบวนการซอฟตแวร Q การพัฒนาซอฟตแวร เปนกระบวนการที่เรียกวา

Software Process Q ผลของการพัฒนาเปนผลิตภัณฑ Software product Q ทั้ง Process และ Product จะตองมีคุณภาพ Q อีกนัยหนึ่ง กระบวนการจะตองมีวุฒิภาวะ 15


กระบวนการที่ยังไมบรรลุวุฒิภาวะ Q การทํางานเปนไปแบบตางคนตางคิด

ํ นแนวทางแนชัด Q ไมไดกาหนดเป

Q ขึ้นอยูกับประสบการณของคนพัฒนาซอฟตแวร Q ติดตามความกาวหนาและคุณภาพไดยาก

Q อาจตองยอมลดฟงกชันและคุณภาพเพื่อพัฒนาใหตรงกําหนด Q เสี่ยงที่จะใชเทคโนโลยีที่กาวหนา Q คาบํารุงรักษาสูงมาก

Q คาดคะเนคุณภาพไดยาก

(CMM)

16


กระบวนการที่เจริญกาวหนาสูงสุด Q สอดคลองกับเนื้องานที่ทําจริง ๆ Q เปนกระบวนการที่กําหนดขั้นตอนอยางชัดเจน

มีการ บันทึกการทํางานเปนเอกสาร/เพื่อใหสามารถแกไข ไข ปรับปรุงผลงานไดอย อยางตอเนื่อง Q ทําใหฝ ฝา ยบริหารและฝายอื่น ๆ สนับสนุนไดชัดเจน Q สามารถควบคุมการดําเนินงานได Q ใชเครื่องมือวัดผลและกระบวนการอยางสรางสรรค Q ใชเทคโนโลยี เทคโนโลยีอย อยางมีวินัย 17


ประโยชนของการมีกระบวนการที่บรรลุวุฒิภาวะ Q ชวยใหสามารถพิจารณาเจาะลงไปยังจุดที่เปนสาเหตุ

ของปญหาไดงายขึ้น Q ชวยใหเจาหนาที่พั พฒ ั นาศักยภาพของตนเองไดอย อยางมี ประสิทธิผล Q ชวยปรับปรุงผลงานตาง ๆ ไดอย อยางมีประสิทธิภาพและ ยั่งยืน ํ ที่เหมาะสม เทคนิค และเครื่องมือ Q ชวยใหนาเทคโนโลยี มาใชอย อยางมีประสิทธิภาพไดเพิ่มขึ้น 18


โครงการพัฒนาซอฟตแวรกับ CMM Q CMM

ไมไดเปนเทคนิคหรือเครื่องมือในการทําโครง การซอฟตแวร Q แตการใชเทคนิคการควบคุมโครงการพัฒนา ซอฟตแวร เปน กาวสําคัญในการยกตัวเองขึ้นมาสู ระดับที่สองของ CMM ซึ่งเรียกวา ระดับ Repeatable 19


CMM เครื่องมือวัดระดับวุฒิภาวะ

20


CMM คืออะไร Q การนํากระบวนการตัดสินใจและหลักการปรับปรุง

คุณภาพมาใชกับการพัฒนาและการบํารุงรักษาซอฟตแวร Q เปนแนวทางสําหรับใหบริ บริษัทซอฟตแวรใช Q เปนแบบจําลองสําหรับปรับปรุงองคกร Q เปนโครงสรางพื้นฐานสําหรับใชประเมินการทํางานของ บริษัทซอฟตแวรได ไดอย อยางมั่นใจ 21


CMM คืออะไร Q Capability Maturity Model Q เปนแบบจําลองสําหรับวัดวาหนวยงานที่ทําหนาที่

พัฒนาซอฟตแวรนั้น มีความสามารถและได ความสามารถและไดบรรลุวุฒิ ภาวะในการทํางานมากนอยเพียงใด Q ใชในการตรวจสอบคุณภาพของตัวเองเปนหลัก แต สามารถใชสร สรางความมั่นใจใหแกผูอื่นได Q พัฒนาและเผยแพรโดย Software Engg Institute 22


CMM ไมไดครอบคลุ ครอบคลุมอะไรบาง Q CMM ไมได ไดครอบคลุ ครอบคลุมถึงประเด็นทั้งหมดทาง

กระบวนการซอฟตแวร และการปรับปรุงคุณภาพ Q ประเด็นที่เกี่ยวของเพียงบางสวน หรือโดยออม คือ – เครื่องมือ วิธีการ และเทคโนโลยี – ทีมงานและกระบวนการทํางาน – วิศวกรรมระบบและการตลาด – ทรัพยากรมนุษย – พฤติกรรมองคกร

23


Capability และPerformance Q Process Capability พิสัยของผลลัพธที่ตองการ และ

ทําไดโดยใชกระบวนการที่กําหนดขึ้นในระดับองคการ เปนดัชนีสาหรั ํ บคาดคะเนผลการดําเนินงานโครงการ ในอนาคต Q Process performance การวัดผลลัพธจริง ๆ ที่ไดจาก จาก การดําเนินงานตามกระบวนการทีกํ่ กาหนด ปกติมักจะ ํ หมายถึงโครงการหนึ่ง ๆ ในองคการ การ

24


ระดับของวุฒิภาวะ 5. เนนในดานการปรับปรุง กระบวนการ Optimizing 4. สามารถวัดผลและควบคุม กระบวนการซอฟตแวรได Managed 3. สามารถจําแนกกระบวนการให เขาใจไดงาย Defined 2. โครงการสามารถทําซํ้าภารกิจที่ Repeatable มีการควบคุมอยางดี 1. ไมสามารถคาดคะเน กระบวนการได และ Initial การทํางานก็ยัง/ไมมี การควบคุมที่ดี 25


วิวัฒนาการของ Process Capability ระดับ

5. Optimizing 4. Managed 3. Defined 2. Repeatable 1. Initial

ลักษณะกระบวนการ

ปรับปรุงกระบวนการซอฟตแวรทั้ง องคการ และ ทําอยางตอเนื่อง ควบคุมผลผลิตและกระบวนการดวย เทคนิคทางสถิติจานวน ํ กําหนดกระบวนการและรวมวิศวกรรม ซอฟตแวรกับกระบวนการจัดการ ใชระบบจั ระบบจัดการโครงการ สามารถทํา ใหเกิดผลสําเร็จแบบเดียวกันได กระบวนการไมมีมรี ูปแบบทางการและ คาดเดาไมได 26


ระดับ Initial  กบั ความเกงกลาสามารถของบุคลากรที่ Q ผลงานขึ้นอยูกั พัฒนาซอฟตแวรของหนวยงาน Q ผลงานอาจมีคุณภาพสูงและเยี่ยมยอดไดตราบเทาที่ หนวยงานยังสามารถจางคนเกงเอาไว Q ทํานายผลงานไมไดวาจะมีคุณภาพดีหรือไม Q ปญหาสําคัญที่หนวยงานซอฟตแวรประสบ ประสบอยูคือ ปญหาดานการจัดการ ไมใชปญหาดานเทคนิค Q หนวยงานยังไมมี Key Process Area

27


ระดับ Repeatable Q ความจําเปนที่เห็นชัดคือตองมีวิธีการจัดการโครงการ

ซอฟตแวรใหประสบผลสําเร็จ Q หนวยงานมีวิธีการจัดการโครงการซอฟตแวร ซึ่งใชเปน หลักในการติดตามและบันทึกผลการทํางาน Q มีนโยบายองคกรสําหรับเปนแนวทางในการกําหนดวิธี การจัดการโครงการ Q สามารถทํางานแตละโครงการใหประสบ ประสบความสําเร็จได เหมือนโครงการอื่น ๆ ที่เคยสําเร็จไปแลว (repeatable) 28


Key Process Area ในระดับ Repeatable Q Software Configuration Management Q Software Quality Assurance Q Software Subcontract Management Q Software Project Tracking and Oversight Q Software Project Planning Q Requirement Management

29


ระดับ Defined Q คุณภาพระดับนี้สรางบนพื้นฐานของการจัดการโครง

การซอฟตแวร Q การควบคุมกระบวนการจําเปนตองนิยาม บันทึกราย ละเอียด และเขาใจกระบวนการนั้นเปนอยางดี Q ผลลัพธของภาระงานอยางหนึ่งไหลอยางราบรื่นเปน อินพุตไปสูอีกภาระงานหนึ่ง Q หนวยงานมีกระบวนการที่ใหอํานาจบุคคลในการทํางาน

30


Key Press Areas ระดับ Defined Q Peer Reviews Q Intergroup Coordination Q Software Project Engineering Q Integrated Software Management Q Training Program Q Organization Process Definition Q Organization Process Focus 31


ระดับ Managed Q ใชหลักการการควบคุมกระบวนการเชิงสถิติ ในการ

ศึกษาวาอะไรเปนสาเหตุของ ของความแปรปรวนของการ ทํางานในโครงการ Q Key Process Areas คือ – Software Quality Management – Quantitative Process Management 32


ระดับ Maturity Level Q จําแนกและกําจัดสาเหตุของผลงานที่ไมถึงระดับ Q พยายามปรับปรุงกระบวนการซอฟตแวรอย อยางตอเนื่อง Q Key Process Areas :

– Process Change Management – Technology Change Management – Defect Prevention 33


การบริหารซอฟตแวรตองผานไปทีละระดับ Q หนวยงานซอฟตแวรอาจทํากระบวนการทีอยู ่ อยูระดับสูง

กวาได แตมักจะไมไดผล Q ความสามารถในการทํางานแตละกระบวนการตองสราง ขึ้นทีละระดับ Q คุณภาพแตละระดับเปนพื้นฐานของระดับที่สูงกวา

– กระบวนการวิศวกรรมที่สําคัยอาจถู ยอาจถูกละเลยเพราะขาดวินัย ทางการจัดการ – การจัดผลอยางละเอียดจะทําไมไดหากไมนิยามกระบวน การใหชัด – ผลของการปรับกระบวนการใหมจะคลุมเครือหากกระบวน การไมชัดเจน 34


CMM Structure Maturity levels Process capability

Key process areas Goals Common features Implementation or institutionalization Activities or infrastructure

Key practices 35


Key process areas by maturity level Optimizing

Managed

Defect prevention Technology change management Process change management

Quantitative process management Software quality management

Defined

Repeatable

Organization process focus Organization process definition Training program Integrated software management Software product engineering Intergroup coordination Peer reviews

Requirements management Software project planning Software project tracking and oversight Software subcontract management Software quality assurance Software configuration management

Initial

36


Five levels of software process maturity Continuously improving process Predictable process Standard consistent process Disciplined process INITIAL 1

OPTIMIZING 5

MANAGED 4

DEFINED 3

REPEATABLE 2 37


สรุป Q CMM เนนที่การจัดการซอฟตแวร Q กระบวนการจะชัดเจนหรือไมขึ้นอยูกับวุฒิภาวะใน

การทํางานตามกระบวนการนั้น Q CMM เปนแบบจําลอง 5 ระดับ และแตละระดับแตก ออกเปน Key Process Areas ่ ต่าํ กวา Q แตละระดับตองอาศัยความสามารถในระดับทีตํ 38


บรรณานุกรม Q คําบรรยาย - หลักสูตรแนะนํา CMM ของมหาวิทยาลัยคารเนกี

เมลลอน Q SEI, The Capability Maturity Model : Guidelines for Improving the Software Process, Addison Wesley, 1994. Q Caputo, Kim, CMM Implementation Guide, Addison Wesley, 1998. Q Hollenbach, Craig,et al, Combining Quality and Software Improvement, Communication of the ACM, June 1997, Vol 40., No.6 . 39


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.