I was thinking about the Ops part of the DevOps culture while doing SOA. In the ADSD course Udi presented to us the organizational structure where we have branding on one side of the spectrum, IT Ops on the other side and services orthogonal in between - bound to both.
Now, this seems like an obvious thing - to have say a team for each of those, but how about some details? Regardless of the mapping between Services and Deployments (Udi insists they are decoupled) in a distributed architecture we will have multiple runtimes to deploy, monitor and maintain. Is it realistic for one team to take care of all of it? In daily business there will be bugs, and the team responsible for the bug should be quick to respond.
Now, even though the logical and physical architecture are not 1-1, wouldn’t it be more practical and scalable to have runtimes owned by the service (domain) teams? IT Ops is indeed responsible for the wire-up of the autonomous components into runtimes, but that is abstract. In reality, we can always assign a runtime to one service/team, which will be the owner and the first responder.
Under a runtime deployment I consider all deployment units - regardless frontend of backend.
Any thoughts?