วันอาทิตย์ที่ 29 มิถุนายน พ.ศ. 2557

คุณลักษณะของซอฟแวร์

คุณลักษณะของซอฟแวร์คุณภาพ
            คุณลักษณะของซอฟแวร์ เป็นสิ่งที่ใช้กำหนดระดับคุณภาพของซอฟแวร์ โดยซอฟแวร์คุณภาพตามมาตรฐาน ISO/IEC 9126 คือ

การทดสอบซอฟแวร์แบบ Dynamic
            การทดสอบซอฟแวร์แบบ Dynamic (Dynamic Testing) หมายถึง การทดสอบโค้ดของโปรแกรม โดยการนำข้อมูลเข้าทดสอบจริงและเปรียบเทียบผลลัพธ์กับผลการทดสอบที่คาดหวัง โดยการทดสอบซอฟแวร์แบบ Dynamic มี 2 ประเภท คือ
1. การทดสอบแบบกล่องดำ (Black-box Testing) โดยเป็นการทดสอบผลการทำงานของซอฟแวร์ในแต่ละหน้าที่ตามข้อกำหนดความต้องการเท่านั้น เพื่อดูว่าซอฟแวร์ทำงานได้ถูกต้องตามที่กำหนดไว้หรือไม่ โดยไม่ต้องคำนึงถึงคำสั่งภายในโปรแกรม และยังทดสอบประสิทธิภาพและเงื่อนไขของขอบเขตข้อมูลที่จะนำเข้าด้วย
2. การทดสอบแบบกล่องขาว (White-box Testing) เป็นการทดสอบตรงข้ามกับ Black-box Testing โดยจะทดสอบเส้นทางการควบคุมการทำงาน และโครงสร้างควบคุมภายในโปรแกรมว่าถูกต้องตามที่ควรเป็นหรือไม่
สำหรับการทดสอบซอฟแวร์ในรูปแบบอื่น ๆ ซึ่งไม่ใช่ Dynamic Testing มีดังนี้
การทดสอบซอฟแวร์แบบอื่นๆ
1. การทดสอบซอฟแวร์แบบ Static Testing เป็นการทดสอบโดยใช้โปรแกรมพิเศษ ที่เรียกว่า “Static Analyzer” เพื่อรันโค้ดโปรแกรม เพื่อต้องการดูรูปแบบของโค้ดที่ผิดปกติ ซึ่งอาจทำให้การทำงานผิดพลาดได้
2. การทดสอบแบบรวมหน่วย (Integration Testing) เป็นการทดสอบการทำงานของกลุ่มโปรแกรม หรือส่วนประกอบย่อย โดยทำงานหน้าที่ใดหน้าที่หนึ่งร่วมกัน เพื่อค้นหาข้อผิดพลาดที่อาจเกิดขึ้นได้
3. การทดสอบระบบ (System Testing) เป็นการทดสอบระบบเมื่อรวมเข้ากับองค์ประกอบอื่นๆ เช่น อุปกรณ์ บุคลากร และข้อมูล เพื่อทดสอบระบบว่าทำงานตรงตามข้อกำหนดและความต้องการผู้ใช้หรือไม่
4. การทดสอบการยอมรับของผู้ใช้ (User Acceptance Testing) เป็นการทดสอบระบบในสภาพแวดล้อมจริง โดยมีผู้ใช้เป็นผู้ทดสอบ และตัดสินว่าจะยอมรับใช้ระบบนั้นหรือไม่ การทดสอบการยอมรับของผู้ใช้จะเริ่มขึ้นก็ต่อเมื่อผ่านการทดสอบในระดับอื่นๆ มาแล้วทั้งหมด
อนุกรมมาตรฐาน ISO 9000
            อนุกรมมาตรฐาน ISO 9000 เป็นมาตรฐานสำหรับระบบการบริหารจัดการขององค์กรที่มีการประกับคุณภาพของสินค้า หรือบริการที่ลูกค้าได้รับ ในการรับรองคุณภาพจะมีหลักเกณฑ์การประเมินโดยองค์กรสากลเพื่อมาตรฐาน หากตรงตามหลักเกณฑ์ที่กำหนดไว้ สินค้าหรือบริการนั้นจะได้รับรองคุณภาพจาก ISO โดยอนุกรมมาตรฐานของ ISO 9000 ประกอบด้วย
