การพัฒนาซอฟต์แวร์

คุณภาพของซอฟต์แวร์สามารถแบ่งประเภทได้เป็น 5 ประเภท คือ
1.คุณภาพด้านการใช้งาน หรือ Usability
2.คุณภาพด้านประสิทธิภาพ หรือ Efficiency
3.คุณภาพด้านความคงทน หรือ Reliability
4.คุณภาพด้านการบำรุงรักษา หรือ Maintainability
5.คุณภาพด้านการนำมาใช้ใหม่ หรือ Reusability
คุณลักษณะของซอฟต์แวร์ที่มีคุณภาพวัดจากผู้เกี่ยวข้อง 3 กลุ่ม คือ
1. ผู้ใช้ ซอฟต์แวร์ที่มีคุณภาพ คือ ซอฟต์แวร์ ที่สามารถทำงานตามที่ผู้ใช้ต้องการได้อย่างถูกต้อง ง่ายต่อการเรียนรู้และใช้งาน
2. ผู้บำรุงรักษาระดับ วัดคุณภาพจากการอัพเกรด และการเปลี่ยนแปลงระบบ
3. โปรแกรมเมอร์ ซึ่งมีหน้าที่ปรับเปลี่ยนระบบตามที่ลูกค้าต้องการ
   ผู้ใช้ทั้งสามกลุ่มมีความหวัง เหมือนกันว่า ระบบต้องมีความน่าเชื่อถือ และมีประสิทธิภาพ   ความน่าเชื่อถือวัดได้จากระดับความถูกต้องของผลลัพธ์จากการทำงานของระบบ ซอฟต์แวร์ ที่มีคุณภาพต้องมีระดับความถูกต้องอยู่ในเกณฑ์สูง  
ทีมงานในการพัฒนาระบบ
   

ผู้พัฒนาซอฟต์แวร์ทำหน้าที่สร้างระบบโดยทำงานเป็นทีมงานประกอบด้วยบุคคลต่างๆ  ที่มีความเชี่ยวชาญที่แตกต่างกัน ในขั้นตอนแรกของการพัฒนาต้องมีการพบปะพูดคุยกับลูกค้าและผู้ใช้ระบบ เพื่อวิเคราะห์และกำหนดระบบ โดยทำความเข้าใจถึงหน้าที่ทั้งหมดที่ระบบกระทำได้ เขียนเป็นเอกสารระบุความต้องการเพื่อใช้ในการอ้างอิงในการพัฒนาระบบในขั้นตอนต่อไป ผู้ที่ทำหน้าที่นี้เรียกว่านักวิเคราะห์ระบบ (analyst)

ต่อจากนั้นนักวิเคราะห์ระบบจะทำงานร่วมกับผู้ออกแบบระบบ (designers) เพื่อสร้างรายละเอียดในระดับย่อย ๆ ที่ระบบสามารถกระทำได้ ต่อจากนั้นผู้ออกแบบระบบจากทำงานร่วมกับโปรแกรมเมอร์ (programmers) เพื่อให้ผู้เขียนโปรแกรมสามารถเขียนคำสั่งโปรแกรมตามความต้องการได้อย่างถูกต้อง

หลังจากนั้นเป็นหน้าที่ของผู้ทดสอบระบบ (tester) ทำหน้าที่หาข้อผิดพลาดที่อาจเกิดขึ้นในโปรแกรม การทำงานของผู้ทดสอบระบบจะทำงานร่วมกับลูกค้าเพื่อพิสูจน์ว่าระบบสามารถทำงานตามที่ลูกค้าต้องการได้ เมื่อลูกค้ายอมรับจะมีการฝึกฝนการใช้โปรแกรมให้กับผู้ใช้ระบบ โดยผู้ฝึก (trainers) ถึงแม้จะมีการส่งมอบระบบให้ลูกค้าแล้ว ไม่ใช่ว่างานในการพัฒนาจะจบ  ถ้ามีข้อผิดพลาดเกิดขึ้นในระบบหรือความต้องการของระบบเปลี่ยนไป ทีมงานบำรุงรักษา (maintenance team) จะเป็นกลุ่มที่ทำหน้าที่รับผิดชอบแก้ไข ปรับปรุง เปลี่ยนแปลงตามความต้องการซึ่งอาจเป็นการแก้ไขการออกแบบ แก้ไขคำสั่งโปรแกรม มีการทดสอบระบบใหม่ และเมื่อมีการปรับเปลี่ยนเกิดขึ้นผู้ฝึกจะต้องสอนหน้าที่ใหม่ที่เพิ่มเติมขึ้นมาให้กับผู้ใช้ระบบเพื่อให้สามารถทำงานได้ตามปกติ

