People Management and Team Organization
Seree [email protected]
Software Engineering 2
การจดการเพอสรางซอฟตแวรในหนวยงานทสรางซอฟตแวรประกอบดวยคนหลาย
ทกษะเพอทำางานรวมกนเชนนกโปรแกรม นกวเคราะห นกออกแบบ ผเชยวชาญทเปนเจาของงานและผ เกยวของอน ๆ โดยคนเหลานตองทำางานเปนทม
การจดโครงสรางของทมขนอยกบองคประกอบ จำ�นวนคนในทม ประสบก�รณของแตละคน ประเภทโครงก�ร คว�มแตกต�งระหว�งบคคลทเกยวของ รปแบบก�รทำ�ง�นของแตละคน
องคประกอบเหลานมผลกระทบตอรปแบบของการบรหารและการจดการโครงการ
Software Engineering 3
การจดการเพอสรางซอฟตแวร(2) การพฒนาซอฟตแวรขนาดใหญ จะประกอบดวยงาน
หลายๆลกษณะ สงทสำาคญยงทผบรหารจะตองรบผดชอบคอการประสานงานระหวางกลมบคคลททำางาน
ตางประเภทกน ใหสามารถผลตผลงานตามทกำาหนดได
การประสานงานสามารถทำาไดหลายแบบ แตละแบบจะมอทธพลหรอแรงผกดนจากภายในและภายนอกเปน
ตวแปร ททำาใหการประสานงานมรปแบบทตางกน แรงผลกดนภ�ยใน เกดจ�กคณลกษณะของโครงก�รเอง แรงผลกดนภ�ยนอก เกดจ�กสงแวดลอมภ�ยนอกองคกร
Software Engineering 4
การจดการเพอสรางซอฟตแวร(3) การพฒนาซอฟตแวรจำาเปนตองทำางานเปนทม
สมาชกในทมตองประสานงาน สอสารการ ตดสนใจ
โครงงานเลกๆอาจประกอบดวยสมาชก 2 - 3 คน โครงงานใหญๆจำานวนคนจะเพมตามไป
ดวยทำาใหการบรหารยาก ถาทมงานใหญเกนไป การประสานงานทำาได
ยาก ควรแบงเปนทมยอย ๆโดยเรว
Software Engineering 5
การจดการบคลากร(People Management)ทมงานประกอบดวยบคคลหลายกลมทมความสามารถ
เฉพาะดาน หลากหลายสไตลในการทำางาน ผบรหารตอง ทำาทกวถทางใหแตละคนทำางานรวมกนได และใหจดมง
หมายของแตละคนประสบผลสำาเรจวตถประสงคของโครงการจะตองกำาหนดไวแตแรกและ
ตองชแจงใหสมาชกทกคนในทมเขาใจอยางแจมชดระหวางโครงการกำาลงกำาลงพฒนาจะตองมการประเมน
ผลตลอดเวลา กจกรรมบางอยางวดปรมาณความกาวหนายาก
ตวบงชทสำาคญในการพฒนาซอฟตแวรมกจะกำาหนดโดยจำานวนคำาสง(line of code)ทสงใหลกคาทเขยน
โดยนกโปรแกรม 1 คนในหนงเดอน(Per man-month)
Software Engineering 6
อนตรายของการใชวธนคอแตละคนพยายามท จะเขยนคำาสงใหมาก ๆ
เนองจากคาใชจายในการพฒนาซอฟตแวรนน ขนกบจำานวนคำาสง การเขยนโปรแกรมสน ๆ
หรอการใชสวนของโปรแกรมทมอย(Reuse)จะชวยลดคาใชจาย
Software Engineering 7
กลไกการประสานงาน(Coordination mechanisms)Mintzberg แบงรปแบบการจดองคกรออกเปน
5 แบบ แตละแบบจะสะทอนถงองคประกอบและสงแวดลอมขององคกร
1( ) Simple structure เปนโครงสรางแบบงาย มผจดการรบผดชอบ
- 12 คน มคนหลกหนงคนรบผดชอบทกอยาง กลไกการประสานงาน เรยกวาการตรวจตรา
โดยตรง(Direct Supervision) กลไกแบบนมในองคกรทตงใหมและมขนาดเลก การ
ตดตอประสารงานไมมพธรตรองและไมเปนทางการ
Software Engineering 8
กลไกการประสานงาน 2( ) Machine Bureaucracy
เมอขอบเขตและเนอหาของงานมความชดเจนการทำางานกมกทำาตามคำาสงหรอขนตอนท
กำาหนดไวชดเจนลวงหนาการตดตออยางมพธการและความเชยวชาญ
เฉพาะดานจะมเพยงเลกนอยการประสานงานจะผานกระบวนการทเปนมาตรา
ฐานของระบบงานเอง(Standardization of work processes)
Software Engineering 9
กลไกการประสานงาน 3( )Divisionalized form
เปนการจดองคกรทแตละแผนกหรอแตละ โครงการไดรบอำานาจในการดำาเนนการเอง การ
ตดสนใจเปนความรบผดชอบของแผนกการประสานงานกระทำาผานมาตราฐานของผล
งานททำา(Standardization of work output )
การควบคมทำาโดยประเมนผลงานเปนระยะๆ
Software Engineering 10
กลไกการประสานงาน 4( ) Professional bureaucracy
ถาผลลพธและเนองานกำาหนดแนนอนและชดเจนไมไดการประสานงานตองทำาโดยประสบการณและความเชยวชาญของผปกบต(Standardization of worker skills) ผปกบตมอสระในการทำางานตามทตนเองเหนสมควร (5) Adhocracy
ในโครงการใหญหรอโครงการทตองใชแนวคดและวธ การใหมๆ เสมอ การแบงความรบผดชอบจะแบงตาม
กลมของผเชยวชาญแตละดาน การประสานงานจะทำาโดย Mutual Adjustment
Software Engineering 11
รปแบบการจดการและการบรหาร(Management styles) ทฤษฎการจดการของ Raddin เนนวารปแบบหรอ
สไตลการบรหารและการจดการจะขนอยกบองค ประกอบภายในเปนหลก Raddin กำาหนดความ
แตกตางของการจดการบคคลออกเปน 2 มตคอ 1( ) Relation directedness เกยวของกบ
ความตงใจของแตละบคคลและความสมพนธของตนเองกบบคคลอนภายในองคกร
2( ) Task directedness เกยวของกบความตงใจตอผลลพธทจะทำาใหสำาเรจและวถทางทผลลพธจะไดนำาไปสความสำาเรจ
Software Engineering 12
LOW HIGH
LOW Separation style Commitment style
HIGH Relation style Integration style
RelationDirectedness
TTTT TTTTTTTTTTTT
Software Engineering 13
(1) Separation styleเหมาะสมกบงานทปฏบตประจำาวน(Routine) ประสทธภาพในการทำางานถอเปนสำาคญ ผ
บรหารทำาหนาทเปนผบงคบบญชาทยดกฏ ระเบยบและวธปฏบตทเครงครด
รปแบบนคลายกบ Machine Burcaucracy ของ Mintzberge
Software Engineering 14
(2) Relation styleเหมาะสมทสดกบงานทบคลากรไดรบแรง
จงใจ(กระตน ) ใหทำางานรวมกนและตองไดรบการอบรม
งานททำาอยภายใตความรบผดชอบแตละคน และไมเปนงานประจำา แตเปนงานทมการ
เปลยนแปลงและตองใชความสามารถเฉพาะดาน
รปแบบนคลายกบแบบ Adhocracy ของMintzberg
Software Engineering 15
(3) Commitment Styleเปนรปแบบทเหมาะสมกบการทำางานภายใต
ความกดดน คลายคลงกบแบบProfessional bureaucracy ของMintzberg
Software Engineering 16
(4) Integration Styleเหมาะสมกบงานทมผลลพธทไมแนนอน ลกษณะงานจะเปนแบบทตองอาศยการสำารวจ
ทดลองและไมขนแกกน การบรหารจะตองคอยกระตนและสรางแรงจงใจใหกบผทำางาน
Software Engineering 17
การจดทมงานเพอพฒนาซอฟตแวร(Team Organization) โครงการพฒนาซอฟตแวรขนาดใหญ ตองจดเปนทม
งาน ซงประกอบไปดวย Project managers Tester Designers Programmers etc
บางคนอาจทำาหลายหนาทสำาหรบโครงงานขนาดเลกสวนโครงงานขนาดใหญจะทำาหนาทเดยว
ทมผทดสอบจะตองจะตองเปนคนละกลมกบผพฒนาทมทประกนคณภาพจะตองไมเกยวของกบการพฒนา
Software Engineering 18
รปแบบการจดทมเพอพฒนาโครงการซอฟตแวร
1( ) Hierarchical organization
T
EDCA B
Subsystem A Subsystem B Subsystem C QA Testing
Software Engineering 19
Hierarchical organizationการจดทมแบบ Hierarchy รปสเหลยมแทน
Subteam หรอทมยอยทปฏบตงานจรงตามงานท ไดรบมอบหมาย วงกลมแทนผจดการ
จดแบงเปน 2 ระดบ ในระดบลางแตละทมจะรบผด ชอบงานทแตกตางกนของโครงการ ผจดการแตละคน
มหนาทประสานงานระหวางสมาชกภายในทมของ ตนเอง ในระดบสงขน(T) การประสานงานกบทมอนจะ
ตองทำาในระดบนการจดองคการแบบนสะทอนใหเหนถงภาพรวมของ
โครงการทพฒนา มงานหลก 3 สวน จงตองมทมยอย พฒนา 3 ทมและมทมประกนคณภาพและทดสอบ
Software Engineering 20
Hierarchical organization ผทอยในระดบสงของ Hierarchy มกจะไม
เกยวของกบงานทปฏบตโดยตรง ดงนนแนวโนมทจะใชกลไกการประสานงานแบบมาตราฐานเปนหลกโดย
การผนวกเอากฏหรอวธการเหมอนแบบ Machine bureaucracy หรอการวดผลลพธ ดงเชนในdivisionalized configuration ในกรณดงกลาวแรงกดดนจากภายในและภายนอกอาจขดแยงกนไดในระดบลาง
จดวกฤตของการจดทมงานแบบHierarchy คอความแตกตางหรอระยะหางระหวางระดบบนสดและระดบลางสด
Software Engineering 21
Hierarchical organization ระดบลาง : เราประสบปญหาอยางมากใน
การImplement โมดล X ระดบท 1 : มปญหาบางประการกบโมดล X ระดบท 2: มความกาวหนาอยางตอเนอง ผมมองไมเหนวา
มปญหาอะไร ระดบสง : ทกอยางเปนไปตามแผนทวางไวปญหาทเกดในลกษณะนมกพบในทมงานทการรายงาน
กำาหนดเปนสายงานของการประเมนผล การปฏบตงาน แตละระดบ ทเกดจากการแตงเตมเพอใหผลงานของตน
ออกมาดแตถาขอมลเหลานนผานไปกบบคคลทไมมผลโดยตรงกบการประเมนแลวขอมลทไดจะนาเชอถอมากกวา
Software Engineering 22
2. Matrix organization ใชในองคกรทไมไดพฒนาซอฟตแวรเปนงานหลก แต
ซอฟตแวรเหมอนผลพลอยไดบคลากรตางแผนกกนจะถกจดใหไปรวมทมพฒนาดวย
กน การจดองคกรแบบนยากทจะควบคมความกาวหนา
พนกงานแตละคนตางพยายามทำางานใหถกใจหวหนาหลายคน
องคกรทสรางซอฟตแวรโดยตรงอาจจดทมงานแบบMatrix organization กได แตละกลมหรอทม
ยอยจะมขนาดเลก และมความเชยวชาญเฉพาะดาน อาจมมากกวา 1 ทมยอยทมความเชยวชาญแบบ
เดยวกน
Software Engineering 23
Matrix organizationการจดกลมจดตามความรความสามารถของ
สมาชกในกลม โครงการจะประกอบดวยกลมผ เชยวชาญเฉพาะดานทแตกตางกน แตละคนจะ
ถกจดบนพนฐานของ 2 แกน แกนหนงแทน ความเชยวชาญของแตละคน สวนอกแกนหนง
แทนโครงการทบคคลนนถกกำาหนดใหทำา
Software Engineering 24
Matrix organization
Real-timeProgramming
Graphic Database QA Testing
Project C X X XProject B X X X XProject A X X X X
Software Engineering 25
3 . Chief Programmer Team เสนอเมอป ค.ศ . 1 9 7 0 องคประกอบหลกประกอบดวยคน 3 คน
คนท 1 หวหน�นกโปรแกรม (Chief programming)เปน หวหน�ทมมหน�ทในก�รออกแบบและ Implement สวนทเปน
หวใจสำ�คญของระบบ คนท 2 ผชวยหวหน�นกโปรแกรม ทำ�หน�ทชวยหรอบ�งครงก
ทำ�หน�ทแทนหวหน�นกโปรแกรม คนท 3 คอบรรณ�รกษหรอธรก�รทจะทำ�หน�ทรบผดชอบของ
ง�นธรก�ร ง�นบรห�รและง�นเอกส�รทกชนด นอกจาก 3 คนนแลวอาจเพมผเชยวชาญเฉพาะดาน
อก - 12 คนเขาไปเปนทมของหวหนานกโปรแกรม กได การจดทมลกษณะนหวหนาทมจะตองมความรทาง
ดานเทคนคและการบรหาร
Software Engineering 26
หลกทวไปในการจดรปแบบของทมงานจากการวจยถงผลผลตของโครงงานพฒนา
ซอฟตแวรพบวา องคประกอบทเกยวกบความสามารถของทมงานจะมผลอยางมากตอ
ผลลพธทได องคประกอบทสำาคญคอ ศลธรรม ก�รทำ�ง�นเปนกลม รปแบบก�รจดก�ร ก�รใชภ�ษ�ระดบสง ก�รทำ�ใหผลผลตไมซบซอน
Software Engineering 27
หลกทวไปในการจดรปแบบของทมงาน
1. ใชคนนอยแตมคณภาพ 2. กำาหนด จดสรร และแบงงานใหเหมาะสมกบความสามารถของคนทม ผทเกงท�งเทคนคควรใหมคว�มก�วหน�ท�งเทคนค ไมควรให
ทำ�หน�ทผบรห�ร3.องคกรจะตองดงความสามารถเฉพาะดานของ
บคลากรทมประสบการณออกมาใหมากทสด บคคลททำ�ง�นในองคกรน�นยอมมคว�มเชยวช�ญในด�นใด
ด�นหนงโดยเฉพ�ะ บคล�กรบ�งคนทำ�ง�น - 45 ปคว�มรคว�มส�ม�รถทมกล�ย
เปนเรองล�สมย บคล�กรประเภทนไมควรจดเข�ในทมง�นท ตองใชเทคนคหรอวธก�รใหม ๆ
Software Engineering 28
หลกทวไปในการจดรปแบบของทมงาน
4. เลอกสมาชกทสามารถสรางความสมดลและความกลมกลนในทมได ไมใชจดทมทมเฉพ�ะผเชยวช�ญเพยง - 2 3 คน
แลวถอว�ด 5. ขจดบคคลทไมเหมาะสมออกจากทม ถ�พบว�ทมง�นไมส�ม�รทำ�ง�นประส�นกนได เมอด
ผลระยะหนงแลวไมดขน กควรรบจดก�รขจดออก ถ�ปลอยไวน�นจะเกอผลเสย