ISO 9001 คือ มาตรฐานระบบคุณภาพ ซึ่งกำกับดูแล ทั้งการออกแบบและพัฒนา การผลิต การติดตั้ง และการบริการ
ISO 9002 คือ มาตรฐานระบบคุณภาพ ซึ่งกำกับดูแลเฉพาะการผลิต และการบริการ
ISO 9003 คือ มาตรฐานระบบคุณภาพ ซึ่งกำกับดูแลทั้งการตรวจสอบ และทดสอบชั้นสุดท้าย ก่อนการส่งมอบ
มาตรฐาน ISO 9001
            สำหรับการผลิตซอฟแวร์ มาตรฐานที่เหมาะสมและนิยมคือ ISO 9001 โดยมีการกำหนดหลักการปฏิบัติทั่วไปที่สามารถนำมาใช้กับการผลิตซอฟแวร์ได้ โดยมีขั้นตอนการปฏิบัติตามมาตรฐาน ISO 9001 ดังนี้
1. คุณภาพจะต้องได้รับความเห็นชอบจากทุกๆ ฝ่ายที่เกี่ยวข้อง โดยเฉพาะผู้บริหารระดับสูงขององค์กร ที่จะต้องจัดการทรัพยากรต่างๆ ให้เหมาะสมและคุ้มค่าในการลงทุน
2. ระเบียบการจะต้องกำหนดถึงรายละเอียดของขั้นตอนการพัฒนาและทดสอบซอฟแวร์ ไม่ว่าผลลัพธ์นั้นจะสอดคล้องกับความต้องการของลูกค้าในช่วงเวลานั้นหรือไม่ก็ตาม
3. ซอฟแวร์จะต้องได้รับการยอมรับจากลูกค้าอย่างโปร่งใส
4. ซอฟแวร์จะต้องมีการส่งมอบและติดตั้งการใช้งานได้อย่างถูกต้อง และเหมาะสม
5. ซอฟแวร์จะต้องได้รับการบำรุงรักษาอย่างถูกวิธี
6. ซอฟแวร์จะต้องได้รับการบริการหลังการขาย โดยมีคู่มือ ประวัติลูกค้า เอกสารกำกับดูแล การฝึกอบรม และข้อบันทึกการบำรุงรักษา เป็นต้น
7. ซอฟแวร์จะต้องได้รับการแก้ไขได้ทันท่วงที หากเกิดข้อผิดพลาด หรือเบี่ยงเบนไปจากมาตรฐานที่กำหนดไว้
ระบบวิกฤติ (Critical System)
            ระบบวิกฤติ(Critical System) หมายถึง ระบบที่มนุษย์หรือธุรกิจต้องพึ่งพาอาศัยการทำงานของระบบเป็นหลัก หากระบบวิกฤติล้มเหลว จะทำให้เกิดปัญหาร้ายแรงและความเสียหายอย่างมาก ยกตัวอย่างระบบวิกฤติ เช่น ระบบควบคุมการบิน ระบบเตือนเมื่อเกิดไฟไหม้ ระบบถุงลมนิรภัย ระบบควบคุมจราจรทางอากาศ ระบบเตือนภัยพิบัติทางธรรมชาติ เป็นต้น การทำงานของระบบเหล่านี้เกี่ยวข้องสัมพันธ์กับผู้ใช้ และธุรกิจการค้าอย่างมาก ต้นทุนที่ใช้พัฒนาสูง หากเกิดการผิดพลาดกับระบบวิกฤติ จึงนับว่ามีความร้ายแรงตามไปด้วย
คุณลักษณะของระบบวิกฤติ
มีการกำหนดคุณลักษณะของระบบวิกฤติ 5 ประการคือ
            1. พึ่งพาได้ (Dependability)
            2. เชื่อถือได้ (Reliability)
            3. พร้อมใช้งานเสมอ (Availability)
            4. ปลอดภัย (Safety)
            5. มีการรักษาความมั่นคงปลอดภัย (Security)
สาเหตุที่ทำให้ระบบวิกฤติทำงานล้มเหลวมีดังนี้
            1. ความล้มเหลวของฮาร์ดแวร์ระบบ (System Hardware)
            2. ความล้มเหลวของซอฟแวร์ระบบ (System Software)
            3. ความล้มเหลวของผู้ควบคุมระบบ (Human Operator)
