690 likes | 1.6k Views
CMMI ( Capability Maturity Model Integration). อ.ดร.มหศักดิ์ เกตุฉ่ำ Faculty of Information Technology. Capability Maturity Model Integration (CMMI). แบบจำลองวุฒิภาวะความสามารถบูรณาการ ( CMMI : Capability Maturity Model Integration).
E N D
CMMI (Capability Maturity Model Integration) อ.ดร.มหศักดิ์ เกตุฉ่ำ Faculty of Information Technology
Capability Maturity Model Integration (CMMI) แบบจำลองวุฒิภาวะความสามารถบูรณาการ (CMMI :Capability Maturity Model Integration) • ที่ สถาบัน Software Engineering Institute(SEI) แห่ง มหาวิทยาลัย คาร์เนกี เมลลอน ประเทศสหรัฐอเมริกา ได้พัฒนาขึ้น ให้แก่กระทรวงกลาโหมสหรัฐอเมริกา แบบจำลองวุฒิภาวะความสามารถ (CMM :Capability Maturity Model)
ระดับวุฒิภาวะของกระบวนการพัฒนาซอฟต์แวร์ระดับวุฒิภาวะของกระบวนการพัฒนาซอฟต์แวร์
Capability Maturity Model Integration (CMMI) • CMMI หรือแบบจำลองวุฒิภาวะความสามารถบูรณาการ เป็นแบบจำลองที่ถูกสร้างขึ้นมาเพื่อเสนอวิธีปฏิบัติที่ดีที่สุด ในการปรับปรุงกระบวนการทำงานขององค์กร • ซึ่งปัจจุบัน CMMI Version 1.2 (พัฒนาขึ้น กรกฎาคม 2549) • CMMI จะแสดงถึงความสามารถในการพัฒนาซอฟต์แวร์ขององค์กรที่ทำหน้าที่ในการพัฒนาซอฟต์แวร์(Software Hours) ให้เป็นที่ยอมรับต่อหน่วยงานที่ต้องการให้พัฒนาซอฟต์แวร์ให้ • เดิม CMM คือมาตรฐานที่นำมาใช้ในการคัดเลือกบริษัทพัฒนาซอฟต์แวร์ให้กับกระทรวงกลาโหมของสหรัฐ(http://www.defenselink.mil/) ที่จะทำการพัฒนาซอฟต์แวร์ให้
Capability Maturity Model Integration Watts Humphrey ได้กล่าวไว้ว่า คุณภาพของซอฟต์แวร์ จะถูกกำหนดโดยกระบวนการพัฒนาซอฟต์แวร์ ดังนั้น ถ้าเราต้องการที่จะได้ ซอฟต์แวร์ที่มีคุณภาพ เราจะต้องกำหนดคุณภาพในการพัฒนาซอฟต์แวร์ให้ดี
Quality Leverage Points(ปัจจัยหลักที่เป็นตัวกำหนดคุณภาพคือ) Quality • Process • People • Technology
CMMI(Capability Maturity Model Integration) • CMMI เป็นมาตรฐานในการปรับปรุงคุณภาพซอฟต์แวร์ให้มีประสิทธิภาพ เป็นที่รู้จักและยอมรับของสากล หากองค์กรใดได้รับCMMI (แล้วแต่ level) ถือว่าองค์กรนั้นมี product และกระบวนการพัฒนา product ที่มีประสิทธิภาพ เป็นที่น่าเชื่อถือของลูกค้า และเป็นตัวการันตีชิ้นงานที่ออกไป • ดังนั้นปัจจุบันองค์กรและบริษัทจำนวนมากต้องการนำCMMIมาใช้ปรับปรุงกระบวนการทำงานให้อยู่ในระดับที่ต้องการ (มี 5 ระดับ)
CMMI(Capability Maturity Model Integration) • CMMI จะมีวิธีการหรือขั้นตอน (process improvement) เพื่อพัฒนาปรับปรุงคุณภาพของผลิตภัณฑ์ (product,service) ให้มีประสิทธิภาพ ตั้งแต่กระบวนการออกแบบ จนถึงการส่งมอบ (Release) และการบำรุงรักษา (Maintainance) เพื่อให้ทุกองค์กรนำไปใช้ปรับปรุงคุณภาพซอฟต์แวร์
CMMI(Capability Maturity Model Integration) • CMMI ประกอบไปด้วย 22 process areas ที่วัดได้จาก capability หรือ maturity levels (ซึ่งจะอธิบายต่อไป) โดย CMMI พัฒนามาจากSoftware Engineering Institute (SEI)
CMMI(Capability Maturity Model Integration) ก่อนหน้าที่จะมี CMMI นั้นมีโมเดลที่ใช้วัดประสิทธิภาพของกระบวนการพัฒนา เช่น • SW-CMM • SECM • IPD-CMM แต่เกิดปัญหาความยุ่งยากซับซ้อน เพราะมีหลายตัวเกินไป บางอย่างเป็นเรื่องเดียวกัน แต่เรียกคนละชื่อก็เกิดความสับสน จึงรวมเป็นตัวเดียวในปัจจุบันคือ CMMI
องค์ประกอบที่สำคัญในการเพิ่มประสิทธิภาพของการผลิตองค์ประกอบที่สำคัญในการเพิ่มประสิทธิภาพของการผลิต • คน (people) • วิธีการผลิตและการบำรุงรักษา (Procedure , Method) • เครื่องมือที่ช่วยในการผลิต (Tools)
CMMI(Capability Maturity Model Integration) CMMIแก้ปัญหาความยุ่งยากในการใช้ Process Model หลายโมเดลที่แต่ละโมเดลก็จะเกี่ยวกับงานในแต่ละด้านCMMIเป็นการรวมหลายๆ Process Models เข้าเป็นโมเดลเดียวโดยได้รวม 3 โมเดลต่อไปนี้คือ • The Capability Maturity Model for Software (SW-CMM) เวอร์ชั่น 2.0 • The Systems Engineering Capability Model[1] (SECM) หรือรู้จักในอีกชื่อว่า Electronic Industries Alliance 731 • The Integrated Product Development Capability Maturity Model (IPD-CMM) เวอร์ชั่น 0.98
Process Area • ProcessAreasเป็นกลุ่มของ Best Practices ที่ต้องนำไปปฏิบัติตามแล้วจะทำให้บรรลุวัตถุประสงค์ของงานนั้นๆ หรืออาจมองว่าเป็นแนวทางการปรับปรุงกระบวนการทำงานด้านต่างๆ ซึ่งแต่ละงานอาจต้องทำหลาย process area ก็ได้ ซึ่งจะเป็น guildlineที่ดีที่จะช่วยให้องค์กรที่ต้องการทำCMMIนำไปปฏิบัติ
ใน CMMI มี 22 process area • Causal Analysis and Resolution (CAR) • Configuration Management (CM) • Decision Analysis and Resolution (DAR) • Integrated Project Management (IPM) • Measurement and Analysis (MA) • Organizational Innovation and Deployment (OID) • Organizational Process Definition (OPD) • Organizational Process Focus (OPF) • Organizational Process Performance (OPP) • Organizational Training (OT) • Product Integration (PI) • Project Monitoring and Control (PMC) • Project Planning (PP) • Process and Product Quality Assurance (PPQA) • Quantitative Project Management (QPM) • Requirements Development (RD) • Requirements Management (REQM) • Risk Management (RM) • Supplier Agreement Management (SAM) • Technical Solution (TS) • Validation (VAL) • Verification (VER)
Representation of cmmi • การทำ CMMI องค์กรสามารถเลือกการนำเสนอ(Representation) ในการปรับปรุงประสิทธิภาพขององค์กรได้ ซึ่งมี 2 ประเภทได้แก่Stage RepresentationและContinuous Representation • ซึ่งการมีทั้ง 2 รูปแบบให้เลือกทำนั้นก็เพื่อ มีทั้งคนที่คุ้นเคยกับรูปแบบที่เป็น staged หรือคุ้นเคยกับรูปแบบ continuous อยู่ก่อนหน้าที่ CMMI จะมี ดังนั้นเพื่อให้คนเหล่านี้สามารถปรับเข้ามาใช้ CMMI ได้ง่ายขึ้น CMMI จึงมีทั้ง 2 รูปแบบเพื่อรองรับ
วิธีการเลือก Representation Model • องค์กรยังไม่เคยทำ process implovement (กระบวนการพัฒนา) มาก่อนสามารถเลือกรูปแบบใดก็ได้
ตารางเปรียบเทียบข้อดี - ข้อเสีย
CMMI คืออะไร • CMMI ย่อมาจากCapability Maturity Model Integrationเป็นต้นแบบของการวัดวุฒิภาวะความสามารถในการทำงาน ที่ทางสถาบัน Software Engineering Institute (SEI) แห่งมหาวิทยาลัย คาร์เนกี เมลลอน ในสหรัฐอเมริกาได้พัฒนาขึ้น ให้แก่กระทรวงกลาโหมสหรัฐอเมริกา หลักการของ CMMI ก็คือ ความสำเร็จในการทำงานใดๆ ในอนาคตของบริษัทหรือหน่วยงาน ขึ้นอยู่กับระดับวุฒิภาวะความสามารถ ในการทำงานของบริษัทหรือหน่วยงานนั้น ในทำนองเดียวกัน วุฒิภาวะความสามารถของบริษัทหรือหน่วยงานนั้น ก็ขึ้นอยู่กับผลการทำงานในอดีตของบริษัทหรือหน่วยงานนั้น SEIได้พัฒนาต้นแบบวุฒิภาวะความสามารถออกมาเป็นห้าระดับ กล่าวคือ
CMMI คืออะไร • ระดับแรก (Performed level) เป็นระดับเบื้องต้นซึ่งอาจกล่าวได้ว่า บริษัททั่วไปต่างก็อยู่ในระดับนี้ คือ ยังทำงานแบบไม่เป็นระบบ การทำงานต้องพึ่งผู้ที่มีประสบการณ์เป็นหลัก • ระดับที่สอง (Managed level) การทำงานจะมีความเป็นระบบมากขึ้น มีการนำหลักการจัดการโครงการมาใช้ในการบริหารงานของแต่ละโครงการ • ระดับที่สาม (Defined Level) เป็นระดับที่หน่วยงานได้จัดทำมาตรฐานการทำงานของหน่วยงานขึ้น โดยการพิจารณาปรับปรุงจากการดำเนินงานในระดับที่สอง ในระดับนี้การทำงานจะมีมาตรฐาน สามารถวัดและจัดเก็บสถิติผลการดำเนินงานเอาไว้ได้
CMMI คืออะไร • ระดับที่สี่ (Quantitatively Managed Level) เป็นระดับที่นำเอาสถิติการดำเนินงานที่จัดเก็บไว้มาวิเคราะห์ เพื่อหาจุดบกพร่อง และแก้ไขข้อบกพร่องได้ • ระดับที่ห้า (Optimizing level) เป็นระดับวุฒิภาวะสูงสุด เป็นระดับที่หน่วยงานดำเนินการปรับปรุง กระบวนการทำงานของตนเองอย่างต่อเนื่อง มีการจัดกระบวนการทำงานใหม่ ให้สอดคล้องกับเทคโนโลยีใหม่ๆ ที่เกิดขึ้น และมีการป้องกันไม่ให้ข้อบกพร่องเกิดขึ้น
วุฒิภาวะความสามารถ CMMI ได้รับความสนใจนำไปใช้ในด้านต่างๆ เช่น CMMI ทางด้านซอฟต์แวร์นั้น ก็ได้รับความสนใจจากบริษัทผู้ผลิตซอฟต์แวร์หลายแห่งทั่วโลก บริษัทที่ประเมินผ่านวุฒิภาวะระดับต่างๆ นั้น ได้รับความเชื่อถือจากลูกค้าด้วยดี และในบางแห่งก็มีการกำหนดระดับ CMMI ของบริษัทที่จะเข้ารับงานด้วย เช่นในสหรัฐอเมริกานั้น กระทรวงกลาโหมกำหนดว่า บริษัทที่จะเข้ารับประมูลงานซอฟต์แวร์ได้ จะต้องมีวุฒิภาวะความสามารถ CMMI ระดับที่ 3 เป็นอย่างน้อย นั่นก็คือกระทรวงกลาโหมจะมั่นใจในกระบวนการซอฟต์แวร์ของบริษัทว่า จะสามารถผลิตงานซอฟต์แวร์ตามที่กระทรวงกำหนดได้จริงๆ
#CMMI Level 1 Initial : ระดับเริ่มต้น ไม่มีกรรมวิธีพิจารณาที่แน่นอน • ไม่มีกรรมวิธีที่ชัดเจน หรือมีกรรมวิธีแต่ไม่มีใครทำตาม • ผลลัพธ์ของโครงการคาดเดาได้ยาก ว่าจะเสร็จหรือไม่ และเมื่อไรถึงจะเสร็จ • กรรมวิธี • ผลลัพธ์ • งบประมาณ • กำลังคน
#CMMI Level 1 : Initial : ระดับเริ่มต้น(ต่อ) • - ขาดประสบการณ์ • โครงการจะเสร็จ/ไม่ ขึ้นอยู่กับ Programmer บางคน หรือการเจรจาของผู้จัดการ • Programmer คิดว่าเริ่มเขียนโปรแกรมได้เลย โดยไม่ต้องวิเคราะห์และออกแบบ จะทำให้เสร็จเร็วกว่า ซึ่งจะทำให้เสียเวลา • ทำการเพิ่มจำนวนโปรแกรมเมอร์ เมื่อโปรแกรมเสร็จไม่ทัน แต่จะทำให้ช้ายิ่งกว่าเดิม
#CMMI Level 1 : Initial : ระดับเริ่มต้น (ต่อ) • Software Process คือ ลักษณะเฉพาะของสิ่งใดสิ่งหนึ่งเท่านั้น • มีเพียง 2-3 Process เท่านั้นที่ถูกกำหนดขึ้น • Process จะสำเร็จได้ขึ้นอยู่กับความพยายามหรือการทำงานของแต่ละบุคคล
#CMMI Level 1 : Initial : ระดับเริ่มต้น(ต่อ) ลักษณะขององค์กรใน CMM Level 1 1. ไม่มีการใช้ software บริหารโครงการ การประเมินกำหนดากรทำงานจากขนาด Software และกำลังคน 2. ไม่มีวิธีที่จะทำให้เสร็จตามเวลา (ในงบประมาณและทรัพยากรที่มีอยู่ได้หรือไม่) มีการรับ S/W ราคาต่ำ โดยไม่ดูว่าพอหรือเหมาะสมกับงบประมาณและคนที่มีอยู่หรือไม่ 3. ประมาณขนาด S/W ผิดพลาด 2-10 เท่า ทำให้ ประมาณ - งบประมาณ - และอัตรากำลังคนผิดไป
# CMMI Level 1 : Initial : ระดับเริ่มต้น(ต่อ) ลักษณะขององค์กรใน CMM Level 1 4. ไม่สามารถประเมินผลกระทบของ Requirement ของลูกค้า(ไม่มีกรรมวิธีการบริหารโครงการเกี่ยวกับการเปลี่ยนแปลงที่เกิดขึ้นจากลูกค้า) - เวลาการมอบงาน - งบประมาณเพิ่มเติม - กำลังคน - ทักษะของคน 5. ไม่มีการติดตามถึงจำนวน และความถี่ของ Error ที่เกิดขึ้นจากการเขียนโปรแกรม ในแต่ละครั้ง
สรุป Level 1 : Initial CMM Level 1 มีชื่อเรียกเต็ม ๆ ว่า Initial มีลักษณะการพัฒนาซอฟต์แวร์ ดังนี้ • มี Process ที่ระบุไม่ได้ (ไม่มีกระบวนการพัฒนาซอฟต์แวร์ที่เป็นระบบ) • มีแค่ Input และ Output เท่านั้น • ขอให้งานออกมาก็พอ • ขึ้นอยู่กับหัวหน้างานอย่างเดียว • มีแนวคิดแค่ว่า เงินมาก งานดี • งานไม่รู้ว่าจะออกมาดีหรือไม่ ต้องรอผลที่เสร็จแล้วเท่านั้น
CMMI Level 2 Key Process A rea : KPA ของ CMMI ในระดับ Level 2 • Requirement Management (REQM) • Project Planning (PP) • Project Monitoring and Control (PMC) • Supplier Agreement Management (SAM) • Measurement and Analysis (MA) • Process and Product Quality Assurance (PPQA) • Configuration Management (CM)
CMMI Level 3 KPA ของ CMMI ในระดับ Level 3 • Requirement Development (RD) • Technical Solution (TS) • Product Integration (PI) • Verification (VER) • Validation (VAL) • Organizational Process Focus (OPF) • Organizational Process Definition (OPD)
CMMI Level 3 KPA ของ CMMI ในระดับ Level 3 • Organizational Training (OT) • Integrated Project Management (IPM) • Risk Management (RSKM) • Integrated Teaming (IT) • Integrated Supplier Management (ISM) • Decision Analysis and Resolution (DAR) • Organizational Environment for Integration (OEI)
CMMI Level 4 KPA ของ CMMI ในระดับ Level 4 • Organizational Process Performance (OPP) • Quantitative Project Management (QPM) (ความสามารถในการจัดการ)
CMMI Level 5 KPA ของ CMMI ในระดับ Level 5Organizational Innovation and Deployment (OID) (นวัตกรรมองค์กรและความพร้อม) • Causal Analysis and Resolution (CAR) (วิเคราะห์หาสาเหตุและวิธีการแก้ไขปัญหา)
Representation ช่วยให้หน่วยงานตั้งวัตถุประสงค์ในการปรับปรุงการทำงานของตนเองได้แตกต่างกัน
1. CMMI Staged Representaion • เป็นการกำหนดระดับการปรับปรุงการทำงาน โดยแต่ละระดับเป็นพื้นฐานสำหรับระดับที่อยู่สูงกว่า • สามารถใช้เปรียบเทียบวุฒิภาวะระหว่างหน่วยงานต่าง ๆ ได้ • ช่วยให้ปรับเปลี่ยนจาก SW-CMM มาสู่ CMMI ได้ง่าย
1. CMMI Staged Representaion • ระดับวุฒิภาวะ(Maturity Level) เป็นระดับชั้นที่มีรายละเอียดกำหนดไว้อย่างชัดเจน และสามารถนำไปใช้ในการปรับปรุงกระบวนการปฏิบัติงานได้ • ระดับวุฒิภาวะมี 5 ระดับ • แต่ละระดับเป็นพื้นฐานสำหรับการปรับปรุงกระบวนการอย่างต่อเนื่อง เริ่มจากวีการจัดการพื้นฐานไปสู่ระดับต่อ ๆ ไปที่มีความซับซ้อนมากขึ้น
2. CMMI Continuous Representaion • ช่วยให้หน่วยงานเลือกวีการปรับปรุงที่เหมาะสมกับวัตถุประสงค์ทางธุรกิจ และลดปัญหาความเสี่ยง • สามารถใช้วัดเปรียบเทียบกระบวนการแต่ละกลุ่มระหว่างหน่วยงานต่าง ๆ ได้ • ช่วยให้ปรับเปลี่ยนจากการใช้มาตรฐาน EIA731 ไปสู่ CMMI • ระดับความสามารถ เป็นระดับสำหรับอธิบายความสามารถในการปฏิบัติงานแต่ละกลุ่มกระบวนการ
2. CMMI Continuous Representaion ระดับความสามารถมี 6 ระดับ ระดับความสามารถ 1-5 มี Generic Goal แต่ละระดับเป็นพื้นฐานขอ งการปรับปรุงกระบวนการอย่างต่อเนื่อง ระดับที่สูงกว่าจะมีลักษระความสามารถของระดับต่ำกว่าด้วย
เปรียบเทียบ Stage กับ Continuous • Continuous • การปรับปรุงกระบวนการอาจวัดได้โดยใช้ระดับความสามารถ • Capability Level หมายถึงการบรรลุความสำเร็จในการปรับปรุงกระบวนการใน PA หนึ่ง ๆ • ความสามารถของ Process AreaCapability หมายถึงวุฒิภาวะของกระบวนการหนึ่งทั้งหน่วยงาน Staged • การปรับปรุงกระบวนการอาจวัดได้โดยใช้ระดับวุฒิภาวะ • Maturity Level เป็นขนาดของการปรับปรุงกระบวนการในกลุ่ม PA ที่กำหนดไว้แล้ว • Org Maturity เป็นวุฒิภาวะของกลุ่มกระบวนการทั้งหน่วยงาน
CMMI • ไทย(CMM) • 1999 ได้ Level 2 มี 14 บริษัท ได้ Level 3 มี 4 บริษัท • ได้ Level 4 มี 1 บริษัท • eXtreme Systems(2003) Level2 • ปัจจุบัน REuter Software Thailand กำลังทำ Level 5 • VSE Model • สหรัฐอเมริกา • อินเดีย(Silicon Valley) • มีองค์กรมากกว่า 50 % อยู่ใน Level 2 • Level 5 จำนวนเยอะมาก • เช่น Microsoft Office, Microsoft Windows • ยุโรป • เวียดนาม
ทำไมถึงเลือกใช้ CMMI • CMMIเป็นหลักการหนึ่งที่เน้นกระบวนการพัฒนาซอฟต์แวร์ และเมื่อเทียบกับหลักการอื่นๆ ไม่ว่าจะเป็น ISO, COBIT, etc. จะเห็นว่า CMMI เป็นหลักการที่มีแนวทางและรายละเอียดชัดเจนที่จะนำไปสู่การปฏิบัติตามได้ง่าย • CMMI เป็นหลักการที่มีทีมงานเฉพาะของ SEI พัฒนาอย่างต่อเนื่อง โดยการรวบรวม Best Practices จากการทำงานจริงมาวิเคราะห์ ทำให้หลักการดังกล่าวสามารถตอบปัญหาที่เกิดขึ้นได้จริง • CMMIเป็นหลักการสากลที่ได้รับการยอมรับอย่างกว้างขวางทั่วโลก ไม่ใช่เฉพาะหน่วยงานที่พัฒนาซอฟต์แวร์เท่านั้น ยังรวมถึงหน่วยงาน R&D ด้วยดังตารางด้านล่างนี้ เนคเทคซึ่งเป็นหน่วยงาน R&D เช่นกันดังนั้นถ้าเนคเทคมีกระบวนการทำงานที่เป็นสากล ก็สามารถที่จะทำงานร่วมกับหน่วยงานระดับชาติอื่นได้อย่างมีประสิทธิภาพ และนำไปสู่ความร่วมมือที่ยั่งยืนสามารถดูรายละเอียดของหน่วยงานที่ผ่านการประเมินตามหลักการ CMMI ทั่วโลกตาม
บุคลากร Personal Software Process Team Software Process Capability Maturity Model
การขอ CMMI เตรียมบุคลากร องค์ความรู้ งบประมาณ แรงกาย แรงใจ และความทุ่มเทจากผู้บริหารและพนักงานทุกท่าน ต้องฝึกอบรม กับ Software Park ใช้เวลาประมาณ เกือบปีครึ่ง ใช้งบประมาณ ประมาณ 1.5-3 ล้านบาท รัฐบาลช่วย ประมาณไม่เกิน 1 ล้านบาท
องค์กรที่สนับสนุน เขตอุตสาหกรรมซอฟต์แวร์แห่งประเทศไทย(Software Park) (http://www.swpark.or.th) สำนักงานส่งเสริมอุตสาหกรรมซอฟต์แวร์แห่งชาติ หรือซิป้า www สำนักงานวิจัยและพัฒนาคุณภาพของซอฟต์แวร์(http://www.squared.chula.ac.th) ชมรม Thailand SPIN(Software Process Improvement Network) (http://www.thailandspin.com)
CMMI เปิดอบรมด้าน CMMI ที่ Software Park(SEI) คชจ. ~ 2,2000 บาท ต่างประเทศ 120,000 + ค่าเดินทาง + ค่าที่พัก(3 วัน) CMMI V 1.1 หมดอายุ 31 สิงหาคม 2550 ประเมินแล้วจะอยู่ได้ 3 ปี ต้องประเมินใหม่ เริ่ม 1 มกราคม 2550 CMMI V 1.2 ปี 2550 ปทท. จะพยายามให้ได้ Level 2-5 ประมาณ 10 บริษัท ปี 2551 ปทท. จะพยายามให้ได้ Level 2-5 ประมาณ 20 บริษัท ปี 2552 ปทท. จะพยายามให้ได้ Level 2-5 ประมาณ 30 บริษัท ปี 2553 ปทท. จะพยายามให้ได้ Level 2-5 ประมาณ 40 บริษัท
6,300/5 4,125/5 3,300/3 6,300/5 10,235/3 175/1 Upgrade Training SEI Training for CMMI * TOEFL
เอกสารอ้างอิง [1] International ISO/IEC Standard 9126,”Information Technology- Software Engineering-Software Measurement Process”, 2001. [2] M.B. Chrissis, M.Konrad, and S.Shrum, “CMMI Guidelines for Process Integration and Product Improvement “, Boston : Addison-Wesley,2003. [3] P.Kamthan, ”Software Engineering and Standards,” http://indy.cs.concordia.ca/kb/se_standards.pdf. [4] เขตอุตสาหกรรมซอฟต์แวร์แห่งประเทศไทย http://www.swpark.or.th [5] เว็บไซต์ราชบัณฑิตสาขาวิชาคอมพิวเตอร์ http://www.kanchit.com [6] สถาบันวิศวกรรมซอฟต์แวร์ (Software Engineering Institute), http://www.sei.cmu.edu/cmmi/