วันเสาร์ที่ 6 มกราคม พ.ศ. 2561

โครงสร้างองค์กรในการบริหารโครงการ

โครงสร้างองค์กรในการบริหารโครงการ

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

๑.       โครงสร้างองค์กรตามหน้าที่

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

๒.     โครงสร้างองค์กรแบบเมตริกซ์

          ลักษณะโครงสร้างองค์กรแบบเมตริกซ์สมาชิกในทีมจะต้องรายงานผลการทำงานไปยังผู้จัดการที่พนักงานเหล่านั้นสังกัดอยู่และผู้บริหารโครงการ โครงสร้างแบบเมตริกซ์ยังสามารถแบ่งออกได้อีก ๓ รูปแบบ คือ เมตริกซ์แบบสมดุล (Balanced Matrix)  เมตริกซ์แบบอ่อน (Weak Matrix) และ เมตริกซ์แบบแข็ง (Strong Matrix) ซึ่งในแต่ละรูปแบบผู้บริหารโครงการมีอำนาจและหน้าที่ดังนี้
          เมตริกซ์แบบสมดุล ผู้บริหารโครงการสทำงานเต็มเวลา อำนาจในการบริหารและจัดหาทรัพยากรอยู่ในระดับต่ำถึงกลาง มีส่วนร่วมในการควบคุมงบประมาณกับผู้บริหารฝ่ายอื่นๆ

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

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

๓.     โครงสร้างองค์กรแบบโครงการ

ในโครงสร้างการบริหารงานแบบโครงการ สมาชิกในทีมไม่มีแผนกที่สังกัดแต่จัดอยู่ตามโครงการต่างๆ อยู่ภายใต้การบริหารงานโดยผู้บริหารโครงการและอุทิศเวลาในการทำโครงการเต็มเวลา ผู้บริหารโครงการทำงานเต็มเวลาเช่นเดียวกัน มีอำนาจในการบริหารและจัดหาและใช้ทรัพยากรอยู่ในระดับสูง และควบคุมงบประมาณได้เต็มที่


ที่มา: เอกสารประกอบการสอน รายวิชา การจัดการโครงการซอฟต์แวร์, อาจารย์นฤพล สุวรรณวิจิตร, สาขาวิชาวิศวกรรมซอฟต์แวร์ มหาวิทยาลัยราชภัฏนครปฐม, 2558.


วันพฤหัสบดีที่ 4 มกราคม พ.ศ. 2561

คำสั่ง When ในภาษา Kotlin

คำสั่ง When ในภาษา Kotlin


การใช้คำสั่ง when ถูกนำมาใช้แทนคำสั่ง switch ในภาษาที่มีโครงสร้างคล้ายกับภาษา C (ภาษา C, C++, C#, java เป็นต้น)
รูปแบบการใช้คำสั่ง แบบมีพารามิเตอร์
when (data) {
    1 -> print("1")
    2 -> print("2")
    else -> {
        print("ค่าข้อมูลไม่ใช่ทั้ง 1 และ 2")
    }
}

               การตรวจสอบค่าข้อมูล data ซึ่งเป็นพารามิเตอร์ หากข้อมูลมีค่าเป็น 1 ก็จะแสดงค่า 1 ออกทางหน้าจอ และในกรณีเดียวกัน หากข้อมูลมีค่าเป็น 2 ก็จะแสดงค่า 2 ออกมาทางหน้าจอ และหากไม่ใช่ทั้ง 1 หรือ 2 ก็จะแสดงข้อความว่า ค่าข้อมูลไม่ใช่ทั้ง 1 และ 2
รูปแบบการใช้คำสั่ง แบบไม่มีพารามิเตอร์
var price:Int = 150
var msg:String = "goodbye!!"
val data = when {
    price in 100..200 -> "buy"
    msg.contains("bye") -> "bye"
    else -> ""
}
print(data)
             
               จากคำสั่งด้านบนตัวแปร data จะมีค่าเป็น “buy” เนื่องจากตรงกับเงื่อนไขแรก ที่ price มีค่าอยู่ระหว่าง 100 ถึง 200 และออกจากเงื่อนไขถึงแม้ว่าคำสั่งถัดมาจะเป็นจริงก็ตาม

ที่มา:

Kotlin. (n.d.). Control Flow: if, when, for, while. Retrieved from kotlinlang.org: https://kotlinlang.org/docs/reference/control-flow.html
Leiva, A. (n.d.). Using “when” expression in Kotlin: The “switch” with super powers (KAD 13). Retrieved from Antonio Leiva: https://antonioleiva.com/when-expression-kotlin/