It Project Management

(IT) Project Management
การพัฒนาโครงการด้าน IT มีความเสี่ยงด้านความล้มเหลวสูง เนื่องจากใช้ cost สูงเกินที่กำหนด และไม่ตอบโจทย์ หรือบรรลุวัตถุประสงค์
What Defines a Project
คือ กิจกรรมที่องค์กรสร้างขึ้นเพื่อบรรลุ วัตถุประสงค์อย่างใดอย่างหนึ่ง กำหนด เริ่มต้น-สิ้นสุด,วัตถุประสงค์
Projects แตกต่างกับ Operation ที่เป็นกิจกรรมต่อเนื่อง routine
-มีวันเริ่ม-สิ้นสุด
-require ความชำนาญโดยเฉพาะ
-มีรูปแบบการจัดการชัดเจน
What is project management
การนำเอาความรู้ app skill มาบริหารโครงการให้สำเร็จตาม วัตถุประสงค์ที่กำหนดไว้
Project Manager ผู้นำด้านการบริหารโครงการ โครงการจำเป็นต้องบริหาร เพราะมีความเสี่ยงสูง
The Importance of Project Management
เพื่อให้โปรเจ็คดำเนินต่อไปได้โดยไม่มีข้อผิดพลาด ไม่ให้มีการใช้เงินทุนมากเกินไป
ประเภทของความผิดพลาด
-ไม่สามารถตอบสนองสิ่งที่ธุรกิจนั้นต้องการได้
-ไม่สามารถสร้างประโยชน์หรือผลกำไรให้องค์กร
-ทำให้เกิดการที่ซับซ้อนและไม่มีประสิทธิภาพ
-มีข้อมูลที่คลาดเคลื่อนไม่คงที่

Typical Project Management trade-offs

Project Manager ต้องบริหารควบคุมทั้ง 4 ด้านของโครงการ ต้อง trade off ทั้ง 4 ทาง ได้อย่างเสียอย่าง
Time-เริ่มต้น-สิ้นสุด
Cost- งบประมาณที่กำหนด
Scope require ตามวัตถุประสงค์ของโครงการ
ตาม 3 เหลี่ยมที่ต้องพิจารณาตลอดการเปลี่ยนแปลงอย่างใดอย่างหนึ่งก็จะกระทบต่อด้านอื่นๆเสมอ

Project Manager’s Role
1.วางแผนด้าน cost scope
2.ควบคุมให้เป็นไปตามแผนงาน
3.ระบุความเสี่ยงที่อาจทำให้โครงการล้มเหลว

Essential Components
-โครงการต้องมี Teamwork
-ทุกโครงการต้องมีการวางแผน
-ต้องกำหนดตารางเวลา กิจกรรมที่เกี่ยวข้อง
-ต้องมีการบริหารโครงการ
-ทุกโครงการต้องมีการบริหาร เวลาของโครงการ และบริหารกิจกรรมในโครงการ
Project Cycle Plan
เป็นการจัดลำดับของขั้นตอนในระบบ เป็นแบบ time-line
Pert Chart กระบวนการที่ทำการกำหนดว่ามีกิจกรรมหลักอะไร แล้วแตกกิจกรรมหลักเป็น กิจกรรมย่อย ทำให้ภาพรวมของโครงการว่าต้องมีอะไรบ้าง
แตกกิจกรรมออกมา เพื่อแสดงว่าอันไหนมาก่อน, หลัง หรือเชื่อมโยงมาพร้อมกันได้ และใช้เวลาเท่าไหร่
WBS –work breakdown structure

-GanTT Chart
มีความโดดเด่นในแต่ละช่วงจบของกิจกรรม มีการระบุ mile stone ที่บอกว่าเมื่อถึงช่วงจบเวลาต้อง deliver อะไร

