Team Topology Considerations (ข้อพิจารณาด้าน Team Topology)
เนื่องจาก service-based architecture เป็นแบบ domain partitioned มันจึงทำงานได้ดีที่สุดเมื่อทีมก็จัดตาม domain area เช่นกัน (เช่น cross-functional team ที่มีความเชี่ยวชาญเฉพาะทาง) เมื่อมี requirement ที่อิงตาม domain เข้ามา ทีม cross-functional ที่โฟกัส domain สามารถทำงานร่วมกันในฟีเจอร์นั้นภายใน domain service เฉพาะได้ โดยไม่รบกวนทีมหรือ service อื่น ในทางกลับกัน ทีมที่แบ่งตามเทคนิค (เช่น ทีม UI, ทีม backend, ทีม database และอื่น ๆ) ไม่เข้ากันดีกับ architectural style นี้ เพราะมันแบ่งตาม domain การมอบ requirement ที่อิงตาม domain ให้กับทีมที่จัดตามเทคนิคต้องการการสื่อสารและความร่วมมือระหว่างทีมในระดับที่พิสูจน์แล้วว่ายากในองค์กรส่วนใหญ่
ต่อไปนี้คือข้อพิจารณาบางส่วนสำหรับสถาปนิกในการจัด service-based architecture ให้สอดคล้องกับ team topology เฉพาะที่ระบุไว้ใน “Team Topologies and Architecture” :
Stream-aligned teams
ถ้าขอบเขต domain จัดวางได้เหมาะสม stream-aligned team จะทำงานได้ดีกับ architectural style นี้ โดยเฉพาะเมื่อ stream ของพวกเขาโฟกัสที่ domain เฉพาะ อย่างไรก็ตาม service-based architecture จะท้าทายมากขึ้นเมื่อ stream ข้ามขอบเขตที่ domain service กำหนดไว้ ในกรณีนี้ สถาปนิกควรวิเคราะห์ขอบเขตและ granularity ของ domain service แล้วจัดวางใหม่ให้ตรงกับ stream หรือเลือก architectural style อื่น
Enabling teams
service-based architecture ไม่ได้มีประสิทธิภาพเท่ากับ distributed architecture อื่นเมื่อจับคู่กับ enabling team topology เนื่องจากธรรมชาติแบบ coarse-grained ของ domain service อย่างไรก็ตาม สถาปนิกสามารถเพิ่ม modularity ของ style นี้ได้ด้วยการระบุและสร้าง component ที่เหมาะสมภายในแต่ละ domain service อย่างรอบคอบ ผู้เชี่ยวชาญเฉพาะทางและสมาชิกทีม cross-cutting ก็สามารถเสนอแนะและทดลองโดยอิงจาก component เหล่านั้นได้
Complicated-subsystem teams
complicated-subsystem team สามารถใช้ประโยชน์จาก modularity ระดับ domain และ subdomain ของ architecture style นี้ เพื่อโฟกัสที่การประมวลผล domain หรือ subdomain ที่ซับซ้อน โดยเป็นอิสระจากสมาชิกทีมอื่น (และ service อื่น)
Platform teams
modularity ระดับสูงของ service-based architecture ช่วยให้ทีมใช้ประโยชน์จาก platform team topology ได้ โดยใช้เครื่องมือ, service, API และ task ร่วมกัน