Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve modularity by creating architecure guidelines #590

Open
18 of 20 tasks
mossmaurice opened this issue Mar 2, 2021 · 5 comments · Fixed by #787, #790, #789 or #1559
Open
18 of 20 tasks

Improve modularity by creating architecure guidelines #590

mossmaurice opened this issue Mar 2, 2021 · 5 comments · Fixed by #787, #790, #789 or #1559
Assignees
Labels
documentation Improvements or additions to documentation refactoring Refactor code without adding features
Milestone

Comments

@mossmaurice
Copy link
Contributor

mossmaurice commented Mar 2, 2021

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 b929aa8).

General

  • Analyse Lattix
    • Dependecy structure matrix (DSM)
    • Architectual metrics
    • Conceptual architecture
  • Namespaces & CMake package/library refactoring
  • Add CMake target for quality level 5/playground features and move "maybe obsolote" constructs there
    • Add script to compare used namespaces to a whitelist in binary (nm -C myBinary -f posix with C++filt for demangling) to make sure no experimental/playground code is baked into releases
  • RouDi modularisation RouDi modularisation #539
  • Create architecture documentation
    • PlantUML or plain ASCII art?
    • Package view
    • Layer view
  • Summarise guidelines and write a CI checker
    • Remove iox::helper namespace
  • Create iceoryx_posh_core CMake target and address the @todo #590 in the CMake files
  • Remove unused files and move quality level 2 files to a separate CMake package

Lattix Architect findings

@mossmaurice mossmaurice added documentation Improvements or additions to documentation refactoring Refactor code without adding features labels Mar 2, 2021
@mossmaurice mossmaurice added this to the Prio 2 milestone Mar 2, 2021
@mossmaurice mossmaurice self-assigned this Mar 2, 2021
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Mar 2, 2021
…or iceoryx

Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
@mossmaurice
Copy link
Contributor Author

mossmaurice commented Mar 3, 2021

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.

mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Mar 3, 2021
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
neillangmead41 pushed a commit to ApexAI/iceoryx that referenced this issue Apr 22, 2021
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
… component diagram

Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
dkroenke added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
Signed-off-by: Dietrich Krönke <dietrich.kroenke@apex.ai>
dkroenke added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
… files

Signed-off-by: Dietrich Krönke <dietrich.kroenke@apex.ai>
dkroenke added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
Signed-off-by: Dietrich Krönke <dietrich.kroenke@apex.ai>
dkroenke added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
Signed-off-by: Dietrich Krönke <dietrich.kroenke@apex.ai>
dkroenke added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
… explicit

Signed-off-by: Dietrich Krönke <dietrich.kroenke@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue May 11, 2021
dkroenke added a commit to ApexAI/iceoryx that referenced this issue May 12, 2021
Signed-off-by: Dietrich Krönke <dietrich.kroenke@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue May 12, 2021
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue May 12, 2021
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
… Windows

Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 4, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
mossmaurice added a commit to ApexAI/iceoryx that referenced this issue Aug 5, 2022
Signed-off-by: Simon Hoinkis <simon.hoinkis@apex.ai>
v3.0 automation moved this from In progress to Done Aug 8, 2022
mossmaurice added a commit that referenced this issue Aug 8, 2022
…separate-package

iox-#590 Move unused and quality level 2 classes to separate packages
@mossmaurice mossmaurice reopened this Aug 8, 2022
v3.0 automation moved this from Done to In progress Aug 8, 2022
dkroenke added a commit to ApexAI/iceoryx that referenced this issue Aug 12, 2022
Signed-off-by: Dietrich Krönke <dietrich.kroenke@apex.ai>
dkroenke added a commit to ApexAI/iceoryx that referenced this issue Aug 12, 2022
Signed-off-by: Dietrich Krönke <dietrich.kroenke@apex.ai>
@mossmaurice mossmaurice removed this from In progress in v3.0 Feb 23, 2024
@mossmaurice mossmaurice added this to To do in v4.0 via automation Feb 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment