Why "Back" and "Front" are duplicated in Enumeration -> Business_Capability_Role

Post Reply
xiaoqi
Posts: 131
Joined: 09 Feb 2023, 03:33

Hello,

As attached, I still see there are double "Back" and double "Front" under "Business_Capability_Role", are there any specific reason to keep them duplicated? When I choose them for populating Business Capability Model / Dashboard, I cannot see any distinguish between them.

If one pair is not needed, could you advise which one I can clean up?

Thanks,
Xiaoqi
You do not have the required permissions to view the files attached to this post.
JohnM
Posts: 482
Joined: 17 Feb 2009, 20:19

You can remove the duplicates. Just check what they are tied to first
xiaoqi
Posts: 131
Joined: 09 Feb 2023, 03:33

Thanks John, I want to remove two of them from duplications.

Before I do that, I'd like to know which one is actually used for mapping to any existing Business Capabilities in the repository.

Do you have any suggestion on how I can query that? I see we have "Queries" and "Lucene Query Tab", but those can only do the simple (one step) query. Something like SPARQL query if possible.

While, I hope to list all of the Instances that I've connect with one or two "Back", so that I can identify to remove one without usage.

Regards, Xiaoqi
JohnM
Posts: 482
Joined: 17 Feb 2009, 20:19

Select the taxonomy term and click:

Cloud - Instance References :
Screenshot 2024-05-08 at 08.10.32.png
O/S - The second 'rabbit ears' icon:
Screenshot 2024-05-08 at 08.10.49.png
That will list any associated instances
You do not have the required permissions to view the files attached to this post.
xiaoqi
Posts: 131
Joined: 09 Feb 2023, 03:33

Thanks John for teaching me this, I didn't aware this icon too much since it's not same in the newer version of Protege, but now through clicking that I can view all of the instances that I've connected to which "Front" or "Back".

Before I deleting one pair of "Front" / "Back", below I've done some further analysis and gotten understanding on the logic linking to the Viewer, here is the documentation for anyone may use as reference:

The purpose of categorizing "Business_Capability_Role" to Level 1 Business_Capability, in my modeling usage, is to populate into "View: Business Capability Model", the one with "Front", "Manage" and "Back" will be shown as the different nice headers style with Level 2 (only show two levels) business capabilities grouped inside, this is one good view to show Business Capability high-level structure to stakeholders.

The code for this view is in "business/core_bl_bus_cap_model.xsl", my current version is "May 2011 version 3" from line 26 mentiones.

The lines 42 to 45 are referring the usage of the "Business_Capability_Role", as below:

Code: Select all

<xsl:variable name="allBusCapRoles" select="/node()/simple_instance[type = 'Business_Capability_Role']"/>
<xsl:variable name="capFrontPositon" select="$allBusCapRoles[own_slot_value[slot_reference = 'name']/value = 'Front']"/>
<xsl:variable name="capBackPositon" select="$allBusCapRoles[own_slot_value[slot_reference = 'name']/value = 'Back']"/>
<xsl:variable name="capManagePositon" select="$allBusCapRoles[own_slot_value[slot_reference = 'name']/value = 'Manage']"/>
From reading that, I know the names of those 3 slots should be "Front", "Back" and "Manage".

Now, the tricky part is in the Protege instance, you may see 5, not 3, enumeration_values in the class, which you can find in below path:
EA_Support > Utiltiies > Enumeration > Business_Capability_Role

I didn't recognize the detail difference to having those duplication, but looks like all of those 5 are coming from meta-model directly, since they have the smallest class index number, and now, with John's feedback, I notice the difference which listed as below:
  • Back(1): internal name is essential_baseline_v3.5_Class0, Name is "Back"
  • Back(2): internal name is essential_baseline_v3.5_Class3, Name is "Support"
  • Front(1): internal name is essential_baseline_v3.5_Class1, Name is "Front"
  • Front(2): internal name is essential_baseline_v3.5_Class2, Name is "Core"
  • Manage: internal name is essential_baseline_v3.5_Class4, Name is "Manage"
Since there're not point to "Support" and "Core" in the source code, so when I mixed my Level 1 business_capability instance linking to their Role, those group to "Support" and "Core" will not be recognized in the code, so not be able to shown in the view.

Now I have re-link all Level 1 business_capabilities to "Front", "Back" and "Manage", stop using "Support" and "Core", the "View: Business Capability Model" are all fine. So, as John's comment, the two (2) roles are OK to be deleted.

This is working for me now to comply with the view's source code. However, in our company's earlier practice, and checking from some open references, like TOGAF's Business Capability Guide, BIZBOK's sample capability tier, the more generic and commonly used structure naming for level 1 Business Capability should be: Strategic, Core and Supporting

So, the "Core", "Support" and "Manage (similar to Strategic)" are more relavent namings in the Meta-Model, I'd like to know the reason why we abondon them in the source code but using "Back" and "Front" instead which are not too much linking to the practices naturally. Just curious, except I do the self clean-up, it would be better that the Essential Open Source edition can review this from meta-model and only leave one set of reasonable Roles in the updated pack.

After all, for now, this is not an issue for my case to continue working on Capability Model. Thanks again.

And, Thanks for considering, regards,
Xiaoqi
Post Reply