IT Project
ต้นทุนที่สูง
ซับซ้อนสูง
มีผลกระทบต่องค์กร
Man months จำนวนคนที่ต้องใช้พัฒนาโครงการให้สำเร็จ ในระยะเวลาใดเวลาหนึ่ง
ในบางครั้ง ไม่เสมอไปในการที่เราใส่คนมากเกินไป ไม่ได้หมายความว่างานจะเสร็จแร็วขึ้น หรือดีขึ้น ส่วนใหญ่จะเกิด slow down มากกว่า
ยกตัวอย่างเช่น ใช้ผู้หญิง 9 คน คลอดลูกใน 1 เดือนไม่ได้
IT Project Development Methodologies
โดยปกติโครงการที่มี return ต่ำ ก็ความเสี่ยงต่ำ > High risk High return
เช่น การใช้ไมโครซอฟ ออฟฟิศ คือรูปแบบงาน กับ คนยังเหมือนเดิมอยู่ > ความเสี่ยงต่ำ return ต่ำ
Re-Engineering คือเอา IT ไปเปลี่ยนแปลงโครงการทั้งหมดขององค์กร เช่นโครงการ ERP (ไอทีไปเปลี่ยนการทำงานของทั้งองค์กร)
Paradigm shifts คือ เอาไอทีไปเปลี่ยนรูปแบบของธุรกิจโมเดล (เช่น เน็ทฟลิ้ก)
-ประโยชน์สูงมาก ความเสี่ยงก็สูงเช่นกัน
ส่วนใหญ่การเริ่มต้นจะเริ่มจาก Business case ซึ่งเป็นเหตุผลในการพัฒนาโครงการนั้นขึ้น โดยสร้าง Business case ได้ 3 รูป แบบ
1.Faith โครงการนั้นสนับสนุนกับกลยุทธ หลักขององค์กร (ex.walmart use RFID)
2.Fear กลัวสูญเสียความสามารถในการแข่งขัน เนื่องจากคนอื่นมีหมด
3.Fact มีการวิเคราะห์ต้นทุนในการลงทุนไปกับโครงการ และประโยชน์ที่บริษัทจะได้รับ (ROI NPV)
Selecting a Project
-ต้องดูว่าอะไรควรมาก่อน หรือมาหลัง
1.System Portfolio
รูปภาพ
2.Scoring Models ให้น้ำหนักในแต่ละโครงการ ตาม criteria ที่กำหนดไว้
รูปภาพ
3.Cost & Benefit
-Tangible benefits แปลงเป็นตัวเลขหรือตัวเงินได้ เช่น ยอดขาย share mสูงขึ้น cost ที่ต่ำลง
-Intangible benefits แปลงเป็นตัวเลขหรือเงินไม่ได้ เช่น brand ความรู้สึกในการทำงาน ชื่อเสียง
Cost-Benefit Analysis
-Idectifying costs
-Identifying benefits
-Performing cost-benefit analysis
-Cimparing competing…
ส่วนใหญ่มองในรูป Tangible cost
Project development Methologies
ในการบริหาร It ก็จะมีมาตรฐานกำหนด ซึ่งมีทั้งหมด 4 รูป แบบ
1. SDLC มีทั้งหมด 6 step
2. Prototyping
3. RAD
4. Agile
The Systems Development Process
SDLC 6 step

1.system analysis เสนอ solution ที่เข้าไปแก้ปัญหาขององค์กร มีความสำคัญอย่างมาก โดยเริ่มจากการเก็บรวบรวมปัญหาปัจจุบันขององค์กรอยู่ที่ไหน โดยทำการระบุว่าอะไรคือความต้องการของระบบใหม่
2.System Design ทำการออกแบบระบบว่า ระบบจะทำงานอย่างไร
3.Programming นำแบบไปทำการสร้างให้เกิดขึ้น โดย ณ วันนี้ programming นั้นคือการเขียนโปรแกรม ภายในองค์กร หรือการเอ้าซอร์ด หรือการซื้อซอฟแวร์แพคเกจ เช่น ERP โดยต้องตั้งอยู่บนพื้นฐานของตัวแบบที่เราสร้างขึ้น
4.Testing ใช้ได้จริง?
5.Conversion การนำระบบใหม่ไปแทนระบบเก่า
6.Production and Maintenance การใช้งานและดูแลรักษาระบบ
SDLC > น้ำตก สเต็ปใดๆจะเริ่มต้น step ก่อนหน้านั้นจะต้องเกิดก่อนและเสร็จสิ้น จะเหมาะกับโครงการที่ต้องการความแน่นอนสูง ต้องการที่จะลดความเสี่ยง และใช้เวลานานในแต่ละสเต็ป
SDLC –Systm investigation
เริ่มจากการแก้ปัญหาทางธุรกิจ หรือมีโอกาสทางธุรกิจ ตามด้วยการตัดสินใจจากการศึกษา Feasibility study
SDLC-System analysis
จะมีการทำ criteria ว่า solution ที่ตั้งขึ้นมาเข้าไปตอบวัตถุประสงค์ได้หรือไม่
เก็บรวมรวมจากทุกภาคส่วนของ stake holder ทั้งการสำรวจ หรือแบบสอบถาม สัมภาษณ์ เก็บข้อมูล
Critical Success Factor Methodology
อะไรที่ใช้ในการวัดความสำเร็จนั้นๆ
Joint Application Design
ทั้งผู้ใช้และ developer มาร่วมกันแก้ปัญหา
System Design
เหมือนสถาปนิก ทำการออกแบบหน้าตาว่าระบบจะออกมายังไง ทำงานยังไง ส่วนใหญ่อยู่ในรูปแบบของโมเดล
Logical System Design
ระบบสามารถทำอะไรได้?
Physical System Design
การใช้งานของระบบเป็นอย่างไร?

