eclipse-iceoryx / iceoryx

Eclipse iceoryx™ - true zero-copy inter-process-communication
https://iceoryx.io
Apache License 2.0
1.65k stars 384 forks source link

Improve modularity by creating architecure guidelines #590

Open mossmaurice opened 3 years ago

mossmaurice commented 3 years ago

Brief feature description

iceoryx is developed in several CMake packages that aim to be independent. Current state is there are cross dependencies between each of them and no architecture guidelines have been created so far.

Detailed information

Analysed iceoryx repository with Lattix Architect. Attached are the the dependecy structure matrix and the architecture metrixs of Lattix (commit b929aa8d5022471a318cdc8e6994f1cdd6aa3850).

General

Lattix Architect findings

mossmaurice commented 3 years ago

FYI @dlo-86 Structure101 would be another option besides Lattix to analyse the architecture. However, I've had a glimpse at Lattix last Friday and found the DSM and its metrics quite helpful.

elBoberido commented 2 years ago

@mossmaurice do you think this is related to iceoryx_hoofs?

mossmaurice commented 2 years ago

do you think this is related to iceoryx_hoofs?

@elBoberido

Nope, I think this issue is mainly iceoryx_posh related. As discussed today, any architecture guidelines and their respective CI checkers should be implemented for a complete basic example like icedelivery and not just for iceoryx_hoofs. The only thing I can think about is to split up the iceoryx_hoofs modules / namspaces into several CMake targets. But that should probably go into a new issue. Shall I create one?

elBoberido commented 2 years ago

@mossmaurice yes, please create the issue.

mossmaurice commented 2 years ago

yes, please create the issue.

Done :heavy_check_mark: