Grouping SDLC components representing individual micro services from an integrated DevOps perspectiv
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-09-2025 10:05 AM
Hi,
Recently I've been looking into integrating the CSDM framework with DevOps using change velocity.
In 4.0 the concept of the SDLC component was introduced. This object is placed between the application service and the business application.
So far this is all good. But take the use case of micro services. We want each micro service to have its own managing team, operational process and deployments. It also has its own pipeline and code repository. This would mean a micro service is a SDLC component. The micro services make up a business application. This can be easily expressed using CSDM with the relationship:
Business App > SDLC Component > Application Service
However, some business applications consists of quite a lot of micro services, possible hundreds. It would be desirable to group these using some parent container to managed certain common attributes and relate them all to the same Azure Devops Project, and perhaps target environments. There is a class called DevOps application (sn_devops_app). In my mind, it would have been useful to group multiple SDLC components under an umbrella DevOps application, like this:
However it seems the relationship between a DevOps Application and SDLC Component has to be 1:1, which means this class cannot be used to group the micro services.
I did notice that in CSDM 5.0 there is a entity labelled "Subsystem" in the Build domain that groups the SDLC components. However since version 5 is not officially released I could not find anymore information about this class, and it seems its table is not yet implemented.
As of now, in order to achieve some sort of grouping of SDLC components - to add a parent management layer for micro services - it seems I have the following options:
1. Wait for the sub system class to possibly be implemented whenever CSDM 5 is released
2. Create my own custom class to represent sub-systems
3. Use another class, such as a CMDB Group, to group the SDLC components and add custom fields to track attributes
4. Modify the system to allow DevOps Applications to contain multiple SDLC components
Has anyone else had a similar requirement or thought? Ideally it would be great if the relationship between the SDLC component and the DevOps application could be one to many and I'm leaning towards actually making this possible in some way. I am unsure how it would affect the DevOps change Velocity module however.
With the 1:1 mapping between DevOps application and SDLC component it seems to me they are sorts of fulfilling the same purpose and I don't see why both exist.