DFD data flow diagram
ดูว่าข้อมูลใดไหลในระบบ มีอะไรบ้างที่เกี่ยวข้อง
UML case diagram
ผู้ใช้กับฟังชันก์ ต่างๆ กับลุกค้า ต่างกันยังไง

Designing Forms
User interface ผู้ใช้เข้าไปสัมพันธ์ กับระบบโดยตรง
The role of end user
ควรเข้ามามีส่วนเกี่ยวข้องข่อนข้างเยอะ และควรใส่ใจและให้ยูเซอร์มีพัฒนาการ
Programming
แปลงให้กลาย เป็น program code
Testing
ทำงานได้จริงตามที่กำหนดไว้ได้รึเปล่า มี 4 ขั้นตอน
1.Unit testing เทสทีละฟังก์ชั่น ของตัวระบบ
2.System ทดสอบระบบในภาพรวม ว่าสามารถทำงานได้ครบทุกฟังก์ชั่น ทำงานได้จริงทั้งภาพรวมของระบบรึเปล่า
3.Usability ผู้ใช้สามารถใช้ได้หรือเปล่า
4.Acceptance testing ตอบวัตถุประสงค์ตั้งแต่แรกของเราหรือเปล่า
และระหว่าง testing ควรทำการเทรน ยูเซอร์ไปด้วยในเวลาเดียวกัน
Conversion
คือการเปลี่ยนถ่ายระบบ นำระบใหม่เข้าไปแทนที่ระบบเก่า โดยมี 4 ทางเลือก
1.palallel conversion เริ่มการใช้งานไปพร้อมกับระบบเก่า ความเสี่ยงต่ำที่สุด เนื่องจากมีระบบเก่าเข้ามารองรับอยู่ แต่ผลเสียคือ ผู้ใช้ต้องใช้แบบฟอร์มทั้งของใหม่และของเก่า
2.Direct conversion เอาระบบใหม่เข้าไปแทนที่ระบบเก่าแบบทันทีทันใด ความเสี่ยงสูงมาก เนื่องจากไม่มีระบบสำรอง แต่ก็ทำให้มี cost ต่ำสุด
3.Phase Conversion นำระบบใหม่เข้าไปแทนที่ระบบเก่าทีละ ฟังก์ชั่น แล้วก็เปลี่ยนไปเรื่อย ถ้าไม่มีปัญหาก็จะเปลี่ยนครบทุกฟังก์ชั่น
4.Pilot Conversion เลือกตัวอย่างมา 1 กลุ่ม แล้วมาทำการทดลอง แล้วถ้าไม่มีปัญหาจึงทำการกระจายไปยังภาคส่วนอื่นๆ ทุกองค์กร
Production and Maintenance
-อาจทำในช่วงที่มีการลองใช้ระบบจากยูเซอร์ และผู้เชี่ยวชาญ เพื่อนำมาว่าสามารถตอบสนองเป้าหมายที่ตั้งไว้หรือไม่
-หลังจากช่วงที่มีการใช้งานระบบในสายการผลิตแล้ว โดยตรวจดูว่าสามารถตอบสนองเป้าหมายที่ตั้งไว้หรือไม่
-มีการเปลี่ยนแปลงฮาร์ดแวร์ ซอฟแวร์ การจัดเก็บข้อมูล หรือการปรับปรุงระบบให้ตอบสนองต่อความต้องการใหม่ หรือเพิ่มประสิทธิภาพในการผลิต
รวมถึงทำการอัพเดทตัว ซอฟแวร์ไปด้วย(เป็น patch)
Overview of System development
-ใช้เวลานาน
-ลงทุนค่อนข้างสูง
-กลับไปแก้ไขยาก หรือเรียกว่า scope creep คือผู้ใช้หรือผู้บริหารโครงการทำการเปลี่ยนความต้องการหลังจากที่ระบบเริ่มการพัฒนาไปแล้ว ทำให้ project manager ต้องควบคุม เพราะจะมีผลต่อ 3 เหลี่ยม (time cost scope)

