ซอฟแวร์การบริหารจัดการโครงการพัฒนา : บทนำ

Software Project Management is More Than Tools - Ivan Soares Ferrer
การบริหารจัดการโครงการซอฟแวร์เป็นมากกว่าเครื่องมือ -- Ivan Soares Ferrer
ภาพรวมระดับสูงของวิธีการจัดการโครงการการเขียนโปรแกรม โครงการปัจจัยเสี่ยงความล้มเหลวของงานการวางแผนโครงการ

ดังนั้นคุณจึงได้รับเพียงแค่ได้รับมอบหมายในการจัดการโครงการซอฟต์แวร์ บางทีคุณอาจเป็นผู้จัดการที่มีประสบการณ์ แต่ไม่ได้มีโครงการซอฟต์แวร์ หรือบางทีคุณเป็นโปรแกรมเมอร์ที่การส่งเสริมการลงทุนเมื่อเร็ว ๆ นี้ นี่คือวิธีที่จะเริ่มต้น

ในขณะที่มันเป็นไปไม่ได้ที่จะเรียนรู้ทุกอย่างจากการอ่านบทความเราจะชี้อย่างน้อยออกพื้นที่หลักที่จะต้องพิจารณา

ขั้นตอนแรกคือการเข้าใจความร้ายกาจของงาน บทความ ZDNet โดยไมเคิล Krigsman เรื่อง" New IT โครงการตัวชี้วัดความล้มเหลว : เป็น Standish ผิดหรือเปล่า? " รายงานคำพูดของความสับสนวุ่นวายของกลุ่ม Standish เป็นคำพูดที่สองในสามของโครงการด้านไอทีที่เป็น"ท้าทาย"ในขณะที่นักวิจัยอื่น ๆ เชื่อว่าโครงการหนึ่งในสามของไอที​​ล้มเหลว

IT เว็บไซต์ Cortex มีสถิติเพิ่มเติมเกี่ยวกับมันล้มเหลวของโครงการ

สาเหตุของความล้มเหลวในโครงการซอฟต์แวร์

ในขณะที่มันอาจจะเป็นที่ดึงดูดให้คิดว่าโครงการซอฟต์แวร์ที่เหมาะสมเป็นเครื่องมือในการจัดการทั้งหมดที่จำเป็นในการขาดเครื่องมือที่ไม่ได้เป็นสาเหตุสำคัญของการล้มเหลวของโครงการ

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

ใน" คอมพิวเตอร์ Aid, รัฐอิงค์ของการสัมภาษณ์การปฏิบัติที่มี Capers โจนส์ ,"ซอฟแวร์ตัวชี้วัดขนาดของโครงการคุรุนิ้วมือเป็นปัญหาที่บอกว่าโครงการขนาดเล็กกว่า 1,000 จุดทำงานในขนาดที่มักจะประสบความสำเร็จ ในขณะที่ 10,000 ถึง 100,000 จุดฟังก์ชันโครงการจะเป็นปัญหามากขึ้น

(จุดฟังก์ชั่นเป็นวิธีการที่ภาษาอิสระในการวัดขนาดของซอฟต์แวร์หรือความซับซ้อน. สำหรับการเขียนโปรแกรมภาษาหลาย จุดหนึ่งฟังก์ชันแปลเป็นประมาณ 50 เส้น SLOC หรือแหล่งที่มาของรหัส )

ซอฟท์แวงานการบริหารจัดการโครงการ