ประเภทของผู้ใช้ระบบ
แบ่งตามความรู้และประสบการณ์
1.  ผู้ใช้หน้าใหม่ด้อยประสบการณ์ (Novice User) ผู้ใช้กลุ่มนี้อาจเป็นผู้ที่มีความรู้น้อยมากในด้านคอมพิวเตอร์และระบบงาน  และยังอาจจะหวาดวิตกเกี่ยวกับการใช้คอมพิวเตอร์หรือการใช้ระบบงาน 
2.  ผู้ใช้ที่มีประสบการณ์และความรู้ระดับกลาง (Knowledgeable  intermittent  user) บางคนมีความรู้ดีในงานและวิธีการใช้คอมพิวเตอร์ แต่จำคำสั่งต่าง ๆ  ไม่ค่อยได้ เพราะไม่ได้ใช้บ่อยนัก  ว
3.  ผู้ใช้ที่ใช้งานประจำหรือผู้เชี่ยวชาญ (Frequent  User / Expert) ผู้ใช้กลุ่มนี้เป็นผู้ที่มีความรู้ความเข้าใจในระบบงานอย่างถ่องแท้  สิ่งที่ผู้ใช้กลุ่มนี้ต้องการคือ ความสามารถในการทำงาน  การประมวลผล และการตอบสนองกลับเป็นไปอย่างรวดเร็ว    
กระบวนการวิเคราะห์ความต้องการ
การบวนการวิเคราะห์ความต้องการมีขั้นตอนดังต่อไปนี้
  • เก็บรวบรวมข้อมูลที่เป็นข้อเท็จจริงต่าง ๆ (Data gathering)
  • วิเคราะห์เพื่อระบุถึงความต้องการต่าง ๆ (Requirement Identification)
  • คัดเลือกส่วนที่เป็นสาระสำคัญและอยู่ในขอบเขตการพัฒนา (Requirement selection)
  • จัดจำแนกและจัดโครงสร้างของความต้องการ (Requirement classification and structuring)
  • จัดลำดับความสำคัญและตกลงเจรจา (Prioritization and negotiation)
  • ตรวจสอบความถูกต้อง (Requirement validation)
  • จัดทำ Requirement specification
  การพัฒนาระบบจะทำการวิเคราะห์ความต้องการ  ผู้เกี่ยวข้อง  2 กลุ่ม  คือ  ลูกค้าและผู้พัฒนา
1. Requirement Definition Document  เป็นเอกสารที่เขียนสำหรับลูกค้า  โดยเขียนด้วยภาษาที่ลูกค้าเข้าใจง่าย  มีการอธิบายถึงปัญหาและสิ่งที่ลูกค้าต้องการ  เป็นภาพรวมของระบบใหม่ที่สามารถกระทำได้  กำหนดไว้ในเอกสารอย่างชัดเจน  เพื่อใช้เป็นหลักฐานแสดงข้อตกลงระหว่างลูกค้าและผู้พัฒนา

2. Requirement Specification Document  เป็นเอกสารที่บรรยายคุณลักษณะของระบบทางด้านเทคนิค  เป็นเอกสารที่ใช้สำหรับนักออกแบบระบบ เพื่อให้สามารถเข้าใจระบบได้ง่าย

กลับไปหน้าวิศวกรรมซอฟต์แวร์

 

หน้าหลัก บทเรียน ประวัติ เพื่อน