ประเภทของระบบวิกฤติ
1. Safety Critical System เป็นระบบวิกฤติที่มีความปลอดภัยเป็นคุณสมบัติหลัก ระบบวิกฤติประเภทนี้ หากเกิดความล้มเหลว อาจทำให้เกิดอันตรายกับมนุษย์ หรือสร้างความเสียหายแก่สภาพแวดล้อมอื่นของระบบ
2. Mission Critical System เป็นระบบวิกฤติที่เมื่อเกิดความเสียหายขึ้นแล้ว อาจทำให้เป้าหมายการดำเนินธุรกิจในระยะยาวล้มเหลวไปด้วย เช่น ระบบพยากรณ์ ระบบจัดการทรัพยากร เป็นต้น

3. Business Critical System เป็นระบบวิกฤติที่เมื่อเกิดความเสียหายขึ้นแล้ว อาจทำให้เป้าหมายการดำเนินธุรกิจในระยะสั้นล้มเหลวไปด้วย  โดยอาจทำให้ธุรกิจต้องสูญเสียค่าใช้จ่ายจำนวนมาก เช่น ระบบธนาคารรายย่อย ระบบลูกค้าสัมพันธ์ เป็นต้น



แบบฝึกหัดเกี่ยวกับคุณภาพซอฟแวร์

คำถามเกี่ยวกับคุณภาพซอฟแวร์

1.   คุณภาพซอฟแวร์ หมายถึง

2.   การจัดการคุณภาพซอฟแวร์ มีอะไรบ้าง

3.   การทดสอบซอฟแวร์มีกี่ประเภท อะไรบ้าง จงอธิบาย

4.   อนุกรมมาตรฐาน ISO 9000 ประกอบด้วยอะไรบ้าง จงอธิบาย

5.   บอกขั้นตอนการปฏิบัติตามมาตรฐาน ISO 9001

6 .  ระบบวิกฤติ  หมายถึง  และ มีคุณลักษณะอย่างไร

7.   ระบบวิกฤติ แบ่งออกเป็นกี่ประเภท อะไรบ้าง









ผู้จัดทำ



ชื่อ นางสาว สุภาวดี  เรืองสวัสดิ์
  
ID  5631110012

คณะวิทยาศาสตร์  และ  เทคโนโลยี

สาขา  เทคโนโลยีสารสนเทศ

มหาวิทยาลัยตาปี



คุณภาพชีวิต

คุณภาพชีวิต
ความเหลื่อมล้ำทางด้านเทคโนโลยี
            ความเหลื่อมล้ำทางด้านเทคโนโลยี (Digital Divide) หมายถึง ความแตกต่างกันอย่างมากในการเข้าถึงคอมพิวเตอร์และอินเทอร์เน็ต ระหว่างกลุ่มคนในสังคมที่แตกต่างกัน และระหว่างกลุ่มคนที่ต่างสถานที่กัน
            Pippa Noris จากมหาวิทยาลัย John F. Kennedy นักรัฐศาสตร์และนักวิจัยทางการเมือง ได้จำแนกความเหลื่อมล้ำทางด้านเทคโนโลยีออกเป็น 2 ประเภท ได้แก่
•           Global Divide
•           Social Divide
            Global Divide คือ ความเหลื่อมล้ำในการเข้าถึงอินเทอร์เน็ตระหว่างประเทศที่มีความก้าวหน้าทางอุตสาหกรรมมาก กับประเทศที่มีความก้าวหน้าทางอุตสาหกรรมน้อย เช่น มีผู้ใช้อินเทอร์เน็ตราว 1 พันล้านคนทั่วโลก แต่มีผู้ใช้อินเทอร์เน็ตจากประเทศที่กำลังพัฒนาเพียง 20 ล้านคนเท่านั้น ที่เหลืออยู่ในประเทศพัฒนาแล้วทั้งสิ้น แสดงให้เห็นว่าประชากรจากประเทศที่กำลังพัฒนา สามารถเข้าถึงอินเทอร์เน็ตได้น้อยกว่าประเทศที่พัฒนาแล้ว หรืออีกสถิติหนึ่งที่แสดงให้เห็นที่ชัดเจน คืออัตราการขยายตัวในการใช้อินเทอร์เน็ตของประชากรทั่วโลก จำแนกตามภูมิภาคต่างๆ ของโลก ในปี ค.ศ.2011 ดังรูป


