kieler / osgiviz

Visualization of OSGi projects using KIELER Lightweight Diagrams (KlighD)
Eclipse Public License 2.0
9 stars 4 forks source link

Feature Request: Connections between bundle categories #11

Open ErikKoppenhagen opened 4 years ago

ErikKoppenhagen commented 4 years ago

Bundle categories can be used to group bundles in archtectural layers, business components or other things. The "connection" button in the top right corner of each element shows the connection between boundles, services and so on. When opening bundle categories, it would be nice to have this functionality to. Doing so, we could find unauthorized access of business components or breaks in the architectural layers.

NiklasRentzCAU commented 4 years ago

Up until now I intentionally left this out, as it becomes unclear what to connect bundles to when they are included in multiple bundle categories. Therefore for my initial idea every bundle would have to connect to every instance of every bundle it requires / is required by, which can very quickly become overwhelming and unclear if bundles are included in multiple categories.

I just thought about another idea though that can make this work: If every bundle category is directly to all bundle categories that contain bundles with dependencies, this will also show unauthorized access between bundle categories clearly with less clutter. The connection than would state which bundle requirements are causing it. If you think this idea might help, I will prototype this.

ErikKoppenhagen commented 4 years ago

I just thought about another idea though that can make this work: If every bundle category is directly to all bundle categories that contain bundles with dependencies, this will also show unauthorized access between bundle categories clearly with less clutter. The connection than would state which bundle requirements are causing it.

Could you explain that more detailed, please? I am not quite sure what you mean, but "this will also show unauthorized access between bundle categories" sounds good.

NiklasRentzCAU commented 4 years ago

Let me show this via a quick drawing:

bundleCategoryConnection

When there are bundle categories with bundles that have dependencies between each other, a view like this will just show the dependency between the categories and even show the detail on why that dependency exists via the bundle IDs that cause the dependency. For this example maybe no non-ui bundle should have a dependency to any ui bundle, so this view would quickly show if this is true or if some bundle may be uncategorized / not be categorized correctly / have an illegal dependency.

ErikKoppenhagen commented 4 years ago

That sounds like a great idea. I'd like thtat feature.