IT Project Management 05 IT Quality Management
Objectives ให้เข้าใจและสามารถอธิบายถึงความหมายของสิ่งต่อไปนี้ : คุณภาพ (Quality) Quality of Information Technology Projects Project Quality Management (PQM) Modern Quality Management Quality Experts Quality Systems (ISO 9000 Principles, Six Sigma Defined) The Capability Maturity Model (CMM) Verification and Validation Testing Change Control and Configuration Management
คุณภาพคืออะไร คุณภาพ (Quality) หมายถึงอะไร เป็นคำถามที่ถูกถามกันมาก และ มีหลากหลายคำตอบด้วยกัน สามารถกล่าวรวม ๆ กันได้ดังนี้ สินค้าหรือบริการที่มีความเป็นเลิศในทุกด้าน สินค้าหรือบริการที่เป็นไปตามข้อกำหนด หรือมาตรฐาน สินค้าหรือบริการที่เป็นไปตามความต้องการของลูกค้า สินค้าหรือบริการที่สร้างความพึงพอใจให้แก่ลูกค้า สินค้าหรือบริการที่ปราศจากการชำรุดหรือข้อบกพร่อง
คุณภาพคืออะไร ในระดับสากลที่กล่าวอ้างกันไว้ สามารถกล่าวได้ว่า คุณภาพ หมายถึง คุณสมบัติโดยรวมของผลิตภัณฑ์หรือบริการ ซึ่งแสดงถึงความสามารถ ในการสนองทั้งความต้องการที่ชัดแจ้ง และความต้องการที่แฝงเร้น (คำ จำกัดความตามมาตรฐาน ISO 8402 : 1994) การมอบสิ่งที่ลูกค้าต้องการในปัจจุบันให้แก่ลูกค้า ในราคาที่ลูกค้ายินดีจะจ่าย ด้วยต้นทุนที่เราสามารถทำได้อย่างสม่ำเสมอ และ จะต้องมอบสิ่งที่ดีกว่านี้ ให้แก่ลูกค้า ในอนาคต
Quality of Information Technology Projects หลาย ๆ คนเกิดความขบขันในเรื่อง IT products ที่มีคุณภาพต่ำ (แทนที่จะ Serious กับมัน) ดูเหมือนว่าคนจะยอมรับระบบที่กำลังแย่ลง หรือ ต้องทำการ reboot PC มีตัวอย่างมากมายในเรื่องเกี่ยวกับคุณภาพที่เกี่ยวข้องกับ IT ที่กล่าวมาข้างต้นแสดงให้เห็นว่า คนมีแนวโน้มที่จะยอมรับ IT ที่ไม่มีคุณภาพไปในเชิง เขาไม่มีทางเลี่ยง และจำเป็นต้องใช้มัน แต่ในแง่ของ IT project แล้ว คุณภาพถือเป็นเรื่องที่สำคัญอย่างมาก
Project Quality Management (PQM) คือกระบวนการอันทำให้มั่นใจได้ว่าโครงการที่ดำเนินการนั้นสอดรับกับความต้องการ ดังนั้นมันจึงรวมเอากิจกรรมต่าง ๆ ที่ต้องทำในโครงการ ที่สอดรับกับที่กำหนดอยู่ใน quality policy, objectives, และ responsibility รวมไปถึงการนำไปใช้งานในเชิงของ quality planning, quality assurance, quality control, และ quality improvement ซึ่ง รวมอยู่ใน quality system.
Project Quality Management Project Quality Management Focuses on project’s products ผลิตภัณฑ์ที่สำคัญที่สุดของโครงการก็คือคำตอบเชิงระบบสารสนเทศที่ project team จะต้องส่งมอบ Focuses on project process กิจกรรม วิธีการ วัตถุดิบ และการวัด ที่นำมาใช้สร้างผลิตภัณฑ์หรือบริการออกมา
Programs & People ISO Certification Six Sigma initiatives Awards Deming Prize Malcolm Badridge National Quality Award Capability Maturity Model (CMM) People Shewhart Deming Juran Ishikawa Crosby
Project Quality Management
Modern Quality Management เน้นไปที่ความพึงพอใจของลูกค้า มุ่งเน้นไปที่การป้องกัน แทนที่จะเป็นการตรวจสอบ ถือว่าเป็นหน้าที่ของผู้บริหารที่สนองตอบต่อคุณภาพ ผู้ชำนาญคุณภาพได้แก่ Deming, Juran, Crosby, Ishikawa, Taguchi, และ Feigenbaum
Quality Experts เดมมิ่ง (Demming) มีชื่อเสียงในการสร้างญี่ปุ่นขึ้นมาใหม่และหลักการจัดการคุณภาพ 14 ข้อ จูรัน (Juran) แต่งหนังสือ “Quality Control Handbook” และ 10 ขั้นตอนในการปรับปรุงคุณภาพ ครสบี้ (Crosby) เขียน “Quality is Free” และเสนอว่า องค์กรต้องต่อสู้เพื่อให้ได้มาซึ่ง zero defects อิชิกาวา (Ishikawa) สร้างแนวความคิดเกี่ยวกับ quality circles และ Fishbone diagrams ทากูชิ (Taguchi) สร้างวิธีการ optimizing การบวนการทดลองทางวิศวกรรม ไฟเกนบาม (Feigenbaum) สร้างแนวความคิดเกี่ยวกับ total quality control
หลักการจัดการคุณภาพ 14 ข้อ (14 points for management) ของเดมมิ่ง
1. 10 จงขจัดการใช้คำขวัญ การติดโปสเตอร์และป้ายแนะนำ 1 1.10 จงขจัดการใช้คำขวัญ การติดโปสเตอร์และป้ายแนะนำ 1.11 จงเลิกใช้มาตรฐานการทำงานและตัวเลขโควต้า 1.12 จงขจัดอุปสรรคที่ทำลายความภาคภูมิใจของพนักงาน 1.13 จงจัดให้มีแผนการศึกษา และทำการฝึกอบรมให้แก่พนักงาน 1.14 จงกำหนดความผูกพันที่ยาวนานของผู้บริหารระดับสูง ที่มีต่อการปรับปรุง คุณภาพและประสิทธิภาพในการผลิตไปตลอด
The Quality Movement Juran’s Quality Planning Road Map (Quality Trilogy, ไตรยางค์คุณภาพ) ไตรยางค์คุณภาพของจูรานในที่นี้ หมายถึง เงื่อนไขหรือองค์ประกอบ 3 ด้าน ที่จะทำให้การจัดการคุณภาพประสบความสำเร็จซึ่งคล้ายกับแนวคิดเรื่องวงล้อเดมมิ่ง จูราน แบ่งเงื่อนไขที่ทำให้การจัดการคุณภาพประสบความสำเร็จออกเป็น 3 ด้าน ใหญ่ ๆ คือ ด้านแรก การวางแผนคุณภาพ แบ่งออกอีก 4 ขั้น คือ 1. รู้จักลูกค้าทั้งลูกค้าภายใน ภายนอกองค์การและความต้องการของลูกค้า 2. ต้องกล่าวถึงความต้องการของลูกค้าซ้ำแล้วซ้ำเล่า เพื่อให้องค์การหรือฝ่ายที่เกี่ยวข้องเข้าใจ เสร็จแล้วก็ออกแบบให้เป็นไปตามความต้องการนั้น 3. เมื่อออกแบบเสร็จแล้วก็สร้างกระบวนการผลิต ลงมือผลิตและทำให้การผลิตให้เป็นไปอย่างถูกต้อง 4. เมื่อสร้างกระบวนเสร็จและพิสูจน์ว่าถูกต้องแล้ว ก็ให้ถ่ายโอนความรับผิดชอบไปสู่การปฏิบัติในระดับล่างต่อไป
ด้านที่สอง การควบคุมคุณภาพ ระบบคุณภาพใดก็ตามเมื่อลงมือปฏิบัติจริงก็ต้องมีความเสื่อมถอย การจัดการคุณภาพจึงต้องมีการควบคุม เพื่อสืบหาความแปรปรวนและนำมาแก้ไขให้เป็นกระบวนการทีดีอีกครั้งหนึ่ง การควบคุมนี้ต้องอาศัยเครื่องมือและเทคนิคในเชิงกลยุทธ์ของการจัดการคุณภาพวัตถุประสงค์ก็เพื่อให้แน่ใจว่ากระบวนการจะเกิดผลลัพธ์ที่สามารถทำนายได้ ทำให้การบริหารงานราบรื่น และเป็นฐานที่มั่นคงสำหรับการปรับปรุงคุณภาพต่อไป ด้านที่สาม การปรับปรุงคุณภาพ ขณะที่การควบคุมคุณภาพมุ่งไปที่เป้าหมายในการรักษาระดับคุณภาพที่เป็นอยู่ แต่การปรับปรุงคุณภาพจะมุ่งไปที่คุณภาพในระดับที่สูงขึ้น โดยการสร้างนิสัย ทั้งนี้เพื่อให้บรรลุความก้าวหน้าในด้านคุณภาพระดับใหม่ที่ดีกว่า ความก้าวหน้านี้เป็นผลมาจากการคิดและวางแผนระยะยาวโดยผู้บริหาร ในฐานะที่รับผิดชอบในการสร้างลำดับขั้นความสำเร็จที่เป็นสากล
Ishikawa, or Fishbone Diagram
Quality Systems ISO 9000 Principles มุ่งเน้นที่ลูกค้า ความเป็นผู้นำ พนักงานมีส่วนร่วม เน้นไปที่กระบวนการ บริหารโดยใช้ระบบ (System Approach to Management) ปรับปรุงอย่างต่อเนื่อง ตัดสินใจโดยอาศัยข้อมูลที่เป็นจริง การมีสัมพันธ์ที่ดีต่อซัพพลายเออร์ก่อให้เกิดประโยชน์ร่วมกัน
Six Sigma Defined Six Sigma คือ “ระบบที่ต้องอาศัยความเข้าใจและคล่องตัวเพื่อบรรลุ ผลักดัน และ จุดสูงสุดของความสำเร็จทางธุรกิจ Six Sigma คือ การขับเคลื่อนอันเป็นเอกลักษณ์โดยการเข้าใจอย่างชัดเจนถึงความต้องการของลูกค้า มีวินัยในการใช้การวิเคราะห์เชิงสถิติข้อเท็จจริง ข้อมูล และ มุ่งเน้นอย่างจริงจังในเรื่อง การบริหาร การปรับปรุง และ การสร้างขึ้นใหม่ของกระบวนการทางธุรกิจ”* *Pande, Peter S., Robert P. Neuman, and Roland R. Cavanagh, The Six Sigma Way. New York: McGraw-Hill, 2000, p. xi
Basic Information on Six Sigma เป้าหมายของความสมบูรณ์ (perfection) คือ การบรรลุถึงจุดที่เกิดข้อบกพร่องต่ำกว่า 3.4 ต่อหนึ่งล้านของโอกาสที่จะเกิดข้อบกพร่อง
ตัวอย่างการวัด ความสามารถของกระบวนการ สมมุติว่า ท่านทำธุรกิจทำ-ส่งพิซซ่าบริเวณอำเภอกำแพงแสน ร้านของท่านทำพิซซ่าได้อร่อย และมีลูกค้าจำนวนมาก สมมุติว่าท่านทำสัญญาเอาไว้ดังนี้: ท่านจะส่งพิซซ่าที่สดและร้อนระหว่าง 11.45 a.m. ถึง 12.15 p.m. เพื่อลูกค้าจะได้พิซซ่าทันเวลาเป็นอาหารกลางวัน (นี่คือสิ่งที่ลูกค้าต้องการ)
Higher Sigma…Lower Loss และท่านตกลงว่า ถ้าท่านส่งพิซซ่าก่อน 11:45 a.m. หรือ หลัง 12:15 p.m. (นี่คือ “defect”) ท่านจะลดให้ราคาพิซซ่าในการสั่งครั้งต่อไปให้ 50% (นี่คือ Loss) ท่านทำการวัดผลการจัดส่ง % ของการจัดส่งได้ทันเวลา DPMO(Per Billion) ค่า Sigma ของท่าน 68.268940% 317,310,530 1 95.4499876% 45,500,124 2 99.7300066% 2,699,934 3 99.9936628% 63,372 4 99.9999426% 57.4 5 99.9999998% 2 6 นั่นหมายความว่า ท่านจัดส่ง 1 พันล้านครั้ง ท่านจัดส่งไม่ตรงเวลาเท่ากับ 2 ครั้ง
Short Term เราเรียกกระบวนการแบบนี้ ว่า Short Term Process จากที่อธิบายมาข้างต้น กระบวนการ จัดส่งเป็นไปในเชิงอุดมคติ ทุกอย่าง สมบูรณ์แบบไปหมด โดยเฉลี่ยแล้ว ส่วนมาก เราส่งพิซซ่าให้ลูกค้า 12.00 พอดี เราเรียกกระบวนการแบบนี้ ว่า Short Term Process
Long Term เราเรียกกระบวนการแบบนี้ ว่า Long Term Process ลองนึกต่อไปว่า พอทำงานนานเข้า สภาพ แวดล้อมเปลี่ยนแปลงไป รถเริ่มมีการ สึกหรอ ต้องซ่อมแซม สภาพการจราจร ติดขัดมากขึ้น ทำให้พิซซ่าส่วนมากที่เรา จัดส่งช้าลงจากเดิม เช่น 12.03 p.m. เป็นต้น แสดงว่า ค่าเฉลี่ยของ เวลาที่ส่งถึงมือลูกค้า เริ่มเลื่อนตัว (Shift) ออกไปจากเดิม 12.00 เป็น 12.03 pm. เราเรียกกระบวนการแบบนี้ ว่า Long Term Process
Six Sigma ยอมให้ค่าเฉลี่ยเลื่อนไป 1.5 Sigma % ของการจัดส่งได้ทันเวลา DPMO ค่า Sigma ของท่าน 30.232785% 697,672.15 1 69.1229795% 308,770.21 2 93.318937% 66,810.63 3 99.379030% 6,209.70 4 99.976733% 232.67 5 99.999660% 3.4 6 ในเรื่องของ Six Sigma แล้ว ท่านจัดส่งพิซซ่า 1 ล้านถาด ท่านจะส่งพิซซ่าไม่ตรง ตามเวลาได้ 3 ถาดเท่านั้น
Sigma means Customer Requirement… เมื่อลูกค้าเปลี่ยนความต้องการ ถ้าท่านยังคง ทำงานเหมือนเดิมทุกประการ ความสามารถ ของกระบวนการจัดส่ง ของท่านจะลดลงจากเดิม ทันที จำนวนที่พิซซาจะส่งไม่ตรงตามเวลาจะ มากขึ้น ท่านคงต้างปรับปรุงกระบวนการของ ท่านอีกครั้งหนึ่งแล้ว นั่นหมายความว่า การวัดค่า Sigma คือ การดูว่าท่านสอดคล้องกับ ความต้องการ ของลูกค้าได้ดีเท่าใด อะไรจะเกิดขึ้นถ้า ลูกค้าเปลี่ยน ความต้อง การใหม่ โดยต้องการ ให้ส่งพิซซ่า ภายใน 11.55 a.m. ถึง 12.05 p.m..
Maturity Models Maturity models คือ กรอบการทำงานสำหรับช่วยองค์กรในการปรับปรุงกระบวนการและระบบต่าง ๆ ภายในองค์กร: Software Quality Function Deployment model มุ่งเน้นไปที่การกำหนดความต้องการของผู้ใช้และการวางแผนเกี่ยวกับ software projects The Software Engineering Institute’s Capability Maturity Model จัดหาแนวทางกว้าง ๆ เพื่อปรับปรุงกระบวนการทางด้าน software development มีหลาย ๆ กลุ่มทำงานทางด้าน project management maturity models, เช่น PMI’s Organizational Project Management Maturity Model (OPM3)
Quality Systems The Capability Maturity Model (CMM) Software Engineering Institute (SEI) ที่ Carnegie-Mellon University กลุ่มของแนวทางปฏิบัติที่แนะนำ (a set of recommended practices) สำหรับกลุ่มของสิ่งที่เกี่ยวกับกระบวนการหลัก (a set of key process areas) ที่เน้นไปที่ software development. แนวทางที่แสดงว่า องค์กรสามารถควบคุมกระบวนการของเขาให้ดีที่สุดได้อย่างไรเมื่อทำการพัฒนาและดูแลรักษาซอฟต์แวร์ แนวทางที่ช่วยให้องค์กรปรับปรุงกระบวนการทางซอฟต์แวร์ในปัจจุบันให้ดีขึ้น โดยอาศัยวิศวกรรมทางซอฟต์แวร์และการบริหารที่เป็นเลิศ (excellence)
Levels of Software Process Maturity
Quality Systems The Capability Maturity Model (CMM) Level 1: Initial - ลักษณะที่เห็นได้คือเป็นองค์กรที่ยังไม่เก่งทางซอฟต์แวร์ ซึ่งมีกระบวนการทางซอฟต์แวร์เป็นไปในเชิงขึ้นอยู่กับความพอใจ (ad hoc) และ มักจะเป็นสนองตอบ (reactive) ต่อวิกฤตการณ์ที่เกิดขึ้นแล้ว จะไม่มีสภาพแวดล้อมที่คงที่ (stable environment) สำหรับโครงการทางด้านซอฟต์แวร์ และความสำเร็จ ของโครงการขึ้นกับคนในโครงการเป็นอย่างมาก แทนที่จะเป็นกระบวนการที่เขาทำตาม Key Process Area no key process areas are in place
Quality Systems The Capability Maturity Model (CMM) Level 2: Repeatable – มีการนำเอา Basic policies, processes, และ controls มาใช้ ในการบริหารโครงการเกี่ยวกับซอฟต์แวร์ ความสำเร็จของ project teams เมื่อทำโครงการต่าง ๆ สำเร็จได้เช่นเดียวกับความสำเร็จในอดีต Key Process Area Software Configuration Management Software Quality Assurance Software Subcontract Management Software Project Tracking and Oversight Software Project Planning Requirements Management
Quality Systems The Capability Maturity Model (CMM) Level 3: Defined - Software engineering และ management processes ถูกจัดทำเป็นเอกสารและมีมาตรฐานทั่วทั้งองค์กร และกลายเป็นกระบวนการมาตรฐานขององค์กร. Key Process Area มีการทบทวนร่วมกัน (Peer Reviews) มีการประสานงานภายในกลุ่ม (Intergroup Coordination) Software Product Engineering Integrated Software Management มีโปรแกรมการฝึกอบรม มีการกำหนดกระบวนการในองค์กร (Organization Process Definition) มีการมุ่งเน้นที่กระบวนการในองค์กร
Quality Systems The Capability Maturity Model (CMM) Level 4: Managed – มีตัววัดเชิงปริมาณ (Quantitative metrics)สำหรับใช้วัดและประเมินผลิตผล และคุณภาพถูกกำหนดขึ้นมาทั้ง software products และกระบวนการต่าง ๆ ที่ซึ่งคุณลักษณะสามารถกำหนดเป็นเชิงปริมาณ (เพื่อวัด)และทำนายได้ Key Process Areas การบริหารจัดการเชิงคุณภาพของซอฟต์แวร์ (Software Quality Management) การบริหารจัดการกระบวนการเชิงปริมาณ (Quantitative Process Management)
Quality Systems The Capability Maturity Model (CMM) Level 5: Optimizing อยู่ที่ระดับสูงสุดของ software process maturity ทั่วทั้งองค์กรมุ่งเน้นไปที่การปรับปรุงกระบวนการอย่างต่อเนื่อง Key Process Areas การบริหารจัดการกับการเปลี่ยนแปลงกระบวนการ (Process Change Management) การบริหารจัดการกับการเปลี่ยนเทคโนโลยี (Technology Change Management) การป้องกันข้อบกพร่อง (Defect Prevention)
The IT Project Quality Plan Verification and Validation มุ่งเน้นที่กิจกรรมในเชิง process-related เพื่อมั่นใจว่า products & deliverables เป็นไปตามความต้องการที่กำหนดไว้ก่อนทำการทดสอบขั้นสุดท้าย (final testing) Technical Reviews Walk throughs Business Reviews Management Reviews Are we building the product the right way?
The IT Project Quality Plan Verification and Validation คือกิจกรรมในเชิง Product-oriented ที่ต้องการดูว่า deliverable ของระบบหรือโครงการได้เป็นไปตามความคาดหวังของ customer หรือ client หรือไม่ การทดสอบ (Testing) เป็นการตอบคำถามว่า ฟังก์ชันของระบบ สมรรถนะและความสามารถทั้งหมด เป็นไปตามความต้องการที่กำหนดไว้ใน project’s scope และ requirements definition หรือไม่ มักแบ่งได้เป็น Unit Testing Integration Testing Systems Testing Acceptance Testing
Testing IT professional ส่วนมากคิดว่า การทดสอบเป็นขั้นตอนที่เกิดขึ้นใกล้ ๆ กับการเสร็จสิ้นของ IT product development แต่ในความเป็นจริงแล้ว การทดสอบควรทำในขณะที่เกือบจะแล้วเสร็จในทุก ๆ เฟสของ IT product development life cycle
Testing Tasks in the SDLC
Software Testing Approaches Unit Testing Focuses on the module, program, or object level to determine whether specific functions work properly. Black Box Testing – Tests the program against specified requirements or functionality. White Box Testing – Examines paths of logic or the structure inside a program. Gray Box Testing – Focuses on the internal structure of the program. Integration Testing Tests whether a set of logically related units (e.g., functions, modules, programs, etc.) work together properly after unit testing is complete. Systems Testing Tests the system as a whole in an operating environment to verify functionality and fitness for use. May include tests to verify usability, performance, stress, compatibility, and documentation. Acceptance Testing Certifies that the system satisfies the end user or customer’s scope and detailed requirements after systems testing is complete. It is the user’s or client’s responsibility to assure that all features and functionality are included so that the project’s MOV will be achieved.
Types of Tests สิ่งที่นำมาทดสอบ(unit test)จะถือว่าทดสอบเสร็จสิ้น เมื่อแต่ละส่วนย่อย (each individual component (often a program))ทำการทดสอบเสร็จสิ้น เพื่อมั่นใจว่า มันปราศจากข้อบกพร่องเท่าที่จะเป็นไปได้ Integration testing เกิดขึ้นระหว่าง การทดสอบ unit กับ system เป็นการทดสอบฟังก์ชันขององค์ประกอบย่อยเป็นกลุ่ม (testing to test functionally grouped components) System testing เป็นการทดสอบทั้งระบบในคราวเดียว (entire system as one entity) User acceptance testing คือ การทำ independent test โดย end user ก่อนที่จะยอมรับระบบที่ส่งมอบให้ (delivered system)
The IT Project Quality Plan Change Control and Configuration Management ตลอดช่วงของโครงการ การเปลี่ยนแปลงเป็นสิ่งที่หลีกเลี่ยงได้ยาก ที่จุด ๆ หนึ่ง การเปลี่ยนแปลงจะต้องถูกดำเนินการ: การเปลี่ยนแปลงอะไรที่ถูกดำเนินการ? ใครทำให้เกิดการเปลี่ยนแปลง? การเปลี่ยนแปลงเกิดขึ้นเมื่อใด? ทำไมต้องทำการเปลี่ยนแปลง?
The IT Project Quality Plan Monitor and Control Learn, Mature, and Improve Lessons learned Improvement Best Practices
Improving IT Project Quality หลาย ๆ คำแนะนำในการปรับปรุงคุณภาพของ IT projects ได้แก่ ผู้นำที่ต้องโปรโมตเรื่องคุณภาพ การทำความเข้าใจเกี่ยวกับต้นทุนคุณภาพ (cost of quality) มุ่งเน้นส่งที่เข้ามาเกี่ยวข้อกับองค์กรและแฟกเตอร์ต่าง ๆ ที่พื้นที่ทำงานอันส่งผลกระทบต่อคุณภาพ ทำตาม maturity models ในการปรับปรุงคุณภาพ
Leadership “ถือเป็นเรื่องสำคัญที่สุดที่ผู้บริหารระดับสูงมีจิตสำนึกด้านคุณภาพ ถ้าปราศจากความจริงใจแสดงออกอย่างเปิดเผยว่าสนใจในเรื่องคุณภาพจากผู้บริหารระดับสูงแล้ว ระดับก็จะให้ความสนใจในเรื่องคุณภาพน้อย” (Juran, 1945)
Quality Control Tools
Assignment 7 : ให้เขียนแผนการทำ Quality Control ของโครงงานที่รับผิดชอบ - มีการ Validation และ Verification อย่างไร ทำงานเป็นกลุ่ม
จบบทที่ 5 Quality Management คำถาม ………..