world2011users.pngworld2011pr.png

            จากรูป จะเห็นว่าการเติบโตการใช้อินเทอร์เน็ตในกลุ่มประเทศ อเมริกา ออสเตรเลีย และยุโรป มีอัตราสูงกว่าประเทศอื่นในโลก  และมีอัตราสูงกว่าค่าเฉลี่ย 30.2 อย่างมาก ในขณะที่กลุ่มประเทศในแถบเอเชีย และแอฟริกานั้น การเติบโตยังน้อยกว่าค่าเฉลี่ย
            การที่อัตราการเติบโตของอินเทอร์เน็ตของกลุ่มประเทศในทวีปเอเชียและแอฟริกา มีน้อยกว่าค่าเฉลี่ยอาจมาจากหลายสาเหตุ คือ
            1. บางประเทศเป็นประเทศที่ยากจน
            2. มีหลายประเทศที่มีโครงสร้างพื้นฐานทางเทคโนโลยีสาสนเทศไม่เพียงพอ
            3. ภาษาหลักของประเทศไม่ใช่ภาษาอังกฤษ
            4. การศึกษาไม่เพียงพอ
            5. วัฒนธรรมของประเทศไม่ได้มุ่งไปที่เทคโนโลยีสารสนเทศเป็นสำคัญ

            Social Divide คือ ความเหลื่อมล้ำทางสังคมในประเทศเดียวกัน เป็นความแตกต่างอย่างมาก ระหว่างสังคมคนจนและคนรวย เช่น โรงเรียนในประเทศที่กำลังพัฒนาส่วนใหญ่จะมีอุปกรณ์คอมพิวเตอร์และเทคโนโลยีน้อยกว่าโรงเรียนที่อยู่ในเมือง
            จากความเหลื่อมล้ำของคนในสังคม ในกลุ่มคนที่สามารถเขถึงเทคโนโลยีได้ง่าย ย่อมมีทักษะในการใช้งานเทคโนโลยีได้ดีกว่ากลุ่มคนด้อยโอกาส
            การที่กลุ่มบุคคลต้องการที่จะลดความเหลื่อมล้ำทางเทคโนโลยีนั้น อาจช่วยลดปัญหาอาชญากรรม หรือปัญหาสุขภาพลงได้ เนื่องจากประชาชนเข้าถึงอินเทอร์เน็ตไดโดยง่าย จะทำให้สามารถค้นหาความรู้ต่างๆ ไม่ว่าจะเป็นความรู้ธุรกิจ สุขภาพ การงาน การเกษตร ช่วยให้ประชาชนสามารถหาทางออกสำหับปัญหาได้อย่างถูกวิธี
แบบจำลองการกระจายของเทคโนโลยี
            แบบจำลองการกระจายของเทคโนโลยี (Technological Diffusion) หมายถึง อัตราที่เทคโนโลยีใหม่ๆ มีการแพร่กระจายไปในสังคม
            นักวิเคราะห์เทคโนโลยี 2 กลุ่ม ได้มีการจัดทำแบบจำลองการกระจายเทคโนโลยีใหม่ในสังคมไว้ 2 รูปแบบ โดยนักวิเคราะห์เทคโนโลยีในแง่บวก (Technological  Optimist)ได้จัดทำแบบจำลองที่เรียกว่า “Normalization Model” ส่วนนักวิเคราะห์เทคโนโลยีในแง่ลบ (Technological  Pessimist)ได้จัดทำแบบจำลองที่เรียกว่า “Stratification Model” โดยจัดทำบนพื้นฐานของฐานะเศรษฐกิจของกลุ่มคน 3 กลุ่ม คือA=กลุ่มคนมีฐานะดี ,  B=กลุ่มคนมีฐานะปานกลาง , C= กลุ่มคนมีฐานะไม่ดี (ยากจน)
            แบบจำลองแบ่งออกเป็น 2 ชนิด ดังนี้
            1. Normalization Model (รูป a) เป็นแบบจำลองที่แสดงให้เห็นว่า ที่สุดแล้วประชาชนทุกคนในสังคมจะได้ใช้เทคโนโลยีใหม่เหมือนกัน คือ ความเหลื่อมล้ำระหว่างกลุ่มคนจะเกิดขึ้นชั่วคราวเท่านั้น(เส้นบรรจบกัน) ส่วนการกระจายของเทคโนโลยี จะเริ่มจากคนที่มีฐานะดี ซึ่งเป็นกลุ่มคนที่มีความสามารถในการซื้อเทคโนโลยีมาใช้ก่อน จากนั้นเมื่อราคาเทคโนโลยีลดลง กลุ่มคนฐานะปานกลาง จะสามารถหาซื้อได้เช่นกัน และสุดท้ายเมื่อราคาเทคโนโลยีต่ำลงมากๆ ประชาชนที่มีฐานะไม่ดีจะเป็นผู้ซื้อเทคโนโลยีได้เป็นกลุ่มสุดท้าย
            2. Stratification Model (รูป b) เป็นแบบจำลองที่แสดงให้เห็นว่า คนสังคมมีความเหลื่อมล้ำการอย่างสิ้นเชิง โดยไม่มีทางบรรจบกันได้ รูปแบบนี้ ประชาชนที่มีฐานะดีจะเป็นกลุ่มแรกที่ได้ใช้เทคโนโลยีสมัยใหม่ก่อน ตามมาด้วยประชาชนที่มีฐานะปานกลาง และประชาชนที่มีฐานะไม่ดีตามลำดับ แต่สำหรับประชาชนในกลุ่ม B และ C ถึงแม้จะเข้าถึงเทคโนโลยีใหม่ได้ แต่ก็อยู่ในปริมาณที่น้อยกว่าประชาชนในกลุ่ม A