นี่เป็นรายการสั้น ๆ ของงานที่สำคัญและปัญหาที่ต้องมีการจัดการเกี่ยวกับโครงการซอฟต์แวร์ขนาดใหญ่คือ :

  • ข้อกำหนดของซอฟต์แวร์ ได้รับรายละเอียดที่ถูกต้องในการจัดการความต้องการที่ขัดแย้งกันกำหนด trade - offs รับคุณสมบัติที่มีรายละเอียดเพียงพอที่จะเป็นประโยชน์ในการกำหนดรายละเอียดซึ่​​งจะมีความยืดหยุ่นหรือจำเป็นที่จะต้อง prototyped
  • โครงการที่ส่งมอบ (เอกสาร, รหัสแหล่งที่มา executables,)
  • มาตรฐานคุณภาพ (จำนวนที่ยอมรับได้และความรุนแรงของข้อบกพร่อง)
  • โครงการขนาดและการจัดทำงบประมาณ ค่าใช้จ่ายโครงการการประเมินความต้องการกำลังคนกำหนดขอบเขตการทำงานของซอฟท์แวอายุการใช้งานและงบประมาณการบำรุงรักษาซอฟต์แวร์
  • การเจรจาต่อรองบทลงโทษที่เกินกำหนดเวลา
  • วิธีการพัฒนาซอฟแวร์และเครื่องมือที่เกี่ยวข้อง (น้ำตก, Spiral, CMM, เปรียว, ต่อสู้, UML, โฟโต้)
  • กลยุทธ์การพัฒนา (เริ่มต้นจากขั้นการปรับเปลี่ยนโปรแกรมที่มีอยู่ทำงานร่วมกับซอฟแวร์เตียง Off - the shelf เชิงพาณิชย์)
  • การทดสอบ (การจัดการรายการการทดสอบการทดสอบโหลด, การทดสอบการยอมรับอัตโนมัติทดสอบ, การทดสอบการถดถอยครอบคลุม code)
  • การจัดการความเสี่ยง การสร้างแผนฉุกเฉินสำหรับปัญหาที่กำลังมีการเปลี่ยนแปลงความต้องการความเสี่ยงทางเทคนิคความไม่แน่นอนของงบประมาณ
  • การตรวจสอบโครงการ (ตัวชี้วัดที่สำคัญและผ่าน / ไม่วัตถุประสงค์) คุณจะรู้ว่าถ้าโครงการของคุณอยู่ในปัญหา?
  • กระบวนการทบทวนการออกแบบ (ออกแบบคิดเห็นรหัสความคิดเห็น)
  • ภาษาและการเลือกใช้แพลตฟอร์ม (ภาษาคอมพิวเตอร์, ระบบปฏิบัติการเซิร์ฟเวอร์ของโปรแกรมประยุกต์ที่สนับสนุนเว็บเบราเซอร์ฐานข้อมูล)
  • สถาปัตยกรรมระบบและวิธีการออกแบบ (หรือ asynchronous synchronous, ศูนย์หรือกระจาย, client - server, ลูกค้าบางลูกค้าไขมันเป็น web - based, PC - based รูปแบบการออกแบบเชิงวัตถุวัตถุที่ใช้ข้อมูลที่ขับเคลื่อนด้วยกลับมาใช้ , compartmentalization, สื่อสารระหว่างโมดูล)
  • ที่มีคุณภาพรหัสแหล่งที่มา (มาตรฐานการเข้ารหัส, วิเคราะห์รหัสคงที่, วิเคราะห์รหัสแบบไดนามิก)
  • รหัสควบคุม (การควบคุมเวอร์ชันซอฟแวร์ในการสร้างตารางเวลา)
  • เอกสาร (ข้อกำหนดการออกแบบ, การทดสอบ, ตรวจสอบย้อนกลับ)
  • การควบคุมการเปลี่ยนแปลง (คณะกรรมการควบคุมการเปลี่ยนแปลง)
  • ปัญหาและติดตามข้อบกพร่อง
  • ประสานงานลูกค้าหรือ end - user
  • การวางแผนการใช้งาน (บิ๊กแบงหรือแบ่ง)

บางรายการสามารถข้ามสำหรับโครงการขนาดเล็ก โครงการขนาดใหญ่ที่สำคัญมากขึ้นในรายการข้างต้นกลายเป็น

วิธีการอยู่รอดโครงการพัฒนาซอฟแวร์

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

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

สำหรับข้อมูลเพิ่มเติมให้เครือข่ายการจัดการโครงการซอฟต์แวร์ (กองทัพเรือสหรัฐ / กระทรวงกลาโหม) มีรายชื่อของ" 16 วิธีปฏิบัติที่ซอฟต์แวร์ที่สำคัญ "และ" SPMN บทเรียนทีมโฟกัสได้เรียนรู้ว่า ." บทความมาตรฐาน IEEE Spectrum," ทำไมซอฟท์แวล้มเหลว "มีกรณีศึกษาของความล้มเหลวในโครงการซอฟต์แวร์ขนาดใหญ่

โจ Spolsky ใน" วิธีการเป็นผู้จัดการโปรแกรม "ระบุว่าผู้จัดการโครงการเป็นหลักในการคิดค่าใช้จ่ายของข้อกำหนดที่ เขาเป็นผู้ใช้หรือผู้สนับสนุนของลูกค้า เขาควรจะยังไม่ได้เป็นผู้จัดการของโปรแกรมเมอร์ที่ แต่นี้ส่วนใหญ่อาจจะมีความแตกต่างในคำศัพท์

Photo of Kit Mun, Yuen Kit Mun

-- KIT มุนเป็นขี้ยาข้อมูลด้วยตนเองสารภาพ, การอ่านหนังสือโดยเฉลี่ยของสัปดาห์ที่ผ่านมาสองทศวรรษที่ผ่านมา อินเทอร์เน็ตของเขาเติบโต


a9550ge td driver download