SDLC project paper หลักๆ ประกอบไปด้วย
สถาปนิก โปรแกรมเมอร์ speacialist user
ข้อดี SDLC
ควบคุม quality ค่อนข้างสูง เหมาะสมกับโครงการขนาดใหญ่ที่ต้องการความแน่นอนสูง
ข้อเสีย
ไม่มีความยืดหยุ่น ย้อนกลับไปแก้โปรแกรมได้ยาก
ดังนั้นก็เลยมีการพัฒนา รูปแบบใหม่ คือ สกัม (prototyping)
-ผู้ใช้ยังไม่รู้ว่าตนเองต้องการอะไร ยังมีความไม่แน่นอน
-ต้องการระบบให้มีการพัฒนาอย่างรวดเร็วไม่ต้องเป็นขั้นตอนแบบ SDLC
ขั้นตอน
1. ระบุ basic requirement คร่าวๆ
2. พัฒนา prototype
3. ทดสอบกับ user > feedback
4. ลูกค้าชอบ มีความต้องการ > finish product

เหมาะกับพวกการพัฒนาเว็ปไซด์ พวกที่เกี่ยวข้องกับ user interface ค่อนข้างเยอะ
ข้อดี
-เหมาะสมกับโครงการที่ไม่มีความแน่นอน
-ต้องการระบบที่ต้องเสร็จในระยะเวลาอันสั้น
ข้อเสีย
-ผู้ใช้อาจไม่เห็น error ในระบบ

Agile Development
เป็นการพัฒนากลับไปกลับมาระหว่างขั้นตอนต่างๆ และในหลายๆครั้งสามารถเริ่มต้นไปพร้อมๆกันได้
โดยจุดประสงค์ของ agile คือเพื่อใช้เวลาพัฒนาระบบในระยะเวลาอันสั้น

End-user development
ให้ผู้ใช้พัฒนาระบบเอง โดยปัจจุบันมีซอฟแวร์ที่ระบบสามารถพัฒนาโดยผู้ใช้ได้ ex.Microsoft access
ข้อดี
ผู้ใช้ยินดีกับระบบที่พัฒนาขึ้นมา
ข้อเสีย
จะมี error ที่ผู้ใช้มองข้ามไป

Application Software Package
เป็นทางเลือกหนึ่ง ในการกำหนดว่าต้องใช้ ซอฟแวร์อะไรบ้าง เป็นแพคเกจ(มาตรฐาน ex Microsoft office) หรือ customize ให้เหมาะกับการทำงานของบริษัท
ความเสี่ยง
ทำไม่ทันเวลาที่กำหนด
ใช้เวลาเกิน
ไม่ตอบสนองวัตถุประสงค์ที่ตั้งไว้
วัดความเสี่ยงจาก
-การใช้เทคโนโลยีที่ซับซ้อน ทันสมัย ไม่เคยมีใครทำมาก่อน
-การที่ระบบเข้าไปสร้างความซับซ้อนในการใช้งานต่อทุกแผนก
ความชัดเจนวัดจากที่ผู้ใช้หรือบริษัท รู้ว่าต้องการอะไร > ความเสี่ยงต่ำ
ไม่ชัดเจน > ความเสี่ยงสูงมาก
Size
ขนาดขององค์การ สามารถวัดจากเงินทุน งบประมาณ จ้องดูถึงขนาดของบริษัทด้วย
Managing Clarity Aspects of Project risk
ต้องมี skill+experience ในการพัฒนาโครงการแบบเดียวกัน
จ้างที่ปรึกษาโครงการ เป็นกรรมการกลาง ซึ่งที่ปรึกษานั้นจะรู้ถึงปัญหาที่จะเกิดขึ้นในแต่ะขั้นตอน
นำผู้ใช้เข้ามามีส่วนร่วมในทีม ซึ่งจะลบข้อผิดพลาดในการ miss understanding
Managing stakeholders ซึ่งแต่ละคนมีอิทธิพลไม่เท่ากันในแต่ละโครงการ เราต้องเก็บรักษา คนที่มีอิทธิพลสูง และเห็นด้วยกับโครงการเรา และพยายามให้ผู้มีอิทธิพลอื่นๆ มาเห็นด้วยกับโครงการ
Pulling the plug
เนื่องจากใช้เวลากับโครงการเยอะเกินไป และลงทุนไปจำนวนมาก แต่ไม่มีความคืบหน้า บริษัทต้องยอม

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License