ภาพจาก http://www.pippanorris.com/




เฉลยคำถามเกี่ยวกับคุณภาพซอฟแวร์

คำถามเกี่ยวกับคุณภาพซอฟแวร์



1. คุณภาพซอฟแวร์ หมายถึง
                     คุณภาพของซอฟแวร์ (Software Quality) หมายถึง ระดับที่ผลิตภัณฑ์ซอฟแวร์สามารถตอบสนองความต้องการของผู้ใช้ซอฟแวร์ได้ โดยจะต้องมีคุณลักษณะที่ซอฟแวร์ใดๆ ควรจะมี หากซอฟแวร์มีคุณสมบัติครบถ้วนตามเงื่อนไข ก็จะเรียกว่าเป็น ซอฟแวร์ที่มีคุณภาพ



2. การจัดการคุณภาพซอฟแวร์ มีอะไรบ้าง

           การจัดการคุณภาพของซอฟแวร์ (Software Quality Management) คือ การ
ระบุวิธีการกำหนดคุณลักษณะของซอฟแวร์ที่มีคุณภาพ วิธีการวัดคุณภาพ และปรับปรุง
คุณภาพของกระบวนการพัฒนาซอฟแวร์ โดยมีต้นทุนของคุณภาพ ประกอบไปด้วย
         1. ต้นทุนการป้องกัน (Prevention Cost) เป็นค่าใช้จ่ายที่ใช้ป้องกันเพื่อไม่ให้เกิดความ
บกพร่องในการควบคุมคุณภาพ
         2. ต้นทุนในการประเมิน (Appraisal Cost) เป็นค่าใช้จ่ายที่เกิดจากการตรวจสอบ หรือ
วัดเพื่อประเมินคุณภาพซอฟแวร์
         3. ต้นทุนของความผิดพลาดภายใน (Internal Failure Cost) เป็นค่าใช้จ่ายที่เกิดจาก
การผิดพลาดทางการผลิต
         4. ต้นทุนของความผิดพลาดภายนอก (External Failure Cost) เป็นค่าใช้จ่ายที่เกิดจาก
ความผิดพลาดหลังส่งมอบสินค้าให้กับลูกค้า เช่น บริการหลังการขาย 



3. การทดสอบซอฟแวร์มีกี่ประเภท อะไรบ้าง จงอธิบาย
       การทดสอบซอฟแวร์แบบ Dynamic (Dynamic Testing) หมายถึง การทดสอบโค้ดของ
โปรแกรม โดยการนำข้อมูลเข้าทดสอบจริงและเปรียบเทียบผลลัพธ์กับผลการทดสอบที่
คาดหวัง โดยการทดสอบซอฟแวร์แบบ Dynamic มี ประเภท คือ
         1. การทดสอบแบบกล่องดำ (Black-box Testing) โดยเป็นการทดสอบผลการทำงาน
ของซอฟแวร์ในแต่ละหน้าที่ตามข้อกำหนดความต้องการเท่านั้น เพื่อดูว่าซอฟแวร์ทำงาน
ได้ถูกต้องตามที่กำหนดไว้หรือไม่ โดยไม่ต้องคำนึงถึงคำสั่งภายในโปรแกรม และยังทดสอบ
ประสิทธิภาพและเงื่อนไขของขอบเขตข้อมูลที่จะนำเข้าด้วย
         2. การทดสอบแบบกล่องขาว (White-box Testing) เป็นการทดสอบตรงข้ามกับ
