"ทีมข้ามสายงาน" คืออะไร? [ปิด]


18

ความหมายทั่วไปของ "cross-functional team" เป็นทีมที่รวมผู้เชี่ยวชาญในสาขาต่าง ๆ ที่จำเป็นเพื่อให้บรรลุเป้าหมาย

แต่ดูเหมือนว่าในฟังก์ชั่นไขว้ของ Agile ไม่เพียง แต่หมายรวมผู้เชี่ยวชาญที่แตกต่างกันเท่านั้น Henrik Kniberg กำหนดทีมข้ามสายงานด้วยวิธีนี้: "Cross-functional เพียงหมายความว่าทีมโดยรวมมีทักษะทั้งหมดที่จำเป็นในการสร้างผลิตภัณฑ์และสมาชิกในทีมแต่ละคนเต็มใจที่จะทำมากกว่าสิ่งที่ตัวเองทำ"

แต่สายลากอยู่ที่ไหน เป็นเรื่องปกติหรือไม่ที่จะขอให้ผู้พัฒนาทำการทดสอบซ้ำถ้าจำเป็น?


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

2
@ LadislavMrnka Cross-functional ไม่ได้หมายความว่าคุณไม่ควรมีผู้เชี่ยวชาญ!
Michael

@Michael: ใช่คุณสามารถมีผู้เชี่ยวชาญ แต่พวกเขาควรจะข้ามการทำงาน = พวกเขาควรจะสามารถทำงานอื่นได้เช่นกัน
Ladislav Mrnka

การเป็นผู้เชี่ยวชาญนั้นไม่ได้หมายความว่าจะต้องรู้อะไรเลย
JeffO

3
ทำไมบ่อยครั้งที่ฉันเห็นการพูดคุยของ "โปรแกรมเมอร์ควรสามารถทดสอบ" แต่ไม่เคย "ผู้ทดสอบควรสามารถโปรแกรม" ได้
Steve Folly

คำตอบ:


11

สิ่งที่ฉันใช้คือทีมข้ามสายงานคือทีมที่รวมผู้คนจากหน้าที่ต่าง ๆ ของ บริษัท : วิศวกรรม, ไอที, การเขียนเชิงเทคนิค, การตลาด, การเงิน, กฎหมาย, การขาย, HR, การปฏิบัติการ, คุณภาพและผู้บริหาร

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

หากคุณกำลังทำ TDD หรืออะไรทำนองนั้นใช่มันเป็นเรื่องปกติอย่างสมบูรณ์

อย่างไรก็ตามโดยทั่วไปความรับผิดชอบในการลงชื่อออกงานของนักพัฒนาไม่ควรอยู่ในมือของผู้พัฒนารายเดียวกัน


2
นี่คือสิ่งที่ cross-functional ไม่ได้อยู่ในระเบียบวิธีแบบเปรียวเช่น Scrum
Ladislav Mrnka

1
@ Ladislav Mrnka: มันไม่ชัดเจนจากคำถามที่ว่านี่คือ Agile-specific ในวิธีการแบบ Agile ฉันยังคงคิดว่ามันเป็นแบบนั้น ในวิธีการใด ๆบางครั้งคุณต้องทำบางสิ่งบางอย่างนอกขอบเขตความเชี่ยวชาญของคุณ ("ฟังก์ชั่น") เพื่อให้งานสำเร็จลุล่วง C'est la vie, c'est la guerre!
Peter K.

ทำไม "ความรับผิดชอบในการลงชื่อออกงานของนักพัฒนาไม่ควรอยู่ในมือของนักพัฒนาเดียวกัน"? ไม่ใช่ถ้าคุณต้องการลดรอบเวลา
Todd Owen

@ToddOwen และลดคุณภาพซอฟต์แวร์
Peter K.

@Downvoter: ความคิดเห็นใด ๆ ว่าทำไมคุณถึงไม่เห็นด้วย? :-)
Peter K.

7

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

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

การมีความคิดเห็นเกี่ยวกับการพัฒนาการทดสอบและการปฏิบัติงานมีประโยชน์อย่างยิ่งในการกำหนดผลิตภัณฑ์ที่ดีและนั่นคือคุณค่าของทีมข้ามสายงาน


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

4

ทีมข้ามสายงานที่ดีมีและความต้องการของคนที่มี 'แจ็คของการค้าทั้งหมด' แต่ยังต้นแบบของบางอย่าง ปกติหนึ่งหรือสอง

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

มีโครงการไม่มากที่ใช้ทักษะทั้งหมดของฉัน แต่ต้องพึ่งพาหลายโครงการฉันคิดว่านั่นเป็น 'การทำงานข้ามระบบ' บางครั้งมันเป็นการออกแบบที่ดีมีประสิทธิภาพและบางครั้งก็ไม่มาก

ขอบคุณพระเจ้าสำหรับเมื่อฉันไม่จำเป็นต้องเป็นผู้ดูแลระบบ / นักพัฒนาเครือข่าย .. ที่ไม่สนุก ธุรกิจขนาดเล็กเหล่านี้ในพื้นที่ของฉัน ... เป็นบ้า ที่ไว้วางใจเครือข่ายของพวกเขากับโปรแกรมเมอร์เชช สิ่งสุดท้ายที่คุณต้องการคือการเห็นฉันพยายาม 'debug' ตารางเส้นทางของคุณ: P


4

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

ใช่มันเป็นเรื่องปกติสำหรับนักพัฒนาที่จะกลายเป็นผู้ทดสอบหากจำเป็นต้องใช้เพื่อให้ได้งานทำซ้ำ


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


1
ฉันไม่คิดว่านักพัฒนาซอฟต์แวร์จะเป็นผู้ทดสอบที่เหมาะกับคำจำกัดความข้ามสายงาน ดูเหมือนว่าจะเป็นสถานการณ์ประเภทแจ็ค - ออล - เทรดที่นักพัฒนายังทำการทดสอบโทรขายออกไปซื้อกาแฟเพื่อใส่สำนักงาน ฯลฯ ซึ่งอาจเป็นเรื่องปกติในการเริ่มต้น สถานการณ์ข้ามสายงานดูเหมือนว่าจะเป็นสถานการณ์ที่คุณอาจเป็นนักพัฒนาและฉันอาจอยู่ในตลาด แต่เราทำงานร่วมกันเป็นทีมเพื่อสร้างและทำการตลาดผลิตภัณฑ์
jmort253

2

ทีมข้ามสายงานไม่ได้เป็นเพียงแค่เรื่องของความเชี่ยวชาญเท่านั้น แต่ยังมีทัศนคติต่อการทำสิ่งต่างๆ สมาชิกก้าวขึ้นมาและทำภารกิจต่างๆ คุณไม่ได้ยิน "นั่นไม่ใช่งานของฉัน"

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

คุณไม่ต้องการดึง devs ออกจากการเข้ารหัส แต่ในบางทีมก็ไม่สามารถช่วยได้ ปกติเป็นญาติ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.