Black-box Testing โดยจะทดสอบเส้นทางการควบคุมการทำงาน และโครงสร้างควบคุม
ภายในโปรแกรมว่าถูกต้องตามที่ควรเป็นหรือไม่
                    
สำหรับการทดสอบซอฟแวร์ในรูปแบบอื่น ๆ ซึ่งไม่ใช่ Dynamic Testing มีดังนี้
         1. การทดสอบซอฟแวร์แบบ Static Testing เป็นการทดสอบโดยใช้โปรแกรมพิเศษ ที่
เรียกว่า “Static Analyzer” เพื่อรันโค้ดโปรแกรม เพื่อต้องการดูรูปแบบของโค้ดที่ผิดปกติ
ซึ่งอาจทำให้การทำงานผิดพลาดได้
         2. การทดสอบแบบรวมหน่วย (Integration Testing) เป็นการทดสอบการทำงานของ
กลุ่มโปรแกรม หรือส่วนประกอบย่อย โดยทำงานหน้าที่ใดหน้าที่หนึ่งร่วมกัน เพื่อค้นหา
ข้อผิดพลาดที่อาจเกิดขึ้นได้
         3. การทดสอบระบบ (System Testing) เป็นการทดสอบระบบเมื่อรวมเข้ากับ
องค์ประกอบอื่นๆ เช่น อุปกรณ์ บุคลากร และข้อมูล เพื่อทดสอบระบบว่าทำงานตรงตาม
ข้อกำหนดและความต้องการผู้ใช้หรือไม่
         4. การทดสอบระบบนั้นหรือไม่ การทดสอบการยอมรับของผู้ใช้จะเริ่มขึ้นก็ต่อเมื่อผ่าน
การทดสอบในระดับอื่นๆ มาแล้วทั้งหมดทดสอบการยอมรับของผู้ใช้ 
(User AcceptanceTesting) เป็นการทดสอบระบบในสภาพแวดล้อมจริง โดยมีผู้ใช้เป็นผู้
ทดสอบ และตัดสินว่าจะยอมรับใช้



4.อนุกรมมาตรฐาน ISO 9000 ประกอบด้วยอะไรบ้าง จงอธิบาย
         อนุกรมมาตรฐาน ISO 9000 เป็นมาตรฐานสำหรับระบบการบริหารจัดการขององค์กร
ที่มีการประกับคุณภาพของสินค้า หรือบริการที่ลูกค้าได้รับ ในการรับรองคุณภาพจะมี
หลักเกณฑ์การประเมินโดยองค์กรสากลเพื่อมาตรฐาน หากตรงตามหลักเกณฑ์ที่กำหนดไว้
สินค้าหรือบริการนั้นจะได้รับรองคุณภาพจาก ISO โดยอนุกรมมาตรฐานของ ISO
9000 ประกอบด้วย
•ISO 9001 คือ มาตรฐานระบบคุณภาพ ซึ่งกำกับดูแล ทั้งการออกแบบและพัฒนา การผลิต
การติดตั้ง และการบริการ
•ISO 9002 คือ มาตรฐานระบบคุณภาพ ซึ่งกำกับดูแลเฉพาะการผลิต และการบริการ
•ISO 9003 คือ มาตรฐานระบบคุณภาพ ซึ่งกำกับดูแลทั้งการตรวจสอบ และทดสอบชั้น
สุดท้าย ก่อนการส่งมอบ



5. บอกขั้นตอนการปฏิบัติตามมาตรฐาน ISO 9001

          สำหรับการผลิตซอฟแวร์ มาตรฐานที่เหมาะสมและนิยมคือ ISO 9001 โดยมีการ
กำหนดหลักการปฏิบัติทั่วไปที่สามารถนำมาใช้กับการผลิตซอฟแวร์ได้ โดยมีขั้นตอนการ
ปฏิบัติ ตามมาตรฐาน ISO 9001 ดังนี้
1. คุณภาพจะต้องได้รับความเห็นชอบจากทุกๆ ฝ่ายที่เกี่ยวข้อง โดยเฉพาะผู้บริหาร
ระดับสูงขององค์กร ที่จะต้องจัดการทรัพยากรต่างๆ ให้เหมาะสมและคุ้มค่าในการลงทุน
2. ระเบียบการจะต้องกำหนดถึงรายละเอียดของขั้นตอนการพัฒนาและทดสอบซอฟแวร์
ไม่ว่าผลลัพธ์นั้นจะสอดคล้องกับความต้องการของลูกค้าในช่วงเวลานั้นหรือไม่ก็ตาม
3. ซอฟแวร์จะต้องได้รับการยอมรับจากลูกค้าอย่างโปร่งใส
4. ซอฟแวร์จะต้องมีการส่งมอบและติดตั้งการใช้งานได้อย่างถูกต้อง และเหมาะสม
5. ซอฟแวร์จะต้องได้รับการบำรุงรักษาอย่างถูกวิธี
6. ซอฟแวร์จะต้องได้รับการบริการหลังการขาย โดยมีคู่มือ ประวัติลูกค้า เอกสารกำกับดูแล
การฝึกอบรม และข้อบันทึกการบำรุงรักษา เป็นต้น
7. ซอฟแวร์จะต้องได้รับการแก้ไขได้ทันท่วงที หากเกิดข้อผิดพลาด หรือเบี่ยงเบนไปจาก
มาตรฐานที่กำหนดไว้  



6 . ระบบวิกฤติ  หมายถึง  และ มีคุณลักษณะอย่างไร

       ระบบวิกฤติ(Critical System) หมายถึง ระบบที่มนุษย์หรือธุรกิจต้องพึ่งพาอาศัยการ
ทำงานของระบบเป็นหลัก หากระบบวิกฤติล้มเหลว จะทำให้เกิดปัญหาร้ายแรงและความ
เสียหายอย่างมาก ยกตัวอย่างระบบวิกฤติ เช่น ระบบควบคุมการบิน ระบบเตือน
เมื่อเกิดไฟไหม้ ระบบถุงลมนิรภัย ระบบควบคุมจราจรทางอากาศ ระบบเตือนภัยพิบัติทาง
ธรรมชาติ เป็นต้น การทำงานของระบบเหล่านี้เกี่ยวข้องสัมพันธ์กับผู้ใช้ และธุรกิจการค้า
อย่างมาก ต้นทุนที่ใช้พัฒนาสูง หากเกิดการผิดพลาดกับระบบวิกฤติ จึงนับว่ามีความ
ร้ายแรงตามไปด้วย
         สาเหตุที่ทำให้ระบบวิกฤติทำงานล้มเหลวมีดังนี้
1. ความล้มเหลวของฮาร์ดแวร์ระบบ (System Hardware)
2. ความล้มเหลวของซอฟแวร์ระบบ (System Software)
3. ความล้มเหลวของผู้ควบคุมระบบ (Human Operator)
         มีการกำหนดคุณลักษณะของระบบวิกฤติ 5 ประการคือ
                     1. พึ่งพาได้ (Dependability)
                     2. เชื่อถือได้ (Reliability)
                     3. พร้อมใช้งานเสมอ (Availability)
                     4. ปลอดภัย (Safety)
                     5. มีการรักษาความมั่นคงปลอดภัย (Security)



7. ระบบวิกฤติ แบ่งออกเป็นกี่ประเภท อะไรบ้าง
         1. Safety Critical System เป็นระบบวิกฤติที่มีความปลอดภัยเป็นคุณสมบัติหลัก
ระบบวิกฤติประเภทนี้ หากเกิดความล้มเหลว อาจทำให้เกิดอันตรายกับมนุษย์ หรือสร้าง
ความเสียหายแก่สภาพแวดล้อมอื่นของระบบ
         2. Mission Critical System เป็นระบบวิกฤติที่เมื่อเกิดความเสียหายขึ้นแล้ว อาจทำให้
เป้าหมายการดำเนินธุรกิจในระยะยาวล้มเหลวไปด้วย เช่น ระบบพยากรณ์ ระบบจัดการ
ทรัพยากร เป็นต้น
         3. Business Critical System เป็นระบบวิกฤติที่เมื่อเกิดความเสียหายขึ้นแล้ว อาจ
ทำให้เป้าหมายการดำเนินธุรกิจในระยะสั้นล้มเหลวไปด้วย  โดยอาจทำให้ธุรกิจต้องสูญเสีย
ค่าใช้จ่ายจำนวนมาก เช่น ระบบธนาคารรายย่อย ระบบลูกค้าสัมพันธ์